Skip to content

Internal headers (crypto, internal and prov) in zig-out/include #7

@jiriks74

Description

@jiriks74

Hi,
I'm new to Zig (2 days now) and I'm working on making https://github.com/kubernetes-client/c/ working with Zig as I'd like to rewrite some of my scripts into Zig as learning projects.

But the library depends on OpenSSL and it imports it in its public header files so when not using system's OpenSSL I do

b.installArtifact(openssl_lib);

so that the library is distributed in a working state when using vendored OpenSSL.

However the OpenSSL library installs some internal include directories, as far as I understand, which I don't think should be installed.

zig-out/include/
├── crypto
├── curl
├── internal
├── kubernetes
├── openssl
└── prov

7 directories, 0 files

The directories have some generic names and as far as my research goes these headers are internal and upstream only exports the openssl directory

/nix/store/dy64cxaygvmjfznysgxk501yds8jij6s-openssl-3.6.1-dev/include
└── openssl

2 directories

So is there a reason why

openssl/build.zig

Line 1255 in 6b318b4

lib.installHeadersDirectory(b.path("include"), "", .{});

isn't

lib.installHeadersDirectory(b.path("include/openssl"), "openssl", .{});

I'm opening an issue and not a PR as I'm not sure whether I'm missing something. If there are no requirements for those extra directories to be installed I'll gladly open a PR to make that change.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions