[graphic-forms-cvs] r61 - trunk
junrue at common-lisp.net
junrue at common-lisp.net
Tue Mar 21 07:03:17 UTC 2006
Author: junrue
Date: Tue Mar 21 02:03:16 2006
New Revision: 61
Added:
trunk/config.lisp
Modified:
trunk/README.txt
trunk/build.lisp
trunk/graphic-forms-tests.asd
trunk/graphic-forms-uitoolkit.asd
trunk/tests.lisp
Log:
build system cleanup
Modified: trunk/README.txt
==============================================================================
--- trunk/README.txt (original)
+++ trunk/README.txt Tue Mar 21 02:03:16 2006
@@ -9,25 +9,106 @@
Dependencies
------------
-Graphic-Forms depends on the following systems:
+Graphic-Forms depends on the following packages:
- ASDF
- - CFFI
- - macro-utilities
- - binary-data
-
+ http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/cclan/asdf/
-How To Build
-------------
+ - CFFI 0.9.0
+ http://common-lisp.net/project/cffi/
+
+ - lw-compat
+ http://common-lisp.net/project/cl-containers/lw-compat/lw-compat_latest.tar.gz
+
+ - closer-mop
+ http://common-lisp.net/project/cl-containers/closer-mop/closer-mop_latest.tar.gz
+
+ - ImageMagick 6.2.6.5-Q16
+ http://www.imagemagick.org/download/binaries/ImageMagick-6.2.6-5-Q16-windows-dll.exe
+
+ - lisp-unit
+ http://www.cs.northwestern.edu/academics/courses/325/readings/lisp-unit.html
+
+
+How To Configure and Build
+--------------------------
+
+1. Install ImageMagick 6.2.6.5-Q16 (note in particular that it is the Q16
+ version that is needed, not the Q8 version). The default installation
+ directory is "c:/Program Files/ImageMagick-6.2.6-Q16/".
+
+2. Extract the Graphic-Forms distribution archive somewhere on your
+ machine (or check out the source from Subversion).
+
+3. Change to the Graphic-Forms top-level directory.
+
+4. Load ASDF into your Lisp image if it is not already present.
+
+5. Execute the following forms from your REPL (
+
+ (load "config.lisp")
+
+ ;;
+ ;; If ImageMagic is not installed in the default location, execute:
+ ;;
+ (setf gfsys::*imagemagick-dir* "c:/path/to/your/ImageMagick/install/")
-Execute the following forms from your REPL:
+ ;; Update these variables as needed for your specific environment to
+ ;; load the other dependencies besides ImageMagick. Or if your Lisp
+ ;; image already has these systems loaded, set these variables to nil.
+ ;;
+ ;; gfsys::*cffi-dir*
+ ;; gfsys::*closer-mop-dir*
+ ;; gfsys::*lw-compat-dir*
+ ;;
+ ;; Set the following var only if you want to run the unit-tests.
+ ;; Its value is the path to the lisp-unit.lisp source file minus
+ ;; the file extension.
+ ;;
+ ;; gfsys::*lisp-unit-file*
- (load "build.lisp")
- (gfsys::build)
+ ;; Execute the following form to populate asdf:*central-registry*
+ ;; Note that it will skip any systems whose location variables were
+ ;; set to nil in the previous step.
+ ;;
+ (gfsys::configure-asdf)
+
+ ;; Now load the graphic-forms system and its dependencies.
+ ;;
+ (asdf:operate 'asdf:load-op :graphic-forms-uitoolkit)
+
+6. Proceed to the next section to run the tests, or start coding!
+ (note: I will add instructions in the future for building the
+ documentation)
How To Run Tests And Samples
----------------------------
+1. Load the graphic-forms-uitoolkit system as described in the previous
+ section.
+
+2. Execute the following forms from your REPL:
+
+ (load (compile-file gfsys::*lisp-unit-file*))
+
+ (asdf:operate 'asdf:load-op :graphic-forms-tests)
+
+ (chdir "c:/some/path/graphic-forms/src/tests/uitoolkit/")
+
+ ;; then execute one or more of the following:
+ ;;
+
+ (run-tests) ;; runs the unit tests (many more to be added)
+
+ (gft::run-event-tester)
+
+ (gft::run-image-tester)
+
+ (gft::run-windlg)
+
+ (gft::run-layout-tester)
+
+
[the end]
Modified: trunk/build.lisp
==============================================================================
--- trunk/build.lisp (original)
+++ trunk/build.lisp Tue Mar 21 02:03:16 2006
@@ -31,34 +31,23 @@
;;;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
;;;;
-(defpackage #:graphic-forms-system
- (:nicknames #:gfsys)
- (:use :common-lisp :asdf))
+(load "config.lisp")
(in-package #:graphic-forms-system)
-(defvar *external-build-dirs* nil)
-
-(defvar *library-root* "c:/projects/third_party/")
+(defvar *library-root* "c:/third_party/")
+(defvar *asdf-repo-root* (concatenate 'string *library-root* "asdf-repo/"))
(defvar *project-root* "c:/projects/public/")
-(defvar *asdf-root* (concatenate 'string *library-root* "asdf-repo/"))
-
-(defvar *cffi-dir* (concatenate 'string *asdf-root* "cffi-0.9.0/"))
-(defvar *closer-mop-dir* (concatenate 'string *asdf-root* "closer-mop/"))
-(defvar *imagemagick-dir* "c:/Program Files/ImageMagick-6.2.6-Q16/")
-(defvar *lw-compat-dir* (concatenate 'string *asdf-root* "lw-compat/"))
+(setf *cffi-dir* (concatenate 'string *asdf-repo-root* "cffi-0.9.0/"))
+(setf *closer-mop-dir* (concatenate 'string *asdf-repo-root* "closer-mop/"))
+(setf *imagemagick-dir* "c:/Program Files/ImageMagick-6.2.6-Q16/")
+(setf *lw-compat-dir* (concatenate 'string *asdf-repo-root* "lw-compat/"))
+(setf *gf-dir* (concatenate 'string *project-root* "graphic-forms/"))
-(defvar *gf-dir* (concatenate 'string *project-root* "graphic-forms/"))
(defvar *gf-build-dir* "c:/projects/public/build/graphic-forms/")
-(defvar *gf-doc-dir* (concatenate 'string *gf-build-dir* "docs/"))
(defvar *gf-tests-dir* (concatenate 'string *gf-dir* "src/tests/uitoolkit/"))
-(defvar *asdf-dirs* (list *cffi-dir*
- *closer-mop-dir*
- *lw-compat-dir*
- *gf-dir*))
-
(defvar *library-build-root* (concatenate 'string *library-root* "build/"))
(defvar *cffi-build-dir* (concatenate 'string *library-build-root* "cffi/"))
(defvar *closer-mop-build-dir* (concatenate 'string *library-build-root* "closer-mop/"))
@@ -69,17 +58,14 @@
*lw-compat-build-dir*
*gf-build-dir*))
-#+lispworks (defmacro chdir (path)
- `(hcl:change-directory ,path))
-#+clisp (defmacro chdir (path)
- `(ext:cd ,path))
-
(defun build ()
- (mapc #'(lambda (dir-str) (pushnew dir-str asdf:*central-registry* :test #'equal)) *asdf-dirs*)
+
+ (configure-asdf)
+
(when *external-build-dirs*
(mapc #'(lambda (dir-str) (ensure-directories-exist (parse-namestring dir-str))) *build-dirs*))
- (ensure-directories-exist (parse-namestring *gf-doc-dir*))
+#|
(if *external-build-dirs*
(chdir *cffi-build-dir*))
(asdf:operate 'asdf:load-op :cffi)
@@ -91,6 +77,7 @@
(if *external-build-dirs*
(chdir *closer-mop-build-dir*))
(asdf:operate 'asdf:load-op :closer-mop)
+|#
(if *external-build-dirs*
(chdir *gf-build-dir*))
Added: trunk/config.lisp
==============================================================================
--- (empty file)
+++ trunk/config.lisp Tue Mar 21 02:03:16 2006
@@ -0,0 +1,58 @@
+;;;;
+;;;; config.lisp
+;;;;
+;;;; Copyright (C) 2006, Jack D. Unrue
+;;;; All rights reserved.
+;;;;
+;;;; Redistribution and use in source and binary forms, with or without
+;;;; modification, are permitted provided that the following conditions
+;;;; are met:
+;;;;
+;;;; 1. Redistributions of source code must retain the above copyright
+;;;; notice, this list of conditions and the following disclaimer.
+;;;;
+;;;; 2. Redistributions in binary form must reproduce the above copyright
+;;;; notice, this list of conditions and the following disclaimer in the
+;;;; documentation and/or other materials provided with the distribution.
+;;;;
+;;;; 3. Neither the names of the authors nor the names of its contributors
+;;;; may be used to endorse or promote products derived from this software
+;;;; without specific prior written permission.
+;;;;
+;;;; THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS "AS IS" AND ANY
+;;;; EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+;;;; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DIS-
+;;;; CLAIMED. IN NO EVENT SHALL THE AUTHORS AND CONTRIBUTORS BE LIABLE FOR ANY
+;;;; DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+;;;; (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+;;;; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+;;;; ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+;;;; (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+;;;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+;;;;
+
+(defpackage #:graphic-forms-system
+ (:nicknames #:gfsys)
+ (:use :common-lisp :asdf))
+
+(in-package #:graphic-forms-system)
+
+(defvar *external-build-dirs* nil)
+
+(defvar *cffi-dir* "cffi-0.9.0/")
+(defvar *closer-mop-dir* "closer-mop/")
+(defvar *imagemagick-dir* "c:/Program Files/ImageMagick-6.2.6-Q16/")
+(defvar *lw-compat-dir* "lw-compat/")
+(defvar *gf-dir* "graphic-forms/")
+
+(defvar *lisp-unit-file* "lisp-unit")
+
+#+lispworks (defmacro chdir (path)
+ `(hcl:change-directory ,path))
+#+clisp (defmacro chdir (path)
+ `(ext:cd ,path))
+
+(defun configure-asdf ()
+ (pushnew *cffi-dir* asdf:*central-registry* :test #'equal)
+ (pushnew *closer-mop-dir* asdf:*central-registry* :test #'equal)
+ (pushnew *lw-compat-dir* asdf:*central-registry* :test #'equal))
Modified: trunk/graphic-forms-tests.asd
==============================================================================
--- trunk/graphic-forms-tests.asd (original)
+++ trunk/graphic-forms-tests.asd Tue Mar 21 02:03:16 2006
@@ -33,6 +33,10 @@
(in-package #:graphic-forms-system)
+(defpackage #:graphic-forms.uitoolkit.tests
+ (:nicknames #:gft)
+ (:use :common-lisp :lisp-unit))
+
(print "Graphic-Forms UI Toolkit Tests")
(print "Copyright (c) 2006 by Jack D. Unrue")
(print " ")
Modified: trunk/graphic-forms-uitoolkit.asd
==============================================================================
--- trunk/graphic-forms-uitoolkit.asd (original)
+++ trunk/graphic-forms-uitoolkit.asd Tue Mar 21 02:03:16 2006
@@ -42,6 +42,7 @@
:version "0.2.0"
:author "Jack D. Unrue"
:licence "BSD"
+ :depends-on ("cffi" "lw-compat" "closer-mop")
:components
((:module "src"
:components
Modified: trunk/tests.lisp
==============================================================================
--- trunk/tests.lisp (original)
+++ trunk/tests.lisp Tue Mar 21 02:03:16 2006
@@ -33,14 +33,8 @@
(in-package #:graphic-forms-system)
-(defvar *lisp-unit-file* (concatenate 'string *library-root* "lisp-unit"))
-
(load (compile-file *lisp-unit-file*))
-(defpackage #:graphic-forms.uitoolkit.tests
- (:nicknames #:gft)
- (:use :common-lisp :lisp-unit))
-
(defun load-tests ()
(if *external-build-dirs*
(chdir *gf-build-dir*))
More information about the Graphic-forms-cvs
mailing list