Advertisement
Guest User

Untitled

a guest
Jun 29th, 2015
733
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Make 1.66 KB | None | 0 0
  1. ifndef SRC
  2. SRC = src
  3. endif
  4.  
  5. CFLAGS = -std=c99
  6.  
  7. include ${PETSC_DIR}/lib/petsc/conf/variables
  8. include ${PETSC_DIR}/lib/petsc/conf/rules
  9.  
  10.  
  11. OBJ = $(SRC)/main.o\
  12.       $(SRC)/helper.o\
  13.       $(SRC)/init.o\
  14.       $(SRC)/basis.o\
  15.       $(SRC)/gauss.o\
  16.       $(SRC)/indices.o\
  17.       $(SRC)/eval.o\
  18.       $(SRC)/rhs.o\
  19.       $(SRC)/visual.o\
  20.       $(SRC)/matrix.o\
  21.       $(SRC)/rhs.o
  22.  
  23.  
  24. TEST_OBJ = tests/testing.o\
  25.        tests/maxim.o\
  26.      $(SRC)/init.o\
  27.        $(SRC)/basis.o\
  28.        $(SRC)/gauss.o\
  29.        $(SRC)/indices.o\
  30.        $(SRC)/eval.o\
  31.        $(SRC)/rhs.o\
  32.            $(SRC)/visual.o\
  33.            $(SRC)/helper.o\
  34.  
  35. DOC_SRC =  tests/testing.o\
  36.        tests/maxim.o\
  37.            $(SRC)/init.o\
  38.            $(SRC)/main.o\
  39.            $(SRC)/gauss.o\
  40.            $(SRC)/indices.o\
  41.            $(SRC)/visual.o\
  42.            $(SRC)/helper.o\
  43.  
  44. exec:  $(OBJ) chkopts
  45.     -$(CLINKER) -o sim $(OBJ) $(PETSC_KSP_LIB)
  46.  
  47. all: exec test doc
  48.    
  49.  
  50. test:  $(TEST_OBJ)
  51.     $(CC) $(CFLAGS) -lcunit -o test_all $(TEST_OBJ) -lm -lcunit $(PETSC_KSP_LIB)
  52.    
  53.  
  54. doc: CFLAGS += -DVERBOSITY=1 -Ofast
  55. doc:    $(OBJ) $(TEST_OBJ)
  56.     doxygen Doxyfile
  57.     ln -s doc/html/index.html doc.html
  58.  
  59. %.d: %.c                                                                                          
  60.     @set -e; rm -f $@                                                      
  61.     $(CC) $(CFLAGS) -MT $*.o -MM $< > blabla.txt                            
  62.     sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < blabla.txt > $@                  
  63.     rm -f blabla.txt            
  64.  
  65. cleaning:
  66.     rm $(OBJ) $(TEST_OBJ)
  67.    
  68. clean_doc:
  69.     rm -r doc
  70.     rm -r doc.html
  71.  
  72. clean_all: cleaning clean_doc
  73.    
  74. include $(OBJ:.o=.d)
  75. include $(TEST_OBJ:.o=.d)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement