#!/bin/sh # test we are root if [ "$(id -u)" != "0" ]; then echo "run as root now exitting" exit 1 fi export CFLAGS='-flto=auto -Os -pipe -march=armv8-a+crc -mtune=cortex-a72 ' export CXXFLAGS='-flto=auto -Os -pipe -fno-exceptions -fno-rtti -march=armv8-a+crc -mtune=cortex-a72 ' export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig echo $CFLAGS && echo $CXXFLAGS P=libbsd V=0.11.7 SRC=$P-$V USER=`cat /etc/sysconfig/tcuser` LIST="compiletc squashfs-tools wget libmd-dev " for Z in $LIST do su -c "tce-load -i $Z" $USER done # list may be larger than loaded cd /usr/local/lib rm -rf *.la rm -rf gcc/aarch64-unknown-linux-gnu/12.2.0/plugin/*.la rm -rf gcc/aarch64-unknown-linux-gnu/12.2.0/*.la rm -rf gcc/armv7l-unknown-linux-gnueabihf/12.2.0/plugin/libcc1plugin.la rm -rf gcc/armv7l-unknown-linux-gnueabihf/12.2.0/plugin/libcp1plugin.la rm -rf gcc/armv7l-unknown-linux-gnueabihf/12.2.0/liblto_plugin.la rm -rf gprofng/*.la rm -rf python3.8/site-packages/*.la rm -rf pkcs11/*.la rm -rf cairo/*.la rm -rf gtk-2.0/modules/*.la rm -rf gtk-2.0/2.10.0/printbackends/*.la rm -rf gtk-2.0/2.10.0/immodules/*.la rm -rf gtk-2.0/2.10.0/engines/*.la rm -rf imlib2/loaders/*.la rm -rf imlib2/filters/*.la rm -rf gdk-pixbuf-2.0/2.10.0/loaders/*.la rm -rf pulseaudio/libpulsedsp.la rm -rf pulseaudio/libpulsecore-13.0.la rm -rf pulseaudio/libpulsecommon-13.0.la rm -rf libv4l/v4l2convert.la rm -rf libv4l/v4l1compat.la rm -rf libv4l/plugins/libv4l-mplane.la rm -rf vala-0.46/libvalaccodegen.la cd /tmp rm -rf /usr/lib/*.la find / -name *.la su -c "/usr/local/bin/wget -nc --no-check-certificate \ https://$P.freedesktop.org/releases/$SRC.tar.xz" $USER tar xvf $SRC*xz cd $SRC ./configure --prefix=/usr/local --sysconfdir=/etc make -j4 # 20 secs # a number of warnings appear like /usr/local/bin/ld: warning: The MD5Data() function in libbsd is a deprecated wrapper, use libmd instead. make install-strip DESTDIR=/tmp/$P cd /tmp # dev ####### mkdir -p $P-dev/usr/local/lib mv $P/usr/local/include $P-dev/usr/local/ mv $P/usr/local/lib/pkgconfig $P-dev/usr/local/lib rm -rf $P/usr/local/lib/*.la mv $P/usr/local/lib/*.a $P-dev/usr/local/lib # main ####### rm -rf $P/usr/local/share/man mkdir -p $P/usr/local/share/doc/$P cp $SRC/COPYING $P/usr/local/share/doc/$P/ # TCZ them ########### LIST2="$P $P-dev " for Z in $LIST2 do mksquashfs $Z $Z.tcz md5sum $Z.tcz > $Z.tcz.md5.txt cd $Z find usr -not -type d > /tmp/$Z.tcz.list sed 's|usr|/usr|g' -i /tmp/$Z.tcz.list cd /tmp done ls -hal echo 'Title: libbsd-dev.tcz Description: dev files Version: 0.11.7 Author: libbsd Team Original-site: https://libbsd.freedesktop.org/wiki/ Copying-policy: accompanied - many Size: 436k Extension_by: aus9 Tags: passwd bsd Comments: dev files Change-log: 2023/09/22 v 0.11.7 Current: 2023/09/22 ' > $P-dev.tcz.info echo 'libbsd.tcz libmd-dev.tcz' > $P-dev.tcz.dep echo 'Title: libbsd.tcz Description: password and user account tools Version: 0.11.7 Author: libbsd Team Original-site: https://libbsd.freedesktop.org/wiki/ Copying-policy: accompanied - many Size: 44K Extension_by: aus9 Tags: passwd bsd Comments: Utility functions from BSD systems Change-log: 2023/09/22 v 0.11.7 Current: 2023/09/22 ' > $P.tcz.info cat libbsd/usr/local/lib/libbsd.so | grep libmd # -> * The MD5 functions are provided by the libmd library. */ so libmd echo 'libmd.tcz' > $P.tcz.dep