From 487253ea1f81b8223334200ada86a3d3b7de6d9c Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Thu, 22 Jun 1995 09:00:11 +0000 Subject: Tue Jun 20 02:18:19 1995 Roland McGrath * Makerules (lib%.so: lib%_pic.a): Pass -soname switch giving the library's name including $(libprefix) and major version number. * locale/locale-ctype.c (allocate_arrays): Use xmalloc and bzero in place of xcalloc. * Makeconfig (prefix, exec_prefix, libprefix): Instead of `ifndef', use the $(origin) function to only set these if they are undefined, and not if they are defined to empty. * gnu-versions.h: New file. * features.h (__GNU_LIBRARY__): Increase value to 5. --- gnu-versions.h | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 gnu-versions.h (limited to 'gnu-versions.h') diff --git a/gnu-versions.h b/gnu-versions.h new file mode 100644 index 0000000000..631a0f7fbf --- /dev/null +++ b/gnu-versions.h @@ -0,0 +1,50 @@ +/* Header with interface version macros for library pieces copied elsewhere. +Copyright (C) 1995 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +#ifndef _GNU_VERSIONS_H +#define _GNU_VERSIONS_H 1 + +/* This file exists to define these few macros. Each specifies a version + number associated with the library interface of a piece of the C library + which is also distributed with other GNU packages. These pieces are + both part of the GNU C library and also distributed with other GNU + packages so those packages may use their facilities on systems lacking + the GNU C library. The source files for each piece surround all their + code with `#ifndef ELIDE_CODE' after defining it with this: + + #define OBSTACK_INTERFACE_VERSION 1 + #if !defined (_LIBC) && defined (__GNU_LIBRARY__) && __GNU_LIBRARY__ > 1 + #include + #if _GNU_OBSTACK_INTERFACE_VERSION == OBSTACK_INTERFACE_VERSION + #define ELIDE_CODE + #endif + #endif + + This allows those one to avoid compiling those files when part of a GNU + package not libc, on a system using a GNU C library that supports the + same interface. + + Please preserve the format of the comments after each macro. And + remember, if any of these versions change, the libc.so major version + number must change too (so avoid it)! */ + +#define _GNU_OBSTACK_INTERFACE_VERSION 1 /* vs malloc/obstack.c */ +#define _GNU_REGEX_INTERFACE_VERSION 1 /* vs posix/regex.c */ + +#endif /* gnu-versions.h */ -- cgit 1.4.1