annotate src/icu4c.mk @ 6203:8b23f76955c6 release

ICU4C: Use GCC for native version even if clang is installed. * src/icu4c.mk: ICU4C seems to prefer clang for building the native version if it is installed on the build system. But it looks like that doesn't work for some reason. When cross-compiling, use GCC for the native version instead.
author Markus Mützel <markus.muetzel@gmx.de>
date Thu, 05 May 2022 11:22:40 +0200
parents 540abbedeb37
children e4be408ca36f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4524
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
1 PKG := icu4c
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
2 $(PKG)_IGNORE :=
5945
540abbedeb37 * src/icu4c.mk: update to v70.1
John Donoghue <john.donoghue@ieee.org>
parents: 5836
diff changeset
3 $(PKG)_VERSION := 70.1
540abbedeb37 * src/icu4c.mk: update to v70.1
John Donoghue <john.donoghue@ieee.org>
parents: 5836
diff changeset
4 $(PKG)_CHECKSUM := f7c1363edee6be7de8b624ffbb801892b3417d4e
4524
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
5 $(PKG)_SUBDIR := icu
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
6 $(PKG)_FILE := $(PKG)-$(subst .,_,$($(PKG)_VERSION))-src.tgz
5180
d38c89807b6c * src/icu4c.mk: update to v65.1
John Donoghue
parents: 5063
diff changeset
7 $(PKG)_URL := https://github.com/unicode-org/icu/releases/download/release-$(subst .,-,$($(PKG)_VERSION))/$($(PKG)_FILE)
4524
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
8 $(PKG)_DEPS :=
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
9
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
10 define $(PKG)_UPDATE
4891
a60cc99e743b * src/icu4c.mk: update to v63.1, implement update rule
John Donoghue
parents: 4524
diff changeset
11 $(WGET) -q -O- 'https://github.com/unicode-org/icu/tags' | \
a60cc99e743b * src/icu4c.mk: update to v63.1, implement update rule
John Donoghue
parents: 4524
diff changeset
12 $(SED) -n 's|.*releases/tag/release-\([0-9\-]*\).*|\1|p' | \
a60cc99e743b * src/icu4c.mk: update to v63.1, implement update rule
John Donoghue
parents: 4524
diff changeset
13 $(SED) 's|-|\.|g' | \
a60cc99e743b * src/icu4c.mk: update to v63.1, implement update rule
John Donoghue
parents: 4524
diff changeset
14 $(SORT) -V | \
a60cc99e743b * src/icu4c.mk: update to v63.1, implement update rule
John Donoghue
parents: 4524
diff changeset
15 tail -1
4524
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
16 endef
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
17
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
18 ifeq ($(MXE_NATIVE_BUILD),no)
5836
258c97855a10 ICU4C: Use MXE compilers.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5729
diff changeset
19 define $(PKG)_BUILD
4524
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
20 # build some native tools
6203
8b23f76955c6 ICU4C: Use GCC for native version even if clang is installed.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5945
diff changeset
21 mkdir '$(1).native' && cd '$(1).native' && \
8b23f76955c6 ICU4C: Use GCC for native version even if clang is installed.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5945
diff changeset
22 '$(1)/source/configure' CC=gcc CXX=g++
4524
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
23 $(MAKE) -C '$(1).native' -j '$(JOBS)'
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
24
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
25 # build cross
5836
258c97855a10 ICU4C: Use MXE compilers.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5729
diff changeset
26 mkdir '$(1).cross' && cd '$(1).cross' && \
258c97855a10 ICU4C: Use MXE compilers.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5729
diff changeset
27 '$(1)/source/configure' \
4524
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
28 $(HOST_AND_BUILD_CONFIGURE_OPTIONS) \
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
29 $(ENABLE_SHARED_OR_STATIC) \
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
30 --prefix='$(HOST_PREFIX)' \
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
31 --with-cross-build='$(1).native' \
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
32 PKG_CONFIG='$(MXE_PKG_CONFIG)' \
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
33 PKG_CONFIG_PATH=$($(PKG)_PKG_CONFIG_PATH) \
4945
76828d146a8d icu4c.mk: Don't link with msvcr100 or force --std=gnu++0x. Set CPPFLAGS, not CFLAGS.
John W. Eaton <jwe@octave.org>
parents: 4891
diff changeset
34 CPPFLAGS='-DU_USING_ICU_NAMESPACE=0'
4524
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
35
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
36 $(MAKE) -C '$(1).cross' -j '$(JOBS)' $(MXE_DISABLE_DOCS) $(MXE_DISABLE_PROGS)
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
37 $(MAKE) -C '$(1).cross' -j 1 install $(MXE_DISABLE_DOCS) $(MXE_DISABLE_PROGS) DESTDIR='$(3)'
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
38 $(INSTALL) -d '$(3)$(HOST_BINDIR)'
5836
258c97855a10 ICU4C: Use MXE compilers.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5729
diff changeset
39 # mv -fv $(3)$(HOST_LIBDIR)/icu*.dll '$(3)$(HOST_BINDIR)/'
4524
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
40 $(INSTALL) -d '$(3)$(BUILD_TOOLS_PREFIX)/bin/'
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
41 $(LN_SF) '$(HOST_BINDIR)/icu-config' '$(3)$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)icu-config'
5836
258c97855a10 ICU4C: Use MXE compilers.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5729
diff changeset
42 endef
4524
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
43 else
5836
258c97855a10 ICU4C: Use MXE compilers.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5729
diff changeset
44 define $(PKG)_BUILD
258c97855a10 ICU4C: Use MXE compilers.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5729
diff changeset
45 mkdir '$(1).native' && cd '$(1).native' && \
258c97855a10 ICU4C: Use MXE compilers.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5729
diff changeset
46 '$(1)/source/configure' \
258c97855a10 ICU4C: Use MXE compilers.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5729
diff changeset
47 CC=$(MXE_CC) CXX=$(MXE_CXX) AR=$(MXE_AR) \
4524
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
48 $(HOST_AND_BUILD_CONFIGURE_OPTIONS) \
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
49 $(ENABLE_SHARED_OR_STATIC) \
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
50 PKG_CONFIG='$(MXE_PKG_CONFIG)' \
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
51 PKG_CONFIG_PATH="$(HOST_LIBDIR)/pkgconfig" \
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
52 --prefix='$(HOST_PREFIX)'
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
53 $(MAKE) -C '$(1).native' -j '$(JOBS)' $(MXE_DISABLE_DOCS) $(MXE_DISABLE_PROGS)
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
54 $(MAKE) -C '$(1).native' -j 1 install $(MXE_DISABLE_DOCS) $(MXE_DISABLE_PROGS)
5836
258c97855a10 ICU4C: Use MXE compilers.
Markus Mützel <markus.muetzel@gmx.de>
parents: 5729
diff changeset
55 endef
4524
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
56 endif
413af27223f6 icu4c: add new package
John D
parents:
diff changeset
57