diff mbox series

[RFC] Avoid the -D option which is not available install-sh

Message ID VI1PR07MB4864CB4B970E97D54B2164B8E4910@VI1PR07MB4864.eurprd07.prod.outlook.com
State New
Headers show
Series [RFC] Avoid the -D option which is not available install-sh | expand

Commit Message

Bernd Edlinger Jan. 31, 2019, 11:38 a.m. UTC
Hi,

I have an issue with the installation of gcc when configured with --enable-languages=all
on an arm-target where install-sh is used, and make install fails at libphobos as follows:

  if test -f $file; then \
    /home/ed/gnu/gcc-9-20190127-0/install-sh -c -m 644 -D $file /home/ed/gnu/arm-linux-gnueabihf/lib/gcc/armv7l-unknown-linux-gnueabihf/9.0.1/include/d/$file ; \
  else \
    /home/ed/gnu/gcc-9-20190127-0/install-sh -c -m 644 -D ../../../../gcc-9-20190127-0/libphobos/libdruntime/$file \
      /home/ed/gnu/arm-linux-gnueabihf/lib/gcc/armv7l-unknown-linux-gnueabihf/9.0.1/include/d/$file ; \
  fi ; \
done
/home/ed/gnu/gcc-9-20190127-0/install-sh: invalid option: -D
/home/ed/gnu/gcc-9-20190127-0/install-sh: invalid option: -D
/home/ed/gnu/gcc-9-20190127-0/install-sh: invalid option: -D
...

I have fixed the installation with the attached patch, but when I regenerate the automake
files using automake-1.15.1 and autoconf-2.69, I have an issue that apparently
the configure.ac must be out of sync, and the the generated files are missing
the option --runstatedir no matter what I do.  At least on the source 

RFC, because I am not sure what the --runstatedir option is, and if it is intentional to remove,
and forgotten to re-generate, or if was intended to add, and forgotten to check in the
configure.ac.

Attached patch which fixes the install issue, and removes the --runstatedir configure option.
Is OK as is, or has anybody an idea how to fix this mess?


Thanks
Bernd.

Comments

Rainer Orth Jan. 31, 2019, 12:21 p.m. UTC | #1
Hi Bernd,

> I have fixed the installation with the attached patch, but when I regenerate the automake
> files using automake-1.15.1 and autoconf-2.69, I have an issue that apparently
> the configure.ac must be out of sync, and the the generated files are missing
> the option --runstatedir no matter what I do.  At least on the source 
>
> RFC, because I am not sure what the --runstatedir option is, and if it is intentional to remove,
> and forgotten to re-generate, or if was intended to add, and forgotten to check in the
> configure.ac.
>
> Attached patch which fixes the install issue, and removes the --runstatedir configure option.
> Is OK as is, or has anybody an idea how to fix this mess?

those configure files have been generated with some modified version of
autoconf: --runstatedir isn't present in vanilla autoconf 2.69, but only
in git autoconf.  Since there are no uses of it I could find, please do
regenerate with autoconf 2.69 (preferably self-built since distros tend
to include random patches which only confuse future developers).

	Rainer
Bernd Edlinger Jan. 31, 2019, 3:39 p.m. UTC | #2
On 1/31/19 1:21 PM, Rainer Orth wrote:
> Hi Bernd,
> 
>> I have fixed the installation with the attached patch, but when I regenerate the automake
>> files using automake-1.15.1 and autoconf-2.69, I have an issue that apparently
>> the configure.ac must be out of sync, and the the generated files are missing
>> the option --runstatedir no matter what I do.  At least on the source 
>>
>> RFC, because I am not sure what the --runstatedir option is, and if it is intentional to remove,
>> and forgotten to re-generate, or if was intended to add, and forgotten to check in the
>> configure.ac.
>>
>> Attached patch which fixes the install issue, and removes the --runstatedir configure option.
>> Is OK as is, or has anybody an idea how to fix this mess?
> 
> those configure files have been generated with some modified version of
> autoconf: --runstatedir isn't present in vanilla autoconf 2.69, but only
> in git autoconf.  Since there are no uses of it I could find, please do
> regenerate with autoconf 2.69 (preferably self-built since distros tend
> to include random patches which only confuse future developers).
> 

Yes, I build those always out of the tar balls.

tar xf autoconf-2.69.tar.gz
cd autoconf-2.69
./configure --prefix=$(cd ..;pwd)/auto-install
make && make install
cd ..
PATH=$PWD/auto-install/bin:$PATH
tar xf automake-1.15.1.tar.gz
cd automake-1.15.1
./configure --prefix=$(cd ..;pwd)/auto-install
make && make install
cd ..
cd gcc-trunk/libphobos
autoconf && automake

get the following messages:

