@sum01 Sorry I meant the public header interface of the library, not the full header-only library.
Search Criteria
Package Details: cpp-httplib-compiled 0.45.0-1
Package Actions
| Git Clone URL: | https://aur.archlinux.org/cpp-httplib-compiled.git (read-only, click to copy) |
|---|---|
| Package Base: | cpp-httplib-compiled |
| Description: | A C++ HTTP/HTTPS server and client library (compiled version) |
| Upstream URL: | https://github.com/yhirose/cpp-httplib |
| Keywords: | networking requests |
| Licenses: | MIT |
| Conflicts: | cpp-httplib |
| Provides: | cpp-httplib, libcpp-httplib.so |
| Submitter: | sum01 |
| Maintainer: | sum01 |
| Last Packager: | sum01 |
| Votes: | 3 |
| Popularity: | 0.000000 |
| First Submitted: | 2020-05-29 03:12 (UTC) |
| Last Updated: | 2026-05-17 18:10 (UTC) |
Dependencies (8)
- brotli (brotli-gitAUR)
- openssl (openssl-gitAUR, openssl-staticAUR, openssl-aegisAUR)
- zlib (zlib-gitAUR, zlib-ng-compat-gitAUR, zlib-ng-compat)
- zstd (zstd-gitAUR, zstd-staticAUR)
- cmake (cmake3AUR, cmake-gitAUR) (make)
- ninja (ninja-gitAUR, ninja-memAUR, ninja-noemacs-gitAUR, ninja-kitwareAUR, ninja-fuchsia-gitAUR, n2-ninja-symlinkAUR) (make)
- python (make)
- gtest (googletest-gitAUR) (check)
Required by (12)
- data-vantage (requires cpp-httplib) (make)
- dpitunnel (requires cpp-httplib) (make)
- dpitunnel-git (requires cpp-httplib) (make)
- eden-beta (requires cpp-httplib) (make)
- eden-git (requires cpp-httplib) (make)
- eden-mp4fixes (requires cpp-httplib) (make)
- eden-nightly (requires cpp-httplib) (make)
- elfeed2 (requires cpp-httplib) (make)
- falco (requires cpp-httplib) (make)
- falco-git (requires cpp-httplib)
- falco-probe-ebpf (requires cpp-httplib) (make)
- neobox-git (requires cpp-httplib)
Sources (1)
abouvier commented on 2021-07-16 04:48 (UTC) (edited on 2021-07-16 04:48 (UTC) by abouvier)
sum01 commented on 2021-07-16 04:20 (UTC)
@abouvier yes that's how I was using it. I suppose it could make sense to require them all, at least for the compiled version.
As for having both in the same package cpp-httplib, I don't think that would work, as the Cmake files vary based on if it was header-only or compiled. I could have it install only the compiled version's cmake files, but there are minor differences between them regardless (namely, it's aware it's header-only).
abouvier commented on 2021-07-16 03:05 (UTC) (edited on 2021-07-16 03:07 (UTC) by abouvier)
Are you using the optdepends array as an "optmakedepends"? It's not working because users need to manually install the required libraries before building the package.
I think you should build the library with every option enabled. Or create multiple packages for every possible combination of options :p
And I vote for the cpp-httplib package containing headers and shared lib ;)
sum01 commented on 2021-05-17 19:19 (UTC)
There are header-only packages in official with no -header suffix. Considering header-only is the default in upstream, and there's no real rule for this, I think I'll leave it as-is.
FabioLolix commented on 2021-05-17 17:09 (UTC)
Honestly I can't point to a wiki page, but all programs are shipped compiled by default and headers only packages have the -headers suffix headers compiled
About pkgbuilds name, it can't be changed. You can upload cpp-httplib-header and submit a merge request of cpp-httplib into it and later upload my revision of cpp-httplib and submit a merge request of cpp-httplib-compiled into it, so votes, comments and notification are preserved for the 'same scope' pkgbuilds
sum01 commented on 2021-05-17 16:48 (UTC)
@FabioLolix is that an AUR packaging rule? I looked when I originally created these but couldn't find anything to go by. The reason I went with the "normal" package (cpp-httplib) as the header-only version is because it's the default state of the upstream, and compilation is an alternate method that's available.
Also, I thought I can't just change the name in the PKGBUILD since a TU has to do something?
FabioLolix commented on 2021-05-17 16:33 (UTC)
Hello, this pkgbuild need to be called simply 'cpp-httplib' instead of 'cpp-httplib-compiled' since in Arch packaging is normal to ship binary, libraries and headers in the same package, while what is now 'cpp-httplib' need to be renamed 'cpp-httplib-header'
Please rename sources in a way to be 'reusable', since both cpp-httplib pkgbuild use the same sources
I have revisioned both pkgbuilds (I have also removed some not necessary things [zlib is always installed])
- cpp-httplib https://github.com/FabioLolix/PKGBUILD-AUR_fix/blob/master/zz_aur-fix-2/c/cpp-httplib/PKGBUILD
- cpp-httplib-header https://github.com/FabioLolix/PKGBUILD-AUR_fix/blob/master/zz_aur-fix-2/c/cpp-httplib-header/PKGBUILD
- Revision diff https://github.com/FabioLolix/PKGBUILD-AUR_fix/commit/4372c00410f7ee42d73ceb18436be3c7c5063789
Spixmaster commented on 2021-04-24 11:23 (UTC) (edited on 2021-04-24 11:24 (UTC) by Spixmaster)
@sum01 I understand. The two packages just have different compile options. In this case, "-bin" is not suitable.
sum01 commented on 2021-04-23 19:40 (UTC)
@Spixmaster so cpp-httplib is header-only, and must be compiled in any project you use it in. cpp-httplib-compiled splits the header into an interface (header) and implementation, allowing you to just link against it. Lets you avoid having to compile it every time.
Spixmaster commented on 2021-04-23 18:51 (UTC)
@sum01 I looked at both PKGBUILDs and do not exactly know the difference between both. I ask myself what even needs to be compiled as it is header only.
Pinned Comments
sum01 commented on 2021-04-23 19:40 (UTC)
@Spixmaster so
cpp-httplibis header-only, and must be compiled in any project you use it in.cpp-httplib-compiledsplits the header into an interface (header) and implementation, allowing you to just link against it. Lets you avoid having to compile it every time.