diff options
| author | Laurent Bercot <ska-skaware@skarnet.org> | 2024-09-07 14:55:46 +0000 |
|---|---|---|
| committer | Laurent Bercot <ska@appnovation.com> | 2024-09-07 14:55:46 +0000 |
| commit | 1559cbe1ebcea1dac3f5c3a40a51efedd7766ffc (patch) | |
| tree | 8a8d1e0c31e3328c9897c3727a555c693ef8a2fc /deb | |
| download | ToolchainFactory-1559cbe1ebcea1dac3f5c3a40a51efedd7766ffc.tar.gz | |
Initial commit
Signed-off-by: Laurent Bercot <ska@appnovation.com>
Diffstat (limited to 'deb')
| -rwxr-xr-x | deb/builddeb.sh | 54 | ||||
| -rw-r--r-- | deb/skel/control | 19 |
2 files changed, 73 insertions, 0 deletions
diff --git a/deb/builddeb.sh b/deb/builddeb.sh new file mode 100755 index 0000000..fc2e72b --- /dev/null +++ b/deb/builddeb.sh @@ -0,0 +1,54 @@ +#!/bin/bash -e + +WD=`realpath \`dirname "$0"\`` +cd "$WD" + +output="$1" +name="$2" +libc_name="$3" +version="$4" + +if test "$libc_name" = musl ; then + pc_libc_required="static binaries, no libc required" + pc_libc= +else + pc_libc_required="glibc required" + pc_libc=libc6 +fi + +verkeys="gcc_ver gmp_ver mpfr_ver mpc_ver isl_ver ${libc_name}_ver binutils_ver gdb_ver" +allkeys="name libc_name package version maintainer triplet pc debpc pc_libc_required pc_libc size libc_ver $verkeys" + +for k in $verkeys ; do + key=`echo "$k" | tr a-z A-Z` + v=`grep "^$key" < "$WD/../config" | awk '{print $3;}'` + eval "$k=\"$v\"" +done + +if test $"libc_name" = musl ; then + libc_ver="$musl_ver" +else + libc_ver="$glibc_ver" +fi + +triplet=`cat "$WD/../$libc_name/targets/$name/triplet"` +pc=`cat "$WD/../$libc_name/targets/pc/triplet"` +debpc=`echo "$pc" | cut -d- -f1 | sed 's/x86_64/amd64/'` +package="fce-toolchain-${name}-${gcc_ver}-${libc_name}" +maintainer='Laurent Bercot <laurent.bercot-ext@faurecia.com>' +pkgname="${package}_${version}_${debpc}" + +fullname="${triplet}_${name}-${gcc_ver}" +size=`du -s "$output/cross/$fullname" | cut -f1` + +sedex="" + +for k in $allkeys ; do + sedex="$sedex s/@@$k@@/${!k}/;" +done + +mkdir -p "$output/deb/$pkgname/opt/fce-toolchains" "$output/deb/$pkgname/DEBIAN" +cp -a "$output/cross/$fullname" "$output/deb/$pkgname/opt/fce-toolchains/$fullname" +sed -e "$sedex" < "$WD/skel/control" > "$output/deb/$pkgname/DEBIAN/control" +cd "$output/deb" +dpkg-deb -b -Zgzip --root-owner-group -- "$pkgname" diff --git a/deb/skel/control b/deb/skel/control new file mode 100644 index 0000000..1708f3b --- /dev/null +++ b/deb/skel/control @@ -0,0 +1,19 @@ +Package: @@package@@ +Version: @@version@@ +Maintainer: @@maintainer@@ +Changed-By: @@maintainer@@ +Description: FCE C/C++ toolchain targetting @@triplet@@ (@@name@@) + C/C++ toolchain for Linux, made by Faurecia Clarion with the following properties: + Build system: @@pc@@ (@@pc_libc_required@@) + Target system: @@triplet@@, suitable for a product of type @@name@@ + Target libc: @@libc_name@@ + Software versions: gcc-@@gcc_ver@@, gmp-@@gmp_ver@@, mpfr-@@mpfr_ver@@, mpc-@@mpc_ver@@, isl-@@isl_ver@@, @@libc_name@@-@@libc_ver@@, binutils-@@binutils_ver@@ + Includes a debugger, gdb-@@gdb_ver@@, and a native gdbserver binary for @@triplet@@. +Section: devel +Priority: optional +Installed-Size: @@size@@ +Architecture: @@debpc@@ +Origin: FCE +Bugs: jira://jira.sinc.faurecia.com/ +Depends: @@pc_libc@@ + |
