From bugs at busybox.net Thu Mar 1 11:39:42 2007 From: bugs at busybox.net (bugs at busybox.net) Date: Thu, 1 Mar 2007 11:39:42 -0800 Subject: [uClibc 0001242]: architecture optimized string function is not included in libc.a and libuClibc-0.9.28.so Message-ID: <097d4ddbb79cbf9b304e4cf6a7df9f57@busybox.net> The following issue has been SUBMITTED. ====================================================================== http://busybox.net/bugs/view.php?id=1242 ====================================================================== Reported By: leochen Assigned To: uClibc ====================================================================== Project: uClibc Issue ID: 1242 Category: Architecture Specific Reproducibility: always Severity: major Priority: normal Status: assigned ====================================================================== Date Submitted: 03-01-2007 11:39 PST Last Modified: 03-01-2007 11:39 PST ====================================================================== Summary: architecture optimized string function is not included in libc.a and libuClibc-0.9.28.so Description: I build uClibc for ARM/MIPS platform. I've found the performance of "bcopy" in 0.9.28 release is much worse than the "bcopy" in 0.9.26 release. I disassembled the code of libc.a and libUclibc.so in both versions. I've found that a generic "bcopy" is included, instead of the architecture optimized version. A patch to fix that. --- uClibc-0.9.28/libc/Makefile 2007-02-28 14:51:01.019082000 -0800 +++ uClibc-0.9.28/libc/Makefile 2007-02-28 14:33:42.181885000 -0800 @@ -59,7 +59,7 @@ $(AR) dN 2 $(LIBNAME) $$objs && \ $(AR) dN 2 $(LIBNAME) $$objs @for objfile in obj.signal \ - obj.string.generic obj.string.$(TARGET_ARCH) obj.string \ + obj.string.generic obj.string obj.string.$(TARGET_ARCH) \ obj.sysdeps.common obj.sysdeps.$(TARGET_ARCH) ; do \ if [ -e $$objfile ] ; then \ if [ "$(MAKE_IS_SILENT)" = "n" ] ; then \ ====================================================================== Issue History Date Modified Username Field Change ====================================================================== 03-01-07 11:39 leochen New Issue 03-01-07 11:39 leochen Status new => assigned 03-01-07 11:39 leochen Assigned To => uClibc ====================================================================== From kraj at uclibc.org Thu Mar 1 14:00:04 2007 From: kraj at uclibc.org (kraj at uclibc.org) Date: Thu, 1 Mar 2007 14:00:04 -0800 (PST) Subject: svn commit: trunk/uClibc/libc/sysdeps/linux/common Message-ID: <20070301220004.8469648603@busybox.net> Author: kraj Date: 2007-03-01 13:59:59 -0800 (Thu, 01 Mar 2007) New Revision: 17995 Log: Should be __sigset_t instead of sigset_t. Modified: trunk/uClibc/libc/sysdeps/linux/common/ppoll.c Changeset: Modified: trunk/uClibc/libc/sysdeps/linux/common/ppoll.c =================================================================== --- trunk/uClibc/libc/sysdeps/linux/common/ppoll.c 2007-02-28 23:14:06 UTC (rev 17994) +++ trunk/uClibc/libc/sysdeps/linux/common/ppoll.c 2007-03-01 21:59:59 UTC (rev 17995) @@ -26,11 +26,11 @@ static inline _syscall4(int, __libc_ppoll, struct pollfd *, fds, nfds_t, nfds, const struct timespec *, timeout, - const sigset_t *, sigmask); + const __sigset_t *, sigmask); int ppoll (struct pollfd *fds, nfds_t nfds, const struct timespec *timeout, - const sigset_t *sigmask) + const __sigset_t *sigmask) { /* The Linux kernel can in some situations update the timeout value. We do not want that so use a local variable. */ From kraj at uclibc.org Thu Mar 1 14:02:09 2007 From: kraj at uclibc.org (kraj at uclibc.org) Date: Thu, 1 Mar 2007 14:02:09 -0800 (PST) Subject: svn commit: trunk/uClibc/libc/sysdeps/linux/arm/bits Message-ID: <20070301220209.C7D2C48606@busybox.net> Author: kraj Date: 2007-03-01 14:02:09 -0800 (Thu, 01 Mar 2007) New Revision: 17996 Log: Fix compiler warning about shadowed declaration. Modified: trunk/uClibc/libc/sysdeps/linux/arm/bits/syscalls.h Changeset: Modified: trunk/uClibc/libc/sysdeps/linux/arm/bits/syscalls.h =================================================================== --- trunk/uClibc/libc/sysdeps/linux/arm/bits/syscalls.h 2007-03-01 21:59:59 UTC (rev 17995) +++ trunk/uClibc/libc/sysdeps/linux/arm/bits/syscalls.h 2007-03-01 22:02:09 UTC (rev 17996) @@ -94,13 +94,13 @@ #undef INLINE_SYSCALL #define INLINE_SYSCALL(name, nr, args...) \ - ({ unsigned int __sys_result = INTERNAL_SYSCALL (name, , nr, args); \ - if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P (__sys_result, ), 0)) \ + ({ unsigned int _inline_sys_result = INTERNAL_SYSCALL (name, , nr, args); \ + if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P (_inline_sys_result, ), 0)) \ { \ - __set_errno (INTERNAL_SYSCALL_ERRNO (__sys_result, )); \ - __sys_result = (unsigned int) -1; \ + __set_errno (INTERNAL_SYSCALL_ERRNO (_inline_sys_result, )); \ + _inline_sys_result = (unsigned int) -1; \ } \ - (int) __sys_result; }) + (int) _inline_sys_result; }) #undef INTERNAL_SYSCALL_DECL #define INTERNAL_SYSCALL_DECL(err) do { } while (0) @@ -109,7 +109,7 @@ #if defined(__ARM_EABI__) #if !defined(__thumb__) #define INTERNAL_SYSCALL(name, err, nr, args...) \ - ({unsigned int _sys_result; \ + ({unsigned int __sys_result; \ { \ register int _a1 __asm__ ("r0"), _nr __asm__ ("r7"); \ LOAD_ARGS_##nr (args) \ @@ -118,16 +118,16 @@ : "=r" (_a1) \ : "r" (_nr) ASM_ARGS_##nr \ : "memory"); \ - _sys_result = _a1; \ + __sys_result = _a1; \ } \ - (int) _sys_result; }) + (int) __sys_result; }) #else /* !defined(__thumb__) */ /* So hide the use of r7 from the compiler, this would be a lot * easier but for the fact that the syscalls can exceed 255. * For the moment the LOAD_ARG_7 is sacrificed. */ #define INTERNAL_SYSCALL(name, err, nr, args...) \ - ({ unsigned int _sys_result; \ + ({ unsigned int __sys_result; \ { \ register int _a1 asm ("a1"); \ LOAD_ARGS_##nr (args) \ @@ -139,14 +139,14 @@ : "=r" (_a1) \ : "r" (_v3) ASM_ARGS_##nr \ : "memory"); \ - _sys_result = _a1; \ + __sys_result = _a1; \ } \ - (int) _sys_result; }) + (int) __sys_result; }) #endif /*!defined(__thumb__)*/ #else /* !defined(__ARM_EABI__) */ #if !defined(__thumb__) #define INTERNAL_SYSCALL(name, err, nr, args...) \ - ({ unsigned int _sys_result; \ + ({ unsigned int __sys_result; \ { \ register int _a1 __asm__ ("a1"); \ LOAD_ARGS_##nr (args) \ @@ -154,9 +154,9 @@ : "=r" (_a1) \ : "i" (SYS_ify(name)) ASM_ARGS_##nr \ : "memory"); \ - _sys_result = _a1; \ + __sys_result = _a1; \ } \ - (int) _sys_result; }) + (int) __sys_result; }) #else #if 0 /* This doesn't work because GCC uses r7 as a frame pointer in @@ -164,7 +164,7 @@ * it, resulting in mysterious crashes after the SWI. */ #define INTERNAL_SYSCALL(name, err, nr, args...) \ - ({ unsigned int _sys_result; \ + ({ unsigned int __sys_result; \ { \ register int _a1 __asm__ ("a1"); \ LOAD_ARGS_##nr (args) \ @@ -173,16 +173,16 @@ : "=r" (_a1) \ : "r" (_r7) ASM_ARGS_##nr \ : "memory"); \ - _sys_result = _a1; \ + __sys_result = _a1; \ } \ - (int) _sys_result; }) + (int) __sys_result; }) #else /* So hide the use of r7 from the compiler, this would be a lot * easier but for the fact that the syscalls can exceed 255. * For the moment the LOAD_ARG_7 is sacrificed. */ #define INTERNAL_SYSCALL(name, err, nr, args...) \ - ({ unsigned int _sys_result; \ + ({ unsigned int __sys_result; \ { \ register int _a1 __asm__ ("a1"); \ LOAD_ARGS_##nr (args) \ @@ -194,9 +194,9 @@ : "=r" (_a1) \ : "r" (_v3) ASM_ARGS_##nr \ : "memory"); \ - _sys_result = _a1; \ + __sys_result = _a1; \ } \ - (int) _sys_result; }) + (int) __sys_result; }) #endif #endif #endif /* !defined(__ARM_EABI__) */ From kraj at uclibc.org Thu Mar 1 14:26:51 2007 From: kraj at uclibc.org (kraj at uclibc.org) Date: Thu, 1 Mar 2007 14:26:51 -0800 (PST) Subject: svn commit: trunk/uClibc/include/sys Message-ID: <20070301222651.ED3AE48614@busybox.net> Author: kraj Date: 2007-03-01 14:26:51 -0800 (Thu, 01 Mar 2007) New Revision: 17997 Log: include stddef.h to get NULL definition. Modified: trunk/uClibc/include/sys/poll.h Changeset: Modified: trunk/uClibc/include/sys/poll.h =================================================================== --- trunk/uClibc/include/sys/poll.h 2007-03-01 22:02:09 UTC (rev 17996) +++ trunk/uClibc/include/sys/poll.h 2007-03-01 22:26:51 UTC (rev 17997) @@ -30,6 +30,8 @@ /* Get the timespec definition. */ # define __need_timespec # include +/* get NULL definition. */ +# include #endif From bugs at busybox.net Fri Mar 2 10:22:41 2007 From: bugs at busybox.net (bugs at busybox.net) Date: Fri, 2 Mar 2007 10:22:41 -0800 Subject: [uClibc 0001246]: undefined reference to `_h_errno' Message-ID: <857f4809ed81a7547f9655e46bedcc5f@bugs.uclibc.org> The following issue has been SUBMITTED. ====================================================================== http://busybox.net/bugs/view.php?id=1246 ====================================================================== Reported By: shc Assigned To: uClibc ====================================================================== Project: uClibc Issue ID: 1246 Category: Posix Threads Reproducibility: always Severity: major Priority: normal Status: assigned ====================================================================== Date Submitted: 03-02-2007 10:22 PST Last Modified: 03-02-2007 10:22 PST ====================================================================== Summary: undefined reference to `_h_errno' Description: After I update uclibc to latest svn version (today), compile fails with error: "undefined reference to `_h_errno'". I tried to build previous uclibc revisions, and found 17940 revision compile ok. Please resolve this issue. From my side I attach my .config ... CC libpthread/linuxthreads.old/pthread.oS STRIP -x -R .note -R .comment libpthread/linuxthreads.old/libpthread_so.a AR cr libpthread/linuxthreads.old/libpthread_so.a LD libpthread-0.9.29.so libpthread/linuxthreads.old/libpthread_so.a(pthread.oS): In function `__pthread_reset_main_thread': pthread.c:(.text+0x53c): undefined reference to `_h_errno' pthread.c:(.text+0x544): undefined reference to `_errno' make: *** [lib/libpthread.so] Error 1 ====================================================================== Issue History Date Modified Username Field Change ====================================================================== 03-02-07 10:22 shc New Issue 03-02-07 10:22 shc Status new => assigned 03-02-07 10:22 shc Assigned To => uClibc 03-02-07 10:22 shc File Added: .config ====================================================================== From bugs at busybox.net Fri Mar 2 12:50:25 2007 From: bugs at busybox.net (bugs at busybox.net) Date: Fri, 2 Mar 2007 12:50:25 -0800 Subject: [uClibc 0001247]: uClibc endian detection seems broken if __BYTE_ORDER is not defined Message-ID: <423cdce1220362cbb0b74bff1b585026@busybox.net> The following issue has been SUBMITTED. ====================================================================== http://busybox.net/bugs/view.php?id=1247 ====================================================================== Reported By: holin Assigned To: uClibc ====================================================================== Project: uClibc Issue ID: 1247 Category: Architecture Specific Reproducibility: always Severity: major Priority: normal Status: assigned ====================================================================== Date Submitted: 03-02-2007 12:50 PST Last Modified: 03-02-2007 12:50 PST ====================================================================== Summary: uClibc endian detection seems broken if __BYTE_ORDER is not defined Description: This was observer on Mac OS X. In case BYTE_ORDER is defined by the host and __BYTE_ORDER is not, __BIG_ENDIAN and __LITTLE_ENDIAN still remain undefined. Attached patch fixes that and also adds fallback OS X support if even BYTE_ORDER is not defined; gcc defines __BIG_ENDIAN__ (=1) or __LITTLE_ENDIAN__ (=1) on OS X. The patch is against 0.9.28.3, but svn seems affected, too. ====================================================================== Issue History Date Modified Username Field Change ====================================================================== 03-02-07 12:50 holin New Issue 03-02-07 12:50 holin Status new => assigned 03-02-07 12:50 holin Assigned To => uClibc 03-02-07 12:50 holin File Added: uClibc-0.9.28.3-endian.patch ====================================================================== From bugs at busybox.net Fri Mar 2 15:06:13 2007 From: bugs at busybox.net (bugs at busybox.net) Date: Fri, 2 Mar 2007 15:06:13 -0800 Subject: [uClibc 0001253]: [PATCH] clean up some warnings in libm found when building on ia64 Message-ID: <8fc8072fdea554ba12ee4b12a57dd877@busybox.net> The following issue has been SUBMITTED. ====================================================================== http://busybox.net/bugs/view.php?id=1253 ====================================================================== Reported By: ahs3 Assigned To: uClibc ====================================================================== Project: uClibc Issue ID: 1253 Category: Math Library Reproducibility: always Severity: minor Priority: normal Status: assigned ====================================================================== Date Submitted: 03-02-2007 15:06 PST Last Modified: 03-02-2007 15:06 PST ====================================================================== Summary: [PATCH] clean up some warnings in libm found when building on ia64 Description: Several files in libm had compilation warnings -- specifically, e_pow.c, s_ceil.c, s_floor.c, s_ldexp.c and s_modf.c. In all cases, local variable names were shadowing global variable names. This is _not_ a big deal; personally, I prefer to have no compiler warnings, if at all possible. So, variable names were changed slightly to remove the warnings. Not knowing enough about the history of these files, they may be desirable as is; this patch is not required for functionality or correctness -- it only makes the GCC warnings go away. ====================================================================== Issue History Date Modified Username Field Change ====================================================================== 03-02-07 15:06 ahs3 New Issue 03-02-07 15:06 ahs3 Status new => assigned 03-02-07 15:06 ahs3 Assigned To => uClibc 03-02-07 15:06 ahs3 File Added: libm-warnings.patch ====================================================================== From bugs at busybox.net Fri Mar 2 16:09:15 2007 From: bugs at busybox.net (bugs at busybox.net) Date: Fri, 2 Mar 2007 16:09:15 -0800 Subject: [uClibc 0001254]: [PATCH] clean up warnings caused by slighly improper version of wordsize.h for ia64 Message-ID: <500874f041c18eda541ce2e71d8cf5d1@busybox.net> The following issue has been SUBMITTED. ====================================================================== http://busybox.net/bugs/view.php?id=1254 ====================================================================== Reported By: ahs3 Assigned To: uClibc ====================================================================== Project: uClibc Issue ID: 1254 Category: Architecture Specific Reproducibility: always Severity: trivial Priority: normal Status: assigned ====================================================================== Date Submitted: 03-02-2007 16:09 PST Last Modified: 03-02-2007 16:09 PST ====================================================================== Summary: [PATCH] clean up warnings caused by slighly improper version of wordsize.h for ia64 Description: Just cleaning up compiler warnings -- in this case, the warning was that __WORDSIZE_COMPAT32 was not defined. Added the proper definition to libc/sysdeps/ia64/bits/wordsize.h to make the warning go away. ====================================================================== Issue History Date Modified Username Field Change ====================================================================== 03-02-07 16:09 ahs3 New Issue 03-02-07 16:09 ahs3 Status new => assigned 03-02-07 16:09 ahs3 Assigned To => uClibc 03-02-07 16:09 ahs3 File Added: wordsize-warnings.patch ====================================================================== From sjhill at uclibc.org Sun Mar 4 20:04:15 2007 From: sjhill at uclibc.org (sjhill at uclibc.org) Date: Sun, 4 Mar 2007 20:04:15 -0800 (PST) Subject: svn commit: branches/uClibc-nptl/ldso/libdl Message-ID: <20070305040415.B76C6485C5@busybox.net> Author: sjhill Date: 2007-03-04 20:04:14 -0800 (Sun, 04 Mar 2007) New Revision: 18006 Log: Add missing dl_error_names string for TLS relocation error. Submitted by Khem Raj. Modified: branches/uClibc-nptl/ldso/libdl/libdl.c Changeset: Modified: branches/uClibc-nptl/ldso/libdl/libdl.c =================================================================== --- branches/uClibc-nptl/ldso/libdl/libdl.c 2007-03-05 00:27:50 UTC (rev 18005) +++ branches/uClibc-nptl/ldso/libdl/libdl.c 2007-03-05 04:04:14 UTC (rev 18006) @@ -139,6 +139,7 @@ "Not an ELF shared library", "Unable to mmap file", "No dynamic section", + "Library contains unsupported TLS", #ifdef ELF_USES_RELOCA "Unable to process REL relocs", #else From kraj at uclibc.org Mon Mar 5 12:49:59 2007 From: kraj at uclibc.org (kraj at uclibc.org) Date: Mon, 5 Mar 2007 12:49:59 -0800 (PST) Subject: svn commit: trunk/uClibc/test Message-ID: <20070305204959.557EB4860F@busybox.net> Author: kraj Date: 2007-03-05 12:49:57 -0800 (Mon, 05 Mar 2007) New Revision: 18013 Log: New test targets 'compile' and 'run' Modified: trunk/uClibc/test/Makefile trunk/uClibc/test/README trunk/uClibc/test/Rules.mak trunk/uClibc/test/Test.mak Changeset: Modified: trunk/uClibc/test/Makefile =================================================================== --- trunk/uClibc/test/Makefile 2007-03-05 20:46:46 UTC (rev 18012) +++ trunk/uClibc/test/Makefile 2007-03-05 20:49:57 UTC (rev 18013) @@ -29,20 +29,32 @@ DIRS := $(filter-out math,$(DIRS)) -test check all: subdirs +test check all: run +run: compile subdirs_run + +compile:subdirs_compile + tags: ctags -R clean: subdirs_clean subdirs: $(patsubst %, _dir_%, $(DIRS)) +subdirs_compile: $(patsubst %, _dircompile_%, $(DIRS)) +subdirs_run: $(patsubst %, _dirrun_%, $(DIRS)) subdirs_clean: $(patsubst %, _dirclean_%, $(ALL_SUBDIRS)) $(patsubst %, _dir_%, $(DIRS)) : dummy $(Q)$(MAKE) -C $(patsubst _dir_%, %, $@) +$(patsubst %, _dirrun_%, $(DIRS)) : dummy + $(Q)$(MAKE) -C $(patsubst _dirrun_%, %, $@) run + +$(patsubst %, _dircompile_%, $(DIRS)) : dummy + $(Q)$(MAKE) -C $(patsubst _dircompile_%, %, $@) compile + $(patsubst %, _dirclean_%, $(ALL_SUBDIRS)) : dummy $(Q)$(MAKE) -C $(patsubst _dirclean_%, %, $@) clean -.PHONY: all check clean dummy subdirs subdirs_clean test +.PHONY: all check clean dummy subdirs_compile subdirs_run subdirs subdirs_clean test run compile Modified: trunk/uClibc/test/README =================================================================== --- trunk/uClibc/test/README 2007-03-05 20:46:46 UTC (rev 18012) +++ trunk/uClibc/test/README 2007-03-05 20:49:57 UTC (rev 18013) @@ -1,14 +1,29 @@ ----------- For: User ----------- +Following make targets are avaialable +make compile + +This will compile and link the tests + +make run + +This will check for binaries if they are not there it +will call 'compile' target then it will execute all the +tests. + +make check +make all + +This will build and run tests. + The following make variables may help you in testing: - UCLIBC_ONLY - only run tests against uClibc - GLIBC_ONLY - only run tests against glibc - - COMPILE_ONLY - just build the tests, don't run them - - CHECK_ONLY - only run the tests, don't compile or link them - V / VERBOSE - run tests with a lot of output - + - TEST_INSTALLED_UCLIBC - Test installed libraries + under /lib and /usr/lib. So, to just run the uClibc tests, try this: make check UCLIBC_ONLY=1 Modified: trunk/uClibc/test/Rules.mak =================================================================== --- trunk/uClibc/test/Rules.mak 2007-03-05 20:46:46 UTC (rev 18012) +++ trunk/uClibc/test/Rules.mak 2007-03-05 20:49:57 UTC (rev 18013) @@ -10,10 +10,11 @@ # top_builddir ?= ../ + TESTDIR=$(top_builddir)test/ include $(top_builddir)/Rules.mak - +ifndef TEST_INSTALLED_UCLIBC ifdef UCLIBC_LDSO ifeq (,$(findstring /,$(UCLIBC_LDSO))) UCLIBC_LDSO := $(top_builddir)lib/$(UCLIBC_LDSO) @@ -21,7 +22,7 @@ else UCLIBC_LDSO := $(firstword $(wildcard $(top_builddir)lib/ld*)) endif - +endif #-------------------------------------------------------- # Ensure consistent sort order, 'gcc -print-search-dirs' behavior, etc. LC_ALL:= C @@ -96,8 +97,14 @@ HOST_LDFLAGS += -static endif LDFLAGS += -B$(top_builddir)lib -Wl,-rpath,$(top_builddir)lib -Wl,-rpath-link,$(top_builddir)lib +UCLIBC_LDSO_ABSPATH=$(shell pwd) +ifdef TEST_INSTALLED_UCLIBC +LDFLAGS += -Wl,-rpath,./ +UCLIBC_LDSO_ABSPATH=/lib +endif + ifeq ($(findstring -static,$(LDFLAGS)),) -LDFLAGS += -Wl,--dynamic-linker,$(UCLIBC_LDSO) + LDFLAGS += -Wl,--dynamic-linker,$(UCLIBC_LDSO_ABSPATH)/$(UCLIBC_LDSO) endif @@ -123,7 +130,7 @@ pur_showclean = echo " "CLEAN $(notdir $(CURDIR)) pur_showdiff = echo " "TEST_DIFF $(notdir $(CURDIR))/ pur_showlink = echo " "TEST_LINK $(notdir $(CURDIR))/ $@ -pur_showtest = echo " "TEST_EXEC $(notdir $(CURDIR))/ $@ +pur_showtest = echo " "TEST_EXEC $(notdir $(CURDIR))/ $(patsubst %.exe,%,$@) sil_showclean = sil_showdiff = true sil_showlink = true @@ -131,7 +138,7 @@ ver_showclean = ver_showdiff = true echo ver_showlink = true echo -ver_showtest = printf "\n$(banner)\nTEST $(notdir $(PWD))/ $@\n$(banner)\n" +ver_showtest = printf "\n$(banner)\nTEST $(notdir $(PWD))/ $(patsubst %.exe,%,$@)\n$(banner)\n" do_showclean = $($(DISP)_showclean) do_showdiff = $($(DISP)_showdiff) do_showlink = $($(DISP)_showlink) Modified: trunk/uClibc/test/Test.mak =================================================================== --- trunk/uClibc/test/Test.mak 2007-03-05 20:46:46 UTC (rev 18012) +++ trunk/uClibc/test/Test.mak 2007-03-05 20:49:57 UTC (rev 18013) @@ -23,10 +23,7 @@ U_TARGETS := $(TESTS) G_TARGETS := $(patsubst %,%_glibc,$(U_TARGETS)) -U_TARGETS += $(U_TESTS) -G_TARGETS += $(G_TESTS) -TARGETS := $(SHELL_TESTS) ifeq ($(GLIBC_ONLY),) TARGETS += $(U_TARGETS) endif @@ -34,72 +31,78 @@ TARGETS += $(G_TARGETS) endif CLEAN_TARGETS := $(U_TARGETS) $(G_TARGETS) +COMPILE_TARGETS := $(TARGETS) +TARGETS += $(SHELL_TESTS) +RUN_TARGETS := $(patsubst %,%.exe,$(TARGETS)) -test check all: $(TARGETS) - @true +define binary_name +$(patsubst %.exe,%,$@) +endef -$(TARGETS): Makefile $(TESTDIR)Makefile $(TESTDIR)Rules.mak $(TESTDIR)Test.mak -$(U_TARGETS): $(patsubst %,%.c,$(U_TARGETS)) -$(G_TARGETS): $(patsubst %_glibc,%.c,$(G_TARGETS)) - define diff_test $(Q)\ - for x in "$@.out" "$(patsubst %_glibc,%,$@).out" ; do \ - test -e "$$x.good" && $(do_showdiff) "$@.out" "$$x.good" && exec diff -u "$@.out" "$$x.good" ; \ + for x in "$(binary_name).out" "$(patsubst %_glibc,%,$(binary_name)).out" ; do \ + test -e "$$x.good" && $(do_showdiff) "$(binary_name).out" "$$x.good" && exec diff -u "$(binary_name).out" "$$x.good" ; \ done ; \ true endef define uclibc_glibc_diff_test $(Q)\ - test -z "$(DODIFF_$(patsubst %_glibc,%,$@))" && exec true ; \ - uclibc_out="$@.out" ; \ - glibc_out="$(patsubst %_glibc,%,$@).out" ; \ + test -z "$(DODIFF_$(patsubst %_glibc,%,$(binary_name)))" && exec true ; \ + uclibc_out="$(binary_name).out" ; \ + glibc_out="$(patsubst %_glibc,%,$(binary_name)).out" ; \ $(do_showdiff) $$uclibc_out $$glibc_out ; \ exec diff -u "$$uclibc_out" "$$glibc_out" endef define exec_test $(showtest) $(Q)\ - $(WRAPPER) $(WRAPPER_$(patsubst %_glibc,%,$@)) \ - ./$@ $(OPTS) $(OPTS_$(patsubst %_glibc,%,$@)) &> "$@.out" ; \ + $(WRAPPER) $(WRAPPER_$(patsubst %_glibc,%,$(binary_name))) \ + ./$(binary_name) $(OPTS) $(OPTS_$(patsubst %_glibc,%,$(binary_name))) &> "$(binary_name).out" ; \ ret=$$? ; \ - expected_ret="$(RET_$(patsubst %_glibc,%,$@))" ; \ + expected_ret="$(RET_$(patsubst %_glibc,%,$(binary_name)))" ; \ test -z "$$expected_ret" && export expected_ret=0 ; \ if ! test $$ret -eq $$expected_ret ; then \ - $(RM) $@ ; \ + $(RM) $(binary_name) ; \ echo "ret == $$ret ; expected_ret == $$expected_ret" ; \ - cat "$@.out" ; \ + cat "$(binary_name).out" ; \ exit 1 ; \ fi - $(SCAT) "$@.out" + $(SCAT) "$(binary_name).out" endef -$(U_TARGETS): -ifeq ($(CHECK_ONLY),) - $(showlink) - $(Q)$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(CFLAGS_$@) -c $@.c -o $@.o - $(Q)$(CC) $(LDFLAGS) $@.o -o $@ $(EXTRA_LDFLAGS) $(LDFLAGS_$@) -endif -ifeq ($(COMPILE_ONLY),) +test check all: run +run: $(RUN_TARGETS) compile +$(RUN_TARGETS): $(TARGETS) +ifeq ($(shell echo "$(SHELL_TESTS)"|grep "$(binary_name)"),) $(exec_test) $(diff_test) +ifeq ($(UCLIBC_ONLY),) + $(uclibc_glibc_diff_test) endif +endif -$(G_TARGETS): +compile: $(COMPILE_TARGETS) + +G_TARGET_SRCS := $(patsubst %,%.c,$(G_TARGETS)) +U_TARGET_SRCS := $(patsubst %,%.c,$(U_TARGETS)) + +$(MAKE_SRCS): Makefile $(TESTDIR)Makefile $(TESTDIR)Rules.mak $(TESTDIR)Test.mak + +$(U_TARGETS): $(U_TARGET_SRCS) $(MAKE_SRCS) $(showlink) + $(Q)$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(CFLAGS_$@) -c $@.c -o $@.o + $(Q)$(CC) $(LDFLAGS) $@.o -o $@ $(EXTRA_LDFLAGS) $(LDFLAGS_$@) + +$(G_TARGETS): $(U_TARGET_SRCS) $(MAKE_SRCS) + $(showlink) $(Q)$(HOSTCC) $(HOST_CFLAGS) $(EXTRA_CFLAGS) $(CFLAGS_$(patsubst %_glibc,%,$@)) -c $(patsubst %_glibc,%,$@).c -o $@.o $(Q)$(HOSTCC) $(HOST_LDFLAGS) $@.o -o $@ $(EXTRA_LDFLAGS) $(LDFLAGS_$(patsubst %_glibc,%,$@)) -ifeq ($(COMPILE_ONLY),) - $(exec_test) - $(diff_test) - $(uclibc_glibc_diff_test) -endif + shell_%: -ifeq ($(COMPILE_ONLY),) $(showtest) - $(Q)$(SHELL) $(patsubst shell_%,%.sh,$@) -endif + $(Q)$(SHELL) $(patsubst shell_%,%.sh,$(binary_name)) %.so: %.c $(showlink) @@ -112,4 +115,4 @@ $(showclean) $(Q)$(RM) *.a *.o *.so *~ core *.out *.gdb $(CLEAN_TARGETS) $(EXTRA_CLEAN) -.PHONY: all check clean test +.PHONY: all check clean test run compile From kraj at uclibc.org Tue Mar 6 00:06:26 2007 From: kraj at uclibc.org (kraj at uclibc.org) Date: Tue, 6 Mar 2007 00:06:26 -0800 (PST) Subject: svn commit: trunk/uClibc/libc/sysdeps/linux: arm common i386/bits Message-ID: <20070306080626.E030F48614@busybox.net> Author: kraj Date: 2007-03-06 00:06:26 -0800 (Tue, 06 Mar 2007) New Revision: 18015 Log: Add posix_fadvise posix_fadvise64 for arm. Import INTERNAL_SYSCALL macro for i386 from glibc. Use above macro in posix_fadvise implementation if an arch defines it. Modified: trunk/uClibc/libc/sysdeps/linux/arm/Makefile.arch trunk/uClibc/libc/sysdeps/linux/common/posix_fadvise.c trunk/uClibc/libc/sysdeps/linux/common/posix_fadvise64.c trunk/uClibc/libc/sysdeps/linux/i386/bits/syscalls.h Changeset: Modified: trunk/uClibc/libc/sysdeps/linux/arm/Makefile.arch =================================================================== --- trunk/uClibc/libc/sysdeps/linux/arm/Makefile.arch 2007-03-05 21:08:29 UTC (rev 18014) +++ trunk/uClibc/libc/sysdeps/linux/arm/Makefile.arch 2007-03-06 08:06:26 UTC (rev 18015) @@ -5,7 +5,8 @@ # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. # -CSRC := brk.c ioperm.c iopl.c mmap.c sigaction.c __syscall_error.c +CSRC := brk.c ioperm.c iopl.c mmap.c posix_fadvise.c posix_fadvise64.c \ + sigaction.c __syscall_error.c SSRC := \ __longjmp.S vfork.S clone.S setjmp.S bsd-setjmp.S \ Modified: trunk/uClibc/libc/sysdeps/linux/common/posix_fadvise.c =================================================================== --- trunk/uClibc/libc/sysdeps/linux/common/posix_fadvise.c 2007-03-05 21:08:29 UTC (rev 18014) +++ trunk/uClibc/libc/sysdeps/linux/common/posix_fadvise.c 2007-03-06 08:06:26 UTC (rev 18015) @@ -19,9 +19,25 @@ #ifdef __NR_fadvise64 #define __NR_posix_fadvise __NR_fadvise64 +/* get rid of following conditional when + all supported arches are having INTERNAL_SYSCALL defined +*/ +#ifdef INTERNAL_SYSCALL +int posix_fadvise(int fd, off_t offset, off_t len, int advice) +{ + INTERNAL_SYSCALL_DECL(err); + int ret = (int) (INTERNAL_SYSCALL(posix_fadvise, err, 5, fd, + __LONG_LONG_PAIR (offset >> 31, offset), len, advice)); + if (INTERNAL_SYSCALL_ERROR_P (ret, err)) + return INTERNAL_SYSCALL_ERRNO (ret, err); + return 0; +} +#else _syscall4(int, posix_fadvise, int, fd, off_t, offset, off_t, len, int, advice); +#endif + #if defined __UCLIBC_HAS_LFS__ && (!defined __NR_fadvise64_64 || !defined _syscall6) extern __typeof(posix_fadvise) posix_fadvise64; strong_alias(posix_fadvise,posix_fadvise64) Modified: trunk/uClibc/libc/sysdeps/linux/common/posix_fadvise64.c =================================================================== --- trunk/uClibc/libc/sysdeps/linux/common/posix_fadvise64.c 2007-03-05 21:08:29 UTC (rev 18014) +++ trunk/uClibc/libc/sysdeps/linux/common/posix_fadvise64.c 2007-03-06 08:06:26 UTC (rev 18015) @@ -24,8 +24,25 @@ #if __WORDSIZE == 64 #define __NR_posix_fadvise64 __NR_fadvise64_64 + +#ifdef INTERNAL_SYSCALL +int posix_fadvise64(int fd, __off64_t offset, __off64_t len, int advice) +{ + if (len != (off_t) len) + return EOVERFLOW; + INTERNAL_SYSCALL_DECL (err); + int ret = INTERNAL_SYSCALL (posix_fadvise64, err, 6, fd, + __LONG_LONG_PAIR ((long) (offset >> 32), + (long) offset), + (off_t) len, advise); + if (!INTERNAL_SYSCALL_ERROR_P (ret, err)) + return 0; + return INTERNAL_SYSCALL_ERRNO (ret, err); +} +#else _syscall4(int, posix_fadvise64, int, fd, __off64_t, offset, __off64_t, len, int, advice); +#endif /* 32 bit implementation is kind of a pita */ #elif __WORDSIZE == 32 Modified: trunk/uClibc/libc/sysdeps/linux/i386/bits/syscalls.h =================================================================== --- trunk/uClibc/libc/sysdeps/linux/i386/bits/syscalls.h 2007-03-05 21:08:29 UTC (rev 18014) +++ trunk/uClibc/libc/sysdeps/linux/i386/bits/syscalls.h 2007-03-06 08:06:26 UTC (rev 18015) @@ -15,6 +15,13 @@ #define SYS_ify(syscall_name) (__NR_##syscall_name) +#define INTERNAL_SYSCALL_DECL(err) do { } while (0) + +#define INTERNAL_SYSCALL_ERROR_P(val, err) \ + ((unsigned int) (val) >= 0xfffff001u) + +#define INTERNAL_SYSCALL_ERRNO(val, err) (-(val)) + /* We need some help from the assembler to generate optimal code. We define some macros here which later will be used. */ @@ -145,24 +152,29 @@ { \ return (type) (INLINE_SYSCALL(name, 6, arg1, arg2, arg3, arg4, arg5, arg6)); \ } +#define INLINE_SYSCALL(name, nr, args...) \ + ({ \ + unsigned int result = INTERNAL_SYSCALL (name, , nr, args); \ + if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P (result, ), 0)) \ + { \ + __set_errno (INTERNAL_SYSCALL_ERRNO (result, )); \ + result = 0xffffffff; \ + } \ + (int) result; }) -#define INLINE_SYSCALL(name, nr, args...) \ - ({ \ - unsigned int resultvar; \ - __asm__ __volatile__ ( \ - LOADARGS_##nr \ - "movl %1, %%eax\n\t" \ - "int $0x80\n\t" \ - RESTOREARGS_##nr \ - : "=a" (resultvar) \ - : "i" (__NR_##name) ASMFMT_##nr(args) : "memory", "cc"); \ - if (resultvar >= 0xfffff001) \ - { \ - __set_errno (-resultvar); \ - resultvar = 0xffffffff; \ - } \ +#define INTERNAL_SYSCALL(name, err, nr, args...) \ + ({ \ + unsigned int resultvar; \ + __asm__ __volatile__ ( \ + LOADARGS_##nr \ + "movl %1, %%eax\n\t" \ + "int $0x80\n\t" \ + RESTOREARGS_##nr \ + : "=a" (resultvar) \ + : "i" (__NR_##name) ASMFMT_##nr(args) : "memory", "cc"); \ (int) resultvar; }) + #define LOADARGS_0 #define LOADARGS_1 \ "bpushl .L__X'%k2, %k2\n\t" \ From landley at uclibc.org Tue Mar 6 10:37:17 2007 From: landley at uclibc.org (landley at uclibc.org) Date: Tue, 6 Mar 2007 10:37:17 -0800 (PST) Subject: svn commit: trunk/uClibc Message-ID: <20070306183717.2F98948603@busybox.net> Author: landley Date: 2007-03-06 10:37:15 -0800 (Tue, 06 Mar 2007) New Revision: 18016 Log: Remove debian directory at the request of Simon Richter. (The debian developers prefer to maintain their own debian subdir as a patch.) Removed: trunk/uClibc/debian/ Changeset: From kraj at uclibc.org Tue Mar 6 11:13:32 2007 From: kraj at uclibc.org (kraj at uclibc.org) Date: Tue, 6 Mar 2007 11:13:32 -0800 (PST) Subject: svn commit: trunk/uClibc/libc/sysdeps/linux/arm Message-ID: <20070306191332.2DBBC485EE@busybox.net> Author: kraj Date: 2007-03-06 11:13:31 -0800 (Tue, 06 Mar 2007) New Revision: 18017 Log: I always miss svn add. Added: trunk/uClibc/libc/sysdeps/linux/arm/posix_fadvise.c trunk/uClibc/libc/sysdeps/linux/arm/posix_fadvise64.c Changeset: Added: trunk/uClibc/libc/sysdeps/linux/arm/posix_fadvise.c =================================================================== --- trunk/uClibc/libc/sysdeps/linux/arm/posix_fadvise.c (rev 0) +++ trunk/uClibc/libc/sysdeps/linux/arm/posix_fadvise.c 2007-03-06 19:13:31 UTC (rev 18017) @@ -0,0 +1,37 @@ +/* vi: set sw=4 ts=4: */ +/* + * posix_fadvise() for ARM uClibc + * http://www.opengroup.org/onlinepubs/009695399/functions/posix_fadvise.html + * + * Copyright (C) 2000-2006 Erik Andersen + * + * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. + */ +#include +#include +#if defined __NR_arm_fadvise64_64 +/* This is for the ARM version of fadvise64_64 which swaps the params + * * about to avoid having ABI compat issues + * */ +#define __NR___syscall_arm_fadvise64_64 __NR_arm_fadvise64_64 +int __libc_posix_fadvise(int fd, off_t offset, off_t len, int advise) +{ + INTERNAL_SYSCALL_DECL (err); + int ret = INTERNAL_SYSCALL (arm_fadvise64_64, err, 6, fd, advise, + __LONG_LONG_PAIR ((long)(offset >> 32), (long)offset), + __LONG_LONG_PAIR ((long)(len >> 32), (long)len)); + + if (INTERNAL_SYSCALL_ERROR_P (ret, err)) + return INTERNAL_SYSCALL_ERRNO (ret, err); + return 0; + +} +weak_alias(__libc_posix_fadvise, posix_fadvise); +#else +int posix_fadvise(int fd attribute_unused, off_t offset attribute_unused, off_t len attribute_unused, int advice attribute_unused) +{ + __set_errno(ENOSYS); + return -1; +} +#endif + Added: trunk/uClibc/libc/sysdeps/linux/arm/posix_fadvise64.c =================================================================== --- trunk/uClibc/libc/sysdeps/linux/arm/posix_fadvise64.c (rev 0) +++ trunk/uClibc/libc/sysdeps/linux/arm/posix_fadvise64.c 2007-03-06 19:13:31 UTC (rev 18017) @@ -0,0 +1,47 @@ +/* vi: set sw=4 ts=4: */ +/* + * posix_fadvise64() for ARM uClibc + * http://www.opengroup.org/onlinepubs/009695399/functions/posix_fadvise.html + * + * Copyright (C) 2000-2006 Erik Andersen + * + * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +#ifdef __UCLIBC_HAS_LFS__ + +#if defined __NR_arm_fadvise64_64 +/* This is for the ARM version of fadvise64_64 which swaps the params + * about to avoid having ABI compat issues + */ +#define __NR___syscall_arm_fadvise64_64 __NR_arm_fadvise64_64 +int __libc_posix_fadvise64(int fd, __off64_t offset, __off64_t len, int advise) +{ + INTERNAL_SYSCALL_DECL (err); + int ret = INTERNAL_SYSCALL (arm_fadvise64_64, err, 6, fd, advise, + __LONG_LONG_PAIR ((long)(offset >> 32), (long)offset), + __LONG_LONG_PAIR ((long)(len >> 32), (long)len)); + if (!INTERNAL_SYSCALL_ERROR_P (ret, err)) + return 0; + if (INTERNAL_SYSCALL_ERRNO (ret, err) != ENOSYS) + return INTERNAL_SYSCALL_ERRNO (ret, err); + return 0; +} +weak_alias(__libc_posix_fadvise64, posix_fadvise64); +#else +int posix_fadvise64(int fd, __off64_t offset, __off64_t len, int advise) +{ + __set_errno(ENOSYS); + return -1; +} +#endif +#endif From lethal at uclibc.org Wed Mar 7 01:46:23 2007 From: lethal at uclibc.org (lethal at uclibc.org) Date: Wed, 7 Mar 2007 01:46:23 -0800 (PST) Subject: svn commit: trunk/uClibc/libc/sysdeps/linux/sh Message-ID: <20070307094623.4BA6048087@busybox.net> Author: lethal Date: 2007-03-07 01:46:22 -0800 (Wed, 07 Mar 2007) New Revision: 18021 Log: Fix PLTJMP() token pasting build error, patch from Carmelo Amoroso . Modified: trunk/uClibc/libc/sysdeps/linux/sh/clone.S Changeset: Modified: trunk/uClibc/libc/sysdeps/linux/sh/clone.S =================================================================== --- trunk/uClibc/libc/sysdeps/linux/sh/clone.S 2007-03-07 09:35:43 UTC (rev 18020) +++ trunk/uClibc/libc/sysdeps/linux/sh/clone.S 2007-03-07 09:46:22 UTC (rev 18021) @@ -27,7 +27,7 @@ #ifdef __HAVE_SHARED__ -#define PLTJMP(_x) _x##@PLT +#define PLTJMP(_x) _x at PLT #else #define PLTJMP(_x) _x #endif From lethal at uclibc.org Wed Mar 7 01:47:40 2007 From: lethal at uclibc.org (lethal at uclibc.org) Date: Wed, 7 Mar 2007 01:47:40 -0800 (PST) Subject: svn commit: trunk/uClibc/libc/sysdeps/linux/sh/sys Message-ID: <20070307094740.2014D4808F@busybox.net> Author: lethal Date: 2007-03-07 01:47:39 -0800 (Wed, 07 Mar 2007) New Revision: 18022 Log: Sync sh's procfs.h with glibc, fixes gdbserver. Patch from Carmelo Amoroso . Modified: trunk/uClibc/libc/sysdeps/linux/sh/sys/procfs.h Changeset: Modified: trunk/uClibc/libc/sysdeps/linux/sh/sys/procfs.h =================================================================== --- trunk/uClibc/libc/sysdeps/linux/sh/sys/procfs.h 2007-03-07 09:46:22 UTC (rev 18021) +++ trunk/uClibc/libc/sysdeps/linux/sh/sys/procfs.h 2007-03-07 09:47:39 UTC (rev 18022) @@ -101,8 +101,8 @@ typedef void *psaddr_t; /* Register sets. Linux has different names. */ -typedef gregset_t prgregset_t; -typedef fpregset_t prfpregset_t; +typedef elf_gregset_t prgregset_t; +typedef elf_fpregset_t prfpregset_t; /* We don't have any differences between processes and threads, therefore habe only ine PID type. */ From bugs at busybox.net Wed Mar 7 11:55:57 2007 From: bugs at busybox.net (bugs at busybox.net) Date: Wed, 7 Mar 2007 11:55:57 -0800 Subject: [uClibc 0001263]: Daylight Saving Time (DST) doesn't end at the correct time for the US Message-ID: The following issue has been SUBMITTED. ====================================================================== http://busybox.net/bugs/view.php?id=1263 ====================================================================== Reported By: mikevoyt Assigned To: uClibc ====================================================================== Project: uClibc Issue ID: 1263 Category: Standards Compliance Reproducibility: always Severity: major Priority: normal Status: assigned ====================================================================== Date Submitted: 03-07-2007 11:55 PST Last Modified: 03-07-2007 11:55 PST ====================================================================== Summary: Daylight Saving Time (DST) doesn't end at the correct time for the US Description: There are new rules in 2007 for Daylight Saving Time. Daylight Saving Time for 2007 beings at 2AM on 3/11, and ends at 2AM on 11/4. uClibc will start DST at the correct date/time; but it will not end at the correct time. The following test case illustrates the bug: # date -u -s 031109592007 ; date ; sleep 70 ; date Sun Mar 11 09:59:00 UTC 2007 Sun Mar 11 01:59:00 PST 2007 Sun Mar 11 03:00:10 PDT 2007 <---- GOOD: jumps an hour ahead # date -u -s 110409592007 ; date ; sleep 70 ; date Sun Nov 4 09:59:00 UTC 2007 Sun Nov 4 01:59:00 PST 2007 Sun Nov 4 02:00:10 PST 2007 <----- BAD: it should be 1:00:10 !!! ====================================================================== Issue History Date Modified Username Field Change ====================================================================== 03-07-07 11:55 mikevoyt New Issue 03-07-07 11:55 mikevoyt Status new => assigned 03-07-07 11:55 mikevoyt Assigned To => uClibc ====================================================================== From landley at uclibc.org Wed Mar 7 15:39:29 2007 From: landley at uclibc.org (landley at uclibc.org) Date: Wed, 7 Mar 2007 15:39:29 -0800 (PST) Subject: svn commit: trunk/uClibc/libc/misc/internals Message-ID: <20070307233929.4810348091@busybox.net> Author: landley Date: 2007-03-07 15:39:28 -0800 (Wed, 07 Mar 2007) New Revision: 18032 Log: Fix a build break due to errno and h_errno being unresolved symbols. (No idea if this is the right fix but it's something for now.) Modified: trunk/uClibc/libc/misc/internals/errno.c Changeset: Modified: trunk/uClibc/libc/misc/internals/errno.c =================================================================== --- trunk/uClibc/libc/misc/internals/errno.c 2007-03-07 23:22:47 UTC (rev 18031) +++ trunk/uClibc/libc/misc/internals/errno.c 2007-03-07 23:39:28 UTC (rev 18032) @@ -8,8 +8,8 @@ int h_errno = 0; #ifdef __UCLIBC_HAS_THREADS__ -//weak_alias(_errno, errno) libc_hidden_def(errno) -//weak_alias(_h_errno, h_errno) +weak_alias(errno, _errno) libc_hidden_def(h_errno) +weak_alias(h_errno, _h_errno) #endif From landley at uclibc.org Wed Mar 7 17:26:50 2007 From: landley at uclibc.org (landley at uclibc.org) Date: Wed, 7 Mar 2007 17:26:50 -0800 (PST) Subject: svn commit: trunk/uClibc/libc: misc/internals sysdeps/linux/common/bits Message-ID: <20070308012650.52AF84809F@busybox.net> Author: landley Date: 2007-03-07 17:26:49 -0800 (Wed, 07 Mar 2007) New Revision: 18033 Log: svn 17941/17943 broke the build. 18032 made the threaded case compile again, this makes the non-threaded case compile again. I have no idea if this is the proper fix, I'm just tired if it not compiling for two weeks. Modified: trunk/uClibc/libc/misc/internals/internal_errno.h trunk/uClibc/libc/sysdeps/linux/common/bits/uClibc_errno.h Changeset: Modified: trunk/uClibc/libc/misc/internals/internal_errno.h =================================================================== --- trunk/uClibc/libc/misc/internals/internal_errno.h 2007-03-07 23:39:28 UTC (rev 18032) +++ trunk/uClibc/libc/misc/internals/internal_errno.h 2007-03-08 01:26:49 UTC (rev 18033) @@ -9,15 +9,10 @@ #undef errno #undef h_errno -/* need to tweak libpthread -#ifdef __UCLIBC_HAS_THREADS__ -# define errno __uclibc_errno -# define h_errno __uclibc_h_errno -#endif -*/ - extern int h_errno; -libc_hidden_proto(h_errno) - extern int errno; + +#ifdef __UCLIBC_HAS_THREADS__ +libc_hidden_proto(h_errno) libc_hidden_proto(errno) +#endif Modified: trunk/uClibc/libc/sysdeps/linux/common/bits/uClibc_errno.h =================================================================== --- trunk/uClibc/libc/sysdeps/linux/common/bits/uClibc_errno.h 2007-03-07 23:39:28 UTC (rev 18032) +++ trunk/uClibc/libc/sysdeps/linux/common/bits/uClibc_errno.h 2007-03-08 01:26:49 UTC (rev 18033) @@ -38,11 +38,6 @@ # endif # endif -/* We now need a declaration of the `errno' variable. */ -# ifndef __UCLIBC_HAS_THREADS__ -/*extern int errno;*/ -libc_hidden_proto(errno) -# endif #endif /* !__ASSEMBLER__ */ #endif From kraj at uclibc.org Thu Mar 8 00:55:53 2007 From: kraj at uclibc.org (kraj at uclibc.org) Date: Thu, 8 Mar 2007 00:55:53 -0800 (PST) Subject: svn commit: trunk/uClibc/test/misc Message-ID: <20070308085553.BBE7E4855C@busybox.net> Author: kraj Date: 2007-03-08 00:55:52 -0800 (Thu, 08 Mar 2007) New Revision: 18035 Log: Now Test.mak includes toplevel Rules.mak so if DO_ASSERT is not set then -DNDEBUG is added to CFLAGS so we need to get the seeko() calls out of the assert otherwise they get cancelled when NDEBUG is defined. Modified: trunk/uClibc/test/misc/seek.c Changeset: Modified: trunk/uClibc/test/misc/seek.c =================================================================== --- trunk/uClibc/test/misc/seek.c 2007-03-08 02:04:50 UTC (rev 18034) +++ trunk/uClibc/test/misc/seek.c 2007-03-08 08:55:52 UTC (rev 18035) @@ -23,6 +23,7 @@ off_t ret; int i, fd; FILE *fp; + int tmp; fd = open("lseek.out", O_RDWR|O_CREAT, 0600); if (fd == -1) { @@ -44,8 +45,10 @@ return 1; } - assert(fseeko(fp, 1024, SEEK_SET) == 0); - assert(fseeko(fp, (off_t)-16, SEEK_CUR) == 0); + tmp = fseeko(fp, 1024, SEEK_SET); + assert(tmp == 0); + tmp = fseeko(fp, (off_t)-16, SEEK_CUR); + assert(tmp == 0); ret = ftell(fp); if (ret != (1024-16)) { fprintf(stderr, "ftell() failed, we wanted pos %i but got %li: ", (1024-16), (long)ret); From bugs at busybox.net Thu Mar 8 02:22:09 2007 From: bugs at busybox.net (bugs at busybox.net) Date: Thu, 8 Mar 2007 02:22:09 -0800 Subject: [buildroot 0001256]: build fails for buildroot selected for i386/i386 pthread.c compile error Message-ID: <46674a55624c19f3cf0040ea7cd0e9b0@busybox.net> A NOTE has been added to this issue. ====================================================================== http://busybox.net/bugs/view.php?id=1256 ====================================================================== Reported By: douglas_goodall Assigned To: uClibc ====================================================================== Project: buildroot Issue ID: 1256 Category: Architecture Specific Reproducibility: have not tried Severity: block Priority: normal Status: assigned ====================================================================== Date Submitted: 03-03-2007 21:05 PST Last Modified: 03-08-2007 02:22 PST ====================================================================== Summary: build fails for buildroot selected for i386/i386 pthread.c compile error Description: CC libpthread/linuxthreads.old/pthread.oS STRIP -x -R .note -R .comment libpthread/linuxthreads.old/libpthread_so.a AR cr libpthread/linuxthreads.old/libpthread_so.a LD libpthread-0.9.29.so libpthread/linuxthreads.old/libpthread_so.a(pthread.oS): In function `__pthread_initialize_minimal': pthread.c:(.text+0x13f): undefined reference to `_errno' pthread.c:(.text+0x148): undefined reference to `_h_errno' make[1]: *** [lib/libpthread.so] Error 1 make[1]: Leaving directory `/home/doug/buildroot/toolchain_build_i386/uClibc' make: *** [/home/doug/buildroot/toolchain_build_i386/uClibc/lib/libc.a] Error 2 doug at ubuntu-i386:~/buildroot$ ====================================================================== ---------------------------------------------------------------------- bernhardf - 03-07-07 09:23 ---------------------------------------------------------------------- not a buildroot issue but a uclibc one. Assigning accordingly ---------------------------------------------------------------------- ynglingatal - 03-08-07 02:22 ---------------------------------------------------------------------- I had the same error yesterday with the snapshot of uClibc and gcc 4.1.1 as well as 3.3.5 from buildroot. When changing to uClibc 0.9.28.1 the problem naturally disappears. The problem seems to be that the uClibc-snapshot has two unconditional "extern int _errno; extern int _h_errno;" in libpthread/linuxthreads/pthread.c whereas uClibc 0.9.28.1 uses these under conditional compilation. Since these two variables were never declared properly, without 'extern', in another source file, the error arose. Issue History Date Modified Username Field Change ====================================================================== 03-03-07 21:05 douglas_goodallNew Issue 03-03-07 21:05 douglas_goodallStatus new => assigned 03-03-07 21:05 douglas_goodallAssigned To => buildroot 03-07-07 09:23 bernhardf Note Added: 0002215 03-07-07 09:23 bernhardf Assigned To buildroot => uClibc 03-08-07 02:22 ynglingatal Note Added: 0002221 ====================================================================== From landley at uclibc.org Thu Mar 8 10:00:42 2007 From: landley at uclibc.org (landley at uclibc.org) Date: Thu, 8 Mar 2007 10:00:42 -0800 (PST) Subject: svn commit: trunk/uClibc/libc/sysdeps/linux/arm Message-ID: <20070308180042.01817485C7@busybox.net> Author: landley Date: 2007-03-08 10:00:42 -0800 (Thu, 08 Mar 2007) New Revision: 18041 Log: Patch from Khem Raj that fixes running gcc on arm for me. (Otherwise it says "virtual memory exhausted" trying to build hello world.) Modified: trunk/uClibc/libc/sysdeps/linux/arm/mmap.c Changeset: Modified: trunk/uClibc/libc/sysdeps/linux/arm/mmap.c =================================================================== --- trunk/uClibc/libc/sysdeps/linux/arm/mmap.c 2007-03-08 17:52:36 UTC (rev 18040) +++ trunk/uClibc/libc/sysdeps/linux/arm/mmap.c 2007-03-08 18:00:42 UTC (rev 18041) @@ -11,20 +11,56 @@ #include #include +#if defined (__NR_mmap) || defined (__NR_mmap2) + libc_hidden_proto (mmap) +#if defined (__UCLIBC_MMAP_HAS_6_ARGS__) && defined (__NR_mmap) +#define __NR__mmap __NR_mmap +static inline _syscall6 (__ptr_t, _mmap, __ptr_t, addr, size_t, len, + int, prot, int, flags, int, fd, __off_t, offset); +__ptr_t mmap(__ptr_t addr, size_t len, int prot, + int flags, int fd, __off_t offset) +{ + return (__ptr_t) _mmap (addr, len, prot, flags, + fd, offset); +} -#if defined __ARM_EABI__ +#elif defined (__NR_mmap2) #define __NR__mmap __NR_mmap2 -#else -#define __NR__mmap __NR_mmap + +#ifndef MMAP2_PAGE_SHIFT +# define MMAP2_PAGE_SHIFT 12 #endif + static inline _syscall6 (__ptr_t, _mmap, __ptr_t, addr, size_t, len, int, prot, int, flags, int, fd, __off_t, offset); - __ptr_t mmap(__ptr_t addr, size_t len, int prot, - int flags, int fd, __off_t offset) + int flags, int fd, __off_t offset) { - return (__ptr_t) _mmap (addr, len, prot, flags, fd, offset); + /* check if offset is page aligned */ + if (offset & ((1 << MMAP2_PAGE_SHIFT) - 1)) + return MAP_FAILED; + return (__ptr_t) _mmap (addr, len, prot, flags, + fd,(off_t) (offset >> MMAP2_PAGE_SHIFT)); } +#elif defined (__NR_mmap) +# define __NR__mmap __NR_mmap +static inline _syscall1(__ptr_t, _mmap, unsigned long *, buffer); +__ptr_t mmap(__ptr_t addr, size_t len, int prot, + int flags, int fd, __off_t offset) +{ + unsigned long buffer[6]; + buffer[0] = (unsigned long) addr; + buffer[1] = (unsigned long) len; + buffer[2] = (unsigned long) prot; + buffer[3] = (unsigned long) flags; + buffer[4] = (unsigned long) fd; + buffer[5] = (unsigned long) offset; + return (__ptr_t) _mmap(buffer); +} +#endif libc_hidden_def (mmap) +#else +# error "Your architecture doesn't seem to provide mmap() !?" +#endif From kraj at uclibc.org Thu Mar 8 10:11:34 2007 From: kraj at uclibc.org (kraj at uclibc.org) Date: Thu, 8 Mar 2007 10:11:34 -0800 (PST) Subject: svn commit: trunk/uClibc/libc/sysdeps/linux/arm/bits Message-ID: <20070308181134.EF434485D1@busybox.net> Author: kraj Date: 2007-03-08 10:11:34 -0800 (Thu, 08 Mar 2007) New Revision: 18042 Log: Sync kernel_stat64 with kernel. Thanks to Daniel Jacobowitz for hints. Modified: trunk/uClibc/libc/sysdeps/linux/arm/bits/kernel_stat.h Changeset: Modified: trunk/uClibc/libc/sysdeps/linux/arm/bits/kernel_stat.h =================================================================== --- trunk/uClibc/libc/sysdeps/linux/arm/bits/kernel_stat.h 2007-03-08 18:00:42 UTC (rev 18041) +++ trunk/uClibc/libc/sysdeps/linux/arm/bits/kernel_stat.h 2007-03-08 18:11:34 UTC (rev 18042) @@ -58,13 +58,8 @@ long long st_size; unsigned long st_blksize; -#if defined(__ARMEB__) - unsigned long __pad4; /* future possible st_blocks high bits */ - unsigned long st_blocks; /* Number 512-byte blocks allocated. */ -#else - unsigned long st_blocks; /* Number 512-byte blocks allocated. */ - unsigned long __pad4; /* future possible st_blocks high bits */ -#endif + unsigned long long st_blocks; /* Number 512-byte blocks allocated. */ + unsigned long st_atime; unsigned long st_atime_nsec; unsigned long st_mtime; From bugs at busybox.net Sun Mar 11 12:23:19 2007 From: bugs at busybox.net (bugs at busybox.net) Date: Sun, 11 Mar 2007 12:23:19 -0700 Subject: [uClibc 0001269]: uClibc builds only MIPS-I, no matter what i select in the menu config. Message-ID: <1149d9eaa22e18c5907b7d2718dfc544@bugs.uclibc.org> The following issue has been SUBMITTED. ====================================================================== http://busybox.net/bugs/view.php?id=1269 ====================================================================== Reported By: elit Assigned To: uClibc ====================================================================== Project: uClibc Issue ID: 1269 Category: Architecture Specific Reproducibility: always Severity: minor Priority: normal Status: assigned ====================================================================== Date Submitted: 03-11-2007 12:23 PDT Last Modified: 03-11-2007 12:23 PDT ====================================================================== Summary: uClibc builds only MIPS-I, no matter what i select in the menu config. Description: I'm trying to build rootfs for mipsel MIPS-III. The steps i did: 1. In buildroot make menuconfig, i selected mipsel (among other things... :) ). 2. make. 3. make uclibc-menuconfig, I'm selecting MIPS-III litelendian, etc... 4. make again when i issuing the 'file command on lets say ../root/bin/busybox i get: build_mipsel_nofpu/root/bin/busybox: setuid ELF 32-bit LSB executable, MIPS, MIPS-I version 1 (SYSV), dynamically linked (uses shared libs), stripped I don't know if it something I'm doing wrong or what? Should i choose on buildroot config mips insted of mipsel? i compiled my kernel with mipsel-linux. I can add an say that i successfully compiled my kernel (with different cross), and when issuing the file command on vmlinux i get: /kernel-build/linux/vmlinux: ELF 32-bit LSB executable, MIPS, MIPS-II version 1 (SYSV), statically linked, not stripped I also tried to compile with the toolchain a simple program (Hello world), and still i get MIPS-I Any help will be more then appreciated :) thanks ====================================================================== Issue History Date Modified Username Field Change ====================================================================== 03-11-07 12:23 elit New Issue 03-11-07 12:23 elit Status new => assigned 03-11-07 12:23 elit Assigned To => uClibc ====================================================================== From landley at uclibc.org Sun Mar 11 16:06:40 2007 From: landley at uclibc.org (landley at uclibc.org) Date: Sun, 11 Mar 2007 16:06:40 -0700 (PDT) Subject: svn commit: trunk/uClibc/libc: string/ia64 sysdeps/linux/ia64 Message-ID: <20070311230640.3216E48084@busybox.net> Author: landley Date: 2007-03-11 16:06:39 -0700 (Sun, 11 Mar 2007) New Revision: 18068 Log: Patch from Al Stone to fix ia64: The attached patch works around some compilation failures on ia64 caused by the use of the C preprocessor ## operator, and allows the ia64 default configuration to build again -- or, at least get as far as an x86 build does (the current source tree has some problems compiling because of conflicting type declarations for __kernel_dev_t). Modified: trunk/uClibc/libc/string/ia64/memcpy.S trunk/uClibc/libc/string/ia64/memmove.S trunk/uClibc/libc/string/ia64/sysdep.h trunk/uClibc/libc/sysdeps/linux/ia64/sysdep.h Changeset: Modified: trunk/uClibc/libc/string/ia64/memcpy.S =================================================================== --- trunk/uClibc/libc/string/ia64/memcpy.S 2007-03-11 22:16:02 UTC (rev 18067) +++ trunk/uClibc/libc/string/ia64/memcpy.S 2007-03-11 23:06:39 UTC (rev 18068) @@ -115,7 +115,7 @@ #if defined(USE_LFETCH) #define LOOP(shift) \ ALIGN(32); \ -.loop##shift##: \ +.loop##shift : \ { .mmb \ (p[0]) ld8.nt1 r[0] = [asrc], 8 ; \ (p[0]) lfetch.nt1 [ptr1], 16 ; \ @@ -139,7 +139,7 @@ #else #define LOOP(shift) \ ALIGN(32); \ -.loop##shift##: \ +.loop##shift : \ { .mmb \ (p[0]) ld8.nt1 r[0] = [asrc], 8 ; \ nop.b 0 ; \ Modified: trunk/uClibc/libc/string/ia64/memmove.S =================================================================== --- trunk/uClibc/libc/string/ia64/memmove.S 2007-03-11 22:16:02 UTC (rev 18067) +++ trunk/uClibc/libc/string/ia64/memmove.S 2007-03-11 23:06:39 UTC (rev 18068) @@ -64,7 +64,7 @@ #define LOOP(shift) \ ALIGN(32); \ -.loop##shift##: \ +.loop##shift : \ (p[0]) ld8 r[0] = [asrc], 8 ; /* w1 */ \ (p[MEMLAT+1]) st8 [dest] = value, 8 ; \ (p[MEMLAT]) shrp value = r[MEMLAT], r[MEMLAT+1], shift ; \ Modified: trunk/uClibc/libc/string/ia64/sysdep.h =================================================================== --- trunk/uClibc/libc/string/ia64/sysdep.h 2007-03-11 22:16:02 UTC (rev 18067) +++ trunk/uClibc/libc/string/ia64/sysdep.h 2007-03-11 23:06:39 UTC (rev 18068) @@ -34,7 +34,7 @@ #define ASM_UNW_PRLG_GRSAVE(ninputs) (32+(ninputs)) #ifdef __STDC__ -#define C_LABEL(name) name##: +#define C_LABEL(name) name : #else #define C_LABEL(name) name/**/: #endif Modified: trunk/uClibc/libc/sysdeps/linux/ia64/sysdep.h =================================================================== --- trunk/uClibc/libc/sysdeps/linux/ia64/sysdep.h 2007-03-11 22:16:02 UTC (rev 18067) +++ trunk/uClibc/libc/sysdeps/linux/ia64/sysdep.h 2007-03-11 23:06:39 UTC (rev 18068) @@ -34,7 +34,7 @@ #define ASM_UNW_PRLG_GRSAVE(ninputs) (32+(ninputs)) #ifdef __STDC__ -#define C_LABEL(name) name##: +#define C_LABEL(name) name : #else #define C_LABEL(name) name/**/: #endif From vapier at uclibc.org Mon Mar 12 11:48:14 2007 From: vapier at uclibc.org (vapier at uclibc.org) Date: Mon, 12 Mar 2007 11:48:14 -0700 (PDT) Subject: svn commit: trunk/uClibc/libc/sysdeps/linux/bfin Message-ID: <20070312184814.63B454859F@busybox.net> Author: vapier Date: 2007-03-12 11:48:13 -0700 (Mon, 12 Mar 2007) New Revision: 18074 Log: fix from upstream blackfin repo for sigsetjmp Modified: trunk/uClibc/libc/sysdeps/linux/bfin/bsd-_setjmp.S Changeset: Modified: trunk/uClibc/libc/sysdeps/linux/bfin/bsd-_setjmp.S =================================================================== --- trunk/uClibc/libc/sysdeps/linux/bfin/bsd-_setjmp.S 2007-03-12 18:22:55 UTC (rev 18073) +++ trunk/uClibc/libc/sysdeps/linux/bfin/bsd-_setjmp.S 2007-03-12 18:48:13 UTC (rev 18074) @@ -90,7 +90,8 @@ R0 = RETS; [P0 + 0x9C] = R0; - R0 = 0; + R0 = [P0 + 0x20]; + R1 = 0; + JUMP.L ___sigjmp_save; - RTS; .size __setjmp,.-__setjmp From vapier at uclibc.org Mon Mar 12 12:22:54 2007 From: vapier at uclibc.org (vapier at uclibc.org) Date: Mon, 12 Mar 2007 12:22:54 -0700 (PDT) Subject: svn commit: trunk/uClibc/test/dlopen Message-ID: <20070312192254.713C5485A2@busybox.net> Author: vapier Date: 2007-03-12 12:22:52 -0700 (Mon, 12 Mar 2007) New Revision: 18075 Log: make sure dlsym() properly returns NULL with undefined symbols Added: trunk/uClibc/test/dlopen/dlundef.c trunk/uClibc/test/dlopen/libundef.c Modified: trunk/uClibc/test/dlopen/ trunk/uClibc/test/dlopen/Makefile Changeset: Property changes on: trunk/uClibc/test/dlopen ___________________________________________________________________ Name: svn:ignore - dltest dltest2 dlstatic test1 test2 test3 *_glibc *.so *.gdb *.out + dltest dltest2 dlstatic dlundef test1 test2 test3 *_glibc *.so *.gdb *.out Modified: trunk/uClibc/test/dlopen/Makefile =================================================================== --- trunk/uClibc/test/dlopen/Makefile 2007-03-12 18:48:13 UTC (rev 18074) +++ trunk/uClibc/test/dlopen/Makefile 2007-03-12 19:22:52 UTC (rev 18075) @@ -4,7 +4,7 @@ # rules need a little love to work with glibc ... export UCLIBC_ONLY := 1 -TESTS := dltest dltest2 dlstatic test1 test2 test3 +TESTS := dltest dltest2 dlstatic test1 test2 test3 dlundef include ../Test.mak @@ -14,6 +14,7 @@ LDFLAGS_dlstatic := -ldl LDFLAGS_dltest := -ldl -lpthread LDFLAGS_dltest2 := -ldl -lpthread +LDFLAGS_dlundef := -ldl LDFLAGS_test1 := -ldl LDFLAGS_test2 := -ldl LDFLAGS_test3 := -ldl ./libtest1.so ./libtest2.so -Wl,-rpath,. @@ -24,6 +25,7 @@ dltest: libtest.so dltest2: libtest3.so dlstatic: libstatic.so +dlundef: libundef.so test1: libtest1.so test2: libtest1.so libtest2.so test3: libtest1.so libtest2.so Added: trunk/uClibc/test/dlopen/dlundef.c =================================================================== --- trunk/uClibc/test/dlopen/dlundef.c (rev 0) +++ trunk/uClibc/test/dlopen/dlundef.c 2007-03-12 19:22:52 UTC (rev 18075) @@ -0,0 +1,29 @@ +#include +#include +#include +#include +#include + +#define LIBNAME "libundef.so" + +int main(int argc, char **argv) +{ + void *handle; + int (*myundefined)(void); + + handle = dlopen(LIBNAME, RTLD_LAZY); + if (!handle) { + fprintf(stderr, "Could not open ./%s: %s\n", LIBNAME, dlerror()); + return EXIT_FAILURE; + } + + myundefined = dlsym(handle, "__booga_booga_you_cant_touch_this__"); + if (myundefined != NULL) { + fprintf(stderr, "dlsym() found a symbol that does not exist!\n"); + return EXIT_FAILURE; + } + + dlclose(handle); + + return EXIT_SUCCESS; +} Added: trunk/uClibc/test/dlopen/libundef.c =================================================================== --- trunk/uClibc/test/dlopen/libundef.c (rev 0) +++ trunk/uClibc/test/dlopen/libundef.c 2007-03-12 19:22:52 UTC (rev 18075) @@ -0,0 +1,15 @@ +#include + +static int global_static = -1; + +int static_test(void) +{ + static int local_static = -2; + + if (global_static != -1) + printf("FAIL: global_static is not -1\n"); + if (local_static != -2) + printf("FAIL: local_static is not -2\n"); + + return (global_static == -1 && local_static == -2); +} From vapier at uclibc.org Mon Mar 12 12:44:59 2007 From: vapier at uclibc.org (vapier at uclibc.org) Date: Mon, 12 Mar 2007 12:44:59 -0700 (PDT) Subject: svn commit: trunk/uClibc/test/dlopen Message-ID: <20070312194459.2780F48576@busybox.net> Author: vapier Date: 2007-03-12 12:44:58 -0700 (Mon, 12 Mar 2007) New Revision: 18076 Log: make sure undefine references in dlopen()-ed libs are handled graciously Added: trunk/uClibc/test/dlopen/dlafk.c trunk/uClibc/test/dlopen/libafk-temp.c trunk/uClibc/test/dlopen/libafk.c Modified: trunk/uClibc/test/dlopen/ trunk/uClibc/test/dlopen/Makefile trunk/uClibc/test/dlopen/libundef.c Changeset: Property changes on: trunk/uClibc/test/dlopen ___________________________________________________________________ Name: svn:ignore - dltest dltest2 dlstatic dlundef test1 test2 test3 *_glibc *.so *.gdb *.out + dlafk dlstatic dltest dltest2 dlundef test1 test2 test3 *_glibc *.so *.gdb *.out Modified: trunk/uClibc/test/dlopen/Makefile =================================================================== --- trunk/uClibc/test/dlopen/Makefile 2007-03-12 19:22:52 UTC (rev 18075) +++ trunk/uClibc/test/dlopen/Makefile 2007-03-12 19:44:58 UTC (rev 18076) @@ -4,7 +4,7 @@ # rules need a little love to work with glibc ... export UCLIBC_ONLY := 1 -TESTS := dltest dltest2 dlstatic test1 test2 test3 dlundef +TESTS := dltest dltest2 dlstatic test1 test2 test3 dlundef dlafk include ../Test.mak @@ -15,6 +15,7 @@ LDFLAGS_dltest := -ldl -lpthread LDFLAGS_dltest2 := -ldl -lpthread LDFLAGS_dlundef := -ldl +LDFLAGS_dlafk := -ldl ./libafk.so -Wl,-rpath,. LDFLAGS_test1 := -ldl LDFLAGS_test2 := -ldl LDFLAGS_test3 := -ldl ./libtest1.so ./libtest2.so -Wl,-rpath,. @@ -26,6 +27,9 @@ dltest2: libtest3.so dlstatic: libstatic.so dlundef: libundef.so +dlafk: libafk.so +libafk.so: libafk-temp.so +LDFLAGS_libafk.so := ./libafk-temp.so -Wl,-rpath,. test1: libtest1.so test2: libtest1.so libtest2.so test3: libtest1.so libtest2.so Added: trunk/uClibc/test/dlopen/dlafk.c =================================================================== --- trunk/uClibc/test/dlopen/dlafk.c (rev 0) +++ trunk/uClibc/test/dlopen/dlafk.c 2007-03-12 19:44:58 UTC (rev 18076) @@ -0,0 +1,36 @@ +#include +#include +#include +#include +#include +#include +#include +#include + +#define LIBNAME "libafk.so" + +#define LIBAFK "libafk-temp.so" +#define LIBAFK_BAK ".libafk-temp.so.temp" + +int main(int argc, char **argv) +{ + void *handle; + + if (rename(LIBAFK, LIBAFK_BAK)) { + fprintf(stderr, "Unable to rename %s: %s\n", LIBAFK, strerror(errno)); + return EXIT_FAILURE; + } + + handle = dlopen(LIBNAME, RTLD_NOW); + if (!handle) { + fprintf(stderr, "Could not open ./%s: %s\n", LIBNAME, dlerror()); + return EXIT_FAILURE; + } + + if (rename(LIBAFK_BAK, LIBAFK)) { + fprintf(stderr, "Unable to rename %s: %s\n", LIBAFK_BAK, strerror(errno)); + return EXIT_FAILURE; + } + + return EXIT_SUCCESS; +} Added: trunk/uClibc/test/dlopen/libafk-temp.c =================================================================== --- trunk/uClibc/test/dlopen/libafk-temp.c (rev 0) +++ trunk/uClibc/test/dlopen/libafk-temp.c 2007-03-12 19:44:58 UTC (rev 18076) @@ -0,0 +1 @@ +/* the actual contents doesnt matter */ Added: trunk/uClibc/test/dlopen/libafk.c =================================================================== --- trunk/uClibc/test/dlopen/libafk.c (rev 0) +++ trunk/uClibc/test/dlopen/libafk.c 2007-03-12 19:44:58 UTC (rev 18076) @@ -0,0 +1 @@ +/* the actual contents doesnt matter */ Modified: trunk/uClibc/test/dlopen/libundef.c =================================================================== --- trunk/uClibc/test/dlopen/libundef.c 2007-03-12 19:22:52 UTC (rev 18075) +++ trunk/uClibc/test/dlopen/libundef.c 2007-03-12 19:44:58 UTC (rev 18076) @@ -1,15 +1 @@ -#include - -static int global_static = -1; - -int static_test(void) -{ - static int local_static = -2; - - if (global_static != -1) - printf("FAIL: global_static is not -1\n"); - if (local_static != -2) - printf("FAIL: local_static is not -2\n"); - - return (global_static == -1 && local_static == -2); -} +/* the actual contents doesnt matter */ From kraj at uclibc.org Mon Mar 12 17:02:10 2007 From: kraj at uclibc.org (kraj at uclibc.org) Date: Mon, 12 Mar 2007 17:02:10 -0700 (PDT) Subject: svn commit: trunk/uClibc/libc/sysdeps/linux/i386/bits Message-ID: <20070313000210.0072448082@busybox.net> Author: kraj Date: 2007-03-12 17:02:10 -0700 (Mon, 12 Mar 2007) New Revision: 18081 Log: Using local variable 'result' caused problems with lseek64 syscall failing with gcc 4.2. Renaming to make it a bit uncommon name. Modified: trunk/uClibc/libc/sysdeps/linux/i386/bits/syscalls.h Changeset: Modified: trunk/uClibc/libc/sysdeps/linux/i386/bits/syscalls.h =================================================================== --- trunk/uClibc/libc/sysdeps/linux/i386/bits/syscalls.h 2007-03-12 23:41:07 UTC (rev 18080) +++ trunk/uClibc/libc/sysdeps/linux/i386/bits/syscalls.h 2007-03-13 00:02:10 UTC (rev 18081) @@ -152,29 +152,28 @@ { \ return (type) (INLINE_SYSCALL(name, 6, arg1, arg2, arg3, arg4, arg5, arg6)); \ } -#define INLINE_SYSCALL(name, nr, args...) \ + #define INLINE_SYSCALL(name, nr, args...) \ ({ \ - unsigned int result = INTERNAL_SYSCALL (name, , nr, args); \ - if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P (result, ), 0)) \ + unsigned int _resultvar = INTERNAL_SYSCALL (name, , nr, args); \ + if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P (_resultvar, ), 0)) \ { \ - __set_errno (INTERNAL_SYSCALL_ERRNO (result, )); \ - result = 0xffffffff; \ + __set_errno (INTERNAL_SYSCALL_ERRNO (_resultvar, )); \ + _resultvar = 0xffffffff; \ } \ - (int) result; }) + (int) _resultvar; }) #define INTERNAL_SYSCALL(name, err, nr, args...) \ ({ \ - unsigned int resultvar; \ - __asm__ __volatile__ ( \ + register unsigned int resultvar; \ + asm volatile ( \ LOADARGS_##nr \ "movl %1, %%eax\n\t" \ "int $0x80\n\t" \ RESTOREARGS_##nr \ : "=a" (resultvar) \ : "i" (__NR_##name) ASMFMT_##nr(args) : "memory", "cc"); \ - (int) resultvar; }) + (int) resultvar; }) - #define LOADARGS_0 #define LOADARGS_1 \ "bpushl .L__X'%k2, %k2\n\t" \ From bugs at busybox.net Tue Mar 13 02:05:29 2007 From: bugs at busybox.net (bugs at busybox.net) Date: Tue, 13 Mar 2007 02:05:29 -0700 Subject: [uClibc 0001273]: lib names don't match version Message-ID: The following issue has been SUBMITTED. ====================================================================== http://busybox.net/bugs/view.php?id=1273 ====================================================================== Reported By: Franck78 Assigned To: uClibc ====================================================================== Project: uClibc Issue ID: 1273 Category: Standards Compliance Reproducibility: always Severity: minor Priority: normal Status: assigned ====================================================================== Date Submitted: 03-13-2007 02:05 PDT Last Modified: 03-13-2007 02:05 PDT ====================================================================== Summary: lib names don't match version Description: Hello, The final libs produced don't conform to convention. They are all named with the suffix "0.9.28" but this should be "0.9.28.3" libuClibc-0.9.28.so=>libuClibc-0.9.28.3.so Many automated build scripts relie on the correct 'version' being used ;-) Franck ====================================================================== Issue History Date Modified Username Field Change ====================================================================== 03-13-07 02:05 Franck78 New Issue 03-13-07 02:05 Franck78 Status new => assigned 03-13-07 02:05 Franck78 Assigned To => uClibc ====================================================================== From jocke at uclibc.org Tue Mar 13 03:13:35 2007 From: jocke at uclibc.org (jocke at uclibc.org) Date: Tue, 13 Mar 2007 03:13:35 -0700 (PDT) Subject: svn commit: trunk/uClibc/ldso/libdl Message-ID: <20070313101335.E15F94809F@busybox.net> Author: jocke Date: 2007-03-13 03:13:35 -0700 (Tue, 13 Mar 2007) New Revision: 18082 Log: Carmelo Amoroso writes: Hi All, the attached patch completes my previous patch on statically linked application calling dlopen enabling the support for LD_DEBUG. Further it fixes the missing initialization of the _dl_library_path variable. This patch has been fully tested with the uClibc-nptl branch (sh4). Modified: trunk/uClibc/ldso/libdl/libdl.c Changeset: Modified: trunk/uClibc/ldso/libdl/libdl.c =================================================================== --- trunk/uClibc/ldso/libdl/libdl.c 2007-03-13 00:02:10 UTC (rev 18081) +++ trunk/uClibc/ldso/libdl/libdl.c 2007-03-13 10:13:35 UTC (rev 18082) @@ -71,7 +71,16 @@ * the symbols that otherwise would have been loaded in from ldso... */ #ifdef __SUPPORT_LD_DEBUG__ +/* Needed for 'strstr' prototype' */ +#include char *_dl_debug = 0; +char *_dl_debug_symbols = 0; +char *_dl_debug_move = 0; +char *_dl_debug_reloc = 0; +char *_dl_debug_detail = 0; +char *_dl_debug_nofixups = 0; +char *_dl_debug_bindings = 0; +int _dl_debug_file = 2; #endif const char *_dl_progname = ""; /* Program name */ char *_dl_library_path = 0; /* Where we look for libraries */ @@ -160,6 +169,25 @@ if (!libname) return _dl_symbol_tables; +#ifndef SHARED +# ifdef __SUPPORT_LD_DEBUG__ + _dl_debug = getenv("LD_DEBUG"); + if (_dl_debug) { + if (_dl_strstr(_dl_debug, "all")) { + _dl_debug_detail = _dl_debug_move = _dl_debug_symbols + = _dl_debug_reloc = _dl_debug_bindings = _dl_debug_nofixups = (void*)1; + } else { + _dl_debug_detail = strstr(_dl_debug, "detail"); + _dl_debug_move = strstr(_dl_debug, "move"); + _dl_debug_symbols = strstr(_dl_debug, "sym"); + _dl_debug_reloc = strstr(_dl_debug, "reloc"); + _dl_debug_nofixups = strstr(_dl_debug, "nofix"); + _dl_debug_bindings = strstr(_dl_debug, "bind"); + } + } +# endif +#endif + _dl_map_cache(); /* @@ -186,6 +214,11 @@ if (getenv("LD_BIND_NOW")) now_flag = RTLD_NOW; +#ifndef SHARED + /* When statically linked, the _dl_library_path is not yet initialized */ + _dl_library_path = getenv("LD_LIBRARY_PATH"); +#endif + /* Try to load the specified library */ _dl_if_debug_print("Trying to dlopen '%s', RTLD_GLOBAL:%d RTLD_NOW:%d\n", (char*)libname, (flag & RTLD_GLOBAL ? 1:0), (now_flag & RTLD_NOW ? 1:0)); From jocke at uclibc.org Tue Mar 13 04:02:35 2007 From: jocke at uclibc.org (jocke at uclibc.org) Date: Tue, 13 Mar 2007 04:02:35 -0700 (PDT) Subject: svn commit: trunk/uClibc/ldso/ldso/sh Message-ID: <20070313110235.0703D485A7@busybox.net> Author: jocke Date: 2007-03-13 04:02:33 -0700 (Tue, 13 Mar 2007) New Revision: 18083 Log: Carmelo Amoroso writes: I experiencied some problems while trying to debug the ld.so (sh4) in debug mode. I found that the _start code was not placed into any PT_LOAD segment causing a SIGSEV. I solved this issue explicitely placing the _start code into the .text section (see attached patch). Modified: trunk/uClibc/ldso/ldso/sh/dl-startup.h Changeset: Modified: trunk/uClibc/ldso/ldso/sh/dl-startup.h =================================================================== --- trunk/uClibc/ldso/ldso/sh/dl-startup.h 2007-03-13 10:13:35 UTC (rev 18082) +++ trunk/uClibc/ldso/ldso/sh/dl-startup.h 2007-03-13 11:02:33 UTC (rev 18083) @@ -3,6 +3,7 @@ * needed for this architecture. */ asm( + " .text\n" " .globl _start\n" " .type _start, at function\n" "_start:\n" From landley at uclibc.org Tue Mar 13 11:34:53 2007 From: landley at uclibc.org (landley at uclibc.org) Date: Tue, 13 Mar 2007 11:34:53 -0700 (PDT) Subject: svn commit: trunk/uClibc/docs/uclibc.org Message-ID: <20070313183453.6A8F848025@busybox.net> Author: landley Date: 2007-03-13 11:34:52 -0700 (Tue, 13 Mar 2007) New Revision: 18086 Log: Be consistent about spelling. LGPL says "License" not "Licence", so go with that. (Spotted by Xride on irc.) Modified: trunk/uClibc/docs/uclibc.org/FAQ.html Changeset: Modified: trunk/uClibc/docs/uclibc.org/FAQ.html =================================================================== --- trunk/uClibc/docs/uclibc.org/FAQ.html 2007-03-13 13:01:14 UTC (rev 18085) +++ trunk/uClibc/docs/uclibc.org/FAQ.html 2007-03-13 18:34:52 UTC (rev 18086) @@ -173,9 +173,9 @@ No, you do not need to give away your application source code just because you use uClibc and/or run on Linux. uClibc is licensed under the Lesser GPL licence, just - like the GNU C library (glibc). Please read this licence, or have a lawyer - read this licence if you have any questions. Here is my brief summary... + href="http://www.gnu.org/copyleft/lesser.html">Lesser GPL license, just + like the GNU C library (glibc). Please read this license, or have a lawyer + read this license if you have any questions. Here is my brief summary... Using shared libraries makes complying with the license easy. You can distribute a closed source application which is linked with an unmodified uClibc shared library. In this case, you do not need to give away any From vapier at uclibc.org Tue Mar 13 20:10:32 2007 From: vapier at uclibc.org (vapier at uclibc.org) Date: Tue, 13 Mar 2007 20:10:32 -0700 (PDT) Subject: svn commit: trunk/uClibc/libc/sysdeps/linux/sh/sys Message-ID: <20070314031032.38E0248080@busybox.net> Author: vapier Date: 2007-03-13 20:10:29 -0700 (Tue, 13 Mar 2007) New Revision: 18095 Log: dont include asm/user.h Modified: trunk/uClibc/libc/sysdeps/linux/sh/sys/user.h Changeset: Modified: trunk/uClibc/libc/sysdeps/linux/sh/sys/user.h =================================================================== --- trunk/uClibc/libc/sysdeps/linux/sh/sys/user.h 2007-03-14 00:08:28 UTC (rev 18094) +++ trunk/uClibc/libc/sysdeps/linux/sh/sys/user.h 2007-03-14 03:10:29 UTC (rev 18095) @@ -19,10 +19,60 @@ #ifndef _SYS_USER_H #define _SYS_USER_H 1 -#include +#include +#include -#include +/* + * Core file format: The core file is written in such a way that gdb + * can understand it and provide useful information to the user (under + * linux we use the `trad-core' bfd). The file contents are as follows: + * + * upage: 1 page consisting of a user struct that tells gdb + * what is present in the file. Directly after this is a + * copy of the task_struct, which is currently not used by gdb, + * but it may come in handy at some point. All of the registers + * are stored as part of the upage. The upage should always be + * only one page long. + * data: The data segment follows next. We use current->end_text to + * current->brk to pick up all of the user variables, plus any memory + * that may have been sbrk'ed. No attempt is made to determine if a + * page is demand-zero or if a page is totally unused, we just cover + * the entire range. All of the addresses are rounded in such a way + * that an integral number of pages is written. + * stack: We need the stack information in order to get a meaningful + * backtrace. We need to write the data from usp to + * current->start_stack, so we round each of these in order to be able + * to write an integer number of pages. + */ -#undef start_thread +struct user_fpu_struct { + unsigned long fp_regs[16]; + unsigned long xfp_regs[16]; + unsigned long fpscr; + unsigned long fpul; +}; +struct user { + struct pt_regs regs; /* entire machine state */ + struct user_fpu_struct fpu; /* Math Co-processor registers */ + int u_fpvalid; /* True if math co-processor being used */ + size_t u_tsize; /* text size (pages) */ + size_t u_dsize; /* data size (pages) */ + size_t u_ssize; /* stack size (pages) */ + unsigned long start_code; /* text starting address */ + unsigned long start_data; /* data starting address */ + unsigned long start_stack; /* stack starting address */ + long int signal; /* signal causing core dump */ + struct regs * u_ar0; /* help gdb find registers */ + struct user_fpu_struct* u_fpstate; /* Math Co-processor pointer */ + unsigned long magic; /* identifies a core file */ + char u_comm[32]; /* user command name */ +}; + +#define NBPG getpagesize() +#define UPAGES 1 +#define HOST_TEXT_START_ADDR (u.start_code) +#define HOST_DATA_START_ADDR (u.start_data) +#define HOST_STACK_END_ADDR (u.start_stack + u.u_ssize * NBPG) + #endif /* sys/user.h */ From vapier at uclibc.org Tue Mar 13 20:45:57 2007 From: vapier at uclibc.org (vapier at uclibc.org) Date: Tue, 13 Mar 2007 20:45:57 -0700 (PDT) Subject: svn commit: trunk/uClibc/utils Message-ID: <20070314034557.1BEA54856E@busybox.net> Author: vapier Date: 2007-03-13 20:45:56 -0700 (Tue, 13 Mar 2007) New Revision: 18097 Log: more ifdef tweaks from holin (#1247) for retarded hosts (like OS X) Modified: trunk/uClibc/utils/bswap.h Changeset: Modified: trunk/uClibc/utils/bswap.h =================================================================== --- trunk/uClibc/utils/bswap.h 2007-03-14 03:12:22 UTC (rev 18096) +++ trunk/uClibc/utils/bswap.h 2007-03-14 03:45:56 UTC (rev 18097) @@ -8,6 +8,12 @@ #if !defined(__BYTE_ORDER) && defined(BYTE_ORDER) # define __BYTE_ORDER BYTE_ORDER +# if !defined(__BIG_ENDIAN) && defined(BIG_ENDIAN) +# define __BIG_ENDIAN BIG_ENDIAN +# endif +# if !defined(__LITTLE_ENDIAN) && defined(LITTLE_ENDIAN) +# define __LITTLE_ENDIAN LITTLE_ENDIAN +# endif #endif #ifndef __BYTE_ORDER @@ -18,11 +24,11 @@ # define __BIG_ENDIAN 4321 /* most-significant byte first (IBM, net) */ # define __PDP_ENDIAN 3412 /* LSB first in word, MSW first in long (pdp) */ -# if defined(sun386) || defined(i386) +# if defined(sun386) || defined(i386) || defined(__LITTLE_ENDIAN__) # define __BYTE_ORDER __LITTLE_ENDIAN # endif -# if defined(sparc) +# if defined(sparc) || defined(__BIG_ENDIAN__) # define __BYTE_ORDER __BIG_ENDIAN # endif From bugs at busybox.net Tue Mar 13 20:46:13 2007 From: bugs at busybox.net (bugs at busybox.net) Date: Tue, 13 Mar 2007 20:46:13 -0700 Subject: [uClibc 0001247]: uClibc endian detection seems broken if __BYTE_ORDER is not defined Message-ID: The following issue has been CLOSED ====================================================================== http://busybox.net/bugs/view.php?id=1247 ====================================================================== Reported By: holin Assigned To: uClibc ====================================================================== Project: uClibc Issue ID: 1247 Category: Architecture Specific Reproducibility: always Severity: major Priority: normal Status: closed Resolution: fixed Fixed in Version: ====================================================================== Date Submitted: 03-02-2007 12:50 PST Last Modified: 03-13-2007 20:46 PDT ====================================================================== Summary: uClibc endian detection seems broken if __BYTE_ORDER is not defined Description: This was observer on Mac OS X. In case BYTE_ORDER is defined by the host and __BYTE_ORDER is not, __BIG_ENDIAN and __LITTLE_ENDIAN still remain undefined. Attached patch fixes that and also adds fallback OS X support if even BYTE_ORDER is not defined; gcc defines __BIG_ENDIAN__ (=1) or __LITTLE_ENDIAN__ (=1) on OS X. The patch is against 0.9.28.3, but svn seems affected, too. ====================================================================== ---------------------------------------------------------------------- vapier - 03-13-07 20:46 ---------------------------------------------------------------------- added to trunk, cheers Issue History Date Modified Username Field Change ====================================================================== 03-02-07 12:50 holin New Issue 03-02-07 12:50 holin Status new => assigned 03-02-07 12:50 holin Assigned To => uClibc 03-02-07 12:50 holin File Added: uClibc-0.9.28.3-endian.patch 03-13-07 20:46 vapier Note Added: 0002234 03-13-07 20:46 vapier Status assigned => closed 03-13-07 20:46 vapier Resolution open => fixed ====================================================================== From bugs at busybox.net Wed Mar 14 04:00:46 2007 From: bugs at busybox.net (bugs at busybox.net) Date: Wed, 14 Mar 2007 04:00:46 -0700 Subject: [uClibc 0001247]: uClibc endian detection seems broken if __BYTE_ORDER is not defined Message-ID: The following issue has been REOPENED. ====================================================================== http://busybox.net/bugs/view.php?id=1247 ====================================================================== Reported By: holin Assigned To: uClibc ====================================================================== Project: uClibc Issue ID: 1247 Category: Architecture Specific Reproducibility: always Severity: major Priority: normal Status: feedback ====================================================================== Date Submitted: 03-02-2007 12:50 PST Last Modified: 03-14-2007 04:00 PDT ====================================================================== Summary: uClibc endian detection seems broken if __BYTE_ORDER is not defined Description: This was observer on Mac OS X. In case BYTE_ORDER is defined by the host and __BYTE_ORDER is not, __BIG_ENDIAN and __LITTLE_ENDIAN still remain undefined. Attached patch fixes that and also adds fallback OS X support if even BYTE_ORDER is not defined; gcc defines __BIG_ENDIAN__ (=1) or __LITTLE_ENDIAN__ (=1) on OS X. The patch is against 0.9.28.3, but svn seems affected, too. ====================================================================== ---------------------------------------------------------------------- vapier - 03-13-07 20:46 ---------------------------------------------------------------------- added to trunk, cheers ---------------------------------------------------------------------- holin - 03-14-07 04:00 ---------------------------------------------------------------------- In trunk, as it seems, bswap_64 is also taken into use. A lame replacement is needed for that, too. Attaching a patch for the issue. Issue History Date Modified Username Field Change ====================================================================== 03-02-07 12:50 holin New Issue 03-02-07 12:50 holin Status new => assigned 03-02-07 12:50 holin Assigned To => uClibc 03-02-07 12:50 holin File Added: uClibc-0.9.28.3-endian.patch 03-13-07 20:46 vapier Note Added: 0002234 03-13-07 20:46 vapier Status assigned => closed 03-13-07 20:46 vapier Resolution open => fixed 03-14-07 04:00 holin Status closed => feedback 03-14-07 04:00 holin Resolution fixed => reopened 03-14-07 04:00 holin Note Added: 0002236 ====================================================================== From landley at uclibc.org Fri Mar 16 19:46:00 2007 From: landley at uclibc.org (landley at uclibc.org) Date: Fri, 16 Mar 2007 19:46:00 -0700 (PDT) Subject: svn commit: trunk/uClibc: extra/config extra/scripts Message-ID: <20070317024600.5FA5E48646@busybox.net> Author: landley Date: 2007-03-16 19:45:59 -0700 (Fri, 16 Mar 2007) New Revision: 18129 Log: Have Makefile.in call conf-header.sh instead of having kconfig call it via system(). Also move it to extra/scripts since it's a uClibc build script, not part of upstream kconfig. Adjust the "grabbing a new kconfig snapshot" procedure accordingly. Added: trunk/uClibc/extra/scripts/conf-header.sh Removed: trunk/uClibc/extra/config/conf-header.sh Modified: trunk/uClibc/Makefile.in trunk/uClibc/extra/config/README.uClibc trunk/uClibc/extra/config/confdata.c trunk/uClibc/extra/config/kconfig-to-uclibc.patch Changeset: Modified: trunk/uClibc/Makefile.in =================================================================== --- trunk/uClibc/Makefile.in 2007-03-16 23:36:58 UTC (rev 18128) +++ trunk/uClibc/Makefile.in 2007-03-17 02:45:59 UTC (rev 18129) @@ -39,7 +39,9 @@ include/bits/uClibc_config.h: extra/config/conf .config $(Q)$(INSTALL) -d $(dir $@) $(Q)@$< -o $(top_srcdir)extra/Configs/Config.in + $(top_srcdir)extra/scripts/conf-header.sh .config > include/bits/uClibc_config.h + # For the moment, we have to keep re-running this target # because the fix includes scripts rely on pre-processers # in order to generate the headers correctly :(. That Modified: trunk/uClibc/extra/config/README.uClibc =================================================================== --- trunk/uClibc/extra/config/README.uClibc 2007-03-16 23:36:58 UTC (rev 18128) +++ trunk/uClibc/extra/config/README.uClibc 2007-03-17 02:45:59 UTC (rev 18129) @@ -6,7 +6,7 @@ cp /usr/src/linux/Documentation/kbuild/kconfig-language.txt . mv Makefile Makefile.kconfig patch -p1 < ../config/kconfig-to-uclibc.patch - cp ../config/conf-header.sh ../config/README.uClibc . + cp ../config/README.uClibc . cd .. rm -rf config mv config.new config Deleted: trunk/uClibc/extra/config/conf-header.sh =================================================================== --- trunk/uClibc/extra/config/conf-header.sh 2007-03-16 23:36:58 UTC (rev 18128) +++ trunk/uClibc/extra/config/conf-header.sh 2007-03-17 02:45:59 UTC (rev 18129) @@ -1,27 +0,0 @@ -#!/bin/sh -e - -# Turn .config into a header file - -if [ -z "$1" ] ; then - echo "Usage: conf-header.sh <.config>" - exit 1 -fi - -cat < directly; use instead -#endif - -#define __UCLIBC_MAJOR__ ${MAJOR_VERSION} -#define __UCLIBC_MINOR__ ${MINOR_VERSION} -#define __UCLIBC_SUBLEVEL__ ${SUBLEVEL} -EOF - -exec \ -sed \ - -e '/^#$/d' \ - -e '/^[^#]/s:^\([^=]*\)=\(.*\):#define __\1__ \2:' \ - -e '/^#define /s: y$: 1:' \ - -e '/^# .* is not set$/s:^# \(.*\) is not set$:#undef __\1__:' \ - -e 's:^# \(.*\)$:/* \1 */:' \ - $1 Modified: trunk/uClibc/extra/config/confdata.c =================================================================== --- trunk/uClibc/extra/config/confdata.c 2007-03-16 23:36:58 UTC (rev 18128) +++ trunk/uClibc/extra/config/confdata.c 2007-03-17 02:45:59 UTC (rev 18129) @@ -649,7 +649,7 @@ time_t now; int i, l; - return system("./extra/config/conf-header.sh .config > include/bits/uClibc_config.h"); + return 0; sym_clear_all_valid(); Modified: trunk/uClibc/extra/config/kconfig-to-uclibc.patch =================================================================== --- trunk/uClibc/extra/config/kconfig-to-uclibc.patch 2007-03-16 23:36:58 UTC (rev 18128) +++ trunk/uClibc/extra/config/kconfig-to-uclibc.patch 2007-03-17 02:45:59 UTC (rev 18129) @@ -172,7 +172,7 @@ time_t now; int i, l; -+ return system("./extra/config/conf-header.sh .config > include/bits/uClibc_config.h"); ++ return 0; + sym_clear_all_valid(); Copied: trunk/uClibc/extra/scripts/conf-header.sh (from rev 18126, trunk/uClibc/extra/config/conf-header.sh) =================================================================== --- trunk/uClibc/extra/scripts/conf-header.sh (rev 0) +++ trunk/uClibc/extra/scripts/conf-header.sh 2007-03-17 02:45:59 UTC (rev 18129) @@ -0,0 +1,27 @@ +#!/bin/sh -e + +# Turn .config into a header file + +if [ -z "$1" ] ; then + echo "Usage: conf-header.sh <.config>" + exit 1 +fi + +cat < directly; use instead +#endif + +#define __UCLIBC_MAJOR__ ${MAJOR_VERSION} +#define __UCLIBC_MINOR__ ${MINOR_VERSION} +#define __UCLIBC_SUBLEVEL__ ${SUBLEVEL} +EOF + +exec \ +sed \ + -e '/^#$/d' \ + -e '/^[^#]/s:^\([^=]*\)=\(.*\):#define __\1__ \2:' \ + -e '/^#define /s: y$: 1:' \ + -e '/^# .* is not set$/s:^# \(.*\) is not set$:#undef __\1__:' \ + -e 's:^# \(.*\)$:/* \1 */:' \ + $1 From bugs at busybox.net Fri Mar 16 15:57:22 2007 From: bugs at busybox.net (bugs at busybox.net) Date: Fri, 16 Mar 2007 15:57:22 -0700 Subject: [uClibc 0001275]: posix_memalign missing Message-ID: <878ce78288b045c8fa957003de1c936b@bugs.uclibc.org> The following issue has been SUBMITTED. ====================================================================== http://busybox.net/bugs/view.php?id=1275 ====================================================================== Reported By: Franck78 Assigned To: uClibc ====================================================================== Project: uClibc Issue ID: 1275 Category: Architecture Specific Reproducibility: always Severity: minor Priority: normal Status: assigned ====================================================================== Date Submitted: 03-16-2007 15:57 PDT Last Modified: 03-16-2007 15:57 PDT ====================================================================== Summary: posix_memalign missing Description: Hello, Isn't the revision 11188 supposed to add posix_memalign() into uClibc...? The file include/stdlib.h already contains the prototype for it! Franck http://www.busybox.net/cgi-bin/viewcvs.cgi/trunk/uClibc/libc/stdlib/posix_memalign.c?rev=11188&view=auto ====================================================================== Issue History Date Modified Username Field Change ====================================================================== 03-16-07 15:57 Franck78 New Issue 03-16-07 15:57 Franck78 Status new => assigned 03-16-07 15:57 Franck78 Assigned To => uClibc ====================================================================== From landley at uclibc.org Fri Mar 16 12:38:17 2007 From: landley at uclibc.org (landley at uclibc.org) Date: Fri, 16 Mar 2007 12:38:17 -0700 (PDT) Subject: svn commit: trunk/uClibc/extra/Configs Message-ID: <20070316193817.47C0B4860F@busybox.net> Author: landley Date: 2007-03-16 12:38:14 -0700 (Fri, 16 Mar 2007) New Revision: 18127 Log: No configs actually set LIBGCC_CFLAGS to anything, and it's not even written into the resulting .config, so remove it. Modified: trunk/uClibc/extra/Configs/Config.alpha trunk/uClibc/extra/Configs/Config.arm trunk/uClibc/extra/Configs/Config.bfin trunk/uClibc/extra/Configs/Config.cris trunk/uClibc/extra/Configs/Config.e1 trunk/uClibc/extra/Configs/Config.frv trunk/uClibc/extra/Configs/Config.h8300 trunk/uClibc/extra/Configs/Config.hppa trunk/uClibc/extra/Configs/Config.i386 trunk/uClibc/extra/Configs/Config.i960 trunk/uClibc/extra/Configs/Config.ia64 trunk/uClibc/extra/Configs/Config.m68k trunk/uClibc/extra/Configs/Config.microblaze trunk/uClibc/extra/Configs/Config.mips trunk/uClibc/extra/Configs/Config.nios trunk/uClibc/extra/Configs/Config.nios2 trunk/uClibc/extra/Configs/Config.powerpc trunk/uClibc/extra/Configs/Config.sh trunk/uClibc/extra/Configs/Config.sh64 trunk/uClibc/extra/Configs/Config.sparc trunk/uClibc/extra/Configs/Config.v850 trunk/uClibc/extra/Configs/Config.vax trunk/uClibc/extra/Configs/Config.x86_64 Changeset: Modified: trunk/uClibc/extra/Configs/Config.alpha =================================================================== --- trunk/uClibc/extra/Configs/Config.alpha 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.alpha 2007-03-16 19:38:14 UTC (rev 18127) @@ -17,6 +17,3 @@ config ARCH_CFLAGS string - -config LIBGCC_CFLAGS - string Modified: trunk/uClibc/extra/Configs/Config.arm =================================================================== --- trunk/uClibc/extra/Configs/Config.arm 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.arm 2007-03-16 19:38:14 UTC (rev 18127) @@ -15,9 +15,6 @@ config ARCH_CFLAGS string -config LIBGCC_CFLAGS - string - choice prompt "Target ABI" default CONFIG_ARM_OABI Modified: trunk/uClibc/extra/Configs/Config.bfin =================================================================== --- trunk/uClibc/extra/Configs/Config.bfin 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.bfin 2007-03-16 19:38:14 UTC (rev 18127) @@ -16,6 +16,3 @@ config ARCH_CFLAGS string - -config LIBGCC_CFLAGS - string Modified: trunk/uClibc/extra/Configs/Config.cris =================================================================== --- trunk/uClibc/extra/Configs/Config.cris 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.cris 2007-03-16 19:38:14 UTC (rev 18127) @@ -15,9 +15,6 @@ config ARCH_CFLAGS string -config LIBGCC_CFLAGS - string - choice prompt "Target Architecture Type" default CONFIG_CRIS Modified: trunk/uClibc/extra/Configs/Config.e1 =================================================================== --- trunk/uClibc/extra/Configs/Config.e1 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.e1 2007-03-16 19:38:14 UTC (rev 18127) @@ -21,6 +21,3 @@ config ARCH_CFLAGS string default "-mgnu-param" - -config LIBGCC_CFLAGS - string Modified: trunk/uClibc/extra/Configs/Config.frv =================================================================== --- trunk/uClibc/extra/Configs/Config.frv 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.frv 2007-03-16 19:38:14 UTC (rev 18127) @@ -16,6 +16,3 @@ config ARCH_CFLAGS string - -config LIBGCC_CFLAGS - string Modified: trunk/uClibc/extra/Configs/Config.h8300 =================================================================== --- trunk/uClibc/extra/Configs/Config.h8300 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.h8300 2007-03-16 19:38:14 UTC (rev 18127) @@ -29,6 +29,3 @@ config ARCH_CFLAGS string - -config LIBGCC_CFLAGS - string Modified: trunk/uClibc/extra/Configs/Config.hppa =================================================================== --- trunk/uClibc/extra/Configs/Config.hppa 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.hppa 2007-03-16 19:38:14 UTC (rev 18127) @@ -18,6 +18,3 @@ config ARCH_CFLAGS string - -config LIBGCC_CFLAGS - string Modified: trunk/uClibc/extra/Configs/Config.i386 =================================================================== --- trunk/uClibc/extra/Configs/Config.i386 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.i386 2007-03-16 19:38:14 UTC (rev 18127) @@ -13,12 +13,6 @@ select ARCH_LITTLE_ENDIAN select ARCH_HAS_MMU -config ARCH_CFLAGS - string - -config LIBGCC_CFLAGS - string - choice prompt "Target x86 Processor Family" default CONFIG_GENERIC_386 Modified: trunk/uClibc/extra/Configs/Config.i960 =================================================================== --- trunk/uClibc/extra/Configs/Config.i960 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.i960 2007-03-16 19:38:14 UTC (rev 18127) @@ -17,6 +17,3 @@ config ARCH_CFLAGS string default "-mh -mint32 -fsigned-char" - -config LIBGCC_CFLAGS - string Modified: trunk/uClibc/extra/Configs/Config.ia64 =================================================================== --- trunk/uClibc/extra/Configs/Config.ia64 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.ia64 2007-03-16 19:38:14 UTC (rev 18127) @@ -16,6 +16,3 @@ config ARCH_CFLAGS string - -config LIBGCC_CFLAGS - string Modified: trunk/uClibc/extra/Configs/Config.m68k =================================================================== --- trunk/uClibc/extra/Configs/Config.m68k 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.m68k 2007-03-16 19:38:14 UTC (rev 18127) @@ -15,6 +15,3 @@ config ARCH_CFLAGS string default "-Wa,--bitwise-or" - -config LIBGCC_CFLAGS - string Modified: trunk/uClibc/extra/Configs/Config.microblaze =================================================================== --- trunk/uClibc/extra/Configs/Config.microblaze 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.microblaze 2007-03-16 19:38:14 UTC (rev 18127) @@ -16,9 +16,6 @@ config ARCH_CFLAGS string -config LIBGCC_CFLAGS - string - config CROSS string default "mb-" Modified: trunk/uClibc/extra/Configs/Config.mips =================================================================== --- trunk/uClibc/extra/Configs/Config.mips 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.mips 2007-03-16 19:38:14 UTC (rev 18127) @@ -16,9 +16,6 @@ string default "-mno-split-addresses" -config LIBGCC_CFLAGS - string - choice prompt "Target ABI" default CONFIG_MIPS_O32_ABI Modified: trunk/uClibc/extra/Configs/Config.nios =================================================================== --- trunk/uClibc/extra/Configs/Config.nios 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.nios 2007-03-16 19:38:14 UTC (rev 18127) @@ -19,8 +19,5 @@ string default "-funaligned-struct-hack" -config LIBGCC_CFLAGS - string - config CROSS string Modified: trunk/uClibc/extra/Configs/Config.nios2 =================================================================== --- trunk/uClibc/extra/Configs/Config.nios2 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.nios2 2007-03-16 19:38:14 UTC (rev 18127) @@ -18,8 +18,5 @@ config ARCH_CFLAGS string -config LIBGCC_CFLAGS - string - config CROSS string Modified: trunk/uClibc/extra/Configs/Config.powerpc =================================================================== --- trunk/uClibc/extra/Configs/Config.powerpc 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.powerpc 2007-03-16 19:38:14 UTC (rev 18127) @@ -16,9 +16,6 @@ config ARCH_CFLAGS string -config LIBGCC_CFLAGS - string - choice prompt "Target Processor Type" default CONFIG_CLASSIC Modified: trunk/uClibc/extra/Configs/Config.sh =================================================================== --- trunk/uClibc/extra/Configs/Config.sh 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.sh 2007-03-16 19:38:14 UTC (rev 18127) @@ -15,9 +15,6 @@ config ARCH_CFLAGS string -config LIBGCC_CFLAGS - string - choice prompt "Target Processor Type" default CONFIG_SH4 Modified: trunk/uClibc/extra/Configs/Config.sh64 =================================================================== --- trunk/uClibc/extra/Configs/Config.sh64 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.sh64 2007-03-16 19:38:14 UTC (rev 18127) @@ -15,9 +15,6 @@ config ARCH_CFLAGS string -config LIBGCC_CFLAGS - string - choice prompt "Target Processor Type" default CONFIG_SH5 Modified: trunk/uClibc/extra/Configs/Config.sparc =================================================================== --- trunk/uClibc/extra/Configs/Config.sparc 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.sparc 2007-03-16 19:38:14 UTC (rev 18127) @@ -15,9 +15,6 @@ config ARCH_CFLAGS string -config LIBGCC_CFLAGS - string - choice prompt "Target Processor Type" default CONFIG_SPARC_V8 Modified: trunk/uClibc/extra/Configs/Config.v850 =================================================================== --- trunk/uClibc/extra/Configs/Config.v850 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.v850 2007-03-16 19:38:14 UTC (rev 18127) @@ -17,9 +17,6 @@ config ARCH_CFLAGS string -config LIBGCC_CFLAGS - string - config CROSS string default "v850e-elf-" Modified: trunk/uClibc/extra/Configs/Config.vax =================================================================== --- trunk/uClibc/extra/Configs/Config.vax 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.vax 2007-03-16 19:38:14 UTC (rev 18127) @@ -19,9 +19,6 @@ config ARCH_LDFLAGS string -config LIBGCC_CFLAGS - string - config CROSS string default "vax-linux-uclibc-" Modified: trunk/uClibc/extra/Configs/Config.x86_64 =================================================================== --- trunk/uClibc/extra/Configs/Config.x86_64 2007-03-16 11:14:38 UTC (rev 18126) +++ trunk/uClibc/extra/Configs/Config.x86_64 2007-03-16 19:38:14 UTC (rev 18127) @@ -16,6 +16,3 @@ config ARCH_CFLAGS string - -config LIBGCC_CFLAGS - string From vapier at uclibc.org Sun Mar 18 14:33:33 2007 From: vapier at uclibc.org (vapier at uclibc.org) Date: Sun, 18 Mar 2007 14:33:33 -0700 (PDT) Subject: svn commit: trunk/uClibc/extra/config Message-ID: <20070318213333.268E4485B5@busybox.net> Author: vapier Date: 2007-03-18 14:33:32 -0700 (Sun, 18 Mar 2007) New Revision: 18147 Log: fix typo pointed out by Al Stone Modified: trunk/uClibc/extra/config/README.uClibc Changeset: Modified: trunk/uClibc/extra/config/README.uClibc =================================================================== --- trunk/uClibc/extra/config/README.uClibc 2007-03-18 20:33:26 UTC (rev 18146) +++ trunk/uClibc/extra/config/README.uClibc 2007-03-18 21:33:32 UTC (rev 18147) @@ -1,4 +1,4 @@ -This is a copy of the kconfig code in the kernel tweaked to suite uClibc. +This is a copy of the kconfig code in the kernel tweaked to suit uClibc. To update: cp -r /usr/src/linux/scripts/kconfig extra/config.new From bugs at busybox.net Sun Mar 18 14:36:25 2007 From: bugs at busybox.net (bugs at busybox.net) Date: Sun, 18 Mar 2007 14:36:25 -0700 Subject: [uClibc 0001275]: posix_memalign missing Message-ID: <52323fe87960d29e0225273c0eaba7b1@busybox.net> The following issue has been CLOSED ====================================================================== http://busybox.net/bugs/view.php?id=1275 ====================================================================== Reported By: Franck78 Assigned To: uClibc ====================================================================== Project: uClibc Issue ID: 1275 Category: Architecture Specific Reproducibility: always Severity: minor Priority: normal Status: closed Resolution: unable to reproduce Fixed in Version: ====================================================================== Date Submitted: 03-16-2007 15:57 PDT Last Modified: 03-18-2007 14:36 PDT ====================================================================== Summary: posix_memalign missing Description: Hello, Isn't the revision 11188 supposed to add posix_memalign() into uClibc...? The file include/stdlib.h already contains the prototype for it! Franck http://www.busybox.net/cgi-bin/viewcvs.cgi/trunk/uClibc/libc/stdlib/posix_memalign.c?rev=11188&view=auto ====================================================================== ---------------------------------------------------------------------- vapier - 03-18-07 14:36 ---------------------------------------------------------------------- no real information here as to what the problem is ... my uclibc/svn has the func in libc.so Issue History Date Modified Username Field Change ====================================================================== 03-16-07 15:57 Franck78 New Issue 03-16-07 15:57 Franck78 Status new => assigned 03-16-07 15:57 Franck78 Assigned To => uClibc 03-16-07 15:57 Franck78 Issue Monitored: Franck78 03-18-07 14:36 vapier Note Added: 0002240 03-18-07 14:36 vapier Status assigned => closed 03-18-07 14:36 vapier Resolution open => unable to reproduce ====================================================================== From vapier at uclibc.org Sun Mar 18 14:37:45 2007 From: vapier at uclibc.org (vapier at uclibc.org) Date: Sun, 18 Mar 2007 14:37:45 -0700 (PDT) Subject: svn commit: trunk/uClibc/libc/sysdeps/linux/common Message-ID: <20070318213745.A061648572@busybox.net> Author: vapier Date: 2007-03-18 14:37:44 -0700 (Sun, 18 Mar 2007) New Revision: 18148 Log: Bernd Schmidt writes: The following patch is needed for libc to be able to emulate poll with ppoll. Modified: trunk/uClibc/libc/sysdeps/linux/common/ppoll.c Changeset: Modified: trunk/uClibc/libc/sysdeps/linux/common/ppoll.c =================================================================== --- trunk/uClibc/libc/sysdeps/linux/common/ppoll.c 2007-03-18 21:33:32 UTC (rev 18147) +++ trunk/uClibc/libc/sysdeps/linux/common/ppoll.c 2007-03-18 21:37:44 UTC (rev 18148) @@ -22,6 +22,8 @@ #ifdef __NR_ppoll +libc_hidden_proto(ppoll) + # define __NR___libc_ppoll __NR_ppoll static inline _syscall4(int, __libc_ppoll, struct pollfd *, fds, @@ -43,5 +45,6 @@ return __libc_ppoll(fds, nfds, timeout, sigmask); } +libc_hidden_def(ppoll) #endif From vapier at uclibc.org Sun Mar 18 14:41:50 2007 From: vapier at uclibc.org (vapier at uclibc.org) Date: Sun, 18 Mar 2007 14:41:50 -0700 (PDT) Subject: svn commit: trunk/uClibc/docs/uclibc.org Message-ID: <20070318214150.1C4974855F@busybox.net> Author: vapier Date: 2007-03-18 14:41:49 -0700 (Sun, 18 Mar 2007) New Revision: 18150 Log: use html entities rather than the ISO 8859 version Modified: trunk/uClibc/docs/uclibc.org/FAQ.html Changeset: Modified: trunk/uClibc/docs/uclibc.org/FAQ.html =================================================================== --- trunk/uClibc/docs/uclibc.org/FAQ.html 2007-03-18 21:40:28 UTC (rev 18149) +++ trunk/uClibc/docs/uclibc.org/FAQ.html 2007-03-18 21:41:49 UTC (rev 18150) @@ -53,7 +53,7 @@

