public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [obvious patch] add missing chmod to when copying headers
@ 2010-03-11 20:31 Chris Demetriou
  2010-03-11 21:55 ` Basile Starynkevitch
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Chris Demetriou @ 2010-03-11 20:31 UTC (permalink / raw)
  To: gcc-patches

[-- Attachment #1: Type: text/plain, Size: 672 bytes --]

odd corner case when making/installing: if sources were checked out
with umask that denies group or other read (e.g. 077 or 027), most of
the installed gcc includes would come out group/other-readable but a
few wouldn't.
problem: missing chmods after copying the headers, in stmp-int-headers.
Since all of the rest of the headers are chmodded after copy, the
solution is obvious.


bootstrapped, verified permissions manually, committed as obvious.


chris
---
[gcc/ChangeLog]
2010-03-11  Chris Demetriou  <cgd@google.com>

        * Makefile.in (stmp-int-hdrs): Make include/unwind.h,
        include/stdint-gcc.h, and include/stdint.h world-readable.

[-- Attachment #2: chmod.patch --]
[-- Type: text/x-diff, Size: 1027 bytes --]

[gcc/ChangeLog]
2010-03-11  Chris Demetriou  <cgd@google.com>

	* Makefile.in (stmp-int-hdrs): Make include/unwind.h,
	include/stdint-gcc.h, and include/stdint.h world-readable.

Index: gcc/Makefile.in
===================================================================
--- gcc/Makefile.in	(revision 157391)
+++ gcc/Makefile.in	(working copy)
@@ -3835,14 +3835,17 @@
 	done
 	rm -f include/unwind.h
 	cp $(UNWIND_H) include/unwind.h
+	chmod a+r include/unwind.h
 	rm -f include/stdint.h
 	if [ $(USE_GCC_STDINT) = wrap ]; then \
 	  rm -f include/stdint-gcc.h; \
 	  cp $(srcdir)/ginclude/stdint-gcc.h include/stdint-gcc.h; \
+	  chmod a+r include/stdint-gcc.h; \
 	  cp $(srcdir)/ginclude/stdint-wrap.h include/stdint.h; \
 	elif [ $(USE_GCC_STDINT) = provide ]; then \
 	  cp $(srcdir)/ginclude/stdint-gcc.h include/stdint.h; \
 	fi
+	chmod a+r include/stdint.h
 	set -e; for ml in `cat fixinc_list`; do \
 	  sysroot_headers_suffix=`echo $${ml} | sed -e 's/;.*$$//'`; \
 	  multi_dir=`echo $${ml} | sed -e 's/^[^;]*;//'`; \

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [obvious patch] add missing chmod to when copying headers
  2010-03-11 20:31 [obvious patch] add missing chmod to when copying headers Chris Demetriou
@ 2010-03-11 21:55 ` Basile Starynkevitch
       [not found]   ` <2e7be40c1003111408g5d8cba66r9605cf12a79bb22c@mail.gmail.com>
  2010-03-12 10:44 ` Paolo Bonzini
  2010-03-15  7:49 ` Eric Botcazou
  2 siblings, 1 reply; 10+ messages in thread
From: Basile Starynkevitch @ 2010-03-11 21:55 UTC (permalink / raw)
  To: Chris Demetriou; +Cc: gcc-patches

Chris Demetriou wrote:
> odd corner case when making/installing: if sources were checked out
> with umask that denies group or other read (e.g. 077 or 027), most of
> the installed gcc includes would come out group/other-readable but a
> few wouldn't.


Perhaps the same should be done for PLUGIN_HEADERS (if not done yet).

Cheers

-- 
Basile STARYNKEVITCH         http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mines, sont seulement les miennes} ***

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [obvious patch] add missing chmod to when copying headers
       [not found]   ` <2e7be40c1003111408g5d8cba66r9605cf12a79bb22c@mail.gmail.com>
