From b6c766a1beef2b891c87400f37e2e7470208424a Mon Sep 17 00:00:00 2001
From: jsancho <devnull@localhost>
Date: Mon, 2 Aug 2010 16:00:54 +0000
Subject: [PATCH] Right ANSI Common Lisp compilation

---
 Makefile            |  2 +-
 gacela.lisp         | 15 ++++-----------
 gacela_FTGL.lisp    |  6 +++---
 gacela_GL.lisp      |  6 +++---
 gacela_SDL.lisp     |  6 +++---
 gacela_draw.lisp    |  6 +++---
 gacela_events.lisp  |  6 +++---
 gacela_misc.lisp    |  7 ++++---
 gacela_mobs.lisp    |  8 ++++----
 gacela_ttf.lisp     |  6 +++---
 gacela_widgets.lisp |  6 +++---
 11 files changed, 34 insertions(+), 40 deletions(-)

diff --git a/Makefile b/Makefile
index c0b0eba..f38a6d7 100644
--- a/Makefile
+++ b/Makefile
@@ -13,7 +13,7 @@ GCL_OBJ = $(OBJ:%.o=\"%.o\")
 	$(LISP) -eval "(progn (load \"gacela_make.lisp\") (compile-gfile \"$<\" :include \"$(INC)\"))" -batch
 
 all: $(OBJ)
-	$(LISP) -eval "(progn (make-package 'gacela :nicknames '(gg) :use '(lisp)) (compiler::link '($(GCL_OBJ)) \"gacela\" \"\" \"$(LIBS)\"))" -batch
+	$(LISP) -eval "(compiler::link '($(GCL_OBJ)) \"gacela\" \"\" \"$(LIBS)\")" -batch
 
 clean:
 	rm -f $(OBJ) gacela
diff --git a/gacela.lisp b/gacela.lisp
index 36817cf..7a054bb 100644
--- a/gacela.lisp
+++ b/gacela.lisp
@@ -15,19 +15,12 @@
 ;;; along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 
-(eval-when (compile)
-	   (make-package 'gacela :nicknames '(gg) :use '(lisp))
-	   (in-package 'gacela :nicknames '(gg) :use '(lisp)))
-
-;(eval-when (load)
-;	   (make-package 'gacela :nicknames '(gg) :use '(lisp))
-;	   (in-package 'gacela :nicknames '(gg) :use '(lisp)))
+(eval-when (compile load) (make-package 'gacela :nicknames '(gg) :use '(lisp)))
 
-(when (not (find-package 'gacela))
-  (make-package 'gacela :nicknames '(gg) :use '(lisp)))
+(eval-when (compile load eval)
+	   (when (not (find-package 'gacela)) (make-package 'gacela :nicknames '(gg) :use '(lisp)))
+	   (in-package 'gacela :nicknames '(gg) :use '(lisp)))
 
-;(eval-when (compile) (make-package 'gacela :nicknames '(gg) :use '(lisp)))
-(eval-when (eval load) (in-package 'gacela :nicknames '(gg) :use '(lisp)))
 
 ;;; Default values for Gacela
 (defvar *width-screen* 640)
diff --git a/gacela_FTGL.lisp b/gacela_FTGL.lisp
index fa40fa9..1d78fe9 100644
--- a/gacela_FTGL.lisp
+++ b/gacela_FTGL.lisp
@@ -15,10 +15,10 @@
 ;;; along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 
-(when (not (find-package 'gacela))
-  (make-package 'gacela :nicknames '(gg) :use '(lisp)))
+(eval-when (compile load eval)
+	   (when (not (find-package 'gacela)) (make-package 'gacela :nicknames '(gg) :use '(lisp)))
+	   (in-package 'gacela :nicknames '(gg) :use '(lisp)))
 
-(eval-when (eval) (in-package 'gacela :nicknames '(gg) :use '(lisp)))
 
 (defmacro mapcconst (type c-type name)
   (let ((c-header (concatenate 'string c-type " gacela_" name " (void)"))
diff --git a/gacela_GL.lisp b/gacela_GL.lisp
index 3548a71..b890c25 100644
--- a/gacela_GL.lisp
+++ b/gacela_GL.lisp
@@ -15,10 +15,10 @@
 ;;; along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 
-(when (not (find-package 'gacela))
-  (make-package 'gacela :nicknames '(gg) :use '(lisp)))
+(eval-when (compile load eval)
+	   (when (not (find-package 'gacela)) (make-package 'gacela :nicknames '(gg) :use '(lisp)))
+	   (in-package 'gacela :nicknames '(gg) :use '(lisp)))
 
-(eval-when (eval) (in-package 'gacela :nicknames '(gg) :use '(lisp)))
 
 (defmacro mapcconst (type c-type name)
   (let ((c-header (concatenate 'string c-type " gacela_" name " (void)"))
diff --git a/gacela_SDL.lisp b/gacela_SDL.lisp
index 502c03a..47a8a27 100644
--- a/gacela_SDL.lisp
+++ b/gacela_SDL.lisp
@@ -15,10 +15,10 @@
 ;;; along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 
-(when (not (find-package 'gacela))
-  (make-package 'gacela :nicknames '(gg) :use '(lisp)))
+(eval-when (compile load eval)
+	   (when (not (find-package 'gacela)) (make-package 'gacela :nicknames '(gg) :use '(lisp)))
+	   (in-package 'gacela :nicknames '(gg) :use '(lisp)))
 
-(eval-when (eval) (in-package 'gacela :nicknames '(gg) :use '(lisp)))
 
 (defmacro mapcconst (type c-type name)
   (let ((c-header (concatenate 'string c-type " gacela_" name " (void)"))
diff --git a/gacela_draw.lisp b/gacela_draw.lisp
index 85540b6..a23c735 100644
--- a/gacela_draw.lisp
+++ b/gacela_draw.lisp
@@ -15,10 +15,10 @@
 ;;; along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 
-(when (not (find-package 'gacela))
-  (make-package 'gacela :nicknames '(gg) :use '(lisp)))
+(eval-when (compile load eval)
+	   (when (not (find-package 'gacela)) (make-package 'gacela :nicknames '(gg) :use '(lisp)))
+	   (in-package 'gacela :nicknames '(gg) :use '(lisp)))
 
-(eval-when (eval) (in-package 'gacela :nicknames '(gg) :use '(lisp)))
 
 (defmacro with-color (color &body code)
   (cond (color
diff --git a/gacela_events.lisp b/gacela_events.lisp
index 7fe320b..5e54fc7 100644
--- a/gacela_events.lisp
+++ b/gacela_events.lisp
@@ -15,10 +15,10 @@
 ;;; along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 
-(when (not (find-package 'gacela))
-  (make-package 'gacela :nicknames '(gg) :use '(lisp)))
+(eval-when (compile load eval)
+	   (when (not (find-package 'gacela)) (make-package 'gacela :nicknames '(gg) :use '(lisp)))
+	   (in-package 'gacela :nicknames '(gg) :use '(lisp)))
 
-(eval-when (eval) (in-package 'gacela :nicknames '(gg) :use '(lisp)))
 
 ;;; SDL Events
 (defconstant SDL_NOEVENT          0)
diff --git a/gacela_misc.lisp b/gacela_misc.lisp
index 6e3e4ff..e19f3a2 100755
--- a/gacela_misc.lisp
+++ b/gacela_misc.lisp
@@ -14,10 +14,11 @@
 ;;; You should have received a copy of the GNU General Public License
 ;;; along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-(when (not (find-package 'gacela))
-  (make-package 'gacela :nicknames '(gg) :use '(lisp)))
 
-(eval-when (eval) (in-package 'gacela :nicknames '(gg) :use '(lisp)))
+(eval-when (compile load eval)
+	   (when (not (find-package 'gacela)) (make-package 'gacela :nicknames '(gg) :use '(lisp)))
+	   (in-package 'gacela :nicknames '(gg) :use '(lisp)))
+
 
 (defconstant INFINITY MOST-POSITIVE-LONG-FLOAT)
 
diff --git a/gacela_mobs.lisp b/gacela_mobs.lisp
index 1f499ac..8f3d903 100755
--- a/gacela_mobs.lisp
+++ b/gacela_mobs.lisp
@@ -15,12 +15,12 @@
 ;;; along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 
-;;; Mob Factory
+(eval-when (compile load eval)
+	   (when (not (find-package 'gacela)) (make-package 'gacela :nicknames '(gg) :use '(lisp)))
+	   (in-package 'gacela :nicknames '(gg) :use '(lisp)))
 
-(when (not (find-package 'gacela))
-  (make-package 'gacela :nicknames '(gg) :use '(lisp)))
 
-(eval-when (eval) (in-package 'gacela :nicknames '(gg) :use '(lisp)))
+;;; Mob Factory
 
 (defmacro makemob (name &rest methods)
   `(defun ,name (&rest args &aux (option (car args)))
diff --git a/gacela_ttf.lisp b/gacela_ttf.lisp
index e29076a..1d9aec7 100644
--- a/gacela_ttf.lisp
+++ b/gacela_ttf.lisp
@@ -15,10 +15,10 @@
 ;;; along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 
-(when (not (find-package 'gacela))
-  (make-package 'gacela :nicknames '(gg) :use '(lisp)))
+(eval-when (compile load eval)
+	   (when (not (find-package 'gacela)) (make-package 'gacela :nicknames '(gg) :use '(lisp)))
+	   (in-package 'gacela :nicknames '(gg) :use '(lisp)))
 
-(eval-when (eval) (in-package 'gacela :nicknames '(gg) :use '(lisp)))
 
 (defun load-font (font-file &key (size 40) (encoding ft_encoding_unicode) static)
   (let* ((key (make-resource-font :filename font-file :encoding encoding))
diff --git a/gacela_widgets.lisp b/gacela_widgets.lisp
index b6d78e9..8ff79ec 100755
--- a/gacela_widgets.lisp
+++ b/gacela_widgets.lisp
@@ -15,10 +15,10 @@
 ;;; along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 
-(when (not (find-package 'gacela))
-  (make-package 'gacela :nicknames '(gg) :use '(lisp)))
+(eval-when (compile load eval)
+	   (when (not (find-package 'gacela)) (make-package 'gacela :nicknames '(gg) :use '(lisp)))
+	   (in-package 'gacela :nicknames '(gg) :use '(lisp)))
 
-(eval-when (eval) (in-package 'gacela :nicknames '(gg) :use '(lisp)))
 
 ;;; Timers
 
-- 
2.39.5