Date: Monday, January 21, 2013 @ 16:12:06
  Author: allan
Revision: 175766

upgpkg: glibc 2.17-2

sync with linux-3.7, remove unnecessary adjustments to ldconfig, move /lib 
symlinks to filesystem package, add temporary ldconfig symlink to help with 
future /sbin merge, ldd adjustment should no longer be needed

Added:
  glibc/trunk/glibc-2.17-sync-with-linux37.patch
Modified:
  glibc/trunk/PKGBUILD

------------------------------------+
 PKGBUILD                           |   24 ++----
 glibc-2.17-sync-with-linux37.patch |  130 +++++++++++++++++++++++++++++++++++
 2 files changed, 140 insertions(+), 14 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD    2013-01-21 13:44:43 UTC (rev 175765)
+++ PKGBUILD    2013-01-21 15:12:06 UTC (rev 175766)
@@ -6,7 +6,7 @@
 
 pkgname=glibc
 pkgver=2.17
-pkgrel=1
+pkgrel=2
 pkgdesc="GNU C Library"
 arch=('i686' 'x86_64')
 url="http://www.gnu.org/software/libc";
@@ -20,12 +20,14 @@
 options=('!strip')
 install=glibc.install
 source=(http://ftp.gnu.org/gnu/libc/${pkgname}-${pkgver}.tar.xz{,.sig}
+        glibc-2.17-sync-with-linux37.patch
         nscd.service
         nscd.tmpfiles
         locale.gen.txt
         locale-gen)
 md5sums=('87bf675c8ee523ebda4803e8e1cec638'
          '6db4d1661cf34282755dc90330465f6d'
+         'fb99380d94598cc76d793deebf630022'
          'c1e07c0bec0fe89791bfd9d13fc85edf'
          'bccbe5619e75cf1d97312ec3681c605c'
          '07ac979b6ab5eeb778d55f041529d623'
@@ -35,8 +37,8 @@
 build() {
   cd ${srcdir}/${pkgname}-${pkgver}
 
-  # ldconfig does not need to look in /usr/lib64 or /usr/libx32 on Arch Linux
-  sed -i "s#add_system_dir#do_not_add_system_dir#" 
sysdeps/unix/sysv/linux/x86_64/dl-cache.h
+  # combination of upstream commits 318cd0b, b540704 and fc1abbe
+  patch -p1 -i ${srcdir}/glibc-2.17-sync-with-linux37.patch
 
   cd ${srcdir}
   mkdir glibc-build
@@ -97,30 +99,24 @@
 
   rm -f ${pkgdir}/etc/ld.so.{cache,conf}
 
-  # eventually this will move to the filesystem package
-  ln -s usr/lib ${pkgdir}/lib
+  install -dm755 ${pkgdir}/usr/lib/{locale,systemd/system,tmpfiles.d}
 
-  install -dm755 
${pkgdir}/{etc/rc.d,usr/{sbin,lib/{,locale,systemd/system,tmpfiles.d}}}
-
   install -m644 ${srcdir}/${pkgname}-${pkgver}/nscd/nscd.conf 
${pkgdir}/etc/nscd.conf
   install -m644 ${srcdir}/nscd.service ${pkgdir}/usr/lib/systemd/system
   install -m644 ${srcdir}/nscd.tmpfiles ${pkgdir}/usr/lib/tmpfiles.d/nscd.conf
 
   install -m644 ${srcdir}/${pkgname}-${pkgver}/posix/gai.conf 
${pkgdir}/etc/gai.conf
 
-  install -m755 ${srcdir}/locale-gen ${pkgdir}/usr/sbin
+  install -m755 ${srcdir}/locale-gen ${pkgdir}/usr/bin
 
+  # temporary symlink
+  ln -s ../../sbin/ldconfig ${pkgdir}/usr/bin/ldconfig
+
   # create /etc/locale.gen
   install -m644 ${srcdir}/locale.gen.txt ${pkgdir}/etc/locale.gen
   sed -e '1,3d' -e 's|/| |g' -e 's|\\| |g' -e 's|^|#|g' \
     ${srcdir}/glibc-${pkgver}/localedata/SUPPORTED >> ${pkgdir}/etc/locale.gen
 
-  if [[ ${CARCH} = "x86_64" ]]; then
-    # fix paths and compliance with binary blobs...
-    sed -i '/RTLDLIST/s%lib64%lib%' ${pkgdir}/usr/bin/ldd
-    ln -s usr/lib ${pkgdir}/lib64
-  fi
-
   # Do not strip the following files for improved debugging support
   # ("improved" as in not breaking gdb and valgrind...):
   #   ld-${pkgver}.so

Added: glibc-2.17-sync-with-linux37.patch
===================================================================
--- glibc-2.17-sync-with-linux37.patch                          (rev 0)
+++ glibc-2.17-sync-with-linux37.patch  2013-01-21 15:12:06 UTC (rev 175766)
@@ -0,0 +1,130 @@
+diff --git a/sysdeps/gnu/netinet/tcp.h b/sysdeps/gnu/netinet/tcp.h
+index 06e8414..b62a696 100644
+--- a/sysdeps/gnu/netinet/tcp.h
++++ b/sysdeps/gnu/netinet/tcp.h
+@@ -37,20 +37,29 @@
+ /*
+  * User-settable options (used with setsockopt).
+  */
+-#define       TCP_NODELAY      1      /* Don't delay send to coalesce packets 
 */
+-#define       TCP_MAXSEG       2      /* Set maximum segment size  */
+-#define TCP_CORK       3      /* Control sending of partial frames  */
+-#define TCP_KEEPIDLE   4      /* Start keeplives after this period */
+-#define TCP_KEEPINTVL  5      /* Interval between keepalives */
+-#define TCP_KEEPCNT    6      /* Number of keepalives before death */
+-#define TCP_SYNCNT     7      /* Number of SYN retransmits */
+-#define TCP_LINGER2    8      /* Life time of orphaned FIN-WAIT-2 state */
+-#define TCP_DEFER_ACCEPT 9    /* Wake up listener only when data arrive */
+-#define TCP_WINDOW_CLAMP 10   /* Bound advertised window */
+-#define TCP_INFO       11     /* Information about this connection. */
+-#define       TCP_QUICKACK     12     /* Bock/reenable quick ACKs.  */
+-#define TCP_CONGESTION         13     /* Congestion control algorithm.  */
+-#define TCP_MD5SIG     14     /* TCP MD5 Signature (RFC2385) */
++#define       TCP_NODELAY              1  /* Don't delay send to coalesce 
packets  */
++#define       TCP_MAXSEG               2  /* Set maximum segment size  */
++#define TCP_CORK               3  /* Control sending of partial frames  */
++#define TCP_KEEPIDLE           4  /* Start keeplives after this period */
++#define TCP_KEEPINTVL          5  /* Interval between keepalives */
++#define TCP_KEEPCNT            6  /* Number of keepalives before death */
++#define TCP_SYNCNT             7  /* Number of SYN retransmits */
++#define TCP_LINGER2            8  /* Life time of orphaned FIN-WAIT-2 state */
++#define TCP_DEFER_ACCEPT       9  /* Wake up listener only when data arrive */
++#define TCP_WINDOW_CLAMP       10 /* Bound advertised window */
++#define TCP_INFO               11 /* Information about this connection. */
++#define       TCP_QUICKACK             12 /* Bock/reenable quick ACKs.  */
++#define TCP_CONGESTION                 13 /* Congestion control algorithm.  */
++#define TCP_MD5SIG             14 /* TCP MD5 Signature (RFC2385) */
++#define TCP_COOKIE_TRANSACTIONS        15 /* TCP Cookie Transactions */
++#define TCP_THIN_LINEAR_TIMEOUTS 16 /* Use linear timeouts for thin streams*/
++#define TCP_THIN_DUPACK                17 /* Fast retrans. after 1 dupack */
++#define TCP_USER_TIMEOUT       18 /* How long for loss retry before timeout */
++#define TCP_REPAIR             19 /* TCP sock is under repair right now */
++#define TCP_REPAIR_QUEUE       20 /* Set TCP queue to repair */
++#define TCP_QUEUE_SEQ          21 /* Set sequence number of repaired queue. */
++#define TCP_REPAIR_OPTIONS     22 /* Repair TCP connection options */
++#define TCP_FASTOPEN           23 /* Enable FastOpen on listeners */
+ 
+ #ifdef __USE_MISC
+ # include <sys/types.h>
+@@ -173,7 +182,9 @@ enum
+ # define TCPI_OPT_TIMESTAMPS  1
+ # define TCPI_OPT_SACK                2
+ # define TCPI_OPT_WSCALE      4
+-# define TCPI_OPT_ECN         8
++# define TCPI_OPT_ECN         8  /* ECN was negociated at TCP session init */
++# define TCPI_OPT_ECN_SEEN    16 /* we received at least one packet with ECT 
*/
++# define TCPI_OPT_SYN_DATA    32 /* SYN-ACK acked data in SYN sent or rcvd */
+ 
+ /* Values for tcpi_state.  */
+ enum tcp_ca_state
+@@ -241,6 +252,49 @@ struct tcp_md5sig
+   u_int8_t    tcpm_key[TCP_MD5SIG_MAXKEYLEN]; /* Key (binary).  */
+ };
+ 
++/* For socket repair options.  */
++struct tcp_repair_opt
++{
++  u_int32_t   opt_code;
++  u_int32_t   opt_val;
++};
++
++/* Queue to repair, for TCP_REPAIR_QUEUE.  */
++enum
++{
++  TCP_NO_QUEUE,
++  TCP_RECV_QUEUE,
++  TCP_SEND_QUEUE,
++  TCP_QUEUES_NR,
++};
++
++/* For cookie transactions socket options.  */
++#define TCP_COOKIE_MIN                8               /*  64-bits */
++#define TCP_COOKIE_MAX                16              /* 128-bits */
++#define TCP_COOKIE_PAIR_SIZE  (2*TCP_COOKIE_MAX)
++
++/* Flags for both getsockopt and setsockopt */
++#define TCP_COOKIE_IN_ALWAYS  (1 << 0)        /* Discard SYN without cookie */
++#define TCP_COOKIE_OUT_NEVER  (1 << 1)        /* Prohibit outgoing cookies,
++                                               * supercedes everything. */
++
++/* Flags for getsockopt */
++#define TCP_S_DATA_IN         (1 << 2)        /* Was data received? */
++#define TCP_S_DATA_OUT                (1 << 3)        /* Was data sent? */
++
++#define TCP_MSS_DEFAULT                536U   /* IPv4 (RFC1122, RFC2581) */
++#define TCP_MSS_DESIRED               1220U   /* IPv6 (tunneled), EDNS0 
(RFC3226) */
++
++struct tcp_cookie_transactions
++{
++  u_int16_t   tcpct_flags;
++  u_int8_t    __tcpct_pad1;
++  u_int8_t    tcpct_cookie_desired;
++  u_int16_t   tcpct_s_data_desired;
++  u_int16_t   tcpct_used;
++  u_int8_t    tcpct_value[TCP_MSS_DEFAULT];
++};
++
+ #endif /* Misc.  */
+ 
+ #endif /* netinet/tcp.h */
+diff --git a/sysdeps/unix/sysv/linux/bits/socket.h 
b/sysdeps/unix/sysv/linux/bits/socket.h
+index df8f167..eadd7d9 100644
+--- a/sysdeps/unix/sysv/linux/bits/socket.h
++++ b/sysdeps/unix/sysv/linux/bits/socket.h
+@@ -1,6 +1,5 @@
+ /* System-specific socket constants and types.  Linux version.
+-   Copyright (C) 1991, 1992, 1994-2001, 2004, 2006-2010, 2011, 2012
+-   Free Software Foundation, Inc.
++   Copyright (C) 1991-2013 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
+@@ -208,6 +207,8 @@ enum
+ #define       MSG_MORE        MSG_MORE
+     MSG_WAITFORONE    = 0x10000, /* Wait for at least one packet to return.*/
+ #define MSG_WAITFORONE        MSG_WAITFORONE
++    MSG_FASTOPEN      = 0x20000000, /* Send data in TCP SYN.  */
++#define MSG_FASTOPEN  MSG_FASTOPEN
+ 
+     MSG_CMSG_CLOEXEC  = 0x40000000    /* Set close_on_exit for file
+                                          descriptor received through

Reply via email to