diff --git a/mk.sh b/mk.sh index a78e6f2..0ee9b27 100755 --- a/mk.sh +++ b/mk.sh @@ -47,57 +47,29 @@ source "$SCRIPTDIR/util/toolchain.sh" source "$SCRIPTDIR/util/cmake.sh" source "$SCRIPTDIR/util/misc.sh" -############################## build toolchain ############################### -echo "--- resolving toolchain dependencies ---" - -include_pkg "tcpkg" "toolchain" -dependencies | tsort | tac > "$PACKAGELIST" -cat "$PACKAGELIST" - -echo "--- downloading toolchain files ---" - -while read pkg; do - include_pkg "tcpkg" "$pkg" - fetch_package -done < "$PACKAGELIST" - -echo "--- building toolchain ---" - -gen_cmake_toolchain_file - -while read pkg; do - include_pkg "tcpkg" "$pkg" - run_pkg_command "build" "toolchain" - run_pkg_command "deploy" "toolchain" -done < "$PACKAGELIST" - -echo "--- backing up toolchain sysroot ---" - -save_toolchain - ############################### build packages ############################### echo "--- resolving package dependencies ---" -include_pkg "pkg" "release-${BOARD}" +include_pkg "release-${BOARD}" dependencies | tsort | tac > "$PACKAGELIST" cat "$PACKAGELIST" echo "--- downloading package files ---" while read pkg; do - include_pkg "pkg" "$pkg" + include_pkg "$pkg" fetch_package done < "$PACKAGELIST" echo "--- building package ---" while read pkg; do - include_pkg "pkg" "$pkg" + include_pkg "$pkg" install_build_deps - run_pkg_command "build" "$PKGNAME" - run_pkg_command "deploy" "$PKGNAME" + run_pkg_command "build" + run_pkg_command "deploy" restore_toolchain done < "$PACKAGELIST" diff --git a/pkg/bash/build b/pkg/bash/build index a7d4a2d..b31813b 100755 --- a/pkg/bash/build +++ b/pkg/bash/build @@ -34,7 +34,7 @@ deploy() { rm -r "$DEPLOY/share" rm "$DEPLOY/bin/bashbug" - cp -r "$SCRIPTDIR/$PKGDIR/$PKGNAME/etc" "$DEPLOY" + cp -r "$SCRIPTDIR/pkg/$PKGNAME/etc" "$DEPLOY" split_dev_deploy "$DEPLOY" "$DEVDEPLOY" } diff --git a/pkg/bbstatic/build b/pkg/bbstatic/build index 01f56b8..c739db9 100755 --- a/pkg/bbstatic/build +++ b/pkg/bbstatic/build @@ -3,7 +3,7 @@ SRCDIR="busybox-$VERSION" TARBALL="busybox-$VERSION.tar.bz2" URL="https://busybox.net/downloads" SHA256SUM="604553b7dbd59ded9e3ad7c6af49ed2cff599adf3e54d9463e5e0027b362019c" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/bdb/build b/pkg/bdb/build index c8ad99b..208461d 100755 --- a/pkg/bdb/build +++ b/pkg/bdb/build @@ -3,7 +3,7 @@ SRCDIR="db-${VERSION}" TARBALL="${SRCDIR}.tar.gz" URL="http://download.oracle.com/berkeley-db/" SHA256SUM="a9c5e2b004a5777aa03510cfe5cd766a4a3b777713406b02809c17c8e0e7a8fb" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/bzip2/build b/pkg/bzip2/build index 4e1e915..5922638 100755 --- a/pkg/bzip2/build +++ b/pkg/bzip2/build @@ -3,7 +3,7 @@ SRCDIR="bzip2-${VERSION}" TARBALL="${SRCDIR}.tar.gz" URL="http://www.bzip.org/1.0.6/" SHA256SUM="a2848f34fcd5d6cf47def00461fcb528a0484d8edef8208d6d2e2909dc61d9cd" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/coreutils/build b/pkg/coreutils/build index e58a6fa..0fd0025 100755 --- a/pkg/coreutils/build +++ b/pkg/coreutils/build @@ -3,7 +3,7 @@ SRCDIR="coreutils-${VERSION}" TARBALL="${SRCDIR}.tar.xz" URL="https://ftp.gnu.org/gnu/coreutils/" SHA256SUM="92d0fa1c311cacefa89853bdb53c62f4110cdfda3820346b59cbd098f40f955e" -DEPENDS="" +DEPENDS="toolchain" prepare() { apply_patches diff --git a/pkg/diffutils/build b/pkg/diffutils/build index b7df1cd..d31a6fd 100755 --- a/pkg/diffutils/build +++ b/pkg/diffutils/build @@ -3,7 +3,7 @@ SRCDIR="diffutils-${VERSION}" TARBALL="${SRCDIR}.tar.xz" URL="https://ftp.gnu.org/gnu/diffutils/" SHA256SUM="d621e8bdd4b573918c8145f7ae61817d1be9deb4c8d2328a65cea8e11d783bd6" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/dnsmasq/build b/pkg/dnsmasq/build index eff0270..a83791a 100644 --- a/pkg/dnsmasq/build +++ b/pkg/dnsmasq/build @@ -3,7 +3,7 @@ SRCDIR="dnsmasq-${VERSION}" TARBALL="${SRCDIR}.tar.xz" URL="http://www.thekelleys.org.uk/dnsmasq" SHA256SUM="89949f438c74b0c7543f06689c319484bd126cc4b1f8c745c742ab397681252b" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/dosfstools/build b/pkg/dosfstools/build index f31132a..0a3b789 100755 --- a/pkg/dosfstools/build +++ b/pkg/dosfstools/build @@ -3,7 +3,7 @@ SRCDIR="dosfstools-${VERSION}" TARBALL="${SRCDIR}.tar.xz" URL="https://github.com/dosfstools/dosfstools/releases/download/v${VERSION}" SHA256SUM="e6b2aca70ccc3fe3687365009dd94a2e18e82b688ed4e260e04b7412471cc173" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/ethtool/build b/pkg/ethtool/build index 1eed20b..f90eda7 100755 --- a/pkg/ethtool/build +++ b/pkg/ethtool/build @@ -3,7 +3,7 @@ SRCDIR="ethtool-${VERSION}" TARBALL="${SRCDIR}.tar.xz" URL="https://www.kernel.org/pub/software/network/ethtool/" SHA256SUM="71f7fd32483ffdc7c6c4d882e230714eb101df0a46cbe396dbeb8ac78f1ef91a" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/findutils/build b/pkg/findutils/build index 33e54a5..037874c 100755 --- a/pkg/findutils/build +++ b/pkg/findutils/build @@ -3,7 +3,7 @@ SRCDIR="findutils-${VERSION}" TARBALL="${SRCDIR}.tar.gz" URL="https://ftp.gnu.org/gnu/findutils/" SHA256SUM="ded4c9f73731cd48fec3b6bdaccce896473b6d8e337e9612e16cf1431bb1169d" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/gawk/build b/pkg/gawk/build index 49f10c2..cdb0bcb 100755 --- a/pkg/gawk/build +++ b/pkg/gawk/build @@ -3,7 +3,7 @@ SRCDIR="gawk-${VERSION}" TARBALL="${SRCDIR}.tar.xz" URL="https://ftp.gnu.org/gnu/gawk/" SHA256SUM="d4f3cd31c001fd0ed52832d4fbfbdfeaa38ad541c182f80ff8fdf87324a6a9f2" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/gmp/build b/pkg/gmp/build index e420f59..bff67d1 100755 --- a/pkg/gmp/build +++ b/pkg/gmp/build @@ -3,7 +3,7 @@ SRCDIR="gmp-$VERSION" TARBALL="gmp-$VERSION.tar.bz2" URL="http://ftp.gnu.org/gnu/gmp" SHA256SUM="5275bb04f4863a13516b2f39392ac5e272f5e1bb8057b18aec1c9b79d73d8fb2" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/grep/build b/pkg/grep/build index 787561b..3ffc3c3 100755 --- a/pkg/grep/build +++ b/pkg/grep/build @@ -3,7 +3,7 @@ SRCDIR="grep-${VERSION}" TARBALL="${SRCDIR}.tar.xz" URL="https://ftp.gnu.org/gnu/grep/" SHA256SUM="db625c7ab3bb3ee757b3926a5cfa8d9e1c3991ad24707a83dde8a5ef2bf7a07e" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/gzip/build b/pkg/gzip/build index 6b37b2d..5f06543 100755 --- a/pkg/gzip/build +++ b/pkg/gzip/build @@ -3,7 +3,7 @@ SRCDIR="gzip-${VERSION}" TARBALL="${SRCDIR}.tar.xz" URL="https://ftp.gnu.org/gnu/gzip/" SHA256SUM="ae506144fc198bd8f81f1f4ad19ce63d5a2d65e42333255977cf1dcf1479089a" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/kbd/build b/pkg/kbd/build index 073cd08..f7c669d 100755 --- a/pkg/kbd/build +++ b/pkg/kbd/build @@ -3,7 +3,7 @@ SRCDIR="kbd-${VERSION}" TARBALL="${SRCDIR}.tar.xz" URL="https://www.kernel.org/pub/linux/utils/kbd" SHA256SUM="5fd90af6beb225a9bb9b9fb414c090fba53c9a55793e172f508cd43652e59a88" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/libbsd/build b/pkg/libbsd/build index cf54b3f..e7841b6 100644 --- a/pkg/libbsd/build +++ b/pkg/libbsd/build @@ -3,7 +3,7 @@ SRCDIR="libbsd-${VERSION}" TARBALL="${SRCDIR}.tar.xz" URL="https://libbsd.freedesktop.org/releases" SHA256SUM="f548f10e5af5a08b1e22889ce84315b1ebe41505b015c9596bad03fd13a12b31" -DEPENDS="" +DEPENDS="toolchain" prepare() { apply_patches diff --git a/pkg/libevent/build b/pkg/libevent/build index 460f5ee..7babe90 100755 --- a/pkg/libevent/build +++ b/pkg/libevent/build @@ -3,7 +3,7 @@ SRCDIR="libevent-${VERSION}-stable" TARBALL="${SRCDIR}.tar.gz" URL="https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/" SHA256SUM="965cc5a8bb46ce4199a47e9b2c9e1cae3b137e8356ffdad6d94d3b9069b71dc2" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/libiconv/build b/pkg/libiconv/build index 928f914..4e20f99 100755 --- a/pkg/libiconv/build +++ b/pkg/libiconv/build @@ -3,7 +3,7 @@ SRCDIR="libiconv-$VERSION" TARBALL="${SRCDIR}.tar.gz" URL="https://ftp.gnu.org/gnu/libiconv/" SHA256SUM="ccf536620a45458d26ba83887a983b96827001e92a13847b45e4925cc8913178" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/libmnl/build b/pkg/libmnl/build index c834d83..e379220 100644 --- a/pkg/libmnl/build +++ b/pkg/libmnl/build @@ -3,7 +3,7 @@ SRCDIR="libmnl-${VERSION}" TARBALL="${SRCDIR}.tar.bz2" URL="https://www.netfilter.org/projects/libmnl/files/" SHA256SUM="171f89699f286a5854b72b91d06e8f8e3683064c5901fb09d954a9ab6f551f81" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/libseccomp/build b/pkg/libseccomp/build index 1071cfe..08f54dc 100644 --- a/pkg/libseccomp/build +++ b/pkg/libseccomp/build @@ -3,7 +3,7 @@ SRCDIR="libseccomp-${VERSION}" TARBALL="${SRCDIR}.tar.gz" URL="https://github.com/seccomp/libseccomp/releases/download/v${VERSION}" SHA256SUM="7fc28f4294cc72e61c529bedf97e705c3acf9c479a8f1a3028d4cd2ca9f3b155" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/libtasn1/build b/pkg/libtasn1/build index 60c8312..83a4956 100755 --- a/pkg/libtasn1/build +++ b/pkg/libtasn1/build @@ -3,7 +3,7 @@ SRCDIR="libtasn1-$VERSION" TARBALL="libtasn1-$VERSION.tar.gz" URL="https://ftp.gnu.org/gnu/libtasn1" SHA256SUM="7e528e8c317ddd156230c4e31d082cd13e7ddeb7a54824be82632209550c8cca" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/linux_modules/build b/pkg/linux_modules/build index 945532c..cc1be45 100755 --- a/pkg/linux_modules/build +++ b/pkg/linux_modules/build @@ -1,6 +1,6 @@ # inherit package details from kernel package source "$SCRIPTDIR/pkg/$LINUXPKG/build" -DEPENDS="" +DEPENDS="toolchain" build() { local INPUT="$1" diff --git a/pkg/lzo/build b/pkg/lzo/build index d2b8ffd..7f39eda 100644 --- a/pkg/lzo/build +++ b/pkg/lzo/build @@ -3,7 +3,7 @@ SRCDIR="lzo-${VERSION}" TARBALL="${SRCDIR}.tar.gz" URL="http://www.oberhumer.com/opensource/lzo/download" SHA256SUM="c0f892943208266f9b6543b3ae308fab6284c5c90e627931446fb49b4221a072" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/ncurses/build b/pkg/ncurses/build index 31753f7..54cefa3 100755 --- a/pkg/ncurses/build +++ b/pkg/ncurses/build @@ -3,7 +3,7 @@ SRCDIR="ncurses-${VERSION}" TARBALL="${SRCDIR}.tar.gz" URL="https://ftp.gnu.org/gnu/ncurses/" SHA256SUM="aa057eeeb4a14d470101eff4597d5833dcef5965331be3528c08d99cebaa0d17" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/openrc/build b/pkg/openrc/build index e3f2e91..d0c5bd5 100755 --- a/pkg/openrc/build +++ b/pkg/openrc/build @@ -50,7 +50,7 @@ deploy() { mkdir -p ${DEPLOY}/etc/{conf.d,init.d,runlevels,sysctl.d} mkdir -p ${DEPLOY}/etc/runlevels/{boot,sysinit,shutdown,default} - cp -R "$SCRIPTDIR/$PKGDIR/$PKGNAME/etc" "$DEPLOY" + cp -R "$SCRIPTDIR/pkg/$PKGNAME/etc" "$DEPLOY" source "$SCRIPTDIR/board/$BOARD/INIT" diff --git a/pkg/release-alix/build b/pkg/release-alix/build index c0a8462..8a76223 100755 --- a/pkg/release-alix/build +++ b/pkg/release-alix/build @@ -21,7 +21,7 @@ build() { cp "/usr/share/syslinux/mbr.bin" "$BUILD" for script in install.sh genimage.sh syslinux.cfg; do - cp "$SCRIPTDIR/$PKGDIR/$PKGNAME/$script" "$BUILD" + cp "$SCRIPTDIR/pkg/$PKGNAME/$script" "$BUILD" sed -i 's#ROOTFSFILE#'$rootfs_image'#g' "$BUILD/$script" sed -i 's#KERNELFILE#'$linux_image'#g' "$BUILD/$script" @@ -35,6 +35,6 @@ deploy() { local DEPLOY="$3" pushd "$PKGBUILDDIR" > /dev/null - tar czf "$DEPLOY/$PKGNAME.tar.gz" "${PKGDIR}-${PKGNAME}" + tar czf "$DEPLOY/$PKGNAME.tar.gz" "$PKGNAME" popd > /dev/null } diff --git a/pkg/release-rpi3/build b/pkg/release-rpi3/build index f53261c..d298aea 100755 --- a/pkg/release-rpi3/build +++ b/pkg/release-rpi3/build @@ -15,9 +15,9 @@ build() { done # copy files from this package - cp "$SCRIPTDIR/$PKGDIR/$PKGNAME/cmdline.txt" "$BUILD/boot" - cp "$SCRIPTDIR/$PKGDIR/$PKGNAME/install.sh" "$BUILD" - cp "$SCRIPTDIR/$PKGDIR/$PKGNAME/genimage.sh" "$BUILD" + cp "$SCRIPTDIR/pkg/$PKGNAME/cmdline.txt" "$BUILD/boot" + cp "$SCRIPTDIR/pkg/$PKGNAME/install.sh" "$BUILD" + cp "$SCRIPTDIR/pkg/$PKGNAME/genimage.sh" "$BUILD" # substitute file names in scripts mkdir -p "$BUILD/boot/$OS_RELEASE" @@ -37,6 +37,6 @@ deploy() { local DEPLOY="$3" pushd "$PKGBUILDDIR" > /dev/null - tar czf "$DEPLOY/$PKGNAME.tar.gz" "${PKGDIR}-${PKGNAME}" + tar czf "$DEPLOY/$PKGNAME.tar.gz" "$PKGNAME" popd > /dev/null } diff --git a/pkg/rootfs/build b/pkg/rootfs/build index bfc88ad..b906f9d 100755 --- a/pkg/rootfs/build +++ b/pkg/rootfs/build @@ -1,4 +1,5 @@ DEPENDS=$(cat "$SCRIPTDIR/board/$BOARD/ROOTFS") +DEPENDS="$DEPENDS toolchain" build() { local SOURCE="$1" @@ -10,17 +11,10 @@ build() { mkdir -pv ${BUILD}/{boot,usr,srv,mnt,opt} mkdir -pv ${BUILD}/cfg/{preserve,overlay} - echo "/lib" > "$BUILD/etc/ld-musl-${MUSL_CPU}.path" - - if [ -e "$SCRIPTDIR/board/$BOARD/LDPATH" ]; then - cat "$SCRIPTDIR/board/$BOARD/LDPATH" >> "$BUILD/etc/ld-musl-${MUSL_CPU}.path" - fi - - cp -r "$SCRIPTDIR/$PKGDIR/$PKGNAME/etc" "$BUILD" + cp -r "$SCRIPTDIR/pkg/$PKGNAME/etc" "$BUILD" # install packages to rootfs dependencies | tsort | tac | grep -v "$PKGNAME" > "$BUILD/etc/packages" - echo "toolchain" >> "$BUILD/etc/packages" while read pkgname; do if [ ! -e "$PKGDEPLOYDIR/$pkgname" ]; then diff --git a/pkg/sed/build b/pkg/sed/build index 3d77593..85c5571 100755 --- a/pkg/sed/build +++ b/pkg/sed/build @@ -3,7 +3,7 @@ SRCDIR="sed-${VERSION}" TARBALL="${SRCDIR}.tar.xz" URL="https://ftp.gnu.org/gnu/sed/" SHA256SUM="cbd6ebc5aaf080ed60d0162d7f6aeae58211a1ee9ba9bb25623daa6cd942683b" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/shadow/build b/pkg/shadow/build index 2e1f1a6..aefc24e 100755 --- a/pkg/shadow/build +++ b/pkg/shadow/build @@ -3,7 +3,7 @@ SRCDIR="shadow-${VERSION}" TARBALL="${SRCDIR}.tar.xz" URL="https://github.com/shadow-maint/shadow/releases/download/${VERSION}" SHA256SUM="fc8c858381ad577a5c25ff5beb6ee60a34f8719c73e4e7c61e74188b4e54b741" -DEPENDS="" +DEPENDS="toolchain" prepare() { sed -i 's/groups$(EXEEXT) //' src/Makefile.in diff --git a/tcpkg/binutils/build b/pkg/tc-binutils/build similarity index 100% rename from tcpkg/binutils/build rename to pkg/tc-binutils/build diff --git a/tcpkg/cloog/build b/pkg/tc-cloog/build similarity index 100% rename from tcpkg/cloog/build rename to pkg/tc-cloog/build diff --git a/tcpkg/file/build b/pkg/tc-file/build similarity index 100% rename from tcpkg/file/build rename to pkg/tc-file/build diff --git a/tcpkg/gcc1/build b/pkg/tc-gcc1/build similarity index 86% rename from tcpkg/gcc1/build rename to pkg/tc-gcc1/build index a5833ba..cda52e9 100755 --- a/tcpkg/gcc1/build +++ b/pkg/tc-gcc1/build @@ -3,13 +3,13 @@ SRCDIR="gcc-$VERSION" TARBALL="gcc-$VERSION.tar.xz" URL="http://ftp.gnu.org/gnu/gcc/gcc-$VERSION" SHA256SUM="832ca6ae04636adbb430e865a1451adf6979ab44ca1c8374f61fba65645ce15c" -DEPENDS="binutils cloog gmp isl mpc mpfr linux_hdr" +DEPENDS="tc-binutils tc-cloog tc-gmp tc-isl tc-mpc tc-mpfr tc-linux_hdr" prepare() { for child in cloog gmp isl mpc mpfr; do unset -f build deploy prepare - unset -v VERSION TARBALL URL SRCDIR SHA256SUM - source "$SCRIPTDIR/tcpkg/$child/build" + unset -v VERSION TARBALL URL SRCDIR SHA256SUM DEPENDS + source "$SCRIPTDIR/pkg/$child/build" if [ ! -e "$child" ]; then echo "installing symlink to $child..." diff --git a/tcpkg/gcc2/build b/pkg/tc-gcc2/build similarity index 89% rename from tcpkg/gcc2/build rename to pkg/tc-gcc2/build index 7845b24..97b0094 100755 --- a/tcpkg/gcc2/build +++ b/pkg/tc-gcc2/build @@ -1,6 +1,6 @@ # inherit package details from first stage GCC -source "$SCRIPTDIR/tcpkg/gcc1/build" -DEPENDS="gcc1 musl" +source "$SCRIPTDIR/pkg/tc-gcc1/build" +DEPENDS="tc-gcc1 tc-musl" build() { local INPUT="$1" diff --git a/tcpkg/gmp/build b/pkg/tc-gmp/build similarity index 100% rename from tcpkg/gmp/build rename to pkg/tc-gmp/build diff --git a/tcpkg/isl/build b/pkg/tc-isl/build similarity index 100% rename from tcpkg/isl/build rename to pkg/tc-isl/build diff --git a/tcpkg/linux_hdr/build b/pkg/tc-linux_hdr/build similarity index 100% rename from tcpkg/linux_hdr/build rename to pkg/tc-linux_hdr/build diff --git a/tcpkg/mpc/build b/pkg/tc-mpc/build similarity index 100% rename from tcpkg/mpc/build rename to pkg/tc-mpc/build diff --git a/tcpkg/mpfr/build b/pkg/tc-mpfr/build similarity index 100% rename from tcpkg/mpfr/build rename to pkg/tc-mpfr/build diff --git a/tcpkg/musl/build b/pkg/tc-musl/build similarity index 73% rename from tcpkg/musl/build rename to pkg/tc-musl/build index 2906f26..46a23eb 100755 --- a/tcpkg/musl/build +++ b/pkg/tc-musl/build @@ -3,7 +3,7 @@ SRCDIR="musl-$VERSION" TARBALL="$SRCDIR.tar.gz" URL="https://www.musl-libc.org/releases" SHA256SUM="d017ee5d01aec0c522a1330fdff06b1e428cb409e1db819cc4935d5da4a5a118" -DEPENDS="gcc1" +DEPENDS="tc-gcc1" prepare() { return @@ -27,4 +27,10 @@ deploy() { rm $DEPLOY/lib/*.a $DEPLOY/lib/*.o mkdir -p "$DEPLOY/etc" + + echo "/lib" > "$DEPLOY/etc/ld-musl-${MUSL_CPU}.path" + + if [ -e "$SCRIPTDIR/board/$BOARD/LDPATH" ]; then + cat "$SCRIPTDIR/board/$BOARD/LDPATH" >> "$DEPLOY/etc/ld-musl-${MUSL_CPU}.path" + fi } diff --git a/tcpkg/pkg-config/build b/pkg/tc-pkg-config/build similarity index 100% rename from tcpkg/pkg-config/build rename to pkg/tc-pkg-config/build diff --git a/tcpkg/toolchain/build b/pkg/toolchain/build similarity index 67% rename from tcpkg/toolchain/build rename to pkg/toolchain/build index 1521340..14880b0 100755 --- a/tcpkg/toolchain/build +++ b/pkg/toolchain/build @@ -1,4 +1,4 @@ -DEPENDS="gcc2 musl pkg-config file" +DEPENDS="tc-gcc2 tc-musl tc-pkg-config tc-file" build() { return @@ -11,4 +11,7 @@ deploy() { rsync -aH --files-from="$SCRIPTDIR/board/$BOARD/libgcc_files.txt" \ "$TCDIR/$TARGET" "$DEPLOY" + + gen_cmake_toolchain_file + save_toolchain } diff --git a/pkg/xz/build b/pkg/xz/build index 345cd6d..b728d57 100644 --- a/pkg/xz/build +++ b/pkg/xz/build @@ -3,7 +3,7 @@ SRCDIR="xz-${VERSION}" TARBALL="${SRCDIR}.tar.xz" URL="https://tukaani.org/xz/" SHA256SUM="7876096b053ad598c31f6df35f7de5cd9ff2ba3162e5a5554e4fc198447e0347" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/pkg/zlib/build b/pkg/zlib/build index 284eb3e..2f22674 100644 --- a/pkg/zlib/build +++ b/pkg/zlib/build @@ -3,7 +3,7 @@ SRCDIR="zlib-${VERSION}" TARBALL="${SRCDIR}.tar.xz" URL="http://www.zlib.net/" SHA256SUM="4ff941449631ace0d4d203e3483be9dbc9da454084111f97ea0a2114e19bf066" -DEPENDS="" +DEPENDS="toolchain" prepare() { return diff --git a/util/depends.sh b/util/depends.sh index caf1160..3a4a8cd 100755 --- a/util/depends.sh +++ b/util/depends.sh @@ -1,10 +1,9 @@ include_pkg() { - PKGDIR="$1" # globally visible package directory - PKGNAME="$2" # globally visible package name + PKGNAME="$1" # globally visible package name unset -f build deploy prepare unset -v VERSION TARBALL URL SRCDIR SHA256SUM DEPENDS - source "$SCRIPTDIR/$PKGDIR/$PKGNAME/build" + source "$SCRIPTDIR/pkg/$PKGNAME/build" } dependencies() { @@ -16,7 +15,7 @@ dependencies() { done for DEP in $depends; do - include_pkg "$PKGDIR" "$DEP" + include_pkg "$DEP" dependencies done fi diff --git a/util/download.sh b/util/download.sh index 22efd52..3537f93 100755 --- a/util/download.sh +++ b/util/download.sh @@ -24,7 +24,7 @@ fetch_package() { pushd "$PKGSRCDIR/$SRCDIR" > /dev/null echo "$PKGNAME - prepare" - prepare "$SCRIPTDIR/$PKGDIR/$PKGNAME" &>> "$LOGFILE" < /dev/null + prepare "$SCRIPTDIR/pkg/$PKGNAME" &>> "$LOGFILE" < /dev/null popd > /dev/null fi } diff --git a/util/misc.sh b/util/misc.sh index df53f1e..7fe9039 100644 --- a/util/misc.sh +++ b/util/misc.sh @@ -1,8 +1,10 @@ apply_patches() { local PATCH - for PATCH in $SCRIPTDIR/$PKGDIR/$PKGNAME/*.patch; do - patch -p1 < $PATCH + for PATCH in $SCRIPTDIR/pkg/$PKGNAME/*.patch; do + if [ -f $PATCH ]; then + patch -p1 < $PATCH + fi done } diff --git a/util/pkgcmd.sh b/util/pkgcmd.sh index 5bb3410..57b3c87 100644 --- a/util/pkgcmd.sh +++ b/util/pkgcmd.sh @@ -1,8 +1,8 @@ run_pkg_command() { local FUNCTION="$1" - local DEPLOYDIR="$PKGDEPLOYDIR/$2" - local OUT="$PKGBUILDDIR/${PKGDIR}-${PKGNAME}" - local CHECKFILE="$PKGLOGDIR/.${PKGDIR}-${PKGNAME}-${FUNCTION}" + local DEPLOYDIR="$PKGDEPLOYDIR/$PKGNAME" + local OUT="$PKGBUILDDIR/${PKGNAME}" + local CHECKFILE="$PKGLOGDIR/.${PKGNAME}-${FUNCTION}" echo "$PKGNAME - $FUNCTION" @@ -10,7 +10,7 @@ run_pkg_command() { return fi - local LOGFILE="$PKGLOGDIR/${PKGDIR}-${PKGNAME}-${FUNCTION}.log" + local LOGFILE="$PKGLOGDIR/${PKGNAME}-${FUNCTION}.log" local SRC="$PKGSRCDIR/$SRCDIR" mkdir -p "$DEPLOYDIR" "$OUT" "${DEPLOYDIR}-dev" diff --git a/util/toolchain.sh b/util/toolchain.sh index 21037c2..adc7287 100644 --- a/util/toolchain.sh +++ b/util/toolchain.sh @@ -7,10 +7,12 @@ save_toolchain() { } restore_toolchain() { - pushd "$TCDIR/$TARGET" > /dev/null - rm -r include lib - tar zxf "${TCDIR}/${TARGET}.tar.gz" - popd > /dev/null + if [ -e "${TCDIR}/${TARGET}.tar.gz" ]; then + pushd "$TCDIR/$TARGET" > /dev/null + rm -r include lib + tar zxf "${TCDIR}/${TARGET}.tar.gz" + popd > /dev/null + fi } install_build_deps() {