Commit graph

26 commits

Author SHA1 Message Date
rillig
c0d1d3a386 lang/guile: fix alignment of variables 2019-07-14 21:46:22 +00:00
jlam
af8b30a2d9 lang/guile20: Mirror changes to lang/guile22/Makefile.
These changes aren't necessary, but on the day when guile-2.0.x is
no longer the primary, then the switch to using a non-default
installation prefix should be seamless.
2017-08-19 00:28:10 +00:00
ryoon
2d76bdc2fd Fix packaging under FreeBSD/amd64 10.2 and 11.0
At least under 10.2, 10.3-RC3 and 11.0, GUILE_LIBNAME is so.22.8.1 like
other platforms.
2017-05-17 12:06:20 +00:00
wiz
9ed03f5812 Update COMMENT. 2017-03-16 10:07:27 +00:00
wiz
bb60f1f9fe Update DESCR now that guile-2.2 is out. 2017-03-16 10:02:56 +00:00
wiz
6bff54fe2b Remove incorrect patch.
Upstream (Bruno Haible) write:
The comment says that this include of <pthread.h> is there to make sure that
<signal.h> declares pthread_sigmask.

But on DragonFly (I checked versions 3.8, 4.6, and 4.8.0-RC), pthread_sigmask
is already declared in <signal.h>, not in <pthread.h>.
2017-03-15 16:33:07 +00:00
wiz
217eb9a556 Fix pkglint warning. 2017-03-15 13:56:22 +00:00
wiz
382bc851f3 Remove patch for the combination of DragonFly + ia64, which does not exist.
Suggested by upstream (Andy Wingo).
2017-03-15 13:55:53 +00:00
jperkin
a755e996e3 Pull in upstream fix for mkostemp issue, should fix SunOS and PR#52035. 2017-03-08 14:38:34 +00:00
gdt
89c40fbfc6 Fix bug in new patch
Thanks to Matt Wette for code review on guile-devel@gnu.org.
2017-02-21 15:55:28 +00:00
gdt
cd1a473af5 Fix error in patch in previous 2017-02-21 02:32:00 +00:00
gdt
8a7b2de7ba Update to 2.0.14
Packaging changes: add patch to work around calling mkostemp with
invalid flags.

