midipix / build / midipix_build

Forked from build/midipix_build 4 years ago
Clone
Blob Blame History Raw
#
# WARNING: Do _NOT_ use whitespaces (` ') or tab (`	')
# characters in any of the variables below save for MAKEFLAGS,
# PATH, and TIMESTAMP_FMT.
#
# $PREFIX_{CROSS,NATIVE} and $WORKDIR must be immediately
# beneath $PREFIX. $PREFIX must be o+rwx. The variables mentioned
# should not be forward slash-terminated.
#

# Path names
: ${PREFIX_ROOT:=${HOME}/midipix};
: ${PREFIX:=${PREFIX_ROOT}/${ARCH}/${BUILD}};
: ${PREFIX_CROSS:=${PREFIX}/${DEFAULT_TARGET}};
: ${PREFIX_MINGW32:=${PREFIX}/x86_64-w64-mingw32};
: ${PREFIX_MINIPIX:=${PREFIX}/minipix};
: ${PREFIX_NATIVE:=${PREFIX}/native};
: ${PREFIX_RPM:=${PREFIX}/rpm};
: ${BUILD_DLCACHEDIR:=${PREFIX_ROOT}/dlcache};
: ${BUILD_WORKDIR:=${PREFIX}/tmp};
: ${DEFAULT_LOG_ENV_VARS:="
	ARCH BUILD BUILD_DLCACHEDIR BUILD_WORKDIR DEFAULT_GITROOT
	HOME PATH PREFIX PREFIX_CROSS PREFIX_MINGW32 PREFIX_MINIPIX
	PREFIX_NATIVE USER"};
: ${DEFAULT_INSTALL_FILES_DESTDIR:="
	/=bin /=include /=lib /=lib/pkgconfig /=sbin
	/=share /=share/doc /=share/info /=share/man
	/=share/man/man1 /=share/man/man2 /=share/man/man3 /=share/man/man4 /=share/man/man5
	/=share/man/man6 /=share/man/man7 /=share/man/man8 /=share/man/man9
	@share/doc=doc
	@share/info=info
	@lib=lib64
	@share/man=man
	@../lib/pkgconfig=share/pkgconfig
	@.=usr"};

# Default flags & variables
: ${DEFAULT_BUILD_CPUS:=};
: ${DEFAULT_BUILD_TYPE:=native};
: ${DEFAULT_CFLAGS_DEBUG:="-g2 -O0"};
: ${DEFAULT_CFLAGS_DEBUG_HOST:="-g0 -O2"};
: ${DEFAULT_CFLAGS_DEBUG_RUNTIME:="-g3 -O0"};
: ${DEFAULT_CFLAGS_RELEASE:="-g0 -O0"};
: ${DEFAULT_CFLAGS_RELEASE_HOST:="-g0 -O0"};
: ${DEFAULT_CFLAGS_RELEASE_RUNTIME:="-g0 -O0"};
: ${DEFAULT_CFLAGS:=$(ex_rtl_get_var_unsafe "DEFAULT_CFLAGS_$(ex_rtl_toupper "${BUILD}")")};
: ${DEFAULT_CFLAGS_CONFIGURE:=${DEFAULT_CFLAGS}};
: ${DEFAULT_CFLAGS_HOST:=$(ex_rtl_get_var_unsafe "DEFAULT_CFLAGS_$(ex_rtl_toupper "${BUILD}")_HOST")};
: ${DEFAULT_CFLAGS_RUNTIME:=$(ex_rtl_get_var_unsafe "DEFAULT_CFLAGS_$(ex_rtl_toupper "${BUILD}")_RUNTIME")};
: ${DEFAULT_GITROOT:=git://midipix.org};
: ${DEFAULT_GITROOT_HEAD:=git://midipix.org};
: ${DEFAULT_MAKE_INSTALL_VNAME:=DESTDIR};
: ${DEFAULT_MAKEFLAGS_BUILD:=-j${DEFAULT_BUILD_CPUS}};
: ${DEFAULT_GIT_ARGS:=""};
: ${DEFAULT_WGET_ARGS:="--no-check-certificate"};
: ${DEFAULT_ZIPDIST_DEFROOT:="/dev/fs/c/midipix"};

# Target-relative defaults
: ${DEFAULT_CROSS_AR:=${DEFAULT_TARGET}-ar};
: ${DEFAULT_CROSS_CC:=${DEFAULT_TARGET}-gcc};
: ${DEFAULT_CROSS_CXX:=${DEFAULT_TARGET}-g++};
: ${DEFAULT_CROSS_LIBTOOL:=slibtool};
: ${DEFAULT_CROSS_MAKE:=make LIBTOOL=slibtool};
: ${DEFAULT_CROSS_RANLIB:=${DEFAULT_TARGET}-ranlib};
: ${DEFAULT_HOST_AR:=ar};
: ${DEFAULT_HOST_CC:=gcc};
: ${DEFAULT_HOST_CXX:=g++};
: ${DEFAULT_HOST_LIBTOOL:=slibtool};
: ${DEFAULT_HOST_MAKE:=make LIBTOOL=slibtool};
: ${DEFAULT_HOST_RANLIB:=ranlib};
: ${DEFAULT_NATIVE_AR:=${DEFAULT_TARGET}-ar};
: ${DEFAULT_NATIVE_CC:=${DEFAULT_TARGET}-gcc};
: ${DEFAULT_NATIVE_CXX:=${DEFAULT_TARGET}-g++};
: ${DEFAULT_NATIVE_LIBTOOL:=slibtool};
: ${DEFAULT_NATIVE_MAKE:=make LIBTOOL=slibtool};
: ${DEFAULT_NATIVE_PKGCONFIG:=${PREFIX}/bin/${DEFAULT_TARGET}-pkg-config};
: ${DEFAULT_NATIVE_PKG_CONFIG:=${PREFIX}/bin/${DEFAULT_TARGET}-pkg-config};
: ${DEFAULT_NATIVE_PKG_CONFIG_LIBDIR:=${PREFIX_NATIVE}/lib/pkgconfig};
: ${DEFAULT_NATIVE_RANLIB:=${DEFAULT_TARGET}-ranlib};

# Build {log,status} & tarball names
: ${DEFAULT_BUILD_LOG_FNAME:=${PREFIX}/build.log};
: ${DEFAULT_BUILD_LOG_LAST_FNAME:=${PREFIX}/build.log.last};
: ${DEFAULT_BUILD_STATUS_IN_PROGRESS_FNAME:=${PREFIX}/BUILD_IN_PROGRESS};
: ${DEFAULT_TARBALL_CROSS_FNAME_PREFIX:=midipix-${ARCH}-${BUILD}_cross.};
: ${DEFAULT_TARBALL_FNAME_PREFIX:=midipix-${ARCH}-${BUILD}.};
: ${DEFAULT_TARBALL_MINIPIX_FNAME_PREFIX:=minipix-${ARCH}-${BUILD}.};
: ${DEFAULT_ZIPDIST_FNAME_PREFIX:=midipix-${ARCH}-${BUILD}.};

# Check & clear predicates
: ${DEFAULT_CHECK_PATH_VARS:="
	PREFIX PREFIX_NATIVE PREFIX_CROSS DLCACHEDIR WORKDIR"};
: ${DEFAULT_CHECK_PREREQ_CMDS:="
	aclocal autoconf autopoint awk basename bunzip2 find flex gcc git groff gunzip install
	ld libtool lzma make makeinfo msgfmt nl nroff openssl paste patch python sed sha256sum
	sort tar tee tic tr uname wget xz"};
: ${DEFAULT_CHECK_PREREQ_FILES_DYNAMIC:='
	/usr/share/groff/$(groff -v 2>/dev/null | awk '\''/^GNU groff version /{print $NF}'\'')/tmac/e.tmac'};
: ${DEFAULT_CHECK_PREREQ_FILES:="
	/usr/include/gmpxx.h /usr/include/mpc.h /usr/include/mpfr.h"};
: ${DEFAULT_CHECK_PREREQ_PERL_MODULES:="
	autodie ExtUtils::MakeMaker"};
: ${DEFAULT_CLEAR_ENV_VARS_EXCEPT:="
	HOME PATH TERM DEFAULT_TARBALL_SIGN_GPG_KEY USER"};
: ${DEFAULT_CLEAR_PREFIX_PATHS:="
	bin i686-nt32-midipix doc include info lib lib64 libexec man minipix native
	sbin share tmp usr x86_64-nt64-midipix x86_64-w64-mingw32
	pkglist.cross pkglist.host pkglist.native"};

# vim:filetype=sh textwidth=0