Eric Blake
2017-01-26 21:33:06 UTC
Hi,
I'm a little confused about how to set up Autoconf to install data files
for the program to use later, and I wondered if someone can clear up my
confusion.
http://starfighter.nongnu.org
"data", "gfx", "music", and "sound". All files in these directories need
to be installed to a location that gets defined as DATADIR. From what I
understand so far, the directory I want to use is the one stored in the
pkgdatadir variable, and I include files to install there by assigning
them in a Makefile.am to pkgdata_DATA. But listing the files out from a
Makefile.am in the same directory doesn't copy the directory structure,
and if I indicate a directory from the top-level Makefile.am, "make
install" just ignores (or rather, "omits") it and then spits out an
error with no accompanying information.
Makefile.am is read by automake, so your question is more likely to beI'm a little confused about how to set up Autoconf to install data files
for the program to use later, and I wondered if someone can clear up my
confusion.
http://starfighter.nongnu.org
"data", "gfx", "music", and "sound". All files in these directories need
to be installed to a location that gets defined as DATADIR. From what I
understand so far, the directory I want to use is the one stored in the
pkgdatadir variable, and I include files to install there by assigning
them in a Makefile.am to pkgdata_DATA. But listing the files out from a
Makefile.am in the same directory doesn't copy the directory structure,
and if I indicate a directory from the top-level Makefile.am, "make
install" just ignores (or rather, "omits") it and then spits out an
error with no accompanying information.
answered in the automake manual than the autoconf manual.
What am I missing here? How can I install these data files not into the
top-level pkgdatadir, but in the respective appropriate sub-directories
of pkgdatadir (e.g. "$(pkgdatadir)/data" and "$(pkgdatadir)/music")? I
can't find any documentation on how to do this anywhere.
Automake lets you define new targets that are subdirectories. In fact,top-level pkgdatadir, but in the respective appropriate sub-directories
of pkgdatadir (e.g. "$(pkgdatadir)/data" and "$(pkgdatadir)/music")? I
can't find any documentation on how to do this anywhere.
a quick search for $(pkgdatadir) found an example that might be
pertinent to your use case:
https://www.gnu.org/software/automake/manual/automake.html#Alternative
But I'm not as good at automake as I am at autoconf, so I'm cc'ing that
list in, in case someone else has more ideas.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org