diff --git a/plugins/Makefile.am b/plugins/Makefile.am index 777495ff..bed4bec6 100644 --- a/plugins/Makefile.am +++ b/plugins/Makefile.am @@ -5,7 +5,7 @@ include $(top_srcdir)/lib_flags.am AM_LDFLAGS += -module -avoid-version -shared -export-dynamic \ - -rpath ${abs_builddir} ${NOUNDEFINED} + ${NOUNDEFINED} # Create an alternate directory if not installing or for noinst installs. ALTPLUGINDIR = ${abs_top_builddir}/plugins/plugindir @@ -19,17 +19,6 @@ endif plugin_LTLIBRARIES = -# Apparently one cannot have plugin_LTLIBRARIES and also noinst_LTLIBRARIES. -# So create a tmp location for "noinst" shared libraries. -tmpdir = ${ALTPLUGINDIR} - -tmp_LTLIBRARIES = - -# This linker flag specifies libtool version info. -# See http://www.gnu.org/software/libtool/manual/libtool.html#Libtool-versioning -# for information regarding incrementing `-version-info`. -plugin_version_info = -version-info 0:0:0 - if ISMINGW LDADD = ${top_builddir}/liblib/libnetcdf.la endif @@ -55,15 +44,10 @@ lib__nch5shuffle_la_SOURCES = H5Zshuffle.c lib__nch5fletcher32_la_SOURCES = H5Zfletcher32.c H5checksum.c lib__nch5deflate_la_SOURCES = H5Zdeflate.c -lib__nch5shuffle_la_LDFLAGS = ${plugin_version_info} -lib__nch5deflate_la_LDFLAGS = ${plugin_version_info} -lib__nch5fletcher32_la_LDFLAGS = ${plugin_version_info} - # Need our version of szip if libsz available and we are not using HDF5 if HAVE_SZ plugin_LTLIBRARIES += lib__nch5szip.la lib__nch5szip_la_SOURCES = H5Zszip.c H5Zszip.h -lib__nch5szip_la_LDFLAGS = ${plugin_version_info} endif endif # ENABLE_NCZARR_FILTERS @@ -72,20 +56,20 @@ if ENABLE_PLUGINS # The NCZarr codec libraries lib__nczstdfilters_la_SOURCES = NCZstdfilters.c +lib__nczstdfilters_la_LIBADD = ${top_builddir}/liblib/libnetcdf.la lib__nczhdf5filters_la_SOURCES = NCZhdf5filters.c +lib__nczhdf5filters_la_LIBADD = ${top_builddir}/liblib/libnetcdf.la plugin_LTLIBRARIES += lib__nczhdf5filters.la plugin_LTLIBRARIES += lib__nczstdfilters.la if HAVE_BLOSC lib__nch5blosc_la_SOURCES = H5Zblosc.c H5Zblosc.h -lib__nch5blosc_la_LDFLAGS = ${plugin_version_info} plugin_LTLIBRARIES += lib__nch5blosc.la endif if HAVE_ZSTD lib__nch5zstd_la_SOURCES = H5Zzstd.c H5Zzstd.h -lib__nch5zstd_la_LDFLAGS = ${plugin_version_info} plugin_LTLIBRARIES += lib__nch5zstd.la endif @@ -95,20 +79,22 @@ endif #ENABLE_PLUGINS # Need two distinct instances lib__nch5noop_la_SOURCES = H5Znoop.c H5Zutil.c h5noop.h lib__nch5noop1_la_SOURCES = H5Znoop1.c H5Zutil.c h5noop.h -lib__nch5noop_la_LDFLAGS = ${plugin_version_info} -lib__nch5noop1_la_LDFLAGS = ${plugin_version_info} # The misc filter is to allow testing of filter arguments lib__nch5misc_la_SOURCES = H5Zmisc.c H5Zutil.c h5misc.h -lib__nch5misc_la_LDFLAGS = ${plugin_version_info} lib__nczmisc_la_SOURCES = NCZmisc.c -lib__nczmisc_la_LDFLAGS = ${plugin_version_info} # Provide a filter to test missing filter lib__nch5unknown_la_SOURCES = H5Zunknown.c -lib__nch5unknown_la_LDFLAGS = ${plugin_version_info} -tmp_LTLIBRARIES += lib__nch5noop.la lib__nch5noop1.la lib__nch5misc.la lib__nczmisc.la lib__nch5unknown.la +# These libraries are needed only for testing, so we will remove them from the install location +# via install-data-hook below. This seems to be the simplest method to get libtool to build +# a local shared library. +CHECKLIBS = lib__nch5noop.la lib__nch5noop1.la lib__nch5misc.la lib__nczmisc.la lib__nch5unknown.la +plugin_LTLIBRARIES += ${CHECKLIBS} + +install-data-hook: + cd $(DESTDIR)$(plugindir) && rm -f $(CHECKLIBS) $(CHECKLIBS:.la=.so) # Bzip2 is used to test more complex filters lib__nch5bzip2_la_SOURCES = H5Zbzip2.c h5bzip2.h @@ -117,7 +103,6 @@ EXTRA_DIST += ${BZIP2SRC} BZIP2_LICENSE if HAVE_LOCAL_BZ2 lib__nch5bzip2_la_SOURCES += ${BZIP2SRC} endif -lib__nch5bzip2_la_LDFLAGS = ${plugin_version_info} plugin_LTLIBRARIES += lib__nch5bzip2.la endif #ENABLE_FILTER_TESTING