Advertisement
Guest User

Untitled

a guest
Nov 28th, 2018
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Make 4.75 KB | None | 0 0
  1. OOPTS = -g -std=c99 -Wall -Wextra -c
  2. LOPTS = -g -std=c99 -Wall -Wextra
  3. DAOBJS = da.o da-0-0.o integer.o
  4. CDAOBJS = cda.o test-cda4.o integer.o
  5. QOBJS = queue.o cda.o test-queue.o integer.o
  6. SETOBJS = set.o da.o set-0-2.o integer.o real.o string.o
  7. BSTOBJS = tnode.o bst.o queue.o cda.o bst-0-4.o integer.o real.o
  8. GSTOBJS = tnode.o bst.o queue.o cda.o gst.o gst-0-0.o integer.o real.o
  9. RBTOBJS = tnode.o bst.o queue.o cda.o gst.o rbt-0-0.o integer.o real.o rbt.o
  10. TREESOBJS = tnode.o bst.o gst.o rbt.o cda.o queue.o string.o real.o integer.o scanner.o interpreter.o trees.o
  11. KRUSK = kruskal.o set.o da.o string.o integer.o scanner.o queue.o cda.o tnode.o bst.o gst.o rbt.o
  12.  
  13. TESTDIR = .testing/
  14. TESTS = $(sort $(basename $(notdir $(wildcard $(TESTDIR)*.c))))
  15. KRUSKAL-TESTS = ga-4-0 ga-4-1 ga-4-2 ga-4-3 ga-4-4 g-4-0 g-4-1 g-4-2 g-4-3 g-4-4 g-4-5 g-4-6 g-4-7 g-4-8 g-4-9 g-4-10
  16.  
  17. all : da cda queue bst gst rbt SET kruskal
  18.  
  19. copy: all
  20.     cp -f *.o $(TESTDIR)
  21.     cp -f *.h $(TESTDIR)
  22.     cp -f kruskal $(TESTDIR)
  23.  
  24. test-kruskal: all copy
  25.     for x in $(KRUSKAL-TESTS); do \
  26.           echo; echo -------; echo $$x.expected; echo -------; cat $(TESTDIR)$$x.expected; \
  27.           ./kruskal $(TESTDIR)$$x > $(TESTDIR)$$x.yours; \
  28.           echo -------; echo $$x.yours; echo -------; cat $(TESTDIR)$$x.yours; echo -------; \
  29.           cmp --silent $(TESTDIR)$$x.expected $(TESTDIR)$$x.yours && echo "PASSED" || echo "FAILED"; echo -------; \
  30.   done
  31.  
  32. valgrind-kruskal: all copy
  33.     for x in $(KRUSKAL-TESTS); do \
  34.           valgrind --log-file=$(TESTDIR)$$x.valgrind kruskal $(TESTDIR)$$x; \
  35.           echo; echo -------; echo $$x.valgrind; echo -------;  cat $(TESTDIR)$$x.valgrind; echo; \
  36.   done
  37.  
  38. tester : all $(TESTS)
  39.     for x in $(TESTS); do \
  40.           echo; echo -------; echo $$x.expected; echo -------; cat $(TESTDIR)$$x.expected; \
  41.           ./$(TESTDIR)$$x > $(TESTDIR)$$x.yours; \
  42.           echo -------; echo $$x.yours; echo -------; cat $(TESTDIR)$$x.yours; echo -------; \
  43.           cmp --silent $(TESTDIR)$$x.expected $(TESTDIR)$$x.yours && echo "PASSED" || echo "FAILED"; echo -------; \
  44.   done
  45.  
  46. valgrind : all $(TESTS)
  47.     for x in $(TESTS); do \
  48.           valgrind --log-file=$(TESTDIR)$$x.valgrind $(TESTDIR)$$x; \
  49.           echo; echo -------; echo $$x.valgrind; echo -------;  cat $(TESTDIR)$$x.valgrind; echo; \
  50.   done
  51.  
  52. $(TESTS): %: $(TESTDIR)%.c copy
  53.     gcc $(LOPTS) -o $(TESTDIR)$@ $< $(OBJS)
  54.  
  55. SET : $(SETOBJS)
  56.     gcc $(LOPTS) $(SETOBJS) -o SET
  57. da : $(DAOBJS)
  58.     gcc $(LOPTS) $(DAOBJS) -o da
  59. cda : $(CDAOBJS)
  60.     gcc $(LOPTS) $(CDAOBJS) -o cda
  61. queue : $(QOBJS)
  62.     gcc $(LOPTS) $(QOBJS) -o queue
  63. bst : $(BSTOBJS)
  64.     gcc $(LOPTS) $(BSTOBJS) -o bst
  65. gst : $(GSTOBJS)
  66.     gcc $(LOPTS) $(GSTOBJS) -o gst
  67. rbt : $(RBTOBJS)
  68.     gcc $(LOPTS) $(RBTOBJS) -o rbt
  69. trees : $(TREESOBJS)
  70.     gcc $(LOPTS) $(TREESOBJS) -o trees
  71. kruskal : $(KRUSK)
  72.     gcc $(LOPTS) $(KRUSK) -o kruskal
  73.  
  74. set.o: set.c set.h
  75.     gcc $(OOPTS) set.c
  76. integer.o : integer.c integer.h
  77.     gcc $(OOPTS) integer.c
  78. real.o : real.c real.h
  79.     gcc $(OOPTS) real.c
  80. string.o : string.c string.h
  81.     gcc $(OOPTS) string.c
  82. scanner.o:  scanner.c scanner.h
  83.     gcc $(OOPTS) scanner.c
  84. da.o: da.c
  85.     gcc $(OOPTS) da.c
  86. cda.o : cda.c cda.h
  87.     gcc $(OOPTS) cda.c
  88. queue.o : queue.c queue.h cda.h
  89.     gcc $(OOPTS) queue.c
  90. tnode.o : tnode.c tnode.h
  91.     gcc $(OOPTS) tnode.c
  92. bst.o : bst.c bst.h tnode.h queue.h
  93.     gcc $(OOPTS) bst.c
  94. gst.o : gst.c gst.h bst.h tnode.h queue.h
  95.     gcc $(OOPTS) gst.c
  96. rbt.o : rbt.c rbt.h tnode.h gst.h
  97.     gcc $(OOPTS) rbt.c
  98. trees.o : trees.c gst.h rbt.h string.h interpreter.h
  99.     gcc $(OOPTS) trees.c
  100. kruskal.o: kruskal.c set.h da.h rbt.h string.h integer.h
  101.     gcc $(OOPTS) kruskal.c
  102.  
  103.  
  104. set-0-2.o : set-0-2.c set.h da.h integer.h real.h string.h
  105.     gcc $(OOPTS) set-0-2.c
  106. da-0-0.o : da-0-0.c da.h
  107.     gcc $(OOPTS) da-0-0.c
  108. test-cda4.o : test-cda4.c cda.h
  109.     gcc $(OOPTS) test-cda4.c
  110. test-queue.o : test-queue.c queue.h cda.h
  111.     gcc $(OOPTS) test-queue.c
  112. bst-0-4.o : bst-0-4.c integer.h string.h queue.h bst.h real.h
  113.     gcc $(OOPTS) bst-0-4.c
  114. gst-0-0.o : gst-0-0.c integer.h string.h queue.h bst.h real.h
  115.     gcc $(OOPTS) gst-0-0.c
  116. rbt-0-0.o : rbt-0-0.c gst.h rbt.h integer.h real.h string.h
  117.     gcc $(OOPTS) rbt-0-0.c
  118.  
  119.  
  120. test : kruskal #SET #oldkruskal newkruskal #bst  rbt  cda queue
  121.     #./da
  122.     #./cda
  123.     #./queue
  124.     #./bst
  125.     #./rbt
  126.     #./SET
  127.     #./kruskal ga-4-0
  128.  
  129.  
  130. #valgrind : rbt #kruskal SET  bst rbt #trees cda queue
  131.     #valgrind --leak-check=full ./da
  132.     #valgrind --leak-check=full ./cda
  133.     #valgrind --leak-check=full ./queue
  134.     #valgrind --leak-check=full bst
  135.     #valgrind --leak-check=full gst
  136.     #valgrind --leak-check=full rbt
  137.     #valgrind --leak-check=full kruskal
  138.     #valgrind --leak-check=full SET
  139.  
  140. clean :
  141.     rm -f $(BSTOBJS) $(GSTOBJS) $(RBTOBJS) $(QOBJS) $(DAOBJS) $(CDAOBJS) $(KRUSK) $(SETOBJS) \ #$(OKRUSH) $(NKRUSK)  \
  142.     bst gst da cda queue rbt SET kruskal
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement