haiku/build/jam/packages/HaikuDevel
Ingo Weinhold 26ea70667a Deskbar: use a virtual directory for the user-configurable menu
* Deskbar now uses ~/config/settings/deskbar/menu_entries for its menu,
  falling back to /system/data/deskbar/menu_entries, when the former
  doesn't exist. The latter always exists and is a virtual directory
  merging the deskbar/menu subdirectories of ~/config/settings/ and
  <any installation location>/data/. So, if a package provides a
  deskbar menu symlink, it is added automatically when the package is
  activated. The user can add own menu items by putting stuff into
  ~/config/settings/deskbar/menu/, only use their own organization by
  symlinking it to menu_entries, or do fun stuff by making menu_entries
  a customized virtual directory.
* HaikuImage: No longer create any deskbar menu symlinks in the user's
  settings directory. Instead add them to the Haiku package.
* OptionalPackages: At least for the optional packages that do have
  hpkgs, no longer create deskbar menu symlinks in the user's settings
  directory.
* Move all Deskbar settings files to ~/config/settings/deskbar/ and
  drop the "Deskbar_" prefix.
2013-06-29 14:58:52 +02:00

97 lines
3.0 KiB
Plaintext

local haikuDevelPackage = haiku_devel.hpkg ;
HaikuPackage $(haikuDevelPackage) ;
local arch = $(TARGET_ARCH) ;
local developDirTokens = develop ;
# glue code
AddFilesToPackage $(developDirTokens) lib :
<src!system!glue!arch!$(arch)>crti.o
<src!system!glue!arch!$(arch)>crtn.o
<src!system!glue>init_term_dyn.o
<src!system!glue>start_dyn.o
<src!system!glue>haiku_version_glue.o
;
# kernel
AddFilesToPackage $(developDirTokens) lib : kernel.so : _KERNEL_ ;
# additional libraries
local developmentLibs = <revisioned>libroot_debug.so ;
AddFilesToPackage lib : $(developmentLibs) ;
# library symlinks
local lib ;
for lib in $(SYSTEM_LIBS) $(developmentLibs) {
AddSymlinkToPackage $(developDirTokens) lib : /system/lib $(lib:BS) ;
local abiVersion = [ on $(lib) return $(HAIKU_LIB_ABI_VERSION) ] ;
if $(abiVersion) {
local abiVersionedLib = $(lib:BS).$(abiVersion) ;
AddSymlinkToPackage $(developDirTokens) lib
: /system/lib $(abiVersionedLib) ;
}
}
# static libraries
AddFilesToPackage $(developDirTokens) lib : liblocalestub.a ;
# the POSIX error code mapper library
AddFilesToPackage $(developDirTokens) lib : libposix_error_mapper.a ;
# ABI independent stuff
# scripts: setgcc
local scripts = setgcc ;
SEARCH on $(scripts) = [ FDirName $(HAIKU_TOP) data bin ] ;
AddFilesToPackage bin : $(scripts) ;
# headers
AddHeaderDirectoryToPackage config ;
AddHeaderDirectoryToPackage glibc ;
AddHeaderDirectoryToPackage os ;
AddHeaderDirectoryToPackage posix ;
# private headers
AddHeaderDirectoryToPackage private ;
CopyDirectoryToPackage develop headers private libs compat
: [ FDirName $(HAIKU_TOP) src libs compat freebsd_network ]
: : -x *.c -x *.cpp -x *.awk -x Jamfile -x miidevs ;
CopyDirectoryToPackage develop headers private libs compat
: [ FDirName $(HAIKU_TOP) src libs compat freebsd_wlan ]
: : -x *.c -x Jamfile ;
# create be -> os symlink for now
AddSymlinkToPackage $(developDirTokens) headers : os : be ;
# BSD and GNU compatibility headers
AddHeaderDirectoryToPackage compatibility bsd : bsd ;
AddHeaderDirectoryToPackage compatibility gnu : gnu ;
# third party libs headers
AddHeaderDirectoryToPackage libs termcap : 3rdparty ;
AddHeaderDirectoryToPackage libs tiff : 3rdparty ;
# cpp headers
if $(HAIKU_GCC_VERSION[1]) = 2 {
# GCC 2 only -- for GCC 4 they come with the DevelopmentBase package
CopyDirectoryToPackage $(developDirTokens) headers c++
: [ FDirName $(HAIKU_TOP) headers cpp ] : 2.95.3 ;
}
# OpenGL headers
if $(TARGET_ARCH) = x86 {
local mesaGlHeaders
= [ FDirName [ BuildFeatureAttribute mesa : headers : path ] GL ] ;
local mesaGlHeadersDependency = [ BuildFeatureAttribute mesa : headers ] ;
mesaGlHeaders = $(mesaGlHeaders:G=$(mesaGlHeadersDependency:G)) ;
Depends $(mesaGlHeaders) : $(mesaGlHeadersDependency) ;
CopyDirectoryToPackage $(developDirTokens) headers os opengl
: $(mesaGlHeaders) : : : isTarget ;
}
# Deskbar menu symlinks
AddSymlinkToPackage data deskbar menu Applications
: ../../../../apps/Debugger : Debugger ;
BuildHaikuPackage $(haikuDevelPackage) : haiku_devel ;