qubes-installer-qubes-os/Makefile
Joanna Rutkowska 0589e35f48 Repo cleanup
1) Use /tmp/qubes-installer-workdir instead of the ugly /Devel/Qubes
2) Use local fedora repo instead of the remote one
3) Still keep the remote fedora repo for extra packages (with higher cost though)
4) Use local repo keys!!!
5) Use nice update_repo.sh script

All in all now use 5 repos during installation:
* build/yum/installer (installer-related rpms)
* build/yum/qubes-dom0 (all the Qubes stuff)
* build/yum/dom0-updates (for select 3rd party packages, e.g. Xorg)
* build/fedora13-repo (local fedora 13 repo, copy from DVD, we don't
  keep it uder build/yum, because we don't want our update script
  to process it every time)
* remote fedora repo for extra packages (usually deps for qubes-dom0)
2011-04-01 19:00:05 +02:00

93 lines
3.9 KiB
Makefile

#
# The Qubes OS Project, http://www.qubes-os.org
#
# Copyright (C) 2011 Tomasz Sterna <tomek@xiaoka.com>
#
# 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 the 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 Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
#
TOP := $(shell pwd)
RPMBUILD_DEFINES := --define "_rpmdir rpm/" --define "_sourcedir $(TOP)/rpm/SOURCES"
spec_version = $(shell sed -n '/^Version:/s/.*:[ \t]\+//p' $(1))
package = $(shell \
cd rpm/SOURCES; \
rm -f $(1)-$(2)*; \
ln -s ../../$(1) $(1)-$(2); \
tar jcf $(1)-$(2).tar.bz2 --dereference --exclude-vcs $(1)-$(2); \
rm $(1)-$(2) )
ANACONDA_VERSION := $(call spec_version,anaconda/anaconda.spec)
FIRSTBOOT_VERSION := $(call spec_version,firstboot/firstboot.spec)
QBSLOGOS_VERSION := $(call spec_version,qubes-logos/qubes-logos.spec)
QBSRELEASE_VERSION := $(call spec_version,qubes-release/qubes-release.spec)
REVISOR_VERSION := $(call spec_version,revisor/revisor.spec)
help:
@echo "make rpms <--- make all rpms and sign them";\
echo "make rpms_anaconda <--- create binary rpms for Anaconda"; \
echo "make rpms_firstboot <--- create binary rpms for Firstboot"; \
echo "make rpms_logos <--- create binary rpms for Qubes Logos package"; \
echo "make rpms_release <--- create binary rpms for Qubes Release package"; \
echo "make rpms_revisor <--- create binary rpms for Revisor"; \
echo; \
echo "make update-repo <-- copy newly generated rpms to installer yum repo";\
exit 0;
.PHONY: rpms rpms_anaconda rpms_firstboot rpms_logos rpms_release rpms_revisor \
update-repo update-repo-testing clean
rpms: rpms_anaconda rpms_firstboot rpms_logos rpms_release rpms_revisor
rpm --addsign `ls -d rpm/x86_64/*.rpm rpm/i686/*.rpm rpm/noarch/*.rpm 2>/dev/null`
rpm/SOURCES/anaconda-$(ANACONDA_VERSION).tar.bz2: anaconda anaconda/anaconda.spec
$(call package,anaconda,$(ANACONDA_VERSION))
rpm/SOURCES/firstboot-$(FIRSTBOOT_VERSION).tar.bz2: firstboot firstboot/firstboot.spec
$(call package,firstboot,$(FIRSTBOOT_VERSION))
rpm/SOURCES/qubes-logos-$(QBSLOGOS_VERSION).tar.bz2: qubes-logos qubes-logos/qubes-logos.spec
$(call package,qubes-logos,$(QBSLOGOS_VERSION))
rpm/SOURCES/qubes-release-$(QBSRELEASE_VERSION).tar.bz2: qubes-release qubes-release/qubes-release.spec
$(call package,qubes-release,$(QBSRELEASE_VERSION))
rpms_anaconda: rpm/SOURCES/anaconda-$(ANACONDA_VERSION).tar.bz2
rpmbuild $(RPMBUILD_DEFINES) -bb anaconda/anaconda.spec
rpms_firstboot: rpm/SOURCES/firstboot-$(FIRSTBOOT_VERSION).tar.bz2
rpmbuild $(RPMBUILD_DEFINES) -bb firstboot/firstboot.spec
rpms_logos: rpm/SOURCES/qubes-logos-$(QBSLOGOS_VERSION).tar.bz2
rpmbuild $(RPMBUILD_DEFINES) -bb qubes-logos/qubes-logos.spec
rpms_release: rpm/SOURCES/qubes-release-$(QBSRELEASE_VERSION).tar.bz2
rpmbuild $(RPMBUILD_DEFINES) -bb qubes-release/qubes-release.spec
rpms_revisor: revisor/revisor-$(REVISOR_VERSION).tar.gz revisor/revisor.spec
rpmbuild --define "_rpmdir rpm/" --define "_sourcedir $(TOP)/revisor" -bb revisor/revisor.spec
RPMS = rpm/noarch/qubes-logos-$(QBSLOGOS_VERSION)-*.rpm \
rpm/noarch/qubes-release-$(QBSRELEASE_VERSION)-*.rpm \
rpm/noarch/revisor*-$(REVISOR_VERSION)-*.rpm \
rpm/x86_64/anaconda-$(ANACONDA_VERSION)-*.rpm \
rpm/x86_64/firstboot-$(FIRSTBOOT_VERSION)-*.rpm
update-repo:
ln -f $(RPMS) build/yum/installer/rpm/
build/yum/installer/update_repo.sh