|
|
1.1 ! root 1: ############################################################################### ! 2: # Instructions to Make, for compilation of ISODE PEPY processes ! 3: ############################################################################### ! 4: ! 5: ############################################################################### ! 6: # ! 7: # $Header: /f/osi/pepy/RCS/Makefile,v 7.4 90/07/27 08:47:22 mrose Exp $ ! 8: # ! 9: # ! 10: # $Log: Makefile,v $ ! 11: # Revision 7.4 90/07/27 08:47:22 mrose ! 12: # update ! 13: # ! 14: # Revision 7.3 90/07/09 14:43:06 mrose ! 15: # sync ! 16: # ! 17: # Revision 7.2 90/07/01 21:04:51 mrose ! 18: # pepsy ! 19: # ! 20: # Revision 7.1 90/01/11 18:37:02 mrose ! 21: # real-sync ! 22: # ! 23: # Revision 7.0 89/11/23 22:11:30 mrose ! 24: # Release 6.0 ! 25: # ! 26: ############################################################################### ! 27: ! 28: ############################################################################### ! 29: # ! 30: # NOTICE ! 31: # ! 32: # Acquisition, use, and distribution of this module and related ! 33: # materials are subject to the restrictions of a license agreement. ! 34: # Consult the Preface in the User's Manual for the full terms of ! 35: # this agreement. ! 36: # ! 37: ############################################################################### ! 38: ! 39: PEPYPATH= -DPEPYPATH=\".:$(PEPYDIRM)\" ! 40: ! 41: .SUFFIXES: .py .c .o ! 42: ! 43: .py.c:; ./xpepy -a PY_advise -m $(PYFLAGS) $< ! 44: ! 45: .c.o:; $(CC) $(CFLAGS) -c $*.c ! 46: ! 47: ! 48: # to prevent a lot of unnecessary re-loading ! 49: PEPYLIBES= $(TOPDIR)psap/sprintoid.o $(TOPDIR)psap/pl_tables.o \ ! 50: $(TOPDIR)psap/oid_cmp.o $(TOPDIR)psap/oid_cpy.o \ ! 51: $(TOPDIR)psap/oid_free.o \ ! 52: $(TOPDIR)compat/asprintf.o $(TOPDIR)compat/serror.o \ ! 53: $(TOPDIR)compat/sprintb.o ! 54: LIBES = $(TOPDIR)libpepsy.a $(TOPDIR)libpsap.a $(TOPDIR)libcompat.a ! 55: LLIBS = $(TOPDIR)llib-lpsap $(TOPDIR)llib-lcompat ! 56: HFILES = $(HDIR)psap.h \ ! 57: $(HDIR)manifest.h $(HDIR)general.h $(HDIR)config.h ! 58: ! 59: ! 60: ################################################################## ! 61: # Here it is... ! 62: ################################################################## ! 63: ! 64: all: pepy posy libpepy pepytest pp ! 65: inst-all: inst-pepy inst-posy inst-headers manuals # inst-libpepy ! 66: install: inst-all clean ! 67: tests: pepytest pp mpp salary hello_world bigpepytest true ! 68: -@for f in test/test*.pe; \ ! 69: do (echo pepytest $$f; pepytest < $$f); done ! 70: -@for f in test/test*.pe test/mhs/msg*.pe; \ ! 71: do (echo pp $$f; pp < $$f); done ! 72: -@for f in test/mhs/msg*.pe; \ ! 73: do (echo mpp $$f; mpp < $$f); done ! 74: -salary fritz 10 ! 75: -hello_world ! 76: -bigpepytest ! 77: lint: l-pepy l-posy l-libpepy l-pepytest l-pp l-mpp l-salary \ ! 78: l-hello_world l-bigpepytest ! 79: ! 80: ! 81: ################################################################## ! 82: # pepy ! 83: ################################################################## ! 84: ! 85: inst-pepy: $(BINDIR)pepy ! 86: ! 87: $(BINDIR)pepy: xpepy ! 88: -cp $@ zxpepy ! 89: -rm -f $@ ! 90: cp xpepy $@ ! 91: -@ls -gls $@ ! 92: -@echo "" ! 93: ! 94: pepy: xpepy ! 95: ! 96: xpepy: pepyvrsn.o $(PEPYLIBES) ! 97: $(LDCC) $(LDFLAGS) -o $@ pepy.o pepy_do.o pepy_undo.o \ ! 98: yacc.o pepy_misc.o pepyvrsn.o $(PEPYLIBES) \ ! 99: $(LSOCKET) -lm ! 100: ! 101: pepy.o: pepy.c pepy.h $(HFILES) ! 102: ! 103: pepyvrsn.c: pepy.o yacc.o pepy_do.o pepy_undo.o pepy_misc.o ! 104: @$(UTILDIR)version.sh pepy > $@ ! 105: ! 106: pepy_do.o: pepy_do.c pepy.h ! 107: ! 108: pepy_undo.o: pepy_undo.c pepy.h ! 109: ! 110: pepy_misc.o: pepy_misc.c pepy.h ! 111: ! 112: yacc.o: yacc.c lex.c pepy.h $(HFILES) ! 113: $(CC) $(CFLAGS) -c $*.c ! 114: ! 115: yacc.c: yacc.y ! 116: -@echo "expect 20 shift/reduce and 9 reduce/reduce conflicts" ! 117: yacc $(YACCFLAGS) yacc.y ! 118: mv y.tab.c $@ ! 119: ! 120: yacc.y: $(TOPDIR)pepsy/yacc.y.gnrc ! 121: $(UTILDIR)extract.sh PEPY < $? > $@ ! 122: ! 123: lex.c: lex.l ! 124: $(LEX) $(LEXFLAGS) lex.l ! 125: mv lex.yy.c $@ ! 126: ! 127: lex.l: $(TOPDIR)pepsy/lex.l.gnrc ! 128: $(UTILDIR)extract.sh PEPY < $? > $@ ! 129: ! 130: pepy.h: $(TOPDIR)pepsy/pepsy.h.gnrc ! 131: $(UTILDIR)extract.sh PEPY < $? > $@ ! 132: ! 133: l-pepy: pepy.h yacc.c lex.c pepyvrsn.c true ! 134: $(LINT) $(LFLAGS) pepy.c yacc.c pepy_do.c pepy_undo.c \ ! 135: pepy_misc.c pepyvrsn.c $(LLIBS) ! 136: ! 137: ! 138: ################################################################## ! 139: # posy ! 140: ################################################################## ! 141: ! 142: inst-posy: $(BINDIR)posy ! 143: ! 144: $(BINDIR)posy: xposy ! 145: -cp $@ zxposy ! 146: -rm -f $@ ! 147: cp xposy $@ ! 148: -@ls -gls $@ ! 149: -@echo "" ! 150: ! 151: posy: xposy ! 152: ! 153: xposy: posy.o pepy_misc.o yacc.o pepyvrsn.o $(PEPYLIBES) ! 154: $(LDCC) $(LDFLAGS) -o $@ posy.o pepy_misc.o yacc.o \ ! 155: pepyvrsn.o $(PEPYLIBES) $(LSOCKET) -lm ! 156: ! 157: posy.o: posy.c pepy.h $(HFILES) ! 158: ! 159: l-posy: yacc.c lex.c true ! 160: $(LINT) $(LFLAGS) posy.c yacc.c pepy_misc.c \ ! 161: pepyvrsn.c $(LLIBS) ! 162: ! 163: ! 164: ################################################################ ! 165: # libpepy ! 166: ################################################################ ! 167: ! 168: CFILES = py_pp.c testdebug.c ! 169: OFILES = py_pp.o testdebug.o ! 170: HEADERS = UNIV.ph UNIV-types.h ! 171: ! 172: inst-libpepy: $(LIBDIR)libpepy.a inst-headers ! 173: ! 174: $(LIBDIR)libpepy.a: libpepy.a ! 175: -rm -f $@ ! 176: cp libpepy.a $@ ! 177: @$(UTILDIR)make-lib.sh $(SYSTEM) $@ -ranlib ! 178: -@ls -gls $@ ! 179: -@echo "" ! 180: ! 181: inst-headers:; -mkdir $(PEPYDIRM) ! 182: @for h in $(HEADERS); do $(MAKE) TARGET=$$h inst-target; done ! 183: ! 184: inst-target: $(PEPYDIR)$(TARGET) ! 185: ! 186: $(PEPYDIR)$(TARGET): $(TARGET) ! 187: -cp $@ z$(TARGET) ! 188: cp $(TARGET) $@ ! 189: -@ls -gls $@ ! 190: -@echo "" ! 191: ! 192: libpepy: libpepy.a ! 193: ! 194: libpepy.a: UNIV-O $(OFILES) ! 195: -rm -f $@ ! 196: @$(UTILDIR)make-lib.sh $(SYSTEM) $(ARFLAGS) $@ $(OFILES) \ ! 197: $(UNIV-O) ! 198: -@rm -f $(TOPDIR)libpepy.a ! 199: -@$(LN) libpepy.a $(TOPDIR)libpepy.a ! 200: -@ls -l $@ ! 201: -@echo "PEPY library built normally" ! 202: ! 203: UNIV-O = UPEPY-[0-9]*.o VPEPY-[0-9]*.o ! 204: UNIV-C = UPEPY-[0-9]*.c VPEPY-[0-9]*.c ! 205: ! 206: UNIV-O: UPEPY-C VPEPY-C ! 207: @$(MAKE) `/bin/ls $(UPEPY-C) $(VPEPY-C) | sed 's/\.c$$/.o/'` ! 208: -@touch $@ ! 209: ! 210: UNIV-C: UPEPY-C VPEPY-C ! 211: ! 212: UPEPY-O = UPEPY-[0-9]*.o ! 213: UPEPY-C = UPEPY-[0-9]*.c ! 214: ! 215: UPEPY-C: $(TOPDIR)pepsy/UNIV.py xpepy ! 216: -@rm -f $(UPEPY-C) $(UPEPY-O) ! 217: ./xpepy -a PY_advise -m -A -b UPEPY $(TOPDIR)pepsy/UNIV.py ! 218: -@touch $@ ! 219: ! 220: VPEPY-O = VPEPY-[0-9]*.o ! 221: VPEPY-C = VPEPY-[0-9]*.c ! 222: ! 223: VPEPY-C: UNIV-types.py xpepy ! 224: -@rm -f $(VPEPY-C) $(VPEPY-O) ! 225: ./xpepy -a PY_advise -m -b VPEPY UNIV-types.py ! 226: -@touch $@ ! 227: ! 228: UNIV-types.h UNIV-types.py: $(TOPDIR)pepsy/UNIV.py xposy ! 229: ./xposy -f -h -m -o UNIV-types.py $(TOPDIR)pepsy/UNIV.py ! 230: ! 231: l-libpepy: $(CFILES) UNIV-C true ! 232: $(LINT) $(LFLAGS) $(CFILES) $(UNIV-C) $(LLIBS) ! 233: ! 234: testdebug.c: testdebug.py xpepy ! 235: ! 236: ! 237: py_pp.o: py_pp.c $(HDIR)psap.h $(HDIR)general.h $(HDIR)manifest.h ! 238: ! 239: ################################################################## ! 240: # pepytest ! 241: ################################################################## ! 242: ! 243: pepytest: pepytest.o libpepy.a $(LIBES) ! 244: $(LDCC) $(LDFLAGS) -o $@ pepytest.o libpepy.a $(LIBES) \ ! 245: $(LSOCKET) ! 246: ! 247: pepytest.o: pepytest.c $(HFILES) ! 248: ! 249: pepytest.c: pepytest.py xpepy ! 250: ! 251: l-pepytest: pepytest.c $(CFILES) UNIV-C true ! 252: $(LINT) $(LFLAGS) pepytest.c $(CFILES) $(UNIV-C) $(LLIBS) ! 253: ! 254: ! 255: ################################################################## ! 256: # pp ! 257: ################################################################## ! 258: ! 259: pp: pp.o libpepy.a $(LIBES) ! 260: $(LDCC) $(LDFLAGS) -o $@ pp.o libpepy.a $(LIBES) $(LSOCKET) ! 261: ! 262: pp.o: pp.c $(HFILES) ! 263: ! 264: pp.c: pp.py xpepy ! 265: ! 266: l-pp: pp.c $(CFILES) UNIV-C true ! 267: $(LINT) $(LFLAGS) pp.c $(CFILES) $(UNIV-C) $(LLIBS) ! 268: ! 269: ! 270: ################################################################## ! 271: # tests ! 272: ################################################################## ! 273: ! 274: mpp: mpp.o P1.o P2.o P3.o SFD.o T73.o EAN.o libpepy.a $(LIBES) ! 275: $(LDCC) $(LDFLAGS) -o $@ mpp.o P1.o P2.o P3.o SFD.o T73.o \ ! 276: EAN.o libpepy.a $(LIBES) $(LSOCKET) ! 277: ! 278: mpp.o: mpp.c $(HFILES) ! 279: mpp.c: mpp.py xpepy ! 280: ! 281: EAN.o: EAN.c $(HFILES) ! 282: EAN.c: EAN.py xpepy ! 283: ! 284: P1.o: P1.c $(HFILES) ! 285: P1.c: P1.py xpepy ! 286: ! 287: P2.o: P2.c $(HFILES) ! 288: P2.c: P2.py xpepy ! 289: ! 290: P3.o: P3.c $(HFILES) ! 291: P3.c: P3.py xpepy ! 292: ! 293: SFD.o: SFD.c $(HFILES) ! 294: SFD.c: SFD.py xpepy ! 295: ! 296: T73.o: T73.c $(HFILES) ! 297: T73.c: T73.py xpepy ! 298: ! 299: l-mpp: mpp.c P1.c P2.c P3.c SFD.c T73.c EAN.c $(CFILES) UNIV-C true ! 300: $(LINT) $(LFLAGS) mpp.c P1.c P2.c P3.c SFD.c T73.c EAN.c \ ! 301: $(CFILES) $(UNIV-C) $(LLIBS) ! 302: ! 303: ! 304: salary: salary.o ! 305: $(LDCC) $(LDFLAGS) -o $@ salary.o libpepy.a $(LIBES) \ ! 306: $(LSOCKET) ! 307: ! 308: salary.c: salary.py xpepy ! 309: ! 310: l-salary: salary.c $(CFILES) UNIV-C true ! 311: $(LINT) $(LFLAGS) salary.c $(CFILES) $(UNIV-C) $(LLIBS) ! 312: ! 313: ! 314: hello_world: hello_world.o ! 315: $(LDCC) $(LDFLAGS) -o $@ hello_world.o libpepy.a \ ! 316: $(LIBES) $(LSOCKET) ! 317: ! 318: hello_world.c: hello_world.py xpepy ! 319: ! 320: l-hello_world: hello_world.c $(CFILES) UNIV-C true ! 321: $(LINT) $(LFLAGS) hello_world.c $(CFILES) $(UNIV-C) $(LLIBS) ! 322: ! 323: ! 324: bigpepytest: bigpepytest.o ! 325: $(LDCC) $(LDFLAGS) -o $@ bigpepytest.o libpepy.a $(LIBES) \ ! 326: $(LSOCKET) ! 327: ! 328: bigpepytest.c: bigpepytest.py xpepy ! 329: ! 330: l-bigpepytest: bigpepytest.c $(CFILES) UNIV-C true ! 331: $(LINT) $(LFLAGS) bigpepytest.c $(CFILES) $(UNIV-C) $(LLIBS) ! 332: ! 333: ! 334: ################################################################ ! 335: # manual pages ! 336: ################################################################ ! 337: ! 338: MANUALS = pepy.1 posy.1 # libpepy.3 ! 339: ! 340: manuals:; @$(UTILDIR)inst-man.sh $(MANOPTS) $(MANUALS) ! 341: -@echo "" ! 342: ! 343: ! 344: ################################################################ ! 345: # clean ! 346: ################################################################ ! 347: ! 348: clean:; rm -f *.o *.a x* z* _* core pepy.h *yacc.y *yacc.c lex.l \ ! 349: lex.c *.ph testdebug.c UNIV-* UPEPY-* VPEPY-* \ ! 350: pepytest.c pepytest pp.c pp mpp mpp.c P1.c P2.c \ ! 351: P3.c SFD.c T73.c EAN.c pepyvrsn.c salary.c salary \ ! 352: hello_world.c hello_world bigpepytest.c bigpepytest ! 353: ! 354: grind:; iprint Makefile ! 355: tgrind -lc pepy.h pepy.c posy.c pepyvrsn.c ! 356: tgrind -ly yacc.y lex.l ! 357: tgrind -lpepy -d grindefs pepytest.py \ ! 358: mpp.py P1.py P2.py P3.py SFD.py T73.py EAN.py \ ! 359: salary.py hello_world.py bigpepytest.py ! 360: tgrind -lc $(CFILES) ! 361: @echo $(MANUALS) | \ ! 362: tr " " "\012" | \ ! 363: sed -e "s%.*%itroff -man &%" | \ ! 364: sh -ve ! 365: ! 366: true:;
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.