⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 makefile.direct

📁 Boost provides free peer-reviewed portable C++ source libraries. We emphasize libraries that work
💻 DIRECT
📖 第 1 页 / 共 3 页
字号:
#   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.#CXXFLAGS= $(CFLAGS) AR= arRANLIB= ranlibOBJS= alloc.o reclaim.o allchblk.o misc.o mach_dep.o os_dep.o mark_rts.o \  headers.o mark.o obj_map.o blacklst.o finalize.o new_hblk.o dbg_mlc.o  \  malloc.o stubborn.o checksums.o pthread_support.o pthread_stop_world.o \  darwin_stop_world.o typd_mlc.o ptr_chck.o mallocx.o gcj_mlc.o specific.o \  gc_dlopen.o backgraph.o win32_threads.o thread_local_alloc.oCSRCS= reclaim.c allchblk.c misc.c alloc.c mach_dep.c os_dep.c mark_rts.c \  headers.c mark.c obj_map.c pcr_interface.c blacklst.c finalize.c \  new_hblk.c real_malloc.c dyn_load.c dbg_mlc.c malloc.c stubborn.c \  checksums.c pthread_support.c pthread_stop_world.c darwin_stop_world.c \  typd_mlc.c ptr_chck.c mallocx.c gcj_mlc.c specific.c gc_dlopen.c \  backgraph.c win32_threads.c thread_local_alloc.cCORD_SRCS=  cord/cordbscs.c cord/cordxtra.c cord/cordprnt.c cord/de.c cord/cordtest.c include/cord.h include/ec.h include/private/cord_pos.h cord/de_win.c cord/de_win.h cord/de_cmds.h cord/de_win.ICO cord/de_win.RCCORD_OBJS=  cord/cordbscs.o cord/cordxtra.o cord/cordprnt.oSRCS= $(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/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 \    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 \    include/gc_backptr.h \    hpux_test_and_clear.s include/gc_gcj.h \    include/private/dbg_mlc.h \    include/private/specific.h \    include/leak_detector.h include/gc_amiga_redirects.h \    include/gc_pthread_redirects.h ia64_save_regs_in_stack.s \    include/gc_config_macros.h include/private/pthread_support.h \    include/private/pthread_stop_world.h include/private/darwin_semaphore.h \    include/private/darwin_stop_world.h include/private/thread_local_alloc.h \    $(CORD_SRCS)DOC_FILES= README.QUICK doc/README.Mac doc/README.MacOSX doc/README.OS2 \	doc/README.amiga doc/README.cords doc/debugging.html \	doc/porting.html doc/overview.html \	doc/README.dj doc/README.hp doc/README.linux doc/README.rs6000 \	doc/README.sgi doc/README.solaris2 doc/README.uts \	doc/README.win32 doc/barrett_diagram doc/README \        doc/README.contributors doc/README.changes doc/gc.man \	doc/README.environment doc/tree.html doc/gcdescr.html \	doc/README.autoconf doc/README.macros doc/README.ews4800 \	doc/README.DGUX386 doc/README.arm.cross doc/leak.html \	doc/scale.html doc/gcinterface.html doc/README.darwin \	doc/simple_example.html doc/README.win64TESTS= tests/test.c tests/test_cpp.cc tests/trace_test.c \	tests/leak_test.c tests/thread_leak_test.c tests/middle.cGNU_BUILD_FILES= configure.ac Makefile.am configure acinclude.m4 \		 libtool.m4 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 compileOTHER_MAKEFILES= OS2_MAKEFILE NT_MAKEFILE NT_THREADS_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 configure_atomic_ops.sh#	Makefile and Makefile.direct are copies of each other.OTHER_FILES= Makefile setjmp_t.c callprocs \           MacProjects.sit.hqx 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 \	   version.h AmigaOS.c mscvc_dbg.c include/private/msvc_dbg.h \	   $(TESTS) $(GNU_BUILD_FILES) $(OTHER_MAKEFILES)CORD_INCLUDE_FILES= $(srcdir)/include/gc.h $(srcdir)/include/cord.h \	$(srcdir)/include/ec.h $(srcdir)/include/private/cord_pos.hUTILS= if_mach if_not_there threadlibs# Libraries needed for curses applications.  Only needed for de.CURSES= -lcurses -ltermlib# The following is irrelevant on most systems.  But a few# versions of make otherwise fork the shell specified in# the SHELL environment variable.SHELL= /bin/shSPECIALCFLAGS = -I$(srcdir)/include -I$(AO_INSTALL_DIR)/include# Alternative flags to the C compiler for mach_dep.c.# Mach_dep.c often doesn't like optimization, and it's# not time-critical anyway.# Set SPECIALCFLAGS to -q nodirect_code on Encore.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) installLEAKFLAGS=$(CFLAGS) -DFIND_LEAKBSD-pkg-all: bsd-libgc.a bsd-libleak.absd-libgc.a:	$(MAKE) CFLAGS="$(CFLAGS)" clean c++-t	mv gc.a bsd-libgc.absd-libleak.a:	$(MAKE) -f Makefile.direct CFLAGS="$(LEAKFLAGS)" clean c++-nt	mv gc.a bsd-libleak.aBSD-pkg-install: BSD-pkg-all	${CP} bsd-libgc.a libgc.a	${INSTALL_DATA} libgc.a ${PREFIX}/lib	${INSTALL_DATA} gc.h gc_cpp.h ${PREFIX}/include	${INSTALL_MAN} doc/gc.man ${PREFIX}/man/man3/gc.3pcr: PCR-Makefile include/private/gc_private.h include/private/gc_hdrs.h \include/private/gc_locks.h include/gc.h include/private/gcconfig.h \mach_dep.o $(SRCS)	$(MAKE) -f PCR-Makefile depend	$(MAKE) -f PCR-Makefile$(OBJS) tests/test.o dyn_load.o dyn_load_sunos53.o: \    $(srcdir)/include/private/gc_priv.h \    $(srcdir)/include/private/gc_hdrs.h $(srcdir)/include/private/gc_locks.h \    $(srcdir)/include/gc.h $(srcdir)/include/gc_pthread_redirects.h \    $(srcdir)/include/private/gcconfig.h $(srcdir)/include/gc_typed.h \    $(srcdir)/include/gc_config_macros.h Makefile $(AO_INSTALL_DIR)# The dependency on Makefile is needed.  Changing# options affects the size of GC_arrays,# invalidating all .o files that rely on gc_priv.hmark.o typd_mlc.o finalize.o ptr_chck.o: $(srcdir)/include/gc_mark.h \					 $(srcdir)/include/private/gc_pmark.hspecific.o pthread_support.o thread_local_alloc.o win32_threads.o: \	$(srcdir)/include/private/specific.h $(srcdir)/include/gc_inline.h \	$(srcdir)/include/private/thread_local_alloc.hdbg_mlc.o gcj_mlc.o: $(srcdir)/include/private/dbg_mlc.htests/test.o: tests $(srcdir)/tests/test.c	$(CC) $(CFLAGS) -c $(srcdir)/tests/test.c	mv test.o tests/test.otests:	mkdir testsbase_lib gc.a: $(OBJS) dyn_load.o $(UTILS)	echo > base_lib	rm -f dont_ar_1	cp $(AO_INSTALL_DIR)/lib/libatomic_ops.a gc.a	./if_mach SPARC SOLARIS touch dont_ar_1	./if_mach SPARC SOLARIS $(AR) rus gc.a $(OBJS) dyn_load.o	./if_mach M68K AMIGA touch dont_ar_1	./if_mach M68K AMIGA $(AR) -vrus gc.a $(OBJS) dyn_load.o	./if_not_there dont_ar_1 $(AR) ru gc.a $(OBJS) dyn_load.o	./if_not_there dont_ar_1 $(RANLIB) gc.a || cat /dev/null

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -