From efce6da23068a60e769571f55e1c5de5fb17f4f0 Mon Sep 17 00:00:00 2001 From: Joseph Henry Date: Thu, 7 Jul 2016 14:50:47 -0500 Subject: [PATCH] makefile tweak --- .../UserInterfaceState.xcuserstate | Bin 58994 -> 59174 bytes .../UserInterfaceState.xcuserstate | Bin 42939 -> 42940 bytes make-mac.mk | 16 ++++++++++++++-- src/SDK_ServiceSetup.cpp | 4 ++-- src/SDK_Sockets.c | 1 + 5 files changed, 17 insertions(+), 4 deletions(-) diff --git a/integrations/apple/ZeroTierSDK_Apple/ZeroTierSDK_Apple.xcodeproj/project.xcworkspace/xcuserdata/Joseph.xcuserdatad/UserInterfaceState.xcuserstate b/integrations/apple/ZeroTierSDK_Apple/ZeroTierSDK_Apple.xcodeproj/project.xcworkspace/xcuserdata/Joseph.xcuserdatad/UserInterfaceState.xcuserstate index 8612e82d0c62954505ab81ccff9c3c67327b0205..d2a70537bc7147bbd139c57e2d7da655d11ad79f 100644 GIT binary patch delta 20044 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 GR{kGyVa0|3 delta 19673 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 diff --git a/make-mac.mk b/make-mac.mk index d61fd53..25181e1 100644 --- a/make-mac.mk +++ b/make-mac.mk @@ -49,7 +49,18 @@ endif CXXFLAGS=$(CFLAGS) -fno-rtti -all: osx_app_framework ios_app_framework osx_unity3d_bundle ios_unity3d_bundle android_jni_lib osx_shared_lib check +# Build everything +all: osx ios android check + +# Build all iOS targets +ios: ios_app_framework ios_unity3d_bundle + +# Build all OSX targets +osx: osx_app_framework osx_unity3d_bundle osx_shared_lib + +# Build all Android targets +# Chip architectures can be specified in integrations/android/android_jni_lib/java/jni/Application.mk +android: android_jni_lib # TODO: CHECK if XCODE TOOLS are installed # Build frameworks for application development @@ -87,7 +98,8 @@ osx_shared_lib: remove_only_intermediates $(OBJS) # Build liblwip.so which must be placed in ZT home for zerotier-sdk-service to work make -f make-liblwip.mk # Use gcc not clang to build standalone intercept library since gcc is typically used for libc and we want to ensure maximal ABI compatibility - cd src ; gcc $(DEFS) -O2 -Wall -std=c99 -fPIC -fno-common -dynamiclib -flat_namespace -DVERBOSE -D_GNU_SOURCE -DNETCON_INTERCEPT -I. -I../zerotierone/node -nostdlib -shared -o $(BUILD)/libztintercept.so SDK_Sockets.c SDK_Intercept.c SDK_Debug.c SDK_RPC.c -ldl + cd src ; gcc $(DEFS) -O2 -Wall -std=c99 -fPIC -fno-common -dynamiclib -flat_namespace -DVERBOSE -D_GNU_SOURCE -DNETCON_INTERCEPT -I. -I../zerotierone/node -nostdlib -shared -o libztintercept.so SDK_Sockets.c SDK_Intercept.c SDK_Debug.c SDK_RPC.c -ldl + mv src/libztintercept.so $(BUILD)/osx_shared_lib/libztintercept.so ln -sf zerotier-sdk-service zerotier-cli ln -sf zerotier-sdk-service zerotier-idtool cp docs/osx_zt_sdk.md $(BUILD)/osx_shared_lib/README.md diff --git a/src/SDK_ServiceSetup.cpp b/src/SDK_ServiceSetup.cpp index 09ec712..1ea1ca4 100644 --- a/src/SDK_ServiceSetup.cpp +++ b/src/SDK_ServiceSetup.cpp @@ -74,7 +74,7 @@ extern "C" { // Starts a service at the specified path void unity_start_service(char * path, int len) { Debug(path); - zt_init_rpc(path); + zt_init_rpc(path,""); init_service(INTERCEPT_DISABLED, path); } #endif @@ -157,7 +157,7 @@ extern "C" { #if defined(__UNITY_3D__) && !defined(__ANDROID__) && !defined(__IOS__) // Unity3D on a non-mobile platform - homeDir = "" + current_dir; // homeDir shall be current dir + homeDir = current_dir; // homeDir shall be current dir #endif #if defined(__ANDROID__) diff --git a/src/SDK_Sockets.c b/src/SDK_Sockets.c index c32d4b0..5686fa7 100644 --- a/src/SDK_Sockets.c +++ b/src/SDK_Sockets.c @@ -76,6 +76,7 @@ void dwr(int level, const char *fmt, ... ); char *api_netpath = (char *)0; void load_symbols(); +void load_symbols_rpc(); int (*realclose)(CLOSE_SIG); // ------------------------------------------------------------------------------