Compare commits

...
Author SHA1 Message Date
Mike Grabowski f7bd2a333c [0.53.0] Bump version numbers 2018-02-05 15:07:44 +01:00
Vojtech NovakandJames Ide 9b877d6692 Make sure refreshControl shows up on initial render if specified
Summary:
[this commit](https://github.com/facebook/react-native/commit/2e1707d0e600a30057511390dd87c18c00f19a59) which was just a small refactor broke refreshControl behavior - if we render FlatList with refreshing=true, the refreshControl won't be visible on initial render.

The problem is, the [previous beginRefreshing method](https://github.com/facebook/react-native/commit/2e1707d0e600a30057511390dd87c18c00f19a59#diff-cfafa8d7e42ab87ab863f917e187a4aeL51) was renamed to `beginRefreshingProgramatically` and the old call was left in one place [here](https://github.com/facebook/react-native/commit/2e1707d0e600a30057511390dd87c18c00f19a59#diff-cfafa8d7e42ab87ab863f917e187a4aeR47).

Now, I am not sure what kind of jumping the mentioned commit was fixing, but since this fix only concerns the initial render, I believe it will not influence the jumping fix.

I have tested this locally in my app, can provide a video if needed.

none

 [IOS] [BUGFIX] [RefreshControl] - Make sure refreshControl shows up on initial render if specified
Closes https://github.com/facebook/react-native/pull/17727

Differential Revision: D6827402

Pulled By: shergin

fbshipit-source-id: 25849244e87af54f25d636b6ade7adcf88958980
2018-01-31 07:02:02 -08:00
Kevin Cassidy JrandJames Ide cf19833ad8 Use boost-for-react-native CocoaPod
Summary:
Use the same header-only distribution of Boost that Android and the automatic ios-install-third-party.sh script uses. Greatly speeds up `pod install`, even when the distribution was already cached.

The dependency tree looks like this:

* React
  * cxxreact subspec
    * **Boost** (versioned, 1.63.0)
    * Folly
      * **Boost** (any version, will resolve to 1.63.0 from above)

Alternative implementation of PR https://github.com/facebook/react-native/pull/16756. Fixes issue #16381.

(same as https://github.com/facebook/react-native/pull/16756)
* Install react-native via Cocoapods (or move a helloWorld react-native application over to use Cocoapods for dependency management)
* Add CxxBridge instead of BatchedBridge to your Podfile
* run pod install
* run react-native run-ios

[Add boost.podspec speed up download time & reduce size of the package](https://github.com/facebook/react-native/pull/16756)

[IOS] [BUGFIX] [third-party-podspecs] - optimize CocoaPods installation (Boost distribution)
Closes https://github.com/facebook/react-native/pull/17476

Differential Revision: D6746095

Pulled By: hramos

fbshipit-source-id: 55b2b5a698691f7fca0bf4c31c4376c2b9eb5379
2018-01-31 07:01:50 -08:00
NicoandJames Ide df8da3b6c4 Prevents JS Debugger issues with CORS
Summary:
<!--
Thank you for sending the PR! We appreciate you spending the time to work on these changes.

Help us understand your motivation by explaining why you decided to make this change.

You can learn more about contributing to React Native here: http://facebook.github.io/react-native/docs/contributing.html

Happy contributing!

-->

See #17618

On certain networks, `xip.io` is used, but as the debugger will always using localhost a change upstream has resulted in a CORS issue (see screenshots in #17618). This change ensures that the debugger will always open with whatever configuration.

> This should be merged in as a patch of `0.52.x` as it affects current release, and `0.51.x` didn't have this issue.

Tested locally, could do with the people having the same issue in #17618 testing it out prior to merging.

(If this PR adds or changes functionality, please take some time to update the docs at https://github.com/facebook/react-native-website, and link to your PR here.)

<!--
Help reviewers and the release process by writing your own release notes

**INTERNAL and MINOR tagged notes will not be included in the next version's final release notes.**

  CATEGORY
[----------]        TYPE
[ CLI      ]   [-------------]      LOCATION
[ DOCS     ]   [ BREAKING    ]   [-------------]
[ GENERAL  ]   [ BUGFIX      ]   [-{Component}-]
[ INTERNAL ]   [ ENHANCEMENT ]   [ {File}      ]
[ IOS      ]   [ FEATURE     ]   [ {Directory} ]   |-----------|
[ ANDROID  ]   [ MINOR       ]   [ {Framework} ] - | {Message} |
[----------]   [-------------]   [-------------]   |-----------|

[CATEGORY] [TYPE] [LOCATION] - MESSAGE

 EXAMPLES:

 [IOS] [BREAKING] [FlatList] - Change a thing that breaks other things
 [ANDROID] [BUGFIX] [TextInput] - Did a thing to TextInput
 [CLI] [FEATURE] [local-cli/info/info.js] - CLI easier to do things with
 [DOCS] [BUGFIX] [GettingStarted.md] - Accidentally a thing/word
 [GENERAL] [ENHANCEMENT] [Yoga] - Added new yoga thing/position
 [INTERNAL] [FEATURE] [./scripts] - Added thing to script that nobody will see
-->

[CLI] [BUGFIX] [local-cli/server/middleware/getDevToolsMiddleware.js] - Prevents JS Debugger issues with CORS
Closes https://github.com/facebook/react-native/pull/17720

Differential Revision: D6828205

Pulled By: hramos

fbshipit-source-id: 7e5d43db9faf7edc9444ba4214aca1a18e25dbd2
2018-01-31 07:00:35 -08:00
James IdeandMike Grabowski 997bfb50e1 [0.53.0-rc.1] Bump version numbers 2018-01-18 12:15:56 -08:00
James Ide b4375b4606 Fix HMR syntax error messages (message instead of description)
Summary:
The code to display HMR errors on the client was reading the `description` field from Metro payloads. Metro does not include `description` in the body of its error payloads -- only in its `body.errors[]` items. This commit changes RN's HMR code to show `body.message` (set consistently with https://github.com/facebook/metro/pull/124) instead of the non-existent `body.description`.

Open a test RN app, enable HMR, and then introduce a syntax error in an app source file. See that the redbox provides information about the syntax error instead of just saying "TransformError undefined".

- https://github.com/facebook/metro/pull/124

[GENERAL][ENHANCEMENT][HMR] - Fix display of syntax error messages when HMR is enabled
Closes https://github.com/facebook/react-native/pull/17619

Differential Revision: D6726516

Pulled By: mjesun

fbshipit-source-id: b1d1008d6f1aa8f88ff8a2aa1374724a305c773b
2018-01-16 12:11:10 -08:00
Mike Grabowski 0b996577e3 [0.53.0-rc.0] Bump version numbers 2018-01-10 18:02:02 +01:00
Mike Grabowski 49cbca7464 Add missing tvOS header 2018-01-10 18:01:55 +01:00
Mike Grabowski dd4611721d Fix typo 2018-01-10 16:01:44 +01:00
Mike Grabowski 82b123e744 Remove remaining 2018-01-10 15:50:10 +01:00
Mike Grabowski 7c3a61f3b6 Downgrade Buck hoping to get build fixed 2018-01-10 15:25:11 +01:00
Mike Grabowski 796122d8f3 Revert "Automated fixups for Instagram"
This reverts commit dd016f334c.
2018-01-10 15:24:16 +01:00
Mike Grabowski aebb34a294 Revert "Replace native cxx_library with fb-specific macros."
This reverts commit ba31d29dc9.
2018-01-10 15:02:37 +01:00
36 changed files with 56 additions and 57 deletions
+3 -3
View File
@@ -46,11 +46,11 @@ aliases:
- &restore-cache-buck
keys:
- v2-buck-{{ arch }}-v2017.11.16.01
- v2-buck-{{ arch }}-v2017.09.04.02
- &save-cache-buck
paths:
- ~/buck
key: v2-buck-{{ arch }}-v2017.11.16.01
key: v2-buck-{{ arch }}-v2017.09.04.02
- &restore-cache-watchman
keys:
@@ -67,7 +67,7 @@ aliases:
- &install-buck
|
if [[ ! -e ~/buck ]]; then
git clone https://github.com/facebook/buck.git ~/buck --branch v2017.11.16.01 --depth=1
git clone https://github.com/facebook/buck.git ~/buck --branch v2017.09.04.02 --depth=1
fi
cd ~/buck && ant
buck --version
+1 -1
View File
@@ -14,7 +14,7 @@
exports.version = {
major: 0,
minor: 0,
minor: 53,
patch: 0,
prerelease: null,
};
@@ -86,6 +86,7 @@
59E6049B1FE9CB4A00BD90C5 /* RCTUITextField.h in Copy Headers */ = {isa = PBXBuildFile; fileRef = 59E604501FE9CAF100BD90C5 /* RCTUITextField.h */; };
59E8C5CC1F8833D100204F5E /* RCTFontAttributes.m in Sources */ = {isa = PBXBuildFile; fileRef = A85C82991F742AA20036C019 /* RCTFontAttributes.m */; };
A85C829A1F742AA20036C019 /* RCTFontAttributes.m in Sources */ = {isa = PBXBuildFile; fileRef = A85C82991F742AA20036C019 /* RCTFontAttributes.m */; };
AD50D1DF20067E6F00A34797 /* RCTBaseTextInputViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 5989E14C20018A2200EA444A /* RCTBaseTextInputViewManager.m */; };
AF3225F91DE5574F00D3E7E7 /* RCTConvert+Text.m in Sources */ = {isa = PBXBuildFile; fileRef = AF3225F81DE5574F00D3E7E7 /* RCTConvert+Text.m */; };
AF3225FA1DE5574F00D3E7E7 /* RCTConvert+Text.m in Sources */ = {isa = PBXBuildFile; fileRef = AF3225F81DE5574F00D3E7E7 /* RCTConvert+Text.m */; };
/* End PBXBuildFile section */
@@ -380,6 +381,7 @@
59E6045D1FE9CAF100BD90C5 /* RCTMultilineTextInputShadowView.m in Sources */,
59E604591FE9CAF100BD90C5 /* RCTRawTextShadowView.m in Sources */,
59E604551FE9CAF100BD90C5 /* RCTTextView.m in Sources */,
AD50D1DF20067E6F00A34797 /* RCTBaseTextInputViewManager.m in Sources */,
59E604691FE9CAF100BD90C5 /* RCTTextSelection.m in Sources */,
59E6045F1FE9CAF100BD90C5 /* RCTMultilineTextInputView.m in Sources */,
59E604611FE9CAF100BD90C5 /* RCTMultilineTextInputViewManager.m in Sources */,
+1 -1
View File
@@ -121,7 +121,7 @@ Error: ${e.message}`
}
case 'error': {
HMRLoadingView.hide();
throw new Error(data.body.type + ' ' + data.body.description);
throw new Error(`${data.body.type}: ${data.body.message}`);
}
default: {
throw new Error(`Unexpected message: ${data}`);
+2 -2
View File
@@ -139,13 +139,13 @@ Pod::Spec.new do |s|
s.subspec "cxxreact" do |ss|
ss.dependency "React/jschelpers"
ss.dependency "React/jsinspector"
ss.dependency "boost"
ss.dependency "boost-for-react-native", "1.63.0"
ss.dependency "Folly", "2016.09.26.00"
ss.compiler_flags = folly_compiler_flags
ss.source_files = "ReactCommon/cxxreact/*.{cpp,h}"
ss.exclude_files = "ReactCommon/cxxreact/SampleCxxModule.*"
ss.private_header_files = "ReactCommon/cxxreact/*.h"
ss.pod_target_xcconfig = { "HEADER_SEARCH_PATHS" => "\"$(PODS_TARGET_SRCROOT)/ReactCommon\" \"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/DoubleConversion\" \"$(PODS_ROOT)/Folly\"" }
ss.pod_target_xcconfig = { "HEADER_SEARCH_PATHS" => "\"$(PODS_TARGET_SRCROOT)/ReactCommon\" \"$(PODS_ROOT)/boost-for-react-native\" \"$(PODS_ROOT)/DoubleConversion\" \"$(PODS_ROOT)/Folly\"" }
end
s.subspec "ART" do |ss|
+1 -1
View File
@@ -11,7 +11,7 @@
#define RCT_REACT_NATIVE_VERSION @{ \
@"major": @(0), \
@"minor": @(0), \
@"minor": @(53), \
@"patch": @(0), \
@"prerelease": [NSNull null], \
}
+1 -1
View File
@@ -44,7 +44,7 @@ RCT_NOT_IMPLEMENTED(- (instancetype)initWithCoder:(NSCoder *)aDecoder)
// If the control is refreshing when mounted we need to call
// beginRefreshing in layoutSubview or it doesn't work.
if (_currentRefreshingState && _isInitialRender) {
[self beginRefreshing];
[self beginRefreshingProgrammatically];
}
_isInitialRender = false;
}
+1 -1
View File
@@ -1,4 +1,4 @@
VERSION_NAME=1000.0.0-master
VERSION_NAME=0.53.0
GROUP=com.facebook.react
POM_NAME=ReactNative
@@ -12,7 +12,6 @@ android_library(
provided_deps = [
react_native_dep("third-party/android/support/v4:lib-support-v4"),
],
required_for_source_only_abi = True,
visibility = [
"PUBLIC",
],
@@ -16,7 +16,6 @@ android_library(
provided_deps = [
react_native_dep("third-party/android/support/v4:lib-support-v4"),
],
required_for_source_only_abi = True,
visibility = [
"PUBLIC",
],
@@ -9,14 +9,17 @@
package com.facebook.react.devsupport;
import android.os.Handler;
import android.os.Looper;
import com.facebook.infer.annotation.Assertions;
import com.facebook.react.bridge.JavaJSExecutor;
import javax.annotation.Nullable;
import java.util.HashMap;
import java.util.concurrent.Semaphore;
import java.util.concurrent.atomic.AtomicInteger;
import javax.annotation.Nullable;
import android.os.Handler;
import android.os.Looper;
import com.facebook.infer.annotation.Assertions;
import com.facebook.react.bridge.JavaJSExecutor;
/**
* Executes JS remotely via the react nodejs server as a proxy to a browser on the host machine.
@@ -157,7 +160,8 @@ public class WebsocketJavaScriptExecutor implements JavaJSExecutor {
}
@Override
public void loadApplicationScript(String sourceURL) throws JavaJSExecutor.ProxyExecutorException {
public void loadApplicationScript(String sourceURL)
throws ProxyExecutorException {
JSExecutorCallbackFuture callback = new JSExecutorCallbackFuture();
Assertions.assertNotNull(mWebSocketClient).loadApplicationScript(
sourceURL,
@@ -172,7 +176,7 @@ public class WebsocketJavaScriptExecutor implements JavaJSExecutor {
@Override
public @Nullable String executeJSCall(String methodName, String jsonArgsArray)
throws JavaJSExecutor.ProxyExecutorException {
throws ProxyExecutorException {
JSExecutorCallbackFuture callback = new JSExecutorCallbackFuture();
Assertions.assertNotNull(mWebSocketClient).executeJSCall(
methodName,
@@ -3,7 +3,6 @@ include_defs("//ReactAndroid/DEFS")
android_library(
name = "annotations",
srcs = glob(["**/*.java"]),
required_for_source_only_abi = True,
visibility = [
"PUBLIC",
],
@@ -18,7 +18,7 @@ import java.util.Map;
public class ReactNativeVersion {
public static final Map<String, Object> VERSION = MapBuilder.<String, Object>of(
"major", 0,
"minor", 0,
"minor", 53,
"patch", 0,
"prerelease", null);
}
@@ -14,7 +14,6 @@ android_library(
provided_deps = [
react_native_dep("third-party/android/support/v4:lib-support-v4"),
],
required_for_source_only_abi = True,
visibility = [
"PUBLIC",
],
@@ -3,7 +3,6 @@ include_defs("//ReactAndroid/DEFS")
android_library(
name = "annotations",
srcs = glob(["*.java"]),
required_for_source_only_abi = True,
visibility = [
"PUBLIC",
],
@@ -12,7 +12,7 @@ import android.view.animation.Transformation;
*/
/* package */ class OpacityAnimation extends Animation {
static class OpacityAnimationListener implements Animation.AnimationListener {
static class OpacityAnimationListener implements AnimationListener {
private final View mView;
private boolean mLayerTypeChanged = false;
@@ -11,7 +11,6 @@ android_library(
react_native_dep("third-party/android/support-annotations:android-support-annotations"),
react_native_dep("third-party/android/support/v4:lib-support-v4"),
],
required_for_source_only_abi = True,
visibility = ["PUBLIC"],
deps = [
react_native_dep("third-party/java/jsr-305:jsr-305"),
@@ -3,7 +3,6 @@ include_defs("//ReactAndroid/DEFS")
android_library(
name = "modal",
srcs = glob(["*.java"]),
required_for_source_only_abi = True,
visibility = [
"PUBLIC",
],
@@ -3,7 +3,6 @@ include_defs("//ReactAndroid/DEFS")
android_library(
name = "text",
srcs = glob(["*.java"]),
required_for_source_only_abi = True,
visibility = [
"PUBLIC",
],
@@ -6,7 +6,6 @@ android_library(
provided_deps = [
react_native_dep("third-party/android/support/v4:lib-support-v4"),
],
required_for_source_only_abi = True,
visibility = [
"PUBLIC",
],
@@ -54,13 +54,13 @@ public class ReactViewGroup extends ViewGroup implements
/**
* This listener will be set for child views when removeClippedSubview property is enabled. When
* children layout is updated, it will call {@link #updateSubviewClipStatus} to notify parent view
* about that fact so that view can be attached/detached if necessary.
* children layout is updated, it will call {@link #updateSubviewClipStatus} to notify parent
* view about that fact so that view can be attached/detached if necessary.
*
* <p>TODO(7728005): Attach/detach views in batch - once per frame in case when multiple children
* TODO(7728005): Attach/detach views in batch - once per frame in case when multiple children
* update their layout.
*/
private static final class ChildrenLayoutChangeListener implements View.OnLayoutChangeListener {
private static final class ChildrenLayoutChangeListener implements OnLayoutChangeListener {
private final ReactViewGroup mParent;
@@ -422,7 +422,7 @@ public class ReactViewGroup extends ViewGroup implements
}
@Override
public void addView(View child, int index, ViewGroup.LayoutParams params) {
public void addView(View child, int index, LayoutParams params) {
// This will get called for every overload of addView so there is not need to override every method.
mDrawingOrderHelper.handleAddView(child);
setChildrenDrawingOrderEnabled(mDrawingOrderHelper.shouldEnableCustomDrawingOrder());
@@ -494,8 +494,7 @@ public class ReactViewGroup extends ViewGroup implements
addViewWithSubviewClippingEnabled(child, index, sDefaultLayoutParam);
}
/*package*/ void addViewWithSubviewClippingEnabled(
View child, int index, ViewGroup.LayoutParams params) {
/*package*/ void addViewWithSubviewClippingEnabled(View child, int index, LayoutParams params) {
Assertions.assertCondition(mRemoveClippedSubviews);
Assertions.assertNotNull(mClippingRect);
Assertions.assertNotNull(mAllChildren);
@@ -6,7 +6,6 @@ android_library(
provided_deps = [
react_native_dep("third-party/android/support/v4:lib-support-v4"),
],
required_for_source_only_abi = True,
visibility = [
"PUBLIC",
],
@@ -9,17 +9,19 @@
package com.facebook.react.views.viewpager;
import java.util.ArrayList;
import java.util.List;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import com.facebook.react.bridge.ReactContext;
import com.facebook.react.uimanager.UIManagerModule;
import com.facebook.react.uimanager.events.EventDispatcher;
import com.facebook.react.uimanager.events.NativeGestureUtil;
import java.util.ArrayList;
import java.util.List;
/**
* Wrapper view for {@link ViewPager}. It's forwarding calls to {@link ViewGroup#addView} to add
@@ -116,7 +118,7 @@ public class ReactViewPager extends ViewPager {
}
}
private class PageChangeListener implements ViewPager.OnPageChangeListener {
private class PageChangeListener implements OnPageChangeListener {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
@@ -2,7 +2,7 @@ include_defs("//ReactAndroid/DEFS")
# This target is only used in open source
if IS_OSS_BUILD:
fb_xplat_cxx_library(
cxx_library(
name = 'jni',
soname = 'libfb.$(ext)',
srcs = glob(['*.cpp', 'jni/*.cpp', 'lyra/*.cpp']),
@@ -2,7 +2,7 @@ include_defs("//ReactAndroid/DEFS")
include_defs("//ReactCommon/DEFS")
fb_xplat_cxx_library(
cxx_library(
name = "fbgloginit",
srcs = [
"glog_init.cpp",
@@ -7,7 +7,7 @@ include_defs("//ReactAndroid/DEFS")
# LICENSE file in the root directory of this source tree. An additional grant
# of patent rights can be found in the PATENTS file in the same directory.
fb_xplat_cxx_library(
cxx_library(
name = "jni-hack",
header_namespace = "",
exported_headers = [
@@ -2,7 +2,7 @@ include_defs("//ReactAndroid/DEFS")
# This target is only used in open source
if IS_OSS_BUILD:
fb_xplat_cxx_library(
cxx_library(
name = 'jni',
soname = 'libyoga.$(ext)',
srcs = glob(['jni/*.cpp']),
@@ -1,6 +1,6 @@
include_defs("//ReactAndroid/DEFS")
fb_xplat_cxx_library(
cxx_library(
name = "jni",
srcs = glob(["*.cpp"]),
headers = glob(
+1 -1
View File
@@ -20,7 +20,7 @@ EXPORTED_HEADERS = [
"WritableNativeMap.h",
]
fb_xplat_cxx_library(
cxx_library(
name = "jni",
srcs = glob(["*.cpp"]),
headers = glob(
@@ -1,6 +1,6 @@
include_defs("//ReactAndroid/DEFS")
fb_xplat_cxx_library(
cxx_library(
name = "perftests",
srcs = ["OnLoad.cpp"],
compiler_flags = [
+1 -1
View File
@@ -1,6 +1,6 @@
include_defs("//ReactCommon/DEFS")
fb_xplat_cxx_library(
cxx_library(
name = "microprofiler",
srcs = [
"MicroProfiler.cpp",
+1 -1
View File
@@ -1,4 +1,4 @@
fb_xplat_cxx_library(
cxx_library(
name = "yoga",
srcs = glob(["yoga/*.cpp"]),
header_namespace = "",
@@ -14,8 +14,8 @@ const launchChrome = require('../util/launchChrome');
const {exec} = require('child_process');
function launchChromeDevTools(port, args = '') {
var debuggerURL = 'http://localhost:' + port + '/debugger-ui' + args;
function launchChromeDevTools(host, args = '') {
var debuggerURL = 'http://' + host + '/debugger-ui' + args;
console.log('Launching Dev Tools...');
launchChrome(debuggerURL);
}
@@ -25,7 +25,7 @@ function escapePath(pathname) {
return '"' + pathname + '"';
}
function launchDevTools({port, projectRoots}, isChromeConnected) {
function launchDevTools({host, projectRoots}, isChromeConnected) {
// Explicit config always wins
var customDebugger = process.env.REACT_DEBUGGER;
if (customDebugger) {
@@ -39,12 +39,13 @@ function launchDevTools({port, projectRoots}, isChromeConnected) {
});
} else if (!isChromeConnected()) {
// Dev tools are not yet open; we need to open a session
launchChromeDevTools(port);
launchChromeDevTools(host);
}
}
module.exports = function(options, isChromeConnected) {
return function(req, res, next) {
var host = req.headers.host;
if (req.url === '/launch-safari-devtools') {
// TODO: remove `console.log` and dev tools binary
console.log(
@@ -62,7 +63,7 @@ module.exports = function(options, isChromeConnected) {
launchDevTools(options, isChromeConnected);
res.end('OK');
} else if (req.url === '/launch-js-devtools') {
launchDevTools(options, isChromeConnected);
launchDevTools({...options, host}, isChromeConnected);
res.end('OK');
} else {
next();
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "react-native",
"version": "1000.0.0",
"version": "0.53.0",
"description": "A framework for building native apps using React",
"license": "BSD-3-Clause",
"repository": {
@@ -217,4 +217,4 @@
"shelljs": "^0.7.8",
"sinon": "^2.2.0"
}
}
}
+2 -2
View File
@@ -8,7 +8,7 @@ Pod::Spec.new do |spec|
spec.source = { :git => 'https://github.com/facebook/folly.git',
:tag => "v#{spec.version}" }
spec.module_name = 'folly'
spec.dependency 'boost'
spec.dependency 'boost-for-react-native'
spec.dependency 'DoubleConversion'
spec.dependency 'GLog'
spec.compiler_flags = '-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1'
@@ -28,7 +28,7 @@ Pod::Spec.new do |spec|
spec.libraries = "stdc++"
spec.pod_target_xcconfig = { "USE_HEADERMAP" => "NO",
"CLANG_CXX_LANGUAGE_STANDARD" => "c++14",
"HEADER_SEARCH_PATHS" => "\"$(PODS_TARGET_SRCROOT)\" \"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/DoubleConversion\"" }
"HEADER_SEARCH_PATHS" => "\"$(PODS_TARGET_SRCROOT)\" \"$(PODS_ROOT)/boost-for-react-native\" \"$(PODS_ROOT)/DoubleConversion\"" }
# Pinning to the same version as React.podspec.
spec.platforms = { :ios => "8.0", :tvos => "9.2" }
+1
View File
@@ -10,6 +10,7 @@ Pod::Spec.new do |spec|
spec.source = { :git => 'https://github.com/google/glog.git',
:tag => "v#{spec.version}" }
spec.module_name = 'glog'
spec.header_dir = 'glog'
spec.source_files = 'src/glog/*.h',
'src/demangle.cc',
'src/logging.cc',