build-bootenv

reproducible boot environment with LVM2 and cryptsetup
git clone https://ccx.te2000.cz/git/build-bootenv
Log | Files | Refs | Submodules

sabotage-install.config (2448B)


      1 ## set the arch you're building for
      2 #export A=i386
      3 export A=x86_64
      4 #export A=x86_64-x32
      5 #export A=mips
      6 #export A=powerpc
      7 #export A=microblaze
      8 #export A=sh
      9 #export A=arm
     10 
     11 [ -z "$A" ] && { printf "ERROR: no arch set\n" ; exit 1 ; }
     12 
     13 # arch specific flags to pass to the gcc build
     14 # your crosscompiler should be configured equivalently
     15 # if not provided, will be derived from the crosscompiler config
     16 #export GCC_ARCH_CONFIG_FLAGS="--with-float=soft --with-fpu=vfp"
     17 
     18 # set to basepath containing your musl-cross toolchains
     19 # we assume there's a subdir equal to the triplet in there
     20 #crosstoolchain=$HOME/musl-cross-make-6.5.0
     21 crosstoolchain="@@PWD@@/local"
     22 
     23 #set toolchain triplet
     24 #triplet=x86_64-linux-muslx32
     25 #triplet=arm-linux-musleabihf
     26 triplet=$A-linux-musl
     27 
     28 # point S to sabotage checkout or /src dir of an existing sabotage install
     29 # path is used to lookup KEEP, pkg and tarballs dirs
     30 #export S=/src
     31 export S="@@PWD@@/sabotage"
     32 
     33 # set R to the rootfs path (where stuff gets installed to)
     34 export R="@@PWD@@/boot-image"
     35 ORIG_R="@@PWD@@/sabotage-image"
     36 
     37 # set number of parallel make processes
     38 export MAKE_THREADS=@@JOBS@@
     39 
     40 # set BRUTE to 1 to enable LTO in the standard etc/butch-optflags profile
     41 # (slow to compile, but results in minimal binary size and very fast code)
     42 #export BRUTE=1
     43 # set TESTBUILD to 1 to build everything without optimization/debug (much faster)
     44 #export TESTBUILD=1
     45 
     46 # typically, you shouldn't have to change any of the vars after this line
     47 
     48 export K=$S/KEEP
     49 # where stuff gets built
     50 export B=$ORIG_R/src/build
     51 export C=$S/tarballs
     52 export LOGPATH=$ORIG_R/src/logs
     53 export BUTCHDB=$ORIG_R/var/lib/butch.db
     54 export butch_filelists=$ORIG_R/src/filelists
     55 export butch_tarballs_used=$ORIG_R/src/tarballs_used.txt
     56 export BUTCH_BUILD_TEMPLATE=$K/butch_build_template.txt
     57 export BUTCH_DOWNLOAD_TEMPLATE=$K/butch_download_template.txt
     58 
     59 export PATH="$PATH":$crosstoolchain/$triplet/bin
     60 
     61 export CC="$triplet-gcc -L$ORIG_R/lib -isystem $ORIG_R/include"
     62 export CXX="$triplet-g++ -L$ORIG_R/lib -isystem $ORIG_R/include"
     63 export CROSS_COMPILE=$triplet-
     64 export HOSTCC=gcc
     65 export HOSTCXX=g++
     66 
     67 export STAGE=1
     68 export PKG_CONFIG_SYSROOT_DIR=$ORIG_R
     69 export PKG_CONFIG_LIBDIR=$ORIG_R/lib/pkgconfig
     70 # do not build host/runtime deps
     71 export DEPS=build
     72 
     73 if ! test -d "$R" ; then
     74 	echo "ERROR: R points to non-existing path $R">&2
     75 	exit 1
     76 fi
     77 if ! $CC --version >/dev/null 2>&1 ; then
     78 	echo "ERROR! toolchain $CC not found in PATH $PATH">&2
     79 	exit 1
     80 fi
     81