Upstream changes:

  Bug fixes

  Fix for CVE-2016-8606.  REPL server now protects against HTTP
  inter-protocol attacks

  Fix for CVE-2016-8605.  'mkdir' procedure no longer calls umask(2)
  (<http://bugs.gnu.org/24659>)

  New interface mkstemp! which takes optional "mode" argument

  New 'scm_to_uintptr_t' and 'scm_from_uintptr_t' C functions
2017-02-20 20:01:45 +00:00
maya
f6cf73d299 guile20: fix PLIST for FreeBSD, which for some reason uses a different
soname.

From David Shao in PR pkg/51694
2016-12-07 19:05:47 +00:00
marino
ada030a90d lang/guile20: Support DragonFly
In addition to fixing boehm-gc, guile20 requires a couple of patches
from DPorts to build on DragonFly.
2016-12-03 03:15:33 +00:00
adam
c4036cc76c Fix building on Darwin. 2016-10-19 14:55:27 +00:00
jperkin
c21bbb686e Handle PLIST difference on Darwin. 2016-09-28 09:04:41 +00:00
wiz
c8103ab20f Improve HOMEPAGE. 2016-09-19 11:21:11 +00:00
wiz
ab6b6ed6ed Do not package charset.alias. Bump PKGREVISION. 2016-09-16 06:26:13 +00:00
wiz
e4025746ee After guile's and guile20's installation prefixes have changed, it's time
to bump their dependencies (except those that were bumped in the last 24
hours already).
2016-09-15 14:32:39 +00:00
wiz
61a3cc805a Comment out parts of bl3.mk that are not needed now that guile20
is installed into ${PREFIX}.
2016-09-15 13:57:00 +00:00
gdt
3caada18ad Change guile20 to install directly into /usr/pkg
Previously, this installed into /usr/pkg/guile/2.0, to allow guile
(1.8) to have the main prefix.  Now, this is reversed.
2016-09-14 23:59:04 +00:00
jperkin
252d1a601f Use PKGMANDIR. 2016-07-22 12:19:15 +00:00
wiz
dad142643d Updated guile20 to 2.0.12.
Changes in 2.0.12 (since 2.0.11):

* Notable changes

** FFI: Add support for functions that set 'errno'

When accessing POSIX functions from a system's libc via Guile's dynamic
FFI, you commonly want to access the 'errno' variable to be able to
produce useful diagnostic messages.

This is now possible using 'pointer->procedure' or
'scm_pointer_to_procedure_with_errno'.  See "Dynamic FFI" in the manual.

** The #!r6rs directive now influences read syntax

The #!r6rs directive now changes the per-port reader options to make
Guile's reader conform more closely to the R6RS syntax.  In particular:

  - It makes the reader case sensitive.
  - It disables the recognition of keyword syntax in conflict with the
    R6RS (and R5RS).
  - It enables the `square-brackets', `hungry-eol-escapes' and
    `r6rs-hex-escapes' reader options.

** 'read' now accepts "\(" as equivalent to "("

This is indented for use at the beginning of lines in multi-line strings
to avoid confusing Emacs' lisp modes.  Previously "\(" was an error.

** SRFI-14 character data set upgraded to Unicode 8.0.0

** SRFI-19 table of leap seconds updated

** 'string-hash', 'read-string', and 'write' have been optimized

** GOOPS bug fix for inherited accessor methods

In the port of GOOPS to Guile 2.0, we introduced a bug related to
accessor methods.  The bug resulted in GOOPS assuming that a slot S in
an object whose class is C would always be present in instances of all
subclasses C, and allocated to the same struct index.  This is not the
case for multiple inheritance.  This behavior has been fixed to be as it
was in 1.8.

One aspect of this change may cause confusion among users.  Previously
if you defined a class C:

  (use-modules (oop goops))
  (define-class C ()
    (a #:getter get-a))

And now you define a subclass, intending to provide an #:init-value for
the slot A:

  (define-class D ()
    (a #:init-value 42))

Really what you have done is define in D a new slot with the same name,
overriding the existing slot.  The problem comes in that before fixing
this bug (but not in 1.8), the getter 'get-a' would succeed for
instances of D, even though 'get-a' should only work for the slot 'a'
that is defined on class C, not any other slot that happens to have the
same name and be in a class with C as a superclass.

It would be possible to "merge" the slot definitions on C and D, but
that part of the meta-object protocol (`compute-slots' et al) is not
fully implemented.

Somewhat relatedly, GOOPS also had a fix around #:init-value on
class-allocated slots.  GOOPS was re-initializing the value of slots
with #:class or #:each-subclass allocation every time instances of that
class was allocated.  This has been fixed.

* New interfaces

** New SRFI-28 string formatting implementation

See "SRFI-28" in the manual.

** New (ice-9 unicode) module

See "Characters" in the manual.

** Web server

The (web server) module now exports 'make-server-impl', 'server-impl?',
and related procedures.  Likewise, (web server http) exports 'http'.

** New procedures: 'string-utf8-length' and 'scm_c_string_utf8_length'

See "Bytevectors as Strings" in the manual, for more.

** New 'EXIT_SUCCESS' and 'EXIT_FAILURE' Scheme variables

See "Processes" in the manual.

** New C functions to disable automatic SMOB finalization

The new 'scm_set_automatic_finalization_enabled' C function allows you
to choose whether automatic object finalization should be enabled (as
was the case until now, and still is by default.)  This is meant for
applications that are not thread-safe nor async-safe; such applications
can disable automatic finalization and call the new 'scm_run_finalizers'
function when appropriate.

See the "Garbage Collecting Smobs" and "Smobs" sections in the manual.

** Cross-compilation to ARM

More ARM cross-compilation targets are supported: "arm.*eb",
"^aarch64.*be", and "aarch64".

* New deprecation

** The undocumented and unused C function 'scm_string_hash' is now deprecated

* Bugs fixed

** Compiler
*** 'call-with-prompt' does not truncate multiple-value returns
    (<http://bugs.gnu.org/14347>)
*** Use permissions of source file for compiled file
    (<http://bugs.gnu.org/18477>)
*** Fix bug when inlining some functions with optional arguments
    (<http://bugs.gnu.org/17634>)
*** Avoid quadratic expansion time in 'and' and 'or' macros
    (<http://bugs.gnu.org/17147>)
*** Fix expander bug introduced when adding support for tail patterns
    (<http://lists.gnu.org/archive/html/guile-user/2015-09/msg00017.html>)
*** Handle ~p in 'format' warnings (<http://bugs.gnu.org/18299>)
*** Fix bug that exposed `list' invocations to CSE
    (<http://bugs.gnu.org/21899>)
*** Reduce eq? and eqv? over constants using equal?
    (<http://bugs.gnu.org/21855>)
*** Skip invalid .go files found in GUILE_LOAD_COMPILED_PATH

** Threads
*** Fix data races leading to corruption (<http://bugs.gnu.org/22152>)

** Memory management
*** Fix race between SMOB marking and finalization
    (<http://bugs.gnu.org/19883>)

** Ports
*** Setting GUILE_INSTALL_LOCALE=1 sets port default charset from locale
*** Fix port position handling on binary input ports
    (<http://bugs.gnu.org/20302>)
*** Bytevector and custom binary ports to use ISO-8859-1
    (<http://bugs.gnu.org/20200>)
*** Fix buffer overrun with unbuffered custom binary input ports
    (<http://bugs.gnu.org/19621>)
*** Fix memory corruption that arose when using 'get-bytevector-n'
    (<http://bugs.gnu.org/17466>)

** System
*** {get,set}sockopt now expect type 'int' for SO_SNDBUF/SO_RCVBUF
*** 'system*' now available on MS-Windows
*** 'open-pipe' now available on MS-Windows
*** Better support for file names containing backslashes on Windows

** Web
*** 'split-and-decode-uri-path' no longer decodes "+" to space
*** HTTP: Support date strings with a leading space for hours
    (<http://bugs.gnu.org/23421>)
*** HTTP: Accept empty reason phrases (<http://bugs.gnu.org/22273>)
*** HTTP: 'Location' header can now contain URI references, not just
    absolute URIs
*** HTTP: Improve chunked-mode support (<http://bugs.gnu.org/19939>)
*** HTTP: 'open-socket-for-uri' now sets better OS buffering parameters
    (<http://bugs.gnu.org/15368>)

** Miscellaneous
*** Fix 'atan' procedure when applied to complex numbers
*** Fix Texinfo to HTML conversion for @itemize and @acronym
    (<http://bugs.gnu.org/21772>)
*** 'bytevector-fill!' accepts fill arguments greater than 127
    (<http://bugs.gnu.org/19027>)
*** 'bytevector-copy' correctly copies SRFI-4 homogeneous vectors
   (<http://bugs.gnu.org/18866>)
*** 'strerror' no longer hangs when passed a non-integer argument
    (<http://bugs.gnu.org/18065>)
*** 'scm_boot_guile' now gracefully handles argc == 0
    (<http://bugs.gnu.org/18680>)
*** Fix 'SCM_SMOB_OBJECT_LOC' definition (<http://bugs.gnu.org/18495>)
*** Fix bug where 'bit-count*' was not using its second argument
*** SRFI-1 'length+' raises an error for non-lists and dotted lists
    (<http://bugs.gnu.org/17296>)
*** Add documentation for SXPath (<http://bugs.gnu.org/19478>)
2016-07-16 09:17:53 +00:00
richard
2caf42ba7e Ensure that SHELL (which may be defined in user environment) is comptabible
with CONFIG_SHELL with respect to possible builtins used such as 'echo -n'.

Fixes install on SunOS using pdksh but with bash as the interactive user shell.
2016-05-28 15:25:56 +00:00
agc
54622f28e2 Add SHA512 digests for distfiles for lang category
Problems found with existing digests:
	Package nhc98 distfile nhc98src-1.22.tar.gz
	a8adc8f22371998ee0657bc0e01058a57d876abc [recorded]
	81975fcb5f1dda5efeaabc30ce8c6dceae55e591 [calculated]

Problems found locating distfiles:
	Package gcc-aux: missing distfile ada-bootstrap.i386.dragonfly.36A.tar.bz2
	Package gcc-aux: missing distfile ada-bootstrap.i386.freebsd.84.tar.bz2
	Package gcc-aux: missing distfile ada-bootstrap.x86_64.dragonfly.36A.tar.bz2
	Package gcc-aux: missing distfile ada-bootstrap.x86_64.freebsd.84.tar.bz2
	Package gcc-aux: missing distfile ada-bootstrap.x86_64.solaris.511.tar.bz2
	Package gcc5-aux: missing distfile ada-bootstrap.i386.dragonfly.36A.tar.bz2
	Package gcc5-aux: missing distfile ada-bootstrap.i386.freebsd.84.tar.bz2
	Package gcc5-aux: missing distfile ada-bootstrap.x86_64.dragonfly.36A.tar.bz2
	Package gcc5-aux: missing distfile ada-bootstrap.x86_64.freebsd.84.tar.bz2
	Package gcc5-aux: missing distfile ada-bootstrap.x86_64.solaris.511.tar.bz2
	Package ghc7: missing distfile ghc-7.6.3-boot-i386-unknown-freebsd.tar.xz
	Package icc11: missing distfile l_cproc_p_11.1.080.tgz
	Package jini: missing distfile jini-1_2_1_001-src.zip
	Package oo2c: missing distfile oo2c_32-2.0.11.tar.bz2
	Package openjdk7: missing distfile openjdk7/bootstrap-jdk-1.7.76-freebsd-10-amd64-20150301.tar.xz
	Package openjdk7: missing distfile openjdk7/bootstrap-jdk-1.7.76-netbsd-5-i386-20150301.tar.xz
	Package openjdk7: missing distfile openjdk7/bootstrap-jdk-1.7.76-netbsd-6-i386-20150301.tar.xz
	Package openjdk7: missing distfile openjdk7/bootstrap-jdk-1.7.76-netbsd-7-earmv6hf-20150306.tar.xz
	Package openjdk7: missing distfile openjdk7/bootstrap-jdk-1.7.76-netbsd-7-sparc64-20150301.tar.xz
	Package openjdk7: missing distfile openjdk7/bootstrap-jdk7u60-bin-dragonfly-3.8-amd64-20140719.tar.bz2
	Package openjdk8: missing distfile openjdk7/bootstrap-jdk-1.7.76-freebsd-10-amd64-20150301.tar.xz
	Package openjdk8: missing distfile openjdk7/bootstrap-jdk-1.7.76-netbsd-5-i386-20150301.tar.xz
	Package openjdk8: missing distfile openjdk7/bootstrap-jdk-1.7.76-netbsd-6-i386-20150301.tar.xz
	Package openjdk8: missing distfile openjdk7/bootstrap-jdk-1.7.76-netbsd-7-earmv6hf-20150306.tar.xz
	Package openjdk8: missing distfile openjdk7/bootstrap-jdk-1.7.76-netbsd-7-sparc64-20150301.tar.xz
	Package openjdk8: missing distfile openjdk7/bootstrap-jdk7u60-bin-dragonfly-3.8-amd64-20140719.tar.bz2
	Package oracle-jdk8: missing distfile jdk-8u60-linux-i586.tar.gz
	Package oracle-jdk8: missing distfile jdk-8u60-solaris-x64.tar.gz
	Package oracle-jre8: missing distfile jre-8u60-linux-i586.tar.gz
	Package oracle-jre8: missing distfile jre-8u60-solaris-x64.tar.gz
	Package sun-jdk6: missing distfile jdk-6u45-linux-i586.bin
	Package sun-jdk6: missing distfile jdk-6u45-solaris-i586.sh
	Package sun-jdk7: missing distfile jdk-7u72-linux-i586.tar.gz
	Package sun-jdk7: missing distfile jdk-7u72-solaris-i586.tar.gz
	Package sun-jre6: missing distfile jce_policy-6.zip
	Package sun-jre6: missing distfile jre-6u45-linux-x64.bin
	Package sun-jre6: missing distfile jre-6u45-solaris-x64.sh
	Package sun-jre7: missing distfile jre-7u72-linux-i586.tar.gz
	Package sun-jre7: missing distfile jre-7u72-solaris-i586.tar.gz

Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden).  All existing
SHA1 digests retained for now as an audit trail.
2015-11-03 22:50:31 +00:00
wiz
1d78de338b Import guile20-2.0.11 as lang/guile20.
GUILE, GNU's Ubiquitous Intelligent Language for Extension, is a library
that implements the Scheme language plus various convenient facilities.
It's designed so that you can link it into an application or utility to
make it extensible. Our plan is to link this library into all GNU programs
that call for extensibility.

This is guile 2.0, the current stable version.
2014-11-01 13:24:37 +00:00