Reformat comments in Cygwin's version.h, remove very outdated info
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
parent
308de2a1d4
commit
002c9b468d
@ -9,74 +9,44 @@ This software is a copyrighted work licensed under the terms of the
|
|||||||
Cygwin license. Please consult the file "CYGWIN_LICENSE" for
|
Cygwin license. Please consult the file "CYGWIN_LICENSE" for
|
||||||
details. */
|
details. */
|
||||||
|
|
||||||
/* Cygwin versioning is relatively complicated because of its status
|
/* The DLL major and minor numbers correspond to the "version of
|
||||||
as a shared library. Let's start with how versioning used to be done.
|
|
||||||
|
|
||||||
Historical versioning in Cygwin 16.0 to 19.5:
|
|
||||||
|
|
||||||
In the olden days of Cygwin, we had a dll major and minor version
|
|
||||||
and a registry version. The major number started at 16 because the
|
|
||||||
"b15" GNU-Win32 release of the compiler tools was out when this
|
|
||||||
scheme was started. We incremented the DLL name frequently (for
|
|
||||||
every official release) and towards the end of this period every
|
|
||||||
release used a different shared memory area to prevent DLLs from
|
|
||||||
interfering with each other (embedding a build timestamp into the
|
|
||||||
name of the shared memory area). This turned out to be a Bad Idea
|
|
||||||
(tm) because people needed to mingle separate releases and have
|
|
||||||
them work together more than we thought they would. This was
|
|
||||||
especially problematic when tty info needed to be retained when an
|
|
||||||
old Cygwin executable executed a newer one.
|
|
||||||
|
|
||||||
In the old scheme, we incremented the major number whenever a
|
|
||||||
change to the dll invalidated existing executables. This can
|
|
||||||
happen for a number of reasons, including when functions are
|
|
||||||
removed from the export list of the dll. The minor number was
|
|
||||||
incremented when a change was made that we wanted to record, but
|
|
||||||
that didn't invalidate existing executables. Both numbers were
|
|
||||||
recorded in the executable and in the dll.
|
|
||||||
|
|
||||||
In October 1998 (starting with Cygwin 19.6), we started a new method
|
|
||||||
of Cygwin versioning: */
|
|
||||||
|
|
||||||
/* The DLL major and minor numbers correspond to the "version of
|
|
||||||
the Cygwin shared library". This version is used to track important
|
the Cygwin shared library". This version is used to track important
|
||||||
changes to the DLL and is mainly informative in nature. */
|
changes to the DLL and is mainly informative in nature. */
|
||||||
|
|
||||||
#define CYGWIN_VERSION_DLL_MAJOR 2005
|
#define CYGWIN_VERSION_DLL_MAJOR 2005
|
||||||
#define CYGWIN_VERSION_DLL_MINOR 1
|
#define CYGWIN_VERSION_DLL_MINOR 1
|
||||||
|
|
||||||
/* Major numbers before CYGWIN_VERSION_DLL_EPOCH are
|
/* Major numbers before CYGWIN_VERSION_DLL_EPOCH are incompatible. */
|
||||||
incompatible. */
|
|
||||||
|
|
||||||
#define CYGWIN_VERSION_DLL_EPOCH 19
|
#define CYGWIN_VERSION_DLL_EPOCH 19
|
||||||
|
|
||||||
/* CYGWIN_VERSION_DLL_COMBINED gives us a single number
|
/* CYGWIN_VERSION_DLL_COMBINED gives us a single number representing the
|
||||||
representing the combined DLL major and minor numbers. */
|
combined DLL major and minor numbers. */
|
||||||
|
|
||||||
/* WATCH OUT FOR OCTAL! Don't use, say, "00020" for 0.20 */
|
/* WATCH OUT FOR OCTAL! Don't use, say, "00020" for 0.20 */
|
||||||
|
|
||||||
#define CYGWIN_VERSION_DLL_MAKE_COMBINED(maj, min) (((maj) * 1000) + min)
|
#define CYGWIN_VERSION_DLL_MAKE_COMBINED(maj, min) (((maj) * 1000) + min)
|
||||||
#define CYGWIN_VERSION_DLL_COMBINED \
|
#define CYGWIN_VERSION_DLL_COMBINED \
|
||||||
CYGWIN_VERSION_DLL_MAKE_COMBINED (CYGWIN_VERSION_DLL_MAJOR, CYGWIN_VERSION_DLL_MINOR)
|
CYGWIN_VERSION_DLL_MAKE_COMBINED (CYGWIN_VERSION_DLL_MAJOR, CYGWIN_VERSION_DLL_MINOR)
|
||||||
|
|
||||||
/* Every version of cygwin <= this uses an old, incorrect method
|
/* Every version of cygwin <= this uses an old, incorrect method to determine
|
||||||
to determine signal masks. */
|
signal masks. */
|
||||||
|
|
||||||
#define CYGWIN_VERSION_PER_PROCESS_API_VERSION_COMBINED(u) \
|
#define CYGWIN_VERSION_PER_PROCESS_API_VERSION_COMBINED(u) \
|
||||||
CYGWIN_VERSION_DLL_MAKE_COMBINED ((u)->api_major, (u)->api_minor)
|
CYGWIN_VERSION_DLL_MAKE_COMBINED ((u)->api_major, (u)->api_minor)
|
||||||
|
|
||||||
#define CYGWIN_VERSION_USER_API_VERSION_COMBINED \
|
#define CYGWIN_VERSION_USER_API_VERSION_COMBINED \
|
||||||
CYGWIN_VERSION_PER_PROCESS_API_VERSION_COMBINED (user_data)
|
CYGWIN_VERSION_PER_PROCESS_API_VERSION_COMBINED (user_data)
|
||||||
|
|
||||||
/* API versions <= this had a termios structure whose members were
|
/* API versions <= this had a termios structure whose members were too small
|
||||||
too small to accomodate modern settings. */
|
to accomodate modern settings. */
|
||||||
#define CYGWIN_VERSION_DLL_OLD_TERMIOS 5
|
#define CYGWIN_VERSION_DLL_OLD_TERMIOS 5
|
||||||
#define CYGWIN_VERSION_DLL_IS_OLD_TERMIOS \
|
#define CYGWIN_VERSION_DLL_IS_OLD_TERMIOS \
|
||||||
(CYGWIN_VERSION_USER_API_VERSION_COMBINED <= CYGWIN_VERSION_DLL_OLD_TERMIOS)
|
(CYGWIN_VERSION_USER_API_VERSION_COMBINED <= CYGWIN_VERSION_DLL_OLD_TERMIOS)
|
||||||
|
|
||||||
#define CYGWIN_VERSION_DLL_MALLOC_ENV 28
|
#define CYGWIN_VERSION_DLL_MALLOC_ENV 28
|
||||||
/* Old APIs had getc/putc macros that conflict with new CR/LF
|
|
||||||
handling in the stdio buffers */
|
/* Old APIs had getc/putc macros that conflict with new CR/LF handling in the
|
||||||
|
stdio buffers */
|
||||||
#define CYGWIN_VERSION_OLD_STDIO_CRLF_HANDLING \
|
#define CYGWIN_VERSION_OLD_STDIO_CRLF_HANDLING \
|
||||||
(CYGWIN_VERSION_USER_API_VERSION_COMBINED <= 20)
|
(CYGWIN_VERSION_USER_API_VERSION_COMBINED <= 20)
|
||||||
|
|
||||||
@ -109,7 +79,7 @@ details. */
|
|||||||
|
|
||||||
#define CYGWIN_VERSION_CYGWIN_CONV 181
|
#define CYGWIN_VERSION_CYGWIN_CONV 181
|
||||||
|
|
||||||
/* API_MAJOR 0.0: Initial version. API_MINOR changes:
|
/* API_MAJOR 0.0: Initial version. API_MINOR changes:
|
||||||
1: Export cygwin32_ calls as cygwin_ as well.
|
1: Export cygwin32_ calls as cygwin_ as well.
|
||||||
2: Export j1, jn, y1, yn.
|
2: Export j1, jn, y1, yn.
|
||||||
3: Export dll_noncygwin_dllcrt0.
|
3: Export dll_noncygwin_dllcrt0.
|
||||||
@ -339,8 +309,6 @@ details. */
|
|||||||
lremovexattr, fremovexattr.
|
lremovexattr, fremovexattr.
|
||||||
181: Export cygwin_conv_path, cygwin_create_path, cygwin_conv_path_list.
|
181: Export cygwin_conv_path, cygwin_create_path, cygwin_conv_path_list.
|
||||||
182: Export lockf.
|
182: Export lockf.
|
||||||
FIXME: Removed 12 year old and entirely wrong wprintf function at
|
|
||||||
this point. We need a working implementation soon.
|
|
||||||
183: Export open_memstream, fmemopen.
|
183: Export open_memstream, fmemopen.
|
||||||
184: Export openat, faccessat, fchmodat, fchownat, fstatat, futimesat,
|
184: Export openat, faccessat, fchmodat, fchownat, fstatat, futimesat,
|
||||||
linkat, mkdirat, mkfifoat, mknodat, readlinkat, renameat, symlinkat,
|
linkat, mkdirat, mkfifoat, mknodat, readlinkat, renameat, symlinkat,
|
||||||
@ -489,61 +457,53 @@ details. */
|
|||||||
nexttowardf, nexttowardl, pow10l, powl, remainderl, remquol, roundl,
|
nexttowardf, nexttowardl, pow10l, powl, remainderl, remquol, roundl,
|
||||||
scalbl, scalblnl, scalbnl, sincosl, sinhl, sinl, tanhl, tanl,
|
scalbl, scalblnl, scalbnl, sincosl, sinhl, sinl, tanhl, tanl,
|
||||||
tgammal, truncl.
|
tgammal, truncl.
|
||||||
*/
|
|
||||||
|
|
||||||
/* Note that we forgot to bump the api for ualarm, strtoll, strtoull,
|
Note that we forgot to bump the api for ualarm, strtoll, strtoull,
|
||||||
sigaltstack, sethostname. */
|
sigaltstack, sethostname. */
|
||||||
|
|
||||||
#define CYGWIN_VERSION_API_MAJOR 0
|
#define CYGWIN_VERSION_API_MAJOR 0
|
||||||
#define CYGWIN_VERSION_API_MINOR 297
|
#define CYGWIN_VERSION_API_MINOR 297
|
||||||
|
|
||||||
/* There is also a compatibity version number associated with the
|
/* There is also a compatibity version number associated with the shared memory
|
||||||
shared memory regions. It is incremented when incompatible
|
regions. It is incremented when incompatible changes are made to the shared
|
||||||
changes are made to the shared memory region *or* to any named
|
memory region *or* to any named shared mutexes, semaphores, etc. */
|
||||||
shared mutexes, semaphores, etc. The arbitrary starting
|
|
||||||
version was 0 (cygwin release 98r2).
|
|
||||||
Bump to 4 since this hasn't been rigorously updated in a
|
|
||||||
while. */
|
|
||||||
|
|
||||||
#define CYGWIN_VERSION_SHARED_DATA 5
|
#define CYGWIN_VERSION_SHARED_DATA 5
|
||||||
|
|
||||||
/* An identifier used in the names used to create shared objects.
|
/* An identifier used in the names used to create shared objects. The full
|
||||||
The full names include the CYGWIN_VERSION_SHARED_DATA version
|
names include the CYGWIN_VERSION_SHARED_DATA version as well as this
|
||||||
as well as this identifier. */
|
identifier. */
|
||||||
|
|
||||||
#define CYGWIN_VERSION_DLL_IDENTIFIER "cygwin1"
|
#define CYGWIN_VERSION_DLL_IDENTIFIER "cygwin1"
|
||||||
|
|
||||||
/* The Cygwin mount table interface in the Win32 registry also
|
/* The Cygwin mount table interface in the Win32 registry also has a version
|
||||||
has a version number associated with it in case that is
|
number associated with it in case that is changed in a non-backwards
|
||||||
changed in a non-backwards compatible fashion. Increment this
|
compatible fashion. Increment this version number whenever incompatible
|
||||||
version number whenever incompatible changes in mount table
|
changes in mount table registry usage are made.
|
||||||
registry usage are made.
|
|
||||||
|
|
||||||
1: Original number version.
|
1: Original number version.
|
||||||
2: New mount registry layout, system-wide mount accessibility.
|
2: New mount registry layout, system-wide mount accessibility.
|
||||||
3: The mount table is not in the registry anymore, but in /etc/fstab.
|
3: The mount table is not in the registry anymore, but in /etc/fstab.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define CYGWIN_VERSION_MOUNT_REGISTRY 3
|
#define CYGWIN_VERSION_MOUNT_REGISTRY 3
|
||||||
|
|
||||||
/* Identifiers used in the Win32 registry. */
|
/* Identifiers used in the Win32 registry. */
|
||||||
|
|
||||||
#define CYGWIN_INFO_CYGWIN_REGISTRY_NAME "Cygwin"
|
#define CYGWIN_INFO_CYGWIN_REGISTRY_NAME "Cygwin"
|
||||||
#define CYGWIN_INFO_INSTALLATIONS_NAME "Installations"
|
#define CYGWIN_INFO_INSTALLATIONS_NAME "Installations"
|
||||||
|
|
||||||
/* The default cygdrive prefix. */
|
/* The default cygdrive prefix. */
|
||||||
|
|
||||||
#define CYGWIN_INFO_CYGDRIVE_DEFAULT_PREFIX "/cygdrive"
|
#define CYGWIN_INFO_CYGDRIVE_DEFAULT_PREFIX "/cygdrive"
|
||||||
|
|
||||||
/* In addition to the above version number strings, the build
|
/* In addition to the above version number strings, the build process adds some
|
||||||
process adds some strings that may be useful in
|
strings that may be useful in debugging/identifying a particular Cygwin DLL:
|
||||||
debugging/identifying a particular Cygwin DLL:
|
|
||||||
|
|
||||||
The mkvers.sh script at the top level produces a .cc file
|
The mkvers.sh script at the top level produces a .cc file which initializes
|
||||||
which initializes a cygwin_version structure based on the
|
a cygwin_version structure based on the above version information and
|
||||||
above version information and creates a string table for
|
creates a string table for grepping via "fgrep '%%%' cygwinwhatever.dll"
|
||||||
grepping via "fgrep '%%%' cygwinwhatever.dll" if you are
|
if you are using GNU grep. Otherwise you may want to do a
|
||||||
using GNU grep. Otherwise you may want to do a
|
|
||||||
"strings cygwinwhatever.dll | fgrep '%%%'" instead.
|
"strings cygwinwhatever.dll | fgrep '%%%'" instead.
|
||||||
|
|
||||||
This will produce output such as:
|
This will produce output such as:
|
||||||
@ -559,8 +519,7 @@ details. */
|
|||||||
%%% Cygwin shared id: cygwinS1
|
%%% Cygwin shared id: cygwinS1
|
||||||
|
|
||||||
This information can also be obtained through a call to
|
This information can also be obtained through a call to
|
||||||
cygwin_internal (CW_GETVERSIONINFO).
|
cygwin_internal (CW_GETVERSIONINFO). */
|
||||||
*/
|
|
||||||
|
|
||||||
#define CYGWIN_VERSION_MAGIC(a, b) ((unsigned) ((((unsigned short) a) << 16) | (unsigned short) b))
|
#define CYGWIN_VERSION_MAGIC(a, b) ((unsigned) ((((unsigned short) a) << 16) | (unsigned short) b))
|
||||||
#define CYGWIN_VERSION_MAGIC_VERSION(a) ((unsigned) ((unsigned)a & 0xffff))
|
#define CYGWIN_VERSION_MAGIC_VERSION(a) ((unsigned) ((unsigned)a & 0xffff))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user