From: Ivan Maidanski Date: Sun, 17 Nov 2013 09:40:36 +0000 (+0400) Subject: Bump version to 7.4.0; change policy regarding version numbers X-Git-Tag: gc7_4_0^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4c4054f156d264a2c657b7fee24c85e0142f9091;p=platform%2Fupstream%2Flibgc.git Bump version to 7.4.0; change policy regarding version numbers * ChangeLog: Update. * README.md: Bump version. * configure.ac (AC_INIT): Likewise. * include/gc_version.h (GC_TMP_VERSION_MINOR): Likewise. * alloc.c (GC_version, GC_get_version): Replace GC_TMP_ALPHA_VERSION with GC_VERSION_MICRO. * doc/debugging.html: Remove comment about "alpha" versions. * doc/overview.html: Likewise. * include/gc.h (GC_get_version): Update comment. * include/gc_version.h (GC_NOT_ALPHA): Remove. * include/gc_version.h (GC_TMP_ALPHA_VERSION): Replace with GC_TMP_VERSION_MICRO; add comment about policy. * m4/gc_set_version.m4 (GC_ALPHA_VERSION): Replace with GC_VERSION_MICRO; update comments; adjust version format test. * tests/test.c (GC_ALPHA_VERSION): Remove. * tools/add_gc_prefix.c (GC_ALPHA_VERSION): Likewise. * tools/gcname.c (GC_ALPHA_VERSION): Likewise. * tests/test.c (CHECH_GCLIB_VERSION): Replace GC_ALPHA_VERSION with GC_VERSION_MICRO. * tools/add_gc_prefix.c (main): Replace "gc%d.%d[alpha%d]" print format with "gc-%d.%d.%d" one. * tools/gcname.c (main): Likewise. * windows-untested/gc.ver (_BETA, GC_VERSION_MICRO): Remove. --- diff --git a/ChangeLog b/ChangeLog index 5e9dfd7..24483ed 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,5 @@ -== [7.3alpha4] (development) == +== [7.4.0] 2013-11-17 == * Add 'bytes reclaimed' counters to public GC_prof_stats_s. * Add AArch64 (64-bit ARM) target support. @@ -33,6 +33,7 @@ * Better document GC_warn_proc in gc.h. * Call GC_on_abort (with NULL argument) on exit(1). * Call GC_stats/verbose_log_printf instead of GC_log_printf if print_stats. +* Change policy regarding version numbers ("micro" part instead of "alpha"). * Changed C99-style designated init of GC_dl_hashtbl struct to use C89-style. * Check GC_base result in GC_print_all_smashed_proc. * Check that SIG_SUSPEND and SIG_THR_RESTART are different (Pthreads). diff --git a/README.md b/README.md index c87b7d1..cada89a 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Boehm-Demers-Weiser Garbage Collector -This is version 7.3alpha3 of a conservative garbage collector for C and C++. +This is version 7.4.0 of a conservative garbage collector for C and C++. You might find a more recent version [here](http://www.hpl.hp.com/personal/Hans_Boehm/gc). diff --git a/alloc.c b/alloc.c index c8623dc..b9039e0 100644 --- a/alloc.c +++ b/alloc.c @@ -99,13 +99,13 @@ char * const GC_copyright[] = /* gc.h, which is included by gc_priv.h. */ #ifndef GC_NO_VERSION_VAR const unsigned GC_version = ((GC_VERSION_MAJOR << 16) | - (GC_VERSION_MINOR << 8) | GC_TMP_ALPHA_VERSION); + (GC_VERSION_MINOR << 8) | GC_VERSION_MICRO); #endif GC_API unsigned GC_CALL GC_get_version(void) { return (GC_VERSION_MAJOR << 16) | (GC_VERSION_MINOR << 8) | - GC_TMP_ALPHA_VERSION; + GC_VERSION_MICRO; } /* some more variables */ diff --git a/configure.ac b/configure.ac index 031b129..2e9afca 100644 --- a/configure.ac +++ b/configure.ac @@ -12,8 +12,8 @@ dnl Process this file with autoconf to produce configure. # Initialization -AC_INIT(gc,7.3alpha3,gc@linux.hpl.hp.com) - ## version must conform to [0-9]+[.][0-9]+(alpha[0-9]+)? +AC_INIT(gc,7.4.0,gc@linux.hpl.hp.com) + ## version must conform to [0-9]+[.][0-9]+[.][0-9]+ AC_CONFIG_SRCDIR(gcj_mlc.c) AC_CONFIG_MACRO_DIR([m4]) AC_CANONICAL_TARGET diff --git a/doc/debugging.html b/doc/debugging.html index 158e4fa..241875c 100644 --- a/doc/debugging.html +++ b/doc/debugging.html @@ -13,8 +13,7 @@ It applies both to debugging issues in client code that manifest themselves as collector misbehavior, and to debugging the collector itself.

If you suspect a bug in the collector itself, it is strongly recommended -that you try the latest collector release, even if it is labelled as "alpha", -before proceeding. +that you try the latest collector release before proceeding.

Bus Errors and Segmentation Violations

If the fault occurred in GC_find_limit, or with incremental collection enabled, diff --git a/doc/overview.html b/doc/overview.html index 6754a3c..6ea9f2e 100644 --- a/doc/overview.html +++ b/doc/overview.html @@ -46,7 +46,7 @@ just prefer the simple collector interface. For a more detailed description of the interface, see here.

-Alternatively, the garbage collector may be used as +Alternatively, the garbage collector may be used as a leak detector for C or C++ programs, though that is not its primary goal.

@@ -60,8 +60,6 @@ in gc_source/. Later versions may contain additional features, platform support, or bug fixes, but are likely to be less well tested. -Note that versions containing the letters alpha are even less -well tested than others, especially on non-HP platforms.

A slightly older version of the garbage collector is now also included as part of the diff --git a/include/gc.h b/include/gc.h index a3a13b9..ca82fd1 100644 --- a/include/gc.h +++ b/include/gc.h @@ -67,7 +67,7 @@ typedef void * GC_PTR; /* preserved only for backward compatibility */ #endif /* Get the GC library version. The returned value is a constant in the */ -/* form: ((version_major<<16) | (version_minor<<8) | alpha_version). */ +/* form: ((version_major<<16) | (version_minor<<8) | version_micro). */ GC_API unsigned GC_CALL GC_get_version(void); /* Public read-only variables */ diff --git a/include/gc_version.h b/include/gc_version.h index 38afc0f..5551f04 100644 --- a/include/gc_version.h +++ b/include/gc_version.h @@ -18,28 +18,30 @@ /* This should never be included directly; it is included only from gc.h. */ #if defined(GC_H) +/* The policy regarding version numbers: development code has odd */ +/* "minor" number (and "micro" part is 0); when development is finished */ +/* and a release is prepared, "minor" number is incremented (keeping */ +/* "micro" number still zero), whenever a defect is fixed a new release */ +/* is prepared incrementing "micro" part to odd value (the most stable */ +/* release has the biggest "micro" number). */ + /* The version here should match that in configure/configure.ac */ /* Eventually this one may become unnecessary. For now we need */ /* it to keep the old-style build process working. */ #define GC_TMP_VERSION_MAJOR 7 -#define GC_TMP_VERSION_MINOR 3 -#define GC_TMP_ALPHA_VERSION 3 /* 7.3alpha3 */ - -#ifndef GC_NOT_ALPHA -# define GC_NOT_ALPHA 0xff -#endif +#define GC_TMP_VERSION_MINOR 4 +#define GC_TMP_VERSION_MICRO 0 /* 7.4.0 */ #ifdef GC_VERSION_MAJOR # if GC_TMP_VERSION_MAJOR != GC_VERSION_MAJOR \ || GC_TMP_VERSION_MINOR != GC_VERSION_MINOR \ - || defined(GC_ALPHA_VERSION) != (GC_TMP_ALPHA_VERSION != GC_NOT_ALPHA) \ - || (defined(GC_ALPHA_VERSION) && GC_TMP_ALPHA_VERSION != GC_ALPHA_VERSION) -# error Inconsistent version info. Check README, include/gc_version.h and configure.ac. + || GC_TMP_VERSION_MICRO != GC_VERSION_MICRO +# error Inconsistent version info. Check README.md, include/gc_version.h and configure.ac. # endif #else # define GC_VERSION_MAJOR GC_TMP_VERSION_MAJOR # define GC_VERSION_MINOR GC_TMP_VERSION_MINOR -# define GC_ALPHA_VERSION GC_TMP_ALPHA_VERSION +# define GC_VERSION_MICRO GC_TMP_VERSION_MICRO #endif /* !GC_VERSION_MAJOR */ #endif diff --git a/m4/gc_set_version.m4 b/m4/gc_set_version.m4 index e805a7a..465e4f0 100644 --- a/m4/gc_set_version.m4 +++ b/m4/gc_set_version.m4 @@ -9,26 +9,19 @@ # modified is included with the above copyright notice. # GC_SET_VERSION -# sets and AC_DEFINEs GC_VERSION_MAJOR, GC_VERSION_MINOR and GC_ALPHA_VERSION +# sets and AC_DEFINEs GC_VERSION_MAJOR, GC_VERSION_MINOR and GC_VERSION_MICRO # based on the contents of PACKAGE_VERSION; PACKAGE_VERSION must conform to -# [0-9]+[.][0-9]+(alpha[0.9]+)? -# in lex syntax; if there is no alpha number, GC_ALPHA_VERSION is empty +# [0-9]+[.][0-9]+[.][0-9]+ # AC_DEFUN([GC_SET_VERSION], [ AC_MSG_CHECKING(GC version numbers) GC_VERSION_MAJOR=`echo $PACKAGE_VERSION | sed 's/^\([[0-9]][[0-9]]*\)[[.]].*$/\1/g'` GC_VERSION_MINOR=`echo $PACKAGE_VERSION | sed 's/^[[^.]]*[[.]]\([[0-9]][[0-9]]*\).*$/\1/g'` - GC_ALPHA_VERSION=`echo $PACKAGE_VERSION | sed 's/^[[^.]]*[[.]][[0-9]]*//'` - - case "$GC_ALPHA_VERSION" in - alpha*) - GC_ALPHA_VERSION=`echo $GC_ALPHA_VERSION \ - | sed 's/alpha\([[0-9]][[0-9]]*\)/\1/'` ;; - *) GC_ALPHA_MAJOR='' ;; - esac + GC_VERSION_MICRO=`echo $PACKAGE_VERSION | sed 's/^[[^.]]*[[.]][[^.]]*[[.]]\([[0-9]][[0-9]]*\)$/\1/g'` if test :$GC_VERSION_MAJOR: = :: \ - -o :$GC_VERSION_MINOR: = :: ; + -o :$GC_VERSION_MINOR: = :: \ + -o :$GC_VERSION_MICRO: = :: ; then AC_MSG_RESULT(invalid) AC_MSG_ERROR([nonconforming PACKAGE_VERSION='$PACKAGE_VERSION']) @@ -38,12 +31,10 @@ AC_DEFUN([GC_SET_VERSION], [ [The major version number of this GC release.]) AC_DEFINE_UNQUOTED([GC_VERSION_MINOR], $GC_VERSION_MINOR, [The minor version number of this GC release.]) - if test :$GC_ALPHA_VERSION: != :: ; then - AC_DEFINE_UNQUOTED([GC_ALPHA_VERSION], $GC_ALPHA_VERSION, - [The alpha version number, if applicable.]) - fi + AC_DEFINE_UNQUOTED([GC_VERSION_MICRO], $GC_VERSION_MICRO, + [The micro version number of this GC release.]) AC_MSG_RESULT(major=$GC_VERSION_MAJOR minor=$GC_VERSION_MINOR \ -${GC_ALPHA_VERSION:+alpha=}$GC_ALPHA_VERSION) + micro=$GC_VERSION_MICRO) ]) sinclude(libtool.m4) diff --git a/tests/test.c b/tests/test.c index 12baa94..34c6307 100644 --- a/tests/test.c +++ b/tests/test.c @@ -116,14 +116,10 @@ # include -#ifndef GC_ALPHA_VERSION -# define GC_ALPHA_VERSION GC_TMP_ALPHA_VERSION -#endif - #define CHECH_GCLIB_VERSION \ if (GC_get_version() != ((GC_VERSION_MAJOR<<16) \ | (GC_VERSION_MINOR<<8) \ - | GC_ALPHA_VERSION)) { \ + | GC_VERSION_MICRO)) { \ GC_printf("libgc version mismatch\n"); \ exit(1); \ } diff --git a/tools/add_gc_prefix.c b/tools/add_gc_prefix.c index 8369d68..60afa5f 100644 --- a/tools/add_gc_prefix.c +++ b/tools/add_gc_prefix.c @@ -1,21 +1,13 @@ # include # include -#ifndef GC_ALPHA_VERSION -# define GC_ALPHA_VERSION GC_TMP_ALPHA_VERSION -#endif - int main(int argc, char ** argv) { int i; for (i = 1; i < argc; i++) { - if (GC_ALPHA_VERSION == GC_NOT_ALPHA) { - printf("gc%d.%d/%s ", GC_VERSION_MAJOR, GC_VERSION_MINOR, argv[i]); - } else { - printf("gc%d.%dalpha%d/%s ", GC_VERSION_MAJOR, - GC_VERSION_MINOR, GC_ALPHA_VERSION, argv[i]); - } + printf("gc-%d.%d.%d/%s ", + GC_VERSION_MAJOR, GC_VERSION_MINOR, GC_VERSION_MICRO, argv[i]); } return(0); } diff --git a/tools/gcname.c b/tools/gcname.c index 74be553..b9f3364 100644 --- a/tools/gcname.c +++ b/tools/gcname.c @@ -1,17 +1,9 @@ #include #include -#ifndef GC_ALPHA_VERSION -# define GC_ALPHA_VERSION GC_TMP_ALPHA_VERSION -#endif - int main(void) { - if (GC_ALPHA_VERSION == GC_NOT_ALPHA) { - printf("gc%d.%d", GC_VERSION_MAJOR, GC_VERSION_MINOR); - } else { - printf("gc%d.%dalpha%d", GC_VERSION_MAJOR, - GC_VERSION_MINOR, GC_ALPHA_VERSION); - } + printf("gc-%d.%d.%d", + GC_VERSION_MAJOR, GC_VERSION_MINOR, GC_VERSION_MICRO); return 0; } diff --git a/windows-untested/gc.ver b/windows-untested/gc.ver index e91c7b6..97920a2 100644 --- a/windows-untested/gc.ver +++ b/windows-untested/gc.ver @@ -3,11 +3,6 @@ #include "../include/../version.h" -#if GC_ALPHA_VERSION != GC_NOT_ALPHA -#define _BETA 1 -#endif - -#define GC_VERSION_MICRO GC_ALPHA_VERSION #define GC_VERSION_REVISION 0 #define GC_VERSION ((GC_VERSION_MAJOR) * 100 + GC_VERSION_MINOR)