summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwiz <wiz@pkgsrc.org>2013-01-23 21:46:33 +0000
committerwiz <wiz@pkgsrc.org>2013-01-23 21:46:33 +0000
commit6e0325918ca282dce23705d3550e923fc0b2bea8 (patch)
tree28bc44929540d2c0cc49e5158bd0b0898d21e350
parent80ca4eaf030cb51c40e9393f4c5162e943919f49 (diff)
downloadpkgsrc-6e0325918ca282dce23705d3550e923fc0b2bea8.tar.gz
Update to 3.2.1, provided by outpaddling and asau in wip.
libctl 3.2.1 8 August 2012 Fix incorrect gh_symbol2newstr macro replacement. libctl 3.2 20 July 2012 Now works with Guile version 2.x (older versions are still supported). Add libctl_quiet variable to main.c so that libctl-using programs can suppress all output if desired (e.g. to avoid duplicate outputs on parallel machines). Added wedge object type for circular/cylindrical wedges, as a subclass of cylinder: (make wedge (center ...) (axis ...) (radius ...) ...) with two new properties: (wedge-angle ...) for the angle in radians, and (wedge-start v) for a vector v such that the wedge angles start at zero in the (v, axis) plane. [Caveat: subpixel averaging is currently inaccurate for the flat wedge edges.] list-type constructors now accept either (name ...elements...) or (name (list ...elements...)). Add vector3->exact function for to-integer rounding. Otherwise, ensure that interpolation results are floating-point to prevent type-conversion errors. Added ctl-set-prompt! to set interactive prompt in both old and new Guile versions. Rename string to char* in ctl-io.h for C++ compatibility. Bug fix in normal-to-object near corners of blocks. libctl 3.1 5 June 2008 Support specifying the location of the guile and guile-config programs with GUILE and GUILE_CONFIG environment variables in the configure script. Support for calling NLopt optimization library (also requires the program using libctl to be changed to link nlopt). New ellipsoid_overlap_with_object function, analogous to box_overlap_with_object function. Bug fix in include function for recent versions of Guile, to properly keep track of the current include directory. Bug fix in numerical-derivative routine, which didn't converge when the error was exactly zero. libctl 3.0.3 27 February 2008 Added "begin-timed" function, which is similar to "begin-time" except that it returns the value of the last statement (like "begin") rather than the time. Bug fix: allow classes to have boolean properties. Bug fixes for compilation under C++, thanks to David Foster: include missing string.h header and fixed gh_new_procedure prototype. libctl 3.0.2 22 August 2006 Fix minor Guile incompatibility on some systems. libctl 3.0.1 5/1/2006 Change shared-library version to 3:0:0 instead of 0:0:0. This avoids conflicts with shared library version numbers that has been assigned to earlier versions of libctl for Debian; thanks to Josselin Mouette for the suggestion. libctl 3.0 4/1/2006 Switch to use automake and libtool. Can now install shared libraries with --enable-shared. License is now GNU GPL (v2 or later) rather than the GNU LGPL, due to use of third-party GPL code for multi-dimensional integration (below). gen-ctl-io now supports separate generation of code and header files via --code and --header arguments. (Better for parallel make.) Also support a -o option to give a different output file name. gen-ctl-io can now export C++ code by using the --cxx flag. gen-ctl-io can now export SWIG .i files for automatic type conversion in SWIG wrapper generation, using the --swig flag. Backwards incompatible change: users must include their own ctl-io.h *before* ctlgeom.h, or you get ctlgeom-types.h instead (this is for use with the "stand-alone" libctlgeom.a library below. New multi-dimensional integration routines using adaptive cubature. (Much more efficient than nested 1d integrations.) Adapted in part from the HIntlib Library by Rudolf Schuerer and from the GNU Scientific Library (GSL) by Brian Gough. New interpolate-uniform function that tries to maintain a uniform distance between points (i.e. variable number of interpolated points between different list elements, as needed). Now install a "stand-alone" libctlgeom.a library to make it easier to call geometry routines from non-Scheme code. New routines to compute overlap fraction of box with object, compute analytical normal vectors, etcetera. (For upcoming versions of Meep and MPB.) Also new routines to get the object of a point, not just the material. Also new routines to operate on a supplied geometry list parameter instead of using the global; unlike the old material_of_point_in_tree functions, these functions do not shift the argument to the unit cell, but you can use the new function shift_to_unit_cell to get this behavior. gen-ctl-io now generates object equal/copy functions. In unit-vector3, only return 0 when norm==0, not merely if it is small. Added one-sided numerical derivative routine. Define "verbose?" variable corresponding to main.c variable. (print) calls (flush-all-ports) to keep C and Scheme I/O in sync. Fix in find-root-deriv to prevent infinite loop in some cases where the root does not exist; thanks to XiuLun Yang for the bug report. Bug fix in make_hermitian_cmatrix3x3; thanks to Mischa Megens.
-rw-r--r--devel/libctl/DESCR21
-rw-r--r--devel/libctl/Makefile21
-rw-r--r--devel/libctl/PLIST11
-rw-r--r--devel/libctl/distinfo8
4 files changed, 26 insertions, 35 deletions
diff --git a/devel/libctl/DESCR b/devel/libctl/DESCR
index b3c28c23aba..72bf4d05353 100644
--- a/devel/libctl/DESCR
+++ b/devel/libctl/DESCR
@@ -1,19 +1,2 @@
-Scientific software for performing large computations is typically
-managed using textual control files that specify the parameters of the
-computation. Historically, these control files have typically
-consisted of long, inflexible collections of numbers whose meaning and
-format is hard-coded into the program. With libctl, we make it easy
-for programmers to support a greatly superior control file structure,
-and with less effort than was required for traditional input formats.
-
-All of these goals are achieved by libctl with the help of Guile, the
-GNU scripting and extensibility language. Guile does all of the hard
-work for us, and allows us to embed a complete interpreter in a
-program with minimal effort.
-
-Despite its power, libctl is designed to be easy to use. A basic user
-only sees a convenient file format with a programming language to
-back it up if her needs become more complex. For the programmer, all
-headaches associated with reading input files are lifted--once an
-abstract specification is supplied, all interaction with the user is
-handled automatically.
+Libctl is a free Guile-based library implementing flexible control files for
+scientific simulations.
diff --git a/devel/libctl/Makefile b/devel/libctl/Makefile
index 5ba624b577d..8b69ef99eb0 100644
--- a/devel/libctl/Makefile
+++ b/devel/libctl/Makefile
@@ -1,26 +1,27 @@
-# $NetBSD: Makefile,v 1.29 2012/10/31 11:17:11 asau Exp $
+# $NetBSD: Makefile,v 1.30 2013/01/23 21:46:33 wiz Exp $
-DISTNAME= libctl-2.2
-PKGREVISION= 7
+DISTNAME= libctl-3.2.1
CATEGORIES= devel
MASTER_SITES= http://ab-initio.mit.edu/libctl/
-MAINTAINER= pkgsrc-users@NetBSD.org
+MAINTAINER= jwbacon@tds.net
HOMEPAGE= http://ab-initio.mit.edu/libctl/
COMMENT= Guile-based flexible control file library for scientific simulations
-
-MAKE_JOBS_SAFE= no
+LICENSE= gnu-gpl-v2
GNU_CONFIGURE= yes
+USE_LANGUAGES= c fortran77
+
+USE_LIBTOOL= yes
+
INSTALLATION_DIRS= share/doc/libctl
-INSTALL_MAKE_FLAGS+= prefix=${DESTDIR}${PREFIX} \
- mandir=${DESTDIR}${PREFIX}/${PKGMANDIR}
post-install:
${INSTALL_DATA} ${WRKSRC}/doc/* ${DESTDIR}${PREFIX}/share/doc/libctl/
- cd ${WRKSRC} && ${INSTALL_DATA} COPYING COPYRIGHT ChangeLog \
- NEWS README ${DESTDIR}${PREFIX}/share/doc/libctl/
+ cd ${WRKSRC} && ${INSTALL_DATA} \
+ AUTHORS ChangeLog COPYING COPYRIGHT INSTALL NEWS README TODO \
+ ${DESTDIR}${PREFIX}/share/doc/libctl/
.include "../../lang/guile/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/devel/libctl/PLIST b/devel/libctl/PLIST
index c3b53558b26..cbaf90234f7 100644
--- a/devel/libctl/PLIST
+++ b/devel/libctl/PLIST
@@ -1,14 +1,19 @@
-@comment $NetBSD: PLIST,v 1.2 2009/06/14 17:48:51 joerg Exp $
+@comment $NetBSD: PLIST,v 1.3 2013/01/23 21:46:33 wiz Exp $
bin/gen-ctl-io
include/ctl.h
+include/ctlgeom-types.h
include/ctlgeom.h
-lib/libctl.a
+lib/libctl.la
+lib/libctlgeom.la
man/man1/gen-ctl-io.1
+share/doc/libctl/AUTHORS
share/doc/libctl/COPYING
share/doc/libctl/COPYRIGHT
share/doc/libctl/ChangeLog
+share/doc/libctl/INSTALL
share/doc/libctl/NEWS
share/doc/libctl/README
+share/doc/libctl/TODO
share/doc/libctl/advanced-user.html
share/doc/libctl/basic-user.html
share/doc/libctl/developer.html
@@ -33,3 +38,5 @@ share/libctl/base/vector3.scm
share/libctl/utils/ctl-io.scm
share/libctl/utils/geom.c
share/libctl/utils/geom.scm
+share/libctl/utils/nlopt-constants.scm
+share/libctl/utils/nlopt.c
diff --git a/devel/libctl/distinfo b/devel/libctl/distinfo
index 4c72974b480..28cc41b731e 100644
--- a/devel/libctl/distinfo
+++ b/devel/libctl/distinfo
@@ -1,5 +1,5 @@
-$NetBSD: distinfo,v 1.5 2005/02/23 22:24:17 agc Exp $
+$NetBSD: distinfo,v 1.6 2013/01/23 21:46:33 wiz Exp $
-SHA1 (libctl-2.2.tar.gz) = 8d115f9094fd3ec9c29fb5777facd5eb3d38c47f
-RMD160 (libctl-2.2.tar.gz) = 2993277faef4d99d1a07a46591b0b984a7042663
-Size (libctl-2.2.tar.gz) = 185325 bytes
+SHA1 (libctl-3.2.1.tar.gz) = 16e17250457631c85b7f5ac3db59bb5259fb5399
+RMD160 (libctl-3.2.1.tar.gz) = 86c60f97531a523b29a63c0011fe44c1fa505550
+Size (libctl-3.2.1.tar.gz) = 485825 bytes