Opened 5 weeks ago

Closed 5 weeks ago

Last modified 4 weeks ago

#69745 closed defect (fixed)

pulseaudio @17.0 -x11: build fails on m4 tool

Reported by: DrLex0 (Alexander Thomas) Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.9.3
Keywords: sonoma Cc: Ionic (Mihai Moldovan)
Port: pulseaudio

Description

Similar to #69467, but its fix does not work for this build.

The dreaded “The m4 command requires the command line developer tools” dialog shows up, and the build aborts. Looks like something (CMake?) still wants to use the m4 tool that Apple forgot to provide:

:info:configure Program m4 found: YES (/usr/bin/m4)

This is a usable workaround:

sudo ln -s /Library/Developer/CommandLineTools/usr/bin/gm4 /Library/Developer/CommandLineTools/usr/bin/m4

Attachments (1)

pulseaudio-x11_broken_build-main.log (352.4 KB) - added by DrLex0 (Alexander Thomas) 5 weeks ago.
Build log

Download all attachments as: .zip

Change History (5)

Changed 5 weeks ago by DrLex0 (Alexander Thomas)

Build log

comment:1 Changed 5 weeks ago by ryandesign (Ryan Carsten Schmidt)

Keywords: sonoma added

The pulseaudio port uses the meson build system, not cmake. It does install cmake files for use by other ports that use the cmake build system and want to use it to find pulseaudio. The pulseaudio meson build system uses the m4 program to transform the template cmake file into the final file. From its meson.build file:

  m4 = find_program('m4', required: true)
  custom_target('PulseAudioConfig.cmake',
    input : cmake_template_file,
    output : 'PulseAudioConfig.cmake',
    capture : true,
    command : [m4, '@INPUT@'],
    build_by_default : true,
    install : true,
    install_dir : cmakedir,
  )

comment:2 Changed 5 weeks ago by ryandesign (Ryan Carsten Schmidt)

I can't figure out how to override meson's find_program from the command line. I've filed a bug report asking for help: https://github.com/mesonbuild/meson/issues/13096

comment:3 Changed 5 weeks ago by ryandesign (Ryan Carsten Schmidt)

Owner: set to ryandesign
Resolution: fixed
Status: newclosed

In 44fefdc4cfbddcabfab8e7cc1598dc6899821ed5/macports-ports (master):

pulseaudio: Use MacPorts m4

Closes: #69745

comment:4 Changed 4 weeks ago by RJVB (René Bertin)

Any idea why this only gets exposed with the x11 variant unset?

Note: See TracTickets for help on using tickets.