libdruntime/Makefile.am:160: warning: source file 'rt/bss_section.c' is in a subdirectory,
libdruntime/Makefile.am:160: but option 'subdir-objects' is disabled
libdruntime/Makefile.am:158: warning: source file 'core/threadasm.S' is in a subdirectory,
libdruntime/Makefile.am:158: but option 'subdir-objects' is disabled
src/Makefile.am:106: warning: source file '$(top_srcdir)/../zlib/adler32.c' is in a subdirectory,
src/Makefile.am:106: but option 'subdir-objects' is disabled
src/Makefile.am:106: warning: source file '$(top_srcdir)/../zlib/compress.c' is in a subdirectory,
src/Makefile.am:106: but option 'subdir-objects' is disabled
src/Makefile.am:106: warning: source file '$(top_srcdir)/../zlib/crc32.c' is in a subdirectory,
src/Makefile.am:106: but option 'subdir-objects' is disabled
src/Makefile.am:106: warning: source file '$(top_srcdir)/../zlib/deflate.c' is in a subdirectory,
src/Makefile.am:106: but option 'subdir-objects' is disabled
src/Makefile.am:106: warning: source file '$(top_srcdir)/../zlib/gzclose.c' is in a subdirectory,
src/Makefile.am:106: but option 'subdir-objects' is disabled
src/Makefile.am:106: warning: source file '$(top_srcdir)/../zlib/gzlib.c' is in a subdirectory,
src/Makefile.am:106: but option 'subdir-objects' is disabled
src/Makefile.am:106: warning: source file '$(top_srcdir)/../zlib/gzread.c' is in a subdirectory,
src/Makefile.am:106: but option 'subdir-objects' is disabled
src/Makefile.am:106: warning: source file '$(top_srcdir)/../zlib/gzwrite.c' is in a subdirectory,
src/Makefile.am:106: but option 'subdir-objects' is disabled
src/Makefile.am:106: warning: source file '$(top_srcdir)/../zlib/infback.c' is in a subdirectory,
src/Makefile.am:106: but option 'subdir-objects' is disabled
src/Makefile.am:106: warning: source file '$(top_srcdir)/../zlib/inffast.c' is in a subdirectory,
src/Makefile.am:106: but option 'subdir-objects' is disabled
src/Makefile.am:106: warning: source file '$(top_srcdir)/../zlib/inflate.c' is in a subdirectory,
src/Makefile.am:106: but option 'subdir-objects' is disabled
src/Makefile.am:106: warning: source file '$(top_srcdir)/../zlib/inftrees.c' is in a subdirectory,
src/Makefile.am:106: but option 'subdir-objects' is disabled
src/Makefile.am:106: warning: source file '$(top_srcdir)/../zlib/trees.c' is in a subdirectory,
src/Makefile.am:106: but option 'subdir-objects' is disabled
src/Makefile.am:106: warning: source file '$(top_srcdir)/../zlib/uncompr.c' is in a subdirectory,
src/Makefile.am:106: but option 'subdir-objects' is disabled
src/Makefile.am:106: warning: source file '$(top_srcdir)/../zlib/zutil.c' is in a subdirectory,
src/Makefile.am:106: but option 'subdir-objects' is disabled

and exactly the same result.

So I would suggest to revert the changes from the unreleased autoconf.


Is the patch OK for trunk as-is ?

Thanks
Bernd.
Rainer Orth Jan. 31, 2019, 3:44 p.m. UTC | #3
Hi Bernd,

>> those configure files have been generated with some modified version of
>> autoconf: --runstatedir isn't present in vanilla autoconf 2.69, but only
>> in git autoconf.  Since there are no uses of it I could find, please do
>> regenerate with autoconf 2.69 (preferably self-built since distros tend
>> to include random patches which only confuse future developers).
>> 
>
> Yes, I build those always out of the tar balls.

good.

> cd gcc-trunk/libphobos
> autoconf && automake

You should be careful to use the same options as in Makefile.in, in the
case of automake --foreign --ignore-deps.

> get the following messages:
>
> libdruntime/Makefile.am:160: warning: source file 'rt/bss_section.c' is in
> a subdirectory,
> libdruntime/Makefile.am:160: but option 'subdir-objects' is disabled
[...]

> and exactly the same result.

I think Joseph mentioned those when gcc trunk was moved to newer
autoconf and automake versions.

> So I would suggest to revert the changes from the unreleased autoconf.

IMO you should always regenerate with the documented/required versions.
Almost everything else is a prior mistake.

> Is the patch OK for trunk as-is ?

That's for Iain to decide.

	Rainer
Bernd Edlinger Feb. 7, 2019, 5:29 p.m. UTC | #4
I'd like to ping for this patch:
https://gcc.gnu.org/ml/gcc-patches/2019-01/msg01779.html

Thanks
Bernd.

