[haiku-commits] Re: haiku: hrev46194 - src/system/libroot build/jam

  • From: Ingo Weinhold <ingo_weinhold@xxxxxx>
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Wed, 09 Oct 2013 00:25:45 +0200

On 10/08/2013 11:36 PM, revol@xxxxxxx wrote:
diff --git a/build/jam/ArchitectureRules b/build/jam/ArchitectureRules
index f56ff9b..7e90f66 100644
--- a/build/jam/ArchitectureRules
+++ b/build/jam/ArchitectureRules
@@ -154,6 +154,10 @@ rule ArchitectureSetup architecture
        HAIKU_GCC_LIBGCC_OBJECTS_$(architecture)
                = 
$(HAIKU_GCC_LIBGCC_OBJECTS_$(architecture):G=libgcc!$(architecture)) ;

That shouldn't be needed anymore.

+       # List of libgcc objects we don't want to keep
+       HAIKU_GCC_LIBGCC_OBJECTS_EXCLUDES_$(architecture)
+               = eabi.o ;
+
        # the C++ standard library
        HAIKU_BUILD_SHARED_LIBSTDC++_$(architecture) = ;
        if $(HAIKU_SHARED_LIBSTDC++_$(architecture)) {
diff --git a/src/system/libroot/Jamfile b/src/system/libroot/Jamfile
index 9a5991b..8f1e746 100644
--- a/src/system/libroot/Jamfile
+++ b/src/system/libroot/Jamfile
@@ -2,6 +2,31 @@ SubDir HAIKU_TOP src system libroot ;

  UsePrivateHeaders libroot runtime_loader ;

+rule FilterArchive {

Coding style...

+       # FilterArchive <target> : <source> : <members to remove>
+
+       # set the tools according to the platform
+       AR on $(1) = $(TARGET_AR_$(TARGET_PACKAGING_ARCH)) d ;
+       # TODO: use $(TARGET_DELARFLAGS_$(TARGET_PACKAGING_ARCH))
+       RANLIB on $(1) = $(TARGET_RANLIB_$(TARGET_PACKAGING_ARCH)) ;
+
+       MakeLocateArch $(1) ;
+       Depends $(1) : $(2) ;
+       File $(1) : $(2) ;
+       # we don't want the path
+       # XXX: is it done this way?
+       NotFile $(3) ;

If you pass it as an action parameter, it will be considered a target and will be bound. The correct solution would be to pass it via an on-target variable instead.

+
+       # delete the unwanted members
+       FilterArchive1 $(1) : $(3) ;
+
+       if $(RANLIB) { Ranlib $(1) ; }

Coding style...

+}
+
+actions FilterArchive1 {

Coding style...

+       $(AR) $(<) $(>)
+}
+

Why not do that in configure instead? For just a "cp" and an "ar" invocation this is a lot of text. And the resulting library isn't gonna change, until configure is run again, anyway.

CU, Ingo


Other related posts: