OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [newlib-1.10.0/] [newlib/] [Makefile.am] - Rev 1777

Go to most recent revision | Compare with Previous | Blame | View Log

## Process this file with automake to generate Makefile.in

AUTOMAKE_OPTIONS = cygnus

# Multilib support variables.
MULTISRCTOP =
MULTIBUILDTOP =
MULTIDIRS =
MULTISUBDIR =
MULTIDO = true
MULTICLEAN = true

LIBTOOL_VERSION_INFO = 0:0:0

if NEWLIB_HW_FP
MATHDIR = mathfp
else
MATHDIR = math
endif

# Work around what appears to be a GNU make bug handling MAKEFLAGS
# values defined in terms of make variables, as is the case for CC and
# friends when we are called from the top level Makefile.
AM_MAKEFLAGS = \
        "AR_FLAGS=$(AR_FLAGS)" \
        "CC_FOR_BUILD=$(CC_FOR_BUILD)" \
        "CFLAGS=$(CFLAGS)" \
        "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
        "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
        "LDFLAGS=$(LDFLAGS)" \
        "LIBCFLAGS=$(LIBCFLAGS)" \
        "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
        "MAKE=$(MAKE)" \
        "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \
        "PICFLAG=$(PICFLAG)" \
        "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \
        "SHELL=$(SHELL)" \
        "EXPECT=$(EXPECT)" \
        "RUNTEST=$(RUNTEST)" \
        "RUNTESTFLAGS=$(RUNTESTFLAGS)" \
        "exec_prefix=$(exec_prefix)" \
        "infodir=$(infodir)" \
        "libdir=$(libdir)" \
        "prefix=$(prefix)" \
        "tooldir=$(tooldir)" \
        "AR=$(AR)" \
        "AS=$(AS)" \
        "CC=$(CC)" \
        "LD=$(LD)" \
        "LIBCFLAGS=$(LIBCFLAGS)" \
        "NM=$(NM)" \
        "PICFLAG=$(PICFLAG)" \
        "RANLIB=$(RANLIB)" \
        "DESTDIR=$(DESTDIR)"

FLAGS_TO_PASS=$(AM_MAKEFLAGS)

if HAVE_DOC
DOCDIR = doc
endif

SUBDIRS = libc libm $(DOCDIR) .

tooldir = $(exec_prefix)/$(host_alias)
toollibdir = $(tooldir)/lib$(MULTISUBDIR)

AR_FLAGS = rc

if USE_LIBTOOL
toollib_LTLIBRARIES = libm.la libc.la
else
toollib_LIBRARIES = libm.a libc.a
endif

noinst_DATA = stmp-targ-include

toollib_DATA = $(CRT0)


# The functions ldexp, frexp and modf are traditionally supplied in
# both libc.a and libm.a.  We build them in libm.a and copy them over,
# along with some required supporting routines.
MATHOBJS_IN_LIBC = \
        s_isinf.$(oext) sf_isinf.$(oext) \
        s_isnan.$(oext) sf_isnan.$(oext) \
        s_ldexp.$(oext) sf_ldexp.$(oext) \
        s_frexp.$(oext) sf_frexp.$(oext) \
        s_modf.$(oext) \
        sf_modf.$(oext) s_scalbn.$(oext) \
        sf_scalbn.$(oext) \
        s_finite.$(oext) sf_finite.$(oext) \
        s_copysign.$(oext) sf_copysign.$(oext) \
        s_infconst.$(oext)

LIBC_OBJECTLISTS = \
        $(POSIX_OBJECTLIST) \
        $(SIGNAL_OBJECTLIST) \
        $(SYSCALL_OBJECTLIST) \
        $(UNIX_OBJECTLIST) \
        libc/stdlib/objectlist.awk.in \
        libc/time/objectlist.awk.in \
        libc/ctype/objectlist.awk.in \
        libc/string/objectlist.awk.in \
        libc/locale/objectlist.awk.in \
        libc/misc/objectlist.awk.in \
        libc/reent/objectlist.awk.in \
        libc/errno/objectlist.awk.in \
        libc/stdio/objectlist.awk.in \
        $(MACHINE_OBJECTLIST) \
        $(SYS_OBJECTLIST)

LIBM_OBJECTLISTS = \
        libm/$(MATHDIR)/objectlist.awk.in \
        libm/common/objectlist.awk.in \
        $(LIBM_MACHINE_OBJECTLIST)

libm_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/libc/sys/linux/shared.ld `cat libm-libtool-objectlist`

libc_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) -release newlib -no-undefined -Xcompiler -nostdlib -Xlinker --version-script=$(srcdir)/libc/sys/linux/shared.ld `cat libc-libtool-objectlist`

if USE_LIBTOOL
libm_la_SOURCES =
libm_la_DEPENDENCIES = libm-libtool-objectlist

# objects listed later in LIBM_OBJECTLISTS will override those listed earlier
libm-libtool-objectlist: $(LIBM_OBJECTLISTS)
        cat $(LIBM_OBJECTLISTS) | $(AWK) '{ libm[$$1] = $$2 }; END { for (x in libm) printf ("%s\n", libm[x]) }' > $@

libc_la_SOURCES =
libc_la_DEPENDENCIES = libc-libtool-objectlist

# objects listed later in LIBM_OBJECTLISTS and LIBC_OBJECTLISTS will override those listed earlier
libc-libtool-objectlist: $(LIBM_OBJECTLISTS) $(LIBC_OBJECTLISTS)
        cat $(LIBM_OBJECTLISTS) $(LIBC_OBJECTLISTS) |  $(AWK) '{ libc[$$1] = $$2 }; END { for (x in libc) printf ("%s\n", libc[x]) }' > $@

