| @@ -1,143 +1,143 @@ | | | @@ -1,143 +1,143 @@ |
1 | # $NetBSD: Makefile,v 1.67 2011/11/01 06:02:45 sbd Exp $ | | 1 | # $NetBSD: Makefile,v 1.68 2011/11/01 06:57:58 sbd Exp $ |
2 | | | 2 | |
3 | DISTNAME= amaya-fullsrc-11.3.1 | | 3 | DISTNAME= amaya-fullsrc-11.3.1 |
4 | PKGNAME= ${DISTNAME:S/-fullsrc//} | | 4 | PKGNAME= ${DISTNAME:S/-fullsrc//} |
5 | PKGREVISION= 1 | | 5 | PKGREVISION= 2 |
6 | CATEGORIES= www | | 6 | CATEGORIES= www |
7 | MASTER_SITES= http://www.w3.org/Amaya/Distribution/ \ | | 7 | MASTER_SITES= http://www.w3.org/Amaya/Distribution/ \ |
8 | ftp://ftp.w3.org/pub/amaya/ \ | | 8 | ftp://ftp.w3.org/pub/amaya/ \ |
9 | ftp://mirror.aarnet.edu.au/pub/amaya/ | | 9 | ftp://mirror.aarnet.edu.au/pub/amaya/ |
10 | EXTRACT_SUFX= .tgz | | 10 | EXTRACT_SUFX= .tgz |
11 | | | 11 | |
12 | MAINTAINER= pkgsrc-users@NetBSD.org | | 12 | MAINTAINER= pkgsrc-users@NetBSD.org |
13 | HOMEPAGE= http://www.w3.org/Amaya/ | | 13 | HOMEPAGE= http://www.w3.org/Amaya/ |
14 | COMMENT= Web browser/editor from the World Wide Web Consortium (W3C) | | 14 | COMMENT= Web browser/editor from the World Wide Web Consortium (W3C) |
15 | LICENSE= amaya-license | | 15 | LICENSE= amaya-license |
16 | | | 16 | |
17 | PKG_DESTDIR_SUPPORT= user-destdir | | 17 | PKG_DESTDIR_SUPPORT= user-destdir |
18 | | | 18 | |
19 | USE_LANGUAGES= c c++ | | 19 | USE_LANGUAGES= c c++ |
20 | USE_TOOLS+= gmake perl pkg-config | | 20 | USE_TOOLS+= gmake perl pkg-config |
21 | GNU_CONFIGURE= yes | | 21 | GNU_CONFIGURE= yes |
22 | | | 22 | |
23 | # builds receive SIGSEGV (go figure) | | 23 | # builds receive SIGSEGV (go figure) |
24 | MAKE_JOBS_SAFE= no | | 24 | MAKE_JOBS_SAFE= no |
25 | | | 25 | |
26 | BUILDDIR= ${WRKDIR}/Amaya/work | | 26 | BUILDDIR= ${WRKDIR}/Amaya/work |
27 | WRKSRC= ${WRKDIR} | | 27 | WRKSRC= ${WRKDIR} |
28 | CONFIGURE_DIRS= Amaya/work # also sets BUILD_DIRS | | 28 | CONFIGURE_DIRS= Amaya/work # also sets BUILD_DIRS |
29 | CONFIGURE_SCRIPT= ../configure | | 29 | CONFIGURE_SCRIPT= ../configure |
30 | BUILD_TARGET= all | | 30 | BUILD_TARGET= all |
31 | | | 31 | |
32 | CFLAGS+= -Dunix | | 32 | CFLAGS+= -Dunix |
33 | | | 33 | |
34 | FONTS_DIRS.ttf+= ${PREFIX}/share/Amaya/fonts | | 34 | FONTS_DIRS.ttf+= ${PREFIX}/share/Amaya/fonts |
35 | REQD_DIRS+= ${PREFIX}/share/Amaya ${PREFIX}/share/Amaya/fonts | | 35 | REQD_DIRS+= ${PREFIX}/share/Amaya ${PREFIX}/share/Amaya/fonts |
36 | | | 36 | |
37 | .include "../../mk/bsd.prefs.mk" | | 37 | .include "../../mk/bsd.prefs.mk" |
38 | | | 38 | |
39 | .if !empty(PKGSRC_COMPILER:Mgcc*) | | 39 | .if !empty(PKGSRC_COMPILER:Mgcc*) |
40 | CFLAGS+= -fno-strict-aliasing | | 40 | CFLAGS+= -fno-strict-aliasing |
41 | .endif | | 41 | .endif |
42 | | | 42 | |
43 | # | | 43 | # |
44 | # Some notes on the build issues, for the benefit of the next person | | 44 | # Some notes on the build issues, for the benefit of the next person |
45 | # hacking this package: | | 45 | # hacking this package: |
46 | # | | 46 | # |
47 | # - The build directory must be a subdir of the Amaya dir of the | | 47 | # - The build directory must be a subdir of the Amaya dir of the |
48 | # distribution. If it isn't, the build breaks. This is why the | | 48 | # distribution. If it isn't, the build breaks. This is why the |
49 | # build dir is put where it is and not directly under ${WRKDIR}. | | 49 | # build dir is put where it is and not directly under ${WRKDIR}. |
50 | # (This was true in 10.x; it might not be true any longer.) | | 50 | # (This was true in 10.x; it might not be true any longer.) |
51 | # | | 51 | # |
52 | # - The distfile currently includes copies of Mesa, freetype, libwww, | | 52 | # - The distfile currently includes copies of Mesa, freetype, libwww, |
53 | # redland, and wxWidgets as well as Amaya itself. In 10.x it used to | | 53 | # redland, and wxWidgets as well as Amaya itself. In 10.x it used to |
54 | # also contain a pile of graphics libraries; these have thankfully | | 54 | # also contain a pile of graphics libraries; these have thankfully |
55 | # been pruned. | | 55 | # been pruned. |
56 | # | | 56 | # |
57 | # - There is no reason I can see to use or care about the included | | 57 | # - There is no reason I can see to use or care about the included |
58 | # Mesa, freetype, or redland. | | 58 | # Mesa, freetype, or redland. |
59 | # | | 59 | # |
60 | # - The pkgsrc package used to use the included wxWidgets because at | | 60 | # - The pkgsrc package used to use the included wxWidgets because at |
61 | # the time it was put together pkgsrc didn't have wxGTK28, only | | 61 | # the time it was put together pkgsrc didn't have wxGTK28, only |
62 | # 26. This is no longer true and it should be safe to ignore the | | 62 | # 26. This is no longer true and it should be safe to ignore the |
63 | # included wxWidgets. However, if it needs to come back, beware of | | 63 | # included wxWidgets. However, if it needs to come back, beware of |
64 | # copies of other libs included in it that Amaya may forcibly build | | 64 | # copies of other libs included in it that Amaya may forcibly build |
65 | # and use; in 10.x the only way to get the included wxWidgets to not | | 65 | # and use; in 10.x the only way to get the included wxWidgets to not |
66 | # use its own copies of png, jpeg, tiff, and xpm was to patch the | | 66 | # use its own copies of png, jpeg, tiff, and xpm was to patch the |
67 | # Amaya build logic. I've left this patch in place for future | | 67 | # Amaya build logic. I've left this patch in place for future |
68 | # reference, although it's only about 50% likely it'll have any effect | | 68 | # reference, although it's only about 50% likely it'll have any effect |
69 | # next time. Do not believe the build docs or the configure script | | 69 | # next time. Do not believe the build docs or the configure script |
70 | # when it claims to allow you to disable builtin copies of libs; it | | 70 | # when it claims to allow you to disable builtin copies of libs; it |
71 | # lies. | | 71 | # lies. |
72 | # | | 72 | # |
73 | # - The included libwww, however, appears to be necessary. In 10.x it | | 73 | # - The included libwww, however, appears to be necessary. In 10.x it |
74 | # was a custom-patched version; now it appears not to be but it is | | 74 | # was a custom-patched version; now it appears not to be but it is |
75 | # also a newer version than found in pkgsrc. As I don't think a newer | | 75 | # also a newer version than found in pkgsrc. As I don't think a newer |
76 | # libwww than the one in pkgsrc has actually been released, it may as | | 76 | # libwww than the one in pkgsrc has actually been released, it may as |
77 | # well be a custom-patched version. Given the history it is unlikely | | 77 | # well be a custom-patched version. Given the history it is unlikely |
78 | # that Amaya will work with the older libwww in pkgsrc... assuming it | | 78 | # that Amaya will work with the older libwww in pkgsrc... assuming it |
79 | # works at all of course... so it is probably best to use the included | | 79 | # works at all of course... so it is probably best to use the included |
80 | # libwww until such time as this becoems clearer. | | 80 | # libwww until such time as this becoems clearer. |
81 | # | | 81 | # |
82 | # - The included libwww includes in turn its own copy of expat. In | | 82 | # - The included libwww includes in turn its own copy of expat. In |
83 | # 10.x this was also a custom-patched version. This may or may not be | | 83 | # 10.x this was also a custom-patched version. This may or may not be |
84 | # true now. Regardless, Amaya shold be made to use pkgsrc expat, | | 84 | # true now. Regardless, Amaya shold be made to use pkgsrc expat, |
85 | # because as things stand it is likely to end up with multiple expats | | 85 | # because as things stand it is likely to end up with multiple expats |
86 | # linked into it at once, and that's unlikely to work. I have not done | | 86 | # linked into it at once, and that's unlikely to work. I have not done |
87 | # this yet though. (XXX) | | 87 | # this yet though. (XXX) |
88 | # | | 88 | # |
89 | # - As of 10.x the code using redland did not work, even using the | | 89 | # - As of 10.x the code using redland did not work, even using the |
90 | # copy of redland included in the distfile. The schemas it tries to | | 90 | # copy of redland included in the distfile. The schemas it tries to |
91 | # build are syntactically invalid. It *might* be a simple problem, I | | 91 | # build are syntactically invalid. It *might* be a simple problem, I |
92 | # don't know enough about that stuff to fix it. Maybe someone else | | 92 | # don't know enough about that stuff to fix it. Maybe someone else |
93 | # does. I haven't tried this in 11.x yet. (XXX) | | 93 | # does. I haven't tried this in 11.x yet. (XXX) |
94 | # | | 94 | # |
95 | # - The build target is "all". This is not the default. The default | | 95 | # - The build target is "all". This is not the default. The default |
96 | # build target (if you just run make) also sort of builds the package | | 96 | # build target (if you just run make) also sort of builds the package |
97 | # but doesn't actually work. | | 97 | # but doesn't actually work. |
98 | # | | 98 | # |
99 | # - The makefiles link some of the internal portions of the program | | 99 | # - The makefiles link some of the internal portions of the program |
100 | # using -l/-L, and some by explicitly listing .a files. The pkgsrc | | 100 | # using -l/-L, and some by explicitly listing .a files. The pkgsrc |
101 | # wrappers reorder these and break the build. I patched the makefiles | | 101 | # wrappers reorder these and break the build. I patched the makefiles |
102 | # to always explicitly name .a files for internal program pieces. | | 102 | # to always explicitly name .a files for internal program pieces. |
103 | # | | 103 | # |
104 | # - The DAV code does not build by default. It requires generated | | 104 | # - The DAV code does not build by default. It requires generated |
105 | # files from a later part of the build to already exist when it's | | 105 | # files from a later part of the build to already exist when it's |
106 | # compiled. (That is, davlib/ doesn't build until part of amaya/ is | | 106 | # compiled. (That is, davlib/ doesn't build until part of amaya/ is |
107 | # built, but you can't successfully build amaya/ without davlib/ | | 107 | # built, but you can't successfully build amaya/ without davlib/ |
108 | # because it needs to link with it. It turns out that this can be | | 108 | # because it needs to link with it. It turns out that this can be |
109 | # hacked around by forcibly disabling the davlib/ directory in the | | 109 | # hacked around by forcibly disabling the davlib/ directory in the |
110 | # top-level makefile; if davlib is nonetheless enabled, the amaya/ | | 110 | # top-level makefile; if davlib is nonetheless enabled, the amaya/ |
111 | # makefile recurses back to it to build it after generating the file | | 111 | # makefile recurses back to it to build it after generating the file |
112 | # it needs. Sheesh. Between this and other issues it's clear that | | 112 | # it needs. Sheesh. Between this and other issues it's clear that |
113 | # whoever develops this thing never tries building a clean tree, and | | 113 | # whoever develops this thing never tries building a clean tree, and |
114 | # sometimes I wonder if they compile it at all before releasing it. | | 114 | # sometimes I wonder if they compile it at all before releasing it. |
115 | # | | 115 | # |
116 | | | 116 | |
117 | post-extract: | | 117 | post-extract: |
118 | ${MKDIR} ${BUILDDIR} | | 118 | ${MKDIR} ${BUILDDIR} |
119 | | | 119 | |
120 | post-configure: | | 120 | post-configure: |
121 | ${CP} ${BUILDDIR}/Options.orig ${BUILDDIR}/Options | | 121 | ${CP} ${BUILDDIR}/Options.orig ${BUILDDIR}/Options |
122 | ${TOUCH} ${BUILDDIR}/Makefile | | 122 | ${TOUCH} ${BUILDDIR}/Makefile |
123 | | | 123 | |
124 | # The davlib code doesn't build, so disable it. (no longer necessary) | | 124 | # The davlib code doesn't build, so disable it. (no longer necessary) |
125 | #CONFIGURE_ARGS+= --without-dav | | 125 | #CONFIGURE_ARGS+= --without-dav |
126 | | | 126 | |
127 | # | | 127 | # |
128 | # Use the supplied (prerelease?) libwww; use pkgsrc for everything else. | | 128 | # Use the supplied (prerelease?) libwww; use pkgsrc for everything else. |
129 | # See notes above, and check the cvs history for tips if trying to reenable | | 129 | # See notes above, and check the cvs history for tips if trying to reenable |
130 | # the builtin wxWidgets. | | 130 | # the builtin wxWidgets. |
131 | # | | 131 | # |
132 | EXTRACT_ELEMENTS= Amaya libwww | | 132 | EXTRACT_ELEMENTS= Amaya libwww |
133 | CONFIGURE_ARGS+= --enable-system-redland | | 133 | CONFIGURE_ARGS+= --enable-system-redland |
134 | CONFIGURE_ARGS+= --enable-system-wx | | 134 | CONFIGURE_ARGS+= --enable-system-wx |
135 | | | 135 | |
136 | #.include "../../www/libwww/buildlink3.mk" | | 136 | #.include "../../www/libwww/buildlink3.mk" |
137 | .include "../../textproc/redland/buildlink3.mk" | | 137 | .include "../../textproc/redland/buildlink3.mk" |
138 | .include "../../graphics/glu/buildlink3.mk" | | 138 | .include "../../graphics/glu/buildlink3.mk" |
139 | .include "../../x11/wxGTK28/buildlink3.mk" | | 139 | .include "../../x11/wxGTK28/buildlink3.mk" |
140 | .include "../../devel/glib2/buildlink3.mk" | | 140 | .include "../../devel/glib2/buildlink3.mk" |
141 | .include "../../textproc/expat/buildlink3.mk" | | 141 | .include "../../textproc/expat/buildlink3.mk" |
142 | | | 142 | |
143 | .include "../../mk/bsd.pkg.mk" | | 143 | .include "../../mk/bsd.pkg.mk" |