]> git.saurik.com Git - cycript.git/blobdiff - makefile
OMG it compiles.
[cycript.git] / makefile
index d8c9ae5641f3c2bfb17562cd6d688661120c005d..b7c87706f4086c5ad8329ad6cbff932a59af8bdd 100644 (file)
--- a/makefile
+++ b/makefile
@@ -14,7 +14,7 @@ link := -framework CoreFoundation -framework Foundation -F${PKG_ROOT}/System/Lib
 all: cycript libcycript.dylib libcycript.plist
 
 clean:
-       rm -f libcycript.dylib cycript libcycript.plist Struct.hpp
+       rm -f libcycript.dylib cycript libcycript.plist Struct.hpp lex.cy.c Cycript.tab.c Cycript.tab.h
 
 libcycript.plist: Bridge.def makefile
        sed -e 's/^C/0/;s/^F/1/;s/^V/2/' Bridge.def | while read -r line; do \
@@ -28,11 +28,20 @@ libcycript.plist: Bridge.def makefile
            echo "$$2 = ($$1, \"$$3\");";  \
        done >$@
 
+Cycript.tab.c Cycript.tab.h: Cycript.y
+       bison $<
+
+lex.cy.c: Cycript.l
+       flex $<
+
 Struct.hpp:
        $$($(target)gcc -print-prog-name=cc1obj) -print-objc-runtime-info </dev/null >$@
 
-libcycript.dylib: Library.mm makefile $(menes)/mobilesubstrate/substrate.h sig/*.[ch]pp Struct.hpp
-       $(target)g++ -dynamiclib -mthumb -g0 -O2 -Wall -Werror -o $@ $(filter %.cpp,$^) $(filter %.mm,$^) -lobjc -I$(menes)/mobilesubstrate $(link) $(flags)
+#Parser.hpp: Parser.py Parser.dat
+#      ./Parser.py <Parser.dat >$@
+
+libcycript.dylib: Library.mm makefile $(menes)/mobilesubstrate/substrate.h sig/*.[ch]pp Struct.hpp Parser.hpp lex.cy.c Cycript.tab.c Cycript.tab.h
+       $(target)g++ -dynamiclib -mthumb -g0 -O2 -Wall -Werror -o $@ $(filter %.cpp,$^) $(filter %.c,$^) $(filter %.mm,$^) -lobjc -I$(menes)/mobilesubstrate $(link) $(flags) -DYYDEBUG=1
        ldid -S $@
 
 cycript: Application.mm libcycript.dylib