On 1/31/19 12:38 PM, Bernd Edlinger wrote:
> Hi,
> 
> I have an issue with the installation of gcc when configured with --enable-languages=all
> on an arm-target where install-sh is used, and make install fails at libphobos as follows:
> 
>   if test -f $file; then \
>     /home/ed/gnu/gcc-9-20190127-0/install-sh -c -m 644 -D $file /home/ed/gnu/arm-linux-gnueabihf/lib/gcc/armv7l-unknown-linux-gnueabihf/9.0.1/include/d/$file ; \
>   else \
>     /home/ed/gnu/gcc-9-20190127-0/install-sh -c -m 644 -D ../../../../gcc-9-20190127-0/libphobos/libdruntime/$file \
>       /home/ed/gnu/arm-linux-gnueabihf/lib/gcc/armv7l-unknown-linux-gnueabihf/9.0.1/include/d/$file ; \
>   fi ; \
> done
> /home/ed/gnu/gcc-9-20190127-0/install-sh: invalid option: -D
> /home/ed/gnu/gcc-9-20190127-0/install-sh: invalid option: -D
> /home/ed/gnu/gcc-9-20190127-0/install-sh: invalid option: -D
> ...
> 
> I have fixed the installation with the attached patch, but when I regenerate the automake
> files using automake-1.15.1 and autoconf-2.69, I have an issue that apparently
> the configure.ac must be out of sync, and the the generated files are missing
> the option --runstatedir no matter what I do.  At least on the source 
> 
> RFC, because I am not sure what the --runstatedir option is, and if it is intentional to remove,
> and forgotten to re-generate, or if was intended to add, and forgotten to check in the
> configure.ac.
> 
> Attached patch which fixes the install issue, and removes the --runstatedir configure option.
> Is OK as is, or has anybody an idea how to fix this mess?
> 
> 
> Thanks
> Bernd.
>
Bernd Edlinger Feb. 9, 2019, 6:11 p.m. UTC | #5
On 1/31/19 12:38 PM, Bernd Edlinger wrote:
> Hi,
> 
> I have an issue with the installation of gcc when configured with --enable-languages=all
> on an arm-target where install-sh is used, and make install fails at libphobos as follows:
> 
>   if test -f $file; then \
>     /home/ed/gnu/gcc-9-20190127-0/install-sh -c -m 644 -D $file /home/ed/gnu/arm-linux-gnueabihf/lib/gcc/armv7l-unknown-linux-gnueabihf/9.0.1/include/d/$file ; \
>   else \
>     /home/ed/gnu/gcc-9-20190127-0/install-sh -c -m 644 -D ../../../../gcc-9-20190127-0/libphobos/libdruntime/$file \
>       /home/ed/gnu/arm-linux-gnueabihf/lib/gcc/armv7l-unknown-linux-gnueabihf/9.0.1/include/d/$file ; \
>   fi ; \
> done
> /home/ed/gnu/gcc-9-20190127-0/install-sh: invalid option: -D
> /home/ed/gnu/gcc-9-20190127-0/install-sh: invalid option: -D
> /home/ed/gnu/gcc-9-20190127-0/install-sh: invalid option: -D
> ...
> 
> I have fixed the installation with the attached patch, but when I regenerate the automake
> files using automake-1.15.1 and autoconf-2.69, I have an issue that apparently
> the configure.ac must be out of sync, and the the generated files are missing
> the option --runstatedir no matter what I do.  At least on the source 
> 
> RFC, because I am not sure what the --runstatedir option is, and if it is intentional to remove,
> and forgotten to re-generate, or if was intended to add, and forgotten to check in the
> configure.ac.
> 

Aehm, sorry, I realized that the patch did not work when coreutil's install is used
instead of install-sh *and* the subdirectories below include/d do not yet exist.

So have to extract and create the directory part before installing $file.

Attached is the new version of the libphobos install patch.


Bootstrapped and reg-tested / installed on x86_64-pc-linux-gnu and arm-linux-gnueabihf
with all languages.

Is it OK for trunk?


Thanks
Bernd.
2019-01-31  Bernd Edlinger  <bernd.edlinger@hotmail.de>

	* src/Makefile.am: Avoid the -D option which is not available
	with the install-sh fallback.  Use $(MKDIR_P) instead.
	* libdruntime/Makefile.am: Likewise.
	* configure: Regenerated.
	* Makefile.in: Regenerated.
	* src/Makefile.in: Regenerated.
	* libdruntime/Makefile.in: Regenerated.
	* testsuite/Makefile.in: Regenerated.

Index: libphobos/Makefile.in
===================================================================
--- libphobos/Makefile.in	(revision 268614)
+++ libphobos/Makefile.in	(working copy)
@@ -15,7 +15,7 @@
 @SET_MAKE@
 
 # Makefile for the toplevel directory of the D Standard library.
-# Copyright (C) 2006-2018 Free Software Foundation, Inc.
+# Copyright (C) 2006-2019 Free Software Foundation, Inc.
 #
 # GCC is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -319,7 +319,6 @@ phobos_compiler_shared_flag = @phobos_compiler_sha
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
Index: libphobos/configure
===================================================================
--- libphobos/configure	(revision 268614)
+++ libphobos/configure	(working copy)
@@ -782,7 +782,6 @@ infodir
 docdir
 oldincludedir
 includedir
-runstatedir
 localstatedir
 sharedstatedir
 sysconfdir
@@ -868,7 +867,6 @@ datadir='${datarootdir}'
 sysconfdir='${prefix}/etc'
 sharedstatedir='${prefix}/com'
 localstatedir='${prefix}/var'
-runstatedir='${localstatedir}/run'
 includedir='${prefix}/include'
 oldincludedir='/usr/include'
 docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
@@ -1121,15 +1119,6 @@ do
   | -silent | --silent | --silen | --sile | --sil)
     silent=yes ;;
 