@ 2010-03-11 22:14     ` Chris Demetriou
  0 siblings, 0 replies; 10+ messages in thread
From: Chris Demetriou @ 2010-03-11 22:14 UTC (permalink / raw)
  To: Basile Starynkevitch; +Cc: gcc-patches

On Thu, Mar 11, 2010 at 13:28, Basile Starynkevitch
<basile@starynkevitch.net> wrote:
>
> Chris Demetriou wrote:
>>
>> odd corner case when making/installing: if sources were checked out
>> with umask that denies group or other read (e.g. 077 or 027), most of
>> the installed gcc includes would come out group/other-readable but a
>> few wouldn't.
>
> Perhaps the same should be done for PLUGIN_HEADERS (if not done yet).

AFAICT they are installed using $(install_data), so get reasonable perms, e.g.:

/usr/bin/install -c -m 644 ../../trunk/gcc/coretypes.h
/g/users/cgd/proj/gcc-trunk/bld/../inst/lib/gcc/x86_64-linux/4.5.0/plugin/include/coretypes.h


FYI, IIRC there are a few files that get built/installed with the
umask of the person doing the build.  This is probably is a bug in the
build/install process (IMO at least), but is easily fixable by using a
'good' umask when building.  (the files whose permissions I fixed,
OTOH, came from umask at *checkout* time... somewhat confusing, and
the way the makefile installed the rest of the related headers was
obviously different so IMO there was an obvious fix to make.  I've not
looked into other issues, my *build* scripts set a good umask.  8-)



chris

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [obvious patch] add missing chmod to when copying headers
  2010-03-11 20:31 [obvious patch] add missing chmod to when copying headers Chris Demetriou
  2010-03-11 21:55 ` Basile Starynkevitch
@ 2010-03-12 10:44 ` Paolo Bonzini
  2010-03-12 19:52   ` Chris Demetriou
  2010-03-15  7:49 ` Eric Botcazou
  2 siblings, 1 reply; 10+ messages in thread
From: Paolo Bonzini @ 2010-03-12 10:44 UTC (permalink / raw)
  To: Chris Demetriou; +Cc: gcc-patches

On 03/11/2010 09:31 PM, Chris Demetriou wrote:
> odd corner case when making/installing: if sources were checked out
> with umask that denies group or other read (e.g. 077 or 027), most of
> the installed gcc includes would come out group/other-readable but a
> few wouldn't.
> problem: missing chmods after copying the headers, in stmp-int-headers.
> Since all of the rest of the headers are chmodded after copy, the
> solution is obvious.
>
>
> bootstrapped, verified permissions manually, committed as obvious.

... but why didn't you use $(INSTALL_DATA)? :-)

Paolo

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [obvious patch] add missing chmod to when copying headers
  2010-03-12 10:44 ` Paolo Bonzini
@ 2010-03-12 19:52   ` Chris Demetriou
  2010-03-12 20:26     ` Paolo Bonzini
  0 siblings, 1 reply; 10+ messages in thread
From: Chris Demetriou @ 2010-03-12 19:52 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: gcc-patches

On Fri, Mar 12, 2010 at 02:23, Paolo Bonzini <bonzini@gnu.org> wrote:
>> bootstrapped, verified permissions manually, committed as obvious.
>
> ... but why didn't you use $(INSTALL_DATA)? :-)

*chuckle*  there are actually reasons, believe it or not!  Just
because it's obvious doesn't mean I didn't think about it.  8-)

(a) because the rest of the code here doesn't, and

(b) this *isn't* actually *installing* anything!  it's populating an
include directory internal to the build process.  The actual header
installation happens thanks to the install-headers-* targets AFAICT
(which don't use INSTALL_DATA either 8-).  It's not obvious to me
(esp. in light of the way the rest of the code works) that
INSTALL_DATA is appropriate here.


Changing install-headers-* may be appropriate... but it seems obvious
that a bunch of work was put into its current implementation as-is
(three separate implementations!).  At *minimum* that would be
non-obvious, whereas making all the headers copied in stmp-int-hdrs be
chmodded consistently *is* obvious.  8-)



chris

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [obvious patch] add missing chmod to when copying headers
  2010-03-12 19:52   ` Chris Demetriou
@ 2010-03-12 20:26     ` Paolo Bonzini
  0 siblings, 0 replies; 10+ messages in thread
From: Paolo Bonzini @ 2010-03-12 20:26 UTC (permalink / raw)
  To: Chris Demetriou; +Cc: gcc-patches

On Fri, Mar 12, 2010 at 19:51, Chris Demetriou <cgd@google.com> wrote:
> On Fri, Mar 12, 2010 at 02:23, Paolo Bonzini <bonzini@gnu.org> wrote:
>>> bootstrapped, verified permissions manually, committed as obvious.
>>
>> ... but why didn't you use $(INSTALL_DATA)? :-)
>
> *chuckle*  there are actually reasons, believe it or not!  Just
> because it's obvious doesn't mean I didn't think about it

Thanks for answering.

Paolo

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [obvious patch] add missing chmod to when copying headers
  2010-03-11 20:31 [obvious patch] add missing chmod to when copying headers Chris Demetriou
  2010-03-11 21:55 ` Basile Starynkevitch
  2010-03-12 10:44 ` Paolo Bonzini
