Jamrules: Add a hard requirement on the new Jambase.
And remove the overridden rules that were migrated back to it.
This commit is contained in:
@@ -1,8 +1,3 @@
|
|||||||
if ! [ Match "(.*)-haiku-(.*)" : $(JAMVERSION) ] {
|
|
||||||
Exit "You can only build Haiku with Haiku's Jam, not Perforce Jam or"
|
|
||||||
"some other variant (you are using $(JAMVERSION))." ;
|
|
||||||
}
|
|
||||||
|
|
||||||
SubDir HAIKU_TOP ;
|
SubDir HAIKU_TOP ;
|
||||||
|
|
||||||
NotFile doc_files ;
|
NotFile doc_files ;
|
||||||
|
|||||||
@@ -1,5 +1,17 @@
|
|||||||
# Haiku Jamrules
|
# Haiku Jamrules
|
||||||
|
|
||||||
|
# Make sure we are on a sane version of Jam.
|
||||||
|
if ! [ Match "(.*)-haiku-(.*)" : $(JAMVERSION) ] {
|
||||||
|
Exit "You can only build Haiku with Haiku's Jam, not Perforce Jam or"
|
||||||
|
"some other variant (you are using $(JAMVERSION))." ;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Make sure we are on a recent Jambase.
|
||||||
|
if $(JAMBASEDATE) < 2018 {
|
||||||
|
Exit "Your Jambase is too old ($(JAMBASEDATE)); please update it (likely"
|
||||||
|
"by updating Jam itself.)" ;
|
||||||
|
}
|
||||||
|
|
||||||
# Make sure HAIKU_TOP is a relative path (and prefer it to be the current or
|
# Make sure HAIKU_TOP is a relative path (and prefer it to be the current or
|
||||||
# parent directory.)
|
# parent directory.)
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -1,15 +1,3 @@
|
|||||||
# Overridden to allow spaces in file names.
|
|
||||||
actions Chmod1
|
|
||||||
{
|
|
||||||
$(CHMOD) "$(MODE)" "$(1)"
|
|
||||||
}
|
|
||||||
|
|
||||||
# Overridden to allow spaces in file names.
|
|
||||||
actions piecemeal together existing Clean
|
|
||||||
{
|
|
||||||
$(RM) "$(>)"
|
|
||||||
}
|
|
||||||
|
|
||||||
#-------------------------------------------------------------------------------
|
#-------------------------------------------------------------------------------
|
||||||
# Link rule/action are overwritten as they don't handle linking files who's name
|
# Link rule/action are overwritten as they don't handle linking files who's name
|
||||||
# contain spaces very well. Also adds resources and version to executable.
|
# contain spaces very well. Also adds resources and version to executable.
|
||||||
@@ -196,7 +184,6 @@ rule As
|
|||||||
includesSeparator = $(HOST_INCLUDES_SEPARATOR) ;
|
includesSeparator = $(HOST_INCLUDES_SEPARATOR) ;
|
||||||
localIncludesOption = $(HOST_LOCAL_INCLUDES_OPTION) ;
|
localIncludesOption = $(HOST_LOCAL_INCLUDES_OPTION) ;
|
||||||
systemIncludesOption = $(HOST_SYSTEM_INCLUDES_OPTION) ;
|
systemIncludesOption = $(HOST_SYSTEM_INCLUDES_OPTION) ;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
flags = [ on $(1) return $(TARGET_ASFLAGS_$(TARGET_PACKAGING_ARCH))
|
flags = [ on $(1) return $(TARGET_ASFLAGS_$(TARGET_PACKAGING_ARCH))
|
||||||
$(ASFLAGS) ] ;
|
$(ASFLAGS) ] ;
|
||||||
@@ -380,7 +367,6 @@ rule C++
|
|||||||
includesSeparator = $(HOST_INCLUDES_SEPARATOR) ;
|
includesSeparator = $(HOST_INCLUDES_SEPARATOR) ;
|
||||||
localIncludesOption = $(HOST_LOCAL_INCLUDES_OPTION) ;
|
localIncludesOption = $(HOST_LOCAL_INCLUDES_OPTION) ;
|
||||||
systemIncludesOption = $(HOST_SYSTEM_INCLUDES_OPTION) ;
|
systemIncludesOption = $(HOST_SYSTEM_INCLUDES_OPTION) ;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
# warning flags
|
# warning flags
|
||||||
if $(WARNINGS) != 0 {
|
if $(WARNINGS) != 0 {
|
||||||
@@ -462,8 +448,7 @@ rule LibraryFromObjects
|
|||||||
|
|
||||||
# library depends on its member objects
|
# library depends on its member objects
|
||||||
|
|
||||||
if $(KEEPOBJS)
|
if $(KEEPOBJS) {
|
||||||
{
|
|
||||||
LocalDepends obj : $(_s) ;
|
LocalDepends obj : $(_s) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -474,8 +459,7 @@ rule LibraryFromObjects
|
|||||||
# For compatibility, we only do this if the library doesn't
|
# For compatibility, we only do this if the library doesn't
|
||||||
# already have a path.
|
# already have a path.
|
||||||
|
|
||||||
if ! $(_l:D)
|
if ! $(_l:D) {
|
||||||
{
|
|
||||||
# locate the library only, if it hasn't been located yet
|
# locate the library only, if it hasn't been located yet
|
||||||
local dir = $(LOCATE[1]) ;
|
local dir = $(LOCATE[1]) ;
|
||||||
if ! $(dir) {
|
if ! $(dir) {
|
||||||
@@ -487,16 +471,13 @@ rule LibraryFromObjects
|
|||||||
MakeLocate $(_l)($(_s:BS)) : $(dir) ;
|
MakeLocate $(_l)($(_s:BS)) : $(dir) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
if $(NOARSCAN)
|
if $(NOARSCAN) {
|
||||||
{
|
|
||||||
# If we can't scan the library to timestamp its contents,
|
# If we can't scan the library to timestamp its contents,
|
||||||
# we have to just make the library depend directly on the
|
# we have to just make the library depend directly on the
|
||||||
# on-disk object files.
|
# on-disk object files.
|
||||||
|
|
||||||
Depends $(_l) : $(_s) ;
|
Depends $(_l) : $(_s) ;
|
||||||
}
|
} else {
|
||||||
else
|
|
||||||
{
|
|
||||||
# If we can scan the library, we make the library depend
|
# If we can scan the library, we make the library depend
|
||||||
# on its members and each member depend on the on-disk
|
# on its members and each member depend on the on-disk
|
||||||
# object file.
|
# object file.
|
||||||
@@ -511,9 +492,6 @@ rule LibraryFromObjects
|
|||||||
|
|
||||||
LocalClean clean : $(_l) ;
|
LocalClean clean : $(_l) ;
|
||||||
|
|
||||||
# bonefish: Not needed on the supported platforms. Maybe later...
|
|
||||||
# if $(CRELIB) { CreLib $(_l) : $(_s[1]) ; }
|
|
||||||
|
|
||||||
Archive $(_l) : $(_s) ;
|
Archive $(_l) : $(_s) ;
|
||||||
|
|
||||||
if $(RANLIB) { Ranlib $(_l) ; }
|
if $(RANLIB) { Ranlib $(_l) ; }
|
||||||
@@ -573,8 +551,7 @@ rule MakeLocate
|
|||||||
{
|
{
|
||||||
local dir = $(2[1]) ;
|
local dir = $(2[1]) ;
|
||||||
|
|
||||||
if $(dir)
|
if $(dir) {
|
||||||
{
|
|
||||||
if ! $(dir:G) {
|
if ! $(dir:G) {
|
||||||
dir = $(dir:G=dir) ;
|
dir = $(dir:G=dir) ;
|
||||||
}
|
}
|
||||||
@@ -740,9 +717,3 @@ rule SubInclude
|
|||||||
# restore SUBDIR_TOKENS
|
# restore SUBDIR_TOKENS
|
||||||
SUBDIR_TOKENS = $(oldSubDirTokens) ;
|
SUBDIR_TOKENS = $(oldSubDirTokens) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
actions File
|
|
||||||
{
|
|
||||||
$(CP) "$(>)" "$(<)"
|
|
||||||
}
|
|
||||||
|
|||||||
Reference in New Issue
Block a user