2013-08-01 10:51:16 +04:00
|
|
|
local architecture = $(HAIKU_PACKAGING_ARCHS[1]) ;
|
|
|
|
|
|
|
|
|
2013-05-05 20:25:31 +04:00
|
|
|
local haikuDevelPackage = haiku_devel.hpkg ;
|
|
|
|
HaikuPackage $(haikuDevelPackage) ;
|
|
|
|
|
|
|
|
local arch = $(TARGET_ARCH) ;
|
|
|
|
|
|
|
|
# glue code
|
2013-08-06 05:29:51 +04:00
|
|
|
AddFilesToPackage develop lib :
|
2013-08-01 10:51:16 +04:00
|
|
|
<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
|
|
|
|
;
|
2013-05-05 20:25:31 +04:00
|
|
|
|
|
|
|
# kernel
|
2013-08-06 05:29:51 +04:00
|
|
|
AddFilesToPackage develop lib : kernel.so : _KERNEL_ ;
|
2013-05-05 20:25:31 +04:00
|
|
|
|
|
|
|
# additional libraries
|
2015-04-11 10:19:18 +03:00
|
|
|
local developmentLibs =
|
|
|
|
<revisioned>libroot_debug.so
|
|
|
|
;
|
|
|
|
|
2013-05-05 20:25:31 +04:00
|
|
|
AddFilesToPackage lib : $(developmentLibs) ;
|
|
|
|
|
|
|
|
# library symlinks
|
|
|
|
local lib ;
|
2013-08-06 01:19:24 +04:00
|
|
|
for lib in [ HaikuImageGetSystemLibs ] $(developmentLibs) {
|
2013-08-06 05:29:51 +04:00
|
|
|
AddSymlinkToPackage develop lib : /system/lib $(lib:BS) ;
|
2013-05-05 20:25:31 +04:00
|
|
|
local abiVersion = [ on $(lib) return $(HAIKU_LIB_ABI_VERSION) ] ;
|
|
|
|
if $(abiVersion) {
|
|
|
|
local abiVersionedLib = $(lib:BS).$(abiVersion) ;
|
2013-08-06 05:29:51 +04:00
|
|
|
AddSymlinkToPackage develop lib
|
2013-05-05 20:25:31 +04:00
|
|
|
: /system/lib $(abiVersionedLib) ;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
# static libraries
|
libroot: Ship empty libpthread.a and libm.a for POSIX and general compatibility.
A few weeks back, I spotted in the Musl FAQ that they apparently ship
empty libm.a and libpthread.a files (https://www.musl-libc.org/faq.html),
which they said was for POSIX compatibility. A bit of digging got me to
http://pubs.opengroup.org/onlinepubs/9699919799/utilities/c99.html which
says:
> It is unspecified whether the libraries libc.a, libl.a, libm.a, libpthread.a,
> librt.a, [OB] [Option Start] libtrace.a, [Option End] libxnet.a, or liby.a
> exist as regular files. The implementation may accept as -l option-arguments
> names of objects that do not exist as regular files.
So to follow the letter of the law, we only need to have the "c99" command
accept these; however, it appears all Linux and BSD cstdlibs accept them
no matter what compliance mode is in effect.
Discussed with PulkoMandy. This will make HaikuPorts' job a lot easier...
2016-08-13 18:16:06 +03:00
|
|
|
AddFilesToPackage develop lib :
|
|
|
|
libcolumnlistview.a
|
|
|
|
<$(architecture)>liblocalestub.a
|
2017-07-02 01:21:31 +03:00
|
|
|
libm.a libpthread.a
|
|
|
|
libprint.a libprintutils.a
|
libroot: Ship empty libpthread.a and libm.a for POSIX and general compatibility.
A few weeks back, I spotted in the Musl FAQ that they apparently ship
empty libm.a and libpthread.a files (https://www.musl-libc.org/faq.html),
which they said was for POSIX compatibility. A bit of digging got me to
http://pubs.opengroup.org/onlinepubs/9699919799/utilities/c99.html which
says:
> It is unspecified whether the libraries libc.a, libl.a, libm.a, libpthread.a,
> librt.a, [OB] [Option Start] libtrace.a, [Option End] libxnet.a, or liby.a
> exist as regular files. The implementation may accept as -l option-arguments
> names of objects that do not exist as regular files.
So to follow the letter of the law, we only need to have the "c99" command
accept these; however, it appears all Linux and BSD cstdlibs accept them
no matter what compliance mode is in effect.
Discussed with PulkoMandy. This will make HaikuPorts' job a lot easier...
2016-08-13 18:16:06 +03:00
|
|
|
<$(architecture)>libshared.a ;
|
2013-05-05 20:25:31 +04:00
|
|
|
|
|
|
|
# the POSIX error code mapper library
|
2013-08-06 05:29:51 +04:00
|
|
|
AddFilesToPackage develop lib : libposix_error_mapper.a ;
|
2013-05-05 20:25:31 +04:00
|
|
|
|
|
|
|
# ABI independent stuff
|
|
|
|
|
2018-11-16 06:36:35 +03:00
|
|
|
# directory attributes
|
|
|
|
AddDirectoryToPackage develop : system-develop.rdef ;
|
|
|
|
|
|
|
|
|
2013-05-05 20:25:31 +04:00
|
|
|
# headers
|
|
|
|
AddHeaderDirectoryToPackage config ;
|
|
|
|
AddHeaderDirectoryToPackage glibc ;
|
2014-09-19 12:26:51 +04:00
|
|
|
AddHeaderDirectoryToPackage libs alm ;
|
2016-07-30 01:37:56 +03:00
|
|
|
AddHeaderDirectoryToPackage libs glut GL ;
|
2013-05-05 20:25:31 +04:00
|
|
|
AddHeaderDirectoryToPackage os ;
|
|
|
|
AddHeaderDirectoryToPackage posix ;
|
|
|
|
|
|
|
|
# private headers
|
|
|
|
AddHeaderDirectoryToPackage private ;
|
|
|
|
CopyDirectoryToPackage develop headers private libs compat
|
2018-12-25 03:49:35 +03:00
|
|
|
: [ FDirName $(HAIKU_TOP) src libs compat freebsd_network ]
|
2018-07-19 02:54:36 +03:00
|
|
|
: : -x *.c -x *.cpp -x *.awk -x Jamfile -x miidevs -x usbdevs ;
|
2013-05-05 20:25:31 +04:00
|
|
|
CopyDirectoryToPackage develop headers private libs compat
|
2019-01-05 23:07:11 +03:00
|
|
|
: [ FDirName $(HAIKU_TOP) src libs compat freebsd_wlan ]
|
2013-05-05 20:25:31 +04:00
|
|
|
: : -x *.c -x Jamfile ;
|
|
|
|
|
|
|
|
# create be -> os symlink for now
|
2013-08-06 05:29:51 +04:00
|
|
|
AddSymlinkToPackage develop headers : os : be ;
|
2013-05-05 20:25:31 +04:00
|
|
|
|
|
|
|
# BSD and GNU compatibility headers
|
|
|
|
AddHeaderDirectoryToPackage compatibility bsd : bsd ;
|
|
|
|
AddHeaderDirectoryToPackage compatibility gnu : gnu ;
|
|
|
|
|
|
|
|
# cpp headers
|
2013-08-01 10:51:16 +04:00
|
|
|
if $(HAIKU_GCC_VERSION_$(architecture)[1]) = 2 {
|
2013-08-06 05:29:51 +04:00
|
|
|
# GCC 2 only -- for GCC 4 they come with the gcc package
|
|
|
|
CopyDirectoryToPackage develop headers c++
|
2013-05-05 20:25:31 +04:00
|
|
|
: [ FDirName $(HAIKU_TOP) headers cpp ] : 2.95.3 ;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2013-06-29 16:57:56 +04:00
|
|
|
# Deskbar menu symlinks
|
|
|
|
AddSymlinkToPackage data deskbar menu Applications
|
|
|
|
: ../../../../apps/Debugger : Debugger ;
|
|
|
|
|
2015-04-11 10:24:09 +03:00
|
|
|
# Debugging tools
|
|
|
|
SEARCH on leak_analyser.sh = [ FDirName $(HAIKU_TOP) src bin ] ;
|
|
|
|
AddFilesToPackage bin : leak_analyser.sh ;
|
|
|
|
|
2013-05-05 20:25:31 +04:00
|
|
|
BuildHaikuPackage $(haikuDevelPackage) : haiku_devel ;
|