2010-04-05 20:58:57 +02:00
|
|
|
RPMS_DIR=rpm/
|
2011-04-04 10:55:25 +02:00
|
|
|
|
2013-03-12 16:50:14 +01:00
|
|
|
VERSION := $(shell cat version)
|
2011-04-04 10:55:25 +02:00
|
|
|
|
2013-02-28 14:43:32 +01:00
|
|
|
DIST_DOM0 ?= fc18
|
2013-01-25 03:07:16 +01:00
|
|
|
|
2013-07-22 04:18:19 +02:00
|
|
|
OS ?= Linux
|
|
|
|
|
2013-07-30 10:44:20 +02:00
|
|
|
ifeq ($(OS),Linux)
|
|
|
|
DATADIR ?= /var/lib/qubes
|
|
|
|
STATEDIR ?= /var/run/qubes
|
|
|
|
LOGDIR ?= /var/log/qubes
|
2013-08-02 20:27:33 +02:00
|
|
|
FILESDIR ?= /usr/share/qubes
|
2013-07-30 10:44:20 +02:00
|
|
|
else ifeq ($(OS),Windows_NT)
|
|
|
|
DATADIR ?= c:/qubes
|
|
|
|
STATEDIR ?= c:/qubes/state
|
|
|
|
LOGDIR ?= c:/qubes/log
|
2013-08-02 20:27:33 +02:00
|
|
|
FILESDIR ?= c:/program files/Invisible Things Lab/Qubes
|
2013-07-30 10:44:20 +02:00
|
|
|
endif
|
|
|
|
|
2010-04-05 20:58:57 +02:00
|
|
|
help:
|
2011-04-04 10:55:25 +02:00
|
|
|
@echo "make rpms -- generate binary rpm packages"
|
2012-11-14 01:41:21 +01:00
|
|
|
@echo "make rpms-dom0 -- generate binary rpm packages for Dom0"
|
2011-04-04 10:55:25 +02:00
|
|
|
@echo "make update-repo-current -- copy newly generated rpms to qubes yum repo"
|
2011-05-09 18:40:51 +02:00
|
|
|
@echo "make update-repo-current-testing -- same, but to -current-testing repo"
|
2011-04-04 10:55:25 +02:00
|
|
|
@echo "make update-repo-unstable -- same, but to -testing repo"
|
2011-04-06 15:35:30 +02:00
|
|
|
@echo "make update-repo-installer -- copy dom0 rpms to installer repo"
|
2011-04-04 10:55:25 +02:00
|
|
|
@echo "make clean -- cleanup"
|
2010-04-05 20:58:57 +02:00
|
|
|
|
2013-03-07 04:12:37 +01:00
|
|
|
rpms: rpms-dom0
|
2012-11-07 17:58:08 +01:00
|
|
|
|
2013-03-07 04:12:37 +01:00
|
|
|
rpms-vm:
|
|
|
|
@true
|
2012-11-14 13:12:51 +01:00
|
|
|
|
2013-03-16 19:54:22 +01:00
|
|
|
rpms-dom0:
|
2012-11-07 17:58:08 +01:00
|
|
|
rpmbuild --define "_rpmdir $(RPMS_DIR)" -bb rpm_spec/core-dom0.spec
|
2013-03-12 16:55:05 +01:00
|
|
|
rpmbuild --define "_rpmdir $(RPMS_DIR)" -bb rpm_spec/core-dom0-doc.spec
|
2012-11-07 17:58:08 +01:00
|
|
|
rpm --addsign \
|
2013-03-12 16:55:05 +01:00
|
|
|
$(RPMS_DIR)/x86_64/qubes-core-dom0-$(VERSION)*.rpm \
|
|
|
|
$(RPMS_DIR)/noarch/qubes-core-dom0-doc-$(VERSION)*rpm
|
2012-11-07 17:58:08 +01:00
|
|
|
|
2010-04-05 20:58:57 +02:00
|
|
|
clean:
|
2013-03-20 15:33:19 +01:00
|
|
|
make -C dispvm clean
|
|
|
|
make -C qmemman clean
|
2013-06-15 23:14:54 +02:00
|
|
|
|
|
|
|
all:
|
|
|
|
make all -C core
|
|
|
|
make all -C core-modules
|
2013-07-22 04:18:19 +02:00
|
|
|
make all -C tests
|
|
|
|
# Currently supported only on xen
|
|
|
|
ifeq ($(BACKEND_VMM),xen)
|
2013-06-15 23:14:54 +02:00
|
|
|
make all -C qmemman
|
|
|
|
make all -C dispvm
|
2013-07-22 04:18:19 +02:00
|
|
|
endif
|
2013-06-15 23:14:54 +02:00
|
|
|
|
|
|
|
install:
|
2013-07-22 04:18:19 +02:00
|
|
|
ifeq ($(OS),Linux)
|
2013-06-15 23:14:54 +02:00
|
|
|
$(MAKE) install -C linux/systemd
|
|
|
|
$(MAKE) install -C linux/aux-tools
|
|
|
|
$(MAKE) install -C linux/system-config
|
2013-07-22 04:18:19 +02:00
|
|
|
endif
|
2013-06-15 23:14:54 +02:00
|
|
|
$(MAKE) install -C qvm-tools
|
|
|
|
$(MAKE) install -C core
|
|
|
|
$(MAKE) install -C core-modules
|
2013-07-22 04:18:19 +02:00
|
|
|
$(MAKE) install -C tests
|
|
|
|
ifeq ($(BACKEND_VMM),xen)
|
|
|
|
# Currently supported only on xen
|
2013-06-15 23:14:54 +02:00
|
|
|
$(MAKE) install -C qmemman
|
|
|
|
$(MAKE) install -C dispvm
|
2013-07-22 04:18:19 +02:00
|
|
|
endif
|
2013-06-15 23:14:54 +02:00
|
|
|
mkdir -p $(DESTDIR)/etc/qubes-rpc/policy
|
2013-07-22 04:13:12 +02:00
|
|
|
mkdir -p $(DESTDIR)/usr/libexec/qubes
|
2013-06-15 23:14:54 +02:00
|
|
|
cp qubes-rpc-policy/qubes.Filecopy.policy $(DESTDIR)/etc/qubes-rpc/policy/qubes.Filecopy
|
|
|
|
cp qubes-rpc-policy/qubes.OpenInVM.policy $(DESTDIR)/etc/qubes-rpc/policy/qubes.OpenInVM
|
|
|
|
cp qubes-rpc-policy/qubes.VMShell.policy $(DESTDIR)/etc/qubes-rpc/policy/qubes.VMShell
|
|
|
|
cp qubes-rpc-policy/qubes.NotifyUpdates.policy $(DESTDIR)/etc/qubes-rpc/policy/qubes.NotifyUpdates
|
|
|
|
cp qubes-rpc-policy/qubes.NotifyTools.policy $(DESTDIR)/etc/qubes-rpc/policy/qubes.NotifyTools
|
|
|
|
cp qubes-rpc-policy/qubes.GetImageRGBA.policy $(DESTDIR)/etc/qubes-rpc/policy/qubes.GetImageRGBA
|
|
|
|
cp qubes-rpc/qubes.NotifyUpdates $(DESTDIR)/etc/qubes-rpc/
|
|
|
|
cp qubes-rpc/qubes.NotifyTools $(DESTDIR)/etc/qubes-rpc/
|
2013-07-22 04:13:12 +02:00
|
|
|
cp qubes-rpc/qubes-notify-updates $(DESTDIR)/usr/libexec/qubes/
|
|
|
|
cp qubes-rpc/qubes-notify-tools $(DESTDIR)/usr/libexec/qubes/
|
2013-08-02 20:27:33 +02:00
|
|
|
mkdir -p "$(DESTDIR)$(FILESDIR)"
|
|
|
|
cp vm-config/$(BACKEND_VMM)-vm-template.xml "$(DESTDIR)$(FILESDIR)/vm-template.xml"
|
|
|
|
cp vm-config/$(BACKEND_VMM)-vm-template-hvm.xml "$(DESTDIR)$(FILESDIR)/vm-template-hvm.xml"
|
2013-07-30 10:44:20 +02:00
|
|
|
mkdir -p $(DESTDIR)$(DATADIR)
|
|
|
|
mkdir -p $(DESTDIR)$(DATADIR)/vm-templates
|
|
|
|
mkdir -p $(DESTDIR)$(DATADIR)/appvms
|
|
|
|
mkdir -p $(DESTDIR)$(DATADIR)/servicevms
|
|
|
|
mkdir -p $(DESTDIR)$(DATADIR)/vm-kernels
|
|
|
|
mkdir -p $(DESTDIR)$(DATADIR)/backup
|
|
|
|
mkdir -p $(DESTDIR)$(DATADIR)/dvmdata
|
|
|
|
mkdir -p $(DESTDIR)$(STATEDIR)
|
|
|
|
mkdir -p $(DESTDIR)$(LOGDIR)
|
2013-06-15 23:14:54 +02:00
|
|
|
|
2013-09-26 22:28:37 +02:00
|
|
|
msi:
|
|
|
|
rm -rf destinstdir
|
|
|
|
mkdir -p destinstdir
|
|
|
|
$(MAKE) install \
|
|
|
|
DESTDIR=$(PWD)/destinstdir \
|
|
|
|
PYTHON_SITEPATH=/site-packages \
|
|
|
|
FILESDIR=/pfiles \
|
|
|
|
BINDIR=/bin \
|
|
|
|
DATADIR=/qubes \
|
|
|
|
STATEDIR=/qubes/state \
|
|
|
|
LOGDIR=/qubes/log
|
|
|
|
# icons placeholder
|
|
|
|
mkdir -p destinstdir/icons
|
|
|
|
for i in blue gray green yellow orange black purple red; do touch destinstdir/icons/$$i.png; done
|
|
|
|
candle -arch x64 -dversion=$(VERSION) installer.wxs
|
|
|
|
light -b destinstdir -o core-admin.msm installer.wixobj
|
|
|
|
rm -rf destinstdir
|
|
|
|
|