330 |
|
|
331 |
(when prev (set-dispatch-macro-character #\# #\, prev rtb))))) |
(when prev (set-dispatch-macro-character #\# #\, prev rtb))))) |
332 |
|
|
333 |
(setq *init-name* (init-name input-pathname system-p)) |
(setq *init-name* (init-name input-pathname system-p)) |
334 |
|
|
335 |
(when (zerop *error-count*) |
(when (zerop *error-count*) |
336 |
(when *compile-verbose* (format t "~&;; End of Pass 1. ~%")) |
(when *compile-verbose* (format t "~&;; End of Pass 1. ~%")) |
337 |
(compiler-pass2 c-pathname h-pathname system-p )) |
(compiler-pass2 c-pathname h-pathname system-p )) |
764 |
(let ((p nil)) |
(let ((p nil)) |
765 |
(dolist (tem files) |
(dolist (tem files) |
766 |
(when (equal (pathname-type tem) "o") |
(when (equal (pathname-type tem) "o") |
767 |
(push (list |
(let ((tem (namestring tem))) |
768 |
(init-name tem t) |
(push (list (si::find-init-name tem) tem) p)))) |
|
(namestring tem)) |
|
|
p))) |
|
769 |
|
|
770 |
(setq p (nreverse p)) |
(setq p (nreverse p)) |
771 |
|
|
772 |
(dolist (tem p) |
(dolist (tem p) |
773 |
(format st "extern void init_~a(void);~%" (car tem))) |
(format st "extern void ~a(void);~%" (car tem))) |
774 |
(format st "~%") |
(format st "~%") |
775 |
|
|
776 |
(format st "typedef struct {void (*fn)(void);char *s;} Fnlst;~%") |
(format st "typedef struct {void (*fn)(void);char *s;} Fnlst;~%") |
779 |
(dolist (tem p) |
(dolist (tem p) |
780 |
(when (not (eq tem (car p))) |
(when (not (eq tem (car p))) |
781 |
(format st ",~%")) |
(format st ",~%")) |
782 |
(format st "{init_~a,\"~a\"}" (car tem) (cadr tem))) |
(format st "{~a,\"~a\"}" (car tem) (cadr tem))) |
783 |
(format st "};~%~%") |
(format st "};~%~%") |
784 |
|
|
785 |
(format st "static int user_init_run;~%") |
(format st "static int user_init_run;~%") |
790 |
(dolist (tem files) |
(dolist (tem files) |
791 |
(let ((tem (namestring tem))) |
(let ((tem (namestring tem))) |
792 |
(cond ((equal (cadr (car p)) tem) |
(cond ((equal (cadr (car p)) tem) |
793 |
(format st "gcl_init_or_load1(init_~a,\"~a\");~%" |
(format st "gcl_init_or_load1(~a,\"~a\");~%" |
794 |
(car (car p)) tem) |
(car (car p)) tem) |
795 |
(setq p (cdr p))) |
(setq p (cdr p))) |
796 |
(t |
(t |