feat(25.04): libc6-dev slices#633
Conversation
|
Diff of dependencies: slices/libc6-dev.yaml@@ -1,5 +1,3 @@
-libc-dev-bin
libc6
libcrypt-dev
linux-libc-dev
-rpcsvc-proto |
|
There was a problem hiding this comment.
Pull Request Overview
This PR introduces slice definitions for three C library development packages essential for building C/C++ applications on Ubuntu 25.04. The slices define how to package header files, static libraries, and shared library symlinks for development purposes.
- Adds
linux-libc-devslices for Linux kernel header files including ASM headers - Adds
libcrypt-devslices for cryptographic library development components - Adds comprehensive
libc6-devslices for the core GNU C library development files
Reviewed Changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| slices/linux-libc-dev.yaml | Defines slices for Linux kernel headers (asm-headers, linux-headers) and copyright |
| slices/libcrypt-dev.yaml | Defines slices for cryptographic library headers, static libs, and symlinks |
| slices/libc6-dev.yaml | Defines comprehensive slices for GNU C library development including headers, static libs, audit tools, and symlinks |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
|
added |
zhijie-yang
left a comment
There was a problem hiding this comment.
Thanks for the PR. Here are some points we can talk about.
Co-authored-by: zhijie-yang <zhijie.yang@canonical.com>
clay-lake
left a comment
There was a problem hiding this comment.
Few minor questions below but otherwise LGTM
154dac5 to
b5276b2
Compare
|
based on the overall consensus i've renamed the
|
|
based on its possible that |
|
just so it does not get lost in a response to the review comment, here is the data dump of |
This reverts commit 17e7bde.
|
nevermind. i thought for a bit more about what i'm doing and turns out we would conflict (and not in a trivially resolvable way, like with some more subpaths i don't think): $ apt-file search --regexp '^/usr/include/.*-linux-.*/bits/.*.h' | sed -e 's/: .*//' | sort -u
libc6-dev
libstdc++-11-dev
libstdc++-12-dev
libstdc++-13-dev
libstdc++-14-dev
libstdc++-15-dev
musl-dev$ apt-file search --regexp '^/usr/include/.*-linux-.*/sys/.*.h' | sed -e 's/: .*//' | sort -u
libbsd-dev
libc6-dev
musl-dev
systemtap-sdt-devreverted back to full unglob. i guess we are swallowing the full diff.. given that, i will echo one of the points from @zhijie-yang: full listing is fine and all, but this puts even more importance on slice coverage tooling. luckily its an item on my board for next week. it was meant to be ;) |
|
also, just for the sake of it i've done |
c45775a to
e79c70f
Compare
|
another discovery which, actually, simplifies slicing quite a lot: there is a bunch of libraries which are just dummy empty archives. the actual functionality has been merged into libc6, and the files are there just to enable i've simplifies the slices accordingly. P.S.: i did make sure that all of the above libs are indeed empty on all supported architectures. |
zhijie-yang
left a comment
There was a problem hiding this comment.
Thanks for the work. A nitpick on stab.def
alesancor1
left a comment
There was a problem hiding this comment.
This is amazing work, seems you got to understand libc6 quite in depth, which is great! (some bits are a bit over explained in comments I'd say, but not against it)
Apart from what others said I have no further comments, LGTM! Let's get those nits fixed quick and we good to go on my end 👍
zhijie-yang
left a comment
There was a problem hiding this comment.
Looks good to me now! Many thanks!
Proposed changes
A bunch of other PRs (see below) depend on this, and it's a bit tricky slice. This PR cherrypicks the
libc6-devSDF in order to make other PRs smaller.Related issues/PRs
This PR is a member of a chain of PRs which depend on one another. The first commit is a squashed version of everything below it. Please review the 'root' PRs first.
#633 - ROCKS-2270/libc6-dev-for-25.04 (this PR)
└ #644 - ROCKS-2270/binutils-for-25.04
....└ #648 - ROCKS-2270/cpp-for-25.04
........└ #649 - ROCKS-2270/gcc-14-for-25.04
............└ #610 - ROCKS-2271/rust-1.84-25.04
................└ #634 - ROCKS-2271/cargo-1.84-25.04
Cherrypicked from #610, #598
Forward porting
#664
Checklist