X-Git-Url: http://wien.tomnetworks.com/gitweb/?p=hs-boehmgc.git;a=blobdiff_plain;f=gc-7.2%2FMakefile.am;fp=gc-7.2%2FMakefile.am;h=3275750b09774f05aae7786b90d979c64e57e1cb;hp=0000000000000000000000000000000000000000;hb=324587ba93dc77f37406d41fd2a20d0e0d94fb1d;hpb=2a4ea609491b225a1ceb06da70396e93916f137a diff --git a/gc-7.2/Makefile.am b/gc-7.2/Makefile.am new file mode 100644 index 0000000..3275750 --- /dev/null +++ b/gc-7.2/Makefile.am @@ -0,0 +1,203 @@ +# Copyright (c) 1999-2001 by Red Hat, Inc. All rights reserved. +# +# THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED +# OR IMPLIED. ANY USE IS AT YOUR OWN RISK. +# +# Permission is hereby granted to use or copy this program +# for any purpose, provided the above notices are retained on all copies. +# Permission to modify the code and to distribute modified code is granted, +# provided the above notices are retained, and a notice that the code was +# modified is included with the above copyright notice. +# +# Original author: Tom Tromey +# Severely truncated by Hans-J. Boehm +# Modified by: Grzegorz Jakacki +# Modified by: Petter Urkedal (2005-04) + +## Process this file with automake to produce Makefile.in. + +## FIXME: `make distcheck' in this directory will not currently work. +## This is most likely to the explicit flags passed to submakes. + +# We currently use the source files directly from libatomic_ops, if we +# use the internal version. This is done since libatomic_ops doesn't +# use libtool, since it has no real use for it. But that seems to make +# it hard to use either the resulting object files or libraries. +# Thus there seems too be no real reason to recursively build in the +# libatomic_ops directory. +# if USE_INTERNAL_LIBATOMICS_OPS +# SUBDIRS = @maybe_libatomic_ops@ +# else +# SUBDIRS = +# endif +SUBDIRS = + +ACLOCAL_AMFLAGS = -I m4 +AM_CPPFLAGS = \ + -I$(top_builddir)/include -I$(top_srcdir)/include \ + $(ATOMIC_OPS_CFLAGS) + +# Initialize variables so that we can declare files locally. +EXTRA_DIST = +lib_LTLIBRARIES = +include_HEADERS = +pkginclude_HEADERS = +dist_noinst_HEADERS = +check_PROGRAMS = +check_LTLIBRARIES = +TESTS = + +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = bdw-gc.pc + +# C Library +# --------- + +lib_LTLIBRARIES += libgc.la +libgc_la_SOURCES = \ + allchblk.c alloc.c blacklst.c checksums.c dbg_mlc.c \ + dyn_load.c finalize.c gc_dlopen.c gcj_mlc.c headers.c \ + malloc.c mallocx.c mark.c mark_rts.c misc.c new_hblk.c \ + obj_map.c os_dep.c pcr_interface.c ptr_chck.c real_malloc.c reclaim.c \ + specific.c stubborn.c typd_mlc.c \ + backgraph.c thread_local_alloc.c + +# C Library: Architecture Dependent +# --------------------------------- + +if PTHREADS +libgc_la_SOURCES += pthread_start.c pthread_support.c pthread_stop_world.c +endif + +if DARWIN_THREADS +libgc_la_SOURCES += darwin_stop_world.c +endif + +if WIN32_THREADS +libgc_la_SOURCES += win32_threads.c +endif + +if USE_INTERNAL_LIBATOMIC_OPS +nodist_libgc_la_SOURCES = libatomic_ops/src/atomic_ops.c +endif + +if NEED_ATOMIC_OPS_ASM +nodist_libgc_la_SOURCES = libatomic_ops/src/atomic_ops_sysdeps.S +endif + +# Include THREADDLLIBS here to ensure that the correct versions of +# linuxthread semaphore functions get linked: +libgc_la_LIBADD = @addobjs@ $(THREADDLLIBS) $(UNWINDLIBS) $(ATOMIC_OPS_LIBS) +libgc_la_DEPENDENCIES = @addobjs@ +libgc_la_LDFLAGS = $(extra_ldflags_libgc) -version-info 1:3:0 -no-undefined + +EXTRA_libgc_la_SOURCES = alpha_mach_dep.S \ + mips_sgi_mach_dep.s mips_ultrix_mach_dep.s \ + rs6000_mach_dep.s sparc_mach_dep.S sparc_netbsd_mach_dep.s \ + sparc_sunos4_mach_dep.s ia64_save_regs_in_stack.s + + +# C++ Interface +# ------------- + +if CPLUSPLUS +lib_LTLIBRARIES += libgccpp.la +pkginclude_HEADERS += include/gc_cpp.h +include_HEADERS += include/extra/gc_cpp.h +libgccpp_la_SOURCES = gc_cpp.cc +libgccpp_la_LIBADD = ./libgc.la +libgccpp_la_LDFLAGS = -version-info 1:3:0 -no-undefined +endif + +# FIXME: If Visual C++ users use Makefile.am, this should go into +# pkginclude_HEADERS with proper AM_CONDITIONALization. Otherwise +# delete this comment. +EXTRA_DIST += gc_cpp.cpp + + +# Misc +# ---- + +AM_CXXFLAGS = @GC_CFLAGS@ +AM_CFLAGS = @GC_CFLAGS@ + +## FIXME: relies on internal code generated by automake. +## FIXME: ./configure --enable-dependency-tracking should be used +#all_objs = @addobjs@ $(libgc_la_OBJECTS) +#$(all_objs) : include/private/gcconfig.h include/private/gc_priv.h \ +#include/private/gc_hdrs.h include/gc.h include/gc_gcj.h \ +#include/gc_pthread_redirects.h include/gc_config_macros.h \ +#include/private/thread_local_alloc.h include/private_support.h \ +#include/private/pthread_stop_world.h \ +#include/gc_mark.h @addincludes@ + +## FIXME: we shouldn't have to do this, but automake forces us to. +## We use -Wp,-P to strip #line directives. Irix `as' chokes on +## these. +if COMPILER_XLC + ## XLC neither requires nor tolerates the unnecessary assembler goop + ASM_CPP_OPTIONS = +else + ## We use -Wp,-P to strip #line directives. Irix `as' chokes on + ## these. + ASM_CPP_OPTIONS = -Wp,-P -x assembler-with-cpp +endif +.s.lo: + $(LTCOMPILE) $(ASM_CPP_OPTIONS) -c $< + +.S.lo: + $(LTCOMPILE) $(ASM_CPP_OPTIONS) -c $< + +## We need to add DEFS to assembler flags +## :FIXME: what if assembler does not accept -D... ? +## (use Autoconf to prepare ASDEFS ???) + +CCASFLAGS += $(DEFS) + +dist_noinst_SCRIPTS = callprocs configure.host + ## callprocs --- used by Makefile.{dj,direct} + ## configure.host --- used by Makefile.{am,dj,direct} + +# headers which are not installed +# (see include/include.am for more) +# + +# documentation which is not installed +# +EXTRA_DIST += README.QUICK + +# other makefiles +# :GOTCHA: deliberately we do not include 'Makefile' +EXTRA_DIST += BCC_MAKEFILE NT_MAKEFILE \ + OS2_MAKEFILE PCR-Makefile digimars.mak EMX_MAKEFILE \ + Makefile.direct Makefile.dj Makefile.DLLs SMakefile.amiga \ + WCC_MAKEFILE autogen.sh build_atomic_ops.sh build_atomic_ops.sh.cygwin \ + NT_STATIC_THREADS_MAKEFILE NT_X64_STATIC_THREADS_MAKEFILE \ + NT_X64_THREADS_MAKEFILE CMakeLists.txt tests/CMakeLists.txt + +# files used by makefiles other than Makefile.am +# +EXTRA_DIST += extra/add_gc_prefix.c extra/gc.c extra/gcname.c \ + extra/if_mach.c extra/if_not_there.c gc.mak \ + extra/MacOS.c MacProjects.sit.hqx mach_dep.c extra/setjmp_t.c \ + extra/threadlibs.c extra/AmigaOS.c \ + Mac_files/datastart.c Mac_files/dataend.c \ + Mac_files/MacOS_config.h Mac_files/MacOS_Test_config.h \ + include/private/msvc_dbg.h extra/msvc_dbg.c + +# this is an auxiliary shell file used by Makefile and Makefile.direct +# +CONFIG_STATUS_DEPENDENCIES = $(srcdir)/configure.host + +# +# :GOTCHA: GNU make rule for making .s out of .S is flawed, +# it will not remove dest if building fails +.S.s: + if $(CPP) $< >$@ ; then :; else rm -f $@; fi + +include include/include.am +include cord/cord.am +include tests/tests.am +include doc/doc.am +# Putting these at the top causes cord to be built first, and not find libgc.a +# on HP/UX. There may be a better fix.