tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

x11/xrdb: pkgsrc configures wrong path to cpp



hi-

    I just built xrdb from the latest pkgsrc last night and noticed
that the configuration wrappers are embedded a bad path to the C
pre-processor in the binary (this is on NetBSD/arm64, if it matters).
This breaks running xrdb on .Xdefault files that expect to be
run through the pre-processor.

e.g.


 my new build in /usr/pkg/bin/xrdb:

    # strings /usr/pkg/bin/xrdb | egrep 'pkgsrc|bin'
    /a/src/cur/pkgsrc/x11/xrdb/work/.cwrapper/bin/c++
    #

my previous build in /usr/pkg_0/bin/xrdb:
    # strings /usr/pkg_0/bin/xrdb | egrep 'pkgsrc|bin'
    /usr/bin/cpp
    # 


I tracked this down to the config.h generated by meson:

    # fgrep CPP work/xrdb-1.2.3/output/config.h
    /* Path to CPP program */
    #define CPP "/a/src/cur/pkgsrc/x11/xrdb/work/.cwrapper/bin/c++"
    # 

that's not the correct path to embed in the installed xrdb binary.

how can we fix this?   full meson and build output below, for reference.


chuck


===> Overriding tools for xrdb-1.2.3
===> Extracting for xrdb-1.2.3
===> Patching for xrdb-1.2.3
===> Creating toolchain wrappers for xrdb-1.2.3
===> Configuring for xrdb-1.2.3
=> Creating meson native file
The Meson build system
Version: 1.12.1
Source dir: /a/src/cur/pkgsrc/x11/xrdb/work/xrdb-1.2.3
Build dir: /a/src/cur/pkgsrc/x11/xrdb/work/xrdb-1.2.3/output
Build type: native build
Project name: xrdb
Project version: 1.2.3
C compiler for the host machine: gcc (gcc 12.5.0 "gcc (nb3 20260326) 12.5.0")
C linker for the host machine: gcc ld.bfd 2.42
Host machine cpu family: x86_64
Host machine cpu: x86_64
Compiler for C supports arguments -fno-strict-aliasing: YES 
Checking for function "mkstemp" : YES 
Checking for function "asprintf" : YES 
Checking for function "reallocarray" : YES 
Header "sys/param.h" has symbol "MAXHOSTNAMELEN" : YES 
Header "netdb.h" has symbol "MAXHOSTNAMELEN" : NO 
Program c++ found: YES
Found pkg-config: YES (/a/src/cur/pkgsrc/x11/xrdb/work/.tools/bin/pkg-config) 3.0.7
Run-time dependency xmuu found: YES 1.3.1
Run-time dependency x11 found: YES 1.8.13
Run-time dependency xproto found: YES 7.0.34
Configuring config.h using configuration
Program sed found: YES (/a/src/cur/pkgsrc/x11/xrdb/work/.tools/bin/sed)
Build targets in project: 2

xrdb 1.2.3

    cpp         : /a/src/cur/pkgsrc/x11/xrdb/work/.cwrapper/bin/c++

  User defined options
    Native files: /a/src/cur/pkgsrc/x11/xrdb/work/.meson_native
    buildtype   : plain
    libdir      : lib
    libexecdir  : libexec
    mandir      : man
    prefix      : /usr/pkg
    sysconfdir  : /usr/pkg/etc
    wrap_mode   : nodownload

Found ninja-1.13.2 at /usr/pkg/bin/ninja
===> Building for xrdb-1.2.3
ninja: Entering directory `output'
[1/3] Compiling C object xrdb.p/xrdb.c.o
In file included from /usr/include/ctype.h:100,
                 from ../xrdb.c:53:
../xrdb.c: In function 'GetEntries':
../xrdb.c:360:66: warning: array subscript has type 'char' [-Wchar-subscripts]
  360 |              *temp && *temp != '\n' && isascii(*temp) && isspace(*temp);
      |                                                                  ^
../xrdb.c: In function 'addtokstring':
../xrdb.c:885:22: warning: array subscript has type 'char' [-Wchar-subscripts]
  885 |         if (!isalpha(*s) && !isdigit(*s) && *s != '_')
      |                      ^
../xrdb.c:885:38: warning: array subscript has type 'char' [-Wchar-subscripts]
  885 |         if (!isalpha(*s) && !isdigit(*s) && *s != '_')
      |                                      ^
[3/3] Generating xrdb.man with a custo...nd (wrapped by meson to capture output
# fgrep CPP work/xrdb-1.2.3/output/config.h
/* Path to CPP program */
#define CPP "/a/src/cur/pkgsrc/x11/xrdb/work/.cwrapper/bin/c++"
# 



Home | Main Index | Thread Index | Old Index