by moving the inclusion of buildlink3.mk files outside of the protected
region. This bug would be seen by users that have set PREFER_PKGSRC
or PREFER_NATIVE to non-default values.
BUILDLINK_PACKAGES should be ordered so that for any package in the
list, that package doesn't depend on any packages to the left of it
in the list. This ordering property is used to check for builtin
packages in the correct order. The problem was that including a
buildlink3.mk file for <pkg> correctly ensured that <pkg> was removed
from BUILDLINK_PACKAGES and appended to the end. However, since the
inclusion of any other buildlink3.mk files within that buildlink3.mk
was in a region that was protected against multiple inclusion, those
dependencies weren't also moved to the end of BUILDLINK_PACKAGES.
XXX: Package fails the same regression test 1.6.3 failed (scfi-19).
Changes since Guile 1.6.3 (i.e. changes for 1.6.4):
* Changes to the distribution
** Various architecture (and compiler optimization) related bugs fixed.
These changes should improve the situation on at least ia64, alpha,
and powerpc.
* Changes to the stand-alone interpreter
** Readline prompt problem fixed.
Previously, the readline prompt disappeared when running Guile in
non-echoing terminal mode (for example under GDB in Emacs). This has
been fixed.
** Printing bug fixed.
Previously, the state of writingp in the print state could be altered
by recursive calls to printing functions.
** Append mode in hooks.
Append mode in hooks (adding the hook last in the list) now works
correctly.
** GOOPS/GC bug fixed.
The class layout slot, which informs the GC about which slots to GC
protect, is now initialized correctly.
** GOOPS class redefinition bug fixed.
The class redefinition protocol now properly removes the old accessor
methods from their accessors.
** GOOPS method dispatch bug fixed.
Previously, the code updating the method cache in generic functions
got confused if handed method code created in a null environment
(environment = empty list). It now stands every environment
imaginable (think about it!).
** GOOPS init-thunks can now be primitive procedures
Previously, attempts to provide something else than a closure as value
for the #:init-thunk slot option would yield a segmentation fault.
Now, it's possible to supply a primitive procedure as init-thunk.
Non-allowed values result in an error.
** Garbage collection frequency improved for large malloc heaps
The decision when to run the GC is now done in a way that avoids GCs
with a small yield for heaps with a large amount of malloced storage.
The minimum expected yield for malloc storage is now relative to the
heap size, and not a fixed amount as it was previously.
* Changes to Scheme functions and syntax
** %fast-slot-ref no longer checks slot boundness
This makes the <active-class> metaclass in (oop goops active-slot)
working again.
** eqv? and equal? are now primitive generic functions
This means that it is possible to provide custom comparisons for new
classes by specializing `eqv?' and `equal?' to those classes.
* Changes to the C interface
** New snarf macros: SCM_PRIMITIVE_GENERIC, SCM_PRIMITIVE_GENERIC_1
These provide a way of adding primitive generics which is equivalent
to SCM_DEFINE and SCM_DEFINE1.
curses.buildlink2.mk. This was wrong because we _really_ do want to
express that we want _n_curses when we include the buildlink2.mk file.
We should have a better way to say that the NetBSD curses doesn't
quite work well enough. In fact, it's far better to depend on ncurses
by default, and exceptionally note when it's okay to use NetBSD curses
for specific packages. We will look into this again in the future.
** GOOPS longer creates layout entries for non-instance slots.
** syntax-case bugs have been fixed
a) Macro expansion is no longer disturbed if the value of
(current-module) changes. This was the cause of a number of
different bugs people have reported.
b) Syntax-case now expands Guile's own macros as a part of the
macro expansion process. Previously, Guile macro calls were
treated as applications.
c) Objects which are constant data and which Guile considers
self-evaluating are no longer quoted.
One good consequence of these fixes is that it's now possible to
use syntax-case macro expansion together with GOOPS code.
** scm_readline now checks that it's using an output (not input) port.
Changes since Guile 1.6.0:
* Changes to the distribution
** Guile now provide and uses an "effective" version number.
** Guile now uses it's own version of libltdl.
** The Emacs interface has been fixed.
** The SRFI C headers are now installed.
* Changes to Scheme functions and syntax
** New function: effective-version
* Changes to the C interface
** New function: scm_effective_version
libguile, which has a reference to __floatdidf, which is part of libgcc
and will only be resolved at program link time.
XXX libtool, of Solaris ld bug ?
* installation fix: (ice-9 and-let*) has been renamed to (ice-9 and-let-star)
* build fix: net_db.c `inet_aton' declaration now properly conditionalized
* bugfix: `expt' now handles negative exponents correctly
* installation fix: some programs are no longer installed
* guile-snarf usage now internalizes output-file creation/deletion
* installation fix: libltdl now "installable" instead of "convenience"
* library versioning now more disciplined
* "make check" now works
* provisional documentation available
* interface summarization available
Summary of changes:
- removal of USE_GTEXINFO
- addition of mk/texinfo.mk
- inclusion of this file in package Makefiles requiring it
- `install-info' substituted by `${INSTALL_INFO}' in PLISTs
- tuning of mk/bsd.pkg.mk:
removal of USE_GTEXINFO
INSTALL_INFO added to PLIST_SUBST
`${INSTALL_INFO}' replace `install-info' in target rules
print-PLIST target now generate `${INSTALL_INFO}' instead of `install-info'
- a couple of new patch files added for a handful of packages
- setting of the TEXINFO_OVERRIDE "switch" in packages Makefiles requiring it
- devel/cssc marked requiring texinfo 4.0
- a couple of packages Makefiles were tuned with respect of INFO_FILES and
makeinfo command usage
See -newly added by this commit- section 10.24 of Packages.txt for
further information.