4593317 [rkeene@sledge /home/rkeene/projects/build]$ cat lyx.txt
# RUNTIME REQUIREMENT: tetex
# RUNTIME REQUIREMENT: tetex-doc
# SHORT DESC: Document Processor for UNIX
# LONG DESC: LyX is an advanced document processor for Unix. It encourages an approach to writing based on the structure of your documents, not their appearance, allowing you to concentrate on writing rather than visual layout. It automates formatting according to predefined rule sets, yielding consistency throughout even the most complex documents.

# DESKTOP: [Desktop Entry]
# DESKTOP: Name=LyX Document Processor
# DESKTOP: GenericName=LyX
# DESKTOP: Comment=
# DESKTOP: Exec=/usr/bin/lyx
# DESKTOP: Icon=/usr/share/lyx/images/lyx.xpm
# DESKTOP: StartupNotify=false
# DESKTOP: Terminal=false
# DESKTOP: Type=Application
# DESKTOP: Categories=Application;Office

if echo "${pkgver}" | grep '^1\.[56]' >/dev/null; then
	if [ -f /etc/profile.d/qt4.sh ]; then
		BUILDQT=0
	else
		BUILDQT=1
	fi
else
	BUILDQT=0
fi

if [ "${BUILDQT}" = "1" ]; then
	# Build Qt4 and statically link against it.
	# Not the best solution, but LyX 1.5/1.6 only supports Qt4 and no version of slackware so far comes with it...
	(
		if gcc --version | head -n 1 | sed 's@gcc (GCC) @@' | grep '^3\.' >/dev/null; then
			QTVERS="4.3.4"
		else
			QTVERS="4.5.0"
		fi

		cd ../
		wget -O "qt-${QTVERS}.tar.gz" -o /dev/null "http://localhost/tmp/qt-x11-opensource-src-${QTVERS}.tar.gz" || \
		wget -O "qt-${QTVERS}.tar.gz" -o /dev/null "http://wftp.tu-chemnitz.de/pub/Qt/qt/source/qt-x11-opensource-src-${QTVERS}.tar.gz" || exit 1
		tar -zxf "qt-${QTVERS}.tar.gz" || exit 1

		cd qt-*/ || exit 1
		yes yes | ./configure -prefix "$(pwd)/INST/" -release -static -no-cups -no-nis -no-tablet || \
		yes yes | ./configure -prefix "$(pwd)/INST/" -release -static -no-cups -no-nis || exit 1

		# Qt 4.5.0's examples fail to build, way to go Trolltech.
		sed 's@trafficinfo @ @' examples/xmlpatterns/xmlpatterns.pro > examples/xmlpatterns/xmlpatterns.pro.new
		mv examples/xmlpatterns/xmlpatterns.pro.new examples/xmlpatterns/xmlpatterns.pro

		make || exit 1
		make install || exit 1
	) || exit 1

	OURQT4DIR="$(readlink -f ../qt-*/ 2>/dev/null)/INST/"

	# Not sure *WTF* Qt4 is doing, but it randomly adds an additional "INST" to some things (WTF)
	for pcfile in "${OURQT4DIR}"/lib/pkgconfig/*.pc; do
		sed 's@/INST/*/INST@/INST@g' "${pcfile}" > x.tmp;
		cat x.tmp > "${pcfile}"
		rm -f x.tmp
	done

	./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir="$libdir" --with-qt4-dir="${OURQT4DIR}" || exit 1
else
	test -x /etc/profile.d/qt.sh && . /etc/profile.d/qt.sh
	test -x /etc/profile.d/qt4.sh && . /etc/profile.d/qt4.sh

	./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir="$libdir" || exit 1
fi


sed "s@^sys_lib_\(dl\)\?search_path_spec=\"@sys_lib_\1search_path_spec=\"${libdir} @g;" libtool > libtool.1
cat libtool.1 > libtool
rm libtool.1

make && \
make install || exit 1
4593318 [rkeene@sledge /home/rkeene/projects/build]$

Click here to go back to the directory listing.
Click here to download this file.
last modified: 2012-05-07 00:52:06