diff --git a/calculus/monte-carlo-structs.lisp b/calculus/monte-carlo-structs.lisp
index 68c870acf0ee88bffe85360b35cce20b55df47b5..7f8cb220c6ea69313323b10a0e807e5162fc52a3 100644
--- a/calculus/monte-carlo-structs.lisp
+++ b/calculus/monte-carlo-structs.lisp
@@ -1,8 +1,8 @@
 ;; CFFI-Grovel definitions for unix systems.
 ;; Liam Healy 2009-06-06 09:32:30EDT monte-carlo-structs.lisp
-;; Time-stamp: <2009-12-27 09:42:10EST monte-carlo-structs.lisp>
+;; Time-stamp: <2010-05-23 11:36:42EDT monte-carlo-structs.lisp>
 ;;
-;; Copyright 2009 Liam M. Healy
+;; Copyright 2009, 2010 Liam M. Healy
 ;; Distributed under the terms of the GNU General Public License
 ;;
 ;; This program is free software: you can redistribute it and/or modify
@@ -26,7 +26,7 @@
 ;;; When installed through Mac Ports, GSL .h files will be found
 ;;; in /opt/local/include.
 #+darwin
-(cc-flags "-I/opt/local/include/")
+(cc-flags #.(gsl-config "--cflags"))
 
 (include "gsl/gsl_monte_plain.h")
 
diff --git a/data/array-structs.lisp b/data/array-structs.lisp
index 7011f01302e0b18fc538a56c91309251ef08d4cc..8d5799a97b7c3cb6f32fa780d84e8759b2da1c53 100644
--- a/data/array-structs.lisp
+++ b/data/array-structs.lisp
@@ -1,8 +1,8 @@
 ;; CFFI-Grovel definitions for unix systems.
 ;; Liam Healy 2009-06-06 09:36:29EDT array-structs.lisp
-;; Time-stamp: <2009-12-27 09:42:07EST array-structs.lisp>
+;; Time-stamp: <2010-05-23 11:36:42EDT array-structs.lisp>
 ;;
-;; Copyright 2009 Liam M. Healy
+;; Copyright 2009, 2010 Liam M. Healy
 ;; Distributed under the terms of the GNU General Public License
 ;;
 ;; This program is free software: you can redistribute it and/or modify
@@ -26,7 +26,7 @@
 ;;; When installed through Mac Ports, GSL .h files will be found
 ;;; in /opt/local/include.
 #+darwin
-(cc-flags "-I/opt/local/include/")
+(cc-flags #.(gsl-config "--cflags"))
 
 (include "gsl/gsl_block_double.h")
 
diff --git a/eigensystems/eigen-struct.lisp b/eigensystems/eigen-struct.lisp
index 09eae1667c60b86cb200f21f33dd4567e8eb7847..44ab2811cf01d7ebb68404cd47677f4fdc44436c 100644
--- a/eigensystems/eigen-struct.lisp
+++ b/eigensystems/eigen-struct.lisp
@@ -1,8 +1,8 @@
 ;; CFFI-Grovel definitions.
 ;; Liam Healy
-;; Time-stamp: <2009-12-27 09:45:36EST eigen-struct.lisp>
+;; Time-stamp: <2010-05-23 11:36:31EDT eigen-struct.lisp>
 ;;
-;; Copyright 2009 Liam M. Healy
+;; Copyright 2009, 2010 Liam M. Healy
 ;; Distributed under the terms of the GNU General Public License
 ;;
 ;; This program is free software: you can redistribute it and/or modify
@@ -26,7 +26,7 @@
 ;;; When installed through Mac Ports, GSL .h files will be found
 ;;; in /opt/local/include.
 #+darwin
-(cc-flags "-I/opt/local/include/")
+(cc-flags #.(gsl-config "--cflags"))
 
 (include "gsl/gsl_eigen.h")
 
diff --git a/init/callback-struct.lisp b/init/callback-struct.lisp
index 3778a7c572531ad52b4ca6a42387d8973f22ab90..942319e07ebf409e1f1d9da6caa2d68ffa5dab41 100644
--- a/init/callback-struct.lisp
+++ b/init/callback-struct.lisp
@@ -1,8 +1,8 @@
 ;; GSL structures for holding functions
 ;; Liam Healy 2009-04-04 22:15:56EDT callback-struct.lisp
-;; Time-stamp: <2009-12-27 09:50:33EST callback-struct.lisp>
+;; Time-stamp: <2010-05-23 11:36:41EDT callback-struct.lisp>
 ;;
-;; Copyright 2009 Liam M. Healy
+;; Copyright 2009, 2010 Liam M. Healy
 ;; Distributed under the terms of the GNU General Public License
 ;;
 ;; This program is free software: you can redistribute it and/or modify
@@ -26,7 +26,7 @@
 ;;; When installed through Mac Ports, GSL .h files will be found
 ;;; in /opt/local/include.
 #+darwin
-(cc-flags "-I/opt/local/include/")
+(cc-flags #.(gsl-config "--cflags"))
 
 (include "gsl/gsl_math.h")
 
diff --git a/init/init.lisp b/init/init.lisp
index 9df5144c0cc979751d370c26d8218788a0ba7ac0..ce88c8a61ef26fb59f8bef6856cf22a7a96b4e49 100644
--- a/init/init.lisp
+++ b/init/init.lisp
@@ -1,8 +1,8 @@
 ;; Load GSL
 ;; Liam Healy Sat Mar  4 2006 - 18:53
-;; Time-stamp: <2009-12-27 09:50:30EST init.lisp>
+;; Time-stamp: <2010-05-23 11:37:01EDT init.lisp>
 ;;
-;; Copyright 2006, 2007, 2008, 2009 Liam M. Healy
+;; Copyright 2006, 2007, 2008, 2009, 2010 Liam M. Healy
 ;; Distributed under the terms of the GNU General Public License
 ;;
 ;; This program is free software: you can redistribute it and/or modify
@@ -29,13 +29,19 @@
    #:cl-array #:dimensions #:total-size #:element-type #:dim0 #:dim1
    #:copy #:clone))
 
+(eval-when (:compile-toplevel :load-toplevel :execute)
+  (defun gsl-config (arg)
+    "A wrapper for tool `gsl-config'."
+    (with-input-from-string
+        (s (with-output-to-string (asdf::*verbose-out*)
+             (asdf:run-shell-command "gsl-config ~s" arg)))
+      (read-line s)
+      (read-line s))))
+
 (cffi:define-foreign-library libgslcblas
-    (:darwin
-     (:or "/opt/local/lib/libgslcblas.dylib" "/sw/lib/libgslcblas.dylib"
-	  "/usr/local/lib/libgslcblas.dylib"))
-  (:cygwin (:or "/bin/cyggslcblas-0.dll"))
-  (:unix (:or "/usr/lib/libgslcblas.so.0" "/usr/lib/libgslcblas.so"
-	      "/usr/lib64/libgslcblas.so.0" "/usr/lib64/libgslcblas.so"))
+  (:unix (:or "libgslcblas.so.0" "libgslcblas.so"))
+  (:darwin "libgslcblas.dylib")
+  (:cygwin "cyggslcblas-0.dll")
   (t (:default "libgslcblas")))
    
 (cffi:use-foreign-library libgslcblas)
@@ -47,13 +53,9 @@
 (cffi:load-foreign-library "/lib/lapack/cygblas.dll")
 
 (cffi:define-foreign-library libgsl
-    (:darwin
-     (:or "/opt/local/lib/libgsl.dylib" "/sw/lib/libgsl.dylib"
-	  "/usr/local/lib/libgsl.dylib"))
-  (:cygwin (:or "/bin/cyggsl-0.dll"))
-  (:unix (:or "/usr/lib/libgsl.so.0" "/usr/lib/libgsl.so"
-	      "/usr/lib64/libgsl.so.0" "/usr/lib64/libgsl.so"))
+  (:unix "libgsl.so.0" "libgsl.so")
+  (:darwin "libgsl.dylib")
+  (:cygwin "cyggsl-0.dll")
   (t (:default "libgsl")))
    
 (cffi:use-foreign-library libgsl)
-
diff --git a/init/libgsl-unix.lisp b/init/libgsl-unix.lisp
index 515ac6e9c9829c5859f4ff513164905bfa94c8b9..ff4e1837671b342c929ad716fdbc7a69f3e4b4bf 100644
--- a/init/libgsl-unix.lisp
+++ b/init/libgsl-unix.lisp
@@ -1,6 +1,6 @@
 ;; CFFI-Grovel definitions for unix systems.
 ;; Liam Healy 2009-05-25 13:10:50EDT libgsl-unix.lisp
-;; Time-stamp: <2009-12-27 09:50:29EST libgsl-unix.lisp>
+;; Time-stamp: <2010-05-23 11:24:56EDT libgsl-unix.lisp>
 ;;
 ;; Copyright 2009 Liam M. Healy
 ;; Distributed under the terms of the GNU General Public License
@@ -26,7 +26,7 @@
 ;;; When installed through Mac Ports, GSL .h files will be found
 ;;; in /opt/local/include.
 #+darwin
-(cc-flags "-I/opt/local/include/")
+(cc-flags #.(gsl-config "--cflags"))
 
 (include "gsl/gsl_integration.h")
 
diff --git a/ordinary-differential-equations/ode-struct.lisp b/ordinary-differential-equations/ode-struct.lisp
index 0847b5f4a47eb2082224c306e29a8c9fd9656da0..44621df33d24c2b5b499e32e1391be7be16a9869 100644
--- a/ordinary-differential-equations/ode-struct.lisp
+++ b/ordinary-differential-equations/ode-struct.lisp
@@ -1,8 +1,8 @@
 ;; Define the structure for ODEs
 ;; Liam Healy 2009-06-06 16:42:29EDT ode-struct.lisp
-;; Time-stamp: <2009-12-27 09:56:55EST ode-struct.lisp>
+;; Time-stamp: <2010-05-23 11:37:27EDT ode-struct.lisp>
 ;;
-;; Copyright 2006, 2007, 2008, 2009 Liam M. Healy
+;; Copyright 2006, 2007, 2008, 2009, 2010 Liam M. Healy
 ;; Distributed under the terms of the GNU General Public License
 ;;
 ;; This program is free software: you can redistribute it and/or modify
@@ -26,7 +26,7 @@
 ;;; When installed through Mac Ports, GSL .h files will be found
 ;;; in /opt/local/include.
 #+darwin
-(cc-flags "-I/opt/local/include/")
+(cc-flags #.(gsl-config "--cflags"))
 
 (include "gsl/gsl_odeiv.h")
 
diff --git a/physical-constants/cgsm.lisp b/physical-constants/cgsm.lisp
index 8351b8550cd7b95f79cf9067c836da9d85d7f948..4660708a032e73b70d5a141a91eea2afc40afe6c 100644
--- a/physical-constants/cgsm.lisp
+++ b/physical-constants/cgsm.lisp
@@ -1,8 +1,8 @@
 ;; Physical constants in the CGSM system
 ;; Liam Healy 2009-05-25 17:01:32EDT cgsm.lisp
-;; Time-stamp: <2009-12-27 10:00:05EST cgsm.lisp>
+;; Time-stamp: <2010-05-23 11:35:35EDT cgsm.lisp>
 ;;
-;; Copyright 2009 Liam M. Healy
+;; Copyright 2009, 2010 Liam M. Healy
 ;; Distributed under the terms of the GNU General Public License
 ;;
 ;; This program is free software: you can redistribute it and/or modify
@@ -26,7 +26,7 @@
 ;;; When installed through Mac Ports, GSL .h files will be found
 ;;; in /opt/local/include.
 #+darwin
-(cc-flags "-I/opt/local/include/")
+(cc-flags #.(gsl-config "--cflags"))
 
 (include "gsl/gsl_const_cgsm.h")
 
diff --git a/physical-constants/mksa.lisp b/physical-constants/mksa.lisp
index 07eb3720919913dcf6a258fcd6b62022807f8c57..809c3a04982e326491f89124762c3278acd5efce 100644
--- a/physical-constants/mksa.lisp
+++ b/physical-constants/mksa.lisp
@@ -1,8 +1,8 @@
 ;; Physical constants in the MKSA system
 ;; Liam Healy 2009-05-25 17:01:32EDT mksa.lisp
-;; Time-stamp: <2009-12-27 10:00:04EST mksa.lisp>
+;; Time-stamp: <2010-05-23 11:35:28EDT mksa.lisp>
 ;;
-;; Copyright 2009 Liam M. Healy
+;; Copyright 2009, 2010 Liam M. Healy
 ;; Distributed under the terms of the GNU General Public License
 ;;
 ;; This program is free software: you can redistribute it and/or modify
@@ -26,7 +26,7 @@
 ;;; When installed through Mac Ports, GSL .h files will be found
 ;;; in /opt/local/include.
 #+darwin
-(cc-flags "-I/opt/local/include/")
+(cc-flags #.(gsl-config "--cflags"))
 
 (include "gsl/gsl_const_mksa.h")
 
diff --git a/series-struct.lisp b/series-struct.lisp
index 68566b63feaa5f7a1957ee3440a77bde8cc93437..38fd3988539f4644cedfc90bc79cc0e6e0bc5a40 100644
--- a/series-struct.lisp
+++ b/series-struct.lisp
@@ -1,8 +1,8 @@
 ;; Define the structure for series
 ;; Liam Healy 2009-06-06 11:08:11EDT series-struct.lisp
-;; Time-stamp: <2009-12-27 10:05:34EST series-struct.lisp>
+;; Time-stamp: <2010-05-23 11:37:50EDT series-struct.lisp>
 ;;
-;; Copyright 2009 Liam M. Healy
+;; Copyright 2009, 2010 Liam M. Healy
 ;; Distributed under the terms of the GNU General Public License
 ;;
 ;; This program is free software: you can redistribute it and/or modify
@@ -26,7 +26,7 @@
 ;;; When installed through Mac Ports, GSL .h files will be found
 ;;; in /opt/local/include.
 #+darwin
-(cc-flags "-I/opt/local/include/")
+(cc-flags #.(gsl-config "--cflags"))
 
 (include "gsl/gsl_sum.h")
 
diff --git a/solve-minimize-fit/solver-struct.lisp b/solve-minimize-fit/solver-struct.lisp
index 4db9c920d0819511249ac32c8038759d00814818..a7cb5aea26c9a4c39236c444e603225e47d7def5 100644
--- a/solve-minimize-fit/solver-struct.lisp
+++ b/solve-minimize-fit/solver-struct.lisp
@@ -1,8 +1,8 @@
 ;; Define the structures for solvers
 ;; Liam Healy 2009-06-06 16:46:38EDT solver-struct.lisp
-;; Time-stamp: <2009-12-27 10:05:31EST solver-struct.lisp>
+;; Time-stamp: <2010-05-23 11:37:49EDT solver-struct.lisp>
 ;;
-;; Copyright 2009 Liam M. Healy
+;; Copyright 2009, 2010 Liam M. Healy
 ;; Distributed under the terms of the GNU General Public License
 ;;
 ;; This program is free software: you can redistribute it and/or modify
@@ -26,7 +26,7 @@
 ;;; When installed through Mac Ports, GSL .h files will be found
 ;;; in /opt/local/include.
 #+darwin
-(cc-flags "-I/opt/local/include/")
+(cc-flags #.(gsl-config "--cflags"))
 
 (include "gsl/gsl_multifit_nlin.h")
 
diff --git a/special-functions/sf-result.lisp b/special-functions/sf-result.lisp
index 2e0609ffd0efb8a3cf73598f78fbefaa60ebc705..0f622ff933626d4cb3804fa8ffe31c08e23afa29 100644
--- a/special-functions/sf-result.lisp
+++ b/special-functions/sf-result.lisp
@@ -1,8 +1,8 @@
 ;; CFFI-Grovel definitions for unix systems.
 ;; Liam Healy
-;; Time-stamp: <2009-12-27 10:09:59EST sf-result.lisp>
+;; Time-stamp: <2010-05-23 11:38:22EDT sf-result.lisp>
 ;;
-;; Copyright 2009 Liam M. Healy
+;; Copyright 2009, 2010 Liam M. Healy
 ;; Distributed under the terms of the GNU General Public License
 ;;
 ;; This program is free software: you can redistribute it and/or modify
@@ -26,7 +26,7 @@
 ;;; When installed through Mac Ports, GSL .h files will be found
 ;;; in /opt/local/include.
 #+darwin
-(cc-flags "-I/opt/local/include/")
+(cc-flags #.(gsl-config "--cflags"))
 
 (include "gsl/gsl_sf_result.h")
 
diff --git a/test-unit/machine.lisp b/test-unit/machine.lisp
index 8e195f4d150a84b30718f03769a198df0322adb2..a7791994faf36610a61e8c135291b4f8385b0b2d 100644
--- a/test-unit/machine.lisp
+++ b/test-unit/machine.lisp
@@ -1,8 +1,8 @@
 ;; Constants specifying limits of floating point calculations in hardware 
 ;; Liam Healy
-;; Time-stamp: <2010-05-31 23:21:42EDT machine.lisp>
+;; Time-stamp: <2010-06-24 09:54:03EDT machine.lisp>
 ;;
-;; Copyright 2009 Liam M. Healy
+;; Copyright 2010 Liam M. Healy
 ;; Distributed under the terms of the GNU General Public License
 ;;
 ;; This program is free software: you can redistribute it and/or modify
@@ -26,7 +26,7 @@
 ;;; When installed through Mac Ports, GSL .h files will be found
 ;;; in /opt/local/include.
 #+darwin
-(cc-flags "-I/opt/local/include/")
+(cc-flags #.(gsl-config "--cflags"))
 
 (include "gsl/gsl_machine.h")