| @@ -1,176 +1,176 @@ | | | @@ -1,176 +1,176 @@ |
1 | # $NetBSD: Makefile,v 1.52 2008/09/11 04:22:50 dholland Exp $ | | 1 | # $NetBSD: Makefile,v 1.53 2008/09/19 19:08:10 joerg Exp $ |
2 | | | 2 | |
3 | DISTNAME= amaya-fullsrc-10.0.1 | | 3 | DISTNAME= amaya-fullsrc-10.0.1 |
4 | PKGNAME= ${DISTNAME:S/-fullsrc//} | | 4 | PKGNAME= ${DISTNAME:S/-fullsrc//} |
5 | CATEGORIES= www | | 5 | CATEGORIES= www |
6 | MASTER_SITES= http://www.w3.org/Amaya/Distribution/ \ | | 6 | MASTER_SITES= http://www.w3.org/Amaya/Distribution/ \ |
7 | ftp://ftp.w3.org/pub/amaya/ \ | | 7 | ftp://ftp.w3.org/pub/amaya/ \ |
8 | ftp://mirror.aarnet.edu.au/pub/amaya/ | | 8 | ftp://mirror.aarnet.edu.au/pub/amaya/ |
9 | EXTRACT_SUFX= .tgz | | 9 | EXTRACT_SUFX= .tgz |
10 | | | 10 | |
11 | MAINTAINER= pkgsrc-users@NetBSD.org | | 11 | MAINTAINER= pkgsrc-users@NetBSD.org |
12 | HOMEPAGE= http://www.w3.org/Amaya/ | | 12 | HOMEPAGE= http://www.w3.org/Amaya/ |
13 | COMMENT= Web browser/editor from the World Wide Web Consortium (W3C) | | 13 | COMMENT= Web browser/editor from the World Wide Web Consortium (W3C) |
14 | | | 14 | |
15 | PKG_DESTDIR_SUPPORT= user-destdir | | 15 | PKG_DESTDIR_SUPPORT= user-destdir |
16 | | | 16 | |
17 | USE_DIRS+= xdg-1.1 | | 17 | USE_DIRS+= xdg-1.1 |
18 | USE_LANGUAGES= c c++ | | 18 | USE_LANGUAGES= c c++ |
19 | USE_TOOLS+= gmake perl | | 19 | USE_TOOLS+= gmake perl pkg-config |
20 | GNU_CONFIGURE= yes | | 20 | GNU_CONFIGURE= yes |
21 | | | 21 | |
22 | WRKSRC= ${WRKDIR}/Amaya/work | | 22 | WRKSRC= ${WRKDIR}/Amaya/work |
23 | CONFIGURE_SCRIPT= ../configure | | 23 | CONFIGURE_SCRIPT= ../configure |
24 | BUILD_TARGET= all | | 24 | BUILD_TARGET= all |
25 | | | 25 | |
26 | CFLAGS+= -Dunix | | 26 | CFLAGS+= -Dunix |
27 | | | 27 | |
28 | FONTS_DIRS.ttf+= ${PREFIX}/share/Amaya/fonts | | 28 | FONTS_DIRS.ttf+= ${PREFIX}/share/Amaya/fonts |
29 | REQD_DIRS+= ${PREFIX}/share/Amaya ${PREFIX}/share/Amaya/fonts | | 29 | REQD_DIRS+= ${PREFIX}/share/Amaya ${PREFIX}/share/Amaya/fonts |
30 | | | 30 | |
31 | .include "../../mk/bsd.prefs.mk" | | 31 | .include "../../mk/bsd.prefs.mk" |
32 | | | 32 | |
33 | .if !empty(PKGSRC_COMPILER:Mgcc*) | | 33 | .if !empty(PKGSRC_COMPILER:Mgcc*) |
34 | CFLAGS+= -fno-strict-aliasing | | 34 | CFLAGS+= -fno-strict-aliasing |
35 | .endif | | 35 | .endif |
36 | | | 36 | |
37 | # GNOME/KDE desktop icon and related bits | | 37 | # GNOME/KDE desktop icon and related bits |
38 | # These used to get installed only on Linux; in 10.0.1 they don't seem | | 38 | # These used to get installed only on Linux; in 10.0.1 they don't seem |
39 | # to exist any more, but given the makefiles in this package that | | 39 | # to exist any more, but given the makefiles in this package that |
40 | # doesn't prove anything, and I can't test on Linux easily. So I'm | | 40 | # doesn't prove anything, and I can't test on Linux easily. So I'm |
41 | # going to leave this here commented out, along with the PLIST | | 41 | # going to leave this here commented out, along with the PLIST |
42 | # entries, until they're confirmed to be gone. | | 42 | # entries, until they're confirmed to be gone. |
43 | #PLIST_VARS+= desktop | | 43 | #PLIST_VARS+= desktop |
44 | #.if ${OPSYS} == "Linux" | | 44 | #.if ${OPSYS} == "Linux" |
45 | #PLIST.desktop= yes | | 45 | #PLIST.desktop= yes |
46 | #.endif | | 46 | #.endif |
47 | | | 47 | |
48 | # | | 48 | # |
49 | # Some notes on the build issues, for the benefit of the next person | | 49 | # Some notes on the build issues, for the benefit of the next person |
50 | # hacking this package: | | 50 | # hacking this package: |
51 | # | | 51 | # |
52 | # - The build directory must be a subdir of the Amaya dir of the | | 52 | # - The build directory must be a subdir of the Amaya dir of the |
53 | # distribution. If it isn't, the build breaks. Hence WRKSRC. | | 53 | # distribution. If it isn't, the build breaks. Hence WRKSRC. |
54 | # | | 54 | # |
55 | # - The copy of libwww that comes in the distfile is required; it is | | 55 | # - The copy of libwww that comes in the distfile is required; it is |
56 | # custom-patched in unspecified ways. The copy of expat in that copy | | 56 | # custom-patched in unspecified ways. The copy of expat in that copy |
57 | # of libwww is also custom-patched. This means we need to use that | | 57 | # of libwww is also custom-patched. This means we need to use that |
58 | # expat and not the pkgsrc one, which is problematic because wxWidgets | | 58 | # expat and not the pkgsrc one, which is problematic because wxWidgets |
59 | # also uses expat. | | 59 | # also uses expat. |
60 | # | | 60 | # |
61 | # - The build system is incapable of building that libwww without | | 61 | # - The build system is incapable of building that libwww without |
62 | # help; if the libwww subdir of the build directory does not exist, | | 62 | # help; if the libwww subdir of the build directory does not exist, |
63 | # the makefiles won't create it, and it's not created by the configure | | 63 | # the makefiles won't create it, and it's not created by the configure |
64 | # script. Thus the manual invocation of make libwww_config in | | 64 | # script. Thus the manual invocation of make libwww_config in |
65 | # post-configure. | | 65 | # post-configure. |
66 | # | | 66 | # |
67 | # - The distfile contains not just one but multiple included copies of | | 67 | # - The distfile contains not just one but multiple included copies of |
68 | # various basic libraries (libpng, libjpeg, zlib, expat) and for the | | 68 | # various basic libraries (libpng, libjpeg, zlib, expat) and for the |
69 | # most part we don't want to use those copies, because they're out of | | 69 | # most part we don't want to use those copies, because they're out of |
70 | # date. It is like pulling teeth - you have to patch all over the | | 70 | # date. It is like pulling teeth - you have to patch all over the |
71 | # place, even though the configure script ostensibly supports using | | 71 | # place, even though the configure script ostensibly supports using |
72 | # the system versions. | | 72 | # the system versions. |
73 | # | | 73 | # |
74 | # - For now I'm using the included copy of wxWidgets, because the | | 74 | # - For now I'm using the included copy of wxWidgets, because the |
75 | # pkgsrc copy is too old. This has a couple of its own issues, but, | | 75 | # pkgsrc copy is too old. This has a couple of its own issues, but, |
76 | # once one forcibly persuades the Amaya configure script to configure | | 76 | # once one forcibly persuades the Amaya configure script to configure |
77 | # it correctly, isn't a big problem. | | 77 | # it correctly, isn't a big problem. |
78 | # | | 78 | # |
79 | # - The code using redland does not work, even using the copy of | | 79 | # - The code using redland does not work, even using the copy of |
80 | # redland included in the distfile. The schemas it tries to build are | | 80 | # redland included in the distfile. The schemas it tries to build are |
81 | # syntactically invalid. It *might* be a simple problem, I don't know | | 81 | # syntactically invalid. It *might* be a simple problem, I don't know |
82 | # enough about that stuff to fix it. Maybe someone else does. | | 82 | # enough about that stuff to fix it. Maybe someone else does. |
83 | # | | 83 | # |
84 | # - The DAV code does not build. It requires generated files from a | | 84 | # - The DAV code does not build. It requires generated files from a |
85 | # later part of the build to already exist when it's compiled. I don't | | 85 | # later part of the build to already exist when it's compiled. I don't |
86 | # know if it also must come before that part of the build, but it | | 86 | # know if it also must come before that part of the build, but it |
87 | # wouldn't entirely surprise me if it did; between this and the libwww | | 87 | # wouldn't entirely surprise me if it did; between this and the libwww |
88 | # issue it's clear that whoever develops this thing never tries | | 88 | # issue it's clear that whoever develops this thing never tries |
89 | # building a clean tree. By the time I got to this I was tired of the | | 89 | # building a clean tree. By the time I got to this I was tired of the |
90 | # lossage and just disabled the DAV code entirely. | | 90 | # lossage and just disabled the DAV code entirely. |
91 | # | | 91 | # |
92 | # - The build target is "all". This is not the default. The default | | 92 | # - The build target is "all". This is not the default. The default |
93 | # build target (if you just run make) also sort of builds the package | | 93 | # build target (if you just run make) also sort of builds the package |
94 | # but doesn't actually work. | | 94 | # but doesn't actually work. |
95 | # | | 95 | # |
96 | # - The makefiles link some of the internal portions of the program | | 96 | # - The makefiles link some of the internal portions of the program |
97 | # using -l/-L, and some by explicitly listing .a files. The pkgsrc | | 97 | # using -l/-L, and some by explicitly listing .a files. The pkgsrc |
98 | # wrappers reorder these and break the build. I patched the makefiles | | 98 | # wrappers reorder these and break the build. I patched the makefiles |
99 | # to always explicitly name .a files for internal program pieces. | | 99 | # to always explicitly name .a files for internal program pieces. |
100 | # | | 100 | # |
101 | | | 101 | |
102 | post-extract: | | 102 | post-extract: |
103 | ${MKDIR} ${WRKSRC} | | 103 | ${MKDIR} ${WRKSRC} |
104 | | | 104 | |
105 | post-configure: | | 105 | post-configure: |
106 | ${CP} ${WRKSRC}/Options.orig ${WRKSRC}/Options | | 106 | ${CP} ${WRKSRC}/Options.orig ${WRKSRC}/Options |
107 | ${TOUCH} ${WRKSRC}/Makefile | | 107 | ${TOUCH} ${WRKSRC}/Makefile |
108 | cd ${WRKSRC} && \ | | 108 | cd ${WRKSRC} && \ |
109 | ${SETENV} ${CONFIGURE_ENV} ${MAKE_ENV} ${GMAKE} libwww_config | | 109 | ${SETENV} ${CONFIGURE_ENV} ${MAKE_ENV} ${GMAKE} libwww_config |
110 | | | 110 | |
111 | # | | 111 | # |
112 | # Components, deps, and included copies of libraries | | 112 | # Components, deps, and included copies of libraries |
113 | # | | 113 | # |
114 | | | 114 | |
115 | EXTRACT_ELEMENTS= Amaya | | 115 | EXTRACT_ELEMENTS= Amaya |
116 | | | 116 | |
117 | # Requires its own custom-patched libwww, | | 117 | # Requires its own custom-patched libwww, |
118 | # which also incl. a custom-patched expat. | | 118 | # which also incl. a custom-patched expat. |
119 | EXTRACT_ELEMENTS+= libwww | | 119 | EXTRACT_ELEMENTS+= libwww |
120 | # -or- | | 120 | # -or- |
121 | #.include "../../www/libwww/buildlink3.mk" | | 121 | #.include "../../www/libwww/buildlink3.mk" |
122 | #.include "../../textproc/expat/buildlink3.mk" | | 122 | #.include "../../textproc/expat/buildlink3.mk" |
123 | | | 123 | |
124 | # The Amaya portion of the distfile inclues copies of libpng, jpeg, and zlib. | | 124 | # The Amaya portion of the distfile inclues copies of libpng, jpeg, and zlib. |
125 | # Use pkgsrc's libpng, jpeg, and zlib instead. | | 125 | # Use pkgsrc's libpng, jpeg, and zlib instead. |
126 | CONFIGURE_ARGS+= --without-graphic-libs # Use pkgsrc libraries | | 126 | CONFIGURE_ARGS+= --without-graphic-libs # Use pkgsrc libraries |
127 | # link correctly with pkgsrc zlib (XXX: is this needed or correct?) | | 127 | # link correctly with pkgsrc zlib (XXX: is this needed or correct?) |
128 | LIBS+= ${COMPILER_RPATH_FLAG}${LOCALBASE}/lib | | 128 | LIBS+= ${COMPILER_RPATH_FLAG}${PREFIX}/lib |
129 | .include "../../graphics/jpeg/buildlink3.mk" | | 129 | .include "../../graphics/jpeg/buildlink3.mk" |
130 | .include "../../graphics/png/buildlink3.mk" | | 130 | .include "../../graphics/png/buildlink3.mk" |
131 | .include "../../devel/zlib/buildlink3.mk" | | 131 | .include "../../devel/zlib/buildlink3.mk" |
132 | | | 132 | |
133 | # The davlib code doesn't build. | | 133 | # The davlib code doesn't build. |
134 | CONFIGURE_ARGS+= --without-dav | | 134 | CONFIGURE_ARGS+= --without-dav |
135 | | | 135 | |
136 | # pkgsrc doesn't have redland (yet?) | | 136 | # pkgsrc doesn't have redland (yet?) |
137 | # disable; currently doesn't work and I don't have time to chase down why | | 137 | # disable; currently doesn't work and I don't have time to chase down why |
138 | #EXTRACT_ELEMENTS+= redland | | 138 | #EXTRACT_ELEMENTS+= redland |
139 | # -or- | | 139 | # -or- |
140 | #CONFIGURE_ARGS+= --enable-system-redland | | 140 | #CONFIGURE_ARGS+= --enable-system-redland |
141 | #.include "../../???/redland/buildlink3.mk" | | 141 | #.include "../../???/redland/buildlink3.mk" |
142 | | | 142 | |
143 | # pkgsrc's wxGTK is too old (2.6.3; 2.8.x is required) | | 143 | # pkgsrc's wxGTK is too old (2.6.3; 2.8.x is required) |
144 | EXTRACT_ELEMENTS+= wxWidgets | | 144 | EXTRACT_ELEMENTS+= wxWidgets |
145 | .include "../../x11/gtk2/buildlink3.mk" | | 145 | .include "../../x11/gtk2/buildlink3.mk" |
146 | .include "../../x11/libXinerama/buildlink3.mk" | | 146 | .include "../../x11/libXinerama/buildlink3.mk" |
147 | .include "../../x11/libSM/buildlink3.mk" | | 147 | .include "../../x11/libSM/buildlink3.mk" |
148 | .include "../../x11/libXxf86vm/buildlink3.mk" | | 148 | .include "../../x11/libXxf86vm/buildlink3.mk" |
149 | .include "../../x11/xf86vidmodeproto/buildlink3.mk" | | 149 | .include "../../x11/xf86vidmodeproto/buildlink3.mk" |
150 | .include "../../graphics/MesaLib/buildlink3.mk" | | 150 | .include "../../graphics/MesaLib/buildlink3.mk" |
151 | .include "../../graphics/glu/buildlink3.mk" | | 151 | .include "../../graphics/glu/buildlink3.mk" |
152 | CONFIGURE_ENV+= BUILDLINK_DIR=${BUILDLINK_DIR:Q} | | 152 | CONFIGURE_ENV+= BUILDLINK_DIR=${BUILDLINK_DIR:Q} |
153 | # wxWidgets has *another* copy of a bunch of image libs. | | 153 | # wxWidgets has *another* copy of a bunch of image libs. |
154 | CONFIGURE_ARGS+= --with-libpng=sys # Use pkgsrc libraries | | 154 | CONFIGURE_ARGS+= --with-libpng=sys # Use pkgsrc libraries |
155 | CONFIGURE_ARGS+= --with-libjpeg=sys # Use pkgsrc libraries | | 155 | CONFIGURE_ARGS+= --with-libjpeg=sys # Use pkgsrc libraries |
156 | CONFIGURE_ARGS+= --with-libtiff=sys # Use pkgsrc libraries | | 156 | CONFIGURE_ARGS+= --with-libtiff=sys # Use pkgsrc libraries |
157 | CONFIGURE_ARGS+= --with-libxpm=sys # Use pkgsrc libraries | | 157 | CONFIGURE_ARGS+= --with-libxpm=sys # Use pkgsrc libraries |
158 | .include "../../graphics/tiff/buildlink3.mk" | | 158 | .include "../../graphics/tiff/buildlink3.mk" |
159 | .include "../../x11/libXpm/buildlink3.mk" | | 159 | .include "../../x11/libXpm/buildlink3.mk" |
160 | # wxWidgets also has a private copy of expat; since Amaya ostensibly | | 160 | # wxWidgets also has a private copy of expat; since Amaya ostensibly |
161 | # needs the patched expat in its libwww, which is at least the same | | 161 | # needs the patched expat in its libwww, which is at least the same |
162 | # version as the one in wxWidgets, we'll let wxWidgets use its builtin | | 162 | # version as the one in wxWidgets, we'll let wxWidgets use its builtin |
163 | # copy. That way if both are linked the fallout should be limited, and | | 163 | # copy. That way if both are linked the fallout should be limited, and |
164 | # maybe (ha!) the Amaya developers have seen to it. This will probably | | 164 | # maybe (ha!) the Amaya developers have seen to it. This will probably |
165 | # break with pkgsrc wxWidgets, but we can worry about that later. | | 165 | # break with pkgsrc wxWidgets, but we can worry about that later. |
166 | #.include "../../textproc/expat/buildlink3.mk" | | 166 | #.include "../../textproc/expat/buildlink3.mk" |
167 | # -or- | | 167 | # -or- |
168 | #CONFIGURE_ARGS+= --enable-system-wx # Use pkgsrc libraries | | 168 | #CONFIGURE_ARGS+= --enable-system-wx # Use pkgsrc libraries |
169 | #.include "../../graphics/glu/buildlink3.mk" | | 169 | #.include "../../graphics/glu/buildlink3.mk" |
170 | #.include "../../x11/wxGTK/buildlink3.mk" | | 170 | #.include "../../x11/wxGTK/buildlink3.mk" |
171 | | | 171 | |
172 | # also uses glib | | 172 | # also uses glib |
173 | .include "../../devel/glib2/buildlink3.mk" | | 173 | .include "../../devel/glib2/buildlink3.mk" |
174 | | | 174 | |
175 | | | 175 | |
176 | .include "../../mk/bsd.pkg.mk" | | 176 | .include "../../mk/bsd.pkg.mk" |