From 50633f2d519fef68201f9d2d8f2fcfff70ff7db1 Mon Sep 17 00:00:00 2001 From: Isaac David Date: Mon, 10 Jul 2017 17:16:02 -0500 Subject: move xen to [pcr] dropped in Arch: https://lists.archlinux.org/pipermail/arch-dev-public/2017-July/028937.html --- ...gcc6-etherboot-rm-unused-string-functions.patch | 257 +++++++++++++++++++++ 1 file changed, 257 insertions(+) create mode 100644 pcr/xen/patch-gcc6-etherboot-rm-unused-string-functions.patch (limited to 'pcr/xen/patch-gcc6-etherboot-rm-unused-string-functions.patch') diff --git a/pcr/xen/patch-gcc6-etherboot-rm-unused-string-functions.patch b/pcr/xen/patch-gcc6-etherboot-rm-unused-string-functions.patch new file mode 100644 index 000000000..991d43330 --- /dev/null +++ b/pcr/xen/patch-gcc6-etherboot-rm-unused-string-functions.patch @@ -0,0 +1,257 @@ +From b54167b8b6a35c7dab19bbe4b421d447036558d4 Mon Sep 17 00:00:00 2001 +From: Michael Brown +Date: Mon, 16 Feb 2015 15:33:32 +0000 +Subject: [PATCH] [libc] Remove unused string functions + +Signed-off-by: Michael Brown +--- + src/core/stringextra.c | 188 ------------------------------------------------ + src/include/string.h | 6 -- + 2 files changed, 0 insertions(+), 194 deletions(-) + +diff --git a/src/core/stringextra.c b/src/core/stringextra.c +index 0a50985..18ffc63 100644 +--- a/src/core/stringextra.c ++++ b/src/core/stringextra.c +@@ -38,122 +38,6 @@ FILE_LICENCE ( GPL2_ONLY ); + + /* *** FROM string.c *** */ + +-#ifndef __HAVE_ARCH_STRNICMP +-/** +- * strnicmp - Case insensitive, length-limited string comparison +- * @s1: One string +- * @s2: The other string +- * @len: the maximum number of characters to compare +- */ +-int strnicmp(const char *s1, const char *s2, size_t len) +-{ +- /* Yes, Virginia, it had better be unsigned */ +- unsigned char c1, c2; +- +- c1 = 0; c2 = 0; +- if (len) { +- do { +- c1 = *s1; c2 = *s2; +- s1++; s2++; +- if (!c1) +- break; +- if (!c2) +- break; +- if (c1 == c2) +- continue; +- c1 = tolower(c1); +- c2 = tolower(c2); +- if (c1 != c2) +- break; +- } while (--len); +- } +- return (int)c1 - (int)c2; +-} +-#endif +- +-char * ___strtok; +- +-#ifndef __HAVE_ARCH_STRNCAT +-/** +- * strncat - Append a length-limited, %NUL-terminated string to another +- * @dest: The string to be appended to +- * @src: The string to append to it +- * @count: The maximum numbers of bytes to copy +- * +- * Note that in contrast to strncpy, strncat ensures the result is +- * terminated. +- */ +-char * strncat(char *dest, const char *src, size_t count) +-{ +- char *tmp = dest; +- +- if (count) { +- while (*dest) +- dest++; +- while ((*dest++ = *src++)) { +- if (--count == 0) { +- *dest = '\0'; +- break; +- } +- } +- } +- +- return tmp; +-} +-#endif +- +-#ifndef __HAVE_ARCH_STRSPN +-/** +- * strspn - Calculate the length of the initial substring of @s which only +- * contain letters in @accept +- * @s: The string to be searched +- * @accept: The string to search for +- */ +-size_t strspn(const char *s, const char *accept) +-{ +- const char *p; +- const char *a; +- size_t count = 0; +- +- for (p = s; *p != '\0'; ++p) { +- for (a = accept; *a != '\0'; ++a) { +- if (*p == *a) +- break; +- } +- if (*a == '\0') +- return count; +- ++count; +- } +- +- return count; +-} +-#endif +- +-#ifndef __HAVE_ARCH_STRCSPN +-/** +- * strcspn - Calculate the length of the initial substring of @s which only +- * contain letters not in @reject +- * @s: The string to be searched +- * @accept: The string to search for +- */ +-size_t strcspn(const char *s, const char *reject) +-{ +- const char *p; +- const char *r; +- size_t count = 0; +- +- for (p = s; *p != '\0'; ++p) { +- for (r = reject; *r != '\0'; ++r) { +- if (*p == *r) +- return count; +- } +- ++count; +- } +- +- return count; +-} +-#endif +- + #ifndef __HAVE_ARCH_STRPBRK + /** + * strpbrk - Find the first occurrence of a set of characters +@@ -174,35 +58,6 @@ char * strpbrk(const char * cs,const char * ct) + } + #endif + +-#ifndef __HAVE_ARCH_STRTOK +-/** +- * strtok - Split a string into tokens +- * @s: The string to be searched +- * @ct: The characters to search for +- * +- * WARNING: strtok is deprecated, use strsep instead. +- */ +-char * strtok(char * s,const char * ct) +-{ +- char *sbegin, *send; +- +- sbegin = s ? s : ___strtok; +- if (!sbegin) { +- return NULL; +- } +- sbegin += strspn(sbegin,ct); +- if (*sbegin == '\0') { +- ___strtok = NULL; +- return( NULL ); +- } +- send = strpbrk( sbegin, ct); +- if (send && *send != '\0') +- *send++ = '\0'; +- ___strtok = send; +- return (sbegin); +-} +-#endif +- + #ifndef __HAVE_ARCH_STRSEP + /** + * strsep - Split a string into tokens +@@ -230,46 +85,3 @@ char * strsep(char **s, const char *ct) + return sbegin; + } + #endif +- +-#ifndef __HAVE_ARCH_BCOPY +-/** +- * bcopy - Copy one area of memory to another +- * @src: Where to copy from +- * @dest: Where to copy to +- * @count: The size of the area. +- * +- * Note that this is the same as memcpy(), with the arguments reversed. +- * memcpy() is the standard, bcopy() is a legacy BSD function. +- * +- * You should not use this function to access IO space, use memcpy_toio() +- * or memcpy_fromio() instead. +- */ +-char * bcopy(const char * src, char * dest, int count) +-{ +- return memmove(dest,src,count); +-} +-#endif +- +-#ifndef __HAVE_ARCH_MEMSCAN +-/** +- * memscan - Find a character in an area of memory. +- * @addr: The memory area +- * @c: The byte to search for +- * @size: The size of the area. +- * +- * returns the address of the first occurrence of @c, or 1 byte past +- * the area if @c is not found +- */ +-void * memscan(const void * addr, int c, size_t size) +-{ +- unsigned char * p = (unsigned char *) addr; +- +- while (size) { +- if (*p == c) +- return (void *) p; +- p++; +- size--; +- } +- return (void *) p; +-} +-#endif +diff --git a/src/include/string.h b/src/include/string.h +index 3482e1b..dfd78a6 100644 +--- a/src/include/string.h ++++ b/src/include/string.h +@@ -19,11 +19,9 @@ FILE_LICENCE ( GPL2_ONLY ); + #include + #include + +-int __pure strnicmp(const char *s1, const char *s2, size_t len) __nonnull; + char * strcpy(char * dest,const char *src) __nonnull; + char * strncpy(char * dest,const char *src,size_t count) __nonnull; + char * strcat(char * dest, const char * src) __nonnull; +-char * strncat(char *dest, const char *src, size_t count) __nonnull; + int __pure strcmp(const char * cs,const char * ct) __nonnull; + int __pure strncmp(const char * cs,const char * ct, + size_t count) __nonnull; +@@ -31,16 +29,12 @@ char * __pure strchr(const char * s, int c) __nonnull; + char * __pure strrchr(const char * s, int c) __nonnull; + size_t __pure strlen(const char * s) __nonnull; + size_t __pure strnlen(const char * s, size_t count) __nonnull; +-size_t __pure strspn(const char *s, const char *accept) __nonnull; +-size_t __pure strcspn(const char *s, const char *reject) __nonnull; + char * __pure strpbrk(const char * cs,const char * ct) __nonnull; +-char * strtok(char * s,const char * ct) __nonnull; + char * strsep(char **s, const char *ct) __nonnull; + void * memset(void * s,int c,size_t count) __nonnull; + void * memmove(void * dest,const void *src,size_t count) __nonnull; + int __pure memcmp(const void * cs,const void * ct, + size_t count) __nonnull; +-void * __pure memscan(const void * addr, int c, size_t size) __nonnull; + char * __pure strstr(const char * s1,const char * s2) __nonnull; + void * __pure memchr(const void *s, int c, size_t n) __nonnull; + char * __malloc strdup(const char *s) __nonnull; +-- +1.7.9 + -- cgit v1.2.3