-  -runstatedir | --runstatedir | --runstatedi | --runstated \
-  | --runstate | --runstat | --runsta | --runst | --runs \
-  | --run | --ru | --r)
-    ac_prev=runstatedir ;;
-  -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
-  | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
-  | --run=* | --ru=* | --r=*)
-    runstatedir=$ac_optarg ;;
-
   -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
     ac_prev=sbindir ;;
   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
@@ -1267,7 +1256,7 @@ fi
 for ac_var in	exec_prefix prefix bindir sbindir libexecdir datarootdir \
 		datadir sysconfdir sharedstatedir localstatedir includedir \
 		oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-		libdir localedir mandir runstatedir
+		libdir localedir mandir
 do
   eval ac_val=\$$ac_var
   # Remove trailing slashes.
@@ -1420,7 +1409,6 @@ Fine tuning of the installation directories:
   --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
   --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
   --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
-  --runstatedir=DIR       modifiable per-process data [LOCALSTATEDIR/run]
   --libdir=DIR            object code libraries [EPREFIX/lib]
   --includedir=DIR        C header files [PREFIX/include]
   --oldincludedir=DIR     C header files for non-gcc [/usr/include]
@@ -11508,7 +11496,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 11511 "configure"
+#line 11499 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -11614,7 +11602,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 11617 "configure"
+#line 11605 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
Index: libphobos/libdruntime/Makefile.am
===================================================================
--- libphobos/libdruntime/Makefile.am	(revision 268614)
+++ libphobos/libdruntime/Makefile.am	(working copy)
@@ -140,10 +140,12 @@ clean-local:
 # Handles generated files as well
 install-data-local:
 	for file in $(ALL_DRUNTIME_INSTALL_DSOURCES); do \
+	  $(MKDIR_P) `echo $(DESTDIR)$(gdc_include_dir)/$$file \
+		      | sed -e 's:/[^/]*$$::'` ; \
 	  if test -f $$file; then \
-	    $(INSTALL_HEADER) -D $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
+	    $(INSTALL_HEADER) $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  else \
-	    $(INSTALL_HEADER) -D $(srcdir)/$$file \
+	    $(INSTALL_HEADER) $(srcdir)/$$file \
 	      $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  fi ; \
 	done
Index: libphobos/libdruntime/Makefile.in
===================================================================
--- libphobos/libdruntime/Makefile.in	(revision 268614)
+++ libphobos/libdruntime/Makefile.in	(working copy)
@@ -15,7 +15,7 @@
 @SET_MAKE@
 
 # Makefile for the D runtime library.
-# Copyright (C) 2012-2018 Free Software Foundation, Inc.
+# Copyright (C) 2012-2019 Free Software Foundation, Inc.
 #
 # GCC is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -656,7 +656,6 @@ phobos_compiler_shared_flag = @phobos_compiler_sha
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -2171,10 +2170,12 @@ clean-local:
 # Handles generated files as well
 install-data-local:
 	for file in $(ALL_DRUNTIME_INSTALL_DSOURCES); do \
+	  $(MKDIR_P) `echo $(DESTDIR)$(gdc_include_dir)/$$file \
+		      | sed -e 's:/[^/]*$$::'` ; \
 	  if test -f $$file; then \
-	    $(INSTALL_HEADER) -D $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
+	    $(INSTALL_HEADER) $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  else \
-	    $(INSTALL_HEADER) -D $(srcdir)/$$file \
+	    $(INSTALL_HEADER) $(srcdir)/$$file \
 	      $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  fi ; \
 	done
Index: libphobos/src/Makefile.am
===================================================================
--- libphobos/src/Makefile.am	(revision 268614)
+++ libphobos/src/Makefile.am	(working copy)
@@ -93,10 +93,12 @@ clean-local:
 # Handles generated files as well
 install-data-local:
 	for file in $(ALL_PHOBOS_INSTALL_DSOURCES); do \
+	  $(MKDIR_P) `echo $(DESTDIR)$(gdc_include_dir)/$$file \
+		      | sed -e 's:/[^/]*$$::'` ; \
 	  if test -f $$file; then \
-	    $(INSTALL_HEADER) -D $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
+	    $(INSTALL_HEADER) $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  else \
-	    $(INSTALL_HEADER) -D $(srcdir)/$$file \
+	    $(INSTALL_HEADER) $(srcdir)/$$file \
 	      $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  fi ; \
 	done
Index: libphobos/src/Makefile.in
===================================================================
--- libphobos/src/Makefile.in	(revision 268614)
+++ libphobos/src/Makefile.in	(working copy)
@@ -610,7 +610,6 @@ phobos_compiler_shared_flag = @phobos_compiler_sha
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -1648,10 +1647,12 @@ clean-local:
 # Handles generated files as well
 install-data-local:
 	for file in $(ALL_PHOBOS_INSTALL_DSOURCES); do \
+	  $(MKDIR_P) `echo $(DESTDIR)$(gdc_include_dir)/$$file \
+		      | sed -e 's:/[^/]*$$::'` ; \
 	  if test -f $$file; then \
-	    $(INSTALL_HEADER) -D $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
+	    $(INSTALL_HEADER) $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  else \
-	    $(INSTALL_HEADER) -D $(srcdir)/$$file \
+	    $(INSTALL_HEADER) $(srcdir)/$$file \
 	      $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  fi ; \
 	done
