38 set_include_path(get_include_path() . PATH_SEPARATOR . $path);
40 require_once(
"FIXMETOBERELATIVE/pathinclude.php");
42 require_once(
"$WEBDIR/common/common-cli.php");
44 $usage =
"get-fsrc [-h] -s <skip-path> -o <output-path>\n";
63 $options = getopt(
"ho:s:");
70 if (array_key_exists(
"h",$options))
75 if (array_key_exists(
"o",$options))
77 $fedora = $options[
'o'];
84 if (array_key_exists(
"s",$options))
86 $spath = $options[
's'];
89 $spath =
'/tmp/skipped.fedora9.pkgs';
90 print
"NOTE: setting the path for skipped file to /tmp/skipped.fedora9.pkgs\n";
95 $spath .=
'/skipped.fedora9.pkgs';
100 chdir($fedora) or die(
"Can't chdir to $fedora, $php_errormsg\n");
103 echo
"Starting at: $date\n";
106 $checked_out = cvs_co($fedora);
107 if(!empty($checked_out))
113 $devel =
"$fedora" .
'/devel';
114 chdir($devel) or die(
"Can't chdir to $fedora, $php_errormsg\n");
118 $last = exec(
'ls', $list, $rtn);
121 print
"Error, cannot get list of packages with ls\n";
126 foreach($list as $pkg){
133 if(!(chdir(
"$pkg"))){
134 echo
"ERROR: Can't chdir to $pkg, skipping: $php_errormsg\n";
139 if (preg_match(
'/dead.package/', $plist)){
140 echo
"$pkg is a dead.package, skipping\n";
141 $saved = save_skipped($spath,
"$pkg is a dead package\n");
146 chdir(
'..') or die("Can't chdir to .., $php_errormsg\n");
149 chdir('..') or die("Can't chdir to .., $php_errormsg\n");
151 elseif (!(preg_match('/.spec/', $plist)))
153 echo
"$pkg has no spec file, skipping\n";
154 $saved = save_skipped($spath,
"$pkg has no spec file\n");
159 chdir(
'..') or die("Can't chdir to .., $php_errormsg\n");
162 chdir('..') or die("Can't chdir to .., $php_errormsg\n");
169 echo
"Making $pkg\n";
170 $mpcmd =
"alias rm='rm -f'; make prep > make-prep.out 2>&1";
171 $last = exec(
"$mpcmd", $mpout, $rtn);
173 print
"ERROR: make prep for $pkg did not exit zero: return was: $rtn\n\n";
174 $saved = save_skipped($spath,
"$pkg failed make prep, return code was: $rtn\n");
182 chdir(
'..') or die("Can't chdir to .., $php_errormsg\n");
189 print "Ending at: $date";
201 function cvs_co($fedora){
204 $cmd =
'export CVSROOT=:pserver:anonymous@cvs.fedoraproject.org:/cvs/pkgs; '
205 .
'cvs co -r HEAD devel';
207 chdir($fedora) or die(
"Can't chdir to $fedora, $php_errormsg\n");
208 $last = exec(
"$cmd", $cvs_co_out, $retval);
210 return(
"ERROR: cvs co did not return zero status: $retval\n");
215 function save_skipped ($path, $message)
218 require_once(
"$WEBDIR/common/common-cli.php");
cli_logger($handle, $message, $mode='a')
Write/append a message to the log handle passed in.
if(! $Test && $OptionQ) if($stdin_flag) if($Verbose) else