Removed nuget.exe and nugetpack powershell script, changed version number on assemblies, DLLs, and nuspecs to 1.0.0.0, Changed ARM related nuspec references to use win8-arm since win-arm is not a valid NuGet Runtime Identifier (RID)

This commit is contained in:
Andrew Forster
2016-12-16 16:01:54 -08:00
28 changed files with 123 additions and 92 deletions

8
BUCK
View File

@@ -7,14 +7,6 @@
include_defs('//YOGA_DEFS') include_defs('//YOGA_DEFS')
BASE_COMPILER_FLAGS = [
'-fno-omit-frame-pointer',
'-fexceptions',
'-Wall',
'-Werror',
'-O3',
]
GMOCK_OVERRIDE_FLAGS = [ GMOCK_OVERRIDE_FLAGS = [
# gmock does not mark mocked methods as override, ignore the warnings in tests # gmock does not mark mocked methods as override, ignore the warnings in tests
'-Wno-inconsistent-missing-override', '-Wno-inconsistent-missing-override',

View File

@@ -17,6 +17,14 @@ CXX_LIBRARY_WHITELIST = [
'//java:jni', '//java:jni',
] ]
BASE_COMPILER_FLAGS = [
'-fno-omit-frame-pointer',
'-fexceptions',
'-Wall',
'-Werror',
'-O3',
]
def yoga_dep(dep): def yoga_dep(dep):
return '//' + dep return '//' + dep

View File

@@ -9,7 +9,7 @@
#import <XCTest/XCTest.h> #import <XCTest/XCTest.h>
#import "UIView+Yoga.h" #import <YogaKit/UIView+Yoga.h>
@interface YogaKitTests : XCTestCase @interface YogaKitTests : XCTestCase
@end @end

View File

@@ -55,7 +55,7 @@
- (YGDirection)yg_resolvedDirection; - (YGDirection)yg_resolvedDirection;
/** /**
Perform a layout calculation and update the frames of the views in the hierarchy with th results Perform a layout calculation and update the frames of the views in the hierarchy with the results
*/ */
- (void)yg_applyLayout; - (void)yg_applyLayout;

View File

@@ -53,7 +53,7 @@
- (NSUInteger)yg_numberOfChildren - (NSUInteger)yg_numberOfChildren
{ {
return YGNodeChildCount([self ygNode]); return YGNodeGetChildCount([self ygNode]);
} }
#pragma mark - Setters #pragma mark - Setters
@@ -295,7 +295,7 @@ static void YGAttachNodesFromViewHierachy(UIView *view) {
} }
BOOL shouldReconstructChildList = NO; BOOL shouldReconstructChildList = NO;
if (YGNodeChildCount(node) != subviewsToInclude.count) { if (YGNodeGetChildCount(node) != subviewsToInclude.count) {
shouldReconstructChildList = YES; shouldReconstructChildList = YES;
} else { } else {
for (int i = 0; i < subviewsToInclude.count; i++) { for (int i = 0; i < subviewsToInclude.count; i++) {
@@ -324,8 +324,8 @@ static void YGRemoveAllChildren(const YGNodeRef node)
return; return;
} }
while (YGNodeChildCount(node) > 0) { while (YGNodeGetChildCount(node) > 0) {
YGNodeRemoveChild(node, YGNodeGetChild(node, YGNodeChildCount(node) - 1)); YGNodeRemoveChild(node, YGNodeGetChild(node, YGNodeGetChildCount(node) - 1));
} }
} }

View File

@@ -5,6 +5,10 @@
# LICENSE file in the root directory of this source tree. An additional grant # 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. # 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( csharp_library(
name = 'yogalibnet46', name = 'yogalibnet46',
dll_name = 'Facebook.Yoga.dll', dll_name = 'Facebook.Yoga.dll',
@@ -18,3 +22,42 @@ csharp_library(
framework_ver = 'net45', framework_ver = 'net45',
srcs = glob(['**/*.cs']), 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'],
)

View File

