[pulseaudio-discuss] Build system: Makefile.am patches

Maarten Bosmans mkbosmans at gmail.com
Tue Jan 25 03:30:15 PST 2011


2011/1/23 Colin Guthrie <gmane at colin.guthr.ie>:
> 'Twas brillig, and Colin Guthrie at 20/01/11 18:10 did gyre and gimble:
> Yeah the first patch was as I expected. It broke make distcheck.
>
> It also generates all these warnings which are a pain...
>
>  CCLD   libpulsecore-1.0.la
>  CC     cli.lo
> cc1: warning: ../src/modules/rtp: No such file or directory
> cc1: warning: ../src/modules/gconf: No such file or directory
> cc1: warning: ../src/modules/bluetooth: No such file or directory
> cc1: warning: ../src/modules/oss: No such file or directory
> cc1: warning: ../src/modules/alsa: No such file or directory
> cc1: warning: ../src/modules/raop: No such file or directory
> cc1: warning: ../src/modules/x11: No such file or directory
> cc1: warning: ../src/modules/jack: No such file or directory
> cc1: warning: ../src/modules/dbus: No such file or directory
>
>
> With the patch reverted, the following works fine:
>
> git clone git://blah
> cd pulseaudio
> ./autogen.sh -V
> mkdir dc
> cd dc
> ../configure
> make distcheck

Ah, yes. I was looking for such a recipe.
I have now made a new patch series where make distcheck works.

> With this patch applied, the above fails.
>
> So I'm afraid it's a NAK unless you can inject some Makefile.am foo to
> create the necessary folders automatically (my AM foo it too weak and
> the Makefile.am's were the way I found to do this)
>
>
> FWIW, the actual error that breaks things is:
>
> LC_ALL=C /usr/bin/intltool-merge -d -u -c ../po/.intltool-merge-cache
> ../../po ../../src/daemon/pulseaudio.desktop.in daemon/pulseaudio.desktop
> Generating and caching the translation database
> Merging translations into daemon/pulseaudio.desktop.
> Died at /usr/bin/intltool-merge line 1174, <PO_FILE> line 92665.
> make[4]: *** [daemon/pulseaudio.desktop] Error 2

The workaround for this is indeed just to make src/daemon in the builddir.

> which is really an upstream bug (IMO) I reported here:
> https://bugs.launchpad.net/intltool/+bug/605826
>
> If you can provide a patch to Makefile.am that basically does all the
> necessary mkdir'ing on the build tree, then I'd happily support dropping
> these superfluous Makefile.am's
>
> I'll reply in a separate branch of the thread on the other patch which
> I'm testing now :)
>
> Col

So the first patch does the mkdir'ing of src/daemon and src/modules in
the builddir. Also the symdef.h files are now made in the src/modules
directory, so there is no need to make all the subdirectories. I hope
that's OK. It means that the include directories in AM_CFLAGS can be
reduced quite a bit.

Whether it should be srcdir or builddir in AM_CFLAGS has been a source
of confusion in the past:
http://git.0pointer.de/?p=pulseaudio.git;a=commitdiff;h=a206ac0fb58d757da30897ca9a64ae642d1865d1
http://git.0pointer.de/?p=pulseaudio.git;a=commitdiff;h=7104d54bbce8f9bd2553e16f45f3a0f69ac75b8b
The difficulty is that the from a git build the generated headers are
in the builddir and from a tar build the headers are pre-generated in
the srcdir. Anyway, that is solved now.

The second patch is the same as the one you rejected. After the first
patch it no longer breaks make distcheck.

The third patch is some more cleanup in Makefile.am. It should be
applied on top of Arun's build patches that are in his orc branch he
referenced in a mail to the list yesterday. I could rebase it on
master, but the he has to do the same.

Maarten
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-build-Generate-module-symdefs-in-src-modules-directory.patch
Type: application/octet-stream
Size: 9727 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/pulseaudio-discuss/attachments/20110125/3c5a601a/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-build-Don-t-include-empty-Makefile.am-in-subdirs.patch
Type: application/octet-stream
Size: 23521 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/pulseaudio-discuss/attachments/20110125/3c5a601a/attachment-0001.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0003-build-Remove-unnecessary-flags-in-AM_CFLAGS.patch
Type: application/octet-stream
Size: 4384 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/pulseaudio-discuss/attachments/20110125/3c5a601a/attachment-0002.obj>


More information about the pulseaudio-discuss mailing list