While converting my cvs repositories to git I needed to copy all the changed files from my working directory into a temp directory and then into my git working dir. This was the solution that I came up with:
cvs -qn update -d 2>/dev/null | grep '^[M|\?|P] ' | awk '{print $2}' > files.list
while read file; do cp -r -f --parents "$file" /tmp/dest/; done < files.list
Basically, cvs -qn update -d does a mock update (doesn’t change files), piped to grep to only list the changed files, use awk to exclude the M, P, ? etc, output to a file.
Loop over the lines in the new file using the cp –parents to preserve directory structure
When trying to build an rpm for apr-utils on my CentOS 6.2 box I got a nasty error when the rpm was running test:
testmemcache : |/bin/sh: line 2: 14322 Segmentation fault LD_LIBRARY_PATH=”`echo “../crypto/.libs:../dbm/.lib s:../dbd/.libs:../ldap/.libs:$LD_LIBRARY_PATH” | sed -e ‘s/::*$//’`” ./$prog
Programs failed: testall
make: *** [check] Error 139
+ exit 1
error: Bad exit status from /var/tmp/rpm-tmp.OQddG8 (%check)
This relates to this bug: https://issues.apache.org/bugzilla/show_bug.cgi?id=52705
Thanks to Peter Poeml for releasing a patch for this, which I’ve put into an updated apr-util.spec
I have been building a lot of custom RPMs lately and I found this great resource which lists all of the macros that can be used in the spec files and what they equate to.
http://www.zarb.org/~jasonc/macros.php
I recently changed to using the unix command line for cvs and changed all my cvs roots to :ext: instead of :ssh: (tortoise prefers ssh).
When I made the change, anytime I updated cvs I got this error:
/CVSROOTccess /cvsroot
No such file or directory
This makes no sense. Luckily, after searching around I found this is a problem with DOS line breaks screwing with unix cvs. Running the following fixes the problem:
dos2unix `find . -name Root`
dos2unix `find . -name Entries`
dos2unix `find . -name Repository`
It’s interesting that not only does netsol not list any information what-so-ever on their knowledge base about DNSSEC, their support staff have no idea what it is either.
Come on network solutions, sort it out otherwise I may have to move my domains to a registrar that does support DNSSEC.