4 * This generator expect only log from autobuilder in simple format:
5 * TIME_OF_BUILD BUILD_TARGET BUILD_MODE MACHINE
7 * where TIME_OF_BUILD is epoch
9 * All what it does is parsing log and output it in reverse order (new builds
10 * first) in RSS 2.0 format.
12 * (C) 2007 Marcin Juszkiewicz
18 $build_link_base = 'http://www.angstrom-distribution.org/unstable/autobuild/';
20 $builder_log_date = file('autobuilder.log');
22 if(empty($builder_log_date))
25 $builder_log_date = array_reverse($builder_log_date);
27 $rss_xml = new xmlWriter();
30 die("Unable to create XML Writer\n");
32 $rss_xml->openMemory();
34 $rss_xml->startDocument('1.0','utf-8');
35 $rss_xml->startElement('rss');
36 $rss_xml->writeAttribute('version', '2.0');
38 $rss_xml->startElement('channel');
40 $rss_xml->writeElement('title', 'Ångström autobuilder updates');
41 $rss_xml->writeElement('link', $build_link_base);
42 $rss_xml->writeElement('description', 'Ångström autobuilder updates list');
44 foreach($builder_log_date as $build)
46 $build = str_replace("\n", "", $build);
47 $data = explode(' ', $build);
49 $rss_xml->startElement('item');
50 $rss_xml->writeElement('title', "{$data[1]} ({$data[2]}) built for {$data[3]} (" . date('c', $data[0]) . ")");
51 $rss_xml->writeElement('link', "{$build_link_base}{$data[3]}/");
52 $rss_xml->writeElement('pubDate', date('r', $data[0]));
54 $rss_xml->endElement();
57 $rss_xml->endElement();
58 $rss_xml->endElement();
60 echo $rss_xml->outputMemory(true);