X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=src%2Fmm%2Fboehm-gc%2FMakefile.direct;h=124da25483ed8a5d4716c4855d64a81c2a30d673;hb=c9ee016a64e925938f84fcb85521f82febcc4f63;hp=23b0ab36dbf9d3fe42eef02314751d1f21ec325b;hpb=8275714acb4ee70328526bd43e7cb54869119f51;p=cacao.git diff --git a/src/mm/boehm-gc/Makefile.direct b/src/mm/boehm-gc/Makefile.direct index 23b0ab36d..124da2548 100644 --- a/src/mm/boehm-gc/Makefile.direct +++ b/src/mm/boehm-gc/Makefile.direct @@ -6,10 +6,10 @@ # c++ - adds C++ interface to library # cords - adds cords (heavyweight strings) to library # test - prints porting information, then builds basic version of gc.a, -# and runs some tests of collector and cords. Does not add cords or -# c++ interface to gc.a +# and runs some tests of collector and cords. Does not add cords or +# c++ interface to gc.a # cord/de - builds dumb editor based on cords. -ABI_FLAG= +ABI_FLAG= # ABI_FLAG should be the cc flag that specifies the ABI. On most # platforms this will be the empty string. Possible values: # +DD64 for 64-bit executable on HP/UX. @@ -32,8 +32,7 @@ VPATH= $(srcdir) # Atomic_ops installation directory. If this doesn't exist, we create # it from the included libatomic_ops distribution. -AO_VERSION=1.2 -AO_SRC_DIR=$(srcdir)/libatomic_ops-$(AO_VERSION) +AO_SRC_DIR=$(srcdir)/libatomic_ops AO_INSTALL_DIR=$(srcdir)/libatomic_ops-install CFLAGS= -O -I$(srcdir)/include -I$(AO_INSTALL_DIR)/include -DATOMIC_UNCOLLECTABLE -DNO_EXECUTE_PERMISSION -DALL_INTERIOR_POINTERS @@ -62,267 +61,10 @@ HOSTCFLAGS=$(CFLAGS) # Setjmp_test may yield overly optimistic results when compiled # without optimization. -# These define arguments influence the collector configuration: -# -DFIND_LEAK causes GC_find_leak to be initially set. -# This causes the collector to assume that all inaccessible -# objects should have been explicitly deallocated, and reports exceptions. -# Finalization and the test program are not usable in this mode. -# -# IMPORTANT: Any of the _THREADS options must normally also be defined in -# the client before including gc.h. This redefines thread primitives to -# invoke the GC_ versions instead. Alternatively, linker-based symbol -# interception can be used on a few platforms. -# -DGC_THREADS should set the appropriate one of the below macros, -# except -DGC_WIN32_PTHREADS, which must be set explicitly. -# -DGC_SOLARIS_PTHREADS enables support for Solaris pthreads. -# (Clients should also define GC_SOLARIS_THREADS and then include -# gc.h before performing thr_ or dl* or GC_ operations.) -# Must also define -D_REENTRANT. -# -DGC_IRIX_THREADS enables support for Irix pthreads. See README.irix. -# -DGC_HPUX_THREADS enables support for HP/UX 11 pthreads. -# Also requires -D_REENTRANT or -D_POSIX_C_SOURCE=199506L. See README.hp. -# -DGC_LINUX_THREADS enables support for Xavier Leroy's Linux threads -# or NPTL threads. See README.linux. -D_REENTRANT may also be required. -# -DGC_OSF1_THREADS enables support for Tru64 pthreads. -# -DGC_FREEBSD_THREADS enables support for FreeBSD pthreads. -# Appeared to run into some underlying thread problems. -# -DGC_DARWIN_THREADS enables support for Mac OS X pthreads. -# -DGC_AIX_THREADS enables support for IBM AIX threads. -# -DGC_DGUX386_THREADS enables support for DB/UX on I386 threads. -# See README.DGUX386. (Probably has not been tested recently.) -# -DGC_WIN32_THREADS enables support for win32 threads. That makes sense -# for this Makefile only under Cygwin. -# -DGC_WIN32_PTHREADS enables support for Ming32 pthreads. This cannot be -# enabled automatically by GC_THREADS, which would assume Win32 native -# threads. -# -DPTW32_STATIC_LIB causes the static version of the Mingw pthreads library -# to be used. Requires -DGC_WIN32_PTHREADS. -# -# -DALL_INTERIOR_POINTERS allows all pointers to the interior -# of objects to be recognized. (See gc_priv.h for consequences.) -# Alternatively, GC_all_interior_pointers can be set at process -# initialization time. -# -DSMALL_CONFIG tries to tune the collector for small heap sizes, -# usually causing it to use less space in such situations. -# Incremental collection no longer works in this case. -# -DLARGE_CONFIG tunes the collector for unusually large heaps. -# Necessary for heaps larger than about 500 MB on most machines. -# Recommended for heaps larger than about 64 MB. -# -DDONT_ADD_BYTE_AT_END is meaningful only with -DALL_INTERIOR_POINTERS or -# GC_all_interior_pointers = 1. Normally -DALL_INTERIOR_POINTERS -# causes all objects to be padded so that pointers just past the end of -# an object can be recognized. This can be expensive. (The padding -# is normally more than one byte due to alignment constraints.) -# -DDONT_ADD_BYTE_AT_END disables the padding. -# -DNO_EXECUTE_PERMISSION may cause some or all of the heap to not -# have execute permission, i.e. it may be impossible to execute -# code from the heap. Currently this only affects the incremental -# collector on UNIX machines. It may greatly improve its performance, -# since this may avoid some expensive cache synchronization. -# -DGC_NO_OPERATOR_NEW_ARRAY declares that the C++ compiler does not support -# the new syntax "operator new[]" for allocating and deleting arrays. -# See gc_cpp.h for details. No effect on the C part of the collector. -# This is defined implicitly in a few environments. Must also be defined -# by clients that use gc_cpp.h. -# -DREDIRECT_MALLOC=X causes malloc to be defined as alias for X. -# Unless the following macros are defined, realloc is also redirected -# to GC_realloc, and free is redirected to GC_free. -# Calloc and strdup are redefined in terms of the new malloc. X should -# be either GC_malloc or GC_malloc_uncollectable, or -# GC_debug_malloc_replacement. (The latter invokes GC_debug_malloc -# with dummy source location information, but still results in -# properly remembered call stacks on Linux/X86 and Solaris/SPARC. -# It requires that the following two macros also be used.) -# The former is occasionally useful for working around leaks in code -# you don't want to (or can't) look at. It may not work for -# existing code, but it often does. Neither works on all platforms, -# since some ports use malloc or calloc to obtain system memory. -# (Probably works for UNIX, and win32.) If you build with DBG_HDRS_ALL, -# you should only use GC_debug_malloc_replacement as a malloc -# replacement. -# -DREDIRECT_REALLOC=X causes GC_realloc to be redirected to X. -# The canonical use is -DREDIRECT_REALLOC=GC_debug_realloc_replacement, -# together with -DREDIRECT_MALLOC=GC_debug_malloc_replacement to -# generate leak reports with call stacks for both malloc and realloc. -# This also requires the following: -# -DREDIRECT_FREE=X causes free to be redirected to X. The -# canonical use is -DREDIRECT_FREE=GC_debug_free. -# -DIGNORE_FREE turns calls to free into a noop. Only useful with -# -DREDIRECT_MALLOC. -# -DNO_DEBUGGING removes GC_dump and the debugging routines it calls. -# Reduces code size slightly at the expense of debuggability. -# -DJAVA_FINALIZATION makes it somewhat safer to finalize objects out of -# order by specifying a nonstandard finalization mark procedure (see -# finalize.c). Objects reachable from finalizable objects will be marked -# in a separate postpass, and hence their memory won't be reclaimed. -# Not recommended unless you are implementing a language that specifies -# these semantics. Since 5.0, determines only the initial value -# of GC_java_finalization variable. -# -DFINALIZE_ON_DEMAND causes finalizers to be run only in response -# to explicit GC_invoke_finalizers() calls. -# In 5.0 this became runtime adjustable, and this only determines the -# initial value of GC_finalize_on_demand. -# -DATOMIC_UNCOLLECTABLE includes code for GC_malloc_atomic_uncollectable. -# This is useful if either the vendor malloc implementation is poor, -# or if REDIRECT_MALLOC is used. -# -DMARK_BIT_PER_GRANULE requests that a mark bit (or often byte) -# be allocated for each allocation granule, as opposed to each object. -# This often improves speed, possibly at some cost in space and/or -# cache footprint. Normally it is best to let this decision be -# made automatically depending on platform. -# -DMARK_BIT_PER_OBJ requests that a mark bit be allocated for each -# object instead of allocation granule. The opposiet of -# MARK_BIT_PER_GRANULE. -# -DHBLKSIZE=ddd, where ddd is a power of 2 between 512 and 16384, explicitly -# sets the heap block size. Each heap block is devoted to a single size and -# kind of object. For the incremental collector it makes sense to match -# the most likely page size. Otherwise large values result in more -# fragmentation, but generally better performance for large heaps. -# -DUSE_MMAP use MMAP instead of sbrk to get new memory. -# Works for Solaris and Irix. -# -DUSE_MUNMAP causes memory to be returned to the OS under the right -# circumstances. This currently disables VM-based incremental collection. -# This is currently experimental, and works only under some Unix, -# Linux and Windows versions. Requires -DUSE_MMAP, even under Windows, -# where USE_MMAP doesn't do anything. -# -DMMAP_STACKS (for Solaris threads) Use mmap from /dev/zero rather than -# GC_scratch_alloc() to get stack memory. -# -DPRINT_BLACK_LIST Whenever a black list entry is added, i.e. whenever -# the garbage collector detects a value that looks almost, but not quite, -# like a pointer, print both the address containing the value, and the -# value of the near-bogus-pointer. Can be used to identifiy regions of -# memory that are likely to contribute misidentified pointers. -# -DKEEP_BACK_PTRS Add code to save back pointers in debugging headers -# for objects allocated with the debugging allocator. If all objects -# through GC_MALLOC with GC_DEBUG defined, this allows the client -# to determine how particular or randomly chosen objects are reachable -# for debugging/profiling purposes. The gc_backptr.h interface is -# implemented only if this is defined. -# -DGC_ASSERTIONS Enable some internal GC assertion checking. Currently -# this facility is only used in a few places. It is intended primarily -# for debugging of the garbage collector itself, but could also -# -DDBG_HDRS_ALL Make sure that all objects have debug headers. Increases -# the reliability (from 99.9999% to 100% mod. bugs) of some of the debugging -# code (especially KEEP_BACK_PTRS). Makes -DSHORT_DBG_HDRS possible. -# Assumes that all client allocation is done through debugging -# allocators. -# -DSHORT_DBG_HDRS Assume that all objects have debug headers. Shorten -# the headers to minimize object size, at the expense of checking for -# writes past the end of an object. This is intended for environments -# in which most client code is written in a "safe" language, such as -# Scheme or Java. Assumes that all client allocation is done using -# the GC_debug_ functions, or through the macros that expand to these, -# or by redirecting malloc to GC_debug_malloc_replacement. -# (Also eliminates the field for the requested object size.) -# -DSAVE_CALL_COUNT= Set the number of call frames saved with objects -# allocated through the debugging interface. Affects the amount of -# information generated in leak reports. Only matters on platforms -# on which we can quickly generate call stacks, currently Linux/(X86 & SPARC) -# and Solaris/SPARC and platforms that provide execinfo.h. -# Default is zero. On X86, client -# code should NOT be compiled with -fomit-frame-pointer. -# -DSAVE_CALL_NARGS= Set the number of functions arguments to be -# saved with each call frame. Default is zero. Ignored if we -# don't know how to retrieve arguments on the platform. -# -DCHECKSUMS reports on erroneously clear dirty bits, and unexpectedly -# altered stubborn objects, at substantial performance cost. -# Use only for debugging of the incremental collector. -# -DGC_GCJ_SUPPORT includes support for gcj (and possibly other systems -# that include a pointer to a type descriptor in each allocated object). -# Building this way requires an ANSI C compiler. -# -DUSE_I686_PREFETCH causes the collector to issue Pentium III style -# prefetch instructions. No effect except on X86 Linux platforms. -# Assumes a very recent gcc-compatible compiler and assembler. -# (Gas prefetcht0 support was added around May 1999.) -# Empirically the code appears to still run correctly on Pentium II -# processors, though with no performance benefit. May not run on other -# X86 processors? In some cases this improves performance by -# 15% or so. -# -DUSE_3DNOW_PREFETCH causes the collector to issue AMD 3DNow style -# prefetch instructions. Same restrictions as USE_I686_PREFETCH. -# Minimally tested. Didn't appear to be an obvious win on a K6-2/500. -# -DUSE_PPC_PREFETCH causes the collector to issue PowerPC style -# prefetch instructions. No effect except on PowerPC OS X platforms. -# Performance impact untested. -# -DGC_USE_LD_WRAP in combination with the old flags listed in README.linux -# causes the collector some system and pthread calls in a more transparent -# fashion than the usual macro-based approach. Requires GNU ld, and -# currently probably works only with Linux. -# -DGC_USE_DLOPEN_WRAP causes the collector to redefine malloc and intercepted -# pthread routines with their real names, and causes it to use dlopen -# and dlsym to refer to the original versions. This makes it possible to -# build an LD_PRELOADable malloc replacement library. -# -DTHREAD_LOCAL_ALLOC defines GC_malloc(), GC_malloc_atomic() -# and GC_gcj_malloc() to use a per-thread set of free-lists. -# These then allocate in a way that usually does not involve -# acquisition of a global lock. Currently supported only on platforms -# such as Linux that use pthread_support.c. Recommended for multiprocessors. -# Requires explicit GC_INIT() call, unless REDIRECT_MALLOC is -# defined and GC_malloc is used first. -# -DUSE_COMPILER_TLS causes thread local allocation to use compiler-supported -# "__thread" thread-local variables. This is the default in HP/UX. It -# may help performance on recent Linux installations. (It failed for -# me on RedHat 8, but appears to work on RedHat 9.) -# -DPARALLEL_MARK allows the marker to run in multiple threads. Recommended -# for multiprocessors. Currently requires Linux on X86 or IA64, though -# support for other Posix platforms should be fairly easy to add, -# if the thread implementation is otherwise supported. -# -DNO_GETENV prevents the collector from looking at environment variables. -# These may otherwise alter its configuration, or turn off GC altogether. -# I don't know of a reason to disable this, except possibly if the -# resulting process runs as a privileged user? -# -DUSE_GLOBAL_ALLOC. Win32 only. Use GlobalAlloc instead of -# VirtualAlloc to allocate the heap. May be needed to work around -# a Windows NT/2000 issue. Incompatible with USE_MUNMAP. -# See README.win32 for details. -# -DMAKE_BACK_GRAPH. Enable GC_PRINT_BACK_HEIGHT environment variable. -# See README.environment for details. Experimental. Limited platform -# support. Implies DBG_HDRS_ALL. All allocation should be done using -# the debug interface. -# -DSTUBBORN_ALLOC allows allocation of "hard to change" objects, and thus -# makes incremental collection easier. Was enabled by default until 6.0. -# Rarely used, to my knowledge. -# -DHANDLE_FORK attempts to make GC_malloc() work in a child process fork()ed -# from a multithreaded parent. Currently only supported by pthread_support.c. -# (Similar code should work on Solaris or Irix, but it hasn't been tried.) -# -DTEST_WITH_SYSTEM_MALLOC causes gctest to allocate (and leak) large chunks -# of memory with the standard system malloc. This will cause the root -# set and collected heap to grow significantly if malloced memory is -# somehow getting traced by the collector. This has no impact on the -# generated library; it only affects the test. -# -DNO_INCREMENTAL cases the gctest program to not invoke the incremental -# collector. This has no impact on the generated library, only on the -# test program. (This is often useful for debugging failures unrelated -# to incremental GC.) -# -DPOINTER_MASK=0x... causes candidate pointers to be ANDed with the -# given mask before being considered. If either this or the following -# macro is defined, it will be assumed that all pointers stored in -# the heap need to be processed this way. Stack and register pointers -# will be considered both with and without processing. -# These macros are normally needed only to support systems that use -# high-order pointer tags. EXPERIMENTAL. -# -DPOINTER_SHIFT=n causes the collector to left shift candidate pointers -# by the indicated amount before trying to interpret them. Applied -# after POINTER_MASK. EXPERIMENTAL. See also the preceding macro. -# -DENABLE_TRACE enables the GC_TRACE=addr environment setting to do its -# job. By default this is not supported in order to keep the marker as fast -# as possible. -# -DDARWIN_DONT_PARSE_STACK Causes the Darwin port to discover thread -# stack bounds in the same way as other pthread ports, without trying to -# walk the frames onthe stack. This is recommended only as a fallback -# for applications that don't support proper stack unwinding. -# -DUSE_PROC_FOR_LIBRARIES Causes the Linux collector to treat writable -# memory mappings (as reported by /proc) as roots, if it doesn't have -# otherinformation about them. It no longer traverses dynamic loader -# data structures to find dynamic library static data. This may be -# required for applications that store pointers in mmapped segments without -# informaing the collector. But it typically performs poorly, especially -# since it will scan inactive but cached NPTL thread stacks completely. -# -DNO_PROC_STAT Causes the collector to avoid relying on Linux' -# /proc/self/stat. -# +# Look into doc/README.macros for the description of the "define arguments" +# influencing the collector configuration. -CXXFLAGS= $(CFLAGS) +CXXFLAGS= $(CFLAGS) AR= ar RANLIB= ranlib @@ -348,9 +90,9 @@ SRCS= $(CSRCS) mips_sgi_mach_dep.s rs6000_mach_dep.s alpha_mach_dep.S \ sparc_mach_dep.S include/gc.h include/gc_typed.h include/gc_tiny_fl.h \ include/gc_version.h include/private/gc_hdrs.h include/private/gc_priv.h \ include/private/gcconfig.h include/private/gc_pmark.h \ - include/gc_inline.h include/gc_mark.h \ - threadlibs.c if_mach.c if_not_there.c gc_cpp.cc include/gc_cpp.h \ - gcname.c include/weakpointer.h include/private/gc_locks.h \ + include/gc_inline.h include/gc_mark.h extra/threadlibs.c \ + extra/if_mach.c extra/if_not_there.c gc_cpp.cc include/gc_cpp.h \ + extra/gcname.c include/weakpointer.h include/private/gc_locks.h \ mips_ultrix_mach_dep.s \ include/new_gc_alloc.h include/gc_allocator.h \ include/javaxfc.h sparc_sunos4_mach_dep.s sparc_netbsd_mach_dep.s \ @@ -382,28 +124,27 @@ TESTS= tests/test.c tests/test_cpp.cc tests/trace_test.c \ tests/leak_test.c tests/thread_leak_test.c tests/middle.c \ tests/smash_test.c tests/huge_test.c -GNU_BUILD_FILES= configure.ac Makefile.am configure acinclude.m4 \ - libtool.m4 install-sh configure.host Makefile.in \ +GNU_BUILD_FILES= configure.ac Makefile.am configure \ + install-sh configure.host Makefile.in \ aclocal.m4 config.sub config.guess \ include/include.am doc/doc.am \ ltmain.sh mkinstalldirs depcomp missing \ cord/cord.am tests/tests.am autogen.sh \ bdw-gc.pc.in compile -OTHER_MAKEFILES= OS2_MAKEFILE NT_MAKEFILE NT_THREADS_MAKEFILE gc.mak \ +OTHER_MAKEFILES= OS2_MAKEFILE NT_MAKEFILE gc.mak \ BCC_MAKEFILE EMX_MAKEFILE WCC_MAKEFILE Makefile.dj \ PCR-Makefile SMakefile.amiga Makefile.DLLs \ digimars.mak Makefile.direct NT_STATIC_THREADS_MAKEFILE \ NT_X64_STATIC_THREADS_MAKEFILE NT_X64_THREADS_MAKEFILE \ - configure_atomic_ops.sh -# Makefile and Makefile.direct are copies of each other. + build_atomic_ops.sh build_atomic_ops.sh.cygwin -OTHER_FILES= Makefile setjmp_t.c callprocs \ - MacProjects.sit.hqx MacOS.c \ +OTHER_FILES= Makefile extra/setjmp_t.c callprocs \ + MacProjects.sit.hqx extra/MacOS.c \ Mac_files/datastart.c Mac_files/dataend.c \ Mac_files/MacOS_config.h Mac_files/MacOS_Test_config.h \ - add_gc_prefix.c gc_cpp.cpp \ - AmigaOS.c mscvc_dbg.c include/private/msvc_dbg.h \ + extra/add_gc_prefix.c gc_cpp.cpp \ + extra/AmigaOS.c extra/msvc_dbg.c include/private/msvc_dbg.h \ $(TESTS) $(GNU_BUILD_FILES) $(OTHER_MAKEFILES) CORD_INCLUDE_FILES= $(srcdir)/include/gc.h $(srcdir)/include/cord.h \ @@ -429,9 +170,8 @@ all: gc.a gctest # if AO_INSTALL_DIR doesn't exist, we assume that it is pointing to # the default location, and we need to build -$(AO_INSTALL_DIR): - CC=$(CC) $(srcdir)/configure_atomic_ops.sh - cd $(AO_SRC_DIR); $(MAKE) CC=$(CC) install +$(AO_INSTALL_DIR): + CC=$(CC) MAKE=$(MAKE) $(srcdir)/build_atomic_ops.sh LEAKFLAGS=$(CFLAGS) -DFIND_LEAK @@ -632,19 +372,19 @@ cord/de: $(srcdir)/cord/de.c cord/cordbscs.o cord/cordxtra.o gc.a $(UTILS) ./if_mach M68K AMIGA $(CC) $(CFLAGS) -UGC_AMIGA_MAKINGLIB -o cord/de $(srcdir)/cord/de.c cord/cordbscs.o cord/cordxtra.o gc.a -lcurses ./if_not_there cord/de $(CC) $(CFLAGS) -o cord/de $(srcdir)/cord/de.c cord/cordbscs.o cord/cordxtra.o gc.a $(CURSES) `./threadlibs` -if_mach: $(srcdir)/if_mach.c $(srcdir)/include/private/gcconfig.h - $(HOSTCC) $(HOSTCFLAGS) -o if_mach $(srcdir)/if_mach.c +if_mach: $(srcdir)/extra/if_mach.c $(srcdir)/include/private/gcconfig.h + $(HOSTCC) $(HOSTCFLAGS) -o if_mach $(srcdir)/extra/if_mach.c -threadlibs: $(srcdir)/threadlibs.c $(srcdir)/include/private/gcconfig.h Makefile - $(HOSTCC) $(HOSTCFLAGS) -o threadlibs $(srcdir)/threadlibs.c +threadlibs: $(srcdir)/extra/threadlibs.c $(srcdir)/include/private/gcconfig.h Makefile + $(HOSTCC) $(HOSTCFLAGS) -o threadlibs $(srcdir)/extra/threadlibs.c -if_not_there: $(srcdir)/if_not_there.c - $(HOSTCC) $(HOSTCFLAGS) -o if_not_there $(srcdir)/if_not_there.c +if_not_there: $(srcdir)/extra/if_not_there.c + $(HOSTCC) $(HOSTCFLAGS) -o if_not_there $(srcdir)/extra/if_not_there.c -clean: +clean: rm -f gc.a *.o *.exe tests/*.o gctest gctest_dyn_link test_cpp \ setjmp_test mon.out gmon.out a.out core if_not_there if_mach \ - threadlibs $(CORD_OBJS) cord/cordtest cord/de + threadlibs $(CORD_OBJS) cord/cordtest cord/de -rm -f *~ gctest: tests/test.o gc.a $(UTILS) @@ -657,8 +397,8 @@ gctest: tests/test.o gc.a $(UTILS) # If an optimized setjmp_test generates a segmentation fault, # odds are your compiler is broken. Gctest may still work. # Try compiling setjmp_t.c unoptimized. -setjmp_test: $(srcdir)/setjmp_t.c $(srcdir)/include/gc.h $(UTILS) $(AO_INSTALL_DIR) - $(CC) $(CFLAGS) -o setjmp_test $(srcdir)/setjmp_t.c +setjmp_test: $(srcdir)/extra/setjmp_t.c $(srcdir)/include/gc.h $(UTILS) $(AO_INSTALL_DIR) + $(CC) $(CFLAGS) -o setjmp_test $(srcdir)/extra/setjmp_t.c test: KandRtest cord/cordtest cord/cordtest @@ -668,11 +408,11 @@ KandRtest: setjmp_test gctest ./setjmp_test ./gctest -add_gc_prefix: $(srcdir)/add_gc_prefix.c $(srcdir)/include/gc_version.h - $(CC) -o add_gc_prefix $(srcdir)/add_gc_prefix.c +add_gc_prefix: $(srcdir)/extra/add_gc_prefix.c $(srcdir)/include/gc_version.h + $(CC) -o add_gc_prefix $(srcdir)/extra/add_gc_prefix.c -gcname: $(srcdir)/gcname.c $(srcdir)/include/gc_version.h - $(CC) -o gcname $(srcdir)/gcname.c +gcname: $(srcdir)/extra/gcname.c $(srcdir)/include/gc_version.h + $(CC) -o gcname $(srcdir)/extra/gcname.c #We assume this is being done from source directory. dist gc.tar: $(SRCS) $(DOC_FILES) $(OTHER_FILES) add_gc_prefix gcname @@ -680,16 +420,16 @@ dist gc.tar: $(SRCS) $(DOC_FILES) $(OTHER_FILES) add_gc_prefix gcname cp Makefile.direct Makefile CC=$(CC) ./configure_atomic_ops.sh cd $(AO_SRC_DIR); $(MAKE) dist - if test $(srcdir)/libatomic_ops-$(AO_VERSION) = $(AO_SRC_DIR); \ + if test $(srcdir)/libatomic_ops = $(AO_SRC_DIR); \ then \ mv $(AO_SRC_DIR) $(AO_SRC_DIR).bak ; \ - tar xvfz $(AO_SRC_DIR).bak/libatomic_ops-$(AO_VERSION).tar.gz ; \ + tar xvfz $(AO_SRC_DIR).bak/libatomic_ops.tar.gz ; \ else \ - tar xvfz $(AO_SRC_DIR)/libatomic_ops-$(AO_VERSION).tar.gz ; \ + tar xvfz $(AO_SRC_DIR)/libatomic_ops.tar.gz ; \ fi rm -f `./gcname` ln -s . `./gcname` - ./add_gc_prefix $(SRCS) $(DOC_FILES) $(OTHER_FILES) libatomic_ops-$(AO_VERSION) > /tmp/gc.tar-files + ./add_gc_prefix $(SRCS) $(DOC_FILES) $(OTHER_FILES) libatomic_ops > /tmp/gc.tar-files tar cvfh gc.tar `cat /tmp/gc.tar-files` cp gc.tar `./gcname`.tar gzip `./gcname`.tar