]> git.saurik.com Git - cycript.git/blobdiff - makefile
Changed "%zu" to "%"APR_SIZE_T_FMT on APR format calls, removed the accidental NSAuto...
[cycript.git] / makefile
index aa0bbbae6dd91289e9a409473cd2784fa7270548..4240e51a136e377df3d6c4c5cd5b8c125bb85b3a 100644 (file)
--- a/makefile
+++ b/makefile
@@ -29,10 +29,13 @@ code += Cycript.tab.o lex.cy.o
 code += Network.o Parser.o
 code += JavaScriptCore.o Library.o
 
+inject := 
+
 filters := C #E4X
 ldid := true
+entitle := $(ldid)
 dll := so
-apr := $(shell apr-1-config --link-ld)
+apr := -lapr-1
 library := $(apr) -lffi -lsqlite3
 console := $(apr) -lreadline
 depends :=
@@ -46,13 +49,13 @@ uname_p ?= $(shell uname -p)
 
 ifeq ($(filter ObjectiveC,$(filters)),)
 ifneq ($(shell which gnustep-config 2>/dev/null),)
-#include GNUstep.mk
+include GNUstep.mk
 endif
 endif
 
 flags += -Wall -Werror -Wno-parentheses #-Wno-unused
 flags += -fPIC -fno-common
-flags += -I. -I$(shell apr-1-config --includedir)
+flags += -I. -Iinclude -I$(shell apr-1-config --includedir)
 
 all += libcycript.$(dll)
 
@@ -63,24 +66,29 @@ all: $(deb)
 
 extra:
 
-ifeq ($(depends),)
+ifeq ($(depends)$(dll),dylib)
+control: control.in cycript libcycript.dylib
+       sed -e 's/&/'"$$(dpkg-query -S $$(otool -lah cycript *.dylib | grep dylib | grep -v ':$$' | sed -e 's/^ *name //;s/ (offset [0-9]*)$$//' | sort -u) 2>/dev/null | sed -e 's/:.*//; /^cycript$$/ d; s/$$/,/' | sort -u | tr '\n' ' ')"'/;s/, $$//;s/#/$(svn)/;s/%/$(arch)/' $< >$@
+else
+ifeq ($(depends)$(dll),so)
 control: control.in cycript libcycript.so
        sed -e 's/&/'"$$(dpkg-query -S $$(ldd cycript libcycript.so | sed -e '/:$$/ d; s/^[ \t]*\([^ ]* => \)\?\([^ ]*\) .*/\2/' | sort -u) 2>/dev/null | sed -e 's/:.*//; /^cycript$$/ d; s/$$/,/' | sort -u | tr '\n' ' ')"'/;s/, $$//;s/#/$(svn)/;s/%/$(arch)/' $< >$@
 else
 control: control.in
        sed -e 's/&/$(foreach depend,$(depends),$(depend),)/;s/,$$//;s/#/$(svn)/;s/%/$(arch)/' $< >$@
 endif
+endif
 
 $(deb): $(all) control
        rm -rf package
        mkdir -p package/DEBIAN
-       cp -a control package/DEBIAN
+       cp -pR control package/DEBIAN
        $(restart) extra
        mkdir -p package/usr/{bin,lib,sbin}
-       cp -a libcycript.$(dll) package/usr/lib
-       cp -a cycript package/usr/bin
-       #cp -a cyrver package/usr/sbin
-       cp -a libcycript.db package/usr/lib
+       cp -pR libcycript.$(dll) package/usr/lib
+       cp -pR cycript package/usr/bin
+       #cp -pR cyrver package/usr/sbin
+       cp -pR libcycript.db package/usr/lib
        dpkg-deb -b package $(deb)
 endif
 
@@ -130,9 +138,9 @@ libcycript.$(dll): $(code)
        $(target)g++ $(flags) -shared -dynamiclib -o $@ $(filter %.o,$^) $(library) $(link)
        $(ldid) $@
 
-cycript: Console.o libcycript.$(dll)
+cycript: Console.o libcycript.$(dll) $(inject)
        $(target)g++ $(flags) -o $@ $(filter %.o,$^) -L. -lcycript $(console) $(link)
-       $(ldid) cycript
+       $(entitle) cycript
 
 package: $(deb)