Commit 21e5a989 authored by Dave Cooper's avatar Dave Cooper

factored out more patches.

parent 9afefd8f
......@@ -4,7 +4,7 @@
"The Gendl® gendl-patches Subsystem" :author
"Genworks International" :license
"Affero Gnu Public License (http://www.gnu.org/licenses/)" :serial t
:version "20200815" :depends-on (:gendl :cl-markdown)
:version "20200820" :depends-on (:gendl :cl-markdown)
:defsystem-depends-on nil :components
((:file "source/aserve") (:file "source/gdl") (:file "source/glisp")
(:file "source/gwl")))
((:file "source/aserve") (:gendl "source/cl-lite")
(:file "source/gdl") (:file "source/glisp") (:file "source/gwl")))
;;
;; Copyright© 2020 Genworks International and David J Cooper Jr.
;;
;; This source file is part of the General-purpose Declarative
;; Language project (GDL).
;;
;; This source file contains free software: you can redistribute it
;; and/or modify it under the terms of the GNU Affero General Public
;; License as published by the Free Software Foundation, either
;; version 3 of the License, or (at your option) any later version.
;;
;; This source file is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
;; Affero General Public License for more details.
;;
;; You should have received a copy of the GNU Affero General Public
;; License along with this source file. If not, see
;; <http://www.gnu.org/licenses/>.
;;
(in-package :cl-lite)
;;
;; FLAG -- Merged but delete commented-out old code in devo 2020-08-20
;;
(define-object-amendment codebase-directory-node ()
:computed-slots
((asdf-defsystem-depends-on
(let ((sexpr (glisp:sexpr-from-file (merge-pathnames (make-pathname :name "defsystem-depends-on"
:type "isc")
(the ppathname)))))
(if (and sexpr (not (stringp sexpr)))
(error "defsystem-depends-on.isc should be either nil or a string containing the expression
to go inside the actual list form in the asdf file. It came in as ~s instead.~%" sexpr)
sexpr)))
(%asdf-system-list
(let ((binaries (the compile-and-load)))
(append `("%%remove%%asdf:defsystem%%remove%%"
,(read-from-string (format nil "#:~a" (pathname-name (the asd-file))))
:description ,(the description)
:author ,(the author)
:license ,(the license)
:serial t
:version ,(the version)
:depends-on ,(the asdf-depends-on)
:defsystem-depends-on ,(read-from-string (format nil "(~a)" (or (the asdf-defsystem-depends-on) "")))
#|
:depends-on ,(the asdf-depends-on)
,(format nil "%%remove%%#-asdf-unicode :defsystem-depends-on #-asdf-unicode ~a%%remove%%"
(format nil "(:asdf-encodings~a~a)"
(if (the asdf-defsystem-depends-on) " " "")
(or (the asdf-defsystem-depends-on) "")))
,(format nil "%%remove%%#+asdf-unicode :defsystem-depends-on #+asdf-unicode ~a%%remove%%"
(format nil "(~a)" (or (the asdf-defsystem-depends-on) "")))
"%%remove%%#+asdf-encodings :encoding #+asdf-encodings :utf-8%%remove%%"
|#
;;
;; FLAG -- maybe can get rid of binaries and need to call (the compile-and-load)
;;
:components ,(mapcar #'(lambda(binary source)
(let ((binary (make-pathname :directory (remove "bin"
(pathname-directory binary)
:test #'string-equal)
:defaults binary)))
(let ((namestring (replace-substring
(namestring
(make-pathname :name (pathname-name binary)
:type nil ;;(pathname-type source)
:defaults
(enough-namestring binary (the ppathname))))
"\\" "/")))
(list (if (string-equal (pathname-type source) "lisp")
:file
(make-keyword (pathname-type source)))
namestring)
#+nil
(list :file namestring
:pathname
(merge-pathnames namestring "")))))
binaries (the source-file-list)))))
:uncached)))
......@@ -120,6 +120,10 @@ This function will be run in the initiating image after the build is finished."
See the ASDF documentation for details. "
application-fasls nil)
;;
;; FLAG -- implement this.
;;
("Number. The size of the reserved space which will be requested
from the OS when the produced application starts up. Defaults
to 800000000 (eight hundred million) bytes." lisp-heap-size
......@@ -167,11 +171,7 @@ This function will be run in the initiating image after the build is finished."
(toplevel-function `(lambda ()
,@(remove
nil
`(
(uiop:setup-temporary-directory)
`((uiop:setup-temporary-directory)
;;
;; FLAG -- sort out initialization so we don't have to do it surgically/internally like this.
;;
......@@ -181,20 +181,14 @@ This function will be run in the initiating image after the build is finished."
;; FLAG -- supposed to come from gwl:initialize but need to customize for now
;;
(glisp:initialize-multiprocessing)
(when (find-package :zacl)
(setq excl:*initial-terminal-io* *terminal-io*)
(setq net.aserve:*wserver* (make-instance 'net.aserve:wserver)))
(setq *iid-random-state* (make-random-state t))
(glisp:set-settings gwl::*settings*)
;;
;; end of stuff from gwl:initialize
;;
;;
;; FLAG -- make all this boilerplate into a funciton
;;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment