Browse Source

- introduce UCLIBC_SUSV3_LEGACY_MACROS to be able to do away with all LEGACY
stuff, even the fallback defines.

Bernhard Reutner-Fischer 17 years ago
parent
commit
589c9895a4
2 changed files with 11 additions and 1 deletions
  1. 8 0
      extra/Configs/Config.in
  2. 3 1
      include/string.h

+ 8 - 0
extra/Configs/Config.in

@@ -462,6 +462,14 @@ config UCLIBC_SUSV3_LEGACY
 	  Currently applies to bcopy/bzero/bcmp/index/rindex.
 	  WARNING! ABI incompatibility.
 
+config UCLIBC_SUSV3_LEGACY_MACROS
+	bool "Enable SuSv3 LEGACY macros"
+	default n
+	help
+	  Enable this option if you want to have SuSv3 LEGACY macros.
+	  Currently applies to bcopy/bzero/bcmp/index/rindex et al.
+	  WARNING! ABI incompatibility.
+
 config UCLIBC_HAS_SHADOW
 	bool "Shadow Password Support"
 	default y

+ 3 - 1
include/string.h

@@ -321,8 +321,9 @@ extern char *index (__const char *__s, int __c)
 extern char *rindex (__const char *__s, int __c)
      __THROW __attribute_pure__ __nonnull ((1));
 # else
+#  ifdef __UCLIBC_SUSV3_LEGACY_MACROS__
 /* bcopy/bzero/bcmp/index/rindex are marked LEGACY in SuSv3.
- * They are replaced as proposed by SuSv3. Don't sync this part 
+ * They are replaced as proposed by SuSv3. Don't sync this part
  * with glibc and keep it in sync with strings.h.  */
 
 #  define bcopy(src,dest,n) (memmove((dest), (src), (n)), (void) 0)
@@ -330,6 +331,7 @@ extern char *rindex (__const char *__s, int __c)
 #  define bcmp(s1,s2,n) memcmp((s1), (s2), (size_t)(n))
 #  define index(s,c) strchr((s), (c))
 #  define rindex(s,c) strrchr((s), (c))
+#  endif
 # endif
 
 /* Return the position of the first bit set in I, or 0 if none are set.