trying to find a (compat) way to move to nptl (when ready)

Peter S. Mazinger ps.m at gmx.net
Fri Sep 2 16:34:00 UTC 2005


Hello!

I am trying to remove libpthread dependency from a dev box, so that if 
nptl is done, we can move "smoothly" to it, looking for an update path.
Attached is a patch that corrects the case if UCLIBC_HAS_THREADS is not 
enabled (removing related headers on install)
at least 4 functions are calling for trouble (missing from the non-thread 
version of uClibc)
_stdio_user_locking
__rpc_thread_destroy
flockfile
funlockfile

I have overcome this by adding dummies to a shared lib that was preloaded 
until the apps were rebuilt, that needed these.
Does anyone have an idea how this could be integrated into uClibc, so that 
an update path could be provided?

Thanks, Peter

-- 
Peter S. Mazinger <ps dot m at gmx dot net>           ID: 0xA5F059F2
Key fingerprint = 92A4 31E1 56BC 3D5A 2D08  BB6E C389 975E A5F0 59F2
-------------- next part --------------
--- uClibc/Makefile	2005-08-17 13:56:47 +0200
+++ uClibc/Makefile	2005-09-01 23:01:39 +0200
@@ -216,9 +216,15 @@
 	$(RM) $(PREFIX)$(DEVEL_PREFIX)include/getopt.h
 endif
 ifneq ($(strip $(HAS_SHADOW)),y)
-	# Remove getopt header since shadow password support is disabled.
+	# Remove shadow header since shadow password support is disabled.
 	$(RM) $(PREFIX)$(DEVEL_PREFIX)include/shadow.h
 endif
+ifneq ($(strip $(UCLIBC_HAS_THREADS)),y)
+	# Remove pthread headers since thread support is disabled.
+	$(RM) $(PREFIX)$(DEVEL_PREFIX)include/*thread*.h
+	$(RM) $(PREFIX)$(DEVEL_PREFIX)include/semaphore.h
+	$(RM) $(PREFIX)$(DEVEL_PREFIX)include/bits/*thread*.h
+endif
 	- at for i in `find  $(PREFIX)$(DEVEL_PREFIX) -type d` ; do \
 	    chmod 755 $$i; chmod 644 $$i/*.h > /dev/null 2>&1; \
 	done;
--- uClibc/include/stdio.h.mps	2005-09-01 23:36:22 +0200
+++ uClibc/include/stdio.h	2005-09-01 23:38:37 +0200
@@ -804,7 +804,7 @@
 #endif /* Use GNU.  */
 
 
-#if defined __USE_POSIX || defined __USE_MISC
+#if defined(__UCLIBC_HAS_THREADS__) && ( defined __USE_POSIX || defined __USE_MISC )
 /* These are defined in POSIX.1:1996.  */
 
 /* Acquire ownership of STREAM.  */


More information about the uClibc mailing list