Index: libphobos/testsuite/Makefile.in
===================================================================
--- libphobos/testsuite/Makefile.in	(revision 268614)
+++ libphobos/testsuite/Makefile.in	(working copy)
@@ -265,7 +265,6 @@ phobos_compiler_shared_flag = @phobos_compiler_sha
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
Jakub Jelinek Feb. 9, 2019, 6:18 p.m. UTC | #6
On Sat, Feb 09, 2019 at 06:11:00PM +0000, Bernd Edlinger wrote:
> --- libphobos/libdruntime/Makefile.am	(revision 268614)
> +++ libphobos/libdruntime/Makefile.am	(working copy)
> @@ -140,10 +140,12 @@ clean-local:
>  # Handles generated files as well
>  install-data-local:
>  	for file in $(ALL_DRUNTIME_INSTALL_DSOURCES); do \
> +	  $(MKDIR_P) `echo $(DESTDIR)$(gdc_include_dir)/$$file \
> +		      | sed -e 's:/[^/]*$$::'` ; \

Perhaps better `dirname $(DESTDIR)$(gdc_include_dir)/$$file` ?

	Jakub
Bernd Edlinger Feb. 9, 2019, 6:21 p.m. UTC | #7
On 2/9/19 7:18 PM, Jakub Jelinek wrote:
> On Sat, Feb 09, 2019 at 06:11:00PM +0000, Bernd Edlinger wrote:
>> --- libphobos/libdruntime/Makefile.am	(revision 268614)
>> +++ libphobos/libdruntime/Makefile.am	(working copy)
>> @@ -140,10 +140,12 @@ clean-local:
>>  # Handles generated files as well
>>  install-data-local:
>>  	for file in $(ALL_DRUNTIME_INSTALL_DSOURCES); do \
>> +	  $(MKDIR_P) `echo $(DESTDIR)$(gdc_include_dir)/$$file \
>> +		      | sed -e 's:/[^/]*$$::'` ; \
> 
> Perhaps better `dirname $(DESTDIR)$(gdc_include_dir)/$$file` ?
> 

Ah, yes, good point.

Consider it changed.


Thanks
Bernd.
Bernd Edlinger Feb. 16, 2019, 12:58 p.m. UTC | #8
On 2/9/19 7:21 PM, Bernd Edlinger wrote:
> On 2/9/19 7:18 PM, Jakub Jelinek wrote:
>> On Sat, Feb 09, 2019 at 06:11:00PM +0000, Bernd Edlinger wrote:
>>> --- libphobos/libdruntime/Makefile.am	(revision 268614)
>>> +++ libphobos/libdruntime/Makefile.am	(working copy)
>>> @@ -140,10 +140,12 @@ clean-local:
>>>  # Handles generated files as well
>>>  install-data-local:
>>>  	for file in $(ALL_DRUNTIME_INSTALL_DSOURCES); do \
>>> +	  $(MKDIR_P) `echo $(DESTDIR)$(gdc_include_dir)/$$file \
>>> +		      | sed -e 's:/[^/]*$$::'` ; \
>>
>> Perhaps better `dirname $(DESTDIR)$(gdc_include_dir)/$$file` ?
>>
> 
> Ah, yes, good point.
> 
> Consider it changed.
> 
> 

So here is the latest version with the requested change.

How is the procedure with libpobos patches?
Can we check them into the gcc svn, or will Ian have to
push them first into the upstream?


Thanks
Bernd.
2019-01-31  Bernd Edlinger  <bernd.edlinger@hotmail.de>

	* src/Makefile.am: Avoid the -D option which is not available
	with the install-sh fallback.  Use $(MKDIR_P) instead.
	* libdruntime/Makefile.am: Likewise.
	* configure: Regenerated.
	* Makefile.in: Regenerated.
	* src/Makefile.in: Regenerated.
	* libdruntime/Makefile.in: Regenerated.
	* testsuite/Makefile.in: Regenerated.

Index: libphobos/Makefile.in
===================================================================
--- libphobos/Makefile.in	(revision 268718)
+++ libphobos/Makefile.in	(working copy)
@@ -15,7 +15,7 @@
 @SET_MAKE@
 
 # Makefile for the toplevel directory of the D Standard library.
-# Copyright (C) 2006-2018 Free Software Foundation, Inc.
+# Copyright (C) 2006-2019 Free Software Foundation, Inc.
 #
 # GCC is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -319,7 +319,6 @@ phobos_compiler_shared_flag = @phobos_compiler_sha
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
Index: libphobos/configure
===================================================================
--- libphobos/configure	(revision 268718)
+++ libphobos/configure	(working copy)
@@ -782,7 +782,6 @@ infodir
 docdir
 oldincludedir
 includedir
-runstatedir
 localstatedir
 sharedstatedir
 sysconfdir
@@ -868,7 +867,6 @@ datadir='${datarootdir}'
 sysconfdir='${prefix}/etc'
 sharedstatedir='${prefix}/com'
 localstatedir='${prefix}/var'
-runstatedir='${localstatedir}/run'
 includedir='${prefix}/include'
 oldincludedir='/usr/include'
 docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
@@ -1121,15 +1119,6 @@ do
   | -silent | --silent | --silen | --sile | --sil)
     silent=yes ;;
 
