From 5ebeaf63ab03a1c5201fb855ccc40de7ec25df17 Mon Sep 17 00:00:00 2001 From: Lu Hui Date: Sun, 20 Mar 2022 00:17:40 +0800 Subject: [PATCH 1/2] gnu: add script to build plan9port * gnu/packages/aux-files/plan9/builder.sh: configure & build & install plan9port --- gnu/packages/aux-files/plan9port/builder.sh | 73 +++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100755 gnu/packages/aux-files/plan9port/builder.sh diff --git a/gnu/packages/aux-files/plan9port/builder.sh b/gnu/packages/aux-files/plan9port/builder.sh new file mode 100755 index 0000000000..fd30cafda6 --- /dev/null +++ b/gnu/packages/aux-files/plan9port/builder.sh @@ -0,0 +1,73 @@ +# bash shell script +# from nixpkgs: https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/system/plan9port/builder.sh + +export PLAN9=$out/plan9 +export PLAN9_TARGET=$PLAN9 + +plan9portLinkFlags() +{ + eval set -- "$LDFLAGS" + local flag + for flag in "$@"; do + printf ' -Wl,%s' "$flag" + done +} + +configurePhase() +{ + ( + echo CC9=\"$(command -v $CC)\" + echo CFLAGS=\"$CFLAGS\" + echo LDFLAGS=\"$(plan9portLinkFlags)\" + echo X11=\"$libxt/include\" + case "$system" in + x86_64-linux) echo OBJTYPE=x86_64;; + i?86-linux) echo OBJTYPE=386;; + power-linux) echo OBJTYPE=power;; + sparc-linux) echo OBJTYPE=sparc;; + esac + if [[ $system =~ "linux" ]]; then + echo SYSVERSION=2.6.x + fi + ) >config + + for f in `grep -l -r /usr/local/plan9`; do + sed "s,/usr/local/plan9,${PLAN9},g" -i $f + done +} + +buildPhase() +{ + mkdir -p $PLAN9 + + # Copy sources, some necessary bin scripts + cp -R * $PLAN9 + + local originalPath="$PATH" + export PATH="$PLAN9/bin:$PATH" + pushd src + ../dist/buildmk + mk clean + mk libs-nuke + mk all + mk -k install + if [[ -f $PLAN9/bin/quote1 ]]; then + cp $PLAN9/bin/quote1 $PLAN9/bin/'"' + cp $PLAN9/bin/quote2 $PLAN9/bin/'""' + fi + popd + export PATH="$originalPath" +} + +installPhase() +{ + # Copy the `9' utility. This way you can use + # $ 9 awk + # to use the plan 9 awk + mkdir $out/bin + ln -s $PLAN9/bin/9 $out/bin +} + +configurePhase +buildPhase +installPhase -- 2.34.0