]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blob - lfs/qemu
Merge remote-tracking branch 'origin/master' into next
[people/pmueller/ipfire-2.x.git] / lfs / qemu
1 ###############################################################################
2 # #
3 # IPFire.org - A linux based firewall #
4 # Copyright (C) 2007-2022 IPFire Team <info@ipfire.org> #
5 # #
6 # This program is free software: you can redistribute it and/or modify #
7 # it under the terms of the GNU General Public License as published by #
8 # the Free Software Foundation, either version 3 of the License, or #
9 # (at your option) any later version. #
10 # #
11 # This program is distributed in the hope that it will be useful, #
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of #
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
14 # GNU General Public License for more details. #
15 # #
16 # You should have received a copy of the GNU General Public License #
17 # along with this program. If not, see <http://www.gnu.org/licenses/>. #
18 # #
19 ###############################################################################
20
21 ###############################################################################
22 # Definitions
23 ###############################################################################
24
25 include Config
26
27 # If you update the version also qemu-ga !!!
28 VER = 6.1.0
29
30 THISAPP = qemu-$(VER)
31 DL_FILE = $(THISAPP).tar.xz
32 DL_FROM = $(URL_IPFIRE)
33 DIR_APP = $(DIR_SRC)/$(THISAPP)
34 TARGET = $(DIR_INFO)/$(THISAPP)
35 PROG = qemu
36 PAK_VER = 32
37
38 DEPS = libusbredir spice libseccomp
39
40 TARGETS = \
41 i386-linux-user \
42 x86_64-linux-user \
43 arm-linux-user \
44 aarch64-linux-user \
45 riscv64-linux-user \
46 i386-softmmu \
47 x86_64-softmmu \
48 arm-softmmu \
49 aarch64-softmmu \
50 riscv64-softmmu
51
52 ###############################################################################
53 # Top-level Rules
54 ###############################################################################
55
56 objects = $(DL_FILE)
57
58 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
59
60 $(DL_FILE)_MD5 = 47f776c276a24f42108ba512a2aa3013
61
62 install : $(TARGET)
63
64 check : $(patsubst %,$(DIR_CHK)/%,$(objects))
65
66 download :$(patsubst %,$(DIR_DL)/%,$(objects))
67
68 md5 : $(subst %,%_MD5,$(objects))
69
70 dist:
71 @$(PAK)
72
73 ###############################################################################
74 # Downloading, checking, md5sum
75 ###############################################################################
76
77 $(patsubst %,$(DIR_CHK)/%,$(objects)) :
78 @$(CHECK)
79
80 $(patsubst %,$(DIR_DL)/%,$(objects)) :
81 @$(LOAD)
82
83 $(subst %,%_MD5,$(objects)) :
84 @$(MD5)
85
86 ###############################################################################
87 # Installation Details
88 ###############################################################################
89
90 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
91 @$(PREBUILD)
92 @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
93 cd $(DIR_APP) && ./configure \
94 --prefix=/usr \
95 --sysconfdir=/etc \
96 --localstatedir=/var \
97 --enable-kvm \
98 --disable-attr \
99 --target-list="$(TARGETS)" \
100 --extra-cflags="$(CFLAGS)" \
101 --enable-spice \
102 --enable-usb-redir \
103 --enable-seccomp \
104 --disable-docs \
105 --disable-sdl
106
107 cd $(DIR_APP) && make $(MAKETUNING)
108 cd $(DIR_APP) && make install
109
110 # install wrapper for old kvm parameter handling
111 install -m 755 $(DIR_SRC)/config/qemu/qemu /usr/bin/qemu
112
113 # install an udev script to set the permissions of /dev/kvm
114 cp -avf $(DIR_SRC)/config/qemu/65-kvm.rules /lib/udev/rules.d/65-kvm.rules
115
116 @rm -rf $(DIR_APP)
117 @$(POSTBUILD)