Commit 3ef693a03205217a5def9318b443c8cb6de17217
1 parent
b03c60f3
distribution patches
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@44 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
18 changed files
with
515 additions
and
88 deletions
COPYING
0 → 100644
1 | + GNU GENERAL PUBLIC LICENSE | ||
2 | + Version 2, June 1991 | ||
3 | + | ||
4 | + Copyright (C) 1989, 1991 Free Software Foundation, Inc. | ||
5 | + 675 Mass Ave, Cambridge, MA 02139, USA | ||
6 | + Everyone is permitted to copy and distribute verbatim copies | ||
7 | + of this license document, but changing it is not allowed. | ||
8 | + | ||
9 | + Preamble | ||
10 | + | ||
11 | + The licenses for most software are designed to take away your | ||
12 | +freedom to share and change it. By contrast, the GNU General Public | ||
13 | +License is intended to guarantee your freedom to share and change free | ||
14 | +software--to make sure the software is free for all its users. This | ||
15 | +General Public License applies to most of the Free Software | ||
16 | +Foundation's software and to any other program whose authors commit to | ||
17 | +using it. (Some other Free Software Foundation software is covered by | ||
18 | +the GNU Library General Public License instead.) You can apply it to | ||
19 | +your programs, too. | ||
20 | + | ||
21 | + When we speak of free software, we are referring to freedom, not | ||
22 | +price. Our General Public Licenses are designed to make sure that you | ||
23 | +have the freedom to distribute copies of free software (and charge for | ||
24 | +this service if you wish), that you receive source code or can get it | ||
25 | +if you want it, that you can change the software or use pieces of it | ||
26 | +in new free programs; and that you know you can do these things. | ||
27 | + | ||
28 | + To protect your rights, we need to make restrictions that forbid | ||
29 | +anyone to deny you these rights or to ask you to surrender the rights. | ||
30 | +These restrictions translate to certain responsibilities for you if you | ||
31 | +distribute copies of the software, or if you modify it. | ||
32 | + | ||
33 | + For example, if you distribute copies of such a program, whether | ||
34 | +gratis or for a fee, you must give the recipients all the rights that | ||
35 | +you have. You must make sure that they, too, receive or can get the | ||
36 | +source code. And you must show them these terms so they know their | ||
37 | +rights. | ||
38 | + | ||
39 | + We protect your rights with two steps: (1) copyright the software, and | ||
40 | +(2) offer you this license which gives you legal permission to copy, | ||
41 | +distribute and/or modify the software. | ||
42 | + | ||
43 | + Also, for each author's protection and ours, we want to make certain | ||
44 | +that everyone understands that there is no warranty for this free | ||
45 | +software. If the software is modified by someone else and passed on, we | ||
46 | +want its recipients to know that what they have is not the original, so | ||
47 | +that any problems introduced by others will not reflect on the original | ||
48 | +authors' reputations. | ||
49 | + | ||
50 | + Finally, any free program is threatened constantly by software | ||
51 | +patents. We wish to avoid the danger that redistributors of a free | ||
52 | +program will individually obtain patent licenses, in effect making the | ||
53 | +program proprietary. To prevent this, we have made it clear that any | ||
54 | +patent must be licensed for everyone's free use or not licensed at all. | ||
55 | + | ||
56 | + The precise terms and conditions for copying, distribution and | ||
57 | +modification follow. | ||
58 | + | ||
59 | + GNU GENERAL PUBLIC LICENSE | ||
60 | + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION | ||
61 | + | ||
62 | + 0. This License applies to any program or other work which contains | ||
63 | +a notice placed by the copyright holder saying it may be distributed | ||
64 | +under the terms of this General Public License. The "Program", below, | ||
65 | +refers to any such program or work, and a "work based on the Program" | ||
66 | +means either the Program or any derivative work under copyright law: | ||
67 | +that is to say, a work containing the Program or a portion of it, | ||
68 | +either verbatim or with modifications and/or translated into another | ||
69 | +language. (Hereinafter, translation is included without limitation in | ||
70 | +the term "modification".) Each licensee is addressed as "you". | ||
71 | + | ||
72 | +Activities other than copying, distribution and modification are not | ||
73 | +covered by this License; they are outside its scope. The act of | ||
74 | +running the Program is not restricted, and the output from the Program | ||
75 | +is covered only if its contents constitute a work based on the | ||
76 | +Program (independent of having been made by running the Program). | ||
77 | +Whether that is true depends on what the Program does. | ||
78 | + | ||
79 | + 1. You may copy and distribute verbatim copies of the Program's | ||
80 | +source code as you receive it, in any medium, provided that you | ||
81 | +conspicuously and appropriately publish on each copy an appropriate | ||
82 | +copyright notice and disclaimer of warranty; keep intact all the | ||
83 | +notices that refer to this License and to the absence of any warranty; | ||
84 | +and give any other recipients of the Program a copy of this License | ||
85 | +along with the Program. | ||
86 | + | ||
87 | +You may charge a fee for the physical act of transferring a copy, and | ||
88 | +you may at your option offer warranty protection in exchange for a fee. | ||
89 | + | ||
90 | + 2. You may modify your copy or copies of the Program or any portion | ||
91 | +of it, thus forming a work based on the Program, and copy and | ||
92 | +distribute such modifications or work under the terms of Section 1 | ||
93 | +above, provided that you also meet all of these conditions: | ||
94 | + | ||
95 | + a) You must cause the modified files to carry prominent notices | ||
96 | + stating that you changed the files and the date of any change. | ||
97 | + | ||
98 | + b) You must cause any work that you distribute or publish, that in | ||
99 | + whole or in part contains or is derived from the Program or any | ||
100 | + part thereof, to be licensed as a whole at no charge to all third | ||
101 | + parties under the terms of this License. | ||
102 | + | ||
103 | + c) If the modified program normally reads commands interactively | ||
104 | + when run, you must cause it, when started running for such | ||
105 | + interactive use in the most ordinary way, to print or display an | ||
106 | + announcement including an appropriate copyright notice and a | ||
107 | + notice that there is no warranty (or else, saying that you provide | ||
108 | + a warranty) and that users may redistribute the program under | ||
109 | + these conditions, and telling the user how to view a copy of this | ||
110 | + License. (Exception: if the Program itself is interactive but | ||
111 | + does not normally print such an announcement, your work based on | ||
112 | + the Program is not required to print an announcement.) | ||
113 | + | ||
114 | +These requirements apply to the modified work as a whole. If | ||
115 | +identifiable sections of that work are not derived from the Program, | ||
116 | +and can be reasonably considered independent and separate works in | ||
117 | +themselves, then this License, and its terms, do not apply to those | ||
118 | +sections when you distribute them as separate works. But when you | ||
119 | +distribute the same sections as part of a whole which is a work based | ||
120 | +on the Program, the distribution of the whole must be on the terms of | ||
121 | +this License, whose permissions for other licensees extend to the | ||
122 | +entire whole, and thus to each and every part regardless of who wrote it. | ||
123 | + | ||
124 | +Thus, it is not the intent of this section to claim rights or contest | ||
125 | +your rights to work written entirely by you; rather, the intent is to | ||
126 | +exercise the right to control the distribution of derivative or | ||
127 | +collective works based on the Program. | ||
128 | + | ||
129 | +In addition, mere aggregation of another work not based on the Program | ||
130 | +with the Program (or with a work based on the Program) on a volume of | ||
131 | +a storage or distribution medium does not bring the other work under | ||
132 | +the scope of this License. | ||
133 | + | ||
134 | + 3. You may copy and distribute the Program (or a work based on it, | ||
135 | +under Section 2) in object code or executable form under the terms of | ||
136 | +Sections 1 and 2 above provided that you also do one of the following: | ||
137 | + | ||
138 | + a) Accompany it with the complete corresponding machine-readable | ||
139 | + source code, which must be distributed under the terms of Sections | ||
140 | + 1 and 2 above on a medium customarily used for software interchange; or, | ||
141 | + | ||
142 | + b) Accompany it with a written offer, valid for at least three | ||
143 | + years, to give any third party, for a charge no more than your | ||
144 | + cost of physically performing source distribution, a complete | ||
145 | + machine-readable copy of the corresponding source code, to be | ||
146 | + distributed under the terms of Sections 1 and 2 above on a medium | ||
147 | + customarily used for software interchange; or, | ||
148 | + | ||
149 | + c) Accompany it with the information you received as to the offer | ||
150 | + to distribute corresponding source code. (This alternative is | ||
151 | + allowed only for noncommercial distribution and only if you | ||
152 | + received the program in object code or executable form with such | ||
153 | + an offer, in accord with Subsection b above.) | ||
154 | + | ||
155 | +The source code for a work means the preferred form of the work for | ||
156 | +making modifications to it. For an executable work, complete source | ||
157 | +code means all the source code for all modules it contains, plus any | ||
158 | +associated interface definition files, plus the scripts used to | ||
159 | +control compilation and installation of the executable. However, as a | ||
160 | +special exception, the source code distributed need not include | ||
161 | +anything that is normally distributed (in either source or binary | ||
162 | +form) with the major components (compiler, kernel, and so on) of the | ||
163 | +operating system on which the executable runs, unless that component | ||
164 | +itself accompanies the executable. | ||
165 | + | ||
166 | +If distribution of executable or object code is made by offering | ||
167 | +access to copy from a designated place, then offering equivalent | ||
168 | +access to copy the source code from the same place counts as | ||
169 | +distribution of the source code, even though third parties are not | ||
170 | +compelled to copy the source along with the object code. | ||
171 | + | ||
172 | + 4. You may not copy, modify, sublicense, or distribute the Program | ||
173 | +except as expressly provided under this License. Any attempt | ||
174 | +otherwise to copy, modify, sublicense or distribute the Program is | ||
175 | +void, and will automatically terminate your rights under this License. | ||
176 | +However, parties who have received copies, or rights, from you under | ||
177 | +this License will not have their licenses terminated so long as such | ||
178 | +parties remain in full compliance. | ||
179 | + | ||
180 | + 5. You are not required to accept this License, since you have not | ||
181 | +signed it. However, nothing else grants you permission to modify or | ||
182 | +distribute the Program or its derivative works. These actions are | ||
183 | +prohibited by law if you do not accept this License. Therefore, by | ||
184 | +modifying or distributing the Program (or any work based on the | ||
185 | +Program), you indicate your acceptance of this License to do so, and | ||
186 | +all its terms and conditions for copying, distributing or modifying | ||
187 | +the Program or works based on it. | ||
188 | + | ||
189 | + 6. Each time you redistribute the Program (or any work based on the | ||
190 | +Program), the recipient automatically receives a license from the | ||
191 | +original licensor to copy, distribute or modify the Program subject to | ||
192 | +these terms and conditions. You may not impose any further | ||
193 | +restrictions on the recipients' exercise of the rights granted herein. | ||
194 | +You are not responsible for enforcing compliance by third parties to | ||
195 | +this License. | ||
196 | + | ||
197 | + 7. If, as a consequence of a court judgment or allegation of patent | ||
198 | +infringement or for any other reason (not limited to patent issues), | ||
199 | +conditions are imposed on you (whether by court order, agreement or | ||
200 | +otherwise) that contradict the conditions of this License, they do not | ||
201 | +excuse you from the conditions of this License. If you cannot | ||
202 | +distribute so as to satisfy simultaneously your obligations under this | ||
203 | +License and any other pertinent obligations, then as a consequence you | ||
204 | +may not distribute the Program at all. For example, if a patent | ||
205 | +license would not permit royalty-free redistribution of the Program by | ||
206 | +all those who receive copies directly or indirectly through you, then | ||
207 | +the only way you could satisfy both it and this License would be to | ||
208 | +refrain entirely from distribution of the Program. | ||
209 | + | ||
210 | +If any portion of this section is held invalid or unenforceable under | ||
211 | +any particular circumstance, the balance of the section is intended to | ||
212 | +apply and the section as a whole is intended to apply in other | ||
213 | +circumstances. | ||
214 | + | ||
215 | +It is not the purpose of this section to induce you to infringe any | ||
216 | +patents or other property right claims or to contest validity of any | ||
217 | +such claims; this section has the sole purpose of protecting the | ||
218 | +integrity of the free software distribution system, which is | ||
219 | +implemented by public license practices. Many people have made | ||
220 | +generous contributions to the wide range of software distributed | ||
221 | +through that system in reliance on consistent application of that | ||
222 | +system; it is up to the author/donor to decide if he or she is willing | ||
223 | +to distribute software through any other system and a licensee cannot | ||
224 | +impose that choice. | ||
225 | + | ||
226 | +This section is intended to make thoroughly clear what is believed to | ||
227 | +be a consequence of the rest of this License. | ||
228 | + | ||
229 | + 8. If the distribution and/or use of the Program is restricted in | ||
230 | +certain countries either by patents or by copyrighted interfaces, the | ||
231 | +original copyright holder who places the Program under this License | ||
232 | +may add an explicit geographical distribution limitation excluding | ||
233 | +those countries, so that distribution is permitted only in or among | ||
234 | +countries not thus excluded. In such case, this License incorporates | ||
235 | +the limitation as if written in the body of this License. | ||
236 | + | ||
237 | + 9. The Free Software Foundation may publish revised and/or new versions | ||
238 | +of the General Public License from time to time. Such new versions will | ||
239 | +be similar in spirit to the present version, but may differ in detail to | ||
240 | +address new problems or concerns. | ||
241 | + | ||
242 | +Each version is given a distinguishing version number. If the Program | ||
243 | +specifies a version number of this License which applies to it and "any | ||
244 | +later version", you have the option of following the terms and conditions | ||
245 | +either of that version or of any later version published by the Free | ||
246 | +Software Foundation. If the Program does not specify a version number of | ||
247 | +this License, you may choose any version ever published by the Free Software | ||
248 | +Foundation. | ||
249 | + | ||
250 | + 10. If you wish to incorporate parts of the Program into other free | ||
251 | +programs whose distribution conditions are different, write to the author | ||
252 | +to ask for permission. For software which is copyrighted by the Free | ||
253 | +Software Foundation, write to the Free Software Foundation; we sometimes | ||
254 | +make exceptions for this. Our decision will be guided by the two goals | ||
255 | +of preserving the free status of all derivatives of our free software and | ||
256 | +of promoting the sharing and reuse of software generally. | ||
257 | + | ||
258 | + NO WARRANTY | ||
259 | + | ||
260 | + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY | ||
261 | +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN | ||
262 | +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES | ||
263 | +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED | ||
264 | +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF | ||
265 | +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS | ||
266 | +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE | ||
267 | +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, | ||
268 | +REPAIR OR CORRECTION. | ||
269 | + | ||
270 | + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING | ||
271 | +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR | ||
272 | +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, | ||
273 | +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING | ||
274 | +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED | ||
275 | +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY | ||
276 | +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER | ||
277 | +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE | ||
278 | +POSSIBILITY OF SUCH DAMAGES. | ||
279 | + | ||
280 | + END OF TERMS AND CONDITIONS | ||
281 | + | ||
282 | + How to Apply These Terms to Your New Programs | ||
283 | + | ||
284 | + If you develop a new program, and you want it to be of the greatest | ||
285 | +possible use to the public, the best way to achieve this is to make it | ||
286 | +free software which everyone can redistribute and change under these terms. | ||
287 | + | ||
288 | + To do so, attach the following notices to the program. It is safest | ||
289 | +to attach them to the start of each source file to most effectively | ||
290 | +convey the exclusion of warranty; and each file should have at least | ||
291 | +the "copyright" line and a pointer to where the full notice is found. | ||
292 | + | ||
293 | + <one line to give the program's name and a brief idea of what it does.> | ||
294 | + Copyright (C) 19yy <name of author> | ||
295 | + | ||
296 | + This program is free software; you can redistribute it and/or modify | ||
297 | + it under the terms of the GNU General Public License as published by | ||
298 | + the Free Software Foundation; either version 2 of the License, or | ||
299 | + (at your option) any later version. | ||
300 | + | ||
301 | + This program is distributed in the hope that it will be useful, | ||
302 | + but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
303 | + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
304 | + GNU General Public License for more details. | ||
305 | + | ||
306 | + You should have received a copy of the GNU General Public License | ||
307 | + along with this program; if not, write to the Free Software | ||
308 | + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | ||
309 | + | ||
310 | +Also add information on how to contact you by electronic and paper mail. | ||
311 | + | ||
312 | +If the program is interactive, make it output a short notice like this | ||
313 | +when it starts in an interactive mode: | ||
314 | + | ||
315 | + Gnomovision version 69, Copyright (C) 19yy name of author | ||
316 | + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. | ||
317 | + This is free software, and you are welcome to redistribute it | ||
318 | + under certain conditions; type `show c' for details. | ||
319 | + | ||
320 | +The hypothetical commands `show w' and `show c' should show the appropriate | ||
321 | +parts of the General Public License. Of course, the commands you use may | ||
322 | +be called something other than `show w' and `show c'; they could even be | ||
323 | +mouse-clicks or menu items--whatever suits your program. | ||
324 | + | ||
325 | +You should also get your employer (if you work as a programmer) or your | ||
326 | +school, if any, to sign a "copyright disclaimer" for the program, if | ||
327 | +necessary. Here is a sample; alter the names: | ||
328 | + | ||
329 | + Yoyodyne, Inc., hereby disclaims all copyright interest in the program | ||
330 | + `Gnomovision' (which makes passes at compilers) written by James Hacker. | ||
331 | + | ||
332 | + <signature of Ty Coon>, 1 April 1989 | ||
333 | + Ty Coon, President of Vice | ||
334 | + | ||
335 | +This General Public License does not permit incorporating your program into | ||
336 | +proprietary programs. If your program is a subroutine library, you may | ||
337 | +consider it more useful to permit linking proprietary applications with the | ||
338 | +library. If this is what you want to do, use the GNU Library General | ||
339 | +Public License instead of this License. |
Changelog
0 → 100644
Makefile
@@ -28,7 +28,7 @@ endif | @@ -28,7 +28,7 @@ endif | ||
28 | 28 | ||
29 | DEFINES+=-D_GNU_SOURCE | 29 | DEFINES+=-D_GNU_SOURCE |
30 | LDSCRIPT=$(ARCH).ld | 30 | LDSCRIPT=$(ARCH).ld |
31 | -LIBS+=-ldl -lm | 31 | +LIBS+=-lm |
32 | 32 | ||
33 | # profiling code | 33 | # profiling code |
34 | ifdef TARGET_GPROF | 34 | ifdef TARGET_GPROF |
@@ -36,24 +36,25 @@ LDFLAGS+=-p | @@ -36,24 +36,25 @@ LDFLAGS+=-p | ||
36 | main.o: CFLAGS+=-p | 36 | main.o: CFLAGS+=-p |
37 | endif | 37 | endif |
38 | 38 | ||
39 | -OBJS= elfload.o main.o thunk.o syscall.o signal.o libgemu.a | 39 | +OBJS= elfload.o main.o syscall.o signal.o |
40 | +SRCS:= $(OBJS:.o=.c) | ||
41 | +OBJS+= libqemu.a | ||
40 | 42 | ||
41 | -LIBOBJS+=translate-i386.o op-i386.o exec-i386.o | 43 | +LIBOBJS+=thunk.o translate-i386.o op-i386.o exec-i386.o |
42 | # NOTE: the disassembler code is only needed for debugging | 44 | # NOTE: the disassembler code is only needed for debugging |
43 | LIBOBJS+=i386-dis.o dis-buf.o | 45 | LIBOBJS+=i386-dis.o dis-buf.o |
44 | -SRCS = $(OBJS:.o=.c) | ||
45 | 46 | ||
46 | -all: gemu | 47 | +all: qemu qemu-doc.html |
47 | 48 | ||
48 | -gemu: $(OBJS) | 49 | +qemu: $(OBJS) |
49 | $(CC) -Wl,-T,$(LDSCRIPT) $(LDFLAGS) -o $@ $^ $(LIBS) | 50 | $(CC) -Wl,-T,$(LDSCRIPT) $(LDFLAGS) -o $@ $^ $(LIBS) |
50 | 51 | ||
51 | depend: $(SRCS) | 52 | depend: $(SRCS) |
52 | $(CC) -MM $(CFLAGS) $^ 1>.depend | 53 | $(CC) -MM $(CFLAGS) $^ 1>.depend |
53 | 54 | ||
54 | -# libgemu | 55 | +# libqemu |
55 | 56 | ||
56 | -libgemu.a: $(LIBOBJS) | 57 | +libqemu.a: $(LIBOBJS) |
57 | rm -f $@ | 58 | rm -f $@ |
58 | $(AR) rcs $@ $(LIBOBJS) | 59 | $(AR) rcs $@ $(LIBOBJS) |
59 | 60 | ||
@@ -73,36 +74,42 @@ op-i386.o: op-i386.c opreg_template.h ops_template.h | @@ -73,36 +74,42 @@ op-i386.o: op-i386.c opreg_template.h ops_template.h | ||
73 | 74 | ||
74 | clean: | 75 | clean: |
75 | $(MAKE) -C tests clean | 76 | $(MAKE) -C tests clean |
76 | - rm -f *.o *.a *~ gemu dyngen TAGS | 77 | + rm -f *.o *.a *~ qemu dyngen TAGS |
77 | 78 | ||
78 | distclean: clean | 79 | distclean: clean |
79 | rm -f config.mak config.h | 80 | rm -f config.mak config.h |
80 | 81 | ||
81 | -install: gemu | ||
82 | - install -m755 -s gemu $(prefix)/bin | 82 | +install: qemu |
83 | + install -m 755 -s qemu $(prefix)/bin | ||
83 | 84 | ||
84 | # various test targets | 85 | # various test targets |
85 | -test speed: gemu | 86 | +test speed: qemu |
86 | make -C tests $@ | 87 | make -C tests $@ |
87 | 88 | ||
88 | TAGS: | 89 | TAGS: |
89 | etags *.[ch] i386/*.[ch] | 90 | etags *.[ch] i386/*.[ch] |
90 | 91 | ||
92 | +# documentation | ||
93 | +qemu-doc.html: qemu-doc.texi | ||
94 | + texi2html -monolithic -number $< | ||
95 | + | ||
91 | FILES= \ | 96 | FILES= \ |
92 | -COPYING.LIB dyngen.c ioctls.h ops_template.h syscall_types.h\ | 97 | +README COPYING COPYING.LIB TODO Changelog VERSION \ |
98 | +dyngen.c ioctls.h ops_template.h syscall_types.h\ | ||
93 | Makefile elf.h linux_bin.h segment.h thunk.c\ | 99 | Makefile elf.h linux_bin.h segment.h thunk.c\ |
94 | -TODO elfload.c main.c signal.c thunk.h\ | ||
95 | -cpu-i386.h gemu.h op-i386.c opc-i386.h syscall-i386.h translate-i386.c\ | 100 | +elfload.c main.c signal.c thunk.h\ |
101 | +cpu-i386.h qemu.h op-i386.c opc-i386.h syscall-i386.h translate-i386.c\ | ||
96 | dis-asm.h gen-i386.h op-i386.h syscall.c\ | 102 | dis-asm.h gen-i386.h op-i386.h syscall.c\ |
97 | dis-buf.c i386-dis.c opreg_template.h syscall_defs.h\ | 103 | dis-buf.c i386-dis.c opreg_template.h syscall_defs.h\ |
98 | -i386.ld ppc.ld exec-i386.h exec-i386.c configure VERSION \ | 104 | +i386.ld ppc.ld exec-i386.h exec-i386.c configure \ |
99 | tests/Makefile\ | 105 | tests/Makefile\ |
100 | tests/test-i386.c tests/test-i386-shift.h tests/test-i386.h\ | 106 | tests/test-i386.c tests/test-i386-shift.h tests/test-i386.h\ |
101 | tests/test-i386-muldiv.h tests/test-i386-code16.S\ | 107 | tests/test-i386-muldiv.h tests/test-i386-code16.S\ |
102 | tests/hello.c tests/hello tests/sha1.c \ | 108 | tests/hello.c tests/hello tests/sha1.c \ |
103 | -tests/testsig.c tests/testclone.c tests/testthread.c | 109 | +tests/testsig.c tests/testclone.c tests/testthread.c \ |
110 | +qemu-doc.texi qemu-doc.html | ||
104 | 111 | ||
105 | -FILE=gemu-$(VERSION) | 112 | +FILE=qemu-$(VERSION) |
106 | 113 | ||
107 | tar: | 114 | tar: |
108 | rm -rf /tmp/$(FILE) | 115 | rm -rf /tmp/$(FILE) |
README
0 → 100644
1 | +The QEMU x86 emulator | ||
2 | +--------------------- | ||
3 | + | ||
4 | +INSTALLATION | ||
5 | +------------ | ||
6 | + | ||
7 | +Type | ||
8 | + | ||
9 | + ./configure | ||
10 | + make | ||
11 | + | ||
12 | +to build qemu and libqemu.a. | ||
13 | + | ||
14 | +Type | ||
15 | + | ||
16 | + make install | ||
17 | + | ||
18 | +to install qemu in /usr/local/bin | ||
19 | + | ||
20 | + | ||
21 | +Documentation | ||
22 | +------------- | ||
23 | + | ||
24 | +Read the documentation in qemu-doc.html. | ||
25 | + | ||
26 | + | ||
27 | +Fabrice Bellard. | ||
0 | \ No newline at end of file | 28 | \ No newline at end of file |
VERSION
0 → 100644
configure
1 | #!/bin/sh | 1 | #!/bin/sh |
2 | # | 2 | # |
3 | -# gemu configure script (c) 2003 Fabrice Bellard | 3 | +# qemu configure script (c) 2003 Fabrice Bellard |
4 | # | 4 | # |
5 | # set temporary file name | 5 | # set temporary file name |
6 | if test ! -z "$TMPDIR" ; then | 6 | if test ! -z "$TMPDIR" ; then |
@@ -11,11 +11,11 @@ else | @@ -11,11 +11,11 @@ else | ||
11 | TMPDIR1="/tmp" | 11 | TMPDIR1="/tmp" |
12 | fi | 12 | fi |
13 | 13 | ||
14 | -TMPC="${TMPDIR1}/gemu-conf-${RANDOM}-$$-${RANDOM}.c" | ||
15 | -TMPO="${TMPDIR1}/gemu-conf-${RANDOM}-$$-${RANDOM}.o" | ||
16 | -TMPE="${TMPDIR1}/gemu-conf-${RANDOM}-$$-${RANDOM}" | ||
17 | -TMPS="${TMPDIR1}/gemu-conf-${RANDOM}-$$-${RANDOM}.S" | ||
18 | -TMPH="${TMPDIR1}/gemu-conf-${RANDOM}-$$-${RANDOM}.h" | 14 | +TMPC="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.c" |
15 | +TMPO="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.o" | ||
16 | +TMPE="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}" | ||
17 | +TMPS="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.S" | ||
18 | +TMPH="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.h" | ||
19 | 19 | ||
20 | # default parameters | 20 | # default parameters |
21 | prefix="/usr/local" | 21 | prefix="/usr/local" |
@@ -195,7 +195,7 @@ echo "# Automatically generated by configure - do not modify" > config.mak | @@ -195,7 +195,7 @@ echo "# Automatically generated by configure - do not modify" > config.mak | ||
195 | echo "/* Automatically generated by configure - do not modify */" > $TMPH | 195 | echo "/* Automatically generated by configure - do not modify */" > $TMPH |
196 | 196 | ||
197 | echo "prefix=$prefix" >> config.mak | 197 | echo "prefix=$prefix" >> config.mak |
198 | -echo "#define CONFIG_GEMU_PREFIX \"$prefix\"" >> $TMPH | 198 | +echo "#define CONFIG_QEMU_PREFIX \"$prefix\"" >> $TMPH |
199 | echo "MAKE=$make" >> config.mak | 199 | echo "MAKE=$make" >> config.mak |
200 | echo "CC=$cc" >> config.mak | 200 | echo "CC=$cc" >> config.mak |
201 | echo "GCC_MAJOR=$gcc_major" >> config.mak | 201 | echo "GCC_MAJOR=$gcc_major" >> config.mak |
@@ -227,7 +227,7 @@ fi | @@ -227,7 +227,7 @@ fi | ||
227 | echo -n "VERSION=" >>config.mak | 227 | echo -n "VERSION=" >>config.mak |
228 | head $source_path/VERSION >>config.mak | 228 | head $source_path/VERSION >>config.mak |
229 | echo "" >>config.mak | 229 | echo "" >>config.mak |
230 | -echo -n "#define GEMU_VERSION \"" >> $TMPH | 230 | +echo -n "#define QEMU_VERSION \"" >> $TMPH |
231 | head $source_path/VERSION >> $TMPH | 231 | head $source_path/VERSION >> $TMPH |
232 | echo "\"" >> $TMPH | 232 | echo "\"" >> $TMPH |
233 | if test "$network" = "yes" ; then | 233 | if test "$network" = "yes" ; then |
cpu-i386.h
1 | -/* NOTE: this header is included in op-i386.c where global register | ||
2 | - variable are used. Care must be used when including glibc headers. | 1 | +/* |
2 | + * i386 virtual CPU header | ||
3 | + * | ||
4 | + * Copyright (c) 2003 Fabrice Bellard | ||
5 | + * | ||
6 | + * This library is free software; you can redistribute it and/or | ||
7 | + * modify it under the terms of the GNU Lesser General Public | ||
8 | + * License as published by the Free Software Foundation; either | ||
9 | + * version 2 of the License, or (at your option) any later version. | ||
10 | + * | ||
11 | + * This library 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 GNU | ||
14 | + * Lesser General Public License for more details. | ||
15 | + * | ||
16 | + * You should have received a copy of the GNU Lesser General Public | ||
17 | + * License along with this library; if not, write to the Free Software | ||
18 | + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
3 | */ | 19 | */ |
4 | #ifndef CPU_I386_H | 20 | #ifndef CPU_I386_H |
5 | #define CPU_I386_H | 21 | #define CPU_I386_H |
exec-i386.c
@@ -3,19 +3,19 @@ | @@ -3,19 +3,19 @@ | ||
3 | * | 3 | * |
4 | * Copyright (c) 2003 Fabrice Bellard | 4 | * Copyright (c) 2003 Fabrice Bellard |
5 | * | 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 2 of the License, or | ||
9 | - * (at your option) any later version. | 6 | + * This library is free software; you can redistribute it and/or |
7 | + * modify it under the terms of the GNU Lesser General Public | ||
8 | + * License as published by the Free Software Foundation; either | ||
9 | + * version 2 of the License, or (at your option) any later version. | ||
10 | * | 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. | 11 | + * This library 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 GNU | ||
14 | + * Lesser General Public License for more details. | ||
15 | * | 15 | * |
16 | - * You should have received a copy of the GNU General Public License | ||
17 | - * along with this program; if not, write to the Free Software | ||
18 | - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | 16 | + * You should have received a copy of the GNU Lesser General Public |
17 | + * License along with this library; if not, write to the Free Software | ||
18 | + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | */ | 19 | */ |
20 | #include "exec-i386.h" | 20 | #include "exec-i386.h" |
21 | 21 |
exec-i386.h
1 | -/* i386 execution defines */ | ||
2 | - | 1 | +/* |
2 | + * i386 execution defines | ||
3 | + * | ||
4 | + * Copyright (c) 2003 Fabrice Bellard | ||
5 | + * | ||
6 | + * This library is free software; you can redistribute it and/or | ||
7 | + * modify it under the terms of the GNU Lesser General Public | ||
8 | + * License as published by the Free Software Foundation; either | ||
9 | + * version 2 of the License, or (at your option) any later version. | ||
10 | + * | ||
11 | + * This library 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 GNU | ||
14 | + * Lesser General Public License for more details. | ||
15 | + * | ||
16 | + * You should have received a copy of the GNU Lesser General Public | ||
17 | + * License along with this library; if not, write to the Free Software | ||
18 | + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | + */ | ||
3 | typedef unsigned char uint8_t; | 20 | typedef unsigned char uint8_t; |
4 | typedef unsigned short uint16_t; | 21 | typedef unsigned short uint16_t; |
5 | typedef unsigned int uint32_t; | 22 | typedef unsigned int uint32_t; |
linux-user/elfload.c
linux-user/main.c
1 | /* | 1 | /* |
2 | - * gemu main | 2 | + * qemu main |
3 | * | 3 | * |
4 | * Copyright (c) 2003 Fabrice Bellard | 4 | * Copyright (c) 2003 Fabrice Bellard |
5 | * | 5 | * |
@@ -24,11 +24,11 @@ | @@ -24,11 +24,11 @@ | ||
24 | #include <errno.h> | 24 | #include <errno.h> |
25 | #include <unistd.h> | 25 | #include <unistd.h> |
26 | 26 | ||
27 | -#include "gemu.h" | 27 | +#include "qemu.h" |
28 | 28 | ||
29 | #include "cpu-i386.h" | 29 | #include "cpu-i386.h" |
30 | 30 | ||
31 | -#define DEBUG_LOGFILE "/tmp/gemu.log" | 31 | +#define DEBUG_LOGFILE "/tmp/qemu.log" |
32 | 32 | ||
33 | FILE *logfile = NULL; | 33 | FILE *logfile = NULL; |
34 | int loglevel; | 34 | int loglevel; |
@@ -171,8 +171,8 @@ void cpu_loop(struct CPUX86State *env) | @@ -171,8 +171,8 @@ void cpu_loop(struct CPUX86State *env) | ||
171 | 171 | ||
172 | void usage(void) | 172 | void usage(void) |
173 | { | 173 | { |
174 | - printf("gemu version " GEMU_VERSION ", Copyright (c) 2003 Fabrice Bellard\n" | ||
175 | - "usage: gemu [-d] program [arguments...]\n" | 174 | + printf("qemu version " QEMU_VERSION ", Copyright (c) 2003 Fabrice Bellard\n" |
175 | + "usage: qemu [-d] program [arguments...]\n" | ||
176 | "Linux x86 emulator\n" | 176 | "Linux x86 emulator\n" |
177 | ); | 177 | ); |
178 | exit(1); | 178 | exit(1); |
linux-user/signal.c
@@ -25,9 +25,7 @@ | @@ -25,9 +25,7 @@ | ||
25 | #include <errno.h> | 25 | #include <errno.h> |
26 | #include <sys/ucontext.h> | 26 | #include <sys/ucontext.h> |
27 | 27 | ||
28 | -#include "gemu.h" | ||
29 | - | ||
30 | -/* signal handling inspired from em86. */ | 28 | +#include "qemu.h" |
31 | 29 | ||
32 | //#define DEBUG_SIGNAL | 30 | //#define DEBUG_SIGNAL |
33 | 31 |
linux-user/syscall.c
op-i386.c
@@ -3,19 +3,19 @@ | @@ -3,19 +3,19 @@ | ||
3 | * | 3 | * |
4 | * Copyright (c) 2003 Fabrice Bellard | 4 | * Copyright (c) 2003 Fabrice Bellard |
5 | * | 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 2 of the License, or | ||
9 | - * (at your option) any later version. | 6 | + * This library is free software; you can redistribute it and/or |
7 | + * modify it under the terms of the GNU Lesser General Public | ||
8 | + * License as published by the Free Software Foundation; either | ||
9 | + * version 2 of the License, or (at your option) any later version. | ||
10 | * | 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. | 11 | + * This library 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 GNU | ||
14 | + * Lesser General Public License for more details. | ||
15 | * | 15 | * |
16 | - * You should have received a copy of the GNU General Public License | ||
17 | - * along with this program; if not, write to the Free Software | ||
18 | - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | 16 | + * You should have received a copy of the GNU Lesser General Public |
17 | + * License along with this library; if not, write to the Free Software | ||
18 | + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | */ | 19 | */ |
20 | #include "exec-i386.h" | 20 | #include "exec-i386.h" |
21 | 21 |
tests/Makefile
@@ -8,7 +8,7 @@ TESTS=testclone testsig testthread sha1-i386 test-i386 | @@ -8,7 +8,7 @@ TESTS=testclone testsig testthread sha1-i386 test-i386 | ||
8 | endif | 8 | endif |
9 | TESTS+=sha1 | 9 | TESTS+=sha1 |
10 | 10 | ||
11 | -GEMU=../gemu | 11 | +QEMU=../qemu |
12 | 12 | ||
13 | all: $(TESTS) | 13 | all: $(TESTS) |
14 | 14 | ||
@@ -34,7 +34,7 @@ test: test-i386 | @@ -34,7 +34,7 @@ test: test-i386 | ||
34 | ifeq ($(ARCH),i386) | 34 | ifeq ($(ARCH),i386) |
35 | ./test-i386 > test-i386.ref | 35 | ./test-i386 > test-i386.ref |
36 | endif | 36 | endif |
37 | - $(GEMU) test-i386 > test-i386.out | 37 | + $(QEMU) test-i386 > test-i386.out |
38 | @if diff -u test-i386.ref test-i386.out ; then echo "Auto Test OK"; fi | 38 | @if diff -u test-i386.ref test-i386.out ; then echo "Auto Test OK"; fi |
39 | 39 | ||
40 | # speed test | 40 | # speed test |
@@ -46,7 +46,7 @@ sha1: sha1.c | @@ -46,7 +46,7 @@ sha1: sha1.c | ||
46 | 46 | ||
47 | speed: sha1 sha1-i386 | 47 | speed: sha1 sha1-i386 |
48 | time ./sha1 | 48 | time ./sha1 |
49 | - time $(GEMU) ./sha1-i386 | 49 | + time $(QEMU) ./sha1-i386 |
50 | 50 | ||
51 | clean: | 51 | clean: |
52 | rm -f *~ *.o $(TESTS) | 52 | rm -f *~ *.o $(TESTS) |
thunk.c
@@ -3,25 +3,25 @@ | @@ -3,25 +3,25 @@ | ||
3 | * | 3 | * |
4 | * Copyright (c) 2003 Fabrice Bellard | 4 | * Copyright (c) 2003 Fabrice Bellard |
5 | * | 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 2 of the License, or | ||
9 | - * (at your option) any later version. | 6 | + * This library is free software; you can redistribute it and/or |
7 | + * modify it under the terms of the GNU Lesser General Public | ||
8 | + * License as published by the Free Software Foundation; either | ||
9 | + * version 2 of the License, or (at your option) any later version. | ||
10 | * | 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. | 11 | + * This library 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 GNU | ||
14 | + * Lesser General Public License for more details. | ||
15 | * | 15 | * |
16 | - * You should have received a copy of the GNU General Public License | ||
17 | - * along with this program; if not, write to the Free Software | ||
18 | - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | 16 | + * You should have received a copy of the GNU Lesser General Public |
17 | + * License along with this library; if not, write to the Free Software | ||
18 | + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | */ | 19 | */ |
20 | #include <stdlib.h> | 20 | #include <stdlib.h> |
21 | #include <stdio.h> | 21 | #include <stdio.h> |
22 | #include <stdarg.h> | 22 | #include <stdarg.h> |
23 | 23 | ||
24 | -#include "gemu.h" | 24 | +#include "qemu.h" |
25 | #include "thunk.h" | 25 | #include "thunk.h" |
26 | 26 | ||
27 | //#define DEBUG | 27 | //#define DEBUG |
thunk.h
1 | +/* | ||
2 | + * Generic thunking code to convert data between host and target CPU | ||
3 | + * | ||
4 | + * Copyright (c) 2003 Fabrice Bellard | ||
5 | + * | ||
6 | + * This library is free software; you can redistribute it and/or | ||
7 | + * modify it under the terms of the GNU Lesser General Public | ||
8 | + * License as published by the Free Software Foundation; either | ||
9 | + * version 2 of the License, or (at your option) any later version. | ||
10 | + * | ||
11 | + * This library 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 GNU | ||
14 | + * Lesser General Public License for more details. | ||
15 | + * | ||
16 | + * You should have received a copy of the GNU Lesser General Public | ||
17 | + * License along with this library; if not, write to the Free Software | ||
18 | + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | + */ | ||
1 | #ifndef THUNK_H | 20 | #ifndef THUNK_H |
2 | #define THUNK_H | 21 | #define THUNK_H |
3 | 22 |
translate-i386.c
@@ -3,19 +3,19 @@ | @@ -3,19 +3,19 @@ | ||
3 | * | 3 | * |
4 | * Copyright (c) 2003 Fabrice Bellard | 4 | * Copyright (c) 2003 Fabrice Bellard |
5 | * | 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 2 of the License, or | ||
9 | - * (at your option) any later version. | 6 | + * This library is free software; you can redistribute it and/or |
7 | + * modify it under the terms of the GNU Lesser General Public | ||
8 | + * License as published by the Free Software Foundation; either | ||
9 | + * version 2 of the License, or (at your option) any later version. | ||
10 | * | 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. | 11 | + * This library 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 GNU | ||
14 | + * Lesser General Public License for more details. | ||
15 | * | 15 | * |
16 | - * You should have received a copy of the GNU General Public License | ||
17 | - * along with this program; if not, write to the Free Software | ||
18 | - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | 16 | + * You should have received a copy of the GNU Lesser General Public |
17 | + * License along with this library; if not, write to the Free Software | ||
18 | + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | */ | 19 | */ |
20 | #include <stdarg.h> | 20 | #include <stdarg.h> |
21 | #include <stdlib.h> | 21 | #include <stdlib.h> |