diff options
Diffstat (limited to 'c/src/lib/libbsp/unix/posix/Makefile.am')
-rw-r--r-- | c/src/lib/libbsp/unix/posix/Makefile.am | 140 |
1 files changed, 134 insertions, 6 deletions
diff --git a/c/src/lib/libbsp/unix/posix/Makefile.am b/c/src/lib/libbsp/unix/posix/Makefile.am index 36e4fdc7f0..02e3cc36fd 100644 --- a/c/src/lib/libbsp/unix/posix/Makefile.am +++ b/c/src/lib/libbsp/unix/posix/Makefile.am @@ -6,24 +6,152 @@ ACLOCAL_AMFLAGS = -I ../../../../aclocal # wrapup is the one that actually builds and installs the library # from the individual .rel files built in other directories -SUBDIRS = . startup clock console timer shmsupp wrapup tools +SUBDIRS = . tools +include $(top_srcdir)/../../../../automake/compile.am include $(top_srcdir)/../../bsp.am -nodist_include_HEADERS += $(top_srcdir)/../../shared/include/coverhd.h +EXTRA_PROGRAMS = +CLEANFILES = +noinst_DATA = -all-local: $(PREINSTALL_FILES) +nodist_include_HEADERS += ../../shared/include/coverhd.h + +AM_CFLAGS += $(LIBC_DEFINES) + +project_lib_DATA = + +if HAS_CXX +# FIXME: libno-ctor ?? + +# We install the RTEMS constructor as a separate .$(OBJEXT) +# so it can be easily place correctly by the compiler config file. +rtems-ctor$(LIB_VARIANT).$(OBJEXT): startup/rtems-ctor.cc + ${CXXCOMPILE} -o $@ -c $< +project_lib_DATA += rtems-ctor$(LIB_VARIANT).$(OBJEXT) + +no-ctor$(LIB_VARIANT).$(OBJEXT): startup/no-ctor.cc + ${CXXCOMPILE} -o $@ -c $< + +project_lib_DATA += no-ctor$(LIB_VARIANT).$(OBJEXT) +endif + +EXTRA_PROGRAMS += startup.rel +CLEANFILES += startup.rel +startup_rel_SOURCES = startup/bspclean.c ../../shared/bsplibc.c \ + startup/bspstart.c startup/setvec.c +if HAS_CXX +startup_rel_SOURCES += startup/main.c +endif + +startup_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) +startup_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) + +EXTRA_PROGRAMS += startup_g.rel +CLEANFILES += startup_g.rel +startup_g_rel_SOURCES = $(startup_rel_SOURCES) +startup_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) +startup_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) + +noinst_DATA += startup$(LIB_VARIANT).rel + +EXTRA_PROGRAMS += clock.rel +CLEANFILES += clock.rel +clock_rel_SOURCES = clock/clock.c +clock_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) +clock_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) + +EXTRA_PROGRAMS += clock_g.rel +CLEANFILES += clock_g.rel +clock_g_rel_SOURCES = $(clock_rel_SOURCES) +clock_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) +clock_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) + +noinst_DATA += clock$(LIB_VARIANT).rel + +EXTRA_PROGRAMS += console.rel +CLEANFILES += console.rel +console_rel_SOURCES = console/console.c +console_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) +console_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) + +EXTRA_PROGRAMS += console_g.rel +CLEANFILES += console_g.rel +console_g_rel_SOURCES = $(console_rel_SOURCES) +console_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) +console_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) + +noinst_DATA += console$(LIB_VARIANT).rel + +EXTRA_PROGRAMS += timer.rel +CLEANFILES += timer.rel +timer_rel_SOURCES = timer/timer.c +timer_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) +timer_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) + +EXTRA_PROGRAMS += timer_g.rel +CLEANFILES += timer_g.rel +timer_g_rel_SOURCES = $(timer_rel_SOURCES) +timer_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) +timer_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) + +noinst_DATA += timer$(LIB_VARIANT).rel + +if HAS_MP +EXTRA_PROGRAMS += shmsupp.rel +CLEANFILES += shmsupp.rel +shmsupp_rel_SOURCES = shmsupp/addrconv.c shmsupp/getcfg.c \ + shmsupp/cause_intr.c shmsupp/lock.c shmsupp/mpisr.c +shmsupp_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_OPTIMIZE_V) +shmsupp_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) + +EXTRA_PROGRAMS += shmsupp_g.rel +CLEANFILES += shmsupp_g.rel +shmsupp_g_rel_SOURCES = $(shmsupp_rel_SOURCES) +shmsupp_g_rel_CPPFLAGS = $(AM_CPPFLAGS) $(CFLAGS_DEBUG_V) +shmsupp_g_rel_LDFLAGS = $(RTEMS_RELLDFLAGS) + +noinst_DATA += shmsupp$(LIB_VARIANT).rel +endif + +EXTRA_LIBRARIES = libbsp.a +CLEANFILES += libbsp.a +libbsp_a_SOURCES = +libbsp_a_LIBADD = startup$(LIB_VARIANT).rel clock$(LIB_VARIANT).rel \ + console$(LIB_VARIANT).rel timer$(LIB_VARIANT).rel +if HAS_MP +libbsp_a_LIBADD += shmsupp$(LIB_VARIANT).rel +endif +EXTRA_LIBRARIES += libbsp_g.a +CLEANFILES += libbsp_g.a +libbsp_g_a_SOURCES = $(libbsp_a_SOURCES) +libbsp_g_a_LIBADD = $(libbsp_a_LIBADD) + +noinst_DATA += libbsp$(LIB_VARIANT).a + +all-local: $(PREINSTALL_FILES) $(TMPINSTALL_FILES) EXTRA_DIST = times PREINSTALL_DIRS = +TMPINSTALL_FILES = -$(PROJECT_INCLUDE)/coverhd.h: $(top_srcdir)/../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp) +$(PROJECT_INCLUDE)/coverhd.h: ../../shared/include/coverhd.h $(PROJECT_INCLUDE)/$(dirstamp) $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/coverhd.h PREINSTALL_FILES += $(PROJECT_INCLUDE)/coverhd.h -CLEANFILES = $(PREINSTALL_FILES) +if HAS_CXX +$(PROJECT_LIB)/rtems-ctor$(LIB_VARIANT).$(OBJEXT): rtems-ctor$(LIB_VARIANT).$(OBJEXT) $(PROJECT_LIB)/$(dirstamp) + $(INSTALL_DATA) $< $(PROJECT_LIB)/rtems-ctor$(LIB_VARIANT).$(OBJEXT) +TMPINSTALL_FILES += $(PROJECT_LIB)/rtems-ctor$(LIB_VARIANT).$(OBJEXT) + +$(PROJECT_LIB)/no-ctor$(LIB_VARIANT).$(OBJEXT): no-ctor$(LIB_VARIANT).$(OBJEXT) $(PROJECT_LIB)/$(dirstamp) + $(INSTALL_DATA) $< $(PROJECT_LIB)/no-ctor$(LIB_VARIANT).$(OBJEXT) +TMPINSTALL_FILES += $(PROJECT_LIB)/no-ctor$(LIB_VARIANT).$(OBJEXT) +endif + +CLEANFILES += $(PREINSTALL_FILES) DISTCLEANFILES = $(PREINSTALL_DIRS) +CLEANFILES += $(TMPINSTALL_FILES) -include $(top_srcdir)/../../../../automake/subdirs.am include $(top_srcdir)/../../../../automake/local.am |