Skip to content
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

Add debug symbols to packages #587

Merged
merged 3 commits into from
Feb 7, 2024
Merged

Add debug symbols to packages #587

merged 3 commits into from
Feb 7, 2024

Conversation

damonbarry
Copy link
Member

@damonbarry damonbarry commented Feb 6, 2024

Currently, we provide symbol packages for all the distros we build, with the exception of Mariner (disabled due to a rust issue, then never reverted). However, the packages don't contain our symbols because we instruct rustc to build the release configuration, which doesn't emit debug information by default.

This change updates Cargo.toml to enable full debug information in release builds. It also reverts the config that was supressing symbol packages in Mariner. The deb/rpm packaging tools already strip symbols from release binaries and generate symbol packages, so no further changes are needed.

@damonbarry
Copy link
Member Author

Before vs. after sizes of debug packages for all the distros/architectures we build:

 3821012  centos7\amd64\aziot-identity-service-debuginfo-1.4.0~dev-1.el7.x86_64.rpm
26919776  centos7\amd64\aziot-identity-service-debuginfo-1.4.0~dev-1.el7.x86_64.rpm

 5014204  debian10\aarch64\aziot-identity-service-dbgsym_1.4.0~dev-1_arm64.deb
36066552  debian10\aarch64\aziot-identity-service-dbgsym_1.4.0~dev-1_arm64.deb

 4778868  debian10\amd64\aziot-identity-service-dbgsym_1.4.0~dev-1_amd64.deb
36117828  debian10\amd64\aziot-identity-service-dbgsym_1.4.0~dev-1_amd64.deb

 5036888  debian10\arm32v7\aziot-identity-service-dbgsym_1.4.0~dev-1_armhf.deb
32658460  debian10\arm32v7\aziot-identity-service-dbgsym_1.4.0~dev-1_armhf.deb

 4035876  debian11\aarch64\aziot-identity-service-dbgsym_1.4.0~dev-1_arm64.deb
35043248  debian11\aarch64\aziot-identity-service-dbgsym_1.4.0~dev-1_arm64.deb

 3806624  debian11\amd64\aziot-identity-service-dbgsym_1.4.0~dev-1_amd64.deb
35121700  debian11\amd64\aziot-identity-service-dbgsym_1.4.0~dev-1_amd64.deb

 4083000  debian11\arm32v7\aziot-identity-service-dbgsym_1.4.0~dev-1_armhf.deb
31706796  debian11\arm32v7\aziot-identity-service-dbgsym_1.4.0~dev-1_armhf.deb

 -------  n/a
41595384  mariner1\amd64\aziot-identity-service-debuginfo-1.4.0~dev-1.cm1.x86_64.rpm

 -------  n/a
34215071  mariner2\amd64\aziot-identity-service-debuginfo-1.4.0~dev-1.cm2.x86_64.rpm

 3593516  el8\amd64\aziot-identity-service-debuginfo-1.4.0~dev-1.el8.x86_64.rpm
22790060  el8\amd64\aziot-identity-service-debuginfo-1.4.0~dev-1.el8.x86_64.rpm

 2149002  el9\amd64\aziot-identity-service-debuginfo-1.4.0~dev-1.el9.x86_64.rpm
20836994  el9\amd64\aziot-identity-service-debuginfo-1.4.0~dev-1.el9.x86_64.rpm

 3982888  ubuntu2004\aarch64\aziot-identity-service-dbgsym_1.4.0~dev-1_arm64.ddeb
35047056  ubuntu2004\aarch64\aziot-identity-service-dbgsym_1.4.0~dev-1_arm64.ddeb

 3846704  ubuntu2004\amd64\aziot-identity-service-dbgsym_1.4.0~dev-1_amd64.ddeb
35122680  ubuntu2004\amd64\aziot-identity-service-dbgsym_1.4.0~dev-1_amd64.ddeb

 4065724  ubuntu2004\arm32v7\aziot-identity-service-dbgsym_1.4.0~dev-1_armhf.ddeb
31736572  ubuntu2004\arm32v7\aziot-identity-service-dbgsym_1.4.0~dev-1_armhf.ddeb

 4055164  ubuntu2204\aarch64\aziot-identity-service-dbgsym_1.4.0~dev-1_arm64.ddeb
35173800  ubuntu2204\aarch64\aziot-identity-service-dbgsym_1.4.0~dev-1_arm64.ddeb

 3885536  ubuntu2204\amd64\aziot-identity-service-dbgsym_1.4.0~dev-1_amd64.ddeb
35168672  ubuntu2204\amd64\aziot-identity-service-dbgsym_1.4.0~dev-1_amd64.ddeb

 4212276  ubuntu2204\arm32v7\aziot-identity-service-dbgsym_1.4.0~dev-1_armhf.ddeb
31808140  ubuntu2204\arm32v7\aziot-identity-service-dbgsym_1.4.0~dev-1_armhf.ddeb

@damonbarry damonbarry marked this pull request as ready for review February 6, 2024 23:50
@kodiakhq kodiakhq bot merged commit 98419ce into Azure:main Feb 7, 2024
76 checks passed
@damonbarry damonbarry deleted the symbols branch February 7, 2024 21:46
damonbarry added a commit to damonbarry/iot-identity-service that referenced this pull request Feb 7, 2024
Currently, we provide symbol packages for all the distros we build, with the exception of Mariner (disabled due to a rust issue, then never reverted). However, the packages don't contain our symbols because we instruct rustc to build the release configuration, which doesn't emit debug information by default.

This change updates Cargo.toml to enable full debug information in release builds. It also reverts the config that was supressing symbol packages in Mariner. The deb/rpm packaging tools already strip symbols from release binaries and generate symbol packages, so no further changes are needed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants