From a2beb6bb38a621db8c9ddce9500aea738f1c62ee Mon Sep 17 00:00:00 2001 From: "Jay Freeman (saurik)" Date: Fri, 1 Jan 2016 18:25:16 -0800 Subject: [PATCH 1/1] Add all supported binding API headers to analysis. --- Analysis.cpp | 22 +++++++++++++++++++- Makefile.am | 6 ++++-- Makefile.in | 57 ++++++++++++++++++++++++++++------------------------ 3 files changed, 56 insertions(+), 29 deletions(-) diff --git a/Analysis.cpp b/Analysis.cpp index e76f862..a29a50c 100644 --- a/Analysis.cpp +++ b/Analysis.cpp @@ -28,7 +28,27 @@ #include -#ifdef __OBJC__ +#if CY_JAVA +#ifdef __APPLE__ +#include +#else +#include +#endif +#endif + +#if CY_RUBY +#ifdef __APPLE__ +#include +#else +#include +#endif +#endif + +#if CY_PYTHON +#include +#endif + +#if CY_OBJECTIVEC #include #endif diff --git a/Makefile.am b/Makefile.am index 64ed082..728163e 100644 --- a/Makefile.am +++ b/Makefile.am @@ -72,13 +72,15 @@ libcycript.db: Bridge.def libcycript.sh $(srcdir)/libcycript.sh $(CY_SYSTEM) $@ $< if CY_PRELINK +CY_LANGFLAGS = -DCY_JAVA=$(CY_JAVA) -DCY_PYTHON=$(CY_PYTHON) -DCY_OBJECTIVEC=$(CY_OBJECTIVEC) + CLEANFILES += Analyze Analyze: Analyze.cpp Error.cpp Output.cpp Replace.cpp Syntax.cpp - $(CXX_FOR_BUILD) $(CXXFLAGS_FOR_BUILD) -std=c++11 $(LDFLAGS_FOR_BUILD) -DCY_OBJECTIVEC=$(CY_OBJECTIVEC) -I$(srcdir)/extra -o $@ $^ $(CY_LIBCLANG) -Wno-bitwise-op-parentheses -Wno-dangling-else -Wno-logical-op-parentheses + $(CXX_FOR_BUILD) $(CXXFLAGS_FOR_BUILD) -std=c++11 $(LDFLAGS_FOR_BUILD) $(CY_LANGFLAGS) -I$(srcdir)/extra -o $@ $^ $(CY_LIBCLANG) -Wno-bitwise-op-parentheses -Wno-dangling-else -Wno-logical-op-parentheses CLEANFILES += Bridge.def Bridge.def: Analysis.cpp Analyze - ./Analyze $< $(OBJCXX) $(AM_OBJCXXFLAGS) $(OBJCXXFLAGS) >$@ + ./Analyze $< $(OBJCXX) $(CPPFLAGS) $(AM_OBJCXXFLAGS) $(OBJCXXFLAGS) $(CY_LANGFLAGS) >$@ else CLEANFILES += Bridge.def Bridge.def: Bridge.def.in diff --git a/Makefile.in b/Makefile.in index 90e3543..bad3822 100644 --- a/Makefile.in +++ b/Makefile.in @@ -126,15 +126,18 @@ host_triplet = @host@ @CY_JAVA_TRUE@am__append_13 = $(LTJAVA) @CY_JAVA_TRUE@am__append_14 = libcycript.jar @CY_JAVA_TRUE@am__append_15 = Class libcycript.jar -@CY_RUBY_TRUE@am__append_16 = Ruby Python -@CY_RUBY_TRUE@am__append_17 = Ruby/Execute.cpp Python/Execute.cpp -@CY_RUBY_TRUE@am__append_18 = $(LTRUBY) $(LTPYTHON) -@CY_OBJECTIVEC_TRUE@am__append_19 = ObjectiveC -@CY_OBJECTIVEC_TRUE@am__append_20 = ObjectiveC/Output.cpp ObjectiveC/Replace.cpp ObjectiveC/Library.mm -@CY_OBJECTIVEC_TRUE@am__append_21 = $(LTOBJECTIVEC) -@CY_ATTACH_TRUE@am__append_22 = Handler.cpp -@CY_ATTACH_TRUE@@CY_CONSOLE_TRUE@am__append_23 = Inject.cpp -@CY_ATTACH_TRUE@@CY_CONSOLE_TRUE@am__append_24 = -DCY_ATTACH +@CY_RUBY_TRUE@am__append_16 = Ruby +@CY_RUBY_TRUE@am__append_17 = Ruby/Execute.cpp +@CY_RUBY_TRUE@am__append_18 = $(LTRUBY) +@CY_PYTHON_TRUE@am__append_19 = Python +@CY_PYTHON_TRUE@am__append_20 = Python/Execute.cpp +@CY_PYTHON_TRUE@am__append_21 = $(LTPYTHON) +@CY_OBJECTIVEC_TRUE@am__append_22 = ObjectiveC +@CY_OBJECTIVEC_TRUE@am__append_23 = ObjectiveC/Output.cpp ObjectiveC/Replace.cpp ObjectiveC/Library.mm +@CY_OBJECTIVEC_TRUE@am__append_24 = $(LTOBJECTIVEC) +@CY_ATTACH_TRUE@am__append_25 = Handler.cpp +@CY_ATTACH_TRUE@@CY_CONSOLE_TRUE@am__append_26 = Inject.cpp +@CY_ATTACH_TRUE@@CY_CONSOLE_TRUE@am__append_27 = -DCY_ATTACH subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/ax_cxx_compile_stdcxx_11.m4 \ @@ -186,14 +189,14 @@ LTLIBRARIES = $(lib_LTLIBRARIES) am__DEPENDENCIES_1 = @CY_EXECUTE_TRUE@am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1) @CY_JAVA_TRUE@am__DEPENDENCIES_3 = $(am__DEPENDENCIES_1) -@CY_RUBY_TRUE@am__DEPENDENCIES_4 = $(am__DEPENDENCIES_1) \ -@CY_RUBY_TRUE@ $(am__DEPENDENCIES_1) -@CY_OBJECTIVEC_TRUE@am__DEPENDENCIES_5 = $(am__DEPENDENCIES_1) +@CY_RUBY_TRUE@am__DEPENDENCIES_4 = $(am__DEPENDENCIES_1) +@CY_PYTHON_TRUE@am__DEPENDENCIES_5 = $(am__DEPENDENCIES_1) +@CY_OBJECTIVEC_TRUE@am__DEPENDENCIES_6 = $(am__DEPENDENCIES_1) libcycript_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2) \ $(am__DEPENDENCIES_3) $(am__DEPENDENCIES_4) \ - $(am__DEPENDENCIES_5) + $(am__DEPENDENCIES_5) $(am__DEPENDENCIES_6) am__libcycript_la_SOURCES_DIST = ConvertUTF.c Decode.cpp Driver.cpp \ Error.cpp Highlight.cpp Library.cpp Network.cpp Output.cpp \ Replace.cpp Syntax.cpp Parser.cpp Scanner.cpp Complete.cpp \ @@ -206,16 +209,17 @@ am__dirstamp = $(am__leading_dot)dirstamp @CY_EXECUTE_TRUE@am__objects_2 = sig/ffi_type.lo sig/parse.lo \ @CY_EXECUTE_TRUE@ sig/copy.lo Execute.lo JavaScriptCore.lo @CY_JAVA_TRUE@am__objects_3 = Java/Execute.lo -@CY_RUBY_TRUE@am__objects_4 = Ruby/Execute.lo Python/Execute.lo -@CY_OBJECTIVEC_TRUE@am__objects_5 = ObjectiveC/Output.lo \ +@CY_RUBY_TRUE@am__objects_4 = Ruby/Execute.lo +@CY_PYTHON_TRUE@am__objects_5 = Python/Execute.lo +@CY_OBJECTIVEC_TRUE@am__objects_6 = ObjectiveC/Output.lo \ @CY_OBJECTIVEC_TRUE@ ObjectiveC/Replace.lo \ @CY_OBJECTIVEC_TRUE@ ObjectiveC/Library.lo -@CY_ATTACH_TRUE@am__objects_6 = Handler.lo +@CY_ATTACH_TRUE@am__objects_7 = Handler.lo am_libcycript_la_OBJECTS = ConvertUTF.lo Decode.lo Driver.lo Error.lo \ Highlight.lo Library.lo Network.lo Output.lo Replace.lo \ Syntax.lo Parser.lo Scanner.lo $(am__objects_1) \ $(am__objects_2) $(am__objects_3) $(am__objects_4) \ - $(am__objects_5) $(am__objects_6) + $(am__objects_5) $(am__objects_6) $(am__objects_7) libcycript_la_OBJECTS = $(am_libcycript_la_OBJECTS) AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) @@ -226,9 +230,9 @@ libcycript_la_LINK = $(LIBTOOL) $(AM_V_lt) $(AM_LIBTOOLFLAGS) \ $(OBJCXXFLAGS) $(libcycript_la_LDFLAGS) $(LDFLAGS) -o $@ PROGRAMS = $(bin_PROGRAMS) am__cycript_SOURCES_DIST = Console.cpp Inject.cpp -@CY_ATTACH_TRUE@@CY_CONSOLE_TRUE@am__objects_7 = Inject.$(OBJEXT) +@CY_ATTACH_TRUE@@CY_CONSOLE_TRUE@am__objects_8 = Inject.$(OBJEXT) @CY_CONSOLE_TRUE@am_cycript_OBJECTS = Console.$(OBJEXT) \ -@CY_CONSOLE_TRUE@ $(am__objects_7) +@CY_CONSOLE_TRUE@ $(am__objects_8) cycript_OBJECTS = $(am_cycript_OBJECTS) @CY_CONSOLE_TRUE@cycript_DEPENDENCIES = libcycript.la \ @CY_CONSOLE_TRUE@ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ @@ -584,7 +588,7 @@ SUBDIRS = ACLOCAL_AMFLAGS = -I m4 AM_CPPFLAGS = -DYYDEBUG=1 -DCY_SYSTEM="\"$(CY_SYSTEM)\"" -include \ config.h -include $(srcdir)/unconfig.h $(am__append_5) \ - $(am__append_24) + $(am__append_27) AM_CFLAGS = -fvisibility=hidden AM_CXXFLAGS = -fvisibility=hidden AM_OBJCXXFLAGS = -fvisibility=hidden -fobjc-exceptions @@ -596,16 +600,17 @@ lib_LTLIBRARIES = libcycript.la libcycript_la_LDFLAGS = $(CY_LDFLAGS) libcycript_la_LIBADD = $(LTLIBUV) $(LTLIBFFI) $(LTLIBSQLITE3) \ $(LTLIBGCC) -ldl $(am__append_3) $(am__append_13) \ - $(am__append_18) $(am__append_21) + $(am__append_18) $(am__append_21) $(am__append_24) libcycript_la_SOURCES = ConvertUTF.c Decode.cpp Driver.cpp Error.cpp \ Highlight.cpp Library.cpp Network.cpp Output.cpp Replace.cpp \ Syntax.cpp Parser.cpp Scanner.cpp $(am__append_1) \ $(am__append_2) $(am__append_12) $(am__append_17) \ - $(am__append_20) $(am__append_22) + $(am__append_20) $(am__append_23) $(am__append_25) filters = $(am__append_6) $(am__append_11) $(am__append_16) \ - $(am__append_19) -@CY_CONSOLE_TRUE@cycript_SOURCES = Console.cpp $(am__append_23) + $(am__append_19) $(am__append_22) +@CY_CONSOLE_TRUE@cycript_SOURCES = Console.cpp $(am__append_26) @CY_CONSOLE_TRUE@cycript_LDADD = libcycript.la $(LTLIBREADLINE) $(LTLIBTERMCAP) $(LTLIBGCC) $(PTHREAD_CFLAGS) -ldl +@CY_EXECUTE_TRUE@@CY_PRELINK_TRUE@CY_LANGFLAGS = -DCY_JAVA=$(CY_JAVA) -DCY_PYTHON=$(CY_PYTHON) -DCY_OBJECTIVEC=$(CY_OBJECTIVEC) all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive @@ -1394,9 +1399,9 @@ uninstall-am: uninstall-binPROGRAMS uninstall-datDATA \ @CY_EXECUTE_TRUE@libcycript.db: Bridge.def libcycript.sh @CY_EXECUTE_TRUE@ $(srcdir)/libcycript.sh $(CY_SYSTEM) $@ $< @CY_EXECUTE_TRUE@@CY_PRELINK_TRUE@Analyze: Analyze.cpp Error.cpp Output.cpp Replace.cpp Syntax.cpp -@CY_EXECUTE_TRUE@@CY_PRELINK_TRUE@ $(CXX_FOR_BUILD) $(CXXFLAGS_FOR_BUILD) -std=c++11 $(LDFLAGS_FOR_BUILD) -DCY_OBJECTIVEC=$(CY_OBJECTIVEC) -I$(srcdir)/extra -o $@ $^ $(CY_LIBCLANG) -Wno-bitwise-op-parentheses -Wno-dangling-else -Wno-logical-op-parentheses +@CY_EXECUTE_TRUE@@CY_PRELINK_TRUE@ $(CXX_FOR_BUILD) $(CXXFLAGS_FOR_BUILD) -std=c++11 $(LDFLAGS_FOR_BUILD) $(CY_LANGFLAGS) -I$(srcdir)/extra -o $@ $^ $(CY_LIBCLANG) -Wno-bitwise-op-parentheses -Wno-dangling-else -Wno-logical-op-parentheses @CY_EXECUTE_TRUE@@CY_PRELINK_TRUE@Bridge.def: Analysis.cpp Analyze -@CY_EXECUTE_TRUE@@CY_PRELINK_TRUE@ ./Analyze $< $(OBJCXX) $(AM_OBJCXXFLAGS) $(OBJCXXFLAGS) >$@ +@CY_EXECUTE_TRUE@@CY_PRELINK_TRUE@ ./Analyze $< $(OBJCXX) $(CPPFLAGS) $(AM_OBJCXXFLAGS) $(OBJCXXFLAGS) $(CY_LANGFLAGS) >$@ @CY_EXECUTE_TRUE@@CY_PRELINK_FALSE@Bridge.def: Bridge.def.in @CY_EXECUTE_TRUE@@CY_PRELINK_FALSE@ cat $< >$@ @CY_EXECUTE_TRUE@Bridge.gperf: Bridge.def Bridge.sh -- 2.47.2