@ 2010-03-15  7:49 ` Eric Botcazou
  2010-03-15  8:06   ` Chris Demetriou
  2 siblings, 1 reply; 10+ messages in thread
From: Eric Botcazou @ 2010-03-15  7:49 UTC (permalink / raw)
  To: Chris Demetriou; +Cc: gcc-patches

> 2010-03-11  Chris Demetriou  <cgd@google.com>
>
>         * Makefile.in (stmp-int-hdrs): Make include/unwind.h,
>         include/stdint-gcc.h, and include/stdint.h world-readable.

This breaks platforms without include/stdint.h though:
  http://gcc.gnu.org/ml/gcc/2009-07/msg00625.html

if [ none = wrap ]; then \
           rm -f include/stdint-gcc.h; \
           cp ../../gcc-head-src/gcc/ginclude/stdint-gcc.h 
include/stdint-gcc.h;
\
           chmod a+r include/stdint-gcc.h; \
           cp ../../gcc-head-src/gcc/ginclude/stdint-wrap.h 
include/stdint.h; \
         elif [ none = provide ]; then \
           cp ../../gcc-head-src/gcc/ginclude/stdint-gcc.h 
include/stdint.h; \
         fi
chmod a+r include/stdint.h
chmod: cannot access `include/stdint.h': No such file or directory
make[2]: *** [stmp-int-hdrs] Error 1

-- 
Eric Botcazou

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [obvious patch] add missing chmod to when copying headers
  2010-03-15  7:49 ` Eric Botcazou
@ 2010-03-15  8:06   ` Chris Demetriou
  2010-03-15  8:57     ` Chris Demetriou
  0 siblings, 1 reply; 10+ messages in thread
From: Chris Demetriou @ 2010-03-15  8:06 UTC (permalink / raw)
  To: Eric Botcazou; +Cc: gcc-patches

On Mon, Mar 15, 2010 at 00:45, Eric Botcazou <ebotcazou@adacore.com> wrote:
> This breaks platforms without include/stdint.h though:
>  http://gcc.gnu.org/ml/gcc/2009-07/msg00625.html

Ah, crud.  I misread the 'if / 'elif' as 'if' / else'.

I'll check in a fix shortly.

Sorry about that.


chris

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [obvious patch] add missing chmod to when copying headers
  2010-03-15  8:06   ` Chris Demetriou
@ 2010-03-15  8:57     ` Chris Demetriou
  2010-03-15  9:09       ` Eric Botcazou
  0 siblings, 1 reply; 10+ messages in thread
From: Chris Demetriou @ 2010-03-15  8:57 UTC (permalink / raw)
  To: Eric Botcazou; +Cc: gcc-patches

On Mon, Mar 15, 2010 at 00:49, Chris Demetriou <cgd@google.com> wrote:
> On Mon, Mar 15, 2010 at 00:45, Eric Botcazou <ebotcazou@adacore.com> wrote:
>> This breaks platforms without include/stdint.h though:
>>  http://gcc.gnu.org/ml/gcc/2009-07/msg00625.html
>
> Ah, crud.  I misread the 'if / 'elif' as 'if' / else'.
>
> I'll check in a fix shortly.

Fix committed as revision 157454.
(http://gcc.gnu.org/ml/gcc-patches/2010-03/msg00565.html)


thanks,

chris

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [obvious patch] add missing chmod to when copying headers
  2010-03-15  8:57     ` Chris Demetriou
@ 2010-03-15  9:09       ` Eric Botcazou
  0 siblings, 0 replies; 10+ messages in thread
From: Eric Botcazou @ 2010-03-15  9:09 UTC (permalink / raw)
  To: Chris Demetriou; +Cc: gcc-patches

> Fix committed as revision 157454.
> (http://gcc.gnu.org/ml/gcc-patches/2010-03/msg00565.html)

Thanks a lot for the quick turn around!

-- 
Eric Botcazou

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2010-03-15  8:59 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-03-11 20:31 [obvious patch] add missing chmod to when copying headers Chris Demetriou
2010-03-11 21:55 ` Basile Starynkevitch
     [not found]   ` <2e7be40c1003111408g5d8cba66r9605cf12a79bb22c@mail.gmail.com>
2010-03-11 22:14     ` Chris Demetriou
2010-03-12 10:44 ` Paolo Bonzini
2010-03-12 19:52   ` Chris Demetriou
2010-03-12 20:26     ` Paolo Bonzini
2010-03-15  7:49 ` Eric Botcazou
2010-03-15  8:06   ` Chris Demetriou
2010-03-15  8:57     ` Chris Demetriou
2010-03-15  9:09       ` Eric Botcazou

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).