Why is it called uClibc?

- The letter 'u' is short for ? (the greek letter "mu"). ? is commonly used + The letter 'u' is short for µ (the greek letter "mu"). µ is commonly used as the abbreviation for the word "micro". The capital "C" is short for "controller". So the name uClibc is sortof an abbreviation for "the microcontroller C library". For simplicity, uClibc is pronounced From vapier at uclibc.org Sun Mar 18 14:42:49 2007 From: vapier at uclibc.org (vapier at uclibc.org) Date: Sun, 18 Mar 2007 14:42:49 -0700 (PDT) Subject: svn commit: trunk/uClibc/docs/uclibc.org Message-ID: <20070318214249.15EF84855F@busybox.net> Author: vapier Date: 2007-03-18 14:42:48 -0700 (Sun, 18 Mar 2007) New Revision: 18151 Log: fix one more to use html entities rather than the ISO 8859 version Modified: trunk/uClibc/docs/uclibc.org/FAQ.html Changeset: Modified: trunk/uClibc/docs/uclibc.org/FAQ.html =================================================================== --- trunk/uClibc/docs/uclibc.org/FAQ.html 2007-03-18 21:41:49 UTC (rev 18150) +++ trunk/uClibc/docs/uclibc.org/FAQ.html 2007-03-18 21:42:48 UTC (rev 18151) @@ -60,7 +60,7 @@ "yew-see-lib-see".

