and add a new helper target and script, "show-buildlink3", that outputs
a listing of the buildlink3.mk files included as well as the depth at
which they are included.
For example, "make show-buildlink3" in fonts/Xft2 displays:
zlib
fontconfig
iconv
zlib
freetype2
expat
freetype2
Xrender
renderproto
RECOMMENDED is removed. It becomes ABI_DEPENDS.
BUILDLINK_RECOMMENDED.foo becomes BUILDLINK_ABI_DEPENDS.foo.
BUILDLINK_DEPENDS.foo becomes BUILDLINK_API_DEPENDS.foo.
BUILDLINK_DEPENDS does not change.
IGNORE_RECOMMENDED (which defaulted to "no") becomes USE_ABI_DEPENDS
which defaults to "yes".
Added to obsolete.mk checking for IGNORE_RECOMMENDED.
I did not manually go through and fix any aesthetic tab/spacing issues.
I have tested the above patch on DragonFly building and packaging
subversion and pkglint and their many dependencies.
I have also tested USE_ABI_DEPENDS=no on my NetBSD workstation (where I
have used IGNORE_RECOMMENDED for a long time). I have been an active user
of IGNORE_RECOMMENDED since it was available.
As suggested, I removed the documentation sentences suggesting bumping for
"security" issues.
As discussed on tech-pkg.
I will commit to revbump, pkglint, pkg_install, createbuildlink separately.
Note that if you use wip, it will fail! I will commit to pkgsrc-wip
later (within day).
makeinfo if no native makeinfo executable exists. Honor TEXINFO_REQD
when determining whether the native makeinfo can be used.
* Remove USE_MAKEINFO and replace it with USE_TOOLS+=makeinfo.
* Get rid of all the "split" argument deduction for makeinfo since
the PLIST module already handles varying numbers of split info files
correctly.
NOTE: Platforms that have "makeinfo" in the base system should check
that the makeinfo entries of pkgsrc/mk/tools.${OPSYS}.mk are
correct.
file's sole purpose was to provide a dependency on pkg-config and set
some environment variables. Instead, turn pkg-config into a "tool"
in the tools framework, where the pkg-config wrapper automatically
adds PKG_CONFIG_LIBDIR to the environment before invoking the real
pkg-config.
For all package Makefiles that included pkg-config/buildlink3.mk, remove
that inclusion and replace it with USE_TOOLS+=pkg-config.
Changes since 1.9.4:
- Bugfixes
+ The minimal GLib wrappers are now installed as (g-wrap gw-glib),
as expected by GnuCash.
+ A problem with generic specializer class lookup has been fixed.
+ A problem with generics specialization and default arguments has
been fixed.
+ A problem with default arguments, when combined with
invisible arguments (such as output arguments) has been fixed.
- Enhanced generics support: now all arguments of methods are
specialized, not only the first one.
- Bugfixes
+ Now ships with (g-wrap gw-wct) compatibilty module needed by
GnuCash at runtime.
+ Fixes for handling output arguments:
- Wrapped functions with void return value and output arguments
now return expected results
- Optional argument count is now correctly computed in the
presence of output arguments
+ The libffi alignment requirements are now honored. This fixes bus
errors on many non-x86 architectures.
+ On big-endian architectures libffi-wrapped functions that return
char now work correctly.
+ Some "uninitialized variable" warnings were fixed in generated code
which caused compiles with GCC 4.0 to fail (Debian Bug#290305).
Changes since 1.3.4:
Version 1.9.3
- Comes with a compatibility layer that allows GnuCash to be built
with it.
- Reverts the enhanced generics support, which was introduced in
1.9.2, since that currently breaks guile-gnome
- Bugfixes
+ g-wrap-2.0-guile.pc is now generated correctly, even if the
internal libffi is used.
+ Types used by constants are now considered when calculating the
set of referenced types in a wrapset. This bug led to missing code
and compile errors when a type defined in another wrapset was used
by only by a constant.
+ On platforms which lack alloca(), the version shipped with
G-Wrap should now build correctly.
Version 1.9.2
- Now comes with libffi included, for systems which lack an libffi
installation
- SRFI module checks now work correctly, even if you do an in-tree build
Version 1.9.1
- API change: destruct-value-cg is now named destroy-value-cg
- Bugfixes
+ A bug in the latent generic code has been fixed
+ The error message for WCP type errors has been fixed
Version 1.9.0
- Complete rewrite; too many changes to list, see the manual for the
new GOOPS-based API and the guile-gnome project for an extended
example.
- New features:
+ Output arguments
+ Default arguments
- G-Wrap should be target-language agnostic, like it was in its
early days.
Unfortunately, guile{,14}/buildlink3.mk directly includes it, and I don't
know which dependencies actually need libltdl, so it was a recursive bump.
Hopefully this recursive inclusion can be ripped out of
guile{,14}/buildlink3.mk at some point and bubble down to dependencies that
actually use libltdl, avoiding this headache in the future....
in the process. (More information on tech-pkg.)
Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.
Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
All library names listed by *.la files no longer need to be listed
in the PLIST, e.g., instead of:
lib/libfoo.a
lib/libfoo.la
lib/libfoo.so
lib/libfoo.so.0
lib/libfoo.so.0.1
one simply needs:
lib/libfoo.la
and bsd.pkg.mk will automatically ensure that the additional library
names are listed in the installed package +CONTENTS file.
Also make LIBTOOLIZE_PLIST default to "yes".
PR pkg/20270 with minor nitpicks by myself.
Some of the changes since 1.2.1:
* configure.in: fix minor problem where we used the guile-gtk
config program even when it wasn't found.
* acconfig.h: deleted since deprecated -- replaced by three arg
AC_DEFINEs in configure.in.
* doc/.cvsignore: add texinfo.tex.
* configure.in (AM_INIT_AUTOMAKE): bump version for release.
* bunch of subversion cleanups.
* change license to LGPL.
* g-wrap/gw-glib-spec.scm: coerce to (gpointer) in gw:glist-of and
gw:gslist-of code where needed.
* g-wrap/enumeration.scm (gw:wrap-enumeration): make val->int and
int->val functions static so they don't cause conflicts.
* configure.in (GW_GUILE_GTK_CFLAGS): delete any occurences of -I
/usr/include or similar. Newer gcc's don't like that at all.
* bin/g-wrap-config.in (c-compile-args): don't output -I if it's
/usr/include. The new gcc doesn't like -I /usr/include at all.
* test/Makefile.am (gw-test-enumeration.scm gw-test-enumeration.h
gw-test-enumeration.c gw-test-enumeration.html
gw-test-enumeration-autogen.h): use LD_LIBRARY_PATH.
(gw-test-parent.scm gw-test-parent.h gw-test-parent.c
gw-test-parent.html gw-test-parent-autogen.h): use LD_LIBRARY_PATH.
* doc/g-wrap.texi: minor re-editing -- still needs much more.
* configure.in (GW_GUILE_GTK_CFLAGS): add and AC_SUBST.
(GW_GUILE_GTK_LIBFLAGS): add and AC_SUBST.
* g-wrap/simple-type.scm: new file -- support for simple types.
* g-wrap/runtime.scm: new file -- scm support for runtime wrapset
database.
* g-wrap/gw-wct-spec.scm: new file -- wrapped C pointer types.
* g-wrap/gw-standard-spec.scm: new file -- standard wrapped types.
* g-wrap/gw-gtk-spec.scm: new file -- wrappers for gtk.
* g-wrap/gw-glib-spec.scm: new file -- wrappers for glib.
* g-wrap/gtkobj.scm: support for wrapping new C ptr types as
gtkobjects.
* g-wrap/Makefile.am: major changes -- support gw-glib, gw-wct,
gw-gtk, etc.
* g-wrap/g-wrap-wct.h: support header for gw-wct. Part of
libgwrap-wct.
* g-wrap/g-wrap-wct.c: support code for gw-wct. Part of
libgwrap-wct.
* g-wrap/g-wrap-glib.h: support header for gw-glib. Part of
libgwrap-glib.
* g-wrap/g-wrap-glib.c: support code for gw-glib. Part of
libgwrap-glib.
* g-wrap/output-file.scm (flatten-display): make public.
* g-wrap/g-wrap-compatibility.h: start guile version compatibility
library.
* g-wrap/enumeration.scm: break out enumeration support.
* g-wrap/dummy-main.c: new file - for link testing.
* bin/g-wrap-config.in (c-link-args): add support for glib, wct,
etc.
* g-wrap.scm: major overhaul -- modules -> wrapsets, ccodegens ->
init/decl/lists, etc.
* configure.in: remove rscheme (and other dead bits). Add support
for glib and gnome-guile. Handle libruntime reorg/removal.
* acconfig.h: accomodate reorg/removal of libruntime.
* g-wrapped/gw-runtime-spec.scm: switch to use of SCM_FALSEP and
SCM_NFALSEP rather than direct SCM_BOOL_*
* libruntime-guile/g-wrap-runtime-guile.c: switch to use of
SCM_FALSEP and SCM_NFALSEP rather than direct SCM_BOOL_*
comparisons.
* g-wrap.scm: switch to use of SCM_FALSEP and SCM_NFALSEP rather
than direct SCM_BOOL_* comparisons.
instead of the one in the work directory. Also ensure that we install
guile library files into ${GUILE14_PREFIX}/share/guile instead of into
the same place under ${LOCALBASE}, since we are using guile14. Bump
PKGREVISION of devel/g-wrap to 1.