| | 615 | Index: src/ldc.mak |
|---|
| | 616 | =================================================================== |
|---|
| | 617 | --- src/ldc.mak (revision 0) |
|---|
| | 618 | +++ src/ldc.mak (revision 0) |
|---|
| | 619 | @@ -0,0 +1,78 @@ |
|---|
| | 620 | +# Makefile to build the composite D runtime library for Linux |
|---|
| | 621 | +# Designed to work with GNU make |
|---|
| | 622 | +# Targets: |
|---|
| | 623 | +# make |
|---|
| | 624 | +# Same as make all |
|---|
| | 625 | +# make lib |
|---|
| | 626 | +# Build the runtime library |
|---|
| | 627 | +# make doc |
|---|
| | 628 | +# Generate documentation |
|---|
| | 629 | +# make clean |
|---|
| | 630 | +# Delete unneeded files created by build process |
|---|
| | 631 | + |
|---|
| | 632 | +LIB_TARGET=libdruntime-ldc.a |
|---|
| | 633 | +DUP_TARGET=libdruntime.a |
|---|
| | 634 | +LIB_MASK=libdruntime*.a |
|---|
| | 635 | + |
|---|
| | 636 | +DIR_RT=compiler/ldc |
|---|
| | 637 | +DIR_CC=common |
|---|
| | 638 | +DIR_GC=gc/basic |
|---|
| | 639 | + |
|---|
| | 640 | +CP=cp -f |
|---|
| | 641 | +RM=rm -f |
|---|
| | 642 | +MD=mkdir -p |
|---|
| | 643 | + |
|---|
| | 644 | +CC=gcc |
|---|
| | 645 | +LC=$(AR) -qsv |
|---|
| | 646 | +DC=ldc2 |
|---|
| | 647 | + |
|---|
| | 648 | +LIB_DEST=../lib |
|---|
| | 649 | + |
|---|
| | 650 | +ADD_CFLAGS= |
|---|
| | 651 | +ADD_DFLAGS= |
|---|
| | 652 | + |
|---|
| | 653 | +targets : lib doc |
|---|
| | 654 | +all : lib doc |
|---|
| | 655 | + |
|---|
| | 656 | +###################################################### |
|---|
| | 657 | + |
|---|
| | 658 | +ALL_OBJS= |
|---|
| | 659 | + |
|---|
| | 660 | +###################################################### |
|---|
| | 661 | + |
|---|
| | 662 | +ALL_DOCS= |
|---|
| | 663 | + |
|---|
| | 664 | +###################################################### |
|---|
| | 665 | + |
|---|
| | 666 | +lib : $(ALL_OBJS) |
|---|
| | 667 | + make -C $(DIR_RT) -fldc.mak lib DC=$(DC) ADD_DFLAGS="$(ADD_DFLAGS)" ADD_CFLAGS="$(ADD_CFLAGS)" |
|---|
| | 668 | + make -C $(DIR_CC) -fldc.mak lib DC=$(DC) ADD_DFLAGS="$(ADD_DFLAGS)" ADD_CFLAGS="$(ADD_CFLAGS)" |
|---|
| | 669 | + make -C $(DIR_GC) -fldc.mak lib DC=$(DC) ADD_DFLAGS="$(ADD_DFLAGS)" ADD_CFLAGS="$(ADD_CFLAGS)" |
|---|
| | 670 | + $(RM) $(LIB_TARGET) |
|---|
| | 671 | + $(LC) $(LIB_TARGET) `find $(DIR_RT) -name "*.o" | xargs echo` |
|---|
| | 672 | + $(LC) $(LIB_TARGET) `find $(DIR_CC) -name "*.o" | xargs echo` |
|---|
| | 673 | + $(LC) $(LIB_TARGET) `find $(DIR_GC) -name "*.o" | xargs echo` |
|---|
| | 674 | + $(RM) $(DUP_TARGET) |
|---|
| | 675 | + $(CP) $(LIB_TARGET) $(DUP_TARGET) |
|---|
| | 676 | + |
|---|
| | 677 | +doc : $(ALL_DOCS) |
|---|
| | 678 | + make -C $(DIR_RT) -fldc.mak doc DC=$(DC) |
|---|
| | 679 | + make -C $(DIR_CC) -fldc.mak doc DC=$(DC) |
|---|
| | 680 | + make -C $(DIR_GC) -fldc.mak doc DC=$(DC) |
|---|
| | 681 | + |
|---|
| | 682 | +###################################################### |
|---|
| | 683 | + |
|---|
| | 684 | +clean : |
|---|
| | 685 | + find . -name "*.di" | xargs $(RM) |
|---|
| | 686 | + $(RM) $(ALL_OBJS) |
|---|
| | 687 | + $(RM) $(ALL_DOCS) |
|---|
| | 688 | + make -C $(DIR_RT) -fldc.mak clean |
|---|
| | 689 | + make -C $(DIR_CC) -fldc.mak clean |
|---|
| | 690 | + make -C $(DIR_GC) -fldc.mak clean |
|---|
| | 691 | + $(RM) $(LIB_MASK) |
|---|
| | 692 | + |
|---|
| | 693 | +install : |
|---|
| | 694 | + make -C $(DIR_RT) -fldc.mak install |
|---|
| | 695 | + make -C $(DIR_CC) -fldc.mak install |
|---|
| | 696 | + make -C $(DIR_GC) -fldc.mak install |
|---|
| | 697 | + $(CP) $(LIB_MASK) $(LIB_DEST)/. |
|---|