Message ID | 20190326141510.10120-1-tiwai@suse.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [RFC,alsa-lib] Drop -I$includedir/alsa from alsa.pc | expand |
Dne 26. 03. 19 v 15:15 Takashi Iwai napsal(a): > We used to put the additional include path $includedir/alsa in > pkgconfig just because some applications have included asoundlib.h > like > #include <asoundlib.h> > although the canonical form should be > #include <alsa/asoundlib.h> > > However, adding this include path is significantly dangerous due to > possible conflicts of file names like version.h. It's already the > reason to discourage people using alsa.pc for the packages. > > In this patch, the additional include path from alsa.pc is dropped > finally. At the same time, as a rescue plan for the programs > including via <asoundlib.h>, a stub header file is provided in > include/sound/asoundlib.h. It just includes alsa/asoundlib.h with a > warning to suggest for replacing with alsa/asoundlib.h. > Actually this is the same file as we install into sys/asoundlib.h, so > the whole changes are very minimal here. > > Signed-off-by: Takashi Iwai <tiwai@suse.de> > --- > include/Makefile.am | 1 + > utils/alsa.pc.in | 4 +--- > 2 files changed, 2 insertions(+), 3 deletions(-) > > diff --git a/include/Makefile.am b/include/Makefile.am > index 67f32e36c911..fffc8a62e88b 100644 > --- a/include/Makefile.am > +++ b/include/Makefile.am > @@ -96,3 +96,4 @@ AM_CPPFLAGS=-I$(top_srcdir)/include > install-data-hook: > test -d $(DESTDIR)$(sysincludedir) || mkdir -p $(DESTDIR)$(sysincludedir) > $(INSTALL_DATA) $(srcdir)/sys.h $(DESTDIR)$(sysincludedir)/asoundlib.h > + $(INSTALL_DATA) $(srcdir)/sys.h $(DESTDIR)/asoundlib.h > diff --git a/utils/alsa.pc.in b/utils/alsa.pc.in > index 8de9859f42db..444f66d85a34 100644 > --- a/utils/alsa.pc.in > +++ b/utils/alsa.pc.in > @@ -9,6 +9,4 @@ Version: @VERSION@ > Requires: > Libs: -L${libdir} -lasound > Libs.private: @ALSA_DEPLIBS@ > -# -I${includedir}/alsa below is just for backward compatibility > -# (it was set so mistakely in the older version) > -Cflags: -I${includedir} -I${includedir}/alsa > +Cflags: -I${includedir} Acked-by: Jaroslav Kysela <perex@perex.cz>
On Wed, 27 Mar 2019 13:57:10 +0100, Jaroslav Kysela wrote: > > Dne 26. 03. 19 v 15:15 Takashi Iwai napsal(a): > > We used to put the additional include path $includedir/alsa in > > pkgconfig just because some applications have included asoundlib.h > > like > > #include <asoundlib.h> > > although the canonical form should be > > #include <alsa/asoundlib.h> > > > > However, adding this include path is significantly dangerous due to > > possible conflicts of file names like version.h. It's already the > > reason to discourage people using alsa.pc for the packages. > > > > In this patch, the additional include path from alsa.pc is dropped > > finally. At the same time, as a rescue plan for the programs > > including via <asoundlib.h>, a stub header file is provided in > > include/sound/asoundlib.h. It just includes alsa/asoundlib.h with a > > warning to suggest for replacing with alsa/asoundlib.h. > > Actually this is the same file as we install into sys/asoundlib.h, so > > the whole changes are very minimal here. > > > > Signed-off-by: Takashi Iwai <tiwai@suse.de> > > --- > > include/Makefile.am | 1 + > > utils/alsa.pc.in | 4 +--- > > 2 files changed, 2 insertions(+), 3 deletions(-) > > > > diff --git a/include/Makefile.am b/include/Makefile.am > > index 67f32e36c911..fffc8a62e88b 100644 > > --- a/include/Makefile.am > > +++ b/include/Makefile.am > > @@ -96,3 +96,4 @@ AM_CPPFLAGS=-I$(top_srcdir)/include > > install-data-hook: > > test -d $(DESTDIR)$(sysincludedir) || mkdir -p $(DESTDIR)$(sysincludedir) > > $(INSTALL_DATA) $(srcdir)/sys.h $(DESTDIR)$(sysincludedir)/asoundlib.h > > + $(INSTALL_DATA) $(srcdir)/sys.h $(DESTDIR)/asoundlib.h > > diff --git a/utils/alsa.pc.in b/utils/alsa.pc.in > > index 8de9859f42db..444f66d85a34 100644 > > --- a/utils/alsa.pc.in > > +++ b/utils/alsa.pc.in > > @@ -9,6 +9,4 @@ Version: @VERSION@ > > Requires: > > Libs: -L${libdir} -lasound > > Libs.private: @ALSA_DEPLIBS@ > > -# -I${includedir}/alsa below is just for backward compatibility > > -# (it was set so mistakely in the older version) > > -Cflags: -I${includedir} -I${includedir}/alsa > > +Cflags: -I${includedir} > > Acked-by: Jaroslav Kysela <perex@perex.cz> Thanks, I'm going to wait until tomorrow, then merge the change. Takashi
On Tue, 26 Mar 2019 15:15:10 +0100, Takashi Iwai wrote: > > We used to put the additional include path $includedir/alsa in > pkgconfig just because some applications have included asoundlib.h > like > #include <asoundlib.h> > although the canonical form should be > #include <alsa/asoundlib.h> > > However, adding this include path is significantly dangerous due to > possible conflicts of file names like version.h. It's already the > reason to discourage people using alsa.pc for the packages. > > In this patch, the additional include path from alsa.pc is dropped > finally. At the same time, as a rescue plan for the programs > including via <asoundlib.h>, a stub header file is provided in > include/sound/asoundlib.h. It just includes alsa/asoundlib.h with a > warning to suggest for replacing with alsa/asoundlib.h. > Actually this is the same file as we install into sys/asoundlib.h, so > the whole changes are very minimal here. > > Signed-off-by: Takashi Iwai <tiwai@suse.de> Sorry, there was a typo in the patch. The correct one is below. In anyway, I'm going to merge the patch soon later. Takashi -- 8< -- From: Takashi Iwai <tiwai@suse.de> Subject: [PATCH] Drop -I$includedir/alsa from alsa.pc We used to put the additional include path $includedir/alsa in pkgconfig just because some applications have included asoundlib.h like #include <asoundlib.h> although the canonical form should be #include <alsa/asoundlib.h> However, adding this include path is significantly dangerous due to possible conflicts of file names like version.h. It's already the reason to discourage people using alsa.pc for the packages. In this patch, the additional include path from alsa.pc is dropped finally. At the same time, as a rescue plan for the programs including via <asoundlib.h>, a stub header file is provided in include/sound/asoundlib.h. It just includes alsa/asoundlib.h with a warning to suggest for replacing with alsa/asoundlib.h. Actually this is the same file as we install into sys/asoundlib.h, so the whole changes are very minimal here. Acked-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de> --- include/Makefile.am | 1 + utils/alsa.pc.in | 4 +--- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/include/Makefile.am b/include/Makefile.am index 67f32e36c911..665704a32129 100644 --- a/include/Makefile.am +++ b/include/Makefile.am @@ -96,3 +96,4 @@ AM_CPPFLAGS=-I$(top_srcdir)/include install-data-hook: test -d $(DESTDIR)$(sysincludedir) || mkdir -p $(DESTDIR)$(sysincludedir) $(INSTALL_DATA) $(srcdir)/sys.h $(DESTDIR)$(sysincludedir)/asoundlib.h + $(INSTALL_DATA) $(srcdir)/sys.h $(DESTDIR)$(includedir)/asoundlib.h diff --git a/utils/alsa.pc.in b/utils/alsa.pc.in index 8de9859f42db..444f66d85a34 100644 --- a/utils/alsa.pc.in +++ b/utils/alsa.pc.in @@ -9,6 +9,4 @@ Version: @VERSION@ Requires: Libs: -L${libdir} -lasound Libs.private: @ALSA_DEPLIBS@ -# -I${includedir}/alsa below is just for backward compatibility -# (it was set so mistakely in the older version) -Cflags: -I${includedir} -I${includedir}/alsa +Cflags: -I${includedir}
diff --git a/include/Makefile.am b/include/Makefile.am index 67f32e36c911..fffc8a62e88b 100644 --- a/include/Makefile.am +++ b/include/Makefile.am @@ -96,3 +96,4 @@ AM_CPPFLAGS=-I$(top_srcdir)/include install-data-hook: test -d $(DESTDIR)$(sysincludedir) || mkdir -p $(DESTDIR)$(sysincludedir) $(INSTALL_DATA) $(srcdir)/sys.h $(DESTDIR)$(sysincludedir)/asoundlib.h + $(INSTALL_DATA) $(srcdir)/sys.h $(DESTDIR)/asoundlib.h diff --git a/utils/alsa.pc.in b/utils/alsa.pc.in index 8de9859f42db..444f66d85a34 100644 --- a/utils/alsa.pc.in +++ b/utils/alsa.pc.in @@ -9,6 +9,4 @@ Version: @VERSION@ Requires: Libs: -L${libdir} -lasound Libs.private: @ALSA_DEPLIBS@ -# -I${includedir}/alsa below is just for backward compatibility -# (it was set so mistakely in the older version) -Cflags: -I${includedir} -I${includedir}/alsa +Cflags: -I${includedir}
We used to put the additional include path $includedir/alsa in pkgconfig just because some applications have included asoundlib.h like #include <asoundlib.h> although the canonical form should be #include <alsa/asoundlib.h> However, adding this include path is significantly dangerous due to possible conflicts of file names like version.h. It's already the reason to discourage people using alsa.pc for the packages. In this patch, the additional include path from alsa.pc is dropped finally. At the same time, as a rescue plan for the programs including via <asoundlib.h>, a stub header file is provided in include/sound/asoundlib.h. It just includes alsa/asoundlib.h with a warning to suggest for replacing with alsa/asoundlib.h. Actually this is the same file as we install into sys/asoundlib.h, so the whole changes are very minimal here. Signed-off-by: Takashi Iwai <tiwai@suse.de> --- include/Makefile.am | 1 + utils/alsa.pc.in | 4 +--- 2 files changed, 2 insertions(+), 3 deletions(-)