#!/bin/bash
# test we are root
if [ "$(id -u)" != "0" ]; then
   echo "run as root now exitting"
   exit 1
fi

export CFLAGS="-mtune=generic -Os -pipe"
export CXX="-mtune=generic -Os -pipe -fno-exceptions -fno-rtti"

P=swaybg
V=1.2.0
SRC=$P-$V
USER=`cat /etc/sysconfig/tcuser`
LIST="compiletc squashfs-tools wget cmake meson wayland-dev wayland-protocols cairo-dev gdk-pixbuf2-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

cd /tmp
su -c "/usr/local/bin/wget -nc --no-check-certificate \
https://github.com/swaywm/$P/archive/refs/tags/v$V.zip " $USER
unzip v$V.zip
cd $SRC

mkdir build && cd build
meson setup --prefix=/usr/local -Dstrip=true -Ddebug=false -Dbuildtype=plain -Dgdk-pixbuf=enabled -Dman-pages=disabled
# buildtype : plain
# debug     : false
# prefix    : /usr/local
# strip     : true
# gdk-pixbuf: enabled
# man-pages : disabled
meson configure 
ninja  # seconds
DESTDIR=/tmp/$P ninja install
cd /tmp

# main
######
mkdir -p $P/usr/local/share/doc/$P
cp $SRC/LICENSE  $P/usr/local/share/doc/$P/

# TCZ them
#######
LIST="$P  "
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:          swaybg.tcz 
Description:    Tiling desktop for Wayland
Version:        1.2.0
Author:         Drew DeVault
Original-site:  https://github.com/swaybgwm/swaybg
Copying-policy: Accompanied 
Size:           16K		
Extension_by:   aus9 
Tags:           wayland sway
Comments:       Although used by sway can be used by
                any wayland compositor that supports
                wlr-layer-shell protocol & wl_output version 4.
                  
Change-log:     2023/09/20 v 1.2.0 on 14.x 
Current:        2023/09/20      ' > $P.tcz.info

readelf -d $P/usr/local/bin/* | grep 'NEEDED' # cull duplicates TCBs
#[libcairo.so.2] cairo 
#[libgdk_pixbuf-2.0.so.0] gdk-pixbuf2
#[libgobject-2.0.so.0]glib2
#[libwayland-client.so.0]wayland wlroots which is a dep of sway but keep it here too

echo 'cairo.tcz
gdk-pixbuf2
glib2.tcz
wlroots.tcz       ' > $P.tcz.dep




