Add HaikuDevelSecondary package definition
It defines the haiku devel package for a secondary architecture (haiku_<arch>_devel.hpkg).
This commit is contained in:
@@ -18,7 +18,9 @@ local archDependentPackages =
|
||||
HaikuCrossDevel
|
||||
;
|
||||
|
||||
local secondaryArchPackages ;
|
||||
local secondaryArchPackages =
|
||||
HaikuDevelSecondary
|
||||
;
|
||||
if $(HAIKU_BOOTSTRAP_BUILD) {
|
||||
secondaryArchPackages += HaikuSecondaryBootstrap ;
|
||||
} else {
|
||||
|
||||
@@ -0,0 +1,64 @@
|
||||
local architecture = $(TARGET_PACKAGING_ARCH) ;
|
||||
|
||||
|
||||
local haikuDevelPackage = haiku_$(architecture)_devel.hpkg ;
|
||||
HaikuPackage $(haikuDevelPackage) ;
|
||||
|
||||
local arch = $(TARGET_ARCH) ;
|
||||
|
||||
# glue code
|
||||
AddFilesToPackage develop lib $(architecture) :
|
||||
<src!system!glue!arch!$(arch)!$(architecture)>crti.o
|
||||
<src!system!glue!arch!$(arch)!$(architecture)>crtn.o
|
||||
<src!system!glue!$(architecture)>init_term_dyn.o
|
||||
<src!system!glue!$(architecture)>start_dyn.o
|
||||
<src!system!glue!$(architecture)>haiku_version_glue.o
|
||||
;
|
||||
|
||||
# additional libraries
|
||||
local developmentLibs = <revisioned>libroot_debug.so ;
|
||||
AddFilesToPackage lib : $(developmentLibs) ;
|
||||
|
||||
# library symlinks
|
||||
local lib ;
|
||||
for lib in [ HaikuImageGetSystemLibs ] $(developmentLibs) {
|
||||
AddSymlinkToPackage develop lib $(architecture)
|
||||
: /system/lib/$(architecture) $(lib:BS) ;
|
||||
local abiVersion = [ on $(lib) return $(HAIKU_LIB_ABI_VERSION) ] ;
|
||||
if $(abiVersion) {
|
||||
local abiVersionedLib = $(lib:BS).$(abiVersion) ;
|
||||
AddSymlinkToPackage develop lib $(architecture)
|
||||
: /system/lib/$(architecture) $(abiVersionedLib) ;
|
||||
}
|
||||
}
|
||||
|
||||
# static libraries
|
||||
AddFilesToPackage develop lib $(architecture)
|
||||
: <$(architecture)>liblocalestub.a ;
|
||||
|
||||
# the POSIX error code mapper library
|
||||
AddFilesToPackage develop lib $(architecture)
|
||||
: libposix_error_mapper.a ;
|
||||
|
||||
# ABI independent stuff
|
||||
|
||||
# cpp headers
|
||||
if $(HAIKU_GCC_VERSION_$(architecture)[1]) = 2 {
|
||||
# GCC 2 only -- for GCC 4 they come with the gcc package
|
||||
CopyDirectoryToPackage develop headers c++
|
||||
: [ FDirName $(HAIKU_TOP) headers cpp ] : 2.95.3 ;
|
||||
}
|
||||
|
||||
# OpenGL headers
|
||||
if $(TARGET_ARCH) = x86 && ! $(HAIKU_BOOTSTRAP_BUILD) {
|
||||
local mesaGlHeaders
|
||||
= [ FDirName [ BuildFeatureAttribute mesa : headers : path ] GL ] ;
|
||||
local mesaGlHeadersDependency = [ BuildFeatureAttribute mesa : headers ] ;
|
||||
mesaGlHeaders = $(mesaGlHeaders:G=$(mesaGlHeadersDependency:G)) ;
|
||||
Depends $(mesaGlHeaders) : $(mesaGlHeadersDependency) ;
|
||||
CopyDirectoryToPackage develop headers $(architecture) os opengl
|
||||
: $(mesaGlHeaders) : : : isTarget ;
|
||||
}
|
||||
|
||||
|
||||
BuildHaikuPackage $(haikuDevelPackage) : haiku_devel_secondary ;
|
||||
@@ -0,0 +1,27 @@
|
||||
#define DO_CONCAT(a, b) a ## b
|
||||
#define CONCAT(a, b) DO_CONCAT(a, b)
|
||||
#define DO_TO_STRING(x) #x
|
||||
#define TO_STRING(x) DO_TO_STRING(x)
|
||||
|
||||
name CONCAT(CONCAT(haiku_, HAIKU_SECONDARY_PACKAGING_ARCH), _devel)
|
||||
version R1~alpha4_pm-1
|
||||
architecture HAIKU_PACKAGING_ARCH
|
||||
summary "The Haiku base system "TO_STRING(HAIKU_SECONDARY_PACKAGING_ARCH)" secondary architecture development files"
|
||||
|
||||
description "The package contains all files associated with the base system
|
||||
needed for development for the secondary architecture "TO_STRING(HAIKU_SECONDARY_PACKAGING_ARCH)",
|
||||
like static libraries, glue code, library symlinks, header files, etc."
|
||||
|
||||
packager "The Haiku build system"
|
||||
vendor "Haiku Project"
|
||||
|
||||
copyrights "2001-2013 Haiku, Inc. et al"
|
||||
licenses "MIT"
|
||||
|
||||
provides {
|
||||
CONCAT(haiku_devel_, HAIKU_SECONDARY_PACKAGING_ARCH) = R1~alpha4_pm-1
|
||||
}
|
||||
|
||||
requires {
|
||||
CONCAT(haiku_, HAIKU_SECONDARY_PACKAGING_ARCH) == R1~alpha4_pm-1
|
||||
}
|
||||
Reference in New Issue
Block a user