Changeset 2 for NEWT0/trunk/Makefile

Show
Ignore:
Timestamp:
04/06/05 21:49:58 (4 years ago)
Author:
gnue
Message:
 
Files:
1 modified

Legend:

Unmodified
Added
Removed
  • NEWT0/trunk/Makefile

    r1 r2  
    44parser = $(srcdir)/parser 
    55core = $(srcdir)/newt_core 
     6objdir = $(build)/obj 
     7yytmp = $(objdir)/yytmp 
     8tardir = $(shell basename `pwd`)_$(shell uname) 
     9docdir = $(build)/html 
    610 
    711 
     12VPATH = $(core) 
    813DEBUG = # -g 
    9 INCS = -I$(srcdir) -I$(core)/incs -I$(srcdir)/parser -I$(build) 
     14INCS = -I$(srcdir) -I$(core)/incs -I$(srcdir)/parser -I$(yytmp) 
    1015EXTLIBS =  
    1116STRIP = strip -x 
     
    1924 
    2025 
    21 MAINOBJ       = $(build)/main.o 
     26MAINOBJ       = $(objdir)/main.o 
    2227 
    23 COREOBJS      = $(build)/NewtBC.o \ 
    24                 $(build)/NewtEnv.o \ 
    25                 $(build)/NewtFile.o \ 
    26                 $(build)/NewtFns.o \ 
    27                 $(build)/NewtGC.o \ 
    28                 $(build)/NewtIO.o \ 
    29                 $(build)/NewtMem.o \ 
    30                 $(build)/NewtObj.o \ 
    31                 $(build)/NewtParser.o \ 
    32                 $(build)/NewtPrint.o \ 
    33                 $(build)/NewtStr.o \ 
    34                 $(build)/NewtVM.o 
     28COREOBJS      = $(objdir)/NewtBC.o \ 
     29                $(objdir)/NewtEnv.o \ 
     30                $(objdir)/NewtFile.o \ 
     31                $(objdir)/NewtFns.o \ 
     32                $(objdir)/NewtGC.o \ 
     33                $(objdir)/NewtIO.o \ 
     34                $(objdir)/NewtMem.o \ 
     35                $(objdir)/NewtNSOF.o \ 
     36                $(objdir)/NewtObj.o \ 
     37                $(objdir)/NewtParser.o \ 
     38                $(objdir)/NewtPrint.o \ 
     39                $(objdir)/NewtStr.o \ 
     40                $(objdir)/NewtVM.o 
    3541 
    36 PARSEROBJS    = $(build)/y.tab.o \ 
    37                 $(build)/lex.yy.o \ 
    38                 $(build)/lookup_words.o 
     42PARSEROBJS    = $(yytmp)/y.tab.o \ 
     43                $(yytmp)/lex.yy.o \ 
     44                $(objdir)/lookup_words.o 
    3945 
    4046NEWTLIBS      = $(ext)/protoFILE \ 
     
    5359 
    5460 
    55 ### mkdir build 
     61### make directory 
    5662 
    5763$(build): 
    58     mkdir -p $(build) 
     64    mkdir -p $@ 
    5965 
     66$(objdir): 
     67    mkdir -p $@ 
     68 
     69$(yytmp): 
     70    mkdir -p $@ 
    6071 
    6172### newt 
    6273 
    63 newt: $(build) $(NEWT) $(LDIMPORT) 
     74newt: $(build) $(objdir) $(yytmp) $(NEWT) $(LDIMPORT) 
    6475 
    6576$(NEWT): $(MAINOBJ) $(PARSEROBJS) $(COREOBJS) 
     
    7687### PARSER 
    7788 
    78 $(build)/y.tab.c $(build)/y.tab.h: $(parser)/newt.y 
     89$(yytmp)/y.tab.c $(yytmp)/y.tab.h: $(parser)/newt.y 
    7990    $(YACC) -o $@ $< 
    8091 
    81 $(build)/lex.yy.c: $(parser)/newt.l $(build)/y.tab.h 
     92$(yytmp)/lex.yy.c: $(parser)/newt.l $(yytmp)/y.tab.h 
    8293    $(LEX) -o$@ $< 
    8394 
    84 $(build)/lookup_words.o: $(parser)/lookup_words.c $(parser)/lookup_words.h 
     95$(objdir)/lookup_words.o: $(parser)/lookup_words.c $(parser)/lookup_words.h 
    8596    $(CC) $(CFLAGS) $(INCS) -c $< -o $@ 
    8697 
     
    8899### CORE 
    89100 
    90 $(build)/NewtBC.o: $(core)/NewtBC.c 
    91     $(CC) $(CFLAGS) $(INCS) -c $< -o $@ 
    92  
    93 $(build)/NewtEnv.o: $(core)/NewtEnv.c 
    94     $(CC) $(CFLAGS) $(INCS) -c $< -o $@ 
    95  
    96 $(build)/NewtFile.o: $(core)/NewtFile.c 
    97     $(CC) $(CFLAGS) $(INCS) -c $< -o $@ 
    98  
    99 $(build)/NewtFns.o: $(core)/NewtFns.c 
    100     $(CC) $(CFLAGS) $(INCS) -c $< -o $@ 
    101  
    102 $(build)/NewtGC.o: $(core)/NewtGC.c 
    103     $(CC) $(CFLAGS) $(INCS) -c $< -o $@ 
    104  
    105 $(build)/NewtIO.o: $(core)/NewtIO.c 
    106     $(CC) $(CFLAGS) $(INCS) -c $< -o $@ 
    107  
    108 $(build)/NewtMem.o: $(core)/NewtMem.c 
    109     $(CC) $(CFLAGS) $(INCS) -c $< -o $@ 
    110  
    111 $(build)/NewtObj.o: $(core)/NewtObj.c 
    112     $(CC) $(CFLAGS) $(INCS) -c $< -o $@ 
    113  
    114 $(build)/NewtParser.o: $(core)/NewtParser.c 
    115     $(CC) $(CFLAGS) $(INCS) -c $< -o $@ 
    116  
    117 $(build)/NewtPrint.o: $(core)/NewtPrint.c 
    118     $(CC) $(CFLAGS) $(INCS) -c $< -o $@ 
    119  
    120 $(build)/NewtStr.o: $(core)/NewtStr.c 
    121     $(CC) $(CFLAGS) $(INCS) -c $< -o $@ 
    122  
    123 $(build)/NewtVM.o: $(core)/NewtVM.c 
    124     $(CC) $(CFLAGS) $(INCS) -c $< -o $@ 
     101$(COREOBJS):: 
     102    $(CC) $(CFLAGS) $(INCS) -c $(core)/$(notdir $*.c) -o $@ 
    125103 
    126104 
     
    133111 
    134112 
    135 ### strip 
     113### strip (for win) 
    136114 
    137115strip: 
    138116    $(STRIP) $(NEWT) $(build)/*.$(NEWTLIBSUFFIX) 
     117 
     118 
     119### ARCHIVE 
     120 
     121copy: 
     122    rm -rf $(build)/$(tardir) 
     123    mkdir -p $(build)/$(tardir) 
     124    cp $(NEWT) $(build)/$(tardir) 
     125    cp $(build)/*.$(NEWTLIBSUFFIX) $(build)/$(tardir) 
     126    cp -Rp COPYING README.* documents sample $(build)/$(tardir) 
     127 
     128 
     129tgz: copy 
     130    tar czf $(build)/$(tardir).tgz -C $(build) $(tardir) 
     131 
     132 
     133### DOCUMENT GENERATE 
     134 
     135doc: 
     136    rm -rf $(docdir) 
     137    mkdir -p $(docdir) 
     138    cd misc; doxygen doxygen.conf 
    139139 
    140140