# # Makefile for fd # TITLE = FD- VERMAJ = __VERMAJ__ VERSION = __VERSION__ PREFIX = __PREFIX__ CONFDIR = __CONFDIR__ BUILD = MANSEC = 1 BINTOP = $(PREFIX)/bin BINDIR = $(BUILD)$(BINTOP) DATATOP = $(PREFIX)/share DATADIR = $(BUILD)$(DATATOP)/fd MANTOP = $(PREFIX)/man MANDIR = $(BUILD)$(MANTOP)/man$(MANSEC) CATDIR = $(BUILD)$(MANTOP)/cat$(MANSEC) JMANDIR = $(BUILD)$(MANTOP)__LANGDIR__/man$(MANSEC) JCATDIR = $(BUILD)$(MANTOP)__LANGDIR__/cat$(MANSEC) IPKWDIR = ./ipk.work IPKTDIR = ./ipk.tmp DEPDIR = ./depend.tmp DIST = __DIST__ DEFRC = $(CONFDIR)/fd__RCVERSION__rc BLDRC = $(BUILD)$(DEFRC) DOSRC = ~FD\\fd__RCVERSION__rc UNITBL = fd-unicd.tbl DICTTBL = fd-dict.tbl DICTTXT = fd-dict.txt DICTSRC = __DICTSRC__ TABLES = __UNITBL__ __DICTTBL__ SRC = main.c printf.c termio.c term.c \ pathname.c system.c posixsh.c doscom.c \ log.c dosemu.c dosdisk.c unixemu.c unixdisk.c \ libc.c file.c apply.c \ pty.c termemu.c frontend.c backend.c \ parse.c builtin.c shell.c \ kanji.c input.c ime.c dict.c roman.c \ info.c rockridg.c tree.c \ archive.c \ custom.c command.c browse.c \ mkunitbl.c mkdict.c mktankan.c \ kanjicnv.c expfunc.c mkmfsed.c \ mkfuncno.c HEADER = fd.h \ machine.h \ printf.h kctype.h \ termio.h term.h \ pathname.h system.h wait.h \ types.h \ dosdisk.h unixdisk.h unixemu.h \ termemu.h \ roman.h hinsi.h \ func.h functabl.h SSRC = printf.c termio.c \ pathname.c system.c posixsh.c doscom.c BSRC = printf.c termio.c \ pathname.c system.c doscom.c TSRC = roman.c kanji.c DOC = README.eng HISTORY.eng FAQ.eng TECHKNOW.eng \ Install.eng ToAdmin.eng LICENSES.eng JDOC = README HISTORY FAQ TECHKNOW \ Install ToAdmin LICENSES MANSRC = fd_e.man MANCAT = fd_e.cat JMANSRC = fd.man JMANCAT = fd.cat RUNCOM = fdrc ARGS = object.arg SARGS = sobject.arg SRCS = $(DOC) $(MANSRC) $(MANCAT) \ Configur Makefile Makefile.in $(SRC) $(HEADER) \ makefile.gpc makefile.g98 \ makefile.dpc makefile.d98 \ makefile.lpc makefile.l98 \ makefile.bpc makefile.b98 \ mkmfdosg.sed mkmfdosd.sed mkmfdosl.sed mkmfdosb.sed \ config.hin version.h \ _fdrc _fdrc.dif JSRCS = $(JDOC) $(JMANSRC) $(JMANCAT) \ kanji.hin SOURCES = $(SRCS) $(JSRCS) SHSOURCES = $(SSRC) \ machine.h \ printf.h kctype.h \ termio.h \ pathname.h system.h wait.h \ unixemu.h \ kanjicnv.c expfunc.c mkmfsed.c \ TECHKNOW \ Configur Makefile Makefile.in \ makefile.gpc makefile.g98 \ makefile.dpc makefile.d98 \ makefile.lpc makefile.l98 \ makefile.bpc makefile.b98 \ mkmfdosg.sed mkmfdosd.sed mkmfdosl.sed mkmfdosb.sed \ config.hin version.h CC = __CC__ HOSTCC = __HOSTCC__ INSTALL = __INSTALL__ MAKE = make SHELL = /bin/sh SED = sed ECHO = __ECHO__ CP = __COPY__ RM = __RM__ LN = __LN__ CHMOD = chmod EXE = __EXE__ OBJ = __OBJ__ PROGRAM = fd ALIAS = fdsh OBJ1 = main$(OBJ) printf$(OBJ) termio$(OBJ) term$(OBJ) OBJ2 = pathname$(OBJ) system$(OBJ) posixsh$(OBJ) doscom$(OBJ) \ log$(OBJ) dosdisk$(OBJ) __EMUOBJS__ OBJ3 = libc$(OBJ) file$(OBJ) apply$(OBJ) \ pty$(OBJ) termemu$(OBJ) frontend$(OBJ) backend$(OBJ) OBJ4 = parse$(OBJ) builtin$(OBJ) shell$(OBJ) OBJ5 = kanji$(OBJ) input$(OBJ) __IMEOBJS__ OBJ6 = info$(OBJ) rockridg$(OBJ) tree$(OBJ) \ archive$(OBJ) \ custom$(OBJ) command$(OBJ) browse$(OBJ) SOBJ1 = sprintf$(OBJ) stermio$(OBJ) SOBJ2 = spathnam$(OBJ) ssystem$(OBJ) sposixsh$(OBJ) sdoscom$(OBJ) BOBJ = bprintf$(OBJ) btermio$(OBJ) \ bpathnam$(OBJ) bsystem$(OBJ) bdoscom$(OBJ) TOBJ = troman$(OBJ) tkanji$(OBJ) ALLOC = DEBUG = LDFLAGS = __TERMLIBS__ __REGLIBS__ __OTHERLIBS__ $(ALLOC) CFLAGS = -D__OSTYPE__=1 __CCOPTIONS__ $(DEBUG) HOSTCFLAGS = -D__OSTYPE__=1 __HOSTCCOPTIONS__ SLDFLAGS = __REGLIBS__ __OTHERLIBS__ $(ALLOC) FDCFLAGS = $(CFLAGS) $(CPPFLAGS) __MEM__ -DFD=$(VERMAJ) SHCFLAGS = $(CFLAGS) $(CPPFLAGS) __SHMEM__ -DFDSH=$(VERMAJ) BSHCFLAGS = $(CFLAGS) $(CPPFLAGS) __BSHMEM__ -DFDSH=$(VERMAJ) -DMINIMUMSHELL DEFCFLAGS = -DDEFRC=__DEFRC__ .SUFFIXES: .h .c __OBJ__ __EXE__ ############################################################ # Dependency Rules ############################################################ all: $(PROGRAM)$(EXE) $(PROGRAM).$(MANSEC) $(TABLES) $(PROGRAM)$(EXE): $(OBJ1) $(OBJ2) $(OBJ3) $(OBJ4) $(OBJ5) $(OBJ6) $(ARGS) $(CC) __MEM__ __LNK__ __OBJLIST__ $(LDFLAGS) __RENAME__ $@ $(PROGRAM) __AOUT2EXE__ $(PROGRAM) __REMOVE__ $(PROGRAM) $(ARGS): $(OBJ1) $(OBJ2) $(OBJ3) $(OBJ4) $(OBJ5) $(OBJ6) @$(ECHO) $(OBJ1) > $(ARGS) @$(ECHO) $(OBJ2) >> $(ARGS) @$(ECHO) $(OBJ3) >> $(ARGS) @$(ECHO) $(OBJ4) >> $(ARGS) @$(ECHO) $(OBJ5) >> $(ARGS) @$(ECHO) $(OBJ6) >> $(ARGS) main$(OBJ): main.c $(CC) $(FDCFLAGS) $(DEFCFLAGS) __TBLPATH__ -c __OUT__ $*.c termio$(OBJ): termio.c $(CC) $(FDCFLAGS) __FDSETSIZE__ -c __OUT__ $*.c system$(OBJ): system.c $(CC) $(FDCFLAGS) $(DEFCFLAGS) -c __OUT__ $*.c .c__OBJ__: $(CC) $(FDCFLAGS) -c __OUT__ $*.c ############################################################ # kanji using module kanji.h: kanjicnv$(EXE) kanji.hin ./kanjicnv$(EXE) __KCODEOPTION__ __PREFIXOPTION__ __MSBOPTION__ kanji.hin $@ $(PROGRAM).$(MANSEC): kanjicnv$(EXE) $(JMANSRC) ./kanjicnv$(EXE) __KCODEOPTION__ __PREFIXOPTION__ $(JMANSRC) $@ $(PROGRAM).$(MANSEC)c: kanjicnv$(EXE) $(JMANCAT) ./kanjicnv$(EXE) __KCODEOPTION__ $(JMANCAT) $@ $(PROGRAM).eng: kanjicnv$(EXE) $(MANCAT) ./kanjicnv$(EXE) -b $(MANCAT) $@ $(PROGRAM).doc: kanjicnv$(EXE) $(JMANCAT) ./kanjicnv$(EXE) __KCODEOPTION__ -b $(JMANCAT) $@ README.doc: kanjicnv$(EXE) README ./kanjicnv$(EXE) __KCODEOPTION__ README $@ HISTORY.doc: kanjicnv$(EXE) HISTORY ./kanjicnv$(EXE) __KCODEOPTION__ HISTORY $@ FAQ.doc: kanjicnv$(EXE) FAQ ./kanjicnv$(EXE) __KCODEOPTION__ FAQ $@ LICENSES.doc: kanjicnv$(EXE) LICENSES ./kanjicnv$(EXE) __KCODEOPTION__ LICENSES $@ kanjicnv$(EXE): kanjicnv$(OBJ) $(HOSTCC) $(HOSTCFLAGS) $(CPPFLAGS) __LNK__ kanjicnv$(OBJ) __RENAME__ $@ kanjicnv __AOUT2EXE__ kanjicnv __REMOVE__ kanjicnv kanjicnv$(OBJ): kanjicnv.c $(HOSTCC) $(HOSTCFLAGS) $(CPPFLAGS) -c __OUT__ $*.c ############################################################ # function list using module funcno.h: mkfuncno$(EXE) ./mkfuncno$(EXE) $@ mkfuncno$(EXE): mkfuncno$(OBJ) $(HOSTCC) $(HOSTCFLAGS) $(CPPFLAGS) __LNK__ mkfuncno$(OBJ) __RENAME__ $@ mkfuncno __AOUT2EXE__ mkfuncno __REMOVE__ mkfuncno mkfuncno$(OBJ): mkfuncno.c $(HOSTCC) $(HOSTCFLAGS) $(CPPFLAGS) -DFD=$(VERMAJ) -c __OUT__ $*.c ############################################################ # UNICODE table generating module $(UNITBL): mkunitbl$(EXE) ./mkunitbl$(EXE) $@ mkunitbl$(EXE): mkunitbl$(OBJ) $(HOSTCC) $(HOSTCFLAGS) $(CPPFLAGS) __LNK__ mkunitbl$(OBJ) __RENAME__ $@ mkunitbl __AOUT2EXE__ mkunitbl __REMOVE__ mkunitbl mkunitbl$(OBJ): mkunitbl.c $(HOSTCC) $(HOSTCFLAGS) $(CPPFLAGS) -c __OUT__ $*.c ############################################################ # Kanji transfer table generating module $(DICTTBL): mkdict$(EXE) $(DICTSRC) ./mkdict$(EXE) __MKDICTOPTION__ $@ $(DICTSRC) mkdict$(EXE): mkdict$(OBJ) $(TOBJ) $(HOSTCC) $(HOSTCFLAGS) $(CPPFLAGS) __LNK__ mkdict$(OBJ) $(TOBJ) __RENAME__ $@ mkdict __AOUT2EXE__ mkdict __REMOVE__ mkdict mktankan$(EXE): mktankan$(OBJ) $(TOBJ) $(HOSTCC) $(HOSTCFLAGS) $(CPPFLAGS) __LNK__ mktankan$(OBJ) $(TOBJ) __RENAME__ $@ mktankan __AOUT2EXE__ mktankan __REMOVE__ mktankan mkdict$(OBJ): mkdict.c $(HOSTCC) $(HOSTCFLAGS) $(CPPFLAGS) -c __OUT__ $*.c mktankan$(OBJ): mktankan.c $(HOSTCC) $(HOSTCFLAGS) $(CPPFLAGS) -c __OUT__ $*.c troman$(OBJ): roman.c $(HOSTCC) $(HOSTCFLAGS) $(CPPFLAGS) -c __OUT__ roman.c tkanji$(OBJ): kanji.c $(HOSTCC) $(HOSTCFLAGS) $(CPPFLAGS) -c __OUT__ kanji.c rmdict: -$(RM) $(DICTTBL) $(DICTTXT): mktankan$(EXE) ./mktankan$(EXE) $@ ############################################################ # to install all install: $(PROGRAM)$(EXE) $(PROGRAM).$(MANSEC) $(TABLES) $(INSTALL) __INSTSTRIP__ $(PROGRAM)$(EXE) $(BINDIR) $(CHMOD) a+rx $(BINDIR)/$(PROGRAM)$(EXE) -$(RM) $(BINDIR)/$(ALIAS)$(EXE) $(LN) $(BINDIR)/$(PROGRAM)$(EXE) $(BINDIR)/$(ALIAS)$(EXE) $(CHMOD) a+rx $(BINDIR)/$(ALIAS)$(EXE) [ -d $(JMANDIR) ] || mkdir $(JMANDIR) $(INSTALL) $(PROGRAM).$(MANSEC) $(JMANDIR)/$(PROGRAM).$(MANSEC) $(CHMOD) a+r-x $(JMANDIR)/$(PROGRAM).$(MANSEC) -$(RM) $(JMANDIR)/$(ALIAS).$(MANSEC) $(LN) $(JMANDIR)/$(PROGRAM).$(MANSEC) $(JMANDIR)/$(ALIAS).$(MANSEC) $(CHMOD) a+r-x $(JMANDIR)/$(ALIAS).$(MANSEC) [ -d $(MANDIR) ] || mkdir $(MANDIR) $(INSTALL) $(MANSRC) $(MANDIR)/$(PROGRAM).$(MANSEC) $(CHMOD) a+r-x $(MANDIR)/$(PROGRAM).$(MANSEC) -$(RM) $(MANDIR)/$(ALIAS).$(MANSEC) $(LN) $(MANDIR)/$(PROGRAM).$(MANSEC) $(MANDIR)/$(ALIAS).$(MANSEC) $(CHMOD) a+r-x $(MANDIR)/$(ALIAS).$(MANSEC) -if [ -f $(RUNCOM) ]; then \ $(INSTALL) $(RUNCOM) $(BLDRC); \ $(CHMOD) a+r-x $(BLDRC); \ fi [ -d __DATADIR__ ] || mkdir __DATADIR__ -if [ -f $(UNITBL) ]; then \ $(INSTALL) $(UNITBL) __DATADIR__; \ $(CHMOD) a+r-x __DATADIR__/$(UNITBL); \ fi -if [ -f $(DICTTBL) ]; then \ $(INSTALL) $(DICTTBL) __DATADIR__; \ $(CHMOD) a+r-x __DATADIR__/$(DICTTBL); \ fi catman: $(MANCAT) $(INSTALL) $(MANCAT) $(CATDIR)/$(PROGRAM).$(MANSEC) $(CHMOD) a+r-x $(CATDIR)/$(PROGRAM).$(MANSEC) -$(RM) $(CATDIR)/$(ALIAS).$(MANSEC) $(LN) $(CATDIR)/$(PROGRAM).$(MANSEC) $(CATDIR)/$(ALIAS).$(MANSEC) $(CHMOD) a+r-x $(CATDIR)/$(ALIAS).$(MANSEC) catman-b: $(PROGRAM).eng $(INSTALL) $(PROGRAM).eng $(CATDIR)/$(PROGRAM).$(MANSEC) $(CHMOD) a+r-x $(CATDIR)/$(PROGRAM).$(MANSEC) -$(RM) $(CATDIR)/$(ALIAS).$(MANSEC) $(LN) $(CATDIR)/$(PROGRAM).$(MANSEC) $(CATDIR)/$(ALIAS).$(MANSEC) $(CHMOD) a+r-x $(CATDIR)/$(ALIAS).$(MANSEC) compman: catman -$(RM) $(CATDIR)/$(ALIAS).$(MANSEC) compress -f $(CATDIR)/$(PROGRAM).$(MANSEC) -$(RM) $(CATDIR)/$(ALIAS).$(MANSEC).Z $(LN) $(CATDIR)/$(PROGRAM).$(MANSEC).Z $(CATDIR)/$(ALIAS).$(MANSEC).Z compman-b: catman-b -$(RM) $(CATDIR)/$(ALIAS).$(MANSEC) compress -f $(CATDIR)/$(PROGRAM).$(MANSEC) -$(RM) $(CATDIR)/$(ALIAS).$(MANSEC).Z $(LN) $(CATDIR)/$(PROGRAM).$(MANSEC).Z $(CATDIR)/$(ALIAS).$(MANSEC).Z jcatman: catman $(PROGRAM).$(MANSEC)c $(INSTALL) $(PROGRAM).$(MANSEC)c $(JCATDIR)/$(PROGRAM).$(MANSEC) $(CHMOD) a+r-x $(JCATDIR)/$(PROGRAM).$(MANSEC) -$(RM) $(JCATDIR)/$(ALIAS).$(MANSEC) $(LN) $(JCATDIR)/$(PROGRAM).$(MANSEC) $(JCATDIR)/$(ALIAS).$(MANSEC) $(CHMOD) a+r-x $(JCATDIR)/$(ALIAS).$(MANSEC) jcatman-b: catman-b $(PROGRAM).doc $(INSTALL) $(PROGRAM).doc $(JCATDIR)/$(PROGRAM).$(MANSEC) $(CHMOD) a+r-x $(JCATDIR)/$(PROGRAM).$(MANSEC) -$(RM) $(JCATDIR)/$(ALIAS).$(MANSEC) $(LN) $(JCATDIR)/$(PROGRAM).$(MANSEC) $(JCATDIR)/$(ALIAS).$(MANSEC) $(CHMOD) a+r-x $(JCATDIR)/$(ALIAS).$(MANSEC) jcompman: compman jcatman -$(RM) $(JCATDIR)/$(ALIAS).$(MANSEC) compress -f $(JCATDIR)/$(PROGRAM).$(MANSEC) -$(RM) $(JCATDIR)/$(ALIAS).$(MANSEC).Z $(LN) $(JCATDIR)/$(PROGRAM).$(MANSEC).Z $(JCATDIR)/$(ALIAS).$(MANSEC).Z jcompman-b: compman-b jcatman-b -$(RM) $(JCATDIR)/$(ALIAS).$(MANSEC) compress -f $(JCATDIR)/$(PROGRAM).$(MANSEC) -$(RM) $(JCATDIR)/$(ALIAS).$(MANSEC).Z $(LN) $(JCATDIR)/$(PROGRAM).$(MANSEC).Z $(JCATDIR)/$(ALIAS).$(MANSEC).Z ############################################################ # to make dependency depend: $(SRC) config.h kanji.h funcno.h [ -d $(DEPDIR) ] || mkdir $(DEPDIR) for f in $(SRC); do \ sed -e 's/^\(# *\)include "\(.*\).h"/\1include "_\2.h"/' \ $${f} > $(DEPDIR)/$${f}; \ done for f in $(SSRC); do \ $(RM) $(DEPDIR)/s$${f}; \ $(LN) $(DEPDIR)/$${f} $(DEPDIR)/s$${f}; \ done for f in $(BSRC); do \ $(RM) $(DEPDIR)/b$${f} && \ $(LN) $(DEPDIR)/$${f} $(DEPDIR)/b$${f}; \ done for f in $(TSRC); do \ $(RM) $(DEPDIR)/t$${f} && \ $(LN) $(DEPDIR)/$${f} $(DEPDIR)/t$${f}; \ done for f in $(HEADER) config.h kanji.h funcno.h version.h; do \ sed -e 's/^\(# *\)include "\(.*\).h"/\1include "_\2.h"/' \ $${f} > $(DEPDIR)/_$${f}; \ done $(CP) Makefile.in Makefile.tmp $(DEPDIR) $(CP) Makefile.tmp $(DEPDIR)/Makefile.sh $(CP) Makefile.tmp $(DEPDIR)/Makefile.bsh $(CP) Makefile.tmp $(DEPDIR)/Makefile.nsh $(CP) Makefile.tmp $(DEPDIR)/Makefile.tr cd $(DEPDIR); makedepend \ -s "# DO NOT DELETE THIS LINE -- make depend depends on it." \ -f Makefile.tmp -- $(FDCFLAGS) -- $(SRC) cd $(DEPDIR); makedepend \ -s "# DO NOT DELETE THIS LINE -- make depend depends on it." \ -f Makefile.sh -- $(SHCFLAGS) -- \ `for f in $(SSRC); do echo s$${f}; done` cd $(DEPDIR); makedepend \ -s "# DO NOT DELETE THIS LINE -- make depend depends on it." \ -f Makefile.bsh -- $(BSHCFLAGS) -- \ `for f in $(BSRC); do echo b$${f}; done` cd $(DEPDIR); makedepend \ -s "# DO NOT DELETE THIS LINE -- make depend depends on it." \ -f Makefile.tr -- $(HOSTCFLAGS) -- \ `for f in $(TSRC); do echo t$${f}; done` $(SED) -e '/^# DO NOT DELETE THIS LINE/,$$d' $(DEPDIR)/Makefile.in \ > Makefile.in $(ECHO) "# DO NOT DELETE THIS LINE -- make depend depends on it." \ >> Makefile.in $(SED) -e '1,/^# DO NOT DELETE THIS LINE/d' \ -e 's/^\(........\).*\.o/\1.o/' \ -e 's/\/[^ ]* *//g' \ -e 's/\.o/\$$(OBJ)/g' \ -e 's/_\([^ ]*.h\)/\1/g' \ -e 's/ *$$//' \ -e '/: *$$/d' $(DEPDIR)/Makefile.tmp >> Makefile.in $(SED) -e '1,/^# DO NOT DELETE THIS LINE/d' \ -e 's/^\(........\).*\.o/\1.o/' \ -e 's/\/[^ ]* *//g' \ -e 's/\.o/\$$(OBJ)/g' \ -e 's/_\([^ ]*.h\)/\1/g' \ -e 's/ *$$//' \ -e '/: *$$/d' $(DEPDIR)/Makefile.sh >> Makefile.in $(SED) -e '1,/^# DO NOT DELETE THIS LINE/d' \ -e 's/^\(........\).*\.o/\1.o/' \ -e 's/\/[^ ]* *//g' \ -e 's/\.o/\$$(OBJ)/g' \ -e 's/_\([^ ]*.h\)/\1/g' \ -e 's/ *$$//' \ -e '/: *$$/d' $(DEPDIR)/Makefile.bsh >> Makefile.in $(SED) -e '1,/^# DO NOT DELETE THIS LINE/d' \ -e 's/^\(........\).*\.o/\1.o/' \ -e 's/\/[^ ]* *//g' \ -e 's/\.o/\$$(OBJ)/g' \ -e 's/_\([^ ]*.h\)/\1/g' \ -e 's/ *$$//' \ -e '/: *$$/d' $(DEPDIR)/Makefile.tr >> Makefile.in -rm -rf $(DEPDIR) ############################################################ # to make configuration file manually config: Configur expfunc.c -if ($(ECHO) 't() { echo $1; }; t test' | $(SHELL) >/dev/null 2>&1); then \ $(SED) -e "2,3d" -e "s:__cc__:__CC__:" Configur \ | $(SHELL) > config.h; \ elif $(MAKE) -f Makefile.tmp expfunc$(EXE); then \ $(SED) -e "2,3d" -e "s:__cc__:__CC__:" Configur \ | ./expfunc$(EXE) | $(SHELL) > config.h; \ fi config.h: config.hin $(CP) config.hin config.h expfunc$(EXE): expfunc$(OBJ) $(HOSTCC) $(HOSTCFLAGS) $(CPPFLAGS) __LNK__ expfunc$(OBJ) __RENAME__ $@ expfunc __AOUT2EXE__ expfunc __REMOVE__ expfunc expfunc$(OBJ): expfunc.c $(HOSTCC) $(HOSTCFLAGS) $(CPPFLAGS) -c __OUT__ $*.c ############################################################ # sample program for pseudo system(3) sh: fdsh$(EXE) fdsh$(EXE): $(SOBJ1) $(SOBJ2) $(SARGS) $(CC) __SHMEM__ __LNK__ __SOBJLIST__ $(SLDFLAGS) __RENAME__ $@ fdsh __AOUT2EXE__ fdsh __REMOVE__ fdsh $(SARGS): $(SOBJ1) $(SOBJ2) @$(ECHO) $(SOBJ1) > $(SARGS) @$(ECHO) $(SOBJ2) >> $(SARGS) ssystem$(OBJ): system.c $(CC) $(SHCFLAGS) -c __OUT__ system.c sposixsh$(OBJ): posixsh.c $(CC) $(SHCFLAGS) -c __OUT__ posixsh.c sdoscom$(OBJ): doscom.c $(CC) $(SHCFLAGS) -c __OUT__ doscom.c spathnam$(OBJ): pathname.c $(CC) $(SHCFLAGS) -c __OUT__ pathname.c sprintf$(OBJ): printf.c $(CC) $(SHCFLAGS) -c __OUT__ printf.c stermio$(OBJ): termio.c $(CC) $(SHCFLAGS) -c __OUT__ termio.c ############################################################ # Bourne shell bsh: fdbsh$(EXE) fdbsh$(EXE): $(BOBJ) $(CC) __BSHMEM__ __LNK__ $(BOBJ) $(SLDFLAGS) __RENAME__ $@ fdbsh __AOUT2EXE__ fdbsh __REMOVE__ fdbsh bsystem$(OBJ): system.c $(CC) $(BSHCFLAGS) -c __OUT__ system.c bdoscom$(OBJ): doscom.c $(CC) $(BSHCFLAGS) -c __OUT__ doscom.c bpathnam$(OBJ): pathname.c $(CC) $(BSHCFLAGS) -c __OUT__ pathname.c bprintf$(OBJ): printf.c $(CC) $(BSHCFLAGS) -c __OUT__ printf.c btermio$(OBJ): termio.c $(CC) $(BSHCFLAGS) -c __OUT__ termio.c ############################################################ # for programer's maintenance tar: $(SOURCES) tar cvf $(TITLE)$(VERSION).tar $(SOURCES) compress -f $(TITLE)$(VERSION).tar gtar: $(SOURCES) tar cvf $(TITLE)$(VERSION).tar $(SOURCES) gzip -f $(TITLE)$(VERSION).tar shtar: $(SHSOURCES) (VER=`date '+%y%m%d'`; \ tar cvf $(TITLE)sh-$$VER.tar $(SHSOURCES); \ gzip -f $(TITLE)sh-$$VER.tar) lzh: $(SOURCES) -$(RM) $(TITLE)$(VERSION).lzh lha a $(TITLE)$(VERSION).lzh $(SOURCES) shar: $(SOURCES) -$(RM) $(TITLE)$(VERSION).shar.[0-9][0-9] shar -L50 -apc -n $(TITLE)$(VERSION) -o $(TITLE)$(VERSION).shar \ -T $(SRCS) -C $(JSRCS) ipk: $(PROGRAM)$(EXE) $(TABLES) -[ -d $(IPKWDIR)/$(BINDIR) ] || mkdir -p $(IPKWDIR)/$(BINDIR) -[ -d $(IPKWDIR)/__DATADIR__ ] || mkdir -p $(IPKWDIR)/__DATADIR__ -[ -d $(IPKWDIR)/$(CONFDIR) ] || mkdir -p $(IPKWDIR)/$(CONFDIR) -[ -d $(IPKWDIR)/CONTROL ] || mkdir -p $(IPKWDIR)/CONTROL -[ -d $(IPKTDIR) ] || mkdir -p $(IPKTDIR) $(CP) -p $(PROGRAM)$(EXE) $(IPKWDIR)/$(BINDIR) -[ -z "$(STRIP)" ] || $(STRIP) $(IPKWDIR)/$(BINDIR)/$(PROGRAM)$(EXE) $(CHMOD) a+rx $(IPKWDIR)/$(BINDIR)/$(PROGRAM)$(EXE) -$(RM) $(IPKWDIR)/$(BINDIR)/$(ALIAS)$(EXE) $(LN) $(IPKWDIR)/$(BINDIR)/$(PROGRAM)$(EXE) \ $(IPKWDIR)/$(BINDIR)/$(ALIAS)$(EXE) $(CHMOD) a+rx $(IPKWDIR)/$(BINDIR)/$(ALIAS)$(EXE) $(SED) -e 's:#TMPDIR=.*:TMPDIR=/home/tmp:' \ -e 's:#LANGUAGE=.*:LANGUAGE=euc:' \ -e 's:#INPUTKCODE=.*:INPUTKCODE=euc:' \ -e 's:#FNAMEKCODE=.*:FNAMEKCODE=utf8:' \ -e '/# launcher definition/,/^$$/ {' \ -e '/^$$/ {' \ -e 'i \' \ -e 'launch ".tar.Z" "gzip -cd %C|tar tvf -" "%a %u/%g %s %y-%m-%d %t %*f"' \ -e 'i \' \ -e 'launch ".taZ" "gzip -cd %C|tar tvf -" "%a %u/%g %s %y-%m-%d %t %*f"' \ -e 'i \' \ -e 'launch ".ipk" "gzip -cd %C|tar xOf - ./data.tar.gz|gzip -cd|tar tvf -" \\' \ -e 'i \' \ -e ' "%a %u/%g %s %y-%m-%d %t %*f"' \ -e 'i \' \ -e 'launch ".deb" "ar -p %C data.tar.gz|gzip -cd|tar tvf -" \\' \ -e 'i \' \ -e ' "%a %u/%g %s %y-%m-%d %t %*f"' \ -e '}' \ -e '}' \ -e '/# archiver definition/,/^$$/ {' \ -e '/^$$/ {' \ -e 'i \' \ -e 'arch ".tar.Z" "echo ERROR; false" "gzip -cd %C|tar xf - %TA"' \ -e 'i \' \ -e 'arch ".taZ" "echo ERROR; false" "gzip -cd %C|tar xf - %TA"' \ -e 'i \' \ -e 'arch ".ipk" "echo ERROR; false" \\' \ -e 'i \' \ -e ' "gzip -cd %C|tar xOf - ./data.tar.gz|gzip -cd|tar xf - %TA"' \ -e 'i \' \ -e 'arch ".deb" "echo ERROR; false" \\' \ -e 'i \' \ -e ' "ar -p %C data.tar.gz|gzip -cd|tar xf - %TA"' \ -e '}' \ -e '}' \ -e '$$ {' \ -e 'a \' \ -e 'if [ " $$TERM" = " vt100" -a " $$CONSOLE" = " /dev/console" ]; then' \ -e 'a \' \ -e ' keymap BS "^?"' \ -e 'a \' \ -e ' keymap DEL "\\033[3~"' \ -e 'a \' \ -e ' keymap HOME "\\033[H"' \ -e 'a \' \ -e ' keymap END "\\033[F"' \ -e 'a \' \ -e 'fi' \ -e '}' \ _fdrc > $(IPKWDIR)/$(BLDRC) $(CHMOD) a+r-x $(IPKWDIR)/$(BLDRC) -if [ -f $(UNITBL) ]; then \ cp -p $(UNITBL) $(IPKWDIR)/__DATADIR__; \ $(CHMOD) a+r-x $(IPKWDIR)/__DATADIR__/$(UNITBL); \ fi -if [ -f $(DICTTBL) ]; then \ cp -p $(DICTTBL) $(IPKWDIR)/__DATADIR__; \ $(CHMOD) a+r-x $(IPKWDIR)/__DATADIR__/$(DICTTBL); \ fi $(ECHO) "Package: fd" > $(IPKWDIR)/CONTROL/control $(ECHO) "Priority: optional" >> $(IPKWDIR)/CONTROL/control $(ECHO) "Section: extras" >> $(IPKWDIR)/CONTROL/control $(ECHO) "Maintainer: $(DIST)" >> $(IPKWDIR)/CONTROL/control $(ECHO) "Architecture: arm" >> $(IPKWDIR)/CONTROL/control $(ECHO) "Version: $(VERSION)-1" >> $(IPKWDIR)/CONTROL/control $(ECHO) "Depends: ncurses" >> $(IPKWDIR)/CONTROL/control $(ECHO) "Description: a file & directory maintenance tool." \ >> $(IPKWDIR)/CONTROL/control (cd $(IPKWDIR); tar cf ../data.tar --exclude=CONTROL .) (cd $(IPKWDIR)/CONTROL; tar cf ../../control.tar .) gzip ./data.tar mv ./data.tar.gz $(IPKTDIR) gzip ./control.tar mv ./control.tar.gz $(IPKTDIR) $(ECHO) "2.0" > $(IPKTDIR)/debian-binary (cd $(IPKTDIR); \ tar cf ../ipk.tar ./debian-binary ./data.tar.gz ./control.tar.gz) gzip ./ipk.tar mv ./ipk.tar.gz ./fd_$(VERSION)-1_arm.ipk -$(RM) -r $(IPKWDIR) $(IPKTDIR) clean: -$(RM) core -$(RM) *$(OBJ) -$(RM) funcno.h -$(RM) kanji.h -$(RM) kanjicnv$(EXE) -$(RM) expfunc$(EXE) -$(RM) mkfuncno$(EXE) -$(RM) mkunitbl$(EXE) -$(RM) mkdict$(EXE) -$(RM) mktankan$(EXE) -$(RM) fdsh$(EXE) -$(RM) fdbsh$(EXE) -$(RM) $(PROGRAM)$(EXE) -$(RM) $(PROGRAM).$(MANSEC) -$(RM) $(PROGRAM).$(MANSEC)c -$(RM) $(PROGRAM).eng -$(RM) $(PROGRAM).doc -$(RM) $(ARGS) -$(RM) $(UNITBL) -$(RM) $(DICTTXT) -$(RM) $(DICTTBL) # DO NOT DELETE THIS LINE -- make depend depends on it. main$(OBJ): fd.h main$(OBJ): machine.h config.h main$(OBJ): types.h main$(OBJ): printf.h kctype.h main$(OBJ): pathname.h term.h main$(OBJ): func.h main$(OBJ): dosdisk.h kanji.h version.h system.h main$(OBJ): termio.h main$(OBJ): wait.h printf$(OBJ): machine.h config.h printf$(OBJ): printf.h printf$(OBJ): kctype.h termio$(OBJ): machine.h config.h termio$(OBJ): printf.h termio$(OBJ): termio.h term$(OBJ): machine.h config.h term$(OBJ): printf.h kctype.h term$(OBJ): termio.h term$(OBJ): term.h pathname$(OBJ): fd.h pathname$(OBJ): machine.h config.h pathname$(OBJ): types.h pathname$(OBJ): printf.h pathname$(OBJ): kctype.h pathname$(OBJ): pathname.h term.h system$(OBJ): fd.h system$(OBJ): machine.h config.h types.h system$(OBJ): printf.h system$(OBJ): kctype.h system$(OBJ): pathname.h term.h system$(OBJ): system.h system$(OBJ): termio.h system$(OBJ): wait.h system$(OBJ): termemu.h posixsh$(OBJ): fd.h posixsh$(OBJ): machine.h config.h types.h posixsh$(OBJ): printf.h posixsh$(OBJ): kctype.h posixsh$(OBJ): pathname.h term.h posixsh$(OBJ): system.h termio.h posixsh$(OBJ): wait.h posixsh$(OBJ): termemu.h doscom$(OBJ): fd.h doscom$(OBJ): machine.h config.h types.h doscom$(OBJ): printf.h doscom$(OBJ): kctype.h doscom$(OBJ): pathname.h term.h doscom$(OBJ): system.h termio.h doscom$(OBJ): wait.h log$(OBJ): fd.h log$(OBJ): machine.h config.h log$(OBJ): types.h log$(OBJ): printf.h kctype.h log$(OBJ): pathname.h term.h log$(OBJ): func.h log$(OBJ): dosdisk.h dosemu$(OBJ): fd.h dosemu$(OBJ): machine.h config.h types.h dosemu$(OBJ): printf.h dosemu$(OBJ): kctype.h dosemu$(OBJ): pathname.h term.h termio.h dosemu$(OBJ): func.h dosemu$(OBJ): dosdisk.h dosdisk$(OBJ): machine.h config.h dosdisk$(OBJ): dosdisk.h dosdisk$(OBJ): kctype.h unixemu$(OBJ): fd.h unixemu$(OBJ): machine.h config.h types.h unixemu$(OBJ): printf.h unixemu$(OBJ): kctype.h unixemu$(OBJ): pathname.h term.h termio.h unixemu$(OBJ): func.h unixemu$(OBJ): dosdisk.h unixemu$(OBJ): unixdisk.h unixemu.h unixdisk$(OBJ): machine.h config.h unixdisk$(OBJ): unixdisk.h unixdisk$(OBJ): termio.h unixdisk$(OBJ): unixemu.h unixdisk$(OBJ): dosdisk.h unixdisk$(OBJ): kctype.h libc$(OBJ): fd.h libc$(OBJ): machine.h config.h types.h libc$(OBJ): printf.h libc$(OBJ): kctype.h libc$(OBJ): pathname.h term.h func.h libc$(OBJ): dosdisk.h kanji.h system.h termio.h libc$(OBJ): wait.h libc$(OBJ): termemu.h file$(OBJ): fd.h file$(OBJ): machine.h config.h types.h file$(OBJ): printf.h file$(OBJ): kctype.h file$(OBJ): pathname.h term.h termio.h file$(OBJ): func.h file$(OBJ): dosdisk.h kanji.h apply$(OBJ): fd.h apply$(OBJ): machine.h config.h types.h apply$(OBJ): printf.h apply$(OBJ): kctype.h apply$(OBJ): pathname.h term.h func.h apply$(OBJ): dosdisk.h kanji.h pty$(OBJ): fd.h pty$(OBJ): machine.h config.h pty$(OBJ): types.h pty$(OBJ): printf.h kctype.h pty$(OBJ): pathname.h term.h pty$(OBJ): termio.h termemu$(OBJ): fd.h termemu$(OBJ): machine.h config.h termemu$(OBJ): types.h termemu$(OBJ): printf.h termemu$(OBJ): kctype.h termemu$(OBJ): pathname.h term.h termemu$(OBJ): func.h termemu$(OBJ): dosdisk.h kanji.h termemu.h system.h termemu$(OBJ): termio.h termemu$(OBJ): wait.h frontend$(OBJ): fd.h frontend$(OBJ): machine.h config.h frontend$(OBJ): types.h frontend$(OBJ): printf.h frontend$(OBJ): kctype.h frontend$(OBJ): pathname.h term.h funcno.h func.h frontend$(OBJ): dosdisk.h kanji.h termemu.h roman.h frontend$(OBJ): system.h termio.h frontend$(OBJ): wait.h backend$(OBJ): fd.h backend$(OBJ): machine.h config.h backend$(OBJ): types.h backend$(OBJ): printf.h backend$(OBJ): kctype.h backend$(OBJ): pathname.h term.h backend$(OBJ): termio.h backend$(OBJ): func.h backend$(OBJ): dosdisk.h backend$(OBJ): termemu.h system.h wait.h parse$(OBJ): fd.h parse$(OBJ): machine.h config.h parse$(OBJ): types.h parse$(OBJ): printf.h kctype.h parse$(OBJ): pathname.h term.h parse$(OBJ): func.h parse$(OBJ): dosdisk.h system.h termio.h parse$(OBJ): wait.h builtin$(OBJ): fd.h builtin$(OBJ): machine.h config.h builtin$(OBJ): types.h builtin$(OBJ): printf.h builtin$(OBJ): kctype.h builtin$(OBJ): pathname.h term.h func.h builtin$(OBJ): dosdisk.h funcno.h kanji.h system.h builtin$(OBJ): termio.h builtin$(OBJ): wait.h builtin$(OBJ): termemu.h roman.h shell$(OBJ): fd.h shell$(OBJ): machine.h config.h types.h shell$(OBJ): printf.h shell$(OBJ): kctype.h shell$(OBJ): pathname.h term.h func.h shell$(OBJ): dosdisk.h kanji.h system.h termio.h shell$(OBJ): wait.h shell$(OBJ): termemu.h kanji$(OBJ): fd.h kanji$(OBJ): machine.h config.h types.h kanji$(OBJ): printf.h kanji$(OBJ): kctype.h kanji$(OBJ): pathname.h term.h termio.h kanji$(OBJ): func.h kanji$(OBJ): dosdisk.h input$(OBJ): fd.h input$(OBJ): machine.h config.h input$(OBJ): types.h input$(OBJ): printf.h kctype.h input$(OBJ): pathname.h term.h input$(OBJ): func.h input$(OBJ): dosdisk.h kanji.h system.h termio.h input$(OBJ): wait.h ime$(OBJ): fd.h ime$(OBJ): machine.h config.h ime$(OBJ): types.h ime$(OBJ): printf.h kctype.h ime$(OBJ): pathname.h term.h ime$(OBJ): func.h ime$(OBJ): dosdisk.h kanji.h wait.h ime$(OBJ): roman.h termemu.h dict$(OBJ): fd.h dict$(OBJ): machine.h config.h types.h dict$(OBJ): printf.h dict$(OBJ): kctype.h dict$(OBJ): pathname.h term.h termio.h dict$(OBJ): func.h dict$(OBJ): dosdisk.h roman.h dict$(OBJ): hinsi.h roman$(OBJ): machine.h config.h roman$(OBJ): printf.h roman$(OBJ): kctype.h roman$(OBJ): roman.h info$(OBJ): fd.h info$(OBJ): machine.h info$(OBJ): config.h types.h info$(OBJ): printf.h kctype.h info$(OBJ): pathname.h term.h info$(OBJ): funcno.h kanji.h rockridg$(OBJ): fd.h rockridg$(OBJ): machine.h config.h rockridg$(OBJ): types.h rockridg$(OBJ): printf.h rockridg$(OBJ): kctype.h rockridg$(OBJ): pathname.h term.h func.h rockridg$(OBJ): dosdisk.h tree$(OBJ): fd.h tree$(OBJ): machine.h config.h tree$(OBJ): types.h tree$(OBJ): printf.h kctype.h tree$(OBJ): pathname.h term.h tree$(OBJ): func.h tree$(OBJ): dosdisk.h kanji.h archive$(OBJ): fd.h archive$(OBJ): machine.h config.h archive$(OBJ): types.h archive$(OBJ): printf.h archive$(OBJ): kctype.h archive$(OBJ): pathname.h term.h func.h archive$(OBJ): dosdisk.h kanji.h system.h termio.h archive$(OBJ): wait.h custom$(OBJ): fd.h custom$(OBJ): machine.h config.h types.h custom$(OBJ): printf.h custom$(OBJ): kctype.h custom$(OBJ): pathname.h term.h func.h custom$(OBJ): dosdisk.h funcno.h kanji.h system.h custom$(OBJ): termio.h custom$(OBJ): wait.h command$(OBJ): fd.h command$(OBJ): machine.h config.h command$(OBJ): types.h command$(OBJ): printf.h command$(OBJ): kctype.h command$(OBJ): pathname.h term.h func.h command$(OBJ): dosdisk.h funcno.h kanji.h system.h command$(OBJ): termio.h command$(OBJ): wait.h command$(OBJ): termemu.h functabl.h browse$(OBJ): fd.h browse$(OBJ): machine.h config.h browse$(OBJ): types.h browse$(OBJ): printf.h kctype.h browse$(OBJ): pathname.h term.h browse$(OBJ): func.h browse$(OBJ): dosdisk.h funcno.h kanji.h termemu.h mkunitbl$(OBJ): machine.h config.h mkdict$(OBJ): machine.h config.h mkdict$(OBJ): printf.h mkdict$(OBJ): kctype.h mkdict$(OBJ): roman.h hinsi.h mktankan$(OBJ): machine.h config.h mktankan$(OBJ): printf.h mktankan$(OBJ): kctype.h mktankan$(OBJ): roman.h kanjicnv$(OBJ): machine.h config.h expfunc$(OBJ): machine.h config.h mkmfsed$(OBJ): fd.h mkmfsed$(OBJ): machine.h config.h mkmfsed$(OBJ): types.h mkmfsed$(OBJ): printf.h mkmfsed$(OBJ): kctype.h mkmfsed$(OBJ): pathname.h term.h mkmfsed$(OBJ): version.h mkfuncno$(OBJ): fd.h mkfuncno$(OBJ): machine.h config.h mkfuncno$(OBJ): types.h mkfuncno$(OBJ): printf.h mkfuncno$(OBJ): kctype.h mkfuncno$(OBJ): pathname.h term.h functabl.h sprintf$(OBJ): machine.h config.h sprintf$(OBJ): printf.h sprintf$(OBJ): kctype.h stermio$(OBJ): machine.h config.h stermio$(OBJ): printf.h stermio$(OBJ): termio.h spathnam$(OBJ): machine.h config.h spathnam$(OBJ): printf.h spathnam$(OBJ): kctype.h spathnam$(OBJ): pathname.h ssystem$(OBJ): machine.h config.h ssystem$(OBJ): printf.h ssystem$(OBJ): kctype.h ssystem$(OBJ): pathname.h ssystem$(OBJ): system.h termio.h ssystem$(OBJ): wait.h sposixsh$(OBJ): machine.h config.h sposixsh$(OBJ): printf.h sposixsh$(OBJ): kctype.h sposixsh$(OBJ): pathname.h sposixsh$(OBJ): system.h termio.h sposixsh$(OBJ): wait.h sdoscom$(OBJ): machine.h config.h sdoscom$(OBJ): printf.h sdoscom$(OBJ): kctype.h sdoscom$(OBJ): pathname.h sdoscom$(OBJ): system.h termio.h sdoscom$(OBJ): wait.h bprintf$(OBJ): machine.h config.h bprintf$(OBJ): printf.h bprintf$(OBJ): kctype.h btermio$(OBJ): machine.h config.h btermio$(OBJ): printf.h btermio$(OBJ): termio.h bpathnam$(OBJ): machine.h config.h bpathnam$(OBJ): printf.h bpathnam$(OBJ): kctype.h bpathnam$(OBJ): pathname.h bsystem$(OBJ): machine.h config.h bsystem$(OBJ): printf.h bsystem$(OBJ): kctype.h bsystem$(OBJ): pathname.h bsystem$(OBJ): system.h termio.h bsystem$(OBJ): wait.h bdoscom$(OBJ): machine.h config.h bdoscom$(OBJ): printf.h bdoscom$(OBJ): kctype.h bdoscom$(OBJ): pathname.h bdoscom$(OBJ): system.h termio.h bdoscom$(OBJ): wait.h troman$(OBJ): machine.h config.h troman$(OBJ): printf.h troman$(OBJ): kctype.h troman$(OBJ): roman.h tkanji$(OBJ): machine.h config.h tkanji$(OBJ): printf.h kctype.h