2012/10/31 Darrell Anderson <humanreadable(a)yahoo.com>om>:
Sounds like you are building separate app packages
from tdegraphics. Have your tried to just build tdegraphics? If that works then try
splitting tdegraphics into separate packages. Here are my tdegraphics configure options:
rm CMakeCache.txt 2>/dev/null
mkdir -p ${TMP}/${PRGNAM}.build
cd ${TMP}/${PRGNAM}.build
cmake $SOURCES_ROOT \
-DCMAKE_C_FLAGS:STRING="$CPUOPT" \
-DCMAKE_CXX_FLAGS:STRING="$CPUOPT $DEBUG_CMAKE_OPT" \
-DCMAKE_INSTALL_PREFIX=${PREFIX} \
-DSYSCONF_INSTALL_DIR=${SYSCONFDIR} \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
-DMAN_INSTALL_DIR=${MANDIR} \
-DWITH_GCC_VISIBILITY=OFF \
-DWITH_T1LIB=ON \
-DWITH_PAPER=ON \
-DWITH_TIFF=ON \
-DWITH_OPENEXR=ON \
-DWITH_PDF=ON \
-DBUILD_KMRML=OFF \
-DBUILD_ALL=ON || exit 1
To build separate app packages, my thinking is first build a base tdegraphics package.
Check CMakeLists.txt for the separate build options. In the build script set those options
to OFF. Then build and install tdegraphics. That becomes the base package. Build scripts
for individual apps will be the same with all build options OFF except for the specific
app you are building and that option will be ON.
I do something similar to build a special tdebase docbook package. That way I can edit
and update some of the tdebase user guides and build a very specific package of just those
files.
Now I understand why nobody have seen so many errors in CMakefiles
before me and I've got so a lot to fix =)... It's all because
everybody uses such way to build it...
As I mentioned somewhere, I'm doing a gentoo packaging , it means I'm
writing ebuilds, special build scripts which end users runs on their
machines... and it is much more easy to manage them if they will be
building as separate packages...
Note:
When using autotools, be sure to always
regenerate the autoconf/automake files, as
mentioned in
section 3 of the wiki:
This regeneration doesn't work
itself...
Correct, the build script needs to perform that. In my automake build scripts I run
this:
LIBTOOLM4="/usr/share/aclocal/libtool.m4"
LTMAINSH="/usr/share/libtool/config/ltmain.sh"
echo "Running make clean (please be patient)..."
make clean &>/dev/null
cp -p "$LIBTOOLM4" admin/libtool.m4.in
cp -p "$LTMAINSH" admin/ltmain.sh
echo "Building..."
echo
make -f admin/Makefile.common || exit 1
Take a look into my log in the first message (it's corrupted by mail
sysyem but still readable, here is the normal one:
https://gist.github.com/3988463 )...
I'm doing the same things...