Megatest

Check-in [49214f61e2]
Login
Overview
Comment:Added minimal example of how build works
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | v1.6584-nanomsg
Files: files | file ages | folders
SHA1: 49214f61e2654b30e8ed5f4a1290ce4cb9242584
User & Date: matt on 2021-11-13 21:17:57
Other Links: branch diff | manifest | tags
Context
2021-11-14
15:33
Added -M to obj build to fix issue with dashboard not starting check-in: 39f1ace0d3 user: matt tags: v1.6584-nanomsg
2021-11-13
21:17
Added minimal example of how build works check-in: 49214f61e2 user: matt tags: v1.6584-nanomsg
05:15
misc check-in: cf42e4ea4d user: matt tags: v1.6584-nanomsg
Changes

Modified Makefile from [0383b008f1] to [8e464a2b2a].

133
134
135
136
137
138
139
140


141
142
143
144
145
146
147
mtest: megatest.scm $(MOFILES) $(MOIMPFILES) megatest-fossil-hash.scm
	csc $(CSCOPTS) $(MOFILES) $(MOIMPFILES) megatest.scm -o mtest

showmtesthash:
	@echo $(MTESTHASH)

dboard : dashboard.scm $(MOFILES) $(MOIMPFILES) $(GMOFILES) $(GMOIMPFILES) megatest-fossil-hash.scm
	csc -k $(CSCOPTS) $(MOFILES) $(MOIMPFILES) $(GMOFILES) $(GMOIMPFILES) dashboard.scm -o dboard



mtut: $(OFILES) $(MOFILES) megatest-fossil-hash.scm mtut.scm
	csc $(CSCOPTS) $(OFILES) $(MOFILES) mtut.scm -o mtut

# include makefile.inc

TCMTOBJS = \







|
>
>







133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
mtest: megatest.scm $(MOFILES) $(MOIMPFILES) megatest-fossil-hash.scm
	csc $(CSCOPTS) $(MOFILES) $(MOIMPFILES) megatest.scm -o mtest

showmtesthash:
	@echo $(MTESTHASH)

dboard : dashboard.scm $(MOFILES) $(MOIMPFILES) $(GMOFILES) $(GMOIMPFILES) megatest-fossil-hash.scm
	csc -k $(CSCOPTS) $(MOFILES) $(GMOFILES) dashboard.scm -o dboard

# $(GMOIMPFILES) $(MOIMPFILES) 

mtut: $(OFILES) $(MOFILES) megatest-fossil-hash.scm mtut.scm
	csc $(CSCOPTS) $(OFILES) $(MOFILES) mtut.scm -o mtut

# include makefile.inc

TCMTOBJS = \

Modified dashboard.scm from [677c0ae86b] to [eb6f650afa].

19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
;;======================================================================

(declare (uses ducttape-lib))

(declare (uses debugprint))
(declare (uses bigmod))
;; (declare (uses gutils))
(declare (uses bigmod.import))
(declare (uses commonmod))
(declare (uses configfmod))
(declare (uses dashboard-context-menu))
(declare (uses dashboard-tests))
(declare (uses dbmod))
(declare (uses dcommon))
;; (declare (uses debugprint.import))







|







19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
;;======================================================================

(declare (uses ducttape-lib))

(declare (uses debugprint))
(declare (uses bigmod))
;; (declare (uses gutils))
;; (declare (uses bigmod.import))
(declare (uses commonmod))
(declare (uses configfmod))
(declare (uses dashboard-context-menu))
(declare (uses dashboard-tests))
(declare (uses dbmod))
(declare (uses dcommon))
;; (declare (uses debugprint.import))

Added testbuild/Makefile version [d97da57d06].































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
CSCOPTS=
SRCFILES=m1.scm m2.scm m3.scm

%.o : %.scm
	csc $(CSCOPTS) -J -c $< -o $*.o

cl : cl.scm m1.o m2.o
	csc $(CSCOPTS) m1.o m2.o cl.scm -o cl

gui : gui.scm m1.o m3.o
	csc $(CSCOPTS) m1.o m3.o gui.scm -o gui


clean :
	rm -f *.o *.import.scm cl gui

Added testbuild/README version [4a6c07b153].











>
>
>
>
>
1
2
3
4
5
This is a minimal set of files to illustrate how Megatest is built.

NOTE: Missing is an example of how the .import.o files are compiled in to 
      enable code in evals to access the procedures in modules.

Added testbuild/cl.scm version [1b713265c6].















































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
;; a command line only executable

(declare (uses m1))
(declare (uses m2))

(module cl-guts
	*

(import scheme
	chicken.base
	m1
	m2)

(define (main)
  (a)
  (b)
  (print "I'm main from cl.scm"))

)

(import cl-guts)

(main)

Added testbuild/gui.scm version [8ea5c044bc].



















































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
;; a command line only executable

(declare (uses m1))
(declare (uses m3))

(module gui-guts
	*

(import scheme
	chicken.base
	m1
	m3
	)

(define (main)
  (a)
  (c)
  (print "I'm main from cl.scm, let's start a gui ...")
)

)

(import gui-guts)

(main)

Added testbuild/m1.scm version [624c900b71].

































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
;; a module used by both command line (cl.scm) and gui (gui.scm)

(declare (unit m1))

(module m1
	*

(import scheme
	chicken.base
	)

(define (a)
  (print "I'm from module m1"))

)
	

Added testbuild/m2.scm version [9e9aa983e6].































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
;; a module used only by the command line executable
;;
(declare (unit m2))

(module m2
	*

(import scheme
	chicken.base
	)

(define (b)
  (print "I'm from module m2"))

)

Added testbuild/m3.scm version [8e30a2b72c].















































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
;; a module used only by gui.scm
;;
(declare (unit m3))

(module m3
	*

(import scheme
	chicken.base
	iup)

(define (c)
  (print "I'm from module m3")
  (show
   (dialog
    (vbox 
     (label "Hello, I'm a gui")
     (button "Push me to exit"
	     action: (lambda (obj)(exit)))
     )))
  (main-loop))

)