Makefile: modified Makefile to library load on mac from check-gl
[sdk/emulator/qemu.git] / tizen / src / Makefile
1 EMUL_DIR=../emulator
2 DIBS_X86_DIR=../x86
3 DIBS_ARM_DIR=../arm
4 DIBS_COMMON_DIR=../common
5
6 ifneq ($(wildcard ../../config-host.mak),)
7 include ../../config-host.mak
8 else
9 config-host.mak:
10         @echo "Please call configure before running make!"
11         @exit 1
12 endif
13
14 all: qemu skin_client
15 qemu: build_info ffmpeg_install check_hax
16         cd ../../ && $(MAKE)
17 qemu_clean:
18         cd ../../ && $(MAKE) clean
19 qemu_distclean:
20         cd ../../ && $(MAKE) distclean
21
22 check_hax:
23         @echo "build check hax" 
24 ifdef CONFIG_WIN32
25         $(CC) -o check-hax.exe check_hax.c      
26 endif
27 ifdef CONFIG_DARWIN
28         $(CC) -mmacosx-version-min=10.4 -o check-hax check_hax.c        
29 endif
30
31 skin_client:
32         ant -buildfile skin/client/build.xml make-jar
33
34 build_info:
35         @echo "/* Automatically generated by Makefile - do not modify! */" > build_info.h
36         @echo "const char build_version[] = \"`cat VERSION`\";" >> build_info.h
37         @echo "const char build_date[] = \"`date +"%F %T %Z"`\";" >> build_info.h
38         @echo "const char pkginfo_version[] = \"`sed -n '1p' ./../../package/pkginfo.manifest`\";" >> build_info.h
39         @echo "const char pkginfo_maintainer[] = \"`sed -n '2p' ./../../package/pkginfo.manifest`\";" >> build_info.h
40         @echo "const char pkginfo_githead[] = \"`git rev-parse HEAD`\";" >> build_info.h
41
42 ffmpeg:
43         cd ../distrib/libav/ && $(MAKE)
44 ffmpeg_install: ffmpeg
45         cd ../distrib/libav/ && $(MAKE) install
46 ffmpeg_clean:
47         cd ../distrib/libav/ && $(MAKE) clean
48 ffmpeg_distclean:
49         cd ../distrib/libav/ && $(MAKE) clean && rm -rf ${ARCH}
50
51 clean: ffmpeg_clean qemu_clean
52 ifdef CONFIG_WIN32
53         rm -f check-hax.exe
54 endif
55 ifdef CONFIG_DARWIN
56         rm -f check-hax
57 endif
58 distclean: ffmpeg_distclean qemu_distclean
59
60 install: all
61         mkdir -p $(EMUL_DIR)/bin
62         mkdir -p $(EMUL_DIR)/etc
63         mkdir -p $(EMUL_DIR)/data
64 ifndef CONFIG_DARWIN
65         @for target in $(TARGET_DIRS); do \
66         case "$$target" in \
67         i386-softmmu) \
68                 mkdir -p $(EMUL_DIR)/data/bios ;\
69                 echo "Copying i386-softmmu/qemu-system-i386 to $(EMUL_DIR)/bin/emulator-x86" ;\
70                 cp ../../i386-softmmu/qemu-system-i386 $(EMUL_DIR)/bin/emulator-x86 ;\
71                 echo "Copying bioses to $(EMUL_DIR)/data/bios" ;\
72                 cp -dpr ../../pc-bios/bios.bin $(EMUL_DIR)/data/bios ;\
73                 cp -dpr ../../pc-bios/linuxboot.bin $(EMUL_DIR)/data/bios ;\
74                 cp -dpr ../../pc-bios/pxe-virtio.rom $(EMUL_DIR)/data/bios ;\
75                 ;; \
76         arm-softmmu) \
77                 echo "Copying arm-softmmu/qemu-system-arm to $(EMUL_DIR)/bin/emulator-arm" ;\
78                 cp ../../arm-softmmu/qemu-system-arm $(EMUL_DIR)/bin/emulator-arm ;\
79                 ;; \
80         esac; \
81         done
82 else
83         @for target in $(TARGET_DIRS); do \
84         case "$$target" in \
85         i386-softmmu) \
86                 mkdir -p $(EMUL_DIR)/data/bios ;\
87                 echo "Copying i386-softmmu/qemu-system-i386 to $(EMUL_DIR)/bin/emulator-x86" ;\
88                 cp ../../i386-softmmu/qemu-system-i386 $(EMUL_DIR)/bin/emulator-x86 ;\
89                 echo "Copying bioses to $(EMUL_DIR)/data/bios" ;\
90                 cp -pPR ../../pc-bios/bios.bin $(EMUL_DIR)/data/bios ;\
91                 cp -pPR ../../pc-bios/linuxboot.bin $(EMUL_DIR)/data/bios ;\
92                 cp -pPR ../../pc-bios/pxe-virtio.rom $(EMUL_DIR)/data/bios ;\
93                 ;; \
94         arm-softmmu) \
95                 echo "Copying arm-softmmu/qemu-system-arm to $(EMUL_DIR)/bin/emulator-arm" ;\
96                 cp ../../arm-softmmu/qemu-system-arm $(EMUL_DIR)/bin/emulator-arm ;\
97                 ;; \
98         esac; \
99         done
100 endif
101         
102         cp skin/client/emulator-skin.jar $(EMUL_DIR)/bin
103 ifdef CONFIG_WIN32
104         cp ../../i386-softmmu/check-gl.exe $(EMUL_DIR)/bin
105         cp check-hax.exe $(EMUL_DIR)/bin
106 endif
107 ifdef CONFIG_DARWIN
108         cp ../../i386-softmmu/check-gl $(EMUL_DIR)/bin
109         cp check-hax $(EMUL_DIR)/bin
110         cp sdbscript $(EMUL_DIR)/bin
111 endif
112 ifdef CONFIG_LINUX
113         cp ../../i386-softmmu/check-gl $(EMUL_DIR)/bin
114         cp -pPr ../distrib/initscript/tizen-kvm $(EMUL_DIR)/etc
115         cp -pPr ../distrib/initscript/45-tizen-kvm.rules $(EMUL_DIR)/etc
116 endif
117
118 ifndef CONFIG_DARWIN
119         cp ../../qemu-img $(EMUL_DIR)/bin
120         cp -dpr ../license $(EMUL_DIR)
121         cp skin/client/lib/swt.jar $(EMUL_DIR)/bin/swt.jar
122         cp -dpr skin/client/skins $(EMUL_DIR)
123 else
124         cp ../../qemu-img $(EMUL_DIR)/bin
125         cp -pPR ../license $(EMUL_DIR)
126         cp skin/client/lib/swt.jar $(EMUL_DIR)/bin/swt.jar
127         cp -pPR skin/client/skins $(EMUL_DIR)
128         cp -pPR skin/client/native_src/libshared.dylib $(EMUL_DIR)/bin
129 endif
130
131 ifdef CONFIG_DARWIN
132         install_name_tool -change /opt/local/lib/libgthread-2.0.*.dylib @loader_path/libgthread-2.0.0.dylib $(EMUL_DIR)/bin/qemu-img
133         install_name_tool -change /opt/local/lib/libglib-2.0.*.dylib @loader_path/libglib-2.0.0.dylib $(EMUL_DIR)/bin/qemu-img
134         install_name_tool -change /opt/local/lib/libintl.8.dylib @loader_path/libintl.8.dylib $(EMUL_DIR)/bin/qemu-img
135         install_name_tool -change /opt/local/lib/gcc47/libgcc_s.1.dylib @loader_path/libgcc_s.1.dylib $(EMUL_DIR)/bin/qemu-img
136         install_name_tool -change /opt/local/lib/libz.1.dylib @loader_path/libz.1.dylib $(EMUL_DIR)/bin/qemu-img
137         install_name_tool -change /opt/local/lib/libcurl.4.dylib @loader_path/libcurl.4.dylib $(EMUL_DIR)/bin/qemu-img
138         install_name_tool -change /opt/local/lib/libglib-2.0.*.dylib @loader_path/libglib-2.0.0.dylib $(EMUL_DIR)/bin/check-gl
139         install_name_tool -change /opt/local/lib/libintl.8.dylib @loader_path/libintl.8.dylib $(EMUL_DIR)/bin/check-gl
140         install_name_tool -change /opt/local/lib/gcc47/libgcc_s.1.dylib @loader_path/libgcc_s.1.dylib $(EMUL_DIR)/bin/check-gl
141
142         @for target in $(TARGET_DIRS); do \
143         case "$$target" in \
144         i386-softmmu) \
145                 install_name_tool -change /opt/local/lib/libgthread-2.0.*.dylib @loader_path/libgthread-2.0.0.dylib $(EMUL_DIR)/bin/emulator-x86 ;\
146                 install_name_tool -change /opt/local/lib/libglib-2.0.*.dylib @loader_path/libglib-2.0.0.dylib $(EMUL_DIR)/bin/emulator-x86 ;\
147                 install_name_tool -change /opt/local/lib/libintl.8.dylib @loader_path/libintl.8.dylib $(EMUL_DIR)/bin/emulator-x86 ;\
148                 install_name_tool -change /opt/local/lib/gcc47/libgcc_s.1.dylib @loader_path/libgcc_s.1.dylib $(EMUL_DIR)/bin/emulator-x86 ;\
149                 install_name_tool -change /opt/local/lib/libz.1.dylib @loader_path/libz.1.dylib $(EMUL_DIR)/bin/emulator-x86 ;\
150                 install_name_tool -change /opt/local/lib/libncurses.5.dylib @loader_path/libncurses.5.dylib $(EMUL_DIR)/bin/emulator-x86 ;\
151                 install_name_tool -change /opt/local/lib/libcurl.4.dylib @loader_path/libcurl.4.dylib $(EMUL_DIR)/bin/emulator-x86 ;\
152                 ;; \
153         arm-softmmu) \
154                 ;; \
155         esac; \
156         done
157 endif
158
159 # for dibs system...
160 all_dibs: qemu skin_client_dibs
161 skin_client_dibs:
162         ant -buildfile skin/client/build.xml -Dclasspath.dibs=$(ROOTDIR)/tools/emulator/bin make-jar-dibs
163 install_dibs: all_dibs
164         mkdir -p $(DIBS_COMMON_DIR)/bin
165         mkdir -p $(DIBS_COMMON_DIR)/etc
166         mkdir -p $(DIBS_X86_DIR)/bin
167         mkdir -p $(DIBS_X86_DIR)/data
168         mkdir -p $(DIBS_X86_DIR)/etc
169         mkdir -p $(DIBS_ARM_DIR)/bin
170 ifndef CONFIG_DARWIN
171         @for target in $(TARGET_DIRS); do \
172         case "$$target" in \
173         i386-softmmu) \
174                 mkdir -p $(DIBS_X86_DIR)/data/bios ;\
175                 echo "Copying i386-softmmu/qemu-system-i386 to $(DIBS_X86__DIR)/bin/emulator-x86" ;\
176                 cp ../../i386-softmmu/qemu-system-i386 $(DIBS_X86_DIR)/bin/emulator-x86 ;\
177                 echo "Copying bioses to $(DIBS_X86_DIR)/data/bios" ;\
178                 cp -dpr ../../pc-bios/bios.bin $(DIBS_X86_DIR)/data/bios ;\
179                 cp -dpr ../../pc-bios/linuxboot.bin $(DIBS_X86_DIR)/data/bios ;\
180                 cp -dpr ../../pc-bios/pxe-virtio.rom $(DIBS_X86_DIR)/data/bios ;\
181                 ;; \
182         arm-softmmu) \
183                 echo "Copying arm-softmmu/qemu-system-arm to $(DIBS_ARM_DIR)/bin/emulator-arm" ;\
184                 cp ../../arm-softmmu/qemu-system-arm $(DIBS_ARM_DIR)/bin/emulator-arm ;\
185                 ;; \
186         esac; \
187         done
188 else
189         @for target in $(TARGET_DIRS); do \
190         case "$$target" in \
191         i386-softmmu) \
192                 mkdir -p $(DIBS_X86_DIR)/data/bios ;\
193                 echo "Copying i386-softmmu/qemu-system-i386 to $(DIBS_X86_DIR)/bin/emulator-x86" ;\
194                 cp ../../i386-softmmu/qemu-system-i386 $(DIBS_X86_DIR)/bin/emulator-x86 ;\
195                 echo "Copying bioses to $(DIBS_X86_DIR)/data/bios" ;\
196                 cp -pPR ../../pc-bios/bios.bin $(DIBS_X86_DIR)/data/bios ;\
197                 cp -pPR ../../pc-bios/linuxboot.bin $(DIBS_X86_DIR)/data/bios ;\
198                 cp -pPR ../../pc-bios/pxe-virtio.rom $(DIBS_X86_DIR)/data/bios ;\
199                 ;; \
200         arm-softmmu) \
201                 echo "Copying arm-softmmu/qemu-system-arm to $(DIBS_ARM_DIR)/bin/emulator-arm" ;\
202                 cp ../../arm-softmmu/qemu-system-arm $(DIBS_ARM_DIR)/bin/emulator-arm ;\
203                 ;; \
204         esac; \
205         done
206 endif
207
208         cp skin/client/emulator-skin.jar $(DIBS_COMMON_DIR)/bin
209 ifdef CONFIG_WIN32
210         cp ../../i386-softmmu/check-gl.exe $(DIBS_COMMONL_DIR)/bin
211         cp check-hax.exe $(DIBS_COMMON_DIR)/bin
212 endif
213
214 ifdef CONFIG_DARWIN
215         cp ../../i386-softmmu/check-gl $(DIBS_COMMON_DIR)/bin
216         cp check-hax $(DIBS_COMMON_DIR)/bin
217         cp sdbscript $(DIBS_COMMON_DIR)/bin
218 endif
219 ifdef CONFIG_LINUX
220         cp ../../i386-softmmu/check-gl $(DIBS_COMMON_DIR)/bin
221         echo "Copying tizen-kvm to $(DIBS_X86_DIR)/etc"
222         cp -pPr ../distrib/initscript/tizen-kvm $(DIBS_X86_DIR)/etc
223         cp -pPr ../distrib/initscript/45-tizen-kvm.rules $(DIBS_X86_DIR)/etc
224 endif
225
226 ifndef CONFIG_DARWIN
227         cp ../../qemu-img $(DIBS_COMMON_DIR)/bin
228         cp -dpr ../license $(DIBS_COMMON_DIR)
229         cp -dpr skin/client/skins $(DIBS_COMMON_DIR)
230 else
231         cp ../../qemu-img $(DIBS_COMMON_DIR)/bin
232         cp -pPR ../license $(DIBS_COMMON_DIR)
233         cp -pPR skin/client/skins $(DIBS_COMMON_DIR)
234         cp -pPR skin/client/native_src/libshared.dylib $(DIBS_COMMON_DIR)/bin
235 endif
236
237 ifdef CONFIG_DARWIN
238         install_name_tool -change /opt/local/lib/libgthread-2.0.*.dylib @loader_path/libgthread-2.0.0.dylib $(DIBS_COMMON_DIR)/bin/qemu-img 
239         install_name_tool -change /opt/local/lib/libglib-2.0.*.dylib @loader_path/libglib-2.0.0.dylib $(DIBS_COMMON_DIR)/bin/qemu-img
240         install_name_tool -change /opt/local/lib/libintl.8.dylib @loader_path/libintl.8.dylib $(DIBS_COMMON_DIR)/bin/qemu-img
241         install_name_tool -change /opt/local/lib/gcc47/libgcc_s.1.dylib @loader_path/libgcc_s.1.dylib $(DIBS_COMMON_DIR)/bin/qemu-img
242         install_name_tool -change /opt/local/lib/libz.1.dylib @loader_path/libz.1.dylib $(DIBS_COMMON_DIR)/bin/qemu-img
243         install_name_tool -change /opt/local/lib/libcurl.4.dylib @loader_path/libcurl.4.dylib $(DIBS_COMMON_DIR)/bin/qemu-img
244         install_name_tool -change /opt/local/lib/libglib-2.0.*.dylib @loader_path/libglib-2.0.0.dylib $(DIBS_COMMON_DIR)/bin/check-gl
245         install_name_tool -change /opt/local/lib/libintl.8.dylib @loader_path/libintl.8.dylib $(DIBS_COMMON_DIR)/bin/check-gl
246         install_name_tool -change /opt/local/lib/gcc47/libgcc_s.1.dylib @loader_path/libgcc_s.1.dylib $(DIBS_COMMON_DIR)/bin/check-gl
247
248         @for target in $(TARGET_DIRS); do \
249         case "$$target" in \
250         i386-softmmu) \
251                 install_name_tool -change /opt/local/lib/libgthread-2.0.*.dylib @loader_path/libgthread-2.0.0.dylib $(DIBS_X86_DIR)/bin/emulator-x86 ;\
252                 install_name_tool -change /opt/local/lib/libglib-2.0.*.dylib @loader_path/libglib-2.0.0.dylib $(DIBS_X86_DIR)/bin/emulator-x86 ;\
253                 install_name_tool -change /opt/local/lib/libintl.8.dylib @loader_path/libintl.8.dylib $(DIBS_X86_DIR)/bin/emulator-x86 ;\
254                 install_name_tool -change /opt/local/lib/gcc47/libgcc_s.1.dylib @loader_path/libgcc_s.1.dylib $(DIBS_X86_DIR)/bin/emulator-x86 ;\
255                 install_name_tool -change /opt/local/lib/libz.1.dylib @loader_path/libz.1.dylib $(DIBS_X86_DIR)/bin/emulator-x86 ;\
256                 install_name_tool -change /opt/local/lib/libncurses.5.dylib @loader_path/libncurses.5.dylib $(DIBS_X86_DIR)/bin/emulator-x86 ;\
257                 install_name_tool -change /opt/local/lib/libcurl.4.dylib @loader_path/libcurl.4.dylib $(DIBS_X86_DIR)/bin/emulator-x86 ;\
258                 ;; \
259         arm-softmmu) \
260                 ;; \
261         esac; \
262         done
263 endif