1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- # Project Data
- PROJECT_NAME=avdl
- PROJECT_VERSION=1.0.0
- EXECUTABLE=${PROJECT_NAME}
- # Engine Data
- ENGINE_PATH=engines/cglut
- ENGINE_OUT=${ENGINE_PATH}/libddcglut.a
- INSTALL_LOCATION=@INSTALL_LOCATION@
- # Files for compilation
- SRC=$(wildcard src/*.c)
- YACC_SRC=yacc.tab.c
- YACC_HEADER=yacc.tab.h
- LEX_SRC=lex.yy.c
- # build the executable, depends on source, lex, yacc and all engines
- ${EXECUTABLE}: ${SRC} ${YACC_SRC} ${YACC_HEADER} ${LEX_SRC}
- gcc -Wall -Wpedantic -Wextra -DINSTALL_LOCATION=\"${INSTALL_LOCATION}\" \
- -DPROJECT_NAME=\"${PROJECT_NAME}\" -Iinclude -I. ${SRC} ${YACC_SRC} ${LEX_SRC} -o ${EXECUTABLE}
- # how to build lex
- ${LEX_SRC}: src/lex.l
- flex src/lex.l
- # how to build yacc
- ${YACC_SRC} ${YACC_HEADER}: src/yacc.y
- bison -d src/yacc.y
- # how to build the cglut engine
- engine:
- ${MAKE} -C ${ENGINE_PATH}
- install: ${EXECUTABLE}# ${ENGINE_PATH}/${ENGINE}
- ${MAKE} -C ${ENGINE_PATH} PREFIX=${INSTALL_LOCATION} install
- mkdir -p ${INSTALL_LOCATION}/bin
- install ${EXECUTABLE} ${INSTALL_LOCATION}/bin/
- #mkdir -p ${INSTALL_LOCATION}/share/${PROJECT_NAME}
- #install ${ENGINE_PATH}/${ENGINE} ${INSTALL_LOCATION}/share/${PROJECT_NAME}/${ENGINE}
- #install ${ENGINE_PATH}/index.html ${INSTALL_LOCATION}/share/${PROJECT_NAME}/index.html
- mkdir -p ${INSTALL_LOCATION}/share/man/man1/
- install manual/avdl.1 ${INSTALL_LOCATION}/share/man/man1/
- mkdir -p ${INSTALL_LOCATION}/share/info/
- install avdl.info.gz ${INSTALL_LOCATION}/share/info/
- # vim files
- mkdir -p ${INSTALL_LOCATION}/share/vim/vimfiles/syntax/
- install vim/syntax/avdl.vim ${INSTALL_LOCATION}/share/vim/vimfiles/syntax/
- mkdir -p ${INSTALL_LOCATION}/share/vim/vimfiles/ftdetect/
- install vim/ftdetect/avdl.vim ${INSTALL_LOCATION}/share/vim/vimfiles/ftdetect/
- clean:
- rm -f ${EXECUTABLE} ${LEX_SRC} ${YACC_SRC} ${YACC_HEADER}
- destclean: clean
- rm -f avdl.info.gz makefile
- .PHONY: clean destclean install engine
|