This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: chmod -R u+w .build/src EACH TIME?????


> # hg blame -l scripts/functions
> [--SNIP--]
>  1208:611:     # Some tarballs have read-only files... :-(
>  1258:643:     # Because of nochdir, we don't know where we are, so
chmod all
>  1258:644:     # the src tree
>  1271:645:     CT_DoExecLog DEBUG chmod -R u+w "${CT_SRC_DIR}"
> [--SNIP--]
> 
> If so, here are the reasons:
> - some package do have RO files
> - so we can apply patches, all files shall be RW
> - for the C libraries addons (glibc ports, uClibc locales...), we
>   don't really know where CWD is
> - some package does not extract in a sub-directory of their base name
>   ( eg. cloog-ppl 0.15.3 extracts into cloog-ppl/ )
> 
> So we can't know for sure what sub-dir to chmod. The only systematic
> solution is to chmod the whole source tree... Sad, isn't it?

What about something along the lines of 

# Get the current date but leave minutes hanging
DATE=`date +"%Y%m%d%H %M"`
# prep DATESTR with the YYYYmmddHH
DATESTR=`echo $DATE | awk '{print $1}'`
# Extract the minutes
MM=`echo $DATE | awk '{print $2}'`
# Make it one minute in the past
let MM--
# Append the minutes back to the datestring
DATESTR="${DATESTR}${MM}"
# touch .stamp and all directories in .build/src with that time.
touch -t ${DATESTR} .stamp *


Now, after we extract the next package, we look at the directory to see
what has changed:

# Extract the time stamp of the .stamp file
STAMPTIME=`ls -la .stamp | awk '{print $6" "$7}'`
# Get the listing of all files that are NOT that stamp file
# This _SHOULD_ be any directory that was added/modified.
DIRS2UPDATE=`ls -l | grep -v "$STAMPTIME" | awk '{print $8}'`

Yes, I understand I'm a sick puppy, but hey, if it would keep from
having to
re-chmod the WHOLE directory EVERY time, it would be a good thing.

You don't have to add it if you think I'm smokin' something.  It is just
a suggestion -- and I know how to make a patch file for my personal use
;).


Andy

--
For unsubscribe information see http://sourceware.org/lists.html#faq


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]