-  -runstatedir | --runstatedir | --runstatedi | --runstated \
-  | --runstate | --runstat | --runsta | --runst | --runs \
-  | --run | --ru | --r)
-    ac_prev=runstatedir ;;
-  -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
-  | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
-  | --run=* | --ru=* | --r=*)
-    runstatedir=$ac_optarg ;;
-
   -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
     ac_prev=sbindir ;;
   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
@@ -1267,7 +1256,7 @@ fi
 for ac_var in	exec_prefix prefix bindir sbindir libexecdir datarootdir \
 		datadir sysconfdir sharedstatedir localstatedir includedir \
 		oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-		libdir localedir mandir runstatedir
+		libdir localedir mandir
 do
   eval ac_val=\$$ac_var
   # Remove trailing slashes.
@@ -1420,7 +1409,6 @@ Fine tuning of the installation directories:
   --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
   --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
   --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
-  --runstatedir=DIR       modifiable per-process data [LOCALSTATEDIR/run]
   --libdir=DIR            object code libraries [EPREFIX/lib]
   --includedir=DIR        C header files [PREFIX/include]
   --oldincludedir=DIR     C header files for non-gcc [/usr/include]
@@ -11508,7 +11496,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 11511 "configure"
+#line 11499 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -11614,7 +11602,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 11617 "configure"
+#line 11605 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
Index: libphobos/libdruntime/Makefile.am
===================================================================
--- libphobos/libdruntime/Makefile.am	(revision 268718)
+++ libphobos/libdruntime/Makefile.am	(working copy)
@@ -140,10 +140,11 @@ clean-local:
 # Handles generated files as well
 install-data-local:
 	for file in $(ALL_DRUNTIME_INSTALL_DSOURCES); do \
+	  $(MKDIR_P) `dirname $(DESTDIR)$(gdc_include_dir)/$$file` ; \
 	  if test -f $$file; then \
-	    $(INSTALL_HEADER) -D $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
+	    $(INSTALL_HEADER) $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  else \
-	    $(INSTALL_HEADER) -D $(srcdir)/$$file \
+	    $(INSTALL_HEADER) $(srcdir)/$$file \
 	      $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  fi ; \
 	done
Index: libphobos/libdruntime/Makefile.in
===================================================================
--- libphobos/libdruntime/Makefile.in	(revision 268718)
+++ libphobos/libdruntime/Makefile.in	(working copy)
@@ -15,7 +15,7 @@
 @SET_MAKE@
 
 # Makefile for the D runtime library.
-# Copyright (C) 2012-2018 Free Software Foundation, Inc.
+# Copyright (C) 2012-2019 Free Software Foundation, Inc.
 #
 # GCC is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -656,7 +656,6 @@ phobos_compiler_shared_flag = @phobos_compiler_sha
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -2171,10 +2170,11 @@ clean-local:
 # Handles generated files as well
 install-data-local:
 	for file in $(ALL_DRUNTIME_INSTALL_DSOURCES); do \
+	  $(MKDIR_P) `dirname $(DESTDIR)$(gdc_include_dir)/$$file` ; \
 	  if test -f $$file; then \
-	    $(INSTALL_HEADER) -D $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
+	    $(INSTALL_HEADER) $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  else \
-	    $(INSTALL_HEADER) -D $(srcdir)/$$file \
+	    $(INSTALL_HEADER) $(srcdir)/$$file \
 	      $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  fi ; \
 	done
Index: libphobos/src/Makefile.am
===================================================================
--- libphobos/src/Makefile.am	(revision 268718)
+++ libphobos/src/Makefile.am	(working copy)
@@ -93,10 +93,11 @@ clean-local:
 # Handles generated files as well
 install-data-local:
 	for file in $(ALL_PHOBOS_INSTALL_DSOURCES); do \
+	  $(MKDIR_P) `dirname $(DESTDIR)$(gdc_include_dir)/$$file` ; \
 	  if test -f $$file; then \
-	    $(INSTALL_HEADER) -D $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
+	    $(INSTALL_HEADER) $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  else \
-	    $(INSTALL_HEADER) -D $(srcdir)/$$file \
+	    $(INSTALL_HEADER) $(srcdir)/$$file \
 	      $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  fi ; \
 	done
Index: libphobos/src/Makefile.in
===================================================================
--- libphobos/src/Makefile.in	(revision 268718)
+++ libphobos/src/Makefile.in	(working copy)
@@ -610,7 +610,6 @@ phobos_compiler_shared_flag = @phobos_compiler_sha
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -1648,10 +1647,11 @@ clean-local:
 # Handles generated files as well
 install-data-local:
 	for file in $(ALL_PHOBOS_INSTALL_DSOURCES); do \
+	  $(MKDIR_P) `dirname $(DESTDIR)$(gdc_include_dir)/$$file` ; \
 	  if test -f $$file; then \
-	    $(INSTALL_HEADER) -D $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
+	    $(INSTALL_HEADER) $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  else \
-	    $(INSTALL_HEADER) -D $(srcdir)/$$file \
+	    $(INSTALL_HEADER) $(srcdir)/$$file \
 	      $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  fi ; \
 	done
