| Age | Commit message (Collapse) | Author | 
 | 
gcc?
    text           data     bss     dec     hex filename
-  38015          18096    8636   64747    fceb lib/libpthread-0.9.30-svn.so
+  38001          18096    8636   64733    fcdd lib/libpthread-0.9.30-svn.so
- 274842           1835   19012  295689   48309 lib/libuClibc-0.9.30-svn.so
+ 274779           1835   19012  295626   482ca lib/libuClibc-0.9.30-svn.so
 | 
 | 
 | 
 | 
The sbrk lock is only needed for LT.old
 | 
 | 
 | 
 | 
Appears to build fine (several .configs tried)
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
Closes #6024
 | 
 | 
 | 
 | 
 | 
 | 
found it, this is Bernhard's patch to fix it.  Tested and it Works For Me (tm)).
 | 
 | 
 | 
 | 
ldso and syscalls are __always_inline (the latter would need more cleanup)
 | 
 | 
This should have been in r23660. Untested.
 | 
 | 
Thank you Chase Douglas for reporting it and for the patch.
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
libc/stdlib/_strtod.c   -> tst_wcstod;
libc/stdlib/stdlib.c    -> tst_mblen, tst_mbtowc, tst_wctomb;
libc/stdio/_scanf.c     -> tst_swscanf;
libc/string/strncmp.c   -> tst_wcsncmp;
libc/misc/wchar/wchar.c -> tst_mbrlen, tst_mbrtowc, tst_wcswidth.
Signed-off-by: Filippo Arcidiacono <filippo.arcidiacono@st.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
since posix_openpt lives in getpt.c it has to stay there unconditionally.
 | 
 | 
Fixes compilation error for defined UCLIBC_HAS_PTY && !defined UNIX98PTY_ONLY
  which need both __libc_ptyname1 and __libc_ptyname2 for ptsname_r().
 | 
 | 
- ptsname_r depends on UCLIBC_HAS_PTY just like ptsname()
 | 
 | 
The obsolete functions bcopy, index, etc. are not supposed to be used within
uClibc itself.  Hence, there is no libc_hidden_def for them, but the previous
patch did not just move libc_hidden_protos, it also added new ones for the
legacy functions.  As a result, programs which use these functions can no
longer link with uClibc.
This fixes it by removing the unnecessary libc_hidden_protos.  I've also
removed all inclusions of <strings.h> from uClibc source files: since we
define _GNU_SOURCE, it is sufficient to include <string.h>.  We then do not
need to duplicate the libc_hidden_proto block in <strings.h>.
 | 
 | 
like
  o UCLIBC_HAS_GNU_ERROR
  o UCLIBC_HAS_BSD_ERR
  o UCLIBC_HAS_PTY
  o UCLIBC_HAS_GETPT (1)
  o UCLIBC_SYSCALL_STUBS
  o UCLIBC_SYSCALL_STUB_WARNING
  o UCLIBC_LINUX_SPECIFIC (2)
  o UCLIBC_BSD_SPECIFIC (3)
  o UCLIBC_NTP_LEGACY (4)
  o UCLIBC_SV4_DEPRECATED (5)
  o UCLIBC_HAVE_REALTIME (6)
  o UCLIBC_HAVE_ADVANCED_REALTIME (7)
  o UCLIBC_HAVE_EPOLL (8)
  o UCLIBC_HAVE_XATTR (9)
  o UCLIBC_HAVE_PROFILING (10)
(1) make non-standard getpt optional and implement standard posix_openpt
(2) fstatfs(), inotify_*(), ioperm(), iopl(), madvise(), modify_ldt(),
    personality()
    ppoll(), setresuid()
(3) mincore(), getdomainname(), setdomainname()
(4) ntp_adjtime(), ntp_gettime() aliases
(5) ustat() [use statfs(2) in your code instead]
(6) All marked as "(REALTIME)" in SUSv3
(7) All marked as "(ADVANCED REALTIME)" in SUSv3
(8) epoll_create(), epoll_ctl(), epoll_wait()
(9) all Extended Attributes
(10) helpers for gcc's -finstrument-functions
- Fixes _dl_exit()
- Implements sleep(3) for !UCLIBC_HAVE_REALTIME
- Implements usleep(3) for !UCLIBC_HAVE_REALTIME
- adds #warning about incorrect posix_fadvise{,64}()
- removes unused and unwanted uselib()
Net outcome is that an allnoconfig with HAVE_SHARED is now about 88k instead 
of formerly 130k.
 | 
 | 
(verified with objdump)
 | 
 | 
Code size is not changed on i386.
 | 
 | 
remove a few duplicate includes of unistd.h
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
-     79              0      28     107      6b libc/inet/rpc/create_xid.o
+     76              0      25     101      65 libc/inet/rpc/create_xid.o
-    126              0       4     130      82 libc/misc/assert/__assert.o
+    123              0       1     124      7c libc/misc/assert/__assert.o
-    648              4      24     676     2a4 libc/misc/internals/__uClibc_main.o
+    645              4      21     670     29e libc/misc/internals/__uClibc_main.o
-    230              0       4     234      ea libc/stdlib/abort.o
+    216              0       1     217      d9 libc/stdlib/abort.o
-    129              0       4     133      85 libc/termios/tcgetsid.o
+    126              0       1     127      7f libc/termios/tcgetsid.o
 | 
 | 
 | 
 | 
 | 
 | 
in string.h and strings.h. This caught unguarded string ops in
libc/inet/ethers.c __ether_line_w() function.
I will wait for fallout reports for a week or so,
then continue converting more libc_hidden_proto's.
 | 
 | 
 | 
 | 
 | 
 | 
(patch by Bernd Schmidt <bernds_cb1 at t-online.de>)
 | 
 | 
In file included from toolchain_build_i386/gcc-3.4.6/libiberty/hashtab.c:49:
  build_i386/staging_dir/i386-linux-uclibc/sys-include/malloc.h:193: error: ISO C forbids data definition with no type or storage class
 | 
 | 
When no TIOCGPTN definition is present in the kernel headers, the library's ptsname() function will not work.
The libc/stdlib/ptsname_r.c file is the problem. This file includes a complicated nest of #if directives. One of these #if's has the opposite sense from what is required.
 | 
 | 
reduction is achieved by direct use of user-supplied PATH_MAX sized
buffer for result (without intermediate copy) and changes
in copy_buf[] usage - now it is used for both "source" pathname
and link name (it works because they have to be less than PATH_MAX combined,
otherwise we return NULL).
 | 
 | 
 | 
 | 
thus need to initialize stuff with 0 to force it into bss.
All hell can again break loose if future gcc will be smart enough
to ignore it.
 | 
 | 
 | 
 | 
 | 
 | 
 |