diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /support/tiny_c2l/lx2l-src/makefile.lxx |
Initial commit
Diffstat (limited to 'support/tiny_c2l/lx2l-src/makefile.lxx')
-rw-r--r-- | support/tiny_c2l/lx2l-src/makefile.lxx | 280 |
1 files changed, 280 insertions, 0 deletions
diff --git a/support/tiny_c2l/lx2l-src/makefile.lxx b/support/tiny_c2l/lx2l-src/makefile.lxx new file mode 100644 index 0000000000..b3ea644faa --- /dev/null +++ b/support/tiny_c2l/lx2l-src/makefile.lxx @@ -0,0 +1,280 @@ +{@lxx_output_extension <.lx>} +{@lxx_mode <k>} +{@default_thread <v>} +{@@@du}{@output_name <makefile>} +{@@@v}{@output_name <descrip.mms>} + +{@@@adu} +{@convert_initial_blanks} +{@map}& {@end@} +{@map}! + +{@@v} +{@map}& {@end@} +{@@v1}{@map}&, +{@@@v} +{@map}!;* +{@map}: : +{@unmap}: + +{@set <dante1>} 1-7 +{@set <dante2>} 8-100 + +@#::dante_files1 multiple.tex multiple.dvi position.dtx position.ins position.sty {@@##} + cvt_rm.c tiny_c2l.l tiny_t2l.l testfile.l testfile.dvi asm_uebung.s asm_uebung.dvi +@#::makefiles makefile.dos makefile.unix makefile.vms +@#::dante_files2 config.lx makefile.lxx position.lx tiny_cvt2ltx.lx + +@# dante_dir1 +{@@@d}dante-neu\ +{@@@u}dante-neu/ +{@@@v}[.dante-neu] + +@# dante_dir2 +{@@@d}dante-neu\lx2l-src\ +{@@@u}dante-neu/lx2l-src/ +{@@@v}[.dante-neu.lx2l-src] + +@# dante_zipfiles +{@@@d}tiny_c2l\*.* +{@@@u}tiny_c2l/* +{@@@v}[.tiny_c2l]*.* + + +@# tiny_c2l +{@@@v}mc sys$disk:[]tiny_c2l$(EXE) +{@@@u}./tiny_c2l +{@@@d}tiny_c2l + +@# xdvi +{@@@d}yap +{@@@uv}xdvi + +@# run cmd +{@@@v}mc sys$disk:[]{@#.cmd}$(EXE) +{@@@u}./\cmd +{@@@d}\cmd + +@# copy +{@@@dv}copy +{@@@u}cp + +@# rename +{@@@dv}rename +{@@@u}mv + +@# lx2lxh +{@@@v}mc sys$disk:[]lx2lxh$(EXE) +{@@@u}./lx2lxh +{@@@d}lx2lxh + +@# obj +{@@@v}$(OBJ) +{@@@^v}.o + +@# exe +{@@@d}.exe +{@@@u}{@end@} +{@@@v}$(EXE) + +@# cvt_rm_dep +{@calc "%s" "\delete"=="cvt_rm" ? " cvt_rm\exe" : "";} + +@# delete +{@@@}cvt_rm +{@@d1v1}cvt_rm +{@@u1}- rm + +@# latex +latex + +@# latex_b +latex{@@v}/batch + +@#- ltx_delete base TEX +{@@@}\delete \base.aux!&\base.dvi!&\base.lis!&\base.log!{@@#.TEX+}&\base.tex!{@@#.TEX#}&\base.toc! +{@@d1v1}\delete \base.aux!&\base.dvi!&\base.lis!&\base.log!{@@#.TEX+}&\base.tex!{@@#.TEX#}&\base.toc! +{@@u1}\delete \base.aux!&\base.dvi!&\base.log!{@@#.TEX+}&\base.tex!{@@#.TEX#}&\base.toc! + +@#- make_ltx short base full src gen opt{@@+} +{@#.short}v: \base.dvi + \xdvi \base.dvi +{@#.short}t2: \base.dvi position.sty + - \latex_b \full +\base.dvi: \full position.sty + - \latex_b \full +{@if "\src" ne ""}{@#.short}t: \full +\full: \src \gen\exe + \run(\gen) \opt \src \full +{@endif} + +{@@#} + +@#- mf target thread +makefile.\target: makefile.lx{@@+} + lx2l {@#.thread}1 makefile.lx makefile.\target + +@#- dante_copy1 file +\dante_dir1\file: \file{@@+} + \copy \file \dante_dir1 + +@#- dante_copy2 file +\dante_dir2\file: \file{@@+} + \copy \file \dante_dir2 + +{@@@@}{@remap}: + +{@@-} +{@@@v} +{@unmap}: +.ifdef __AXP__ +OBJ = .obj_x +EXE = .exe_x +LIBS = ,sys$share:vaxcrtl/lib/exec=$(MMS$TARGET) +.else +OBJ = .obj +EXE = .exe +LIBS = ,c.opt/opt/exec=$(MMS$TARGET) +.endif +LEX = flex +{@remap}: + +.SUFFIXES: .l $(OBJ) $(EXE) +.c$(EXE): + $(CC) $</object=$(MMS$TARGET_NAME)$(OBJ) + link $(MMS$TARGET_NAME)$(OBJ)$(LIBS) + \delete $(MMS$TARGET_NAME)$(OBJ)! +.l$(EXE): + $(LEX) $< + $(CC) $(MMS$TARGET_NAME).c/object=$(MMS$TARGET_NAME)$(OBJ) + link $(MMS$TARGET_NAME)$(OBJ)$(LIBS) + \delete $(MMS$TARGET_NAME).c!&$(MMS$TARGET_NAME)$(OBJ)! +{@@@^v} +CFLAGS = -O2 -fomit-frame-pointer -Wchar-subscripts -Wformat +LEX = flex +LFLAGS = +LDFLAGS = +LIBS = +CC = gcc + +.PHONY: demo tf + +{@@@d} +.SUFFIXES: .l .exe +.c.exe: + $(CC) $< -o$* + djp $* + \delete $*.o $* +.l.exe: + $(LEX) $< + $(CC) $*.c -o$* + djp $* + \delete $*.c $*.o $* +{@@@@} + +all: tc pt2 demo +demo: tiny_c2l.dvi testfile.dvi asm_uebung.dvi multiple.dvi + +\make_ltx#p#position#position.dtx#### +py: position.sty +position.sty: position.dtx position.ins + \latex position.ins + +\make_ltx#tc#tiny_c2l#tiny_c2l.tex#tiny_c2l.l#tiny_c2l#-l# +\make_ltx#tf#testfile#testfile.tex#testfile.l#tiny_c2l#-+ -l1# +\make_ltx#a#asm_uebung#asm_uebung.tex#asm_uebung.s#tiny_t2l#-t8# +md: multiple.dvi +multiple.dvi: testfile.tex tiny_c2l.tex position.sty + - \latex_b multiple + +tc: tiny_c2l\exe +{@@@} +tiny_c2l.l: tiny_cvt2ltx.lx config.lx + lx2l c tiny_cvt2ltx.lx +{@@@dv} +tiny_c2l\exe: tiny_c2l.l +cvt_rm\exe: cvt_rm.c +{@@@@} + +tt: tiny_t2l\exe +{@@@v} +tiny_t2l\exe: tiny_t2l.l +{@@@} +\make_ltx#tf1#testfile1#testfile1.tex#testfile1.l#tiny_c2l#-+ -l1# +tiny_t2l.l: tiny_cvt2ltx.lx config.lx + lx2l t tiny_cvt2ltx.lx + +mf{@@v}: descrip.mms +descrip.mms{@@@}: makefile.lx + lx2l {@@d}d{@@u}u{@@v}v{@@@} makefile.lx +makefile.lx: makefile.lxx + lx2l -x makefile.lxx +\mf(dos)(d) +\mf(unix)(u) +\mf(vms)(v) +mfs: makefile.lx {@forall}\makefiles {@repeat} + lx2l d1 makefile.lx makefile1.dos + lx2l u1 makefile.lx makefile1.unix + lx2l v1 makefile.lx makefile1.vms + +position.dtx: position.lx config.lx + lx2l p position.lx + +position.ins: position.lx + lx2l i position.lx + +html: position.html position.idx +pxh: position.html + +position.lxh: position.lx lx2lxh\exe + \lx2lxh position.lx position.lxh +position.html: position.lxh config.lx + lx2l h position.lxh +position.idx: position.lxh config.lx + lx2l i1 position.lxh +{@@v} +lx2lxh\exe: lx2lxh.l +{@@@} + +dante: dante_zip clean +dante_zip: tiny_c2l.zip +tiny_c2l.zip: dante_files + \rename dante-neu{@@v}.dir{@@@} tiny_c2l + zip -9ur tiny_c2l \dante_zipfiles + \rename tiny_c2l{@@v}.dir{@@@} dante-neu +dante_files:{@forall} {@#dante_dir1}\dante_files1{@repeat}\ + {@forall} {@#dante_dir1}\makefiles{@repeat}\ + {@forall} {@#dante_dir2}\dante_files2{@repeat} + +{@forall}\dante_copy1(\dante_files1) +{@repeat} +{@forall}\dante_copy1(\makefiles) +{@repeat} +{@forall}\dante_copy2(\dante_files2) +{@repeat} + +{@@@@} +clean:\cvt_rm_dep + \ltx_delete(tiny_c2l)(1) + \ltx_delete(testfile)(1) + \ltx_delete(asm_uebung)(1) + \ltx_delete(multiple)(0) + \delete tiny_c2l.dbg!&tiny_t2l.dbg!{@@@}&lx2l.dbg!&position.html!&position.lxh!{@@@@} + \ltx_delete(position)(0){@@@}&position.dtx!{@@@@} +{@@@} + \delete makefile.lx!&makefile.dos!&makefile.unix!&makefile.vms!&makefile1.dos!&makefile1.unix!&makefile1.vms! + \ltx_delete(testfile1)(1) + \ltx_delete(tiny_t2l)(1) + \ltx_delete(linediagram)(1) + \ltx_delete(tf)(1) +{@@@@} +distclean: clean + \delete {@@@}tiny_c2l.l!&{@@@@}tiny_c2l.c!&tiny_c2l\obj!&tiny_c2l\exe! + \delete {@@@}tiny_t2l.l!&{@@@@}tiny_t2l.c!&tiny_t2l\obj!&tiny_t2l\exe! + \delete cvt_rm\obj!&cvt_rm\exe!&position.sty +{@@@} + \delete makefile!&descrip.mms!&position.sty!&position.ins! + \delete{@for [dante1]} {@#dante_dir1}\dante_files1!{@repeat} + \delete{@for [dante2]} {@#dante_dir1}\dante_files1!{@repeat} + \delete{@forall} {@#dante_dir1}\makefiles!{@repeat} + \delete{@forall} {@#dante_dir2}\dante_files2!{@repeat} |