75 # CFLAGS32_*: flags for 32bit target |
75 # CFLAGS32_*: flags for 32bit target |
76 # CFLAGS64_*: flags for 64bit target |
76 # CFLAGS64_*: flags for 64bit target |
77 # CFLAGS*_common: flags for both (i386/sparc) architectures |
77 # CFLAGS*_common: flags for both (i386/sparc) architectures |
78 # CFLAGS*_sparc: flags for sparc architecture only |
78 # CFLAGS*_sparc: flags for sparc architecture only |
79 # CFLAGS*_i386: flags for i386 architecture only |
79 # CFLAGS*_i386: flags for i386 architecture only |
|
80 # |
80 CFLAGS_common = -xO3 -Xa -xildoff -xc99=%none -v -K pic -D PIC -G -I. -z defs -z text -z ignore -D_REENTRANT |
81 CFLAGS_common = -xO3 -Xa -xildoff -xc99=%none -v -K pic -D PIC -G -I. -z defs -z text -z ignore -D_REENTRANT |
81 CFLAGS32_common = -m32 |
82 CFLAGS32_common = -m32 |
82 CFLAGS64_common = -m64 |
83 CFLAGS64_common = -m64 |
83 |
84 |
84 CFLAGS_sparc = -xarch=sparc -xspace -W0\,-Lt -W2\,-Rcond_elim -Wd\,-xsafe=unboundsym -xregs=no%appl |
85 CFLAGS_sparc = -xarch=sparc -xspace -W0\,-Lt -W2\,-Rcond_elim -Wd\,-xsafe=unboundsym -xregs=no%appl |
85 CFLAGS64_sparc = -dalign -v -Wc\,-Qiselect-regsym=0 |
86 CFLAGS64_sparc = -dalign -v -Wc\,-Qiselect-regsym=0 |
86 |
87 |
87 CFLAGS32_i386 = -xspace |
88 CFLAGS32_i386 = -xspace |
88 CFLAGS64_i386 = -xarch=sse2 -Ui386 -U__i386 |
89 CFLAGS64_i386 = -xarch=sse2 -Ui386 -U__i386 |
|
90 |
|
91 # dtto for LDFLAGS |
|
92 # |
|
93 LDFLAGS_common = -Bdirect |
|
94 LDFLAGS32_common = -R\\\$$ORIGIN/../common |
|
95 LDFLAGS64_common = -R\\\$$ORIGIN/../../common/$(MACH64) |
|
96 |
|
97 LDFLAGS_sparc = -M /usr/lib/ld/map.pagealign |
|
98 LDFLAGS_i386 = -M /usr/lib/ld/map.pagealign -M /usr/lib/ld/map.noexdata |
89 |
99 |
90 |
100 |
91 # java flags |
101 # java flags |
92 # for cldr posix locale generator |
102 # for cldr posix locale generator |
93 JAVAFLAGS = -Xmx512m |
103 JAVAFLAGS = -Xmx512m |
115 |
125 |
116 # C flags |
126 # C flags |
117 CFLAGS32 ?= $(CFLAGS_common) $(CFLAGS32_common) $(CFLAGS_$(MACH)) $(CFLAGS32_$(MACH)) |
127 CFLAGS32 ?= $(CFLAGS_common) $(CFLAGS32_common) $(CFLAGS_$(MACH)) $(CFLAGS32_$(MACH)) |
118 CFLAGS64 ?= $(CFLAGS_common) $(CFLAGS64_common) $(CFLAGS_$(MACH)) $(CFLAGS64_$(MACH)) |
128 CFLAGS64 ?= $(CFLAGS_common) $(CFLAGS64_common) $(CFLAGS_$(MACH)) $(CFLAGS64_$(MACH)) |
119 |
129 |
|
130 LDFLAGS32 ?= $(LDFLAGS_common) $(LDFLAGS32_common) $(LDFLAGS_$(MACH)) $(LDFLAGS32_$(MACH)) |
|
131 LDFLAGS64 ?= $(LDFLAGS_common) $(LDFLAGS64_common) $(LDFLAGS_$(MACH)) $(LDFLAGS64_$(MACH)) |
|
132 |
120 |
133 |
121 # java flags for cldr posix locale generator |
134 # java flags for cldr posix locale generator |
122 # '-DCLDR_DTD_CACHE=.dtd_cache': cache dir for temporary files |
135 # '-DCLDR_DTD_CACHE=.dtd_cache': cache dir for temporary files |
123 # '-Dhttp.proxyHost=webcache.sfbay -Dhttp.proxyPort=8080: default web proxy |
136 # '-Dhttp.proxyHost=webcache.sfbay -Dhttp.proxyPort=8080: default web proxy |
124 CLDR_JAVAFLAGS = $(JAVAFLAGS) -Dhttp.proxyHost=emeacache.uk.oracle.com -Dhttp.proxyPort=80 -DCLDR_DTD_CACHE=build/.dtd_cache -DCLDR_DIR=build/cldr_core |
137 CLDR_JAVAFLAGS = $(JAVAFLAGS) -Dhttp.proxyHost=emeacache.uk.oracle.com -Dhttp.proxyPort=80 -DCLDR_DTD_CACHE=build/.dtd_cache -DCLDR_DIR=build/cldr_core |
197 $(M)GENERATE $@ |
210 $(M)GENERATE $@ |
198 $(Q)$(GEN_POSIX) -d $(@D) -o $(@F) -c $(call cldr_charmap,$*) -m $(shell cat $<) |
211 $(Q)$(GEN_POSIX) -d $(@D) -o $(@F) -c $(call cldr_charmap,$*) -m $(shell cat $<) |
199 |
212 |
200 $(LOCALES:%=build/%/32bit.so.3): build/%/32bit.so.3: build/%/posix.src build/%/32bit/.methods_so |
213 $(LOCALES:%=build/%/32bit.so.3): build/%/32bit.so.3: build/%/posix.src build/%/32bit/.methods_so |
201 $(M)LOCALEDEF $@ |
214 $(M)LOCALEDEF $@ |
202 $(Q)cd $(@D)/32bit; $(LOCALEDEF) $(if $(Q),,-v) -P $(dir $(CC)) -W cc,"$(CFLAGS32)" -L "-R\\\$$ORIGIN" -x ../../../misc/$(call charmap, $*).x -f ../../$(call charmap, $*).cm -i ../posix.src $*; mv $*.so.3 ../32bit.so.3 |
215 $(Q)cd $(@D)/32bit; $(LOCALEDEF) $(if $(Q),,-v) -P $(dir $(CC)) -W cc,"$(CFLAGS32)" -L "$(LDFLAGS32)" -x ../../../misc/$(call charmap, $*).x -f ../../$(call charmap, $*).cm -i ../posix.src $*; mv $*.so.3 ../32bit.so.3 |
203 |
216 |
204 # localedef reads the 32bit library for function definitions |
217 # localedef reads the 32bit library for function definitions |
205 # and then links against the 64bit library, so we need both 32bit and 64bit versions |
218 # and then links against the 64bit library, so we need both 32bit and 64bit versions |
206 $(LOCALES:%=build/%/64bit.so.3): build/%/64bit.so.3: build/%/posix.src build/%/64bit/.methods_so build/%/64bit/$(MACH64)/.methods_so |
219 $(LOCALES:%=build/%/64bit.so.3): build/%/64bit.so.3: build/%/posix.src build/%/64bit/.methods_so build/%/64bit/$(MACH64)/.methods_so |
207 $(M)LOCALEDEF $@ |
220 $(M)LOCALEDEF $@ |
208 $(Q)cd $(@D)/64bit; $(LOCALEDEF) $(if $(Q),,-v) -P $(dir $(CC)) -W cc,"$(CFLAGS64)" -L "-R\\\$$ORIGIN" -m lp64 -x ../../../misc/$(call charmap, $*).x -f ../../$(call charmap, $*).cm -i ../posix.src $*; mv $*.so.3 ../64bit.so.3 |
221 $(Q)cd $(@D)/64bit; $(LOCALEDEF) $(if $(Q),,-v) -P $(dir $(CC)) -W cc,"$(CFLAGS64)" -L "$(LDFLAGS64)" -m lp64 -x ../../../misc/$(call charmap, $*).x -f ../../$(call charmap, $*).cm -i ../posix.src $*; mv $*.so.3 ../64bit.so.3 |
209 |
222 |
210 |
223 |
211 |
224 |
212 # ****************** |
225 # ****************** |
213 # ==== Charmaps ==== |
226 # ==== Charmaps ==== |