5 DETECTED_CPU = "i486" ;
6 OPTIM_SPEED = -O3 -march=i486 -mtune=i486 ;
8 DETECTED_CPU = native ;
9 OPTIM_SPEED = -O3 -march=native -mtune=native ;
14 K8JAM-KNOWN-PROFILES =
15 none default # don't change
16 empty # remove optimisation flags
17 speed # optimise for speed
18 size # optimise for size
19 debug # don't optimize, add debug info
24 rule --k8jam-profile-none-- {
25 Echo "MSG: default profile" ;
30 rule --k8jam-profile-default-- {
31 --k8jam-profile-none-- ;
35 rule --k8jam-profile-empty-- {
36 Echo "MSG: empty profile" ;
37 SLACK_PKG_ARCH = "i486" ;
41 rule --k8jam-profile-speed-- {
42 Echo "MSG: 'speed' profile" ;
43 SLACK_PKG_ARCH = "i686" ;
44 CFLAGS.all += $(OPTIM_SPEED) ;
45 LINKFLAGS.all += $(LINKFLAGS_SPEED) ;
49 rule --k8jam-profile-size-- {
50 Echo "MSG: 'size' profile" ;
51 SLACK_PKG_ARCH = "i686" ;
52 CFLAGS.all += $(OPTIM_SIZE) ;
53 LINKFLAGS.all += $(LINKFLAGS_SIZE) ;
57 rule --k8jam-profile-debug-- {
58 Echo "MSG: 'debug' profile" ;
59 SLACK_PKG_ARCH = "i486" ;
61 CFLAGS.all += $(OPTIM_DEBUG) ;
62 LINKFLAGS.all += $(LINKFLAGS_DEBUG) ;
66 rule --k8jam-profile-standard-- {
67 Echo "MSG: 'standard' profile" ;
68 SLACK_PKG_ARCH = "i486" ;
69 CFLAGS.all += $(OPTIM_STANDARD) ;
70 LINKFLAGS.all += $(LINKFLAGS_STANDARD) ;
76 # set compile flags for profile; works only for gcc/g++
78 # none, default: don't change
79 # empty: remove optimisation flags
80 # speed: optimise for speed and pIII
81 # size: optimise for size
82 # debug: don't optimize, add debug info
85 if ! $(1) in $(K8JAM-KNOWN-PROFILES) {
86 Echo "known profiles: $(K8JAM-KNOWN-PROFILES)" ;
87 Exit "unknown profile: $(1)" ;
90 remove-opt-flags-for-all-compilers ;
91 LINKFLAGS -= "-g" "-s" ;
92 C++LINKFLAGS -= "-g" "-s" ;
93 OBJCLINKFLAGS -= "-g" "-s" ;
94 LINKFLAGS.all -= "-g" "-s" ;
97 --k8jam-profile-$(OPT_PROFILE)-- ;
99 #SLACK_PKG_ARCH ?= "i486" ;
102 # selects 'debug', 'standard', 'speed' or 'size' profile according to vars:
104 # OPT_SIZE = 1 : size
105 # OPT_SPEED = 1 : speed
106 # OPT=SIZE or OPT=SPEED
111 if $(OPT) = "size" { otp = "size" ; }
112 else if $(OPT) = "SIZE" { otp = "size" ; }
113 if $(OPT) = "speed" { otp = "speed" ; }
114 else if $(OPT) = "SPEED" { otp = "speed" ; }
115 else if $(OPT_SIZE) { otp = "size" ; }
116 else if $(OPT_SPEED) { otp = "speed" ; }
120 } else if $(otp) = "size" {
122 } else if $(otp) = "speed" {
128 CFLAGS.all -= "-g" "-s" ;
129 LINKFLAGS.all -= "-g" "-s" ;
131 LINKFLAGS.all += -g ;
133 if ! $(NO_WARNINGS) {
134 CFLAGS.all += -Wall ;