Message ID | 1408402240-3126-1-git-send-email-romain.naour@openwide.fr |
---|---|
State | Superseded |
Headers | show |
Hi Romain, On Tue, Aug 19, 2014 at 12:50 AM, Romain Naour <romain.naour@openwide.fr> wrote: > On fedora 20 64bits host, the file /usr/share/config.site contains > a fix for installing libraries into /lib/lib64 on 64bits systems > that redefine libdir in the generated Makefile > > For safety, disable loading this file when running the configure > script for the target and the host. > > Signed-off-by: Romain Naour <romain.naour@openwide.fr> > --- > package/pkg-autotools.mk | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/package/pkg-autotools.mk b/package/pkg-autotools.mk > index bcc648d..cdc31bf 100644 > --- a/package/pkg-autotools.mk > +++ b/package/pkg-autotools.mk > @@ -126,6 +126,7 @@ define $(2)_CONFIGURE_CMDS > $$(TARGET_CONFIGURE_OPTS) \ > $$(TARGET_CONFIGURE_ARGS) \ > $$($$(PKG)_CONF_ENV) \ > + CONFIG_SITE="no" \ > ./configure \ > --target=$$(GNU_TARGET_NAME) \ > --host=$$(GNU_TARGET_NAME) \ > @@ -159,6 +160,7 @@ define $(2)_CONFIGURE_CMDS > CFLAGS="$$(HOST_CFLAGS)" \ > LDFLAGS="$$(HOST_LDFLAGS)" \ > $$($$(PKG)_CONF_ENV) \ > + CONFIG_SITE="no" \ > ./configure \ > --prefix="$$(HOST_DIR)/usr" \ > --sysconfdir="$$(HOST_DIR)/etc" \ The autoconf documentation does not specify 'no' as a magic value, which means that the accidental presence of a file called 'no' would pick up the file. Wouldn't it be safer/cleaner to use CONFIG_SITE=/dev/null? Note that I have not tested if this actually works, just a thought. Best regards, Thomas
Hi Thomas, Le 21/08/2014 22:06, Thomas De Schampheleire a écrit : > Hi Romain, > > On Tue, Aug 19, 2014 at 12:50 AM, Romain Naour <romain.naour@openwide.fr> wrote: >> On fedora 20 64bits host, the file /usr/share/config.site contains >> a fix for installing libraries into /lib/lib64 on 64bits systems >> that redefine libdir in the generated Makefile >> >> For safety, disable loading this file when running the configure >> script for the target and the host. >> >> Signed-off-by: Romain Naour <romain.naour@openwide.fr> >> --- >> package/pkg-autotools.mk | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/package/pkg-autotools.mk b/package/pkg-autotools.mk >> index bcc648d..cdc31bf 100644 >> --- a/package/pkg-autotools.mk >> +++ b/package/pkg-autotools.mk >> @@ -126,6 +126,7 @@ define $(2)_CONFIGURE_CMDS >> $$(TARGET_CONFIGURE_OPTS) \ >> $$(TARGET_CONFIGURE_ARGS) \ >> $$($$(PKG)_CONF_ENV) \ >> + CONFIG_SITE="no" \ >> ./configure \ >> --target=$$(GNU_TARGET_NAME) \ >> --host=$$(GNU_TARGET_NAME) \ >> @@ -159,6 +160,7 @@ define $(2)_CONFIGURE_CMDS >> CFLAGS="$$(HOST_CFLAGS)" \ >> LDFLAGS="$$(HOST_LDFLAGS)" \ >> $$($$(PKG)_CONF_ENV) \ >> + CONFIG_SITE="no" \ >> ./configure \ >> --prefix="$$(HOST_DIR)/usr" \ >> --sysconfdir="$$(HOST_DIR)/etc" \ > > The autoconf documentation does not specify 'no' as a magic value, > which means that the accidental presence of a file called 'no' would > pick up the file. > Wouldn't it be safer/cleaner to use CONFIG_SITE=/dev/null? > Note that I have not tested if this actually works, just a thought. I tried with CONFIG_SITE="/dev/null" at first but I had configure: loading site script /dev/null I may use THIS_IS_NOT_YOUR_CONFIG_SITE instead :) So, I'm ok to keep "/dev/null" if you want. Thanks for review. Romain
On Thu, 21 Aug 2014 23:19:12 +0200 Romain Naour <romain.naour@openwide.fr> wrote: > Hi Thomas, > > Le 21/08/2014 22:06, Thomas De Schampheleire a écrit : > > Hi Romain, > > > > On Tue, Aug 19, 2014 at 12:50 AM, Romain Naour > > <romain.naour@openwide.fr> wrote: > >> On fedora 20 64bits host, the file /usr/share/config.site contains > >> a fix for installing libraries into /lib/lib64 on 64bits systems > >> that redefine libdir in the generated Makefile > >> > >> For safety, disable loading this file when running the configure > >> script for the target and the host. > >> > >> Signed-off-by: Romain Naour <romain.naour@openwide.fr> > >> --- > >> package/pkg-autotools.mk | 2 ++ > >> 1 file changed, 2 insertions(+) > >> > >> diff --git a/package/pkg-autotools.mk b/package/pkg-autotools.mk > >> index bcc648d..cdc31bf 100644 > >> --- a/package/pkg-autotools.mk > >> +++ b/package/pkg-autotools.mk > >> @@ -126,6 +126,7 @@ define $(2)_CONFIGURE_CMDS > >> $$(TARGET_CONFIGURE_OPTS) \ > >> $$(TARGET_CONFIGURE_ARGS) \ > >> $$($$(PKG)_CONF_ENV) \ > >> + CONFIG_SITE="no" \ > >> ./configure \ > >> --target=$$(GNU_TARGET_NAME) \ > >> --host=$$(GNU_TARGET_NAME) \ > >> @@ -159,6 +160,7 @@ define $(2)_CONFIGURE_CMDS > >> CFLAGS="$$(HOST_CFLAGS)" \ > >> LDFLAGS="$$(HOST_LDFLAGS)" \ > >> $$($$(PKG)_CONF_ENV) \ > >> + CONFIG_SITE="no" \ > >> ./configure \ > >> --prefix="$$(HOST_DIR)/usr" \ > >> --sysconfdir="$$(HOST_DIR)/etc" \ > > > > The autoconf documentation does not specify 'no' as a magic value, > > which means that the accidental presence of a file called 'no' would > > pick up the file. > > Wouldn't it be safer/cleaner to use CONFIG_SITE=/dev/null? > > Note that I have not tested if this actually works, just a thought. > > I tried with CONFIG_SITE="/dev/null" at first but I had > configure: loading site script /dev/null > > I may use THIS_IS_NOT_YOUR_CONFIG_SITE instead :) > Let me guess, that would result in something like: configure: site script THIS_IS_NOT_YOUR_CONFIG_SITE not found > So, I'm ok to keep "/dev/null" if you want. > If we where voting, I think the: configure: loading site script /dev/null is a much better message ans a person can even figure it out. Mike > Thanks for review. > Romain > _______________________________________________ > buildroot mailing list > buildroot@busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot
Hi Mike, Le 21/08/2014 23:32, Mike Zick a écrit : > On Thu, 21 Aug 2014 23:19:12 +0200 > Romain Naour <romain.naour@openwide.fr> wrote: > >> Hi Thomas, >> >> Le 21/08/2014 22:06, Thomas De Schampheleire a écrit : >>> Hi Romain, >>> >>> On Tue, Aug 19, 2014 at 12:50 AM, Romain Naour >>> <romain.naour@openwide.fr> wrote: >>>> On fedora 20 64bits host, the file /usr/share/config.site contains >>>> a fix for installing libraries into /lib/lib64 on 64bits systems >>>> that redefine libdir in the generated Makefile >>>> >>>> For safety, disable loading this file when running the configure >>>> script for the target and the host. >>>> >>>> Signed-off-by: Romain Naour <romain.naour@openwide.fr> >>>> --- >>>> package/pkg-autotools.mk | 2 ++ >>>> 1 file changed, 2 insertions(+) >>>> >>>> diff --git a/package/pkg-autotools.mk b/package/pkg-autotools.mk >>>> index bcc648d..cdc31bf 100644 >>>> --- a/package/pkg-autotools.mk >>>> +++ b/package/pkg-autotools.mk >>>> @@ -126,6 +126,7 @@ define $(2)_CONFIGURE_CMDS >>>> $$(TARGET_CONFIGURE_OPTS) \ >>>> $$(TARGET_CONFIGURE_ARGS) \ >>>> $$($$(PKG)_CONF_ENV) \ >>>> + CONFIG_SITE="no" \ >>>> ./configure \ >>>> --target=$$(GNU_TARGET_NAME) \ >>>> --host=$$(GNU_TARGET_NAME) \ >>>> @@ -159,6 +160,7 @@ define $(2)_CONFIGURE_CMDS >>>> CFLAGS="$$(HOST_CFLAGS)" \ >>>> LDFLAGS="$$(HOST_LDFLAGS)" \ >>>> $$($$(PKG)_CONF_ENV) \ >>>> + CONFIG_SITE="no" \ >>>> ./configure \ >>>> --prefix="$$(HOST_DIR)/usr" \ >>>> --sysconfdir="$$(HOST_DIR)/etc" \ >>> >>> The autoconf documentation does not specify 'no' as a magic value, >>> which means that the accidental presence of a file called 'no' would >>> pick up the file. >>> Wouldn't it be safer/cleaner to use CONFIG_SITE=/dev/null? >>> Note that I have not tested if this actually works, just a thought. >> >> I tried with CONFIG_SITE="/dev/null" at first but I had >> configure: loading site script /dev/null >> >> I may use THIS_IS_NOT_YOUR_CONFIG_SITE instead :) >> > > Let me guess, that would result in something like: > configure: site script THIS_IS_NOT_YOUR_CONFIG_SITE not found No, there is no print at all. > >> So, I'm ok to keep "/dev/null" if you want. >> > > If we where voting, I think the: > configure: loading site script /dev/null > > is a much better message ans a person can even figure it out. Thanks for voting. Best regards, Romain > > Mike >> Thanks for review. >> Romain >> _______________________________________________ >> buildroot mailing list >> buildroot@busybox.net >> http://lists.busybox.net/mailman/listinfo/buildroot > _______________________________________________ > buildroot mailing list > buildroot@busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot >
Hi, On Thu, Aug 21, 2014 at 11:50 PM, Romain Naour <romain.naour@openwide.fr> wrote: > Hi Mike, > > Le 21/08/2014 23:32, Mike Zick a écrit : >> On Thu, 21 Aug 2014 23:19:12 +0200 >> Romain Naour <romain.naour@openwide.fr> wrote: >> >>> Hi Thomas, >>> >>> Le 21/08/2014 22:06, Thomas De Schampheleire a écrit : >>>> Hi Romain, >>>> >>>> On Tue, Aug 19, 2014 at 12:50 AM, Romain Naour >>>> <romain.naour@openwide.fr> wrote: >>>>> On fedora 20 64bits host, the file /usr/share/config.site contains >>>>> a fix for installing libraries into /lib/lib64 on 64bits systems >>>>> that redefine libdir in the generated Makefile >>>>> >>>>> For safety, disable loading this file when running the configure >>>>> script for the target and the host. >>>>> >>>>> Signed-off-by: Romain Naour <romain.naour@openwide.fr> >>>>> --- >>>>> package/pkg-autotools.mk | 2 ++ >>>>> 1 file changed, 2 insertions(+) >>>>> >>>>> diff --git a/package/pkg-autotools.mk b/package/pkg-autotools.mk >>>>> index bcc648d..cdc31bf 100644 >>>>> --- a/package/pkg-autotools.mk >>>>> +++ b/package/pkg-autotools.mk >>>>> @@ -126,6 +126,7 @@ define $(2)_CONFIGURE_CMDS >>>>> $$(TARGET_CONFIGURE_OPTS) \ >>>>> $$(TARGET_CONFIGURE_ARGS) \ >>>>> $$($$(PKG)_CONF_ENV) \ >>>>> + CONFIG_SITE="no" \ >>>>> ./configure \ >>>>> --target=$$(GNU_TARGET_NAME) \ >>>>> --host=$$(GNU_TARGET_NAME) \ >>>>> @@ -159,6 +160,7 @@ define $(2)_CONFIGURE_CMDS >>>>> CFLAGS="$$(HOST_CFLAGS)" \ >>>>> LDFLAGS="$$(HOST_LDFLAGS)" \ >>>>> $$($$(PKG)_CONF_ENV) \ >>>>> + CONFIG_SITE="no" \ >>>>> ./configure \ >>>>> --prefix="$$(HOST_DIR)/usr" \ >>>>> --sysconfdir="$$(HOST_DIR)/etc" \ >>>> >>>> The autoconf documentation does not specify 'no' as a magic value, >>>> which means that the accidental presence of a file called 'no' would >>>> pick up the file. >>>> Wouldn't it be safer/cleaner to use CONFIG_SITE=/dev/null? >>>> Note that I have not tested if this actually works, just a thought. >>> >>> I tried with CONFIG_SITE="/dev/null" at first but I had >>> configure: loading site script /dev/null >>> >>> I may use THIS_IS_NOT_YOUR_CONFIG_SITE instead :) >>> >> >> Let me guess, that would result in something like: >> configure: site script THIS_IS_NOT_YOUR_CONFIG_SITE not found > > No, there is no print at all. > >> The logic in the configure script of host-localedef is: ac_site_file1=NONE ac_site_file2=NONE if test -n "$CONFIG_SITE"; then # We do not want a PATH search for config.site. case $CONFIG_SITE in #(( -*) ac_site_file1=./$CONFIG_SITE;; */*) ac_site_file1=$CONFIG_SITE;; *) ac_site_file1=./$CONFIG_SITE;; esac elif test "x$prefix" != xNONE; then ac_site_file1=$prefix/share/config.site ac_site_file2=$prefix/etc/config.site else ac_site_file1=$ac_default_prefix/share/config.site ac_site_file2=$ac_default_prefix/etc/config.site fi for ac_site_file in "$ac_site_file1" "$ac_site_file2" do test "x$ac_site_file" = xNONE && continue if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 Which means that: if CONFIG_SITE=NONE, ac_site_file1=./NONE --> file not readable, exit ac_site_file2=NONE --> NONE, exit if CONFIG_SITE=no, the same behavior as with NONE (./no and NONE) if CONFIG_SITE=/dev/null, ac_site_file1=/dev/null --> /dev/null, exit ac_site_file2=NONE --> NONE, exit So according to me, /dev/null looks like the cleanest solution. However, Romain said that this would also print the message, which is not correct in my tests. Maybe it depends on the version of autoconf used? Romain, are you sure there is a message printed when using /dev/null ? Thanks, Thomas
diff --git a/package/pkg-autotools.mk b/package/pkg-autotools.mk index bcc648d..cdc31bf 100644 --- a/package/pkg-autotools.mk +++ b/package/pkg-autotools.mk @@ -126,6 +126,7 @@ define $(2)_CONFIGURE_CMDS $$(TARGET_CONFIGURE_OPTS) \ $$(TARGET_CONFIGURE_ARGS) \ $$($$(PKG)_CONF_ENV) \ + CONFIG_SITE="no" \ ./configure \ --target=$$(GNU_TARGET_NAME) \ --host=$$(GNU_TARGET_NAME) \ @@ -159,6 +160,7 @@ define $(2)_CONFIGURE_CMDS CFLAGS="$$(HOST_CFLAGS)" \ LDFLAGS="$$(HOST_LDFLAGS)" \ $$($$(PKG)_CONF_ENV) \ + CONFIG_SITE="no" \ ./configure \ --prefix="$$(HOST_DIR)/usr" \ --sysconfdir="$$(HOST_DIR)/etc" \
On fedora 20 64bits host, the file /usr/share/config.site contains a fix for installing libraries into /lib/lib64 on 64bits systems that redefine libdir in the generated Makefile For safety, disable loading this file when running the configure script for the target and the host. Signed-off-by: Romain Naour <romain.naour@openwide.fr> --- package/pkg-autotools.mk | 2 ++ 1 file changed, 2 insertions(+)