Skip to content

[Package] Fix passing -gline-tables-only when building. #33616

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Aug 25, 2020
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 7 additions & 6 deletions utils/build-presets.ini
Original file line number Diff line number Diff line change
Expand Up @@ -1234,10 +1234,15 @@ verbose-build
build-ninja
build-swift-stdlib-unittest-extra

# When producing a package, don't copy the Swift Resource/ directory.
# This is mainly a space optimization.
# When building for an Xcode toolchain, don't copy the Swift Resource/ directory
# into the LLDB.framework. LLDB.framework will be installed alongside a Swift
# compiler, so LLDB should use its resource directory directly.
# Also, to reduce the size of the final toolchain, limit debug info to be
# line-tables only.
extra-cmake-options=
-DLLDB_FRAMEWORK_COPY_SWIFT_RESOURCES=0
-DCMAKE_C_FLAGS="-gline-tables-only"
-DCMAKE_CXX_FLAGS="-gline-tables-only"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks scary to me, but hopefully just because I don't know how to read this .ini file :-)

Can you confirm that this only affects the ci.swift.org downloadable toolchain packages, and no other toolchains?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We still want all other toolchains to build with full debug info.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is under

# OS X Package Builders
#===------------------------------------------------------------------------===#
[preset: mixin_osx_package_base]

Mishal, can you confirm it's safe?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is fine because it will help all preset using mixin

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just be sure: I'm worried that this will apply to too many presets, not too few.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we're uncertain, we should remove this. I can't picture in my mind the whole matrix of interactions with mixin et similia. It's just fundamentally odd this applies only when we don't run tests, so that's the attempt of unifying.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also, I'm curious, what other toolchains you're talking about?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Adrian is talking about our internal release toolchains. @shahmishal can you confirm whether this is a noop for our internal builds?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We don't use these preset for internal builds.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess this is resolved.


install-llvm
install-swift
Expand Down Expand Up @@ -1372,10 +1377,6 @@ skip-test-swiftsyntax
skip-test-skstresstester
skip-test-swiftevolve

extra-cmake-options=
-DCMAKE_C_FLAGS="-gline-tables-only"
-DCMAKE_CXX_FLAGS="-gline-tables-only"

# macOS package with out test
[preset: buildbot_osx_package,no_test]
mixin-preset=
Expand Down