#!/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=armv6zk -mtune=arm1176jzf-s -mfpu=vfp ' export CXXFLAGS='-flto=auto -Os -pipe -fno-exceptions -fno-rtti -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp ' export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig echo $CFLAGS && echo $CXXFLAGS # no libjpeg-turbo needed in dev but needed in run dep P=openjpeg V=2.5.0 SRC=$P-$V USER=`cat /etc/sysconfig/tcuser` LIST="compiletc squashfs-tools wget cmake libpng-dev libtiff-dev lcms2-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 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 gcc/armv7l-unknown-linux-gnueabihf/12.2.0/plugin/libcp1plugin.la rm -rf gcc/armv7l-unknown-linux-gnueabihf/12.2.0/plugin/libcc1plugin.la rm -rf gcc/armv7l-unknown-linux-gnueabihf/12.2.0/liblto_plugin.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://github.com/uclouvain/$P/archive/refs/tags/v$V.tar.gz" $USER tar xvf v$V*gz cd $SRC mkdir build && cd build cmake prefix=/usr/local -DCMAKE_BUILD_TYPE=Release -DENABLE_STATIC=FALSE ../ make -j4 # 50s make install DESTDIR=/tmp/$P # install-strip fails cd /tmp # dev ##### mkdir -p $P-dev/usr/local/lib mv $P/usr/local/include $P-dev/usr/local/ mv $P/usr/local/lib/openjpeg* $P-dev/usr/local/lib mv $P/usr/local/lib/pkgconfig $P-dev/usr/local/lib/ mv $P/usr/local/lib/*.a $P-dev/usr/local/lib # main ####### mkdir -p $P/usr/local/share/doc/$P cp $SRC/LICENSE $P/usr/local/share/doc/$P/ # TCZ them ########### LIST="$P $P-dev" for Z in $LIST 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: openjpeg-dev.tcz Description: dev files Version: 2.5.0 Author: https://github.com/uclouvain/openjpeg/blob/master/AUTHORS.md Original-site: https://github.com/uclouvain/openjpeg Copying-policy: accompanied Size: 1.5M Extension_by: aus9 Tags: jpeg jp2 Comments: dev files Change-log: 2016/06/10 v 2.1.0 (bmarkus) 2020/04/26 v 2.3.1 (juanito) Current: 2023/07/26 v 2.5.0 on 14.x (aus9)' > $P-dev.tcz.info echo 'openjpeg.tcz lcms2-dev.tcz libpng-dev.tcz libtiff-dev.tcz ' > $P-dev.tcz.dep echo 'Title: openjpeg.tcz Description: jpeg 2000 codec Version: 2.5.0 Author: https://github.com/uclouvain/openjpeg/blob/master/AUTHORS.md Original-site: https://github.com/uclouvain/openjpeg Copying-policy: accompanied Size: 276K Extension_by: aus9 Tags: jpeg jp2 Comments: Binaries only Change-log: 2016/06/10 v 2.1.0 (bmarkus) 2020/04/26 v 2.3.1 (juanito) Current: 2023/07/26 v 2.5.0 on 14.x (aus9)' > $P.tcz.info readelf -d $P/usr/local/lib/*.so* | grep 'NEEDED' # none strange! readelf -d $P/usr/local/bin/* | grep 'NEEDED' #[libopenjp2.so.7]this TCE #[libpng16.so.16]libpng #[libtiff.so.6]libtiff #[liblzma.so.5]liblzma #[libjpeg.so.62]libjpeg-turbo #[liblcms2.so.2]lcms2 echo 'libpng.tcz libtiff.tcz liblzma.tcz libjpeg-turbo.tcz lcms2.tcz ' > $P.tcz.dep