forked from HaikuArchives/Beam
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Jamrules
65 lines (55 loc) · 1.86 KB
/
Jamrules
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# The directories used by the build.
BUILD_DIR = [ FDirName $(TOP) build-jam ] ;
GENERATED_DIR = [ FDirName $(TOP) generated ] ;
DISTRO_DIR = [ FDirName $(TOP) generated distro ] ;
# First find out which gcc version the platform uses.
IS_GCC_4_PLATFORM = ;
if $(OS) = HAIKU {
# Only Haiku might use gcc 4. We use the existence of a libstdc++.r4.so in
# /boot/develop/abi/current/lib to judge whether this is a BeOS compatible and thus
# gcc 2 platform.
local hasLibStdC++.R4 = [ Glob /boot/system/develop/lib : libstdc++.r4.so ] ;
if ! $(hasLibStdC++.R4) {
IS_GCC_4_PLATFORM = 1 ;
}
}
include [ FDirName $(BUILD_DIR) HelperRules ] ;
include [ FDirName $(BUILD_DIR) ConfigRules ] ;
include [ FDirName $(BUILD_DIR) OverriddenJamRules ] ;
include [ FDirName $(BUILD_DIR) MainBuildRules ] ;
include [ FDirName $(BUILD_DIR) BuildSettings ] ;
# Include UserBuildConfig.
{
local userBuildConfig = [ GLOB $(BUILD_DIR) : UserBuildConfig ] ;
if $(userBuildConfig)
{
LOCATE on UserBuildConfig = $(BUILD_DIR) ;
include UserBuildConfig ;
}
}
# default to strip generated apps if not specified otherwise:
STRIP_APPS ?= 1 ;
# Cache files for header scanning and jamfile caching.
HCACHEFILE = header_cache ;
JCACHEFILE = jamfile_cache ;
LOCATE on $(HCACHEFILE) $(JCACHEFILE) = $(GENERATED_DIR) ;
rule Distro
{
local target = $(1) ;
NotFile $(target) ;
Always $(target) ;
}
actions Distro
{
echo "making distro $(DISTRO_DIR)" ;
rm -rf $(DISTRO_DIR)/TestBeam $(DISTRO_DIR)/logs*
mkdir -p $(DISTRO_DIR)/Icons ;
cp -a $(TOP)/resources/iconset* $(DISTRO_DIR)/Icons/ ;
find $(DISTRO_DIR)/Icons -maxdepth 2 -name CVS -exec rm -r {} \; ;
cp -a $(TOP)/Changes.txt $(DISTRO_DIR)/ ;
cp -a $(TOP)/Readme.md $(DISTRO_DIR)/ ;
cp -a $(TOP)/GnuGeneralPublicLicense.txt $(DISTRO_DIR)/ ;
ln -sfn ../add-ons $(DISTRO_DIR)/tools/ ;
ln -sfn ../lib $(DISTRO_DIR)/tools/ ;
mimeset $(DISTRO_DIR) ;
}