Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
bingbingbingbing
mono
提交
ab25ce87
M
mono
项目概览
bingbingbingbing
/
mono
与 Fork 源项目一致
从无法访问的项目Fork
通知
35
Star
0
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
mono
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
ab25ce87
编写于
4月 30, 2018
作者:
J
Jonathan Chambers
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Revert "Remove osx x86 builds."
This reverts commit
2b4caf8b
.
上级
134638a3
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
93 addition
and
3 deletion
+93
-3
external/buildscripts/build.pl
external/buildscripts/build.pl
+4
-3
external/buildscripts/build_all_osx.pl
external/buildscripts/build_all_osx.pl
+89
-0
未找到文件。
external/buildscripts/build.pl
浏览文件 @
ab25ce87
...
...
@@ -1563,9 +1563,10 @@ if ($artifact)
}
elsif
(
$^O
eq
'
darwin
')
{
$embedDirArchDestination
=
"
$embedDirRoot
/osx
";
$distDirArchBin
=
"
$distdir
/bin-osx
";
$versionsOutputFile
=
"
$buildsroot
/versions-osx.txt
";
# Note these tmp directories will get merged into a single 'osx' directory later by a parent script
$embedDirArchDestination
=
"
$embedDirRoot
/osx-tmp-
$monoHostArch
";
$distDirArchBin
=
"
$distdir
/bin-osx-tmp-
$monoHostArch
";
$versionsOutputFile
=
$arch32
?
"
$buildsroot
/versions-osx32.txt
"
:
"
$buildsroot
/versions-osx64.txt
";
}
else
{
...
...
external/buildscripts/build_all_osx.pl
浏览文件 @
ab25ce87
...
...
@@ -51,6 +51,11 @@ GetOptions(
'
buildusandboo=i
'
=>\
$buildUsAndBoo
,
);
my
$monoArch32Target
=
"
i386
";
print
("
>>> Building
$monoArch32Target
\n
");
system
("
perl
",
"
$buildscriptsdir
/build.pl
",
"
--arch32=1
",
"
--clean=1
",
"
--classlibtests=0
",
@passAlongArgs
)
eq
0
or
die
("
failing building
$monoArch32Target
");
if
(
$artifactsCommon
)
{
push
@passAlongArgs
,
"
--artifactscommon=1
";
...
...
@@ -70,7 +75,91 @@ if ($artifact)
# Merge stuff in the embedruntimes directory
my
$embedDirRoot
=
"
$buildsroot
/embedruntimes
";
my
$embedDirDestination
=
"
$embedDirRoot
/osx
";
my
$embedDirSource32
=
"
$embedDirRoot
/osx-tmp-
$monoArch32Target
";
my
$embedDirSource64
=
"
$embedDirRoot
/osx-tmp-x86_64
";
system
("
mkdir -p
$embedDirDestination
");
if
(
!
(
-
d
$embedDirSource32
))
{
die
("
Expected source directory not found :
$embedDirSource32
\n
");
}
if
(
!
(
-
d
$embedDirSource64
))
{
die
("
Expected source directory not found :
$embedDirSource64
\n
");
}
# Create universal binaries
for
my
$file
('
libmonobdwgc-2.0.dylib
','
libmonosgen-2.0.dylib
','
libMonoPosixHelper.dylib
')
{
print
("
>>> lipo
$embedDirSource32
/
$file
$embedDirSource64
/
$file
-create -output
$embedDirDestination
/
$file
\n\n
");
system
('
lipo
',
"
$embedDirSource32
/
$file
",
"
$embedDirSource64
/
$file
",
'
-create
',
'
-output
',
"
$embedDirDestination
/
$file
");
}
if
(
not
$buildMachine
)
{
print
("
>>> Doing non-build machine stuff...
\n
");
for
my
$file
('
libmonobdwgc-2.0.dylib
','
libmonosgen-2.0.dylib
','
libMonoPosixHelper.dylib
')
{
print
("
>>> Removing
$embedDirDestination
/
$file
.dSYM
\n
");
rmtree
("
$embedDirDestination
/
$file
.dSYM
");
print
("
>>> 'dsymutil
$embedDirDestination
/
$file
\n
");
system
('
dsymutil
',
"
$embedDirDestination
/
$file
")
eq
0
or
warn
("
Failed creating
$embedDirDestination
/
$file
.dSYM
");
}
print
("
>>> Done with non-build machine stuff
\n
");
}
# Merge stuff in the monodistribution directory
my
$distDirRoot
=
"
$buildsroot
/monodistribution
";
my
$distDirDestinationBin
=
"
$buildsroot
/monodistribution/bin
";
my
$distDirDestinationLib
=
"
$buildsroot
/monodistribution/lib
";
my
$distDirSourceBin32
=
"
$distDirRoot
/bin-osx-tmp-
$monoArch32Target
";
my
$distDirSourceBin64
=
"
$distDirRoot
/bin-osx-tmp-x86_64
";
# Should always exist because build_all would have put stuff in it, but in some situations
# depending on the options it may not. So create it if it does not exist
if
(
!
(
-
d
$distDirDestinationBin
))
{
system
("
mkdir -p
$distDirDestinationBin
");
}
if
(
!
(
-
d
$distDirDestinationLib
))
{
system
("
mkdir -p
$distDirDestinationLib
");
}
if
(
!
(
-
d
$distDirSourceBin32
))
{
die
("
Expected source directory not found :
$distDirSourceBin32
\n
");
}
if
(
!
(
-
d
$distDirSourceBin64
))
{
die
("
Expected source directory not found :
$distDirSourceBin64
\n
");
}
for
my
$file
('
mono
','
pedump
')
{
print
("
>>> lipo
$distDirSourceBin32
/
$file
$distDirSourceBin64
/
$file
-create -output
$distDirDestinationBin
/
$file
\n\n
");
system
('
lipo
',
"
$distDirSourceBin32
/
$file
",
"
$distDirSourceBin64
/
$file
",
'
-create
',
'
-output
',
"
$distDirDestinationBin
/
$file
");
}
#Create universal binaries for stuff is in the embed dir but will end up in the dist dir
for
my
$file
('
libMonoPosixHelper.dylib
')
{
print
("
>>> lipo
$embedDirSource32
/
$file
$embedDirSource64
/
$file
-create -output
$distDirDestinationLib
/
$file
\n\n
");
system
('
lipo
',
"
$embedDirSource32
/
$file
",
"
$embedDirSource64
/
$file
",
'
-create
',
'
-output
',
"
$distDirDestinationLib
/
$file
");
}
if
(
$buildMachine
)
{
print
("
>>> Clean up temporary arch specific build directories
\n
");
rmtree
("
$distDirSourceBin32
");
rmtree
("
$distDirSourceBin64
");
rmtree
("
$embedDirSource32
");
rmtree
("
$embedDirSource64
");
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录