### this file is sourced not run
PKGVER=5.9
PKGBUILD=1
PKGARCH=i686

TARBALL=ncurses-5.9.tar.gz
MD5SUM=8cb9c412e5f2d96bc6f459aa8c6282a1
SRC_URL=http://distro.ibiblio.org/fatdog/source/710/clfs-packages-3.0.0.tar
BUNDLE=clfs-packages-3.0.0.tar

SLACKREQ=
SLACKDESC='libncurses32: libncurses32 5.9 (terminal handling library)  
libncurses32:  
libncurses32: The Ncurses package contains libraries for terminal-independent 
libncurses32: handling of character screens.  
libncurses32: 
libncurses32: 
libncurses32: 
libncurses32: 
libncurses32: 
libncurses32: 
libncurses32:
'


### override download for LFS sources bundle
# $1-src-dir $2-tarball 
pkg_download() {
	echo downloading $BUNDLE for $TARBALL
	wget -P $1 $SRC_URL
	tar -xf $1/$BUNDLE --strip-components=1 -C $1 
	rm $1/$BUNDLE
}

### prepare
pkg_prepare() {
	pkg_prepare_default &&
	cd tmp/ncurses* &&
	patch -Np1 -i $SRC_DIR/ncurses-5.9-branch_update-4.patch
}

### package - only collect the libraries
pkg_package() {
	mv -v usr/bin/*-32 tmp
	rm -rf usr/bin usr/include usr/share usr/lib64
	mkdir -p usr/bin
	mv -v tmp/*-32 usr/bin
}

### build
pkg_build() {
	cd /tmp/ncurses*
	
	# put TICDIR in /usr/lib64
	sed -i -e '/^TICDIR/ s/lib/lib64/' misc/run_tic.in &&

	# this will build ncursesw
	CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" \
	   ./configure --prefix=/usr --libdir=/lib \
	   --with-shared --without-debug --enable-widec \
	   --with-manpage-format=normal --enable-pc-files \
	   --with-default-terminfo-dir=/usr/share/terminfo \
	   --enable-symlinks &&
	   		
	make $MAKEFLAGS && make install &&
	
	# install multiarch-wrapper
	mv -v /usr/bin/ncursesw5-config{,-32}	

	# move libs to the correct location according to CLFS
	mv -v /lib/lib{panelw,menuw,formw,ncursesw,ncurses++w}.a /usr/lib
	ln -svf ../../lib/$(readlink /lib/libncursesw.so) /usr/lib/libncursesw.so
	ln -svf ../../lib/$(readlink /lib/libmenuw.so) /usr/lib/libmenuw.so
	ln -svf ../../lib/$(readlink /lib/libpanelw.so) /usr/lib/libpanelw.so
	ln -svf ../../lib/$(readlink /lib/libformw.so) /usr/lib/libformw.so
	rm -v /lib/lib{ncursesw,menuw,panelw,formw}.so	

	# make ncursesw work for ncurses too
	for lib in curses ncurses form panel menu ; do
			echo "INPUT(-l${lib}w)" > /usr/lib/lib${lib}.so
			ln -sfv lib${lib}w.a /usr/lib/lib${lib}.a
	done
	ln -sfv libcurses.so /usr/lib/libcursesw.so
	ln -sfv libncurses.so /usr/lib/libcurses.so
	ln -sfv libncursesw.a /usr/lib/libcursesw.a
	ln -sfv libncurses.a /usr/lib/libcurses.a
	ln -sfv libncurses++w.a /usr/lib/libncurses++.a
	ln -sfv ncursesw5-config-32 /usr/bin/ncurses5-config-32	
	
	pkg_build_slackdesc &&
	rm -f /etc/ld.so.cache /var/cache/ldconfig/aux-cache
}
