22name: %Rebol
33group: %rebol
44compiler: clang
5- strip: on
5+ strip: off
66upx: off
77
88root: %../
@@ -188,7 +188,7 @@ host-files-view: [
188188 %os/win32/sys-utils.c
189189 %os/win32/sys-codecs.cpp
190190 %os/win32/sys-d2d.cpp
191- %os/win32/host-image.c
191+ ; %os/win32/host-image.c
192192 ;%win32/sys-codecs-ini.c
193193
194194 %os/win32/host-event.c
@@ -198,6 +198,72 @@ host-files-view: [
198198 ]
199199]
200200
201+ mezz-base-files: [
202+ ;-- base: low-level boot in lib context:
203+ %mezz/base-constants.reb
204+ %mezz/base-funcs.reb
205+ %mezz/base-series.reb
206+ %mezz/base-files.reb
207+ %mezz/base-debug.reb
208+ %mezz/base-defs.reb
209+ %mezz/base-collected.reb ; contains automatically collected code from C files
210+ ]
211+ mezz-sys-files: [
212+ ;-- sys: low-level sys context:
213+ %mezz/sys-base.reb
214+ %mezz/sys-ports.reb
215+ %mezz/sys-codec.reb ; export to lib!
216+ %mezz/sys-load.reb
217+ %mezz/sys-start.reb
218+ ]
219+ mezz-lib-files: [
220+ ;-- lib: mid-level lib context:
221+ %mezz/mezz-secure.reb
222+ %mezz/mezz-types.reb
223+ %mezz/mezz-func.reb
224+ %mezz/mezz-debug.reb
225+ %mezz/mezz-control.reb
226+ %mezz/mezz-save.reb
227+ %mezz/mezz-series.reb
228+ %mezz/mezz-files.reb
229+ %mezz/mezz-shell.reb
230+ %mezz/mezz-math.reb
231+ %mezz/mezz-help.reb ; move dump-obj!
232+ %mezz/mezz-banner.reb
233+ %mezz/mezz-colors.reb
234+ %mezz/mezz-date.reb ; Internet date support
235+ ; %mezz/mezz-tag.reb ; build-tag
236+ %mezz/mezz-tail.reb
237+ ; %mezz/codec-unixtime.reb
238+ ;-- cryptographic
239+ ; %mezz/codec-utc-time.reb
240+ ; %mezz/codec-pkix.reb
241+ ; %mezz/codec-der.reb
242+ ; %mezz/codec-crt.reb
243+ ; %mezz/codec-ppk.reb
244+ ; %mezz/codec-ssh-key.reb
245+ ;-- compression
246+ ; %mezz/codec-gzip.reb
247+ ; %mezz/codec-zip.reb
248+ ; %mezz/codec-tar.reb
249+ ;-- other
250+ ; %mezz/%codec-bbcode.reb
251+ ; %mezz/%codec-json.reb
252+ ; %mezz/%codec-xml.reb
253+ ; %mezz/%codec-html-entities.reb
254+ ; %mezz/%codec-wav.reb
255+ ; %mezz/%codec-swf.reb
256+ ; %mezz/%codec-image.reb ; included using: include-image-os-codec (windows only so far)
257+ ; %mezz/%codec-image-ext.reb ; image codec extensions (codecs/png/size?)
258+ ]
259+ mezz-prot-files: [
260+ ;-- protocols:
261+ ; %mezz/prot-http.reb
262+ ; %mezz/prot-tls.reb
263+ ; %mezz/prot-whois.reb
264+ ; %mezz/prot-mysql.reb
265+ ]
266+
201267config: [ ;- this is list of configuration (optional) defines
202268 INCLUDE_MBEDTLS ;- replaced original checksum implementations
203269
@@ -233,13 +299,22 @@ config: [ ;- this is list of configuration (optional) defines
233299 ;MUNGWALL ; "MungWall"-style sentinels for REBNODEs (missing Mung_Check function, not ok!) Amiga only?
234300]
235301
302+ ;-------------------------------------------------------------------------------
303+ ;- Include definitions (fine-tunning products)
304+ ;-------------------------------------------------------------------------------
305+
236306include-native-bmp-codec: [config: INCLUDE_BMP_CODEC core-files: %core/u-bmp.c]
237307include-native-png-codec: [config: INCLUDE_PNG_CODEC core-files: %core/u-png.c]
238308include-native-jpg-codec: [config: INCLUDE_JPG_CODEC core-files: %core/u-jpg.c]
239309include-native-gif-codec: [config: INCLUDE_GIF_CODEC core-files: %core/u-gif.c]
240- ;@@ on Windows it's better to use system image codec
310+
311+ ;@@ on Windows it's better to use system image codec (ability to use more types)
241312include-image-os-codec: [
242- #if Windows? [config: USE_OS_IMAGE_CODECS] ;@@ rename?
313+ #if Windows? [
314+ config: INCLUDE_IMAGE_OS_CODEC
315+ host-files: %os/win32/host-image.c
316+ mezz-lib-files: %codec-image.reb
317+ ]
243318]
244319
245320include-image-natives: [
@@ -248,7 +323,7 @@ include-image-natives: [
248323 ; on Windows also: image as common entry to os image codec (if enabled)
249324 config: INCLUDE_IMAGE_NATIVES
250325 core-files: %core/n-image.c
251- core-files: %core/n -image-resize.c
326+ core-files: %core/u -image-resize.c
252327]
253328
254329include-optional-checksums: [
@@ -328,9 +403,9 @@ all-includes: [
328403common: [
329404 files: :core-files
330405 clean: %core/b-init.c ;make-boot.reb modifies embedded native code, so b-init.c must be always recompiled
331- clean: %core/b-boot.c
332406
333- define: :config
407+ ;define: :config
408+ define: {REBOL_OPTIONS_FILE=\"gen-config.h\"}
334409
335410 ;cflags: [-ffast-math]
336411
@@ -403,13 +478,15 @@ arch-x86: [
403478;-------------------------------------------------------------------------------
404479;- Action definitions (experimantal so far!)
405480;-------------------------------------------------------------------------------
406- probe-spec: action ["Probe current spec structure"][do [? spec]]
481+ probe-spec: action ["Probe current spec structure"][
482+ do [? spec]
483+ ]
407484pre-make: action ["Pre-make headers and boot code"][
408485 do %make/pre-make.r3 "$TEMP_SEED_SPEC"
409486]
410487
411488;-------------------------------------------------------------------------------
412- ;- List of all possible compilation targets
489+ ;- All possible compilation targets and commands
413490;-------------------------------------------------------------------------------
414491targets: [
415492 #if Windows? [
@@ -420,10 +497,22 @@ targets: [
420497 :all-includes
421498 pre-make
422499 ]
500+ "Rebol/Base x86-win32 (gcc)" [
501+ target: x86-win32
502+ product: 'Base
503+ name: %rebol3-x86-base-gcc
504+ compiler: gcc
505+ pre-make
506+ :common
507+ :common-host
508+ :arch-x86
509+ defines: [REB_EXE]
510+ ]
423511 "Rebol Win-x86 exe" [
424512 target: x86-win32
425513 name: %rebol3-x86-core
426- compiler: gcc
514+ compiler: clang
515+ :all-includes
427516 :common
428517 :common-host
429518 :arch-x86
0 commit comments