Skip to content

Missing pdjson.h in installation #5

@r-burns

Description

@r-burns

Hi! I'm updating Nixpkgs's various build2 packages from 0.15.0 to 0.16.0 and noticed this build failure when trying to bump bpkg:

In file included from /build/bpkg-0.16.0/bpkg/system-package-manager.cxx:10:
/nix/store/czjlc837wncb400i61arfv0v9f6wms5z-libbutl-0.16.0-dev/include/libbutl/json/parser.hxx:19:10: fatal error: libbutl/json/pdjson.h: No such file or directory
   19 | #include <libbutl/json/pdjson.h> // Implementation details.
      |          ^~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
error: process g++ exited with code 1

It looks to me like the pdjson.h header is now needed by bpkg but is not installed by libbutl's buildfiles. I was able to work around it with this small patch to also install libbutl's .h files, although I'm not sure if this is the correct solution:

--- a/libbutl/buildfile
+++ b/libbutl/buildfile
@@ -1,7 +1,7 @@
 # file      : libbutl/buildfile
 # license   : MIT; see accompanying LICENSE file
 
-lib{butl}: {hxx ixx txx cxx}{** -uuid-* +uuid-io         \
+lib{butl}: {h hxx ixx txx cxx}{** -uuid-* +uuid-io       \
                                 -win32-utility           \
                                 -mingw-*                 \
                                 -version                 \
@@ -154,7 +154,7 @@ else
 # Install into the libbutl/ subdirectory of, say, /usr/include/
 # recreating subdirectories.
 #
-{hxx ixx txx}{*}:
+{h hxx ixx txx}{*}:
 {
   install         = include/libbutl/
   install.subdirs = true

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