changeset 80:04f5776ff0be

vanilla: generalize use of CC, CXX, CFLAGS and CXXFLAGS
author David Demelier <markand@malikania.fr>
date Thu, 07 Mar 2019 13:42:44 +0100
parents 445da18130da
children 5fbbd46dec57
files README.options.md templates/autotools.sh templates/cmake.sh
diffstat 3 files changed, 38 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/README.options.md	Thu Mar 07 13:37:47 2019 +0100
+++ b/README.options.md	Thu Mar 07 13:42:44 2019 +0100
@@ -19,3 +19,14 @@
 - ZSH: control installation of zsh completion files
 - BASH: control installation of bash completion files
 - SSL: use SSL/TLS (implementation defined)
+
+The following options should be available for any package that builds C or C++
+code:
+
+- CBUILD: build system (usually ARCH-linux-musl)
+- CHOST: host system (usually ARCH-linux-musl)
+- CTARGET: target system (usually ARCH-linux-musl)
+- CC: C compiler (defaults to gcc)
+- CFLAGS: C flags (defaults to -O2)
+- CXX: C++ compiler (defaults to g++)
+- CXXFLAGS: C++ flags (defaults to -O2)
--- a/templates/autotools.sh	Thu Mar 07 13:37:47 2019 +0100
+++ b/templates/autotools.sh	Thu Mar 07 13:42:44 2019 +0100
@@ -15,6 +15,14 @@
 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 #
 
+: ${CHOST:=$(uname -m)-linux-musl}
+: ${CBUILD:=$(uname -m)-linux-musl}
+: ${CTARGET:=$(uname -m)-linux-musl}
+: ${CC:=gcc}
+: ${CFLAGS:=-O2}
+: ${CXX:=g++}
+: ${CXXFLAGS:=-O2}
+
 source ./template.info
 
 set -ex
@@ -23,7 +31,15 @@
 tar xvaf $PKGNAME-$PKGVERSION.tar.gz
 pushd $PKGNAME-$PKGVERSION
 
-./configure --prefix=/usr
+CC="$CC" \
+CFLAGS="$CFLAGS" \
+CXX="$CXX" \
+CXXFLAGS="$CXXFLAGS" \
+./configure \
+	--build=$CBUILD \
+	--host=$CHOST \
+	--target=$CTARGET \
+	--prefix=/usr
 make
 make install DESTDIR=$DESTDIR
 
--- a/templates/cmake.sh	Thu Mar 07 13:37:47 2019 +0100
+++ b/templates/cmake.sh	Thu Mar 07 13:42:44 2019 +0100
@@ -15,6 +15,11 @@
 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 #
 
+: ${CC:=gcc}
+: ${CFLAGS:=-O2}
+: ${CXX:=g++}
+: ${CXXFLAGS:=-O2}
+
 source ./template.info
 
 set -ex
@@ -26,7 +31,11 @@
 mkdir build && pushd build
 cmake .. \
 	-DBUILD_SHARED_LIBS=On \
-	-DCMAKE_INSTALL_PREFIX=/usr
+	-DCMAKE_INSTALL_PREFIX=/usr \
+	-DCMAKE_C_COMPILER="$CC" \
+	-DCMAKE_C_FLAGS="$CFLAGS" \
+	-DCMAKE_CXX_COMPILER="$CXX" \
+	-DCMAKE_CXX_FLAGS="$CXXFLAGS"
 make
 make install DESTDIR=$DESTDIR
 popd