else

libc.a: libc/libc.a libm.a
        rm -rf libc.a libg.a tmp
        mkdir tmp
        cd tmp; \
         $(AR) x ../libm.a $(MATHOBJS_IN_LIBC) ; \
         $(AR) x ../libc/libc.a ; \
         $(AR) $(AR_FLAGS) ../$@ *.o
        $(RANLIB) libc.a
        ln libc.a libg.a >/dev/null 2>/dev/null || cp libc.a libg.a
        rm -rf tmp

libc/libc.a: ; @true

libm.a: libm/libm.a
        rm -f $@
        ln libm/libm.a $@ >/dev/null 2>/dev/null || cp libm/libm.a $@

libm/libm.a: ; @true

endif # USE_LIBTOOL

crt0.o: $(CRT0_DIR)/$(CRT0)
        rm -f $@
        ln $(CRT0_DIR)/$(CRT0) $@ >/dev/null 2>/dev/null \
         || cp $(CRT0_DIR)/$(CRT0) $@

$(CRT0_DIR)/$(CRT0): ; @true

all-recursive: stmp-targ-include

# The targ-include directory just holds the includes files for the
# particular system and machine we have been configured for.  It is
# used while building.
stmp-targ-include: config.status
        -rm -rf targ-include stmp-targ-include
        mkdir targ-include targ-include/sys targ-include/machine
        -for i in $(srcdir)/libc/machine/$(machine_dir)/machine/*.h; do \
            if [ -f $$i ]; then \
              cp $$i targ-include/machine/`basename $$i`; \
            else true; fi ; \
          done
        -for i in $(srcdir)/libc/sys/$(sys_dir)/include/*.h; do \
            if [ -f $$i ]; then \
              cp $$i targ-include/`basename $$i`; \
            else true; fi ; \
          done
        -for i in $(srcdir)/libc/sys/$(sys_dir)/sys/*.h; do \
            if [ -f $$i ]; then \
              cp $$i targ-include/sys/`basename $$i`; \
            else true; fi ; \
          done
        -for i in $(srcdir)/libc/sys/$(sys_dir)/machine/*.h; do \
            if [ -f $$i ]; then \
              cp $$i targ-include/machine/`basename $$i`; \
            else true; fi ; \
          done
        touch $@

CLEANFILES = targ-include stmp-targ-include

install-data-local:     install-toollibLIBRARIES
if USE_LIBTOOL
else
        rm -f $(DESTDIR)$(toollibdir)/libg.a
        ln $(DESTDIR)$(toollibdir)/libc.a $(DESTDIR)$(toollibdir)/libg.a >/dev/null 2>/dev/null || cp $(DESTDIR)$(toollibdir)/libc.a $(DESTDIR)$(toollibdir)/libg.a
endif
        $(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do
        -if [ -z "$(MULTISUBDIR)" ]; then \
          $(mkinstalldirs) $(DESTDIR)$(tooldir)/include; \
          for i in $(srcdir)/libc/include/*.h; do \
           $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/`basename $$i`; \
          done; \
          $(mkinstalldirs) $(DESTDIR)$(tooldir)/include/machine; \
          for i in $(srcdir)/libc/include/machine/*.h; do \
           $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/machine/`basename $$i`; \
          done; \
          for i in $(srcdir)/libc/machine/$(machine_dir)/machine/*.h; do \
            if [ -f $$i ]; then \
             $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/machine/`basename $$i`; \
            else true; fi ; \
          done; \
          $(mkinstalldirs) $(DESTDIR)$(tooldir)/include/sys; \
          for i in $(srcdir)/libc/include/sys/*.h; do \
           $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/sys/`basename $$i`; \
          done; \
          for i in $(srcdir)/libc/sys/$(sys_dir)/sys/*.h; do \
            if [ -f $$i ]; then \
             $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/sys/`basename $$i`; \
            else true; fi ; \
          done ; \
          for i in $(srcdir)/libc/sys/$(sys_dir)/machine/*.h; do \
            if [ -f $$i ]; then \
             $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/machine/`basename $$i`; \
            else true; fi ; \
          done ; \
          for i in $(srcdir)/libc/sys/$(sys_dir)/include/*.h; do \
            if [ -f $$i ]; then \
             $(INSTALL_DATA) $$i $(DESTDIR)$(tooldir)/include/`basename $$i`; \
            else true; fi ; \
          done ; \
        else true; fi

# Force makedoc to be built before building info files.
info-recursive: doc/makedoc
dvi-recursive: doc/makedoc
doc/makedoc:
        cd doc && $(MAKE) all

CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host

# Multilib support.
.PHONY: all-multi mostlyclean-multi clean-multi distclean-multi \
        maintainer-clean-multi

all-recursive: all-multi
mostlyclean-recursive: mostlyclean-multi
clean-recursive: clean-multi
distclean-recursive: distclean-multi
maintainer-clean-recursive: maintainer-clean-multi

all-multi:
        $(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do
mostlyclean-multi:
        $(MULTICLEAN) $(AM_MAKEFLAGS) DO=mostlyclean multi-clean
clean-multi:
        $(MULTICLEAN) $(AM_MAKEFLAGS) DO=clean multi-clean
distclean-multi:
        $(MULTICLEAN) $(AM_MAKEFLAGS) DO=distclean multi-clean
maintainer-clean-multi:
        $(MULTICLEAN) $(AM_MAKEFLAGS) DO=maintainer-clean multi-clean

MAKEOVERRIDES=

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.