diff --git a/src/system/kernel/lib/Jamfile b/src/system/kernel/lib/Jamfile index 3591b3afa9..0d5f7ffcd6 100644 --- a/src/system/kernel/lib/Jamfile +++ b/src/system/kernel/lib/Jamfile @@ -47,6 +47,14 @@ SEARCH_SOURCE += [ FDirName $(posixSources) time ] ; SEARCH_SOURCE += [ FDirName $(posixSources) unistd ] ; SEARCH_SOURCE += [ FDirName $(gnuSources) ] ; +local muslSources = + ffs.c + ; + +SourceHdrs $(muslSources) : + [ FDirName $(posixSources) musl internal ] + [ FDirName $(posixSources) musl arch $(TARGET_KERNEL_ARCH_DIR) ] ; + KernelMergeObject kernel_lib_posix.o : # main kernel_errno.cpp @@ -99,7 +107,6 @@ KernelMergeObject kernel_lib_posix.o : usergroup.cpp write.c # string - ffs.cpp memchr.c memcmp.c memmem.c @@ -129,9 +136,12 @@ KernelMergeObject kernel_lib_posix.o : strupr.c stpcpy.c + $(muslSources) : $(TARGET_KERNEL_PIC_CCFLAGS) ; +SEARCH on [ FGristFiles $(muslSources) ] += [ FDirName $(posixSources) musl misc ] ; + # misc SEARCH_SOURCE = [ FDirName $(HAIKU_TOP) src kits support ] ; diff --git a/src/system/libroot/posix/musl/misc/Jamfile b/src/system/libroot/posix/musl/misc/Jamfile index 4a4d7fb998..afa139f6c3 100644 --- a/src/system/libroot/posix/musl/misc/Jamfile +++ b/src/system/libroot/posix/musl/misc/Jamfile @@ -2,7 +2,7 @@ SubDir HAIKU_TOP src system libroot posix musl misc ; SubDirSysHdrs [ FDirName $(SUBDIR) .. include ] ; UseHeaders [ FDirName $(SUBDIR) .. internal ] ; -UseHeaders [ FDirName $(SUBDIR) .. arch $(TARGET_KERNEL_ARCH_DIR) ] ; +UseHeaders [ FDirName $(SUBDIR) .. arch $(TARGET_ARCH) ] ; local architectureObject ; for architectureObject in [ MultiArchSubDirSetup ] { diff --git a/src/system/libroot/posix/musl/misc/ffs.c b/src/system/libroot/posix/musl/misc/ffs.c index 240b3a101d..a202a48ac6 100644 --- a/src/system/libroot/posix/musl/misc/ffs.c +++ b/src/system/libroot/posix/musl/misc/ffs.c @@ -1,5 +1,6 @@ #include "atomic.h" +int ffs(int i); int ffs(int i) { return i ? a_ctz_l(i)+1 : 0;