[sword-devel] -O3 -g
jmarsden at fastmail.fm
Fri Dec 4 22:41:24 MST 2009
Troy A. Griffitts wrote:
> Yeah J, you're probably right. I suppose I might try to justify the
> settings in usrinst.sh by saying that these are the normal settings for
> "users" needing to build the library (usually developers). These are
> the settings I use daily while I develop (no shared libs, with debug).
OK... I think some clarity in INSTALL about your definition of "normal"
would be useful :)
I see that on a clean SWORD svn tree, doing
./autogen.sh && ./usrinst.sh --disable-debug && make
displays all the warnings, so the current SWORD build environment is
actually turning *off* some warnings by default, and enabling them only
when you disable debug. That seems somewhat counter-intuitive. You'd
generally want developers creating debug builds to see all the warnings,
and indeed the use of -Wall -Werror in the debug builds makes it appear
that this was the *intent* of the build setup... just not the actual effect.
> But I'm sure you're at least building with shared libs for your release
> package, yes?
Correct. I forgot about that. I'm not doing a --disable-shared, which
usrinst.sh does. I'm not really sure *why* --disable-shared would be
considered "normal", by the way...? I'm also not doing
--libdir=/usr/lib64 which seems a very odd default.
Maybe usrinst.sh needs renaming to developerinst.sh (or even
troyinst.sh), making its target audience clear, and then a usrinst.sh
more aimed at real builds / real users can be created and included, too?
DEB_DH_INSTALL_SOURCEDIR := debian/tmp
DEB_CONFIGURE_EXTRA_FLAGS := --with-zlib --with-clucene=/usr --with-icu
DEB_DH_MAKESHLIBS_ARGS_libsword8 := -V"libsword8 (>= 1.6)"
DEB_SHLIBDEPS_INCLUDE_libsword8 := debian/tmp/usr/lib
DEB_SHLIBDEPS_INCLUDE_diatheke := debian/libsword8/usr/lib
DEB_DBG_PACKAGE_libsword8 := libsword-dbg
#CppUnitTestSuite - currently broken
#DEB_MAKE_CHECK_TARGET := check
#DEB_OPT_FLAG=-g -O0 -Werror -DUSBINARY
#Running Shell based Testsuite
$(shell cd tests/testsuite && ./runall.sh 1>&2)
# The next three rules use chrpath to remove unwanted rpath info
# from the compiled binaries when they are built on amd64.
chrpath -d $(CURDIR)/lib/.libs/libsword.so*
chrpath -d $(CURDIR)/utilities/.libs/*
chrpath -d $(CURDIR)/utilities/diatheke/.libs/diatheke
for file in `ls debian/*.pod`;\
base=`basename $$file .pod`;\
name=`basename $$base .1 | tr '[a-z]' '[A-Z]'`;\
pod2man --release=$$VERSION --center "" -n $$name $$file > $$base;\
#checking for missing files
rm -f *.1
More information about the sword-devel