Temporary kludge to fix the build problem under BeOS regarding missing icons
for add-ons/libraries that don't have a signature. I threw our BAppFileInfo code into libhaikucompat_build.a and link <build>mimeset and <build>setversion against it, thus overriding the uncooperative BAppFileInfo implementation in the host platform's libbe. Earlier or later we should use libbe_build.so on BeOS compatible platforms as well, though. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21560 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -16,7 +16,6 @@
|
||||
#include <File.h>
|
||||
#include <fs_attr.h>
|
||||
#include <MimeType.h>
|
||||
#include <RegistrarDefs.h>
|
||||
#include <Resources.h>
|
||||
#include <Roster.h>
|
||||
#include <String.h>
|
||||
|
||||
@@ -9,12 +9,29 @@ if $(TARGET_PLATFORM) = libbe_test {
|
||||
libbeTestSources = misc.cpp syscalls.cpp ;
|
||||
}
|
||||
|
||||
# TODO: This is a temporary kludge. We should actually build libbe_build.so
|
||||
# and use it for the build tools even on BeOS compatible platforms. For the
|
||||
# time being we build the classes we need (BAppFileInfo and its dependencies)
|
||||
# into libhaikucompat_build.a.
|
||||
local libbePatchSources ;
|
||||
if $(HOST_PLATFORM) in r5 bone dano {
|
||||
libbePatchSources += AppFileInfo.cpp Bitmap.cpp GraphicsDefs.cpp ;
|
||||
ObjectSysHdrs $(libbePatchSources)
|
||||
: [ FDirName $(HAIKU_TOP) headers build os app ] ;
|
||||
ObjectSysHdrs $(libbePatchSources)
|
||||
: [ FDirName $(HAIKU_TOP) headers build os interface ] ;
|
||||
ObjectSysHdrs $(libbePatchSources)
|
||||
: [ FDirName $(HAIKU_TOP) headers build os storage ] ;
|
||||
}
|
||||
|
||||
BuildPlatformStaticLibrary libhaikucompat_build.a :
|
||||
atomic.S
|
||||
strcasestr.c
|
||||
strlcat.c
|
||||
strlcpy.c
|
||||
strnlen.c
|
||||
|
||||
$(libbePatchSources)
|
||||
;
|
||||
|
||||
StaticLibrary libhaikucompat.a :
|
||||
@@ -30,3 +47,7 @@ SEARCH on [ FGristFiles strcasestr.c strlcat.c strlcpy.c strnlen.c ]
|
||||
= [ FDirName $(HAIKU_TOP) src system libroot posix string ] ;
|
||||
SEARCH on [ FGristFiles atomic.S ]
|
||||
= [ FDirName $(HAIKU_TOP) src system libroot os arch $(HOST_ARCH) ] ;
|
||||
SEARCH on [ FGristFiles Bitmap.cpp GraphicsDefs.cpp ]
|
||||
= [ FDirName $(HAIKU_TOP) src build libbe interface ] ;
|
||||
SEARCH on [ FGristFiles AppFileInfo.cpp ]
|
||||
= [ FDirName $(HAIKU_TOP) src build libbe storage ] ;
|
||||
|
||||
+8
-2
@@ -19,6 +19,12 @@ local tools =
|
||||
|
||||
USES_BE_API on $(tools) = true ;
|
||||
|
||||
# TODO: temporary kludge
|
||||
local libHaikuCompat ;
|
||||
if $(HOST_PLATFORM) in r5 bone dano {
|
||||
libHaikuCompat = libhaikucompat_build.a ;
|
||||
}
|
||||
|
||||
BuildPlatformMain <build>catattr : catattr.cpp : $(HOST_LIBBE) ;
|
||||
|
||||
BuildPlatformMain <build>copyattr : copyattr.cpp
|
||||
@@ -35,7 +41,7 @@ BuildPlatformMain <build>mimeset :
|
||||
database_support.cpp
|
||||
UpdateMimeInfoThread.cpp
|
||||
MimeUpdateThread.cpp
|
||||
: $(HOST_LIBBE) $(HOST_LIBSTDC++) $(HOST_LIBSUPC++)
|
||||
: $(HOST_LIBBE) $(HOST_LIBSTDC++) $(HOST_LIBSUPC++) $(libHaikuCompat)
|
||||
;
|
||||
|
||||
BuildPlatformMain <build>mkindex : mkindex.cpp : $(HOST_LIBBE) ;
|
||||
@@ -49,7 +55,7 @@ BuildPlatformMain <build>settype : settype.cpp : $(HOST_LIBBE)
|
||||
$(HOST_LIBSTDC++) $(HOST_LIBSUPC++) ;
|
||||
|
||||
BuildPlatformMain <build>setversion : setversion.cpp : $(HOST_LIBBE)
|
||||
$(HOST_LIBSTDC++) $(HOST_LIBSUPC++) ;
|
||||
$(HOST_LIBSTDC++) $(HOST_LIBSUPC++) $(libHaikuCompat) ;
|
||||
|
||||
BuildPlatformMain <build>xres : xres.cpp : $(HOST_LIBBE) $(HOST_LIBSTDC++)
|
||||
$(HOST_LIBSUPC++) ;
|
||||
|
||||
Reference in New Issue
Block a user