3 DISTNAME= amaya-fullsrc-11.3.1
4 PKGNAME= ${DISTNAME:S/-fullsrc//}
7 MASTER_SITES= http://www.w3.org/Amaya/Distribution/ \
8 ftp://ftp.w3.org/pub/amaya/ \
9 ftp://mirror.aarnet.edu.au/pub/amaya/
12 MAINTAINER= pkgsrc-users@NetBSD.org
13 HOMEPAGE= http://www.w3.org/Amaya/
14 COMMENT= Web browser/editor from the World Wide Web Consortium (W3C)
15 LICENSE= amaya-license
17 PKG_DESTDIR_SUPPORT= user-destdir
20 USE_TOOLS+= gmake perl pkg-config
23 # builds receive SIGSEGV (go figure)
26 BUILDDIR= ${WRKDIR}/Amaya/work
28 CONFIGURE_DIRS= Amaya/work # also sets BUILD_DIRS
29 CONFIGURE_SCRIPT= ../configure
34 FONTS_DIRS.ttf+= ${PREFIX}/share/Amaya/fonts
35 REQD_DIRS+= ${PREFIX}/share/Amaya ${PREFIX}/share/Amaya/fonts
37 .include "../../mk/bsd.prefs.mk"
39 .if !empty(PKGSRC_COMPILER:Mgcc*)
40 CFLAGS+= -fno-strict-aliasing
44 # Some notes on the build issues, for the benefit of the next person
45 # hacking this package:
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
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.)
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
54 # also contain a pile of graphics libraries; these have thankfully
57 # - There is no reason I can see to use or care about the included
58 # Mesa, freetype, or redland.
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
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
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
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
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
70 # when it claims to allow you to disable builtin copies of libs; 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
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
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
79 # works at all of course... so it is probably best to use the included
80 # libwww until such time as this becoems clearer.
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
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
86 # linked into it at once, and that's unlikely to work. I have not done
87 # this yet though. (XXX)
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
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
93 # does. I haven't tried this in 11.x yet. (XXX)
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
97 # but doesn't actually work.
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
101 # wrappers reorder these and break the build. I patched the makefiles
102 # to always explicitly name .a files for internal program pieces.
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
106 # compiled. (That is, davlib/ doesn't build until part of amaya/ is
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
109 # hacked around by forcibly disabling the davlib/ directory in the
110 # top-level makefile; if davlib is nonetheless enabled, the amaya/
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
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.
121 ${CP} ${BUILDDIR}/Options.orig ${BUILDDIR}/Options
122 ${TOUCH} ${BUILDDIR}/Makefile
124 # The davlib code doesn't build, so disable it. (no longer necessary)
125 #CONFIGURE_ARGS+= --without-dav
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
130 # the builtin wxWidgets.
132 EXTRACT_ELEMENTS= Amaya libwww
133 CONFIGURE_ARGS+= --enable-system-redland
134 CONFIGURE_ARGS+= --enable-system-wx
136 #.include "../../www/libwww/buildlink3.mk"
137 .include "../../textproc/redland/buildlink3.mk"
138 .include "../../graphics/glu/buildlink3.mk"
139 .include "../../x11/wxGTK28/buildlink3.mk"
140 .include "../../devel/glib2/buildlink3.mk"
141 .include "../../textproc/expat/buildlink3.mk"
143 .include "../../mk/bsd.pkg.mk"