The name is partly historical, since uClibc was originally - created to support ?Clinux, a port of + created to support µClinux, a port of Linux for MMU-less microcontrollers such as the Dragonball, Coldfire, and ARM7TDMI. These days, uClibc also works just fine on normal Linux systems (such as i386, ARM, and PowerPC), but we couldn't think of a better name. From gkajmowi at uclibc.org Sun Mar 18 14:44:01 2007 From: gkajmowi at uclibc.org (gkajmowi at uclibc.org) Date: Sun, 18 Mar 2007 14:44:01 -0700 (PDT) Subject: svn commit: trunk/uClibc++ Message-ID: <20070318214401.8BBD248579@busybox.net> Author: gkajmowi Date: 2007-03-18 14:44:00 -0700 (Sun, 18 Mar 2007) New Revision: 18152 Log: Add thank you comment. Modified: trunk/uClibc++/BugFinders Changeset: Modified: trunk/uClibc++/BugFinders =================================================================== --- trunk/uClibc++/BugFinders 2007-03-18 21:42:48 UTC (rev 18151) +++ trunk/uClibc++/BugFinders 2007-03-18 21:44:00 UTC (rev 18152) @@ -66,6 +66,9 @@ 2006-02-10: 1 : Noted that long_double support should depend upon float support 2006-02-09: 1+1: Found problem with functional binder. Used BTS. +Vijay: 2 Points +2007-03-10: Found lack of ios::exception support + Thomas Volpini: 2 Points 2006-08-11: Found memory leak in vector. Provided test case and fix. From vapier at uclibc.org Sun Mar 18 14:50:03 2007 From: vapier at uclibc.org (vapier at uclibc.org) Date: Sun, 18 Mar 2007 14:50:03 -0700 (PDT) Subject: svn commit: trunk/uClibc/docs/uclibc.org Message-ID: <20070318215003.21E6E48579@busybox.net> Author: vapier Date: 2007-03-18 14:50:02 -0700 (Sun, 18 Mar 2007) New Revision: 18154 Log: remove dead link as pointed out by Denis Vlasenko Modified: trunk/uClibc/docs/uclibc.org/FAQ.html Changeset: Modified: trunk/uClibc/docs/uclibc.org/FAQ.html =================================================================== --- trunk/uClibc/docs/uclibc.org/FAQ.html 2007-03-18 21:45:21 UTC (rev 18153) +++ trunk/uClibc/docs/uclibc.org/FAQ.html 2007-03-18 21:50:02 UTC (rev 18154) @@ -336,9 +336,7 @@