Index: libphobos/testsuite/Makefile.in
===================================================================
--- libphobos/testsuite/Makefile.in	(revision 268718)
+++ libphobos/testsuite/Makefile.in	(working copy)
@@ -265,7 +265,6 @@ phobos_compiler_shared_flag = @phobos_compiler_sha
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
Johannes Pfau Feb. 18, 2019, 9:37 p.m. UTC | #9
Hi Bernd,

Am 16.02.19 um 13:58 schrieb Bernd Edlinger:
> 
> So here is the latest version with the requested change.
> 
> How is the procedure with libpobos patches?
> Can we check them into the gcc svn, or will Ian have to
> push them first into the upstream?

Most phobos/druntime changes should be upstreamed first: This ensures 
that we do not unintentionally revert changes on the next merge with 
upstream. High priority fixes can probably also be pushed to gdc before 
they're merged in upstream.

However, in this case we can push this without any upstream interaction 
either way: Upstream does not use the autoconf/automake build system. 
They use plain Makefiles completely unrelated to the build system we use 
here.

Patch looks good to me, but Iain has to approve this.

Best regards,
Johannes
Iain Buclaw Feb. 18, 2019, 10:25 p.m. UTC | #10
On Sat, 16 Feb 2019 at 13:58, Bernd Edlinger <bernd.edlinger@hotmail.de> wrote:
>
> On 2/9/19 7:21 PM, Bernd Edlinger wrote:
> > On 2/9/19 7:18 PM, Jakub Jelinek wrote:
> >> On Sat, Feb 09, 2019 at 06:11:00PM +0000, Bernd Edlinger wrote:
> >>> --- libphobos/libdruntime/Makefile.am       (revision 268614)
> >>> +++ libphobos/libdruntime/Makefile.am       (working copy)
> >>> @@ -140,10 +140,12 @@ clean-local:
> >>>  # Handles generated files as well
> >>>  install-data-local:
> >>>     for file in $(ALL_DRUNTIME_INSTALL_DSOURCES); do \
> >>> +     $(MKDIR_P) `echo $(DESTDIR)$(gdc_include_dir)/$$file \
> >>> +                 | sed -e 's:/[^/]*$$::'` ; \
> >>
> >> Perhaps better `dirname $(DESTDIR)$(gdc_include_dir)/$$file` ?
> >>
> >
> > Ah, yes, good point.
> >
> > Consider it changed.
> >
> >
>
> So here is the latest version with the requested change.
>

Looks ok to me.

> How is the procedure with libpobos patches?
> Can we check them into the gcc svn, or will Ian have to
> push them first into the upstream?
>

See libphobos/README.gcc regarding what sources are part of upstream.
Anything else that isn't listed is local to gcc svn, and can be
committed directly.
diff mbox series

Patch

2019-01-31  Bernd Edlinger  <bernd.edlinger@hotmail.de>

	* src/Makefile.am: Avoid the -D option which is not available
	with the install-sh fallback.  Use $(MKDIR_P) instead.
	* libdruntime/Makefile.am: Likewise.
	* configure: Regenerated.
	* Makefile.in: Regenerated.
	* src/Makefile.in: Regenerated.
	* libdruntime/Makefile.in: Regenerated.
	* testsuite/Makefile.in: Regenerated.

diff -ur libphobos/configure libphobos/configure
--- libphobos/configure	2019-01-27 23:33:11.000000000 +0100
+++ libphobos/configure	2019-01-31 09:17:08.788970961 +0100
@@ -782,7 +782,6 @@ 
 docdir
 oldincludedir
 includedir
-runstatedir
 localstatedir
 sharedstatedir
 sysconfdir
@@ -868,7 +867,6 @@ 
 sysconfdir='${prefix}/etc'
 sharedstatedir='${prefix}/com'
 localstatedir='${prefix}/var'
-runstatedir='${localstatedir}/run'
 includedir='${prefix}/include'
 oldincludedir='/usr/include'
 docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
@@ -1121,15 +1119,6 @@ 
   | -silent | --silent | --silen | --sile | --sil)
     silent=yes ;;
 
-  -runstatedir | --runstatedir | --runstatedi | --runstated \
-  | --runstate | --runstat | --runsta | --runst | --runs \
-  | --run | --ru | --r)
-    ac_prev=runstatedir ;;
-  -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
-  | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
-  | --run=* | --ru=* | --r=*)
-    runstatedir=$ac_optarg ;;
-
   -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
     ac_prev=sbindir ;;
   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
@@ -1267,7 +1256,7 @@ 
 for ac_var in	exec_prefix prefix bindir sbindir libexecdir datarootdir \
 		datadir sysconfdir sharedstatedir localstatedir includedir \
 		oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-		libdir localedir mandir runstatedir
+		libdir localedir mandir
 do
   eval ac_val=\$$ac_var
   # Remove trailing slashes.
@@ -1420,7 +1409,6 @@ 
   --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
   --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
   --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
-  --runstatedir=DIR       modifiable per-process data [LOCALSTATEDIR/run]
   --libdir=DIR            object code libraries [EPREFIX/lib]
   --includedir=DIR        C header files [PREFIX/include]
   --oldincludedir=DIR     C header files for non-gcc [/usr/include]
