Summary: $ buck build //csharp:yoganet-ios $ buck targets --show-output //csharp:yoganet-ios //csharp:yoganet-ios buck-out/gen/csharp/yoganet-ios/libyoga.a $ lipo -info buck-out/gen/csharp/yoganet-ios/libyoga.a Architectures in the fat file: buck-out/gen/csharp/yoganet-ios/libyoga.a are: armv7 x86_64 arm64 $ nm buck-out/gen/csharp/yoganet-ios/libyoga.a|grep -e 'T _YGNodeNew' -e 'ygNode' -e 'T _YGInteropSetLogger' 0000000000000000 T _YGNodeNew 0000000000001070 t -[UIView(Yoga) ygNode] 0000000000000000 T _YGInteropSetLogger Closes https://github.com/facebook/yoga/pull/286 Reviewed By: emilsjolander Differential Revision: D4338919 Pulled By: splhack fbshipit-source-id: 7acfdfa0dc4d152d7bfe92161efdeb9f161f70e6
64 lines
1.6 KiB
Python
64 lines
1.6 KiB
Python
# Copyright (c) 2014-present, Facebook, Inc.
|
|
# All rights reserved.
|
|
#
|
|
# This source code is licensed under the BSD-style license found in the
|
|
# 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.
|
|
|
|
include_defs('//YOGA_DEFS')
|
|
|
|
COMPILER_FLAGS = BASE_COMPILER_FLAGS + ['-std=c++11']
|
|
|
|
csharp_library(
|
|
name = 'yogalibnet46',
|
|
dll_name = 'Facebook.Yoga.dll',
|
|
framework_ver = 'net46',
|
|
srcs = glob(['**/*.cs']),
|
|
)
|
|
|
|
csharp_library(
|
|
name = 'yogalibnet45',
|
|
dll_name = 'Facebook.Yoga.dll',
|
|
framework_ver = 'net45',
|
|
srcs = glob(['**/*.cs']),
|
|
)
|
|
|
|
cxx_library(
|
|
name = 'yoganet',
|
|
soname = 'libyoga.$(ext)',
|
|
srcs = glob(['Yoga/YGInterop.cpp']),
|
|
compiler_flags = COMPILER_FLAGS,
|
|
link_style = 'static',
|
|
link_whole = True,
|
|
deps = [yoga_dep(':yoga')],
|
|
visibility = ['PUBLIC'],
|
|
)
|
|
|
|
with allow_unsafe_import():
|
|
import os
|
|
|
|
if os.path.isdir('/Applications/Xcode.app'):
|
|
yoganet_ios_srcs = []
|
|
for arch in ['iphonesimulator-x86_64', 'iphoneos-arm64', 'iphoneos-armv7']:
|
|
name = 'yoganet-' + arch
|
|
yoganet_ios_srcs.append(':' + name)
|
|
genrule(
|
|
name = name,
|
|
srcs = [
|
|
yoga_dep(':yoga#%s,static' % arch),
|
|
yoga_dep('YogaKit:YogaKit#%s,static' % arch),
|
|
yoga_dep('csharp:yoganet#%s,static' % arch),
|
|
],
|
|
out = 'libyoga-%s.a' % arch,
|
|
cmd = 'libtool -static -o $OUT $SRCS',
|
|
visibility = [yoga_dep('csharp:yoganet-ios')],
|
|
)
|
|
|
|
genrule(
|
|
name = 'yoganet-ios',
|
|
srcs = yoganet_ios_srcs,
|
|
out = 'libyoga.a',
|
|
cmd = 'lipo $SRCS -create -output $OUT',
|
|
visibility = ['PUBLIC'],
|
|
)
|