Integrated Treetap into Maple Linux #1
26
bootstrap.sh
26
bootstrap.sh
@ -17,6 +17,8 @@ export CXXFLAGS=$CFLAGS
|
||||
export RANLIB=llvm-ranlib
|
||||
export LD=ld.lld
|
||||
export LDFLAGS="--sysroot=$BOOTSTRAP/root"
|
||||
export TREETAP=$(pwd)/treetap
|
||||
export TT_DIR=$(pwd)/.treetap
|
||||
export TT_SYSROOT=$BOOTSTRAP/root
|
||||
export TT_TARGET=$TARGET
|
||||
|
||||
@ -24,7 +26,6 @@ export TT_TARGET=$TARGET
|
||||
./treetap fetch sources/busybox/busybox.spec
|
||||
./treetap fetch sources/linux/linux.spec
|
||||
./treetap fetch sources/llvm/llvm.spec
|
||||
./treetap fetch sources/make/make.spec
|
||||
./treetap fetch sources/musl/musl.spec
|
||||
|
||||
# Make sure both clang-tblgen and llvm-tblgen are in the PATH. ~ahill
|
||||
@ -234,25 +235,10 @@ make -O -j $PROCS install CONFIG_PREFIX=$BOOTSTRAP/root
|
||||
cd ..
|
||||
|
||||
# Build Make
|
||||
MAKE_VERSION=$(sed -En "s/SRC_VERSION=\"?(.+)\"/\1/p" $SPEC/make/make.spec)
|
||||
tar xf $SOURCES/make/$MAKE_VERSION/make-*.tar*
|
||||
cd make-*/
|
||||
./configure \
|
||||
--bindir=/bin \
|
||||
--datarootdir=/usr/share \
|
||||
--enable-year2038 \
|
||||
--host=$TARGET \
|
||||
--includedir=/usr/include \
|
||||
--libdir=/lib \
|
||||
--libexecdir=/lib \
|
||||
--localstatedir=/var \
|
||||
--prefix=/ \
|
||||
--runstatedir=/run \
|
||||
--sbindir=/bin \
|
||||
--sysconfdir=/etc
|
||||
make -O -j $PROCS
|
||||
make -O -j $PROCS install DESTDIR=$BOOTSTRAP/root
|
||||
cd ..
|
||||
$TREETAP fetch $SPEC/make/make.spec
|
||||
$TREETAP build $SPEC/make/make.spec
|
||||
$TREETAP package $SPEC/make/make.spec
|
||||
$TREETAP install .treetap/packages/$TARGET/make-*.cpio.xz $BOOTSTRAP/root
|
||||
|
||||
# Install Treetap
|
||||
cp $BOOTSTRAP/../treetap $BOOTSTRAP/root/bin/
|
||||
@ -2,4 +2,32 @@
|
||||
SRC_HASH="dd16fb1d67bfab79a72f5e8390735c49e3e8e70b4945a15ab1f81ddb78658fb3"
|
||||
SRC_NAME="make"
|
||||
SRC_URL="https://ftp.gnu.org/gnu/make/make-4.4.1.tar.gz"
|
||||
SRC_VERSION="4.4.1"
|
||||
SRC_VERSION="4.4.1"
|
||||
|
||||
build() {
|
||||
tar xf ../$SRC_FILENAME
|
||||
cd make-*/
|
||||
./configure \
|
||||
--bindir=$TT_BINDIR \
|
||||
--build=$TT_BUILD \
|
||||
--datarootdir=/usr/share \
|
||||
--enable-year2038 \
|
||||
--host=$TT_TARGET \
|
||||
--includedir=$TT_INCLUDEDIR \
|
||||
--libdir=$TT_LIBDIR \
|
||||
--libexecdir=$TT_LIBDIR \
|
||||
--localstatedir=/var \
|
||||
--prefix=$TT_PREFIX \
|
||||
--runstatedir=/run \
|
||||
--sbindir=$TT_BINDIR \
|
||||
--sysconfdir=$TT_CONFDIR
|
||||
make -O -j $TT_PROCS
|
||||
}
|
||||
|
||||
clean() {
|
||||
rm -rf make-*/
|
||||
}
|
||||
|
||||
package() {
|
||||
make -O -j $TT_PROCS install DESTDIR=$TT_INSTALLDIR
|
||||
}
|
||||
35
treetap
35
treetap
@ -34,6 +34,41 @@
|
||||
# November 9, 2025 (1.0.0)
|
||||
# * Initial release [ahill]
|
||||
|
||||
########################
|
||||
# .spec File Reference #
|
||||
########################
|
||||
|
||||
# For everyone trying to build .spec files (including myself), this is the list
|
||||
# of useful variables to take advantage of. ~ahill
|
||||
|
||||
# Specification Functions:
|
||||
# build - Builds the package
|
||||
# clean - Cleans $TT_BUILDDIR for the next build
|
||||
# package - Installs the package contents to $TT_INSTALLDIR
|
||||
|
||||
# Specification Variables:
|
||||
# SRC_FILENAME - The name of the tarball to extract (optional)
|
||||
# SRC_HASH - The hash of the tarball for verification purposes (required)
|
||||
# SRC_NAME - The name of the package being built (required)
|
||||
# SRC_URL - The URL of the tarball to be downloaded (required)
|
||||
# SRC_VERSION - The version of the package being built (required)
|
||||
|
||||
# Treetap Variables:
|
||||
# TT_BINDIR - The desired path for binaries [scope: source] [default: /bin]
|
||||
# TT_BUILD - The target triple of the build system [scope: source]
|
||||
# TT_BUILDDIR - The path to the build directory [scope: source]
|
||||
# TT_CONFDIR - The desired path for configuration files [scope: source] [default: /etc]
|
||||
# TT_DIR - The path to the treetap directory [scope: global]
|
||||
# TT_INCLUDEDIR - The desired path for header files [scope: source] [default: /usr/include]
|
||||
# TT_INSTALLDIR - The path to the install directory [scope: source]
|
||||
# TT_LIBDIR - The desired path for libraries [scope: source] [default: /lib]
|
||||
# TT_PKGDIR - The path to the package directory [scope: global]
|
||||
# TT_PREFIX - The desired prefix for the package [scope: source] [default: /]
|
||||
# TT_PROCS - The number of processors on the build system [scope: source]
|
||||
# TT_SYSROOT - The sysroot of the target system [scope: global]
|
||||
# TT_TARGET - The target triple of the target system [scope: source]
|
||||
# TT_VERSION - The version of treetap being used [scope: global]
|
||||
|
||||
####################
|
||||
# Global Variables #
|
||||
####################
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user