diff --git a/ChangeLog b/ChangeLog index fcceb54f..2dbaff80 100644 --- a/ChangeLog +++ b/ChangeLog @@ -17,6 +17,9 @@ NEW 2014-12-18 first implementation of a GLOBAL block which allows to shorten parameters (t0, data, fit) has been encapsulated into its own functions. +NEW 2015-02-04 Integration of libBNMR for fitting beta-NMR relaxation data + into automake of musrfit. + changes since 0.12.0 =================================== NEW 2014-12-04 Fourier: added the unit 'Tesla' needed e.g. for HAL-9500 diff --git a/configure.ac b/configure.ac index 3f0a04f6..0c219f42 100644 --- a/configure.ac +++ b/configure.ac @@ -733,6 +733,12 @@ dnl ----------------------------------------------- AC_ARG_ENABLE([ASlibs], [AS_HELP_STRING([--enable-ASlibs],[build optional AS plug-ins [default=no]])],[BUILD_AS_LIBS=1], [BUILD_AS_LIBS=0]) +dnl ----------------------------------------------- +dnl Ask user if BNMRlibs should be built +dnl ----------------------------------------------- + +AC_ARG_ENABLE([BNMRlibs], [AS_HELP_STRING([--enable-BNMRlibs],[build optional BNMR plug-ins [default=no]])],[BUILD_BNMR_LIBS=1], [BUILD_BNMR_LIBS=0]) + dnl ----------------------------------------------- dnl Set some paths and flags for PMusr, MusrRoot, TLemRunHeader, Class_MuSR_PSI, mud, NeXus (if enabled), etc. dnl ----------------------------------------------- @@ -780,6 +786,14 @@ if test "${PNEXUS_ENABLED}" = "1"; then AC_SUBST(PNEXUS_CXXFLAGS) fi +if test "${BUILD_BNMR_LIBS}" = "1"; then + BNMRLIBS_SRCDIR="${SRCDIR}/external/libBNMR" + BNMRLIBS_LIBS="${BNMRLIBS_SRCDIR}/libBNMR.la" + BNMRLIBS_CFLAGS="-I${BNMRLIBS_SRCDIR}" + AC_SUBST(BNMRLIBS_LIBS) + AC_SUBST(BNMRLIBS_CFLAGS) +fi + if test "${BUILD_BMW_LIBS}" = "1"; then BMWTOOLS_SRCDIR="${SRCDIR}/external/BMWtools" BMWTOOLS_LIBS="${BMWTOOLS_SRCDIR}/libBMWtools.la" @@ -1111,6 +1125,7 @@ AM_CONDITIONAL([PNEXUS_ENABLED], [test "${PNEXUS_ENABLED}" = "1"]) AM_CONDITIONAL([BUILD_CUBALIB], [test "${BUILD_CUBA}" = "1"]) AM_CONDITIONAL([BUILD_BMWLIBS], [test "${BUILD_BMW_LIBS}" = "1"]) AM_CONDITIONAL([BUILD_ASLIBS], [test "${BUILD_AS_LIBS}" = "1"]) +AM_CONDITIONAL([BUILD_BNMRLIBS], [test "${BUILD_BNMR_LIBS}" = "1"]) AC_CONFIG_FILES([Makefile \ src/Makefile \ @@ -1151,6 +1166,7 @@ AC_CONFIG_FILES([Makefile \ src/external/libSpinValve/classes/Makefile \ src/external/libPhotoMeissner/Makefile \ src/external/libPhotoMeissner/classes/Makefile \ + src/external/libBNMR/Makefile \ src/musredit/musredit_startup.xml \ src/musrgui/musrgui_startup.xml]) @@ -1270,6 +1286,11 @@ if test "${BUILD_AS_LIBS}" -eq 1; then else echo " ASlibs: no" fi +if test "${BUILD_BNMR_LIBS}" -eq 1; then + echo " BNMRlibs: yes" +else + echo " BNMRlibs: no" +fi if test "${BUILD_BMW_LIBS}" -eq 1; then echo " BMWlibs: yes" else diff --git a/src/external/Makefile.am b/src/external/Makefile.am index 360579d1..755d9210 100644 --- a/src/external/Makefile.am +++ b/src/external/Makefile.am @@ -19,4 +19,8 @@ if BUILD_BMWLIBS libCalcMeanFieldsLEM endif -SUBDIRS = $(ASDIRS) $(CUBADIRS) $(BMWDIRS) +if BUILD_BNMRLIBS + BNMRDIRS = libBNMR +endif + +SUBDIRS = $(ASDIRS) $(CUBADIRS) $(BMWDIRS) $(BNMRDIRS) diff --git a/src/external/libBNMR/Makefile.am b/src/external/libBNMR/Makefile.am new file mode 100644 index 00000000..8023d07b --- /dev/null +++ b/src/external/libBNMR/Makefile.am @@ -0,0 +1,52 @@ +## Process this file with automake to create Makefile.in + +h_sources = \ + TBNMR.h + +h_linkdef = \ + TBNMRLinkDef.h + +dict_h_sources = \ + TBNMRDict.h + +cpp_sources = \ + TBNMR.cpp + +dict_cpp_sources = \ + TBNMRDict.cpp + +include_HEADERS = $(h_sources) +noinst_HEADERS = $(h_linkdef) $(dict_h_sources) + +AM_CPPFLAGS = -I$(top_srcdir)/src/include $(PMUSR_CFLAGS) -I$(ROOTINCDIR) +AM_CXXFLAGS = $(LOCAL_LIB_CXXFLAGS) + +BUILT_SOURCES = $(dict_cpp_sources) $(dict_h_sources) +AM_LDFLAGS = $(LOCAL_LIB_LDFLAGS) -L@ROOTLIBDIR@ +CLEANFILES = *Dict.cpp *Dict.h *~ core + +%Dict.cpp %Dict.h: %.h %LinkDef.h + @ROOTCINT@ -v -f $*Dict.cpp -c -p $(AM_CPPFLAGS) $^ + +lib_LTLIBRARIES = libBNMR.la + +libBNMR_la_SOURCES = $(h_sources) $(cpp_sources) $(dict_h_sources) $(dict_cpp_sources) +libBNMR_la_LIBADD = $(ROOT_LIBS) +libBNMR_la_LDFLAGS = -version-info $(PLUGIN_LIBRARY_VERSION) -release $(PLUGIN_RELEASE) $(AM_LDFLAGS) + +## However, create some symbolic links to the shared library +## in order to unify the function call on different operating systems + +if IS_DARWIN +install-exec-hook: + $(LN_S) -f $(libdir)/libBNMR.dylib $(libdir)/libBNMR.so +uninstall-hook: + rm -f $(libdir)/libBNMR.so +endif + +if IS_CYGWIN +install-exec-hook: + $(LN_S) -f $(bindir)/cygBNMR-$(PLUGIN_MAJOR_VERSION)-$(PLUGIN_MINOR_VERSION)-$(PLUGIN_MAJOR_VERSION).dll $(libdir)/libBNMR.so +uninstall-hook: + rm -f $(libdir)/libBNMR.so +endif