File tree Expand file tree Collapse file tree 1 file changed +107
-0
lines changed Expand file tree Collapse file tree 1 file changed +107
-0
lines changed Original file line number Diff line number Diff line change 1+ # /usr/bin/env bash
2+ 
3+ set  -e
4+ 
5+ usage ()
6+ {
7+   echo  " Usage: $( basename $0 )   host source prefix" 
8+ }
9+ 
10+ #  Validate and parse arguments
11+ if  [ " $1 "   ==  " "   ];  then 
12+   usage
13+   echo 
14+   echo  " host must be specified." 
15+   exit  1
16+ elif  [ " $2 "   ==  " "   ];  then 
17+   usage
18+   echo 
19+   echo  " source must be specified." 
20+   exit  1
21+ elif  [ " $3 "   ==  " "   ];  then 
22+   usage
23+   echo 
24+   echo  " prefix must be specified." 
25+   exit  1
26+ fi 
27+ 
28+ BUILD_HOST=" $1 " 
29+ BUILD_SOURCE=" $2 " 
30+ BUILD_PREFIX=" $3 " 
31+ 
32+ #  Set build parameters
33+ QEMU_TARGETS="  \ 
34+   aarch64-softmmu \  
35+   arm-softmmu \  
36+   i386-softmmu \  
37+   mips-softmmu \  
38+   mipsel-softmmu \  
39+   or1k-softmmu \  
40+   riscv32-softmmu \  
41+   riscv64-softmmu \  
42+   rx-softmmu \  
43+   sparc-softmmu \  
44+   x86_64-softmmu \  
45+   xtensa-softmmu \  
46+ " 
47+ 
48+ QEMU_FLAGS="  \ 
49+   --disable-attr \  
50+   --disable-cap-ng \  
51+   --disable-curl \  
52+   --disable-curses \  
53+   --disable-debug-info \  
54+   --disable-dmg 
55+   --disable-docs \  
56+   --disable-glusterfs \  
57+   --disable-gtk \  
58+   --disable-guest-agent \  
59+   --disable-iconv \  
60+   --disable-kvm \  
61+   --disable-libiscsi \  
62+   --disable-libnfs \  
63+   --disable-libssh \  
64+   --disable-libusb \  
65+   --disable-linux-aio \  
66+   --disable-numa \  
67+   --disable-parallels \  
68+   --disable-replication \  
69+   --disable-sdl \  
70+   --disable-seccomp \  
71+   --disable-selinux \  
72+   --disable-tpm \  
73+   --disable-usb-redir \  
74+   --disable-virtfs \  
75+   --disable-vnc \  
76+   --disable-xen \  
77+ " 
78+ 
79+ if  [ " ${BUILD_HOST} "   ==  " windows-x86_64"   ];  then 
80+   QEMU_FLAGS+=" --cross-prefix=x86_64-w64-mingw32-" 
81+ fi 
82+ 
83+ #  Configure QEMU
84+ ${BUILD_SOURCE} /configure \
85+   ${QEMU_FLAGS}  \
86+   --target-list=" ${QEMU_TARGETS} "   \
87+   --prefix=" ${BUILD_PREFIX} " 
88+ 
89+ #  Build QEMU
90+ make -j
91+ 
92+ #  Install QEMU
93+ make install
94+ 
95+ #  Copy required dynamic-link libraries for Windows
96+ if  [ " ${BUILD_HOST} "   ==  " windows-x86_64"   ];  then 
97+   QEMU_WIN_LIBS="  \ 
98+     /opt/mingw-w64-win32/x86_64-w64-mingw32/bin/libglib-2.0-0.dll \  
99+     /opt/mingw-w64-win32/x86_64-w64-mingw32/lib/libstdc++-6.dll \  
100+     /opt/mingw-w64-win32/x86_64-w64-mingw32/lib/libssp-0.dll \  
101+     /opt/mingw-w64-win32/x86_64-w64-mingw32/lib/libwinpthread-1.dll \  
102+     "  
103+ 
104+   for  l  in  ${QEMU_WIN_LIBS} ;  do 
105+     cp -f ${l}  ${BUILD_PREFIX} 
106+   done 
107+ fi 
    
 
   
 
     
   
   
          
     
  
    
     
 
    
      
     
 
     
    You can’t perform that action at this time.
  
 
    
  
     
    
      
        
     
 
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments