Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
F
Front-End
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
abdullh.alsoleman
Front-End
Commits
fdb0225f
Unverified
Commit
fdb0225f
authored
Jan 28, 2020
by
Jenn Magder
Committed by
GitHub
Jan 28, 2020
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Revert "[flutter_tools] move dsym generation logic into dart build process (#49491)" (#49592)
This reverts commit
2a91a750
.
parent
74c1be6f
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
15 additions
and
92 deletions
+15
-92
xcode_backend.sh
packages/flutter_tools/bin/xcode_backend.sh
+14
-0
aot.dart
packages/flutter_tools/lib/src/aot.dart
+1
-1
ios.dart
packages/flutter_tools/lib/src/build_system/targets/ios.dart
+0
-44
xcode.dart
packages/flutter_tools/lib/src/macos/xcode.dart
+0
-7
ios_test.dart
...ols/test/general.shard/build_system/targets/ios_test.dart
+0
-40
No files found.
packages/flutter_tools/bin/xcode_backend.sh
View file @
fdb0225f
...
...
@@ -202,6 +202,20 @@ BuildApp() {
RunCommand
cp
-r
--
"
${
app_framework
}
"
"
${
derived_dir
}
"
if
[[
"
${
build_mode
}
"
==
"release"
]]
;
then
StreamOutput
" ├─Generating dSYM file..."
# Xcode calls `symbols` during app store upload, which uses Spotlight to
# find dSYM files for embedded frameworks. When it finds the dSYM file for
# `App.framework` it throws an error, which aborts the app store upload.
# To avoid this, we place the dSYM files in a folder ending with ".noindex",
# which hides it from Spotlight, https://github.com/flutter/flutter/issues/22560.
RunCommand
mkdir
-p
--
"
${
build_dir
}
/dSYMs.noindex"
RunCommand xcrun dsymutil
-o
"
${
build_dir
}
/dSYMs.noindex/App.framework.dSYM"
"
${
app_framework
}
/App"
if
[[
$?
-ne
0
]]
;
then
EchoError
"Failed to generate debug symbols (dSYM) file for
${
app_framework
}
/App."
exit
-1
fi
StreamOutput
"done"
StreamOutput
" ├─Stripping debug symbols..."
RunCommand xcrun strip
-x
-S
"
${
derived_dir
}
/App.framework/App"
if
[[
$?
-ne
0
]]
;
then
...
...
packages/flutter_tools/lib/src/aot.dart
View file @
fdb0225f
...
...
@@ -214,7 +214,7 @@ class AotBuilder {
final
FlutterProject
flutterProject
=
FlutterProject
.
current
();
final
Target
target
=
buildMode
==
BuildMode
.
profile
?
const
AotAssemblyProfile
()
:
const
GenerateDebugSymbols
();
:
const
AotAssemblyRelease
();
final
BuildResult
result
=
await
buildSystem
.
build
(
target
,
Environment
(
projectDir:
flutterProject
.
directory
,
...
...
packages/flutter_tools/lib/src/build_system/targets/ios.dart
View file @
fdb0225f
...
...
@@ -145,50 +145,6 @@ class AotAssemblyProfile extends AotAssemblyBase {
];
}
/// Handle strip and dysm generate for iOS release.
///
/// Xcode calls `symbols` during app store upload, which uses Spotlight to
/// find dSYM files for embedded frameworks. When it finds the dSYM file for
/// `App.framework` it throws an error, which aborts the app store upload.
/// To avoid this, we place the dSYM files in a folder ending with ".noindex",
/// which hides it from Spotlight, https://github.com/flutter/flutter/issues/22560.
class
GenerateDebugSymbols
extends
Target
{
const
GenerateDebugSymbols
();
@override
String
get
name
=>
'generate_debug_symbols'
;
@override
List
<
Target
>
get
dependencies
=>
const
<
Target
>[
AotAssemblyRelease
()
];
@override
List
<
Source
>
get
inputs
=>
const
<
Source
>[
Source
.
pattern
(
'{OUTPUT_DIR}/App.framework/App'
),
];
@override
List
<
Source
>
get
outputs
=>
const
<
Source
>[
Source
.
pattern
(
'{OUTPUT_DIR}/dSYMs.noindex/App.framework.dSYM'
),
];
@override
Future
<
void
>
build
(
Environment
environment
)
async
{
final
Directory
appFramework
=
environment
.
outputDir
.
childDirectory
(
'App.framework'
);
final
Directory
noIndex
=
environment
.
outputDir
.
childDirectory
(
'dSYMs.noindex'
)
..
createSync
();
final
RunResult
result
=
await
globals
.
xcode
.
dsymutil
(<
String
>[
'-o'
,
noIndex
.
childFile
(
'App.framework.dSYM'
).
path
,
appFramework
.
childFile
(
'App'
).
path
,
]);
if
(
result
.
exitCode
!=
0
)
{
throwToolExit
(
'Failed to generate debug symbols (dSYM) file for
${appFramework.path}
/App.'
);
}
}
}
/// Create an App.framework for debug iOS targets.
///
/// This framework needs to exist for the Xcode project to link/bundle,
...
...
packages/flutter_tools/lib/src/macos/xcode.dart
View file @
fdb0225f
...
...
@@ -153,13 +153,6 @@ class Xcode {
);
}
Future
<
RunResult
>
dsymutil
(
List
<
String
>
args
)
{
return
_processUtils
.
run
(
<
String
>[
'xcrun'
,
'dsymutil'
,
...
args
],
throwOnError:
true
,
);
}
Future
<
RunResult
>
clang
(
List
<
String
>
args
)
{
return
_processUtils
.
run
(
<
String
>[
'xcrun'
,
'clang'
,
...
args
],
...
...
packages/flutter_tools/test/general.shard/build_system/targets/ios_test.dart
deleted
100644 → 0
View file @
74c1be6f
// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import
'package:flutter_tools/src/build_system/build_system.dart'
;
import
'package:flutter_tools/src/build_system/targets/ios.dart'
;
import
'package:flutter_tools/src/globals.dart'
as
globals
;
import
'package:platform/platform.dart'
;
import
'package:process/process.dart'
;
import
'../../../src/common.dart'
;
import
'../../../src/context.dart'
;
import
'../../../src/testbed.dart'
;
void
main
(
)
{
Testbed
testbed
;
setUp
(()
{
testbed
=
Testbed
();
});
test
(
'GenerateDebugSymbols uses the proper arguments'
,
()
=>
testbed
.
run
(()
async
{
final
Environment
environment
=
Environment
.
test
(
globals
.
fs
.
currentDirectory
,
);
await
const
GenerateDebugSymbols
().
build
(
environment
);
},
overrides:
<
Type
,
Generator
>{
Platform:
()
=>
FakePlatform
(
operatingSystem:
'macos'
),
ProcessManager:
()
=>
FakeProcessManager
.
list
(<
FakeCommand
>[
const
FakeCommand
(
command:
<
String
>[
'xcrun'
,
'dsymutil'
,
'-o'
,
'/dSYMs.noindex/App.framework.dSYM'
,
'/App.framework/App'
,
])
]),
}));
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment