Initial rework of the build system to support the latest Haiku changes. Patch from Adrien Destgues included, Thanks!
This commit is contained in:
parent
00440a3ffc
commit
007d2bda0a
20
Jamrules
20
Jamrules
|
@ -46,20 +46,16 @@ LOCATE on $(HCACHEFILE) $(JCACHEFILE) = $(GENERATED_DIR) ;
|
||||||
include [ FDirName $(JAM_DIR) CheckRules ] ;
|
include [ FDirName $(JAM_DIR) CheckRules ] ;
|
||||||
CheckGccPlatform ;
|
CheckGccPlatform ;
|
||||||
|
|
||||||
#CheckCurl ;
|
|
||||||
#if ! $(HAVE_CURL) {
|
|
||||||
# Echo "** Caya needs Curl" ;
|
|
||||||
#}
|
|
||||||
|
|
||||||
CheckCaya ;
|
|
||||||
if ! $(HAVE_CAYA) {
|
|
||||||
Echo "** Caya library is needed!" ;
|
|
||||||
Exit 1 ;
|
|
||||||
}
|
|
||||||
|
|
||||||
CheckOpenSSL ;
|
CheckOpenSSL ;
|
||||||
if ! $(HAVE_OPENSSL) {
|
if ! $(HAVE_OPENSSL) {
|
||||||
Echo "** MSN, Jabber, GoogleTalk and Facebook protocols are disabled for lack of OpenSSL" ;
|
Echo "Warning OpenSSL is missing!" ;
|
||||||
|
exit 0 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
CheckExpat ;
|
||||||
|
if ! $(HAVE_EXPAT) {
|
||||||
|
Echo "Warning Expat is missing!" ;
|
||||||
|
exit 1 ;
|
||||||
}
|
}
|
||||||
|
|
||||||
# Include jam scripts
|
# Include jam scripts
|
||||||
|
|
|
@ -68,6 +68,8 @@ Depends Caya : libinterface.a ;
|
||||||
Depends Caya : librunview.a ;
|
Depends Caya : librunview.a ;
|
||||||
Depends Caya : libsupport.a ;
|
Depends Caya : libsupport.a ;
|
||||||
|
|
||||||
|
LINKFLAGS on Caya += -L$(EXPAT_LIBRARY_DIR) ;
|
||||||
|
|
||||||
InstallBin $(CAYA_DIRECTORY) : Caya ;
|
InstallBin $(CAYA_DIRECTORY) : Caya ;
|
||||||
|
|
||||||
InstallFile $(COMMON_INCLUDE_DIRECTORY)/caya : CayaConstants.h ;
|
InstallFile $(COMMON_INCLUDE_DIRECTORY)/caya : CayaConstants.h ;
|
||||||
|
|
|
@ -14,7 +14,7 @@ rule CheckGccPlatform
|
||||||
# /boot/develop/lib/x86 to judge whether this is a BeOS compatible and thus
|
# /boot/develop/lib/x86 to judge whether this is a BeOS compatible and thus
|
||||||
# gcc 2 platform. This is not entirely correct, but should be good enough
|
# gcc 2 platform. This is not entirely correct, but should be good enough
|
||||||
# for the time being.
|
# for the time being.
|
||||||
local haveLibStdC++.R4 = [ Glob /boot/develop/lib/x86 : libstdc++.r4.so ] ;
|
local haveLibStdC++.R4 = [ Glob /boot/system/develop/tools/lib : libstdc++.r4.so ] ;
|
||||||
if ! $(haveLibStdC++.R4) {
|
if ! $(haveLibStdC++.R4) {
|
||||||
IS_GCC4_PLATFORM = 1 ;
|
IS_GCC4_PLATFORM = 1 ;
|
||||||
Echo Using GCC4 platform ;
|
Echo Using GCC4 platform ;
|
||||||
|
@ -33,101 +33,38 @@ rule CheckOpenSSL
|
||||||
OPENSSL_INCLUDE_DIR = ;
|
OPENSSL_INCLUDE_DIR = ;
|
||||||
OPENSSL_LIBRARY_DIR = ;
|
OPENSSL_LIBRARY_DIR = ;
|
||||||
|
|
||||||
local haveHeaders = [ Glob $(COMMON_INCLUDE_DIRECTORY)/openssl : ssl.h ] ;
|
local haveHeaders = [ Glob $(USER_INCLUDE_DIRECTORY)/openssl : ssl.h ] ;
|
||||||
if $(haveHeaders) {
|
if $(haveHeaders) {
|
||||||
OPENSSL_INCLUDE_DIR = $(COMMON_INCLUDE_DIRECTORY)/openssl ;
|
OPENSSL_INCLUDE_DIR = $(USER_INCLUDE_DIRECTORY) ;
|
||||||
|
|
||||||
local haveLibs = [ Glob $(COMMON_LIB_DIRECTORY) : libssl.so ] ;
|
local haveLibs = [ Glob $(USER_LIB_DIRECTORY) : libssl.so ] ;
|
||||||
if $(haveLibs) {
|
if $(haveLibs) {
|
||||||
OPENSSL_LIBRARY_DIR = $(COMMON_LIB_DIRECTORY) ;
|
OPENSSL_LIBRARY_DIR = $(USER_LIB_DIRECTORY) ;
|
||||||
|
|
||||||
Echo OpenSSL Headers: $(OPENSSL_INCLUDE_DIR) ;
|
Echo OpenSSL Headers: $(OPENSSL_INCLUDE_DIR) ;
|
||||||
Echo OpenSSL Libs: $(OPENSSL_LIBRARY_DIR) ;
|
Echo OpenSSL Libs: $(OPENSSL_LIBRARY_DIR) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
HAVE_OPENSSL = $(haveLibs) ;
|
HAVE_OPENSSL = $(haveLibs) ;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
rule CheckCurl
|
rule CheckExpat
|
||||||
{
|
{
|
||||||
# CheckCurl ;
|
HAVE_EXPAT = ;
|
||||||
# Check for Curl and defined HAVE_CURL according, it also defines
|
EXPAT_INCLUDE_DIR = ;
|
||||||
# CURL_INCLUDE_DIR and CURL_LIBRARY_DIR with location of respectively
|
EXPAT_LIBRARY_DIR = ;
|
||||||
# include and library files.
|
|
||||||
|
|
||||||
HAVE_CURL = ;
|
local haveHeaders = [ Glob $(USER_INCLUDE_DIRECTORY)/ : expat.h ] ;
|
||||||
CURL_INCLUDE_DIR = ;
|
|
||||||
CURL_LIBRARY_DIR = ;
|
|
||||||
|
|
||||||
local haveHeaders = [ Glob $(COMMON_INCLUDE_DIRECTORY)/curl : curl.h ] ;
|
|
||||||
if $(haveHeaders) {
|
if $(haveHeaders) {
|
||||||
CURL_INCLUDE_DIR = $(COMMON_INCLUDE_DIRECTORY)/curl ;
|
EXPAT_INCLUDE_DIR = $(USER_INCLUDE_DIRECTORY)/ ;
|
||||||
|
|
||||||
local haveLibs = [ Glob $(COMMON_LIB_DIRECTORY) : libcurl.so ] ;
|
local haveLibs = [ Glob $(USER_LIB_DIRECTORY) : libexpat.so ] ;
|
||||||
if $(haveLibs) {
|
if $(haveLibs) {
|
||||||
CURL_LIBRARY_DIR = $(COMMON_LIB_DIRECTORY) ;
|
EXPAT_LIBRARY_DIR = $(USER_LIB_DIRECTORY) ;
|
||||||
|
|
||||||
Echo Curl Headers: $(CURL_INCLUDE_DIR) ;
|
Echo Expat Headers: $(EXPAT_INCLUDE_DIR) ;
|
||||||
Echo Curl Libs: $(CURL_LIBRARY_DIR) ;
|
Echo Expat Libs: $(EXPAT_LIBRARY_DIR) ;
|
||||||
}
|
}
|
||||||
|
HAVE_EXPAT = $(haveLibs) ;
|
||||||
HAVE_CURL = $(haveLibs) ;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
rule CheckLibYahoo2
|
|
||||||
{
|
|
||||||
# CheckLibYahoo2
|
|
||||||
# Check for LibYahoo2 and defined HAVE_LIBYAHOO2 according, it also defines
|
|
||||||
# LIBYAHOO2_INCLUDE_DIR and LIBYAHOO2_LIBRARY_DIR with location of respectively
|
|
||||||
# include and library files.
|
|
||||||
|
|
||||||
HAVE_LIBYAHOO2 = ;
|
|
||||||
LIBYAHOO2_INCLUDE_DIR = ;
|
|
||||||
LIBYAHOO2_LIBRARY_DIR = ;
|
|
||||||
|
|
||||||
local haveHeaders = [ Glob $(COMMON_INCLUDE_DIRECTORY)/libyahoo2 : yahoo2.h ] ;
|
|
||||||
if $(haveHeaders) {
|
|
||||||
LIBYAHOO2_INCLUDE_DIR = $(COMMON_INCLUDE_DIRECTORY)/libyahoo2 ;
|
|
||||||
|
|
||||||
local haveLibs = [ Glob $(COMMON_LIB_DIRECTORY) : libyahoo2.so ] ;
|
|
||||||
if $(haveLibs) {
|
|
||||||
LIBYAHOO2_LIBRARY_DIR = $(COMMON_LIB_DIRECTORY) ;
|
|
||||||
|
|
||||||
Echo Yahoo Headers: $(LIBYAHOO2_INCLUDE_DIR) ;
|
|
||||||
Echo Yahoo Libs: $(LIBYAHOO2_LIBRARY_DIR) ;
|
|
||||||
}
|
|
||||||
|
|
||||||
HAVE_LIBYAHOO2 = $(haveLibs) ;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
rule CheckCaya
|
|
||||||
{
|
|
||||||
# CheckCaya
|
|
||||||
# Check for Caya and defined HAVE_CAYA according, it also defines
|
|
||||||
# CAYA_INCLUDE_DIR and CAYA_LIBRARY_DIR with location of respectively
|
|
||||||
# include and library files.
|
|
||||||
|
|
||||||
HAVE_CAYA = ;
|
|
||||||
CAYA_INCLUDE_DIR = ;
|
|
||||||
CAYA_LIBRARY_DIR = ;
|
|
||||||
|
|
||||||
local haveHeaders = [ Glob $(COMMON_INCLUDE_DIRECTORY)/caya : CayaProtocol.h ] ;
|
|
||||||
if $(haveHeaders) {
|
|
||||||
CAYA_INCLUDE_DIR = $(COMMON_INCLUDE_DIRECTORY)/caya ;
|
|
||||||
|
|
||||||
# local haveLibs = [ Glob $(COMMON_LIB_DIRECTORY) : libinfopopper.so ] ;
|
|
||||||
# if $(haveLibs) {
|
|
||||||
# CAYA_LIBRARY_DIR = $(COMMON_LIB_DIRECTORY) ;
|
|
||||||
|
|
||||||
Echo Caya Headers: $(CAYA_INCLUDE_DIR) ;
|
|
||||||
# Echo Caya Libs: $(CAYA_LIBRARY_DIR) ;
|
|
||||||
# }
|
|
||||||
|
|
||||||
# HAVE_CAYA = $(haveLibs) ;
|
|
||||||
}
|
|
||||||
|
|
||||||
HAVE_CAYA = $(haveHeaders) ;
|
|
||||||
}
|
|
||||||
|
|
|
@ -121,23 +121,27 @@ SETTYPE = ${settypebin} ;
|
||||||
MIMESET = ${mimesetbin} ;
|
MIMESET = ${mimesetbin} ;
|
||||||
SETVERSION = ${setversionbin} ;
|
SETVERSION = ${setversionbin} ;
|
||||||
COPYATTR = ${copyattrbin} ;
|
COPYATTR = ${copyattrbin} ;
|
||||||
|
|
||||||
|
COMMON_BIN_DIRECTORY = $(finddir B_SYSTEM_BIN_DIRECTORY) ;
|
||||||
|
COMMON_INCLUDE_DIRECTORY = $(finddir B_SYSTEM_HEADERS_DIRECTORY) ;
|
||||||
|
COMMON_LIB_DIRECTORY = $(finddir B_SYSTEM_DEVELOP_DIRECTORY)/lib ;
|
||||||
|
COMMON_SERVERS_DIRECTORY = $(finddir B_SYSTEM_SERVERS_DIRECTORY) ;
|
||||||
|
COMMON_ADDONS_DIRECTORY = $(finddir B_SYSTEM_ADDONS_DIRECTORY) ;
|
||||||
|
COMMON_DEVELOP_DIRECTORY = $(finddir B_SYSTEM_DEVELOP_DIRECTORY) ;
|
||||||
|
|
||||||
COMMON_DIRECTORY = $(finddir B_COMMON_DIRECTORY) ;
|
|
||||||
COMMON_BIN_DIRECTORY = $(finddir B_COMMON_BIN_DIRECTORY) ;
|
|
||||||
COMMON_INCLUDE_DIRECTORY = $(finddir B_COMMON_DIRECTORY)/include ;
|
|
||||||
COMMON_LIB_DIRECTORY = $(finddir B_COMMON_LIB_DIRECTORY) ;
|
|
||||||
COMMON_SERVERS_DIRECTORY = $(finddir B_COMMON_SERVERS_DIRECTORY) ;
|
|
||||||
COMMON_ADDONS_DIRECTORY = $(finddir B_COMMON_ADDONS_DIRECTORY) ;
|
|
||||||
COMMON_DEVELOP_DIRECTORY = $(finddir B_COMMON_DEVELOP_DIRECTORY) ;
|
|
||||||
USER_CONFIG_DIRECTORY = $(finddir B_USER_CONFIG_DIRECTORY) ;
|
USER_CONFIG_DIRECTORY = $(finddir B_USER_CONFIG_DIRECTORY) ;
|
||||||
USER_INCLUDE_DIRECTORY = $(finddir B_USER_CONFIG_DIRECTORY)/include ;
|
USER_INCLUDE_DIRECTORY = $(finddir B_USER_HEADERS_DIRECTORY) ;
|
||||||
|
USER_LIB_DIRECTORY = $(finddir B_USER_DEVELOP_DIRECTORY)/lib ;
|
||||||
|
|
||||||
SYSTEM_DIRECTORY = $(finddir B_SYSTEM_DIRECTORY) ;
|
SYSTEM_DIRECTORY = $(finddir B_SYSTEM_DIRECTORY) ;
|
||||||
SYSTEM_LIB_DIRECTORY = $(finddir B_SYSTEM_LIB_DIRECTORY) ;
|
SYSTEM_LIB_DIRECTORY = $(finddir B_SYSTEM_LIB_DIRECTORY) ;
|
||||||
|
|
||||||
BEOS_PREFERENCES_DIRECTORY = $(finddir B_BEOS_PREFERENCES_DIRECTORY) ;
|
BEOS_PREFERENCES_DIRECTORY = $(finddir B_BEOS_PREFERENCES_DIRECTORY) ;
|
||||||
PREFERENCES_DIRECTORY = $(finddir B_PREFERENCES_DIRECTORY) ;
|
PREFERENCES_DIRECTORY = $(finddir B_PREFERENCES_DIRECTORY) ;
|
||||||
USER_PREFERENCES_DIRECTORY = $(finddir B_USER_CONFIG_DIRECTORY)/be/Preferences ;
|
USER_PREFERENCES_DIRECTORY = $(finddir B_USER_CONFIG_DIRECTORY)/be/Preferences ;
|
||||||
APPS_DIRECTORY = $(finddir B_APPS_DIRECTORY) ;
|
|
||||||
CAYA_DIRECTORY = $(finddir B_APPS_DIRECTORY)/Caya ;
|
APPS_DIRECTORY = $(finddir B_USER_APPS_DIRECTORY) ;
|
||||||
|
CAYA_DIRECTORY = $(finddir B_USER_APPS_DIRECTORY)/Caya ;
|
||||||
|
|
||||||
DEFINES += ${defines} ;
|
DEFINES += ${defines} ;
|
||||||
EOF
|
EOF
|
||||||
|
|
|
@ -6,7 +6,7 @@ SubDirSysHdrs [ FDirName $(OPENSSL_INCLUDE_DIR) ] ;
|
||||||
|
|
||||||
SEARCH_SOURCE += [ FDirName $(TOP) libs ] ;
|
SEARCH_SOURCE += [ FDirName $(TOP) libs ] ;
|
||||||
|
|
||||||
StaticLibrary libgloox.a :
|
local sources =
|
||||||
adhoc.cpp
|
adhoc.cpp
|
||||||
amp.cpp
|
amp.cpp
|
||||||
annotations.cpp
|
annotations.cpp
|
||||||
|
@ -104,3 +104,8 @@ StaticLibrary libgloox.a :
|
||||||
vcardupdate.cpp
|
vcardupdate.cpp
|
||||||
xhtmlim.cpp
|
xhtmlim.cpp
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
|
StaticLibrary libgloox.a : $(sources) ;
|
||||||
|
|
||||||
|
Depends libssl.so ;
|
||||||
|
|
|
@ -3,6 +3,8 @@ SubDir TOP libs librunview ;
|
||||||
SubDirSysHdrs [ FDirName $(TOP) ] ;
|
SubDirSysHdrs [ FDirName $(TOP) ] ;
|
||||||
SubDirSysHdrs [ FDirName $(TOP) libs ] ;
|
SubDirSysHdrs [ FDirName $(TOP) libs ] ;
|
||||||
|
|
||||||
|
SubDirSysHdrs [ FDirName $(EXPAT_INCLUDE_DIR) ] ;
|
||||||
|
|
||||||
SEARCH_SOURCE += [ FDirName $(TOP) libs ] ;
|
SEARCH_SOURCE += [ FDirName $(TOP) libs ] ;
|
||||||
|
|
||||||
local sources =
|
local sources =
|
||||||
|
@ -15,7 +17,7 @@ local sources =
|
||||||
Emoconfig.cpp
|
Emoconfig.cpp
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
StaticLibrary librunview.a : $(sources) ;
|
StaticLibrary librunview.a : $(sources) ;
|
||||||
|
|
||||||
Depends libjabber.a ;
|
LINKFLAGS on librunview.a += -L$(EXPAT_LIBRARY_DIR) ;
|
||||||
|
|
||||||
|
|
|
@ -4,9 +4,9 @@ SubDirSysHdrs [ FDirName $(TOP) ] ;
|
||||||
SubDirSysHdrs [ FDirName $(TOP) libs ] ;
|
SubDirSysHdrs [ FDirName $(TOP) libs ] ;
|
||||||
SubDirSysHdrs [ FDirName $(TOP) libs libyahoo2 ] ;
|
SubDirSysHdrs [ FDirName $(TOP) libs libyahoo2 ] ;
|
||||||
|
|
||||||
#SubDirSysHdrs [ FDirName $(OPENSSL_INCLUDE_DIR) ] ;
|
SubDirSysHdrs [ FDirName $(OPENSSL_INCLUDE_DIR) ] ;
|
||||||
|
|
||||||
#SEARCH_SOURCE += [ FDirName $(TOP) libs ] ;
|
SEARCH_SOURCE += [ FDirName $(TOP) libs ] ;
|
||||||
|
|
||||||
local sources =
|
local sources =
|
||||||
# libyahoo
|
# libyahoo
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
SubDir TOP protocols ;
|
SubDir TOP protocols ;
|
||||||
|
|
||||||
|
CAYA_INCLUDE_DIR = $(TOP) application ;
|
||||||
|
|
||||||
# Include all the components.
|
# Include all the components.
|
||||||
SubInclude TOP protocols aim ;
|
SubInclude TOP protocols aim ;
|
||||||
SubInclude TOP protocols xmpp ;
|
SubInclude TOP protocols xmpp ;
|
||||||
|
|
Ŝarĝante…
Reference in New Issue