Mon May 13 14:55:05 2019 UTC ()
Work around upstream bug, PR pkg/54193


(martin)
diff -r1.125 -r1.126 pkgsrc/textproc/icu/Makefile

cvs diff -r1.125 -r1.126 pkgsrc/textproc/icu/Makefile (switch to unified diff)

--- pkgsrc/textproc/icu/Makefile 2019/05/04 20:30:34 1.125
+++ pkgsrc/textproc/icu/Makefile 2019/05/13 14:55:05 1.126
@@ -1,136 +1,140 @@ @@ -1,136 +1,140 @@
1# $NetBSD: Makefile,v 1.125 2019/05/04 20:30:34 wiedi Exp $ 1# $NetBSD: Makefile,v 1.126 2019/05/13 14:55:05 martin Exp $
2 2
3DISTNAME= icu4c-64_2-src 3DISTNAME= icu4c-64_2-src
4PKGNAME= ${DISTNAME:S/4c//:S/-src//:S/_/./g} 4PKGNAME= ${DISTNAME:S/4c//:S/-src//:S/_/./g}
5PKGREVISION= 1 5PKGREVISION= 1
6CATEGORIES= textproc 6CATEGORIES= textproc
7MASTER_SITES= http://download.icu-project.org/files/icu4c/${PKGVERSION_NOREV}/ 7MASTER_SITES= http://download.icu-project.org/files/icu4c/${PKGVERSION_NOREV}/
8EXTRACT_SUFX= .tgz 8EXTRACT_SUFX= .tgz
9 9
10MAINTAINER= pkgsrc-users@NetBSD.org 10MAINTAINER= pkgsrc-users@NetBSD.org
11HOMEPAGE= http://www.icu-project.org/ 11HOMEPAGE= http://www.icu-project.org/
12COMMENT= Robust and full-featured Unicode services 12COMMENT= Robust and full-featured Unicode services
13LICENSE= mit 13LICENSE= mit
14 14
15WRKSRC= ${WRKDIR}/icu/source 15WRKSRC= ${WRKDIR}/icu/source
16USE_LANGUAGES= c99 c++ 16USE_LANGUAGES= c99 c++
17USE_TOOLS+= gmake 17USE_TOOLS+= gmake
18GCC_REQD+= 4.8 18GCC_REQD+= 4.8
19TEST_TARGET= check 19TEST_TARGET= check
20UNLIMIT_RESOURCES+= datasize 20UNLIMIT_RESOURCES+= datasize
21GNU_CONFIGURE= yes 21GNU_CONFIGURE= yes
22CONFIGURE_ARGS+= --enable-static 22CONFIGURE_ARGS+= --enable-static
23CONFIGURE_ENV+= U_MAKE=${TOOLS_GMAKE} 23CONFIGURE_ENV+= U_MAKE=${TOOLS_GMAKE}
24 24
25CHECK_SSP_SKIP= lib/libicudata.so* 25CHECK_SSP_SKIP= lib/libicudata.so*
26 26
27.include "../../mk/pthread.buildlink3.mk" 27.include "../../mk/pthread.buildlink3.mk"
28 28
29.if defined(PTHREAD_TYPE) && ${PTHREAD_TYPE} != "native" 29.if defined(PTHREAD_TYPE) && ${PTHREAD_TYPE} != "native"
30CONFIGURE_ARGS+= --disable-threads 30CONFIGURE_ARGS+= --disable-threads
31.endif 31.endif
32 32
33.include "../../mk/compiler.mk" 33.include "../../mk/compiler.mk"
34 34
35# from ICU_CHECK_MH_FRAG in source/acinclude.m4 35# from ICU_CHECK_MH_FRAG in source/acinclude.m4
36.if ${OPSYS} == "SunOS" 36.if ${OPSYS} == "SunOS"
37. if ${PKGSRC_COMPILER:Mclang} || ${PKGSRC_COMPILER:Mgcc} 37. if ${PKGSRC_COMPILER:Mclang} || ${PKGSRC_COMPILER:Mgcc}
38PLIST_SUBST+= MH_NAME=mh-solaris-gcc 38PLIST_SUBST+= MH_NAME=mh-solaris-gcc
39. else 39. else
40PLIST_SUBST+= MH_NAME=mh-solaris 40PLIST_SUBST+= MH_NAME=mh-solaris
41. endif 41. endif
42. if !empty(CC_VERSION:Mgcc-4.[6-9].*) 42. if !empty(CC_VERSION:Mgcc-4.[6-9].*)
43BUILDLINK_TRANSFORM+= rm:-D__STDC__=0 43BUILDLINK_TRANSFORM+= rm:-D__STDC__=0
44. endif 44. endif
45BUILDLINK_TRANSFORM+= rm:-ansi 45BUILDLINK_TRANSFORM+= rm:-ansi
46.elif !empty(MACHINE_PLATFORM:MLinux-*-alpha) 46.elif !empty(MACHINE_PLATFORM:MLinux-*-alpha)
47. if !empty(CC_VERSION:Mgcc*) 47. if !empty(CC_VERSION:Mgcc*)
48PLIST_SUBST+= MH_NAME=mh-alpha-linux-gcc 48PLIST_SUBST+= MH_NAME=mh-alpha-linux-gcc
49. else 49. else
50PLIST_SUBST+= MH_NAME=mh-alpha-linux-cc 50PLIST_SUBST+= MH_NAME=mh-alpha-linux-cc
51. endif 51. endif
52.elif !empty(MACHINE_PLATFORM:MLinux-*-powerpc*) 52.elif !empty(MACHINE_PLATFORM:MLinux-*-powerpc*)
53. if !empty(CC_VERSION:Mgcc*) 53. if !empty(CC_VERSION:Mgcc*)
54PLIST_SUBST+= MH_NAME=mh-linux 54PLIST_SUBST+= MH_NAME=mh-linux
55. else 55. else
56PLIST_SUBST+= MH_NAME=mh-linux-va 56PLIST_SUBST+= MH_NAME=mh-linux-va
57. endif 57. endif
58.elif ${OPSYS} == "Linux" || ${OPSYS} == "GNUkFreeBSD" 58.elif ${OPSYS} == "Linux" || ${OPSYS} == "GNUkFreeBSD"
59PLIST_SUBST+= MH_NAME=mh-linux 59PLIST_SUBST+= MH_NAME=mh-linux
60.elif ${OPSYS} == "Cygwin" 60.elif ${OPSYS} == "Cygwin"
61PLIST_SUBST+= MH_NAME=mh-cygwin 61PLIST_SUBST+= MH_NAME=mh-cygwin
62.elif !empty(OPSYS:M*BSD*) || ${OPSYS} == "DragonFly" || ${OPSYS} == "Bitrig" 62.elif !empty(OPSYS:M*BSD*) || ${OPSYS} == "DragonFly" || ${OPSYS} == "Bitrig"
63PLIST_SUBST+= MH_NAME=mh-bsd-gcc 63PLIST_SUBST+= MH_NAME=mh-bsd-gcc
64.elif ${OPSYS} == "AIX" 64.elif ${OPSYS} == "AIX"
65. if !empty(CC_VERSION:Mgcc*) 65. if !empty(CC_VERSION:Mgcc*)
66PLIST_SUBST+= MH_NAME=mh-aix-gcc 66PLIST_SUBST+= MH_NAME=mh-aix-gcc
67. else 67. else
68PLIST_SUBST+= MH_NAME=mh-aix-va 68PLIST_SUBST+= MH_NAME=mh-aix-va
69. endif 69. endif
70.elif ${OPSYS} == "HPUX" 70.elif ${OPSYS} == "HPUX"
71. if !empty(CC_VERSION:Mgcc*) 71. if !empty(CC_VERSION:Mgcc*)
72PLIST_SUBST+= MH_NAME=mh-hpux-gcc 72PLIST_SUBST+= MH_NAME=mh-hpux-gcc
73. else 73. else
74PLIST_SUBST+= MH_NAME=mh-hpux-acc 74PLIST_SUBST+= MH_NAME=mh-hpux-acc
75. endif 75. endif
76.elif ${OPSYS} == "Darwin" 76.elif ${OPSYS} == "Darwin"
77PLIST_SUBST+= MH_NAME=mh-darwin 77PLIST_SUBST+= MH_NAME=mh-darwin
78.elif ${OPSYS} == "Haiku" 78.elif ${OPSYS} == "Haiku"
79PLIST_SUBST+= MH_NAME=mh-haiku 79PLIST_SUBST+= MH_NAME=mh-haiku
80.elif ${OPSYS} == "IRIX" 80.elif ${OPSYS} == "IRIX"
81PLIST_SUBST+= MH_NAME=mh-irix 81PLIST_SUBST+= MH_NAME=mh-irix
82.elif ${OPSYS} == "Cygwin" 82.elif ${OPSYS} == "Cygwin"
83PLIST_SUBST+= MH_NAME=mh-cygwin 83PLIST_SUBST+= MH_NAME=mh-cygwin
84.elif ${OS_VARIANT} == "SCOOSR5" 84.elif ${OS_VARIANT} == "SCOOSR5"
85PLIST_SUBST+= MH_NAME=mh-scoosr5 85PLIST_SUBST+= MH_NAME=mh-scoosr5
86.elif ${OPSYS} == "OSF1" 86.elif ${OPSYS} == "OSF1"
87PLIST_SUBST+= MH_NAME=mh-alpha-osf 87PLIST_SUBST+= MH_NAME=mh-alpha-osf
88.elif ${OPSYS} == "QNX" 88.elif ${OPSYS} == "QNX"
89PLIST_SUBST+= MH_NAME=mh-qnx 89PLIST_SUBST+= MH_NAME=mh-qnx
90.else 90.else
91# For unknown systems, set the filename to mh-unknown so that the user 91# For unknown systems, set the filename to mh-unknown so that the user
92# gets a warning about missing files. 92# gets a warning about missing files.
93PLIST_SUBST+= MH_NAME=mh-unknown 93PLIST_SUBST+= MH_NAME=mh-unknown
94.endif 94.endif
95 95
96PKGCONFIG_OVERRIDE+= config/icu-i18n.pc 96PKGCONFIG_OVERRIDE+= config/icu-i18n.pc
97PKGCONFIG_OVERRIDE+= config/icu-io.pc 97PKGCONFIG_OVERRIDE+= config/icu-io.pc
98PKGCONFIG_OVERRIDE+= config/icu-le.pc 98PKGCONFIG_OVERRIDE+= config/icu-le.pc
99PKGCONFIG_OVERRIDE+= config/icu-lx.pc 99PKGCONFIG_OVERRIDE+= config/icu-lx.pc
100PKGCONFIG_OVERRIDE+= config/icu-uc.pc 100PKGCONFIG_OVERRIDE+= config/icu-uc.pc
101PKGCONFIG_OVERRIDE+= config/icu.pc 101PKGCONFIG_OVERRIDE+= config/icu.pc
102PKGCONFIG_OVERRIDE_STAGE= post-build 102PKGCONFIG_OVERRIDE_STAGE= post-build
103 103
 104# work around ICU-20533 (build failure on big endian machines)
 105post-configure:
 106 ${MKDIR} ${WRKSRC}/data/out
 107
104# expect builtin gcc atomic functions for gcc>=4.1 108# expect builtin gcc atomic functions for gcc>=4.1
105# (source/common/putilimp.h) 109# (source/common/putilimp.h)
106.if !empty(CC_VERSION:Mgcc-*) && \ 110.if !empty(CC_VERSION:Mgcc-*) && \
107 (empty(CC_VERSION:Mgcc-4.0*) && empty(CC_VERSION:Mgcc-[0-3].*)) 111 (empty(CC_VERSION:Mgcc-4.0*) && empty(CC_VERSION:Mgcc-[0-3].*))
108. if ${MACHINE_ARCH} == "i386" 112. if ${MACHINE_ARCH} == "i386"
109CFLAGS+= -march=i486 113CFLAGS+= -march=i486
110. endif 114. endif
111.endif 115.endif
112 116
113.if ${OPSYS} == "Cygwin" 117.if ${OPSYS} == "Cygwin"
114INSTALL_UNSTRIPPED= yes 118INSTALL_UNSTRIPPED= yes
115SO_MAJOR= ${PKGVERSION_NOREV:R} 119SO_MAJOR= ${PKGVERSION_NOREV:R}
116. for l in data i18n io le lx test tu uc 120. for l in data i18n io le lx test tu uc
117GENERATE_PLIST+= ${ECHO} bin/cygicu${l}${SO_MAJOR}.dll; 121GENERATE_PLIST+= ${ECHO} bin/cygicu${l}${SO_MAJOR}.dll;
118GENERATE_PLIST+= ${ECHO} lib/libicu${l}${SO_MAJOR}.dll.a; 122GENERATE_PLIST+= ${ECHO} lib/libicu${l}${SO_MAJOR}.dll.a;
119. endfor 123. endfor
120 124
121post-install: 125post-install:
122 mv ${DESTDIR}${PREFIX}/lib/cygicu*.dll ${DESTDIR}${PREFIX}/bin/ 126 mv ${DESTDIR}${PREFIX}/lib/cygicu*.dll ${DESTDIR}${PREFIX}/bin/
123. for l in data i18n io le lx test tu uc 127. for l in data i18n io le lx test tu uc
124 ${LN} -s libicu${l}${SO_MAJOR}.dll.a ${DESTDIR}${PREFIX}/lib/libicu${l}.dll.a 128 ${LN} -s libicu${l}${SO_MAJOR}.dll.a ${DESTDIR}${PREFIX}/lib/libicu${l}.dll.a
125. endfor 129. endfor
126 130
127SUBST_CLASSES+= icu-config 131SUBST_CLASSES+= icu-config
128SUBST_STAGE.icu-config= post-install 132SUBST_STAGE.icu-config= post-install
129SUBST_FILES.icu-config= ${DESTDIR}${PREFIX}/bin/icu-config 133SUBST_FILES.icu-config= ${DESTDIR}${PREFIX}/bin/icu-config
130SUBST_SED.icu-config+= -e '/^ICUUC_FILE=/ s/libdir/bindir/' 134SUBST_SED.icu-config+= -e '/^ICUUC_FILE=/ s/libdir/bindir/'
131SUBST_SED.icu-config+= -e 's/l$${LIBICU}/l$${ICUPREFIX}/g' 135SUBST_SED.icu-config+= -e 's/l$${LIBICU}/l$${ICUPREFIX}/g'
132SUBST_SED.icu-config+= -e '/l$${ICUPREFIX}/ s/$${ICULIBSUFFIX_VERSION}//g' 136SUBST_SED.icu-config+= -e '/l$${ICUPREFIX}/ s/$${ICULIBSUFFIX_VERSION}//g'
133.endif 137.endif
134 138
135.include "../../lang/python/tool.mk" 139.include "../../lang/python/tool.mk"
136.include "../../mk/bsd.pkg.mk" 140.include "../../mk/bsd.pkg.mk"