LIBCFS = $(top_builddir)/libcfs/libcfs/libcfs.a
-LIBLUSTREAPI = $(top_builddir)/lustre/utils/liblustreapi.la
+LIBLUSTREAPI = $(top_builddir)/lustre/utils/liblustreapi.a
# Lustre test Makefile
AM_CFLAGS := -fPIC -D_GNU_SOURCE \
EXTRA_DIST = $(noinst_SCRIPTS) $(noinst_DATA) \
$(nobase_noinst_SCRIPTS) $(nobase_noinst_DATA)
-THETESTS = openunlink truncate directio writeme mlink utime
-THETESTS += tchmod fsx test_brw sendfile
-THETESTS += createmany chownmany statmany multifstat createtest
-THETESTS += opendirunlink opendevunlink unlinkmany checkstat
-THETESTS += statone runas openfile rmdirmany
-THETESTS += small_write multiop ll_sparseness_verify
-THETESTS += ll_sparseness_write mrename ll_dirstripe_verify mkdirmany
-THETESTS += openfilleddirunlink rename_many memhog
-THETESTS += mmap_sanity writemany reads flocks_test flock_deadlock
-THETESTS += write_time_limit rwv lgetxattr_size_check checkfiemap
-THETESTS += listxattr_size_check check_fhandle_syscalls badarea_io
-THETESTS += llapi_layout_test orphan_linkea_check llapi_hsm_test
-THETESTS += group_lock_test llapi_fid_test sendfile_grouplock mmap_cat
-THETESTS += swap_lock_test
-
if TESTS
if MPITESTS
SUBDIRS = mpi
endif
+noinst_PROGRAMS = openunlink truncate directio writeme mlink utime
+noinst_PROGRAMS += tchmod fsx test_brw sendfile
+noinst_PROGRAMS += createmany chownmany statmany multifstat createtest
+noinst_PROGRAMS += opendirunlink opendevunlink unlinkmany checkstat
+noinst_PROGRAMS += statone runas openfile rmdirmany
+noinst_PROGRAMS += small_write multiop ll_sparseness_verify
+noinst_PROGRAMS += ll_sparseness_write mrename ll_dirstripe_verify mkdirmany
+noinst_PROGRAMS += openfilleddirunlink rename_many memhog
+noinst_PROGRAMS += mmap_sanity writemany reads flocks_test flock_deadlock
+noinst_PROGRAMS += write_time_limit rwv lgetxattr_size_check checkfiemap
+noinst_PROGRAMS += listxattr_size_check check_fhandle_syscalls badarea_io
+noinst_PROGRAMS += llapi_layout_test orphan_linkea_check llapi_hsm_test
+noinst_PROGRAMS += group_lock_test llapi_fid_test sendfile_grouplock mmap_cat
+noinst_PROGRAMS += swap_lock_test
bin_PROGRAMS = mcreate munlink
testdir = $(libdir)/lustre/tests
-test_SCRIPTS = $(noinst_SCRIPTS)
-test_PROGRAMS = $(THETESTS)
+test_SCRIPTS = $(noinst_SCRIPTS) $(noinst_PROGRAMS)
nobase_test_SCRIPTS = $(nobase_noinst_SCRIPTS)
test_DATA = $(noinst_DATA)
nobase_test_DATA = $(nobase_noinst_DATA)
-else # !TESTS
-noinst_PROGRAMS = $(THETESTS)
endif # TESTS
mmap_sanity_SOURCES= mmap_sanity.c
-D_LARGEFILE64_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DLUSTRE_UTILS=1
LIBCFS := $(top_builddir)/libcfs/libcfs/libcfs.a
-LIBLUSTREAPI = $(top_builddir)/lustre/utils/liblustreapi.la
CC = @MPICC_WRAPPER@
-THETESTS = parallel_grouplock write_append_truncate createmany_mpi \
- mdsrate write_disjoint cascading_rw
-
-if TESTS
-if MPITESTS
+noinst_PROGRAMS = parallel_grouplock write_append_truncate createmany_mpi
+noinst_PROGRAMS += mdsrate write_disjoint cascading_rw
testdir = $(libdir)/lustre/tests
-test_PROGRAMS = $(THETESTS)
-else
-noinst_PROGRAMS = $(THETESTS)
-endif
-else
-noinst_PROGRAMS = $(THETESTS)
-endif
+test_SCRIPTS = $(noinst_PROGRAMS)
+write_append_truncate_SOURCES=write_append_truncate.c
+write_disjoint_SOURCES=write_disjoint.c
createmany_mpi_SOURCES=createmany-mpi.c
parallel_grouplock_SOURCES=parallel_grouplock.c lp_utils.c lp_utils.h
cascading_rw_SOURCES=cascading_rw.c lp_utils.c lp_utils.h
-cascading_rw_LDADD=$(LIBLUSTREAPI) $(LIBCFS)
+cascading_rw_LDADD=-L$(top_builddir)/lustre/utils -llustreapi $(LIBCFS)
mdsrate_SOURCES=mdsrate.c
-mdsrate_LDADD=$(LIBLUSTREAPI) $(LIBCFS)
+mdsrate_LDADD=-L$(top_builddir)/lustre/utils -llustreapi $(LIBCFS)
sbin_PROGRAMS += lhsmtool_posix
endif
-lib_LIBRARIES =
-noinst_LIBRARIES =
-
+pkglib_LTLIBRARIES =
+lib_LIBRARIES = liblustreapi.a
if LDISKFS_ENABLED
-libiam_a_SOURCES = libiam.c
lib_LIBRARIES += libiam.a
endif
-
-pkglib_LTLIBRARIES =
-lib_LTLIBRARIES = liblustreapi.la
+noinst_LIBRARIES = liblustreapitmp.a
endif # UTILS
lctl_SOURCES = lustre_lfsck.c obd.c lustre_cfg.c lctl.c obdctl.h lsnapshot.c
-lctl_LDADD := liblustreapi.la $(LIBPTLCTL) $(LIBREADLINE) $(PTHREAD_LIBS)
-lctl_DEPENDENCIES := $(LIBPTLCTL) liblustreapi.la
+lctl_LDADD := liblustreapi.a $(LIBPTLCTL) $(LIBREADLINE) $(PTHREAD_LIBS)
+lctl_DEPENDENCIES := $(LIBPTLCTL) liblustreapi.a
lfs_SOURCES = lfs.c
-lfs_LDADD := liblustreapi.la $(LIBPTLCTL) $(LIBREADLINE)
-lfs_DEPENDENCIES := $(LIBPTLCTL) liblustreapi.la
+lfs_LDADD := liblustreapi.a $(LIBPTLCTL) $(LIBREADLINE)
+lfs_DEPENDENCIES := $(LIBPTLCTL) liblustreapi.a
lustre_rsync_SOURCES = lustre_rsync.c obd.c lustre_cfg.c lustre_rsync.h
-lustre_rsync_LDADD := liblustreapi.la $(LIBPTLCTL) $(LIBREADLINE) $(PTHREAD_LIBS)
-lustre_rsync_DEPENDENCIES := $(LIBPTLCTL) liblustreapi.la
+lustre_rsync_LDADD := liblustreapi.a $(LIBPTLCTL) $(LIBREADLINE) $(PTHREAD_LIBS)
+lustre_rsync_DEPENDENCIES := $(LIBPTLCTL) liblustreapi.a
lshowmount_SOURCES = lshowmount.c nidlist.c nidlist.h
-lshowmount_LDADD := liblustreapi.la
+lshowmount_LDADD := liblustreapi.a
if EXT2FS_DEVEL
EXT2FSLIB = -lext2fs
llverdev_LDADD := $(EXT2FSLIB) $(BLKIDLIB)
-liblustreapi_la_SOURCES = liblustreapi.c liblustreapi_hsm.c \
- liblustreapi_nodemap.c lustreapi_internal.h \
- liblustreapi_json.c liblustreapi_layout.c \
- liblustreapi_lease.c liblustreapi_util.c \
- liblustreapi_kernelconn.c liblustreapi_param.c \
- $(top_builddir)/libcfs/libcfs/util/string.c \
- $(top_builddir)/libcfs/libcfs/util/param.c \
- liblustreapi_ladvise.c liblustreapi_chlg.c
-liblustreapi_la_LDFLAGS = -version-info 1:0:0
-
+liblustreapitmp_a_SOURCES = liblustreapi.c liblustreapi_hsm.c \
+ liblustreapi_nodemap.c lustreapi_internal.h \
+ liblustreapi_json.c liblustreapi_layout.c \
+ liblustreapi_lease.c liblustreapi_util.c \
+ liblustreapi_kernelconn.c liblustreapi_param.c \
+ $(top_builddir)/libcfs/libcfs/util/string.c \
+ $(top_builddir)/libcfs/libcfs/util/param.c \
+ liblustreapi_ladvise.c liblustreapi_chlg.c
if UTILS
-LIB_TARGETS =
+LIB_TARGETS = liblustreapi.so
if PLUGINS
if LDISKFS_ENABLED
LIB_TARGETS += mount_osd_ldiskfs.so
endif
endif
+# build static and shared lib lustreapi
+liblustreapi.a : liblustreapitmp.a
+ rm -f liblustreapi.a liblustreapi.so
+ $(CC) $(LDFLAGS) -shared -o liblustreapi.so `$(AR) -t liblustreapitmp.a`
+ mv liblustreapitmp.a liblustreapi.a
+
install-exec-hook:
@$(NORMAL_INSTALL)
$(mkinstalldirs) $(DESTDIR)$(libdir)
for p in $(LIB_TARGETS); do \
if test -f $$p; then \
f="`echo $$p | sed -e 's|^.*/||'`"; \
- echo " $(INSTALL_DATA) $$p $(DESTDIR)$(libdir)/lustre/$$f"; \
- $(INSTALL_DATA) $$p $(DESTDIR)$(libdir)/lustre/$$f; \
+ if `echo -n $$p | grep -q mount`; then \
+ echo " $(INSTALL_DATA) $$p $(DESTDIR)$(libdir)/lustre/$$f"; \
+ $(INSTALL_DATA) $$p $(DESTDIR)$(libdir)/lustre/$$f; \
+ else \
+ echo " $(INSTALL_DATA) $$p $(DESTDIR)$(libdir)/$$f"; \
+ $(INSTALL_DATA) $$p $(DESTDIR)$(libdir)/$$f; \
+ fi; \
else :; fi; \
done
endif # UTILS
+if LDISKFS_ENABLED
+libiam_a_SOURCES = libiam.c
+endif
+
llog_reader_SOURCES = llog_reader.c
-llog_reader_LDADD := $(LIBPTLCTL) liblustreapi.la
-llog_reader_DEPENDENCIES := $(LIBPTLCTL) liblustreapi.la
+llog_reader_LDADD := $(LIBPTLCTL) liblustreapi.a
+llog_reader_DEPENDENCIES := $(LIBPTLCTL) liblustreapi.a
lr_reader_SOURCES = lr_reader.c
+lib_LTLIBRARIES =
+
if UTILS
PLUGIN_LIB =
l_getidentity_DEPENDENCIES := $(LIBPTLCTL)
lhsmtool_posix_SOURCES = lhsmtool_posix.c
-lhsmtool_posix_LDADD := liblustreapi.la $(LIBPTLCTL) $(PTHREAD_LIBS)
-lhsmtool_posix_DEPENDENCIES := liblustreapi.la $(LIBPTLCTL)
+lhsmtool_posix_LDADD := liblustreapi.a $(LIBPTLCTL) $(PTHREAD_LIBS)
+lhsmtool_posix_DEPENDENCIES := liblustreapi.a $(LIBPTLCTL)
wirecheck_SOURCES = wirecheck.c
wirecheck_CPPFLAGS := -DCC="\"$(CC)\""