Bug 6224 - Cannot enable threads on arm7tdmi (MMU-less) arch
Summary: Cannot enable threads on arm7tdmi (MMU-less) arch
Status: NEW
Alias: None
Product: uClibc
Classification: Unclassified
Component: Threads (show other bugs)
Version: 0.9.33.2
Hardware: PC Linux
: P5 minor
Target Milestone: ---
Assignee: unassigned
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-05-04 04:57 UTC by Adam Nielsen
Modified: 2013-05-04 04:58 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:


Attachments
uClibc config, generated through buildroot (5.72 KB, application/octet-stream)
2013-05-04 04:57 UTC, Adam Nielsen
Details
buildroot config to generate error (26.24 KB, application/octet-stream)
2013-05-04 04:58 UTC, Adam Nielsen
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Adam Nielsen 2013-05-04 04:57:46 UTC
Created attachment 4862 [details]
uClibc config, generated through buildroot

It does not seem to be possible to compile uClibc on the arm7tdmi architecture with threads enabled:

With old/new linuxthreads:

  CC libpthread/linuxthreads/sysdeps/arm/pspinlock.os
  CC libpthread/linuxthreads/sysdeps/unix/sysv/linux/fork.os
In file included from ./libpthread/linuxthreads/sysdeps/unix/sysv/linux/fork.h:21:0,
                 from libpthread/linuxthreads/sysdeps/unix/sysv/linux/fork.c:21:
./include/bits/libc-lock.h:36:27: fatal error: lowlevellock.h: No such file or directory
 # include <lowlevellock.h>
                           ^
compilation terminated.
make[1]: *** [libpthread/linuxthreads/sysdeps/unix/sysv/linux/fork.os] Error 1

With native (NPTL) threads:

  AS libpthread/nptl/sysdeps/unix/sysv/linux/arm/clone.os
  AS libpthread/nptl/sysdeps/unix/sysv/linux/arm/vfork.os
  CC libpthread/nptl/sysdeps/unix/sysv/linux/arm/fork.os
In file included from libpthread/nptl/sysdeps/unix/sysv/linux/arm/fork.c:31:0:
libpthread/nptl/sysdeps/unix/sysv/linux/arm/../fork.c:61:17: error: 'fork' undeclared here (not in a function)
 extern __typeof(fork) __libc_fork;
                 ^
libpthread/nptl/sysdeps/unix/sysv/linux/arm/../fork.c:63:1: error: '__libc_fork' redeclared as different kind of symbol
 __libc_fork (void)
 ^
libpthread/nptl/sysdeps/unix/sysv/linux/arm/../fork.c:61:23: note: previous declaration of '__libc_fork' was here
 extern __typeof(fork) __libc_fork;
                       ^
In file included from <command-line>:0:0:
libpthread/nptl/sysdeps/unix/sysv/linux/arm/../fork.c:228:24: error: 'fork' redeclared as different kind of symbol
 weak_alias(__libc_fork,fork)
...

If it is not possible to use threads on an MMU-less system, I think the option should be disabled.
Comment 1 Adam Nielsen 2013-05-04 04:58:59 UTC
Created attachment 4868 [details]
buildroot config to generate error

Add buildroot config