@@ -3,7 +3,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 14 # Visual Studio 14
VisualStudioVersion = 14.0.25420.1 VisualStudioVersion = 14.0.25420.1
MinimumVisualStudioVersion = 10.0.40219.1 MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Yoga", "Yoga\Yoga.vcxproj", "{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "yoga", "Yoga\Yoga.vcxproj", "{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facebook.Yoga", "Facebook.Yoga\Facebook.Yoga.csproj", "{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facebook.Yoga", "Facebook.Yoga\Facebook.Yoga.csproj", "{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}"
ProjectSection(ProjectDependencies) = postProject ProjectSection(ProjectDependencies) = postProject
@@ -27,7 +27,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
Build\Facebook.Yoga.NativeInterop.targets = Build\Facebook.Yoga.NativeInterop.targets Build\Facebook.Yoga.NativeInterop.targets = Build\Facebook.Yoga.NativeInterop.targets
NuGet\Facebook.Yoga.nuspec = NuGet\Facebook.Yoga.nuspec NuGet\Facebook.Yoga.nuspec = NuGet\Facebook.Yoga.nuspec
NuGet\Facebook.Yoga.targets = NuGet\Facebook.Yoga.targets NuGet\Facebook.Yoga.targets = NuGet\Facebook.Yoga.targets
nuget\NuGetPackageBuilder.ps1 = nuget\NuGetPackageBuilder.ps1
EndProjectSection EndProjectSection
EndProject EndProject
Global Global

View File

@@ -3,7 +3,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 14 # Visual Studio 14
VisualStudioVersion = 14.0.25420.1 VisualStudioVersion = 14.0.25420.1
MinimumVisualStudioVersion = 10.0.40219.1 MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Yoga", "Yoga\Yoga.vcxproj", "{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "yoga", "Yoga\Yoga.vcxproj", "{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facebook.Yoga", "Facebook.Yoga\Facebook.Yoga.csproj", "{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facebook.Yoga", "Facebook.Yoga\Facebook.Yoga.csproj", "{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}"
ProjectSection(ProjectDependencies) = postProject ProjectSection(ProjectDependencies) = postProject
@@ -25,7 +25,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
Build\Facebook.Yoga.NativeInterop.targets = Build\Facebook.Yoga.NativeInterop.targets Build\Facebook.Yoga.NativeInterop.targets = Build\Facebook.Yoga.NativeInterop.targets
NuGet\Facebook.Yoga.nuspec = NuGet\Facebook.Yoga.nuspec NuGet\Facebook.Yoga.nuspec = NuGet\Facebook.Yoga.nuspec
NuGet\Facebook.Yoga.targets = NuGet\Facebook.Yoga.targets NuGet\Facebook.Yoga.targets = NuGet\Facebook.Yoga.targets
nuget\NuGetPackageBuilder.ps1 = nuget\NuGetPackageBuilder.ps1
EndProjectSection EndProjectSection
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facebook.Yoga.Universal.Tests", "tests\Facebook.Yoga.Universal.Tests\Facebook.Yoga.Universal.Tests.csproj", "{0856757B-1671-4E43-AF41-4AEA53988796}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facebook.Yoga.Universal.Tests", "tests\Facebook.Yoga.Universal.Tests\Facebook.Yoga.Universal.Tests.csproj", "{0856757B-1671-4E43-AF41-4AEA53988796}"

View File

@@ -3,7 +3,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 14 # Visual Studio 14
VisualStudioVersion = 14.0.25420.1 VisualStudioVersion = 14.0.25420.1
MinimumVisualStudioVersion = 10.0.40219.1 MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Yoga", "Yoga\Yoga.vcxproj", "{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "yoga", "Yoga\Yoga.vcxproj", "{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facebook.Yoga", "Facebook.Yoga\Facebook.Yoga.csproj", "{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facebook.Yoga", "Facebook.Yoga\Facebook.Yoga.csproj", "{3AACE384-FDEC-4D91-A3B2-EEB21B46C9AD}"
ProjectSection(ProjectDependencies) = postProject ProjectSection(ProjectDependencies) = postProject
@@ -27,7 +27,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
Build\Facebook.Yoga.NativeInterop.targets = Build\Facebook.Yoga.NativeInterop.targets Build\Facebook.Yoga.NativeInterop.targets = Build\Facebook.Yoga.NativeInterop.targets
NuGet\Facebook.Yoga.nuspec = NuGet\Facebook.Yoga.nuspec NuGet\Facebook.Yoga.nuspec = NuGet\Facebook.Yoga.nuspec
NuGet\Facebook.Yoga.targets = NuGet\Facebook.Yoga.targets NuGet\Facebook.Yoga.targets = NuGet\Facebook.Yoga.targets
nuget\NuGetPackageBuilder.ps1 = nuget\NuGetPackageBuilder.ps1
EndProjectSection EndProjectSection
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facebook.Yoga.Universal.Tests", "tests\Facebook.Yoga.Universal.Tests\Facebook.Yoga.Universal.Tests.csproj", "{0856757B-1671-4E43-AF41-4AEA53988796}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facebook.Yoga.Universal.Tests", "tests\Facebook.Yoga.Universal.Tests\Facebook.Yoga.Universal.Tests.csproj", "{0856757B-1671-4E43-AF41-4AEA53988796}"

View File

@@ -14,7 +14,7 @@ namespace Facebook.Yoga
{ {
internal static class Native internal static class Native
{ {
#if UNITY_IOS && !UNITY_EDITOR #if (UNITY_IOS && !UNITY_EDITOR) || __IOS__
private const string DllName = "__Internal"; private const string DllName = "__Internal";
#else #else
private const string DllName = "yoga"; private const string DllName = "yoga";
@@ -58,7 +58,7 @@ namespace Facebook.Yoga
public static extern IntPtr YGNodeGetChild(IntPtr node, uint index); public static extern IntPtr YGNodeGetChild(IntPtr node, uint index);
[DllImport(DllName, ExactSpelling = true, CallingConvention = CallingConvention.Cdecl)] [DllImport(DllName, ExactSpelling = true, CallingConvention = CallingConvention.Cdecl)]
public static extern uint YGNodeChildCount(IntPtr node); public static extern uint YGNodeGetChildCount(IntPtr node);
[DllImport(DllName, ExactSpelling = true, CallingConvention = CallingConvention.Cdecl)] [DllImport(DllName, ExactSpelling = true, CallingConvention = CallingConvention.Cdecl)]
public static extern void YGNodeCalculateLayout(IntPtr node, public static extern void YGNodeCalculateLayout(IntPtr node,

View File

@@ -24,6 +24,6 @@ using System.Runtime.InteropServices;
[assembly: NeutralResourcesLanguage("en")] [assembly: NeutralResourcesLanguage("en")]
[assembly: AssemblyVersion("3.0.0.0")] [assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("3.0.0.0")] [assembly: AssemblyFileVersion("1.0.0.0")]

View File

@@ -31,12 +31,12 @@ namespace Facebook.Yoga
Spacing margin = null, Spacing margin = null,
Spacing padding = null, Spacing padding = null,
Spacing border = null, Spacing border = null,
float? Width = null, float? width = null,
float? Height = null, float? height = null,
float? MaxWidth = null, float? maxWidth = null,
float? MaxHeight = null, float? maxHeight = null,
float? MinWidth = null, float? minWidth = null,
float? MinHeight = null) float? minHeight = null)
{ {
YogaNode node = new YogaNode(); YogaNode node = new YogaNode();
@@ -197,34 +197,34 @@ namespace Facebook.Yoga
} }
} }
if (Width.HasValue) if (width.HasValue)
{ {
node.Width = Width.Value; node.Width = width.Value;
} }
if (Height.HasValue) if (height.HasValue)
{ {
node.Height = Height.Value; node.Height = height.Value;
} }
if (MinWidth.HasValue) if (minWidth.HasValue)
{ {
node.MinWidth = MinWidth.Value; node.MinWidth = minWidth.Value;
} }
if (MinHeight.HasValue) if (minHeight.HasValue)
{ {
node.MinHeight = MinHeight.Value; node.MinHeight = minHeight.Value;
} }
if (MaxWidth.HasValue) if (maxWidth.HasValue)
{ {
node.MaxWidth = MaxWidth.Value; node.MaxWidth = maxWidth.Value;
} }
if (MaxHeight.HasValue) if (maxHeight.HasValue)
{ {
node.MaxHeight = MaxHeight.Value; node.MaxHeight = maxHeight.Value;
} }
return node; return node;

Binary file not shown.

View File

@@ -29,6 +29,7 @@
<PropertyGroup Label="Globals"> <PropertyGroup Label="Globals">
<ProjectGuid>{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}</ProjectGuid> <ProjectGuid>{0446C86B-F47B-4C46-B673-C7AE0CFF35D5}</ProjectGuid>
<Keyword>Win32Proj</Keyword> <Keyword>Win32Proj</Keyword>
<ProjectName>yoga</ProjectName>
<RootNamespace>Yoga</RootNamespace> <RootNamespace>Yoga</RootNamespace>
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion> <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
<WindowsSDKDesktopARMSupport>true</WindowsSDKDesktopARMSupport> <WindowsSDKDesktopARMSupport>true</WindowsSDKDesktopARMSupport>

View File

@@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd"> <package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd">
<metadata> <metadata>
<id>Facebook.Yoga.Native</id> <id>Facebook.Yoga.Native</id>
<version>3.0.0-pre</version> <version>1.0.0-pre</version>
<title>Facebook.Yoga.Native</title> <title>Facebook.Yoga.Native</title>
<authors>Facebook</authors> <authors>Facebook</authors>
<owners>Facebook</owners> <owners>Facebook</owners>
@@ -31,8 +31,8 @@
<file src="..\Yoga\bin\x64\Release\Yoga.dll" target="runtimes\win-x64\native"/> <file src="..\Yoga\bin\x64\Release\Yoga.dll" target="runtimes\win-x64\native"/>
<file src="..\Yoga\bin\x64\Release\Yoga.pdb" target="runtimes\win-x64\native"/> <file src="..\Yoga\bin\x64\Release\Yoga.pdb" target="runtimes\win-x64\native"/>
<file src="..\Yoga\bin\ARM\Release\Yoga.dll" target="runtimes\win-arm\native"/> <file src="..\Yoga\bin\ARM\Release\Yoga.dll" target="runtimes\win8-arm\native"/>
<file src="..\Yoga\bin\ARM\Release\Yoga.pdb" target="runtimes\win-arm\native"/> <file src="..\Yoga\bin\ARM\Release\Yoga.pdb" target="runtimes\win8-arm\native"/>
</files> </files>
</package> </package>

View File

@@ -27,7 +27,7 @@
</Content> </Content>
</ItemGroup> </ItemGroup>
<ItemGroup Condition=" (Exists('packages.config') Or Exists('packages.$(MSBuildProjectName).config')) And '$(Platform)' == 'ARM'"> <ItemGroup Condition=" (Exists('packages.config') Or Exists('packages.$(MSBuildProjectName).config')) And '$(Platform)' == 'ARM'">
<Content Include="$(MSBuildThisFileDirectory)..\..\runtimes\win-arm\native\*"> <Content Include="$(MSBuildThisFileDirectory)..\..\runtimes\win8-arm\native\*">
<Link>%(Filename)%(Extension)</Link> <Link>%(Filename)%(Extension)</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<Visible>False</Visible> <Visible>False</Visible>

View File

@@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd"> <package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd">
<metadata> <metadata>
<id>Facebook.Yoga</id> <id>Facebook.Yoga</id>
<version>3.0.0-pre</version> <version>1.0.0-pre</version>
<title>Facebook.Yoga</title> <title>Facebook.Yoga</title>
<authors>Facebook</authors> <authors>Facebook</authors>
<owners>Facebook</owners> <owners>Facebook</owners>
@@ -30,8 +30,8 @@
<file src="..\Facebook.Yoga\bin\x64\Release\Facebook.Yoga.dll" target="runtimes\win-x64\lib\netstandard"/> <file src="..\Facebook.Yoga\bin\x64\Release\Facebook.Yoga.dll" target="runtimes\win-x64\lib\netstandard"/>
<file src="..\Facebook.Yoga\bin\x64\Release\Facebook.Yoga.pdb" target="runtimes\win-x64\lib\netstandard"/> <file src="..\Facebook.Yoga\bin\x64\Release\Facebook.Yoga.pdb" target="runtimes\win-x64\lib\netstandard"/>
<file src="..\Facebook.Yoga\bin\ARM\Release\Facebook.Yoga.dll" target="runtimes\win-arm\lib\netstandard"/> <file src="..\Facebook.Yoga\bin\ARM\Release\Facebook.Yoga.dll" target="runtimes\win8-arm\lib\netstandard"/>
<file src="..\Facebook.Yoga\bin\ARM\Release\Facebook.Yoga.pdb" target="runtimes\win-arm\lib\netstandard"/> <file src="..\Facebook.Yoga\bin\ARM\Release\Facebook.Yoga.pdb" target="runtimes\win8-arm\lib\netstandard"/>
<!-- Native --> <!-- Native -->
<file src="..\Yoga\bin\x86\Release\Yoga.dll" target="runtimes\win-x86\native"/> <file src="..\Yoga\bin\x86\Release\Yoga.dll" target="runtimes\win-x86\native"/>
@@ -40,7 +40,7 @@
<file src="..\Yoga\bin\x64\Release\Yoga.dll" target="runtimes\win-x64\native"/> <file src="..\Yoga\bin\x64\Release\Yoga.dll" target="runtimes\win-x64\native"/>
<file src="..\Yoga\bin\x64\Release\Yoga.pdb" target="runtimes\win-x64\native"/> <file src="..\Yoga\bin\x64\Release\Yoga.pdb" target="runtimes\win-x64\native"/>
<file src="..\Yoga\bin\ARM\Release\Yoga.dll" target="runtimes\win-arm\native"/> <file src="..\Yoga\bin\ARM\Release\Yoga.dll" target="runtimes\win8-arm\native"/>
<file src="..\Yoga\bin\ARM\Release\Yoga.pdb" target="runtimes\win-arm\native"/> <file src="..\Yoga\bin\ARM\Release\Yoga.pdb" target="runtimes\win8-arm\native"/>
</files> </files>
</package> </package>

View File

@@ -37,12 +37,12 @@
</Content> </Content>
</ItemGroup> </ItemGroup>
<ItemGroup Condition=" (Exists('packages.config') Or Exists('packages.$(MSBuildProjectName).config')) And '$(Platform)' == 'ARM'"> <ItemGroup Condition=" (Exists('packages.config') Or Exists('packages.$(MSBuildProjectName).config')) And '$(Platform)' == 'ARM'">
<Content Include="$(MSBuildThisFileDirectory)..\..\runtimes\win-arm\lib\netstandard\*"> <Content Include="$(MSBuildThisFileDirectory)..\..\runtimes\win8-arm\lib\netstandard\*">
<Link>%(Filename)%(Extension)</Link> <Link>%(Filename)%(Extension)</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<Visible>False</Visible> <Visible>False</Visible>
</Content> </Content>
<Content Include="$(MSBuildThisFileDirectory)..\..\runtimes\win-arm\native\*"> <Content Include="$(MSBuildThisFileDirectory)..\..\runtimes\win8-arm\native\*">
<Link>%(Filename)%(Extension)</Link> <Link>%(Filename)%(Extension)</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<Visible>False</Visible> <Visible>False</Visible>

View File

@@ -1,10 +0,0 @@
$solutionRoot = Resolve-Path ..\
# Delete any existing output.
Remove-Item *.nupkg
# Create new packages for any nuspec files that exist in this directory.
Foreach ($nuspec in $(Get-Item *.nuspec))
{
.\Tools\NuGet.exe pack "$nuspec"
}

Binary file not shown.

View File

@@ -23,6 +23,6 @@ using System.Runtime.InteropServices;
[assembly: NeutralResourcesLanguage("en")] [assembly: NeutralResourcesLanguage("en")]
[assembly: AssemblyVersion("3.0.0.0")] [assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("3.0.0.0")] [assembly: AssemblyFileVersion("1.0.0.0")]

View File

@@ -87,12 +87,12 @@ namespace Facebook.Yoga
padding: new Spacing(top: 13, bottom: 14, left: 15, right: 16), padding: new Spacing(top: 13, bottom: 14, left: 15, right: 16),
border: new Spacing(top: 17, bottom: 18, left: 19, right: 20), border: new Spacing(top: 17, bottom: 18, left: 19, right: 20),
Width: 21, width: 21,
Height: 22, height: 22,
MinWidth: 23, minWidth: 23,
MinHeight: 24, minHeight: 24,
MaxWidth: 25, maxWidth: 25,
MaxHeight: 26); maxHeight: 26);
Assert.AreEqual(YogaDirection.RTL, node.StyleDirection); Assert.AreEqual(YogaDirection.RTL, node.StyleDirection);
Assert.AreEqual(YogaFlexDirection.RowReverse, node.FlexDirection); Assert.AreEqual(YogaFlexDirection.RowReverse, node.FlexDirection);

View File

@@ -1,16 +1,6 @@
#!/bin/sh #!/bin/sh
if clang --version >/dev/null 2>&1; then true; else if mcs --version >/dev/null 2>&1 && mono --version >/dev/null 2>&1; then true; else
echo "ERROR: Can't execute clang. You need to install Xcode and command line tools." echo "ERROR: Need to install Mono (brew install mono, or http://www.mono-project.com/download/)"
exit 1
fi
if mcs --version >/dev/null 2>&1; then true; else
echo "ERROR: Can't execute mcs. You need to install Mono from http://www.mono-project.com/download/ and re-login to apply PATH environment."
exit 1
fi
if mono --version >/dev/null 2>&1; then true; else
echo "ERROR: Can't execute mono64. You need to install Mono from http://www.mono-project.com/download/ and re-login to apply PATH environment."
exit 1 exit 1
fi fi
@@ -28,6 +18,11 @@ if [ -d $NUNIT \
rm NUnit-2.6.4.zip rm NUnit-2.6.4.zip
fi fi
clang -g -Wall -Wextra -dynamiclib -o libyoga.dylib -I../../.. ../../../yoga/*.c ../../Yoga/YGInterop.cpp TARGET=//csharp:yoganet#default,shared
buck build $TARGET
ROOT=`buck root|tail -1`
DYLIB=`buck targets --show-output $TARGET|tail -1|awk '{print $2}'`
cp $ROOT/$DYLIB .
mcs -debug -t:library -r:$NUNIT/nunit.framework.dll -out:YogaTest.dll *.cs ../../../csharp/Facebook.Yoga/*cs mcs -debug -t:library -r:$NUNIT/nunit.framework.dll -out:YogaTest.dll *.cs ../../../csharp/Facebook.Yoga/*cs
MONO_PATH=$NUNIT mono --arch=64 --debug $NUNIT/nunit-console.exe YogaTest.dll MONO_PATH=$NUNIT mono --arch=64 --debug $NUNIT/nunit-console.exe YogaTest.dll

View File

@@ -36,7 +36,7 @@ static void YGTransferLayoutOutputsRecursive(YGNodeRef root) {
obj->setFieldValue(topField, YGNodeLayoutGetTop(root)); obj->setFieldValue(topField, YGNodeLayoutGetTop(root));
YGTransferLayoutDirection(root, obj); YGTransferLayoutDirection(root, obj);
for (uint32_t i = 0; i < YGNodeChildCount(root); i++) { for (uint32_t i = 0; i < YGNodeGetChildCount(root); i++) {
YGTransferLayoutOutputsRecursive(YGNodeGetChild(root, i)); YGTransferLayoutOutputsRecursive(YGNodeGetChild(root, i));
} }
} else { } else {

View File

@@ -13,7 +13,7 @@
TEST(YogaTest, assert_default_values) { TEST(YogaTest, assert_default_values) {
const YGNodeRef root = YGNodeNew(); const YGNodeRef root = YGNodeNew();
ASSERT_EQ(0, YGNodeChildCount(root)); ASSERT_EQ(0, YGNodeGetChildCount(root));
ASSERT_EQ(NULL, YGNodeGetChild(root, 1)); ASSERT_EQ(NULL, YGNodeGetChild(root, 1));
ASSERT_EQ(YGDirectionInherit, YGNodeStyleGetDirection(root)); ASSERT_EQ(YGDirectionInherit, YGNodeStyleGetDirection(root));

View File

@@ -256,7 +256,7 @@ void YGNodeFree(const YGNodeRef node) {
node->parent = NULL; node->parent = NULL;
} }
const uint32_t childCount = YGNodeChildCount(node); const uint32_t childCount = YGNodeGetChildCount(node);
for (uint32_t i = 0; i < childCount; i++) { for (uint32_t i = 0; i < childCount; i++) {
const YGNodeRef child = YGNodeGetChild(node, i); const YGNodeRef child = YGNodeGetChild(node, i);
child->parent = NULL; child->parent = NULL;
@@ -268,7 +268,7 @@ void YGNodeFree(const YGNodeRef node) {
} }
void YGNodeFreeRecursive(const YGNodeRef root) { void YGNodeFreeRecursive(const YGNodeRef root) {
while (YGNodeChildCount(root) > 0) { while (YGNodeGetChildCount(root) > 0) {
const YGNodeRef child = YGNodeGetChild(root, 0); const YGNodeRef child = YGNodeGetChild(root, 0);
YGNodeRemoveChild(root, child); YGNodeRemoveChild(root, child);
YGNodeFreeRecursive(child); YGNodeFreeRecursive(child);
@@ -277,7 +277,7 @@ void YGNodeFreeRecursive(const YGNodeRef root) {
} }
void YGNodeReset(const YGNodeRef node) { void YGNodeReset(const YGNodeRef node) {
YG_ASSERT(YGNodeChildCount(node) == 0, "Cannot reset a node which still has children attached"); YG_ASSERT(YGNodeGetChildCount(node) == 0, "Cannot reset a node which still has children attached");
YG_ASSERT(node->parent == NULL, "Cannot reset a node still attached to a parent"); YG_ASSERT(node->parent == NULL, "Cannot reset a node still attached to a parent");
YGNodeListFree(node->children); YGNodeListFree(node->children);
@@ -303,7 +303,7 @@ void YGNodeSetMeasureFunc(const YGNodeRef node, YGMeasureFunc measureFunc) {
if (measureFunc == NULL) { if (measureFunc == NULL) {
node->measure = NULL; node->measure = NULL;
} else { } else {
YG_ASSERT(YGNodeChildCount(node) == 0, YG_ASSERT(YGNodeGetChildCount(node) == 0,
"Cannot set measure function: Nodes with measure functions cannot have children."); "Cannot set measure function: Nodes with measure functions cannot have children.");
node->measure = measureFunc; node->measure = measureFunc;
} }
@@ -333,7 +333,11 @@ YGNodeRef YGNodeGetChild(const YGNodeRef node, const uint32_t index) {
return YGNodeListGet(node->children, index); return YGNodeListGet(node->children, index);
} }
inline uint32_t YGNodeChildCount(const YGNodeRef node) { YGNodeRef YGNodeGetParent(const YGNodeRef node) {
return node->parent;
}
inline uint32_t YGNodeGetChildCount(const YGNodeRef node) {
return YGNodeListCount(node->children); return YGNodeListCount(node->children);
} }

View File

@@ -64,7 +64,8 @@ WIN_EXPORT void YGNodeInsertChild(const YGNodeRef node,
const uint32_t index); const uint32_t index);
WIN_EXPORT void YGNodeRemoveChild(const YGNodeRef node, const YGNodeRef child); WIN_EXPORT void YGNodeRemoveChild(const YGNodeRef node, const YGNodeRef child);
WIN_EXPORT YGNodeRef YGNodeGetChild(const YGNodeRef node, const uint32_t index); WIN_EXPORT YGNodeRef YGNodeGetChild(const YGNodeRef node, const uint32_t index);
WIN_EXPORT uint32_t YGNodeChildCount(const YGNodeRef node); WIN_EXPORT YGNodeRef YGNodeGetParent(const YGNodeRef node);
WIN_EXPORT uint32_t YGNodeGetChildCount(const YGNodeRef node);
WIN_EXPORT void YGNodeCalculateLayout(const YGNodeRef node, WIN_EXPORT void YGNodeCalculateLayout(const YGNodeRef node,
const float availableWidth, const float availableWidth,