#!/bin/bash
+# PciIds web database
+# Copyright (C) 2008 Michal Vaner (vorner@ucw.cz)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# he Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+#
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
set -e
-cd ~vorner/www/pci-ids2.ucw.cz/
-cp /home/pciids/head.ids pci.ids.new
-./scripts/export.pl | sed -e '/^ffff/r class_head.ids' >> pci.ids.new
-if ! [ -f static/pci.ids ] || ! diff static/pci.ids pci.ids.new >/dev/null ; then
- cp pci.ids.new ~/origs/00-current
- mv pci.ids.new static/pci.ids
- bzip2 -9c <static/pci.ids >static/pci.ids.bz2
- gzip -9c <static/pci.ids >static/pci.ids.gz
-else
- rm pci.ids.new
+mkdir -p tmp
+
+cd perl
+./scripts/export.pl PC > ../tmp/pci.ids.new
+cat cf/class_head.ids >> ../tmp/pci.ids.new
+./scripts/export.pl PD >> ../tmp/pci.ids.new
+cd ..
+
+if ! [ -f docs/pci.ids.nohead ] || ! cmp --silent docs/pci.ids.nohead tmp/pci.ids.new ; then
+ VERSION=`date '+%Y.%m.%d'`
+ DATE=`date '+%F %T'`
+ sed <perl/cf/head.ids >tmp/pci.ids.final -e "s/@VERSION@/$VERSION/;s/@DATE@/$DATE/"
+ cat tmp/pci.ids.new >>tmp/pci.ids.final
+
+ ln -f tmp/pci.ids.final ~/origs/00-current
+ ln -f tmp/pci.ids.final docs/pci.ids
+ ln -f tmp/pci.ids.final docs/v2.2/pci.ids
+ ln -f tmp/pci.ids.new docs/pci.ids.nohead
+ rm tmp/pci.ids.final
+
+ bzip2 -9c <docs/pci.ids >tmp/pci.ids.bz2.new
+ mv tmp/pci.ids.bz2.new docs/pci.ids.bz2
+ ln -f docs/pci.ids.bz2 docs/v2.2/
+
+ gzip -9c <docs/pci.ids >tmp/pci.ids.gz.new
+ mv tmp/pci.ids.gz.new docs/pci.ids.gz
+ ln -f docs/pci.ids.gz docs/v2.2/
+
+ xz -c <docs/pci.ids >tmp/pci.ids.xz.new
+ mv tmp/pci.ids.xz.new docs/pci.ids.xz
+ ln -f docs/pci.ids.xz docs/v2.2/
fi
+
+rm tmp/pci.ids.new