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:
Ingo Weinhold
2007-07-04 22:26:29 +00:00
parent 93a78ecaa4
commit 679cd7d84b
3 changed files with 29 additions and 3 deletions
-1
View File
@@ -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>
+21
View File
@@ -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
View File
@@ -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++) ;