### pymake by ~3o~ph()g (neonphog.com) ### ## This skeleton file was generated by pymake... please edit for your project. ## Global flag section, uncomment to set flags which will be applied to all CXXFLAGS: -ggdb -Ilibbu++/src LDFLAGS: -Llibbu++ -lbu++ [BUILD] FILE: src/build.y COMMAND: stupid OUTPUT: parser [BUILD] FILE: src/build.l COMMAND: stupid OUTPUT: lexer ## A simple command to build everything in this directory, and output ## an executable with the name 'main' [BUILD] DIR: src COMMAND: exe OUTPUT: build ## To run a command, like a legacy 'make' command, issue the following: #[RUN] #COMMAND: make -C testsrc/legacy #this command will normally be run #CLEAN: make -C testsrc/legacy clean #this command will be run on '-c' ## A more complicated build example #[BUILD] #COMMAND: exe #OUTPUT: the_one #DIR: testsrc/one #FILE: testsrc/share/test.cpp #CXXFLAGS: -Itestsrc/share #LDFLAGS: -lreadline ## The [DIRBUILD] macro expands into many [BUILD] sections: #[DIRBUILD] #COMMAND: exe #OUTPUT: db{NAME}.so #{NAME} will be replaced with the directory name #ROOT: testsrc/db #CXXFLAGS -Itestsrc/share #LDFLAGS: -lreadline ## The [OVERRIDE] directive allows you to append flags to specific targets #[OVERRIDE] #FILE: testsrc/db/mysql/main.o #CXXFLAGS: -I../.. ### The following are the build commands and triggers ### ### These are the default gnu g++ build commands ### ### Compile trigger ### ## Takes c++ source code, builds an object file ## Includes function for dependancy checking [TRIGGER] INPUT: .cpp #take input of *.cpp files OUTPUT: .o #output .o files COMMAND: g++ -c {INPUT} {CXXFLAGS} -I{DIR} -o {OUTPUT} CHECK: g++ -M {INPUT} {CXXFLAGS} -I{DIR} [TRIGGER] INPUT: .c #take input of *.cpp files OUTPUT: .o #output .o files COMMAND: g++ -c {INPUT} {CXXFLAGS} -I{DIR} -o {OUTPUT} CHECK: g++ -M {INPUT} {CXXFLAGS} -I{DIR} [TRIGGER] INPUT: .y OUTPUT: .tab.c COMMAND: bison {INPUT} [TRIGGER] INPUT: .l OUTPUT: .yy.c COMMAND: flex --bison-bridge --bison-locations -o {OUTPUT} {INPUT} ### Executable command ### ## Use this command if you want a simple executable [COMMAND] NAME: exe COMMAND: g++ {INPUT} {LDFLAGS} -o {OUTPUT} ### Library command ### ## Use this command if you wish to create a library [COMMAND] NAME: lib COMMAND: ar cr{ARFLAGS} {OUTPUT} {INPUT} [COMMAND] NAME: stupid ### Strange example ### ## The following trigger will take all *.q files, strip all '&'s from them ## and generate a .cpp file, which will then be compiled using the cpp trigger. #[TRIGGER] #INPUT: .q #OUTPUT: .cpp #COMMAND: sed -e "s/&//g" {INPUT} > {OUTPUT}