From ee4e7f09b4fa5f3a592d1052f841b690657fc166 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Tue, 26 May 2015 15:17:50 +0200 Subject: jffs2: Move into separate library In case the zlib compression was used, then the librtemscpu.a depended on libz.a. To avoid a GCC patch or complicated link flags move the JFFS2 support into a separate library to use a simple "-ljffs2 -lz" to link the executable. --- cpukit/libfs/Makefile.am | 2 +- cpukit/libfs/preinstall.am | 17 +++++++++++++++++ cpukit/wrapup/Makefile.am | 1 - testsuites/fstests/jffs2_fserror/Makefile.am | 3 ++- testsuites/fstests/jffs2_fslink/Makefile.am | 3 ++- testsuites/fstests/jffs2_fspatheval/Makefile.am | 3 ++- testsuites/fstests/jffs2_fspermission/Makefile.am | 3 ++- testsuites/fstests/jffs2_fsrdwr/Makefile.am | 3 ++- testsuites/fstests/jffs2_fsscandir01/Makefile.am | 3 ++- testsuites/fstests/jffs2_fssymlink/Makefile.am | 3 ++- testsuites/fstests/jffs2_fstime/Makefile.am | 3 ++- 11 files changed, 34 insertions(+), 10 deletions(-) diff --git a/cpukit/libfs/Makefile.am b/cpukit/libfs/Makefile.am index 531e080cb7..678234b52e 100644 --- a/cpukit/libfs/Makefile.am +++ b/cpukit/libfs/Makefile.am @@ -109,7 +109,7 @@ librfs_a_SOURCES = \ src/rfs/rtems-rfs-trace.c # JFFS2 -noinst_LIBRARIES += libjffs2.a +project_lib_LIBRARIES = libjffs2.a libjffs2_a_SOURCES = libjffs2_a_SOURCES += src/jffs2/src/build.c libjffs2_a_SOURCES += src/jffs2/src/compat-crc32.c diff --git a/cpukit/libfs/preinstall.am b/cpukit/libfs/preinstall.am index dba6cc4d81..2aca1ef32f 100644 --- a/cpukit/libfs/preinstall.am +++ b/cpukit/libfs/preinstall.am @@ -5,3 +5,20 @@ $(srcdir)/preinstall.am: Makefile.am $(AMPOLISH3) $(srcdir)/Makefile.am > $(srcdir)/preinstall.am endif +PREINSTALL_DIRS = +DISTCLEANFILES = $(PREINSTALL_DIRS) + +all-local: $(TMPINSTALL_FILES) + +TMPINSTALL_FILES = +CLEANFILES = $(TMPINSTALL_FILES) + +$(PROJECT_LIB)/$(dirstamp): + @$(MKDIR_P) $(PROJECT_LIB) + @: > $(PROJECT_LIB)/$(dirstamp) +PREINSTALL_DIRS += $(PROJECT_LIB)/$(dirstamp) + +$(PROJECT_LIB)/libjffs2.a: libjffs2.a $(PROJECT_LIB)/$(dirstamp) + $(INSTALL_DATA) $< $(PROJECT_LIB)/libjffs2.a +TMPINSTALL_FILES += $(PROJECT_LIB)/libjffs2.a + diff --git a/cpukit/wrapup/Makefile.am b/cpukit/wrapup/Makefile.am index 6fafad5bc1..53861df927 100644 --- a/cpukit/wrapup/Makefile.am +++ b/cpukit/wrapup/Makefile.am @@ -29,7 +29,6 @@ TMP_LIBS += ../libfs/libdefaultfs.a TMP_LIBS += ../libfs/libdevfs.a TMP_LIBS += ../libfs/libimfs.a TMP_LIBS += ../libfs/librfs.a -TMP_LIBS += ../libfs/libjffs2.a TMP_LIBS += ../libmisc/libmonitor.a TMP_LIBS += ../libmisc/libuntar.a diff --git a/testsuites/fstests/jffs2_fserror/Makefile.am b/testsuites/fstests/jffs2_fserror/Makefile.am index 6b99c79b97..fbf2d772ca 100644 --- a/testsuites/fstests/jffs2_fserror/Makefile.am +++ b/testsuites/fstests/jffs2_fserror/Makefile.am @@ -7,6 +7,7 @@ jffs2_fserror_SOURCES += ../support/fstest.h jffs2_fserror_SOURCES += ../../psxtests/include/pmacros.h jffs2_fserror_SOURCES += ../jffs2_support/fs_support.c jffs2_fserror_SOURCES += ../jffs2_support/fs_config.h +jffs2_fserror_LDADD = -ljffs2 dist_rtems_tests_DATA = jffs2_fserror.scn #dist_rtems_tests_DATA += jffs2_fserror.doc @@ -21,7 +22,7 @@ AM_CPPFLAGS += -I$(top_srcdir)/jffs2_support AM_CPPFLAGS += -I$(top_srcdir)/../support/include AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include -LINK_OBJS = $(jffs2_fserror_OBJECTS) +LINK_OBJS = $(jffs2_fserror_OBJECTS) $(jffs2_fserror_LDADD) LINK_LIBS = $(jffs2_fserror_LDLIBS) jffs2_fserror$(EXEEXT): $(jffs2_fserror_OBJECTS) $(jffs2_fserror_DEPENDENCIES) diff --git a/testsuites/fstests/jffs2_fslink/Makefile.am b/testsuites/fstests/jffs2_fslink/Makefile.am index af11dd35fd..9daa2ac38c 100644 --- a/testsuites/fstests/jffs2_fslink/Makefile.am +++ b/testsuites/fstests/jffs2_fslink/Makefile.am @@ -7,6 +7,7 @@ jffs2_fslink_SOURCES += ../support/fstest.h jffs2_fslink_SOURCES += ../../psxtests/include/pmacros.h jffs2_fslink_SOURCES += ../jffs2_support/fs_support.c jffs2_fslink_SOURCES += ../jffs2_support/fs_config.h +jffs2_fslink_LDADD = -ljffs2 dist_rtems_tests_DATA = jffs2_fslink.scn #dist_rtems_tests_DATA += jffs2_fslink.doc @@ -21,7 +22,7 @@ AM_CPPFLAGS += -I$(top_srcdir)/jffs2_support AM_CPPFLAGS += -I$(top_srcdir)/../support/include AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include -LINK_OBJS = $(jffs2_fslink_OBJECTS) +LINK_OBJS = $(jffs2_fslink_OBJECTS) $(jffs2_fslink_LDADD) LINK_LIBS = $(jffs2_fslink_LDLIBS) jffs2_fslink$(EXEEXT): $(jffs2_fslink_OBJECTS) $(jffs2_fslink_DEPENDENCIES) diff --git a/testsuites/fstests/jffs2_fspatheval/Makefile.am b/testsuites/fstests/jffs2_fspatheval/Makefile.am index 810f208479..ae5e0f76a6 100644 --- a/testsuites/fstests/jffs2_fspatheval/Makefile.am +++ b/testsuites/fstests/jffs2_fspatheval/Makefile.am @@ -7,6 +7,7 @@ jffs2_fspatheval_SOURCES += ../support/fstest.h jffs2_fspatheval_SOURCES += ../../psxtests/include/pmacros.h jffs2_fspatheval_SOURCES += ../jffs2_support/fs_support.c jffs2_fspatheval_SOURCES += ../jffs2_support/fs_config.h +jffs2_fspatheval_LDADD = -ljffs2 dist_rtems_tests_DATA = jffs2_fspatheval.scn #dist_rtems_tests_DATA += jffs2_fspatheval.doc @@ -21,7 +22,7 @@ AM_CPPFLAGS += -I$(top_srcdir)/jffs2_support AM_CPPFLAGS += -I$(top_srcdir)/../support/include AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include -LINK_OBJS = $(jffs2_fspatheval_OBJECTS) +LINK_OBJS = $(jffs2_fspatheval_OBJECTS) $(jffs2_fspatheval_LDADD) LINK_LIBS = $(jffs2_fspatheval_LDLIBS) jffs2_fspatheval$(EXEEXT): $(jffs2_fspatheval_OBJECTS) $(jffs2_fspatheval_DEPENDENCIES) diff --git a/testsuites/fstests/jffs2_fspermission/Makefile.am b/testsuites/fstests/jffs2_fspermission/Makefile.am index c5a65709b7..3ac1617e74 100644 --- a/testsuites/fstests/jffs2_fspermission/Makefile.am +++ b/testsuites/fstests/jffs2_fspermission/Makefile.am @@ -7,6 +7,7 @@ jffs2_fspermission_SOURCES += ../support/fstest.h jffs2_fspermission_SOURCES += ../../psxtests/include/pmacros.h jffs2_fspermission_SOURCES += ../jffs2_support/fs_support.c jffs2_fspermission_SOURCES += ../jffs2_support/fs_config.h +jffs2_fspermission_LDADD = -ljffs2 dist_rtems_tests_DATA = jffs2_fspermission.scn #dist_rtems_tests_DATA += jffs2_fspermission.doc @@ -21,7 +22,7 @@ AM_CPPFLAGS += -I$(top_srcdir)/jffs2_support AM_CPPFLAGS += -I$(top_srcdir)/../support/include AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include -LINK_OBJS = $(jffs2_fspermission_OBJECTS) +LINK_OBJS = $(jffs2_fspermission_OBJECTS) $(jffs2_fspermission_LDADD) LINK_LIBS = $(jffs2_fspermission_LDLIBS) jffs2_fspermission$(EXEEXT): $(jffs2_fspermission_OBJECTS) $(jffs2_fspermission_DEPENDENCIES) diff --git a/testsuites/fstests/jffs2_fsrdwr/Makefile.am b/testsuites/fstests/jffs2_fsrdwr/Makefile.am index 2ed04b84f9..2eca660f97 100644 --- a/testsuites/fstests/jffs2_fsrdwr/Makefile.am +++ b/testsuites/fstests/jffs2_fsrdwr/Makefile.am @@ -7,6 +7,7 @@ jffs2_fsrdwr_SOURCES += ../support/fstest.h jffs2_fsrdwr_SOURCES += ../../psxtests/include/pmacros.h jffs2_fsrdwr_SOURCES += ../jffs2_support/fs_support.c jffs2_fsrdwr_SOURCES += ../jffs2_support/fs_config.h +jffs2_fsrdwr_LDADD = -ljffs2 dist_rtems_tests_DATA = jffs2_fsrdwr.scn #dist_rtems_tests_DATA += jffs2_fsrdwr.doc @@ -21,7 +22,7 @@ AM_CPPFLAGS += -I$(top_srcdir)/jffs2_support AM_CPPFLAGS += -I$(top_srcdir)/../support/include AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include -LINK_OBJS = $(jffs2_fsrdwr_OBJECTS) +LINK_OBJS = $(jffs2_fsrdwr_OBJECTS) $(jffs2_fsrdwr_LDADD) LINK_LIBS = $(jffs2_fsrdwr_LDLIBS) jffs2_fsrdwr$(EXEEXT): $(jffs2_fsrdwr_OBJECTS) $(jffs2_fsrdwr_DEPENDENCIES) diff --git a/testsuites/fstests/jffs2_fsscandir01/Makefile.am b/testsuites/fstests/jffs2_fsscandir01/Makefile.am index 8fad0b354e..9f64e3fb10 100644 --- a/testsuites/fstests/jffs2_fsscandir01/Makefile.am +++ b/testsuites/fstests/jffs2_fsscandir01/Makefile.am @@ -7,6 +7,7 @@ jffs2_fsscandir01_SOURCES += ../support/fstest.h jffs2_fsscandir01_SOURCES += ../../psxtests/include/pmacros.h jffs2_fsscandir01_SOURCES += ../jffs2_support/fs_support.c jffs2_fsscandir01_SOURCES += ../jffs2_support/fs_config.h +jffs2_fsscandir01_LDADD = -ljffs2 dist_rtems_tests_DATA = jffs2_fsscandir01.scn #dist_rtems_tests_DATA += jffs2_fsscandir01.doc @@ -21,7 +22,7 @@ AM_CPPFLAGS += -I$(top_srcdir)/jffs2_support AM_CPPFLAGS += -I$(top_srcdir)/../support/include AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include -LINK_OBJS = $(jffs2_fsscandir01_OBJECTS) +LINK_OBJS = $(jffs2_fsscandir01_OBJECTS) $(jffs2_fsscandir01_LDADD) LINK_LIBS = $(jffs2_fsscandir01_LDLIBS) jffs2_fsscandir01$(EXEEXT): $(jffs2_fsscandir01_OBJECTS) $(jffs2_fsscandir01_DEPENDENCIES) diff --git a/testsuites/fstests/jffs2_fssymlink/Makefile.am b/testsuites/fstests/jffs2_fssymlink/Makefile.am index 79b3ea8c0a..6dbb63922a 100644 --- a/testsuites/fstests/jffs2_fssymlink/Makefile.am +++ b/testsuites/fstests/jffs2_fssymlink/Makefile.am @@ -7,6 +7,7 @@ jffs2_fssymlink_SOURCES += ../support/fstest.h jffs2_fssymlink_SOURCES += ../../psxtests/include/pmacros.h jffs2_fssymlink_SOURCES += ../jffs2_support/fs_support.c jffs2_fssymlink_SOURCES += ../jffs2_support/fs_config.h +jffs2_fssymlink_LDADD = -ljffs2 dist_rtems_tests_DATA = jffs2_fssymlink.scn #dist_rtems_tests_DATA += jffs2_fssymlink.doc @@ -21,7 +22,7 @@ AM_CPPFLAGS += -I$(top_srcdir)/jffs2_support AM_CPPFLAGS += -I$(top_srcdir)/../support/include AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include -LINK_OBJS = $(jffs2_fssymlink_OBJECTS) +LINK_OBJS = $(jffs2_fssymlink_OBJECTS) $(jffs2_fssymlink_LDADD) LINK_LIBS = $(jffs2_fssymlink_LDLIBS) jffs2_fssymlink$(EXEEXT): $(jffs2_fssymlink_OBJECTS) $(jffs2_fssymlink_DEPENDENCIES) diff --git a/testsuites/fstests/jffs2_fstime/Makefile.am b/testsuites/fstests/jffs2_fstime/Makefile.am index 5beba8124f..a65dc23a00 100644 --- a/testsuites/fstests/jffs2_fstime/Makefile.am +++ b/testsuites/fstests/jffs2_fstime/Makefile.am @@ -7,6 +7,7 @@ jffs2_fstime_SOURCES += ../support/fstest.h jffs2_fstime_SOURCES += ../../psxtests/include/pmacros.h jffs2_fstime_SOURCES += ../jffs2_support/fs_support.c jffs2_fstime_SOURCES += ../jffs2_support/fs_config.h +jffs2_fstime_LDADD = -ljffs2 dist_rtems_tests_DATA = jffs2_fstime.scn #dist_rtems_tests_DATA += jffs2_fstime.doc @@ -21,7 +22,7 @@ AM_CPPFLAGS += -I$(top_srcdir)/jffs2_support AM_CPPFLAGS += -I$(top_srcdir)/../support/include AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include -LINK_OBJS = $(jffs2_fstime_OBJECTS) +LINK_OBJS = $(jffs2_fstime_OBJECTS) $(jffs2_fstime_LDADD) LINK_LIBS = $(jffs2_fstime_LDLIBS) jffs2_fstime$(EXEEXT): $(jffs2_fstime_OBJECTS) $(jffs2_fstime_DEPENDENCIES) -- cgit v1.2.3