3
#include "../h/include.h"
5
extern object user_init();
8
void gcl_init_or_load1 (void (*)(void),char *);
9
#define init_or_load(fn,file) do {extern void fn(void); gcl_init_or_load1(fn,file);} \
12
/* #define mjoin(a,b) a ## b */
13
/* #define Mjoin(a,b) mjoin(a,b) */
15
#define ar_init(a) do {\
18
if (snprintf(b,sizeof(b),"ar x %-*.*slibpcl_gcl.a %s.o",\
19
sSAsystem_directoryA->s.s_dbind->st.st_fillp,\
20
sSAsystem_directoryA->s.s_dbind->st.st_fillp,\
21
sSAsystem_directoryA->s.s_dbind->st.st_self,#a)<=0)\
22
error("Cannot unpack module " #a "o\n");\
24
error("Cannot run ar command to unpack module " #a ".o\n");\
25
init_or_load(Mjoin(init_,a),#a ".o");\
27
error("Cannot unlink " #a ".o\n");\
30
#define ar_check_init(a,b) do {\
33
for (t=b->s.s_dbind;!endp(t) && type_of(t->c.c_car)==t_string && strcmp(#a,t->c.c_car->st.st_self);t=t->c.c_cdr);\
42
{printf("loading %s\n",x);
46
#define lsp_init(a) do {\
49
if (snprintf(b,sizeof(b),"%-*.*s%s",\
50
sSAsystem_directoryA->s.s_dbind->st.st_fillp,\
51
sSAsystem_directoryA->s.s_dbind->st.st_fillp,\
52
sSAsystem_directoryA->s.s_dbind->st.st_self,a)<=0)\
53
error("Cannot append system directory\n");\
63
lsp_init("../lsp/gcl_export.lsp");
65
ar_init(gcl_defmacro);
66
ar_init(gcl_evalmacros);
70
lsp_init("../lsp/gcl_autoload.lsp");
75
gcl_init_system(object no_init)
78
if (type_of(no_init)!=t_symbol)
79
error("Supplied no_init is not of type symbol\n");
81
ar_check_init(gcl_predlib,no_init);
82
ar_check_init(gcl_setf,no_init);
83
ar_check_init(gcl_arraylib,no_init);
84
ar_check_init(gcl_assert,no_init);
85
ar_check_init(gcl_defstruct,no_init);
86
ar_check_init(gcl_describe,no_init);
87
ar_check_init(gcl_iolib,no_init);
88
ar_check_init(gcl_listlib,no_init);
89
ar_check_init(gcl_mislib,no_init);
90
ar_check_init(gcl_numlib,no_init);
91
ar_check_init(gcl_packlib,no_init);
92
ar_check_init(gcl_seq,no_init);
93
ar_check_init(gcl_seqlib,no_init);
94
ar_check_init(gcl_trace,no_init);
95
ar_check_init(gcl_sloop,no_init);
96
ar_check_init(gcl_serror,no_init);
97
ar_check_init(gcl_destructuring_bind,no_init);
98
ar_check_init(gcl_loop,no_init);
99
ar_check_init(gcl_defpackage,no_init);
100
ar_check_init(gcl_make_defpackage,no_init);
103
ar_check_init(gcl_cmpinline,no_init);
104
ar_check_init(gcl_cmputil,no_init);
106
ar_check_init(gcl_debug,no_init);
107
ar_check_init(gcl_info,no_init);
109
ar_check_init(gcl_cmptype,no_init);
110
ar_check_init(gcl_cmpbind,no_init);
111
ar_check_init(gcl_cmpblock,no_init);
112
ar_check_init(gcl_cmpcall,no_init);
113
ar_check_init(gcl_cmpcatch,no_init);
114
ar_check_init(gcl_cmpenv,no_init);
115
ar_check_init(gcl_cmpeval,no_init);
116
ar_check_init(gcl_cmpflet,no_init);
117
ar_check_init(gcl_cmpfun,no_init);
118
ar_check_init(gcl_cmpif,no_init);
119
ar_check_init(gcl_cmplabel,no_init);
120
ar_check_init(gcl_cmplam,no_init);
121
ar_check_init(gcl_cmplet,no_init);
122
ar_check_init(gcl_cmploc,no_init);
123
ar_check_init(gcl_cmpmap,no_init);
124
ar_check_init(gcl_cmpmulti,no_init);
125
ar_check_init(gcl_cmpspecial,no_init);
126
ar_check_init(gcl_cmptag,no_init);
127
ar_check_init(gcl_cmptop,no_init);
128
ar_check_init(gcl_cmpvar,no_init);
129
ar_check_init(gcl_cmpvs,no_init);
130
ar_check_init(gcl_cmpwt,no_init);
132
lsp_init("../clcs/package.lisp");
133
lsp_init("../clcs/myload1.lisp");
135
ar_check_init(pcl_pkg,no_init);
136
ar_check_init(pcl_walk,no_init);
137
ar_check_init(pcl_iterate,no_init);
138
ar_check_init(pcl_macros,no_init);
139
ar_check_init(pcl_low,no_init);
140
ar_check_init(pcl_gcl_low,no_init);
141
ar_check_init(pcl_fin,no_init);
142
ar_check_init(pcl_defclass,no_init);
143
ar_check_init(pcl_defs,no_init);
144
ar_check_init(pcl_fngen,no_init);
145
ar_check_init(pcl_cache,no_init);
146
ar_check_init(pcl_dlisp,no_init);
147
ar_check_init(pcl_dlisp2,no_init);
148
ar_check_init(pcl_boot,no_init);
149
ar_check_init(pcl_vector,no_init);
150
ar_check_init(pcl_slots_boot,no_init);
151
ar_check_init(pcl_combin,no_init);
152
ar_check_init(pcl_dfun,no_init);
153
ar_check_init(pcl_fast_init,no_init);
154
ar_check_init(pcl_braid,no_init);
155
ar_check_init(pcl_generic_functions,no_init);
156
ar_check_init(pcl_slots,no_init);
157
ar_check_init(pcl_init,no_init);
158
ar_check_init(pcl_std_class,no_init);
159
ar_check_init(pcl_cpl,no_init);
160
ar_check_init(pcl_fsc,no_init);
161
ar_check_init(pcl_methods,no_init);
162
ar_check_init(pcl_fixup,no_init);
163
ar_check_init(pcl_defcombin,no_init);
164
ar_check_init(pcl_ctypes,no_init);
165
ar_check_init(pcl_env,no_init);
166
ar_check_init(pcl_compat,no_init);
167
ar_check_init(pcl_precom1,no_init);
168
ar_check_init(pcl_precom2,no_init);
175
gcl_init_cmp_anon(void) {
181
ar_check_init(pcl_gazonk0,Cnil);
184
ar_check_init(pcl_gazonk1,Cnil);
187
ar_check_init(pcl_gazonk2,Cnil);
190
ar_check_init(pcl_gazonk3,Cnil);
193
ar_check_init(pcl_gazonk4,Cnil);
196
ar_check_init(pcl_gazonk5,Cnil);
199
ar_check_init(pcl_gazonk6,Cnil);
202
ar_check_init(pcl_gazonk7,Cnil);
205
ar_check_init(pcl_gazonk8,Cnil);