--- ./clipper-config.in_orig 2010-01-08 00:05:49.295937896 -0800 +++ ./clipper-config.in 2010-01-08 00:07:27.122938464 -0800 @@ -84,7 +84,7 @@ if test "$echo_libs" = "yes" ; then # note BOOST_LIBS should be part of CCTBX_LIBS - libs="-lclipper-minimol -lclipper-mmdb -lclipper-cns -lclipper-cif -lclipper-contrib -lclipper-ccp4 -lclipper-phs -lclipper-core @CCP4_LIBS@ @MMDB_LIBS@ @FFTW_LIBS@ @CCTBX_LIBS@" + libs="@CLIPPER_LIBS@ @CCP4_LIBS@ @MMDB_LIBS@ @FFTW_LIBS@" if test "${libdir}" != "/usr/lib" ; then echo -L${libdir} $libs else --- ./Makefile.am_orig 2010-01-08 00:05:49.302937262 -0800 +++ ./Makefile.am 2010-01-08 00:07:58.846938266 -0800 @@ -2,10 +2,10 @@ AUTOMAKE_OPTIONS = foreign SUBDIRS = config clipper examples dox DIST_SUBDIRS = config clipper examples dox -EXTRA_DIST = AUTHORS COPYING ChangeLog INSTALL NEWS README +EXTRA_DIST = AUTHORS COPYING ChangeLog INSTALL NEWS README clipper.pc.in bin_SCRIPTS = clipper-config -# pkgconfigdir = $(libdir)/pkgconfig -# pkgconfig_DATA = clipper.pc +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = clipper.pc if DEBUG AM_CXXFLAGS = -g -DDEBUG endif --- ./examples/Makefile.am_orig 2010-01-08 00:05:49.310937895 -0800 +++ ./examples/Makefile.am 2010-01-08 00:08:57.638938470 -0800 @@ -31,6 +31,10 @@ LIBS = $(FFTW_LIBS) $(CCP4_LIBS) $(MMDB_LIBS) $(CCTBX_LIBS) +if ENABLE_SINGLELIB +LDADD = ../clipper/libclipper.la \ + -lpthread +else LDADD = \ $(top_builddir)/clipper/contrib/libclipper-contrib.la \ $(top_builddir)/clipper/ccp4/libclipper-ccp4.la \ @@ -40,4 +44,4 @@ $(top_builddir)/clipper/minimol/libclipper-minimol.la \ $(top_builddir)/clipper/core/libclipper-core.la \ -lpthread - +endif --- ./clipper/phs/Makefile.am_orig 2010-01-08 00:05:49.317937540 -0800 +++ ./clipper/phs/Makefile.am 2010-01-08 01:18:37.104938061 -0800 @@ -8,15 +8,19 @@ library_include_HEADERS = \ phs_io.h +if ENABLE_SINGLELIB +noinst_LTLIBRARIES = libclipper-phs.la +else lib_LTLIBRARIES = libclipper-phs.la +libclipper_phs_la_LDFLAGS = -version-info @CLIPPER_LT_VERSION@ + +libclipper_phs_la_LIBADD = \ + $(top_builddir)/clipper/core/libclipper-core.la +endif libclipper_phs_la_SOURCES = \ phs_io.cpp library_includedir = $(pkgincludedir)/phs -libclipper_phs_la_LDFLAGS = -version-info @CLIPPER_LT_VERSION@ -libclipper_phs_la_LIBADD = \ - $(top_builddir)/clipper/core/libclipper-core.la - --- ./clipper/Makefile.am_orig 2010-01-08 00:05:49.325938732 -0800 +++ ./clipper/Makefile.am 2010-01-08 00:10:59.660938081 -0800 @@ -6,6 +6,20 @@ SUBDIRS = \ core ${CLIPPER_MMDB_DIR} ${CLIPPER_MINIMOL_DIR} ${CLIPPER_CCP4_DIR} ${CLIPPER_CIF_DIR} ${CLIPPER_PHS_DIR} ${CLIPPER_CNS_DIR} ${CLIPPER_CCTBX_DIR} contrib +SUBLIBS = ${CLIPPER_CCP4_DIR}/libclipper-ccp4.la \ +${CLIPPER_CIF_DIR}/libclipper-cif.la \ +${CLIPPER_CNS_DIR}/libclipper-cns.la contrib/libclipper-contrib.la \ +core/libclipper-core.la ${CLIPPER_MINIMOL_DIR}/libclipper-minimol.la \ +${CLIPPER_MMDB_DIR}/libclipper-mmdb.la \ +${CLIPPER_PHS_DIR}/libclipper-phs.la + +if ENABLE_SINGLELIB +lib_LTLIBRARIES = libclipper.la +libclipper_la_SOURCES = version.cpp +libclipper_la_LIBADD = $(SUBLIBS) +libclipper_la_LDFLAGS = $(CCP4_LIBS) $(MMDB_LIBS) $(FFTW_LIBS) -lpthread -version-info $(CLIPPER_LT_VERSION) +endif + INCLUDES=${FFTW_CXXFLAGS} library_include_HEADERS = \ --- ./clipper/ccp4/Makefile.am_orig 2010-01-08 00:05:49.332937539 -0800 +++ ./clipper/ccp4/Makefile.am 2010-01-08 01:18:50.768938839 -0800 @@ -3,7 +3,7 @@ ## -*- mode: Makefile; mode: font-lock -*- -INCLUDES=${FFTW_CXXFLAGS} +AM_CXXFLAGS=${FFTW_CXXFLAGS} ${CCP4_CXXFLAGS} library_include_HEADERS = \ ccp4_map_io.h \ @@ -11,7 +11,16 @@ ccp4_mtz_types.h \ ccp4_utils.h +if ENABLE_SINGLELIB +noinst_LTLIBRARIES = libclipper-ccp4.la +else lib_LTLIBRARIES = libclipper-ccp4.la +libclipper_ccp4_la_LDFLAGS = -version-info @CLIPPER_LT_VERSION@ + +libclipper_ccp4_la_LIBADD = \ + $(top_builddir)/clipper/core/libclipper-core.la \ + $(CCP4_LIBS) +endif libclipper_ccp4_la_SOURCES = \ ccp4_map_io.cpp \ @@ -21,9 +30,3 @@ library_includedir = $(pkgincludedir)/ccp4 -libclipper_ccp4_la_LDFLAGS = -version-info @CLIPPER_LT_VERSION@ -libclipper_ccp4_la_LIBADD = \ - $(top_builddir)/clipper/core/libclipper-core.la \ - $(CCP4_LIBS) - - --- ./clipper/core/Makefile.am_orig 2010-01-08 00:05:49.340937613 -0800 +++ ./clipper/core/Makefile.am 2010-01-08 01:20:27.167937680 -0800 @@ -48,7 +48,16 @@ test_data.h \ xmap.h +if ENABLE_SINGLELIB +noinst_LTLIBRARIES = libclipper-core.la +else lib_LTLIBRARIES = libclipper-core.la +libclipper_core_la_LDFLAGS = -version-info @CLIPPER_LT_VERSION@ + +libclipper_core_la_LIBADD = \ + $(FFTW_LIBS) \ + -lpthread +endif libclipper_core_la_SOURCES = \ atomsf.cpp \ @@ -93,9 +102,4 @@ library_includedir = $(pkgincludedir)/core -libclipper_core_la_LDFLAGS = -version-info @CLIPPER_LT_VERSION@ -libclipper_core_la_LIBADD = \ - $(FFTW_LIBS) \ - -lpthread - --- ./clipper/contrib/Makefile.am_orig 2010-01-08 00:05:49.347937817 -0800 +++ ./clipper/contrib/Makefile.am 2010-01-08 01:19:27.475937739 -0800 @@ -19,7 +19,15 @@ skeleton.h \ test_contrib.h +if ENABLE_SINGLELIB +noinst_LTLIBRARIES = libclipper-contrib.la +else lib_LTLIBRARIES = libclipper-contrib.la +libclipper_contrib_la_LDFLAGS = -version-info @CLIPPER_LT_VERSION@ + +libclipper_contrib_la_LIBADD = \ + $(top_builddir)/clipper/core/libclipper-core.la +endif libclipper_contrib_la_SOURCES = \ convolution_search.cpp \ @@ -37,8 +45,3 @@ library_includedir = $(pkgincludedir)/contrib -libclipper_contrib_la_LDFLAGS = -version-info @CLIPPER_LT_VERSION@ -libclipper_contrib_la_LIBADD = \ - $(top_builddir)/clipper/core/libclipper-core.la - - --- ./clipper/minimol/Makefile.am_orig 2010-01-08 00:05:49.355937332 -0800 +++ ./clipper/minimol/Makefile.am 2010-01-08 01:19:42.765938205 -0800 @@ -13,7 +13,15 @@ minimol_seq.h \ minimol_utils.h +if ENABLE_SINGLELIB +noinst_LTLIBRARIES = libclipper-minimol.la +else lib_LTLIBRARIES = libclipper-minimol.la +libclipper_minimol_la_LDFLAGS = -version-info @CLIPPER_LT_VERSION@ + +libclipper_minimol_la_LIBADD = \ + $(top_builddir)/clipper/mmdb/libclipper-mmdb.la $(top_builddir)/clipper/core/libclipper-core.la +endif libclipper_minimol_la_SOURCES = \ container_minimol.cpp \ @@ -25,8 +33,3 @@ library_includedir = $(pkgincludedir)/minimol -libclipper_minimol_la_LDFLAGS = -version-info @CLIPPER_LT_VERSION@ -libclipper_minimol_la_LIBADD = \ - $(top_builddir)/clipper/mmdb/libclipper-mmdb.la $(top_builddir)/clipper/core/libclipper-core.la - - --- ./clipper/cif/Makefile.am_orig 2010-01-08 00:05:49.362937816 -0800 +++ ./clipper/cif/Makefile.am 2010-01-08 01:19:54.967938661 -0800 @@ -8,16 +8,19 @@ library_include_HEADERS = \ cif_data_io.h +if ENABLE_SINGLELIB +noinst_LTLIBRARIES = libclipper-cif.la +else lib_LTLIBRARIES = libclipper-cif.la - -libclipper_cif_la_SOURCES = \ - cif_data_io.cpp - -library_includedir = $(pkgincludedir)/cif - libclipper_cif_la_LDFLAGS = -version-info @CLIPPER_LT_VERSION@ + libclipper_cif_la_LIBADD = \ $(top_builddir)/clipper/core/libclipper-core.la \ $(MMDB_LIBS) +endif +libclipper_cif_la_SOURCES = \ + cif_data_io.cpp + +library_includedir = $(pkgincludedir)/cif --- ./clipper/mmdb/Makefile.am_orig 2010-01-08 00:05:49.370937890 -0800 +++ ./clipper/mmdb/Makefile.am 2010-01-08 01:20:03.940938917 -0800 @@ -8,15 +8,18 @@ library_include_HEADERS = \ clipper_mmdb.h +if ENABLE_SINGLELIB +noinst_LTLIBRARIES = libclipper-mmdb.la +else lib_LTLIBRARIES = libclipper-mmdb.la +libclipper_mmdb_la_LDFLAGS = -version-info @CLIPPER_LT_VERSION@ + +libclipper_mmdb_la_LIBADD = \ + $(top_builddir)/clipper/core/libclipper-core.la $(MMDB_LIBS) +endif libclipper_mmdb_la_SOURCES = \ clipper_mmdb.cpp library_includedir = $(pkgincludedir)/mmdb -libclipper_mmdb_la_LDFLAGS = -version-info @CLIPPER_LT_VERSION@ -libclipper_mmdb_la_LIBADD = \ - $(top_builddir)/clipper/core/libclipper-core.la $(MMDB_LIBS) - - --- ./clipper/cns/Makefile.am_orig 2010-01-08 00:05:49.377937535 -0800 +++ ./clipper/cns/Makefile.am 2010-01-08 01:19:07.398938728 -0800 @@ -9,7 +9,15 @@ cns_hkl_io.h \ cns_map_io.h +if ENABLE_SINGLELIB +noinst_LTLIBRARIES = libclipper-cns.la +else lib_LTLIBRARIES = libclipper-cns.la +libclipper_cns_la_LDFLAGS = -version-info @CLIPPER_LT_VERSION@ + +libclipper_cns_la_LIBADD = \ + $(top_builddir)/clipper/core/libclipper-core.la +endif libclipper_cns_la_SOURCES = \ cns_hkl_io.cpp \ @@ -17,8 +25,4 @@ library_includedir = $(pkgincludedir)/cns -libclipper_cns_la_LDFLAGS = -version-info @CLIPPER_LT_VERSION@ -libclipper_cns_la_LIBADD = \ - $(top_builddir)/clipper/core/libclipper-core.la - --- ./configure.ac_orig 2010-01-08 00:05:49.385937888 -0800 +++ ./configure.ac 2010-01-08 01:21:03.052938525 -0800 @@ -141,7 +141,9 @@ [ CLIPPER_CCP4_DIR="" ] ) AC_SUBST(CLIPPER_CCP4_DIR) - +if test "x$enable_gpp4" = "xyes"; then + CLIPPER_GPP4_REQUIRES="gpp4" +fi AC_ARG_ENABLE(cns, AC_HELP_STRING( [--enable-cns], [enable cns-hkl-interface library (default no)] ), @@ -158,6 +160,23 @@ ) AC_SUBST(CLIPPER_CNS_DIR) +AC_ARG_ENABLE(single-lib, + AC_HELP_STRING( [--enable-single-lib], [enable building clipper as a single library with all sublibs (eg libclipper-contrib) combined (default no)] ), + [ + case $enableval in + no) enable_singlelib=no ;; + *) enable_singlelib=yes + esac ], + [ enable_singlelib=no ] #dnl default is no +) +AM_CONDITIONAL(ENABLE_SINGLELIB, [test "x$enable_singlelib" = "xyes"]) +if test "x$enable_singlelib" = "xyes"; then + AC_DEFINE(ENABLE_SINGLELIB, 1, [Single library build]) + CLIPPER_LIBS="-L$libdir -lclipper" +else + CLIPPER_LIBS="-L$libdir -lclipper-minimol -lclipper-mmdb -lclipper-cns -lclipper-cif -lclipper-contrib -lclipper-ccp4 -lclipper-phs -lclipper-core" +fi + AC_CLIPPER_OPTIONS # test for function in m @@ -183,10 +202,12 @@ MMDB_CXXFLAGS="$ac_MMDB_CXXFLAGS" MMDB_LIBS=`echo "$ac_MMDB_LDOPTS -lmmdb" | sed s#-I#-L#` AC_MSG_WARN([assuming library $MMDB_LIBS headers $MMDB_CXXFLAGS]) + CLIPPER_MMDB_REQUIRES="mmdb" else MMDB_CXXFLAGS="-I$mmdb_prefix/src -I$mmdb_prefix/include" MMDB_LIBS="-L$mmdb_prefix/src -L$mmdb_prefix/lib -lmmdb" AC_MSG_WARN([assuming library $MMDB_LIBS headers $MMDB_CXXFLAGS]) + CLIPPER_MMDB_REQUIRES="mmdb" fi else test $enable_mmdb = yes && @@ -278,7 +299,14 @@ AM_CONDITIONAL(DEBUG, test "$ac_cv_enable_debug" = yes) AM_CONDITIONAL(AMDEP, test "x$enable_dependency_tracking" != xno) +CLIPPER_REQUIRES="$CLIPPER_MMDB_REQUIRES $CLIPPER_GPP4_REQUIRES" +CLIPPER_CFLAGS="-I$includedir" +AC_SUBST(CLIPPER_REQUIRES) +AC_SUBST(CLIPPER_CFLAGS) +AC_SUBST(CLIPPER_LIBS) + AC_CONFIG_FILES([Makefile + clipper.pc clipper-config clipper/Makefile clipper/ccp4/Makefile