summaryrefslogtreecommitdiff
path: root/Makefile.am
Commit message (Collapse)AuthorAgeFilesLines
* Fix nodist_libgc_la_SOURCES value in Makefile.am for Solaris/sparcIvan Maidanski2021-12-211-3/+2
| | | | | | * Makefile.am [NEED_ATOMIC_OPS_ASM] (nodist_libgc_la_SOURCES): Append atomic_ops_sysdeps.S instead of overwriting atomic_ops.c item (and only if USE_INTERNAL_LIBATOMIC_OPS).
* Distribute gc_disclaim.h in single-obj-compilationJakub Wojciech2021-12-211-1/+4
| | | | | | | | | | | (a cherry-pick of commit 056ad8279 from 'release-8_2') Issue #389 (bdwgc). This fixes installation of gc_disclaim.h if --single-obj-compilation is passed to configure. * Makefile.am [ENABLE_DISCLAIM] (pkginclude_HEADERS): Likewise.
* Refer to Makefile.direct instead of deleted Makefile file in READMEIvan Maidanski2021-12-211-1/+0
| | | | | | | | | | | (a cherry-pick of commit 6c315e49f from 'release-8_2') * Makefile.am (EXTRA_DIST): Remove outdated comment exclusion of "Makefile" file. * README.QUICK (WARNINGS): Mention "Makefile.am or Makefile.direct" instead of "Makefile". * doc/README.linux: Mention "Makefile.direct" instead of "Makefile". * doc/README.sgi: Likewise.
* [8.0.6]v8.0.6Ivan Maidanski2021-09-281-2/+2
| | | | | | | | | | | | | Bump gc version to 8.0.6 * ChangeLog (8.0.6): Set release date. * Makefile.am (LIBGC_VER_INFO): Increment revision (change version info of libgc.so to 5:4:4). * Makefile.am (LIBGCCPP_VER_INFO): Increment revision (change version info of libgccpp.so to 5:1:4). * README.md: Bump micro version. * configure.ac (AC_INIT): Likewise. * include/gc_version.h (GC_TMP_VERSION_MICRO): Likewise.
* [8.0.4]v8.0.4Ivan Maidanski2019-03-021-1/+1
| | | | | | | | | | | Bump gc version to 8.0.4 * ChangeLog (8.0.4): Set release date. * Makefile.am (LIBGC_VER_INFO): Increment revision (change version info of libgc.so to 5:3:4). * README.md: Bump micro version. * configure.ac (AC_INIT): Likewise. * include/gc_version.h (GC_TMP_VERSION_MICRO): Likewise.
* [8.0.2]v8.0.2Ivan Maidanski2018-12-231-1/+1
| | | | | | | | | | | | Bump gc version to 8.0.2 * ChangeLog (8.0.2): Set release date. * Makefile.am (LIBGC_VER_INFO): Increment revision (change version info of libgc.so to 5:2:4). * README.md: Bump micro version. * configure.ac (AC_INIT): Likewise. * include/gc_version.h (GC_TMP_VERSION_MICRO): Likewise. * README.md: Remove "experimental release" note.
* [8.0.0]v8.0.0Ivan Maidanski2018-09-051-2/+2
| | | | | | | | | | | | | | | | | | Bump gc version to 8.0.0 (experimental release) * ChangeLog (8.0.0): Set release date. * Makefile.am (LIBGC_VER_INFO): Increment revision (change version info of libgc.so to 5:1:4). * Makefile.am (LIBGCCPP_VER_INFO): Increment current and age (change version info of libgccpp.so to 5:0:4). * README.md: Bump major version (set minor and micro to 0). * configure.ac (AC_INIT): Likewise. * include/gc_version.h (GC_TMP_VERSION_MAJOR, GC_TMP_VERSION_MINOR, GC_TMP_VERSION_MICRO): Likewise. * README.md: Remove build status badges (Travis, AppVeyor, Codecov, Coveralls, Coverity, LGTM). * cord/cord.am (LIBCORD_VER_INFO): Increment current and age (change version info of libcord.so to 5:0:4).
* Do not install gc_allocator.h, gc_disclaim.h unless the features enabledIvan Maidanski2018-05-241-1/+2
| | | | | | | | * Makefile.am [ENABLE_DISCLAIM] (pkginclude_HEADERS): Add gc_disclaim.h item. * Makefile.am [CPLUSPLUS] (pkginclude_HEADERS): Add gc_allocator.h item. * include/include.am (pkginclude_HEADERS): Remove gc_allocator.h and gc_disclaim.h items.
* Fix comments style in configure.ac and Makefile.amIvan Maidanski2018-05-181-10/+8
| | | | | | | | | | | | | | (code refactoring) Do not allow the comments that are meaningless in the auto-generated configure and Makefile.in to be put to these files. * Makefile.am (EXTRA_DIST, SINGLE_GC_OBJ, EXTRA_DIST, include doc/doc.am): Change comment style from "#" to "##". * Makefile.am (CPLUSPLUS): Move "#" inside the conditional block. * configure.ac: Update the copyright. * configure.ac: Change comment style from "#" to "dnl" for the comments that are meaningless in auto-generated configure file.
* Remove stubborn.c fileIvan Maidanski2018-05-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | (code refactoring) * BCC_MAKEFILE (XXXOBJS): Remove XXXstubborn.obj entry. * CMakeLists.txt (SRC): Remove stubborn.c entry. * Makefile.am (libgc_la_SOURCES): Likewise. * Makefile.direct (CSRCS): Likewise. * PCR-Makefile (CSRC): Likewise. * build/s60v3/libgc.mmp (SOURCE): Likewise. * doc/README.Mac (Files to build the GC libraries): Likewise. * Makefile.direct (OBJS): Remove stubborn.o entry. * PCR-Makefile (COBJ): Likewise. * SMakefile.amiga (OBJS): Likewise. * digimars.mak (OBJS): Likewise. * NT_MAKEFILE (OBJS): Remove stubborn.obj entry. * OS2_MAKEFILE (OBJS): Likewise. * WCC_MAKEFILE (OBJS): Likewise. * SMakefile.amiga (stubborn.o): Remove rule. * digimars.mak (stubborn.obj): Likewise. * extra/gc.c: Do not include stubborn.c. * gc.mak: Remove rules for stubborn.obj and stubborn.sbr. * mallocx.c [MANUAL_VDB] (GC_dirty): Move the function declaration from stubborn.c. * mallocx.c (GC_malloc_stubborn, GC_change_stubborn, GC_end_stubborn_change): Move the function implementation from stubborn.c. * stubborn.c: Delete file.
* Fix libgc version which was changed in a linkage breaking way (master)Ivan Maidanski2018-01-191-1/+1
| | | | | | | Issue #197 (bdwgc). * Makefile.am (LIBGC_VER_INFO): Change from 5:0:3 to 5:0:4 (to bring SONAME back to libgc.so.1).
* Move pcr_interface.c, real_malloc.c to 'extra' folderIvan Maidanski2017-06-131-1/+1
| | | | | | | | | | | | | | | (code refactoring) * Makefile.am (EXTRA_DIST): Add extra/ prefix to pcr_interface.c, real_malloc.c. * PCR-Makefile (CSRC): Likewise. * PCR-Makefile (COBJ): Add extra/ prefix to pcr_interface.o, real_malloc.o. * extra/gc.c: Remove include pcr_interface.c; update comment about files which are not included. * pcr_interface.c: Move to "extra" folder. * real_malloc.c: Likewise. * include/private/gc_priv.h (GC_INNER, GC_EXTERN): Update comment.
* Compile checksums.c only if --with-checksums is given (configure)Ivan Maidanski2017-06-091-1/+5
| | | | | | | | | | | | | New configure option (--with-checksums) is added, mainly to workaround 'checksums.a has no symbols' link warning (observed on Darwin). * Makefile.am [!SINGLE_GC_OBJ] (libgc_la_SOURCES): Do not add checksums.c unless CHECKSUMS. * configure.ac (checksums): New AC_ARG_WITH. * configure.ac [with_checksums && (enable_munmap || THREADS!=none)]: Issue AC_MSG_ERROR. * configure.ac (CHECKSUMS): New AC_DEFINE and AM_CONDITIONAL if with_checksums.
* Fix pthread_start compilation if single-obj-compilation (Linux)Ivan Maidanski2017-06-081-0/+11
| | | | | | | | | * Makefile.am [SINGLE_GC_OBJ && PTHREAD_START_STANDALONE] (AM_CPPFLAGS): Add -DGC_PTHREAD_START_STANDALONE. * Makefile.am [SINGLE_GC_OBJ && PTHREAD_START_STANDALONE] (libgc_la_SOURCES): Add pthread_start.c entry. * Makefile.am: Add bank lines (to improve readability). * configure.ac [*-*-*linux*]: Add AM_CONDITIONAL(PTHREAD_START_STANDALONE).
* Do not compile pcr_interface.c and real_malloc.c except by PCR-MakefileIvan Maidanski2017-06-081-2/+2
| | | | | | | | | | These .c files are empty compilation units for targets other than PCR. * Makefile.am (libgc_la_SOURCES): Remove pcr_interface.c, real_malloc.c. * Makefile.direct (CSRCS): Likewise. * Makefile.am (EXTRA_DIST): Add pcr_interface.c, real_malloc.c. * SMakefile.amiga (OBJS): Remove real_malloc.o. * SMakefile.amiga (real_malloc.o): Remove.
* Support configure --disable-thread-local-alloc option (similar for CMake)Ivan Maidanski2017-06-081-2/+6
| | | | | | | | | | | | | | | | | | * CMakeLists.txt (enable_thread_local_alloc): New option (on by default). * CMakeLists.txt [CMAKE_USE_PTHREADS_INIT || CMAKE_USE_WIN32_THREADS_INIT] (SRC): Add thread_local_alloc.c only if enable_thread_local_alloc. * CMakeLists.txt [CMAKE_USE_PTHREADS_INIT || CMAKE_USE_WIN32_THREADS_INIT]: Define THREAD_LOCAL_ALLOC macro only if enable_thread_local_alloc. * Makefile.am (libgc_la_SOURCES): Add thread_local_alloc.c only if THREAD_LOCAL_ALLOC. * configure.ac (thread-local-alloc): New option. * configure.ac: AC_DEFINE(THREAD_LOCAL_ALLOC) only if enable_thread_local_alloc is yes or unset. * configure.ac (THREAD_LOCAL_ALLOC): New AM_CONDITIONAL.
* Remove 'dist' target from Makefile.directIvan Maidanski2017-05-121-3/+2
| | | | | | | | | | | | | | Distribution tarballs are now created using autotools-based Makefile. * Makefile.am (EXTRA_DIST): Remove tools/add_gc_prefix.c, tools/gcname.c items. * Makefile.direct (SRCS): Likewise. * Makefile.direct (DOC_FILES, TESTS, GNU_BUILD_FILES, OTHER_MAKEFILES, OTHER_FILES): Remove variable. * Makefile.direct (add_gc_prefix, gcname, dist, gc.tar, gc.tar.Z, gc.tar.gz): Remove target. * tools/add_gc_prefix.c: Remove. * tools/gcname.c: Likewise.
* Compile thread_local_alloc only if multi-threaded build (Makefile.am)Ivan Maidanski2017-05-051-3/+3
| | | | | | * Makefile.am (libgc_la_SOURCES): Remove thread_local_alloc.c. * Makefile.am [WIN32_THREADS || PTHREADS] (libgc_la_SOURCES): Add thread_local_alloc.c.
* Update EXTRA_DIST in Makefile, Win32/64 docs after NT_*_MAKEFILE removalIvan Maidanski2017-04-271-2/+1
| | | | | | | | | | | | | | (fix commit 8312098) * Makefile.am (EXTRA_DIST): Remove NT_STATIC_THREADS_MAKEFILE, NT_X64_STATIC_THREADS_MAKEFILE, NT_X64_THREADS_MAKEFILE. * Makefile.direct (OTHER_MAKEFILES): Likewise. * doc/README.win32 (Threads): Do not refer to NT_THREADS_MAKEFILE; replace NT_STATIC_THREADS_MAKEFILE to NT_MAKEFILE. * doc/README.win64: Replace NT_X64_STATIC_THREADS_MAKEFILE and NT_X64_THREADS_MAKEFILE to NT_MAKEFILE; update documentation accordingly; update note about Test_cpp failures; update note about suppressed warnings.
* Remove EMX_MAKEFILE (add EMX support to Makefile.direct)Ivan Maidanski2017-03-231-1/+1
| | | | | | | | | | | | | * EMX_MAKEFILE: Remove. * Makefile.am (EXTRA_DIST): Remove EMX_MAKEFILE entity. * Makefile.direct (OTHER_MAKEFILES): Likewise. * Makefile.direct (CC, RANLIB): Add comment for EMX target. * Makefile.direct (EXEEXT): New variable (empty by default). * Makefile.direct (UTILS, all, cords, test_cpp, check-cpp, c++-t, dyn_test, cord/cordtest, cord/de, if_mach, threadlibs, if_not_there, gctest, setjmp_test, check): Add $(EXEEXT) suffix to if_mach, if_not_there, threadlibs, gctest, cord/cordtest, test_cpp, cord/de, setjmp_test.
* Update shared libraries version info to differentiate against v7.6Ivan Maidanski2017-03-021-2/+2
| | | | | | | | | | | | | | | There are no API/implementation changes in libcord and libgccpp against release-7_6 for now, so the corresponding version info is made the same. There some implementation changes in libgc (without API changes) against release-7_6, so the version info is made not the same (although there are no API changes, 4:x:2 is already in use/reserved for release-7_6). * Makefile.am (LIBGC_VER_INFO): Change version info to 5:0:3 (release-7_6 is supposed to use 4:x:2). * Makefile.am (LIBGCCPP_VER_INFO): Change version info to 4:0:3 (the same one as release-7_6 uses at present). * cord/cord.am (LIBCORD_VER_INFO): Likewise.
* Move libraries version info to the beginning of Makefile.amIvan Maidanski2017-03-011-2/+9
| | | | | | | | | | | (code refactoring) * Makefile.am (LIBGC_VER_INFO, LIBGCCPP_VER_INFO): New variable; add comment about the version update rule. * cord/cord.am (LIBCORD_VER_INFO): Likewise. * Makefile.am (libgc_la_LDFLAGS, libgccpp_la_LDFLAGS): Use LIBGC[CPP]_VER_INFO instead the direct hard-coding of version info. * cord/cord.am (libcord_la_LDFLAGS): Likewise.
* Fix typo in Makefile.am commentIvan Maidanski2017-02-151-1/+1
| | | | * Makefile.am (SUBDIRS): Fix typo in comment ("to be").
* Support CFLAGS_EXTRA to pass extra user-defined compiler flags (configure)Ivan Maidanski2016-12-091-0/+3
| | | | | * Makefile.am (CFLAGS, CXXFLAGS): Append $(CFLAGS_EXTRA). * configure.ac: Add AC_SUBST(CFLAGS_EXTRA).
* Remove reference to deleted TODO file from MakefileIvan Maidanski2016-05-251-1/+1
| | | | | | | (fix commit f511a85) * Makefile.am (EXTRA_DIST): Remove "TODO" file. * Makefile.direct (DOC_FILES): Likewise.
* Add build system plumbing for building with -Werror.Alex Ronne Petersen2015-05-171-1/+1
| | | | | | | | | | | * Makefile.am (AM_CFLAGS): Add $(WERROR_CFLAGS). * configure.ac (WERROR_CFLAGS): Define based on --enable-werror new configure option value. Conflicts: Makefile.am configure.ac
* Revert "Move asm machine-dependent files to 'src' folder" (partly)Ivan Maidanski2015-02-271-2/+2
| | | | | | | | | | | | | | | Asm files moved back to base folder to avoid build issues (reported for NetBSD and Solaris on Sparc). Alternative way is to adjust configure.ac and Makefile.am properly but it requires more efforts (including testing). * .gitignore: Remove "src" from comment. * Makefile.am (EXTRA_libgc_la_SOURCES): Remove "src/" prefix. * Makefile.direct (SRCS, mach_dep.o): Likewise. * src/ia64_save_regs_in_stack.s: Move to base folder. * src/sparc_mach_dep.S: Likewise. * src/sparc_netbsd_mach_dep.s: Likewise. * src/sparc_sunos4_mach_dep.s: Likewise.
* Remove Makefile.dj (and README.dj) in favor of configure (DJGPP)Ivan Maidanski2014-06-191-2/+1
| | | | | | | | | | * Makefile.am (EXTRA_DIST): Remove Makefile.dj entry. * Makefile.direct (OTHER_MAKEFILES): Likewise. * Makefile.direct (DOC_FILES): Remove doc/README.dj entry. * doc/doc.am (dist_pkgdata_DATA): Likewise. * Makefile.dj: Remove file ("configure" is to be used to build libgc, no special options needed). * doc/README.dj: Likewise.
* Remove build_atomic_ops.shIvan Maidanski2014-06-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | * Makefile.am (EXTRA_DIST): Remove build_atomic_ops.sh, build_atomic_ops.sh.cygwin entries. * Makefile.direct (OTHER_MAKEFILES): Likewise. * Makefile.direct (AO_SRC_DIR): Update comment. * Makefile.direct (AO_INSTALL_DIR): Remove variable. * Makefile.direct (CFLAGS_EXTRA): New variable (empty by default). * Makefile.direct (CFLAGS, SPECIALCFLAGS): Replace "$(AO_INSTALL_DIR)/include" with "$(AO_SRC_DIR)/src" include folder. * Makefile.direct (CFLAGS): Add $(CFLAGS_EXTRA). * Makefile.direct (OBJS): Add atomic_ops.o, atomic_ops_sysdeps.o entries. * Makefile.direct (AO_INSTALL_DIR): Remove rule (build essential .o files of libatomic_ops directly instead of configure and make). * Makefile.direct (atomic_ops.o, atomic_ops_sysdeps.o): Add rule. * Makefile.direct (tests/test.o, setjmp_test): Remove dependency on $(AO_INSTALL_DIR). * Makefile.direct (gc.a): Do not copy contents of libatomic_ops.a to gc.a. * Makefile.direct (sunos5gc.so): Do not link with libatomic_ops.a. * Makefile.direct (gc.tar): Do not make libatomic_ops. * build_atomic_ops.sh: Remove file. * build_atomic_ops.sh.cygwin: Likewise.
* Fix 'illegal option -xassembler-with-cpp' error (Oracle SunCC)Ivan Maidanski2014-06-101-4/+2
| | | | | | | | | | * Makefile.am (ASM_CPP_OPTIONS): Move comment to configure.ac. * Makefile.am (COMPILER_XLC): Rename to ASM_WITH_CPP_UNSUPPORTED. * configure.ac (COMPILER_XLC): Likewise. * configure.ac (compiler_suncc): New variable (set to "yes" if Solaris Sun C compiler). * configure.ac (ASM_WITH_CPP_UNSUPPORTED): Define not only for compiler_xlc but also for compiler_suncc.
* Do not compile backgraph.c unless configure '--enable-gc-debug'Ivan Maidanski2012-04-091-1/+5
| | | | | | | * Makefile.am (libgc_la_SOURCES): Exclude "backgraph" entry from unconditional list; add this entry only if MAKE_BACK_GRAPH. * configure.ac (MAKE_BACK_GRAPH): New AM conditional (defined only if enable_gc_debug explicitly set to yes).
* Move Symbian data-roots-related files to 'extra/symbian' folderIvan Maidanski2012-03-221-2/+2
| | | | | | | | * extra/init_global_static_roots.cpp: Move to "extra/symbian" folder. * extra/global_start.cpp: Likewise. * extra/global_end.cpp: Likewise. * Makefile.am (EXTRA_DIST): Update references to moved Symbian files. * Makefile.direct (OTHER_MAKEFILES): Likewise.
* Move 'Mac_files' folder to 'extra' oneIvan Maidanski2012-03-221-1/+2
| | | | | | | | * Mac_files: Move to "extra" folder. * Makefile.am (EXTRA_DIST): Update references to Mac_files. * Makefile.direct (OTHER_MAKEFILES): Likewise. * Makefile.dj (OTHER_MAKEFILES): Likewise. * doc/README.Mac: Update reference to MacOS_config.h file.
* Makefile: add Symbian build script files to packageIvan Maidanski2012-03-211-0/+1
| | | | | * Makefile.am (EXTRA_DIST): Add Symbian build/s60v3 script files. * Makefile.direct (OTHER_FILES): Likewise.
* Makefile: add Symbian-specific source and README filesIvan Maidanski2012-03-191-0/+2
| | | | | | | * Makefile.am (EXTRA_DIST): Add Symbian C++ files from "extra" folder. * Makefile.direct (OTHER_MAKEFILES): Likewise. * Makefile.direct (DOC_FILES): Add Symbian README file. * doc/doc.am (dist_pkgdata_DATA): Likewise.
* Remove unused SILENT macro; remove duplicate MacOS_Test_config.h fileIvan Maidanski2011-12-281-2/+1
| | | | | | | | | | | | | * Mac_files/MacOS_Test_config.h: Remove. * Mac_files/MacOS_config.h: Expand tabs to spaces. * Mac_files/MacOS_config.h (SILENT): Remove unused macro. * windows-untested/stdafx.h (SILENT): Likewise. * Mac_files/MacOS_config.h: Remove GC tuning macros description. * Makefile.am (EXTRA_DIST): Remove MacOS_Test_config.h entry. * Makefile.direct (OTHER_FILES): Likewise. * Makefile.dj (OTHER_FILES): Likewise. * doc/README.Mac: Update (remove info about MacOS_Test_config.h and SILENT macro).
* Fix configure --enable-cplusplus make installIvan Maidanski2011-12-281-1/+2
| | | | | | | | | | | * Makefile.am (pkginclude_HEADERS): Remove gc_allocator.h entry. * Makefile.am (include_HEADERS): Add include/extra/gc_cpp.h entry (only if CPLUSPLUS). * include/include.am (pkginclude_HEADERS): Remove include/gc_cpp.h entry. * include/include.am (include_HEADERS): Remove include/extra/gc_cpp.h entry.
* configure: do not compile pthread_stop_world.c for Cygwin/DarwinIvan Maidanski2011-12-281-6/+7
| | | | | | | | (to reduce linker warnings about empty object files) * Makefile.am (libgc_la_SOURCES): Do not add pthread_start.c, pthread_support.c, pthread_stop_world.c entries for Cygwin and win32-pthread; do not add pthread_stop_world.c entry for Darwin.
* Add configure option to compile all library .c files into single gc.oIvan Maidanski2011-12-151-1/+7
| | | | | | | | | | | * Makefile.am (SINGLE_GC_OBJ): Test new AM conditional. * Makefile.am (libgc_la_SOURCES): Put only extra/gc.c entry here if SINGLE_GC_OBJ. * Makefile.am (EXTRA_DIST): Add extra/gc.c only if not SINGLE_GC_OBJ. * configure.ac (single-obj-compilation): New AC "enable" argument (turning on compilation of single extra/gc.c file instead of all .c files from GC base folder). * configure.ac (SINGLE_GC_OBJ): New AM conditional.
* configure: Move 'mach_dep' file processing logic to Makefile.amIvan Maidanski2011-12-151-5/+4
| | | | | | | | * Makefile.am (libgc_la_SOURCES): Add "mach_dep.c"; order entries lexicographically. * Makefile.am (EXTRA_DIST): Remove "mach_dep.c" entry. * configure.ac (machdep): Do not add "mach_dep.lo" entry; remove empty case block; merge similar case blocks (for "sparc_mach_dep.lo").
* Rename (shorten name of) finalized_mlc.c to fnlz_mlc.c fileIvan Maidanski2011-11-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * finalized_mlc.c: Rename to fnlz_mlc.c file. * BCC_MAKEFILE (XXXOBJS): Rename "finalized_mlc" to "fnlz_mlc". * EMX_MAKEFILE (OBJS): Likewise. * Makefile.am (libgc_la_SOURCES): Likewise. * Makefile.direct (OBJS, CSRCS): Likewise. * Makefile.dj (OBJS, CSRCS): Likewise. * NT_MAKEFILE (OBJS): Likewise. * NT_STATIC_THREADS_MAKEFILE (OBJS): Likewise. * NT_X64_STATIC_THREADS_MAKEFILE (OBJS): Likewise. * NT_X64_THREADS_MAKEFILE (OBJS): Likewise. * OS2_MAKEFILE (OBJS): Likewise. * PCR-Makefile (COBJ, CSRC): Likewise. * SMakefile.amiga (OBJS, finalized_mlc.o): Likewise. * WCC_MAKEFILE (OBJS): Likewise. * digimars.mak (OBJS, finalized_mlc.o): Likewise. * extra/gc.c: Likewise. * gc.mak: Likewise. * thread_local_alloc.c: Likewise. * windows-untested/vc60/gc.dsp (SOURCE): Likewise. * windows-untested/vc60/libgc.dsp (SOURCE): Likewise. * windows-untested/vc70/gc.vcproj: Likewise. * windows-untested/vc70/libgc.vcproj: Likewise. * windows-untested/vc70/libgcmt.vcproj: Likewise. * windows-untested/vc71/gc.vcproj: Likewise. * windows-untested/vc71/libgc.vcproj: Likewise. * windows-untested/vc71/libgcmt.vcproj: Likewise.
* Fix issues proposed in Ivan's previous commit, etc.Petter Urkedal2011-09-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | * disclaim.c -> {finalized_mlc.c, misc.c}: Move low-level code to misc.c and the finalized object-kind to finalized_mlc.c. * Makefile.am: Update accordingly. * reclaim.c: Condition #include "gc_disclaim.h" and remove "register". * include/gc_disclaim.h, include/private/gc_priv.h, finalized_mlc.c, misc.c: Add GC_API, GC_CALL, and GC_CALLBACK. Use typedefs for function pointers. * tests/disclaim_test.c, tests/disclaim_bench.c: Fix portability and other issues. * include/gc_disclaim.h: Forward declare ... * finalized_mlc.c: ... and export GC_finalized_objfreelist. * thread_local_alloc.c (GC_destroy_thread_local): Return finalized freelists though the same global. * include/private/thread_local_alloc.h: Tweak (move array above comment). * Makefile.dj, NT_MAKEFILE, NT_STATIC_THREADS_MAKEFILE, NT_X64_STATIC_THREADS_MAKEFILE, NT_X64_THREADS_MAKEFILE, gc.mak, windows-untested/vc60/gc.dsp, windows-untested/vc70/gc.vcproj, windows-untested/vc71/gc.vcproj: Add include/gc_disclaim.h to various build systems. (Untested.)
* Add disclaim callbacks for efficient finalization.Petter Urkedal2011-09-301-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Importing gc-20070403-disclaim-1.0.patch. * configure.ac: Add --disable-disclaim option and set ENABLE_DISCLAIM macro and conditional accordingly. * include/include.am, Makefile.am Add sources disclaim.c and include/gc_disclaim.h. * Makefile.direct: Ditto and define ENABLE_DISCLAIM. * include/private/gc_priv.h (obj_kind): Add ok_mark_unconditionally, ok_disclaim_proc and ok_disclaim_cd. * misc.c (GC_new_kind_inner): Initialize them. * include/private/gc_priv.h (hblkhdr): Add HAS_DISCLAIM and MARK_UNCONDITIONALLY flags. * allchblk.c (setup_header): Set HAS_DISCLAIM and MARK_UNCONDITIONALLY flags as indicated by the object kind. * reclaim.c: Main adjustments to support the disclaim callbacks. * mark.c (GC_push_unconditionally, GC_push_next_marked_uncollecable): Unconditionally mark from objects in blocks flagged MARK_UNCONDITIONALLY. This preserves links reachable from the finalizer when using the the finalized object kind. * disclaim.c: Add file with support functions for disclaim callbacks and implementation of the "finalized" object kind. * include/gc_disclaim.h: Add file providing the corresponding API. * include/private/thread_local_alloc.h (thread_local_freelists): Add finalized_freelists. * thread_local_alloc.c: Initialize them. * tests/tests.am, tests/disclaim_test.c, tests/disclaim_bench.c: Add disclaim-related tests.
* Remove obsolete Makefile.DLL (superseded by cygwin/mingw configure)Ivan Maidanski2011-09-221-1/+1
| | | | | | | | * Makefile.DLL: Remove. * Makefile.am (EXTRA_DIST): Remove Makefile.DLL entry. * Makefile.direct (OTHER_MAKEFILES): Likewise. * Makefile.dj (OTHER_FILES): Likewise. * Makefile.direct: Remove comment about Makefile.DLL.
* Move and rename "callprocs" utility to tools/callprocs.sh.Ivan Maidanski2011-09-141-4/+1
| | | | | | | | | | | | | * callprocs: Move/rename to tools/callprocs.sh. * Makefile.am (dist_noinst_SCRIPTS): Remove. * Makefile.am (EXTRA_DIST): Add tools/callprocs.sh (move from dist_noinst_SCRIPTS). * Makefile.direct (OTHER_FILES): Rename callprocs to tools/callprocs.sh. * Makefile.dj (OTHER_FILES): Likewise. * README: Likewise. * doc/leak.html: Likewise. * README: Fix a typo.
* Delete configure.host (move its content to configure.ac).Ivan Maidanski2011-09-141-7/+2
| | | | | | | | | * Makefile.am (dist_noinst_SCRIPTS): Remove configure.host. * Makefile.direct (GNU_BUILD_FILES): Likewise. * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Remove. * configure.ac: Put the content of configure.host instead of including it. * configure.host: Remove file.
* Move asm machine-dependent files to "src" folder.Ivan Maidanski2011-08-251-2/+2
| | | | | | | | | | | | | | * .gitignore: Add entries from "src" folder; add auto-generated files by CMake; allow a suffix for "libatomic_ops" folder. * Makefile.direct (SRCS, mach_dep.o): Move sparc_mach_dep.S, sparc_sunos4_mach_dep.s, sparc_netbsd_mach_dep.s, ia64_save_regs_in_stack.s to "src" directory. * Makefile.dj (SRCS): Ditto. * configure.ac (machdep): Move sparc_mach_dep.lo, sparc_netbsd_mach_dep.lo, ia64_save_regs_in_stack.lo to "src" folder. * PCR-Makefile (mach_dep.o): Remove "if_mach" statement for MIPS. * PCR-Makefile (if_mach, if_not_there): Remove rules. * gc.mak (CPP_PROJ): Prefix libatomic_ops folder with "./".
* Move build tools sources from "extra" to "tools" folder.Ivan Maidanski2011-08-251-3/+3
| | | | | | | | | | | | | | | | * EMX_MAKEFILE (setjmp_test): Move setjmp_t.c to "tools" folder. * Makefile.am (EXTRA_DIST): Move add_gc_prefix.c, gcname.c, if_mach.c, if_not_there.c, setjmp_t.c and threadlibs.c to "tools" folder. * Makefile.direct (SRCS, OTHER_FILES, if_mach, threadlibs, if_not_there, setjmp_test, add_gc_prefix, gcname): Ditto. * Makefile.dj (SRCS, OTHER_FILES, if_mach, threadlibs, if_not_there, setjmp_test, add_gc_prefix): Ditto. * PCR-Makefile (if_mach, if_not_there): Ditto. * SMakefile.amiga (setjmp_t): Ditto. * doc/simple_example.html: Change folder name for threadlibs.c file. * EMX_MAKEFILE: Remove trailing spaces at EOLn. * SMakefile.amiga: Ditto.
* Remove information about the authors from the source files.Ivan Maidanski2011-08-251-15/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (This information could be observed via "git log" or by looking into the original version of a file.) * Makefile.am: Remove original-author and modified-by information (as well as a time-stamp) from the file header. * configure.ac: Ditto. * cord/cordbscs.c: Ditto. * cord/cordprnt.c: Ditto. * cord/cordxtra.c: Ditto. * cord/de.c: Ditto. * cord/de_cmds.h: Ditto. * cord/de_win.h: Ditto. * doc/README.arm.cross: Ditto. * doc/doc.am: Ditto. * dyn_load.c: Ditto. * gc_cpp.cc: Ditto. * gc_dlopen.c: Ditto. * include/cord.h: Ditto. * include/include.am: Ditto. * include/private/cord_pos.h: Ditto. * include/private/gc_hdrs.h: Ditto. * include/weakpointer.h: Ditto. * m4/gc_set_version.m4: Ditto. * tests/test_cpp.cc: Ditto. * cord/cordprnt.c: Fix a typo in a comment. * AUTHORS: Add authors. * cord/cordprnt.c: Expand all tabs to spaces; remove trailing spaces at EOLn. * cord/de.c: Ditto. * cord/de_cmds.h: Ditto. * cord/de_win.c: Ditto. * cord/de_win.h: Ditto. * doc/README.arm.cross: Ditto. * include/private/cord_pos.h: Ditto. * include/weakpointer.h: Ditto. * m4/gc_set_version.m4: Ditto.
* Remove binary project file for old Macintosh.Ivan Maidanski2011-08-241-3/+2
| | | | | | | * MacProjects.sit.hqx: Remove. * Makefile.am (EXTRA_DIST): Remove MacProjects.sit.hqx. * Makefile.direct (OTHER_FILES): Ditto. * Makefile.dj (OTHER_FILES): Ditto.