File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / expat / amiga / Makefile
Revision 1.1.1.2 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Sun Jun 15 16:09:43 2014 UTC (10 years, 2 months ago) by misho
Branches: expat, MAIN
CVS tags: v2_1_0, HEAD
expat 2.1.0

    1: #
    2: # Makefile for AmigaOS
    3: #
    4: 
    5: .PHONY: help all check clean package
    6: .PHONY: clib2 newlib library so
    7: 
    8: vpath %.c ../lib ../examples ../xmlwf ../tests ../tests/benchmark
    9: vpath %.h ../lib ../tests
   10: 
   11: #############################################################################
   12: 
   13: help:
   14: 	@echo "Requires:"
   15: 	@echo " AmigaOS 4.x"
   16: 	@echo " SDK 53.13"
   17: 	@echo ""
   18: 	@echo "Targets:"
   19: 	@echo " all     - make libraries, xmlwf, examples and runs tests"
   20: 	@echo " install - install expat libraries and tools into SDK"
   21: 	@echo " clean   - clean object files"
   22: 	@echo " check   - run all the tests"
   23: 	@echo " package - prepare distribution archive"
   24: 
   25: all: clib2 newlib library so check
   26: 
   27: clib2: clib2/libexpat.a clib2/xmlwf clib2/elements clib2/outline clib2/runtests clib2/benchmark
   28: 
   29: newlib: newlib/libexpat.a newlib/xmlwf newlib/elements newlib/outline newlib/runtests newlib/benchmark
   30: 
   31: library: libs/expat.library libs/xmlwf libs/elements libs/outline libs/runtests libs/benchmark
   32: 
   33: so: so/libexpat.so so/xmlwf so/elements so/outline so/runtests so/benchmark
   34: 
   35: check: clib2/runtests newlib/runtests libs/runtests so/runtests
   36: 	clib2/runtests
   37: 	newlib/runtests
   38: 	libs/runtests
   39: 	so/runtests
   40: 
   41: clean:
   42: 	-delete clib2/#?.o quiet
   43: 	-delete newlib/#?.o quiet
   44: 	-delete libs/#?.o quiet
   45: 	-delete so/#?.o quiet
   46: 
   47: package:
   48: 	$(MAKE) all
   49: 	-delete T:expat all force quiet
   50: 	makedir all T:expat/Workbench/Libs
   51: 	copy clone libs/expat.library T:expat/Workbench/Libs
   52: 	makedir all T:expat/Workbench/SObjs
   53: 	copy clone so/libexpat.so T:expat/Workbench/SObjs
   54: 	makedir all T:expat/SDK/Local/C
   55: 	copy clone libs/xmlwf T:expat/SDK/Local/C
   56: 	makedir all T:expat/SDK/Local/clib2/lib
   57: 	copy clone clib2/libexpat.a T:expat/SDK/Local/clib2/lib
   58: 	makedir all T:expat/SDK/Local/newlib/lib
   59: 	copy clone newlib/libexpat.a T:expat/SDK/Local/newlib/lib
   60: 	makedir all T:expat/SDK/Local/common/include
   61: 	copy clone /lib/expat.h /lib/expat_external.h T:expat/SDK/Local/common/include
   62: 	makedir all T:expat/SDK/Include/include_h/inline4
   63: 	copy clone include/inline4/expat.h T:expat/SDK/Include/include_h/inline4
   64: 	makedir all T:expat/SDK/Include/include_h/interfaces
   65: 	copy clone include/interfaces/expat.h T:expat/SDK/Include/include_h/interfaces
   66: 	makedir all T:expat/SDK/Include/include_h/libraries
   67: 	copy clone include/libraries/expat.h T:expat/SDK/Include/include_h/libraries
   68: 	makedir all T:expat/SDK/Include/include_h/proto
   69: 	copy clone include/proto/expat.h T:expat/SDK/Include/include_h/proto
   70: 	makedir all T:expat/SDK/Documentation/Libs/Expat
   71: 	copy clone /COPYING T:expat/SDK/Documentation/Libs/Expat
   72: 	copy clone /README T:expat/SDK/Documentation/Libs/Expat
   73: 	copy clone README.txt T:expat/SDK/Documentation/Libs/Expat/README.AmigaOS
   74: 	-delete expat.lha
   75: 	lha -r a expat.lha T:expat
   76: 
   77: #############################################################################
   78: 
   79: CC         := gcc
   80: LIBTOOL    := ar
   81: STRIP      := strip
   82: 
   83: CFLAGS     := -DNDEBUG -O3
   84: LTFLAGS    := -crs
   85: STRIPFLAGS := -R.comment
   86: 
   87: #############################################################################
   88: 
   89: clib2/libexpat.a: clib2/xmlparse.o clib2/xmltok.o clib2/xmlrole.o
   90: 	$(LIBTOOL) $(LTFLAGS) $@ $^
   91: 	protect $@ -e
   92: 
   93: clib2/xmlparse.o: xmlparse.c expat.h xmlrole.h xmltok.h \
   94: 	expat_external.h internal.h amigaconfig.h
   95: 
   96: clib2/xmlrole.o: xmlrole.c ascii.h xmlrole.h expat_external.h \
   97: 	internal.h amigaconfig.h
   98: 
   99: clib2/xmltok.o: xmltok.c xmltok_impl.c xmltok_ns.c ascii.h asciitab.h \
  100: 	iasciitab.h latin1tab.h nametab.h utf8tab.h xmltok.h xmltok_impl.h \
  101: 	expat_external.h internal.h amigaconfig.h
  102: 
  103: #############################################################################
  104: 
  105: clib2/xmlwf: clib2/xmlwf.o clib2/xmlfile.o clib2/codepage.o clib2/readfilemap.o
  106: 	$(CC) -mcrt=clib2 $^ -o $@ clib2/libexpat.a
  107: 	$(STRIP) $(STRIPFLAGS) $@
  108: 
  109: clib2/xmlwf.o: xmlwf.c
  110: 
  111: clib2/xmlfile.o: xmlfile.c
  112: 
  113: clib2/codepage.o: codepage.c
  114: 
  115: clib2/readfilemap.o: readfilemap.c
  116: 
  117: #############################################################################
  118: 
  119: clib2/elements: clib2/elements.o
  120: 	$(CC) -mcrt=clib2 $^ -o $@ clib2/libexpat.a
  121: 	$(STRIP) $(STRIPFLAGS) $@
  122: 
  123: clib2/elements.o: elements.c
  124: 
  125: #############################################################################
  126: 
  127: clib2/outline: clib2/outline.o
  128: 	$(CC) -mcrt=clib2 $^ -o $@ clib2/libexpat.a
  129: 	$(STRIP) $(STRIPFLAGS) $@
  130: 
  131: clib2/outline.o: outline.c
  132: 
  133: #############################################################################
  134: 
  135: clib2/runtests: clib2/runtests.o clib2/chardata.o clib2/minicheck.o
  136: 	$(CC) -mcrt=clib2 $^ -o $@ clib2/libexpat.a
  137: 
  138: clib2/chardata.o: chardata.c chardata.h
  139: 
  140: clib2/minicheck.o: minicheck.c minicheck.h
  141: 
  142: clib2/runtests.o: runtests.c chardata.h
  143: 
  144: #############################################################################
  145: 
  146: clib2/benchmark: clib2/benchmark.o
  147: 	$(CC) -mcrt=clib2 $^ -o $@ clib2/libexpat.a -lm
  148: 
  149: clib2/benchmark.o: benchmark.c
  150: 
  151: #############################################################################
  152: 
  153: newlib/libexpat.a: newlib/xmlparse.o newlib/xmltok.o newlib/xmlrole.o
  154: 	$(LIBTOOL) $(LTFLAGS) $@ $^
  155: 	protect $@ -e
  156: 
  157: newlib/xmlparse.o: xmlparse.c expat.h xmlrole.h xmltok.h \
  158: 	expat_external.h internal.h amigaconfig.h
  159: 
  160: newlib/xmlrole.o: xmlrole.c ascii.h xmlrole.h expat_external.h \
  161: 	internal.h amigaconfig.h
  162: 
  163: newlib/xmltok.o: xmltok.c xmltok_impl.c xmltok_ns.c ascii.h asciitab.h \
  164: 	iasciitab.h latin1tab.h nametab.h utf8tab.h xmltok.h xmltok_impl.h \
  165: 	expat_external.h internal.h amigaconfig.h
  166: 
  167: #############################################################################
  168: 
  169: newlib/xmlwf: newlib/xmlwf.o newlib/xmlfile.o newlib/codepage.o newlib/readfilemap.o
  170: 	$(CC) -mcrt=newlib $^ -o $@ newlib/libexpat.a
  171: 	$(STRIP) $(STRIPFLAGS) $@
  172: 
  173: newlib/xmlwf.o: xmlwf.c
  174: 
  175: newlib/xmlfile.o: xmlfile.c
  176: 
  177: newlib/codepage.o: codepage.c
  178: 
  179: newlib/readfilemap.o: readfilemap.c
  180: 
  181: #############################################################################
  182: 
  183: newlib/elements: newlib/elements.o
  184: 	$(CC) -mcrt=newlib $^ -o $@ newlib/libexpat.a
  185: 	$(STRIP) $(STRIPFLAGS) $@
  186: 
  187: newlib/elements.o: elements.c
  188: 
  189: #############################################################################
  190: 
  191: newlib/outline: newlib/outline.o
  192: 	$(CC) -mcrt=newlib $^ -o $@ newlib/libexpat.a
  193: 	$(STRIP) $(STRIPFLAGS) $@
  194: 
  195: newlib/outline.o: outline.c
  196: 
  197: #############################################################################
  198: 
  199: newlib/runtests: newlib/runtests.o newlib/chardata.o newlib/minicheck.o
  200: 	$(CC) -mcrt=newlib $^ -o $@ newlib/libexpat.a
  201: 
  202: newlib/chardata.o: chardata.c chardata.h
  203: 
  204: newlib/minicheck.o: minicheck.c minicheck.h
  205: 
  206: newlib/runtests.o: runtests.c chardata.h
  207: 
  208: #############################################################################
  209: 
  210: newlib/benchmark: newlib/benchmark.o
  211: 	$(CC) -mcrt=newlib $^ -o $@ newlib/libexpat.a
  212: 
  213: newlib/benchmark.o: benchmark.c
  214: 
  215: #############################################################################
  216: 
  217: libs/expat.library: libs/expat_lib.o libs/expat_68k.o libs/expat_68k_handler_stubs.o libs/expat_vectors.o newlib/libexpat.a
  218: 	$(CC) -mcrt=newlib -nostartfiles $^ -o $@ newlib/libexpat.a -Wl,--cref,-M,-Map=$@.map
  219: 	protect $@ -e
  220: 	$(STRIP) $(STRIPFLAGS) $@
  221: 
  222: libs/expat_lib.o: expat_lib.c expat_base.h
  223: 
  224: libs/expat_68k.o: expat_68k.c expat_68k.h expat_base.h
  225: 
  226: libs/expat_68k_handler_stubs.o: expat_68k_handler_stubs.c expat_68k.h
  227: 
  228: libs/expat_vectors.o: expat_vectors.c
  229: 
  230: libs/launch.o: launch.c
  231: 
  232: #############################################################################
  233: 
  234: libs/xmlwf: libs/xmlwf.o libs/xmlfile.o libs/codepage.o libs/readfilemap.o libs/launch.o
  235: 	$(CC) -mcrt=newlib $^ -o $@
  236: 	$(STRIP) $(STRIPFLAGS) $@
  237: 
  238: libs/xmlwf.o: xmlwf.c
  239: 
  240: libs/xmlfile.o: xmlfile.c
  241: 
  242: libs/codepage.o: codepage.c
  243: 
  244: libs/readfilemap.o: readfilemap.c
  245: 
  246: #############################################################################
  247: 
  248: libs/elements: libs/elements.o libs/launch.o
  249: 	$(CC) -mcrt=newlib $^ -o $@
  250: 	$(STRIP) $(STRIPFLAGS) $@
  251: 
  252: libs/elements.o: elements.c
  253: 
  254: #############################################################################
  255: 
  256: libs/outline: libs/outline.o libs/launch.o
  257: 	$(CC) -mcrt=newlib $^ -o $@
  258: 	$(STRIP) $(STRIPFLAGS) $@
  259: 
  260: libs/outline.o: outline.c
  261: 
  262: #############################################################################
  263: 
  264: libs/runtests: libs/runtests.o libs/chardata.o libs/minicheck.o libs/launch.o
  265: 	$(CC) -mcrt=newlib $^ -o $@
  266: 
  267: libs/chardata.o: chardata.c chardata.h
  268: 
  269: libs/minicheck.o: minicheck.c minicheck.h
  270: 
  271: libs/runtests.o: runtests.c chardata.h
  272: 
  273: #############################################################################
  274: 
  275: libs/benchmark: libs/benchmark.o libs/launch.o
  276: 	$(CC) -mcrt=newlib $^ -o $@
  277: 
  278: libs/benchmark.o: benchmark.c
  279: 
  280: #############################################################################
  281: 
  282: so/libexpat.so: so/xmlparse.o so/xmltok.o so/xmlrole.o
  283: 	$(CC) -mcrt=newlib -shared -o $@ $^
  284: 	protect $@ -e
  285: 
  286: so/xmlparse.o: xmlparse.c expat.h xmlrole.h xmltok.h \
  287: 	expat_external.h internal.h amigaconfig.h
  288: 
  289: so/xmlrole.o: xmlrole.c ascii.h xmlrole.h expat_external.h \
  290: 	internal.h amigaconfig.h
  291: 
  292: so/xmltok.o: xmltok.c xmltok_impl.c xmltok_ns.c ascii.h asciitab.h \
  293: 	iasciitab.h latin1tab.h nametab.h utf8tab.h xmltok.h xmltok_impl.h \
  294: 	expat_external.h internal.h amigaconfig.h
  295: 
  296: #############################################################################
  297: 
  298: so/xmlwf: newlib/xmlwf.o newlib/xmlfile.o newlib/codepage.o newlib/readfilemap.o
  299: 	$(CC) -mcrt=newlib -use-dynld $^ -o $@ -Lso -lexpat
  300: 	$(STRIP) $(STRIPFLAGS) $@
  301: 
  302: #############################################################################
  303: 
  304: so/elements: newlib/elements.o
  305: 	$(CC) -mcrt=newlib -use-dynld $^ -o $@ -Lso -lexpat
  306: 	$(STRIP) $(STRIPFLAGS) $@
  307: 
  308: #############################################################################
  309: 
  310: so/outline: newlib/outline.o
  311: 	$(CC) -mcrt=newlib -use-dynld $^ -o $@ -Lso -lexpat
  312: 	$(STRIP) $(STRIPFLAGS) $@
  313: 
  314: #############################################################################
  315: 
  316: so/runtests: newlib/runtests.o newlib/chardata.o newlib/minicheck.o
  317: 	$(CC) -mcrt=newlib -use-dynld $^ -o $@ -Lso -lexpat
  318: 
  319: #############################################################################
  320: 
  321: so/benchmark: newlib/benchmark.o
  322: 	$(CC) -mcrt=newlib -use-dynld $^ -o $@ -Lso -lexpat
  323: 
  324: #############################################################################
  325: 
  326: clib2/%.o: %.c
  327: 	$(CC) -mcrt=clib2 $(CFLAGS) -I../lib -c $< -o $@
  328: 
  329: newlib/%.o: %.c
  330: 	$(CC) -mcrt=newlib $(CFLAGS) -I../lib -c $< -o $@
  331: 
  332: libs/%.o: %.c
  333: 	$(CC) -mcrt=newlib $(CFLAGS) -D__USE_INLINE__ -I. -Iinclude -Iinclude/libraries -I../lib -c $< -o $@
  334: 
  335: so/%.o: %.c
  336: 	$(CC) -mcrt=newlib $(CFLAGS) -fPIC -I../lib -c $< -o $@

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>