Each of these uClibc development systems was created using - buildroot, specifically, - buildroot.tar.bz2 - along with these sources. + buildroot.

From bugs at busybox.net Sun Mar 18 15:18:20 2007 From: bugs at busybox.net (bugs at busybox.net) Date: Sun, 18 Mar 2007 15:18:20 -0700 Subject: [uClibc 0001275]: posix_memalign missing Message-ID: <9d9d65f9c20fc13b6439e7e4a4407be0@busybox.net> The following issue has been REOPENED. ====================================================================== http://busybox.net/bugs/view.php?id=1275 ====================================================================== Reported By: Franck78 Assigned To: uClibc ====================================================================== Project: uClibc Issue ID: 1275 Category: Architecture Specific Reproducibility: always Severity: minor Priority: normal Status: feedback ====================================================================== Date Submitted: 03-16-2007 15:57 PDT Last Modified: 03-18-2007 15:18 PDT ====================================================================== Summary: posix_memalign missing Description: Hello, Isn't the revision 11188 supposed to add posix_memalign() into uClibc...? The file include/stdlib.h already contains the prototype for it! Franck http://www.busybox.net/cgi-bin/viewcvs.cgi/trunk/uClibc/libc/stdlib/posix_memalign.c?rev=11188&view=auto ====================================================================== ---------------------------------------------------------------------- vapier - 03-18-07 14:36 ---------------------------------------------------------------------- no real information here as to what the problem is ... my uclibc/svn has the func in libc.so ---------------------------------------------------------------------- Franck78 - 03-18-07 15:18 ---------------------------------------------------------------------- Please look inside the uClib-0.9.28.3.tar for the file posix_memalign.c file... It is not inside it. Franck Issue History Date Modified Username Field Change ====================================================================== 03-16-07 15:57 Franck78 New Issue 03-16-07 15:57 Franck78 Status new => assigned 03-16-07 15:57 Franck78 Assigned To => uClibc 03-16-07 15:57 Franck78 Issue Monitored: Franck78 03-18-07 14:36 vapier Note Added: 0002240 03-18-07 14:36 vapier Status assigned => closed 03-18-07 14:36 vapier Resolution open => unable to reproduce 03-18-07 15:18 Franck78 Status closed => feedback 03-18-07 15:18 Franck78 Resolution unable to reproduce => reopened 03-18-07 15:18 Franck78 Note Added: 0002241 ====================================================================== From bugs at busybox.net Sun Mar 18 15:27:36 2007 From: bugs at busybox.net (bugs at busybox.net) Date: Sun, 18 Mar 2007 15:27:36 -0700 Subject: [uClibc 0001275]: posix_memalign missing Message-ID: <663d30f438637b07be50caf9d20d762c@busybox.net> The following issue has been CLOSED ====================================================================== http://busybox.net/bugs/view.php?id=1275 ====================================================================== Reported By: Franck78 Assigned To: uClibc ====================================================================== Project: uClibc Issue ID: 1275 Category: Architecture Specific Reproducibility: always Severity: minor Priority: normal Status: closed Resolution: won't fix Fixed in Version: ====================================================================== Date Submitted: 03-16-2007 15:57 PDT Last Modified: 03-18-2007 15:27 PDT ====================================================================== Summary: posix_memalign missing Description: Hello, Isn't the revision 11188 supposed to add posix_memalign() into uClibc...? The file include/stdlib.h already contains the prototype for it! Franck http://www.busybox.net/cgi-bin/viewcvs.cgi/trunk/uClibc/libc/stdlib/posix_memalign.c?rev=11188&view=auto ====================================================================== ---------------------------------------------------------------------- vapier - 03-18-07 14:36 ---------------------------------------------------------------------- no real information here as to what the problem is ... my uclibc/svn has the func in libc.so ---------------------------------------------------------------------- Franck78 - 03-18-07 15:18 ---------------------------------------------------------------------- Please look inside the uClib-0.9.28.3.tar for the file posix_memalign.c file... It is not inside it. Franck ---------------------------------------------------------------------- vapier - 03-18-07 15:27 ---------------------------------------------------------------------- it was added to trunk, not to the 0.9.28 branch Issue History Date Modified Username Field Change ====================================================================== 03-16-07 15:57 Franck78 New Issue 03-16-07 15:57 Franck78 Status new => assigned 03-16-07 15:57 Franck78 Assigned To => uClibc 03-16-07 15:57 Franck78 Issue Monitored: Franck78 03-18-07 14:36 vapier Note Added: 0002240 03-18-07 14:36 vapier Status assigned => closed 03-18-07 14:36 vapier Resolution open => unable to reproduce 03-18-07 15:18 Franck78 Status closed => feedback 03-18-07 15:18 Franck78 Resolution unable to reproduce => reopened 03-18-07 15:18 Franck78 Note Added: 0002241 03-18-07 15:27 vapier Note Added: 0002242 03-18-07 15:27 vapier Status feedback => closed 03-18-07 15:27 vapier Resolution reopened => won't fix ====================================================================== From astroli at ms8.hinet.net Sun Mar 18 18:01:09 2007 From: astroli at ms8.hinet.net (Leon) Date: Mon, 19 Mar 2007 09:01:09 +0800 Subject: Question about INTERP section Message-ID: <00ab01c769c2$17f98970$0f01a8c0@LeonDell> Hi, In uClibc, libc/misc/internals/interp.c will generate .interp section. In gcc, gcc/config/arm/linux-elf.h #define LINK_SPEC %{!dynamic-linker:-dynamic-linker /lib/ld-linux-so.2} With readelf, I can get Program Headers: INTERP [Request program interpreter: /lib/ld-uClibc.so.0] How does the linker generate the above INTERP section? Thanks, Regards, Leon -------------- next part -------------- An HTML attachment was scrubbed... URL: http://busybox.net/lists/uclibc-cvs/attachments/20070319/8d88f691/attachment-0001.htm From vapier at uclibc.org Mon Mar 19 02:49:05 2007 From: vapier at uclibc.org (vapier at uclibc.org) Date: Mon, 19 Mar 2007 02:49:05 -0700 (PDT) Subject: svn commit: trunk/uClibc: ldso/ldso ldso/libdl libc libcrypt libi etc... Message-ID: <20070319094905.D5CD34809E@busybox.net> Author: vapier Date: 2007-03-19 02:49:04 -0700 (Mon, 19 Mar 2007) New Revision: 18155 Log: #1273 if EXTRAVERSION is set, make sure we respect it Modified: trunk/uClibc/Makefile.in trunk/uClibc/Rules.mak trunk/uClibc/ldso/ldso/Makefile.in trunk/uClibc/ldso/libdl/Makefile.in trunk/uClibc/libc/Makefile.in trunk/uClibc/libcrypt/Makefile.in trunk/uClibc/libintl/Makefile.in trunk/uClibc/libm/Makefile.in trunk/uClibc/libnsl/Makefile.in trunk/uClibc/libpthread/linuxthreads.old/Makefile.in trunk/uClibc/libpthread/linuxthreads.old_db/Makefile.in trunk/uClibc/libpthread/linuxthreads/Makefile.in trunk/uClibc/libpthread/linuxthreads_db/Makefile.in trunk/uClibc/libresolv/Makefile.in trunk/uClibc/librt/Makefile.in trunk/uClibc/libutil/Makefile.in Changeset: Modified: trunk/uClibc/Makefile.in =================================================================== --- trunk/uClibc/Makefile.in 2007-03-18 21:50:02 UTC (rev 18154) +++ trunk/uClibc/Makefile.in 2007-03-19 09:49:04 UTC (rev 18155) @@ -261,13 +261,13 @@ install_runtime: ifeq ($(HAVE_SHARED),y) $(INSTALL) -d $(PREFIX)$(RUNTIME_PREFIX)lib - $(INSTALL) -m 644 lib/lib*-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so \ + $(INSTALL) -m 644 lib/lib*-$(VERSION).so \ $(PREFIX)$(RUNTIME_PREFIX)lib cd lib && $(TAR) -cf - *.so.* | $(TAR) -xf - -C $(PREFIX)$(RUNTIME_PREFIX)lib - @if [ -x lib/$(UCLIBC_LDSO_NAME)-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so ] ; then \ + @if [ -x lib/$(UCLIBC_LDSO_NAME)-$(VERSION).so ] ; then \ set -e; \ $(SHELL_SET_X); \ - $(INSTALL) -m 755 lib/$(UCLIBC_LDSO_NAME)-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so \ + $(INSTALL) -m 755 lib/$(UCLIBC_LDSO_NAME)-$(VERSION).so \ $(PREFIX)$(RUNTIME_PREFIX)lib; \ fi endif Modified: trunk/uClibc/Rules.mak =================================================================== --- trunk/uClibc/Rules.mak 2007-03-18 21:50:02 UTC (rev 18154) +++ trunk/uClibc/Rules.mak 2007-03-19 09:49:04 UTC (rev 18155) @@ -78,7 +78,11 @@ MAJOR_VERSION := 0 MINOR_VERSION := 9 SUBLEVEL := 29 +EXTRAVERSION := 4 VERSION := $(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL) +ifneq ($(EXTRAVERSION),) +VERSION := $(VERSION).$(EXTRAVERSION) +endif # Ensure consistent sort order, 'gcc -print-search-dirs' behavior, etc. LC_ALL := C export MAJOR_VERSION MINOR_VERSION SUBLEVEL VERSION LC_ALL Modified: trunk/uClibc/ldso/ldso/Makefile.in =================================================================== --- trunk/uClibc/ldso/ldso/Makefile.in 2007-03-18 21:50:02 UTC (rev 18154) ++