@@ -11508,7 +11496,7 @@ 
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 11511 "configure"
+#line 11499 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -11614,7 +11602,7 @@ 
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 11617 "configure"
+#line 11605 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
diff -ur libphobos/libdruntime/Makefile.am libphobos/libdruntime/Makefile.am
--- libphobos/libdruntime/Makefile.am	2019-01-01 13:31:55.000000000 +0100
+++ libphobos/libdruntime/Makefile.am	2019-01-31 08:29:02.489565809 +0100
@@ -139,11 +139,12 @@ 
 
 # Handles generated files as well
 install-data-local:
+	$(MKDIR_P) $(DESTDIR)$(gdc_include_dir)
 	for file in $(ALL_DRUNTIME_INSTALL_DSOURCES); do \
 	  if test -f $$file; then \
-	    $(INSTALL_HEADER) -D $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
+	    $(INSTALL_HEADER) $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  else \
-	    $(INSTALL_HEADER) -D $(srcdir)/$$file \
+	    $(INSTALL_HEADER) $(srcdir)/$$file \
 	      $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  fi ; \
 	done
diff -ur libphobos/libdruntime/Makefile.in libphobos/libdruntime/Makefile.in
--- libphobos/libdruntime/Makefile.in	2018-11-28 18:54:07.000000000 +0100
+++ libphobos/libdruntime/Makefile.in	2019-01-31 09:12:59.007294461 +0100
@@ -15,7 +15,7 @@ 
 @SET_MAKE@
 
 # Makefile for the D runtime library.
-# Copyright (C) 2012-2018 Free Software Foundation, Inc.
+# Copyright (C) 2012-2019 Free Software Foundation, Inc.
 #
 # GCC is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -656,7 +656,6 @@ 
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -2170,11 +2169,12 @@ 
 
 # Handles generated files as well
 install-data-local:
+	$(MKDIR_P) $(DESTDIR)$(gdc_include_dir)
 	for file in $(ALL_DRUNTIME_INSTALL_DSOURCES); do \
 	  if test -f $$file; then \
-	    $(INSTALL_HEADER) -D $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
+	    $(INSTALL_HEADER) $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  else \
-	    $(INSTALL_HEADER) -D $(srcdir)/$$file \
+	    $(INSTALL_HEADER) $(srcdir)/$$file \
 	      $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  fi ; \
 	done
diff -ur libphobos/Makefile.in libphobos/Makefile.in
--- libphobos/Makefile.in	2019-01-27 23:33:11.000000000 +0100
+++ libphobos/Makefile.in	2019-01-31 09:12:58.954295271 +0100
@@ -15,7 +15,7 @@ 
 @SET_MAKE@
 
 # Makefile for the toplevel directory of the D Standard library.
-# Copyright (C) 2006-2018 Free Software Foundation, Inc.
+# Copyright (C) 2006-2019 Free Software Foundation, Inc.
 #
 # GCC is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -319,7 +319,6 @@ 
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
diff -ur libphobos/src/Makefile.am libphobos/src/Makefile.am
--- libphobos/src/Makefile.am	2019-01-01 13:31:55.000000000 +0100
+++ libphobos/src/Makefile.am	2019-01-31 07:54:36.457355901 +0100
@@ -92,11 +92,12 @@ 
 
 # Handles generated files as well
 install-data-local:
+	$(MKDIR_P) $(DESTDIR)$(gdc_include_dir)
 	for file in $(ALL_PHOBOS_INSTALL_DSOURCES); do \
 	  if test -f $$file; then \
-	    $(INSTALL_HEADER) -D $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
+	    $(INSTALL_HEADER) $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  else \
-	    $(INSTALL_HEADER) -D $(srcdir)/$$file \
+	    $(INSTALL_HEADER) $(srcdir)/$$file \
 	      $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  fi ; \
 	done
diff -ur libphobos/src/Makefile.in libphobos/src/Makefile.in
--- libphobos/src/Makefile.in	2019-01-27 23:33:11.000000000 +0100
+++ libphobos/src/Makefile.in	2019-01-31 09:12:59.081293328 +0100
@@ -610,7 +610,6 @@ 
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -1647,11 +1646,12 @@ 
 
 # Handles generated files as well
 install-data-local:
+	$(MKDIR_P) $(DESTDIR)$(gdc_include_dir)
 	for file in $(ALL_PHOBOS_INSTALL_DSOURCES); do \
 	  if test -f $$file; then \
-	    $(INSTALL_HEADER) -D $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
+	    $(INSTALL_HEADER) $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  else \
-	    $(INSTALL_HEADER) -D $(srcdir)/$$file \
+	    $(INSTALL_HEADER) $(srcdir)/$$file \
 	      $(DESTDIR)$(gdc_include_dir)/$$file ; \
 	  fi ; \
 	done
diff -ur libphobos/testsuite/Makefile.in libphobos/testsuite/Makefile.in
--- libphobos/testsuite/Makefile.in	2019-01-27 23:33:11.000000000 +0100
+++ libphobos/testsuite/Makefile.in	2019-01-31 09:12:59.094293130 +0100
@@ -265,7 +265,6 @@ 
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
-runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@