diff -r d81c623de788 -r f71d300205b7 relpipe-data/examples/release-v0.9.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/relpipe-data/examples/release-v0.9.sh Fri Jan 18 21:34:58 2019 +0100 @@ -0,0 +1,40 @@ +# Install dependencies as root: +su -c "apt install g++ make cmake mercurial pkg-config" +su -c "apt install libxerces-c-dev" # needed only for relpipe-in-xml module + +# Run rest of installation as a non-root user: +export RELPIPE_VERSION="v0.9" +export RELPIPE_SRC=~/src +export RELPIPE_BUILD=~/build +export RELPIPE_INSTALL=~/install +export PKG_CONFIG_PATH="$RELPIPE_INSTALL/lib/pkgconfig/:$PKG_CONFIG_PATH" +export PATH="$RELPIPE_INSTALL/bin:$PATH" + +rm -rf "$RELPIPE_BUILD"/relpipe-* +mkdir -p "$RELPIPE_SRC" "$RELPIPE_BUILD" "$RELPIPE_INSTALL" + +# Helper functions: +relpipe_download() { for m in "$@"; do cd "$RELPIPE_SRC" && ([[ -d "relpipe-$m.cpp" ]] && hg pull -R "relpipe-$m.cpp" && hg update -R "relpipe-$m.cpp" "$RELPIPE_VERSION" || hg clone -u "$RELPIPE_VERSION" https://hg.globalcode.info/relpipe/relpipe-$m.cpp) || break; done; } +relpipe_install() { for m in "$@"; do cd "$RELPIPE_BUILD" && mkdir -p relpipe-$m.cpp && cd relpipe-$m.cpp && cmake -DCMAKE_INSTALL_PREFIX:PATH="$RELPIPE_INSTALL" "$RELPIPE_SRC/relpipe-$m.cpp" && make && make install || break; done; } + +# Download all sources: +relpipe_download lib-protocol lib-reader lib-writer lib-cli lib-xmlwriter in-cli in-fstab in-xml in-csv in-filesystem out-gui.qt out-nullbyte out-ods out-tabular out-xml out-csv tr-cut tr-grep tr-python tr-sed tr-validator + +# Build and install libraries: +relpipe_install lib-protocol lib-reader lib-writer lib-cli lib-xmlwriter + +# Build and install tools: +relpipe_install in-fstab in-cli in-fstab in-xml in-csv tr-cut tr-grep tr-sed out-nullbyte out-ods out-tabular out-xml out-csv + +# relpipe_install in-filesystem # requires GCC 8 or patching (see below) + +# Clean-up: +unset -f relpipe_install +unset -f relpipe_download +unset -v RELPIPE_VERSION +unset -v RELPIPE_SRC +unset -v RELPIPE_BUILD +unset -v RELPIPE_INSTALL + +# View your fstab like on an 80s green screen terminal! +relpipe-in-fstab | relpipe-out-tabular