Update the porting doc

Dimitrie O. Paun dimi at intelliware.ca
Mon Sep 15 11:06:36 CDT 2003


ChangeLog
    Dimitrie O. Paun <dpaun at rogers.com>
    Update the porting documentation.


Index: documentation/porting.sgml
===================================================================
RCS file: /var/cvs/wine/documentation/porting.sgml,v
retrieving revision 1.8
diff -u -r1.8 porting.sgml
--- documentation/porting.sgml	21 Jul 2003 22:42:50 -0000	1.8
+++ documentation/porting.sgml	15 Sep 2003 16:05:01 -0000
@@ -6,44 +6,9 @@
       <title>Porting</title>
 
       <para>
-        written by ???
+	This document provides a few tips on porting Wine to your
+	favorite operating system. 
       </para>
-      <para>
-        (Extracted from <filename>wine/documentation/how-to-port</filename>)
-      </para>
-
-      <sect2>
-        <title>What is this?</title>
-
-        <para>
-          This note is a short description of:
-        </para>
-
-        <itemizedlist>
-          <listitem>
-            <para>
-              How to port Wine to your favorite operating system
-            </para>
-          </listitem>
-          <listitem>
-            <para>
-              Why you probably shouldn't use <symbol>#ifdef MyOS</symbol>
-            </para>
-          </listitem>
-          <listitem>
-            <para>
-              What to do instead.
-            </para>
-          </listitem>
-        </itemizedlist>
-
-        <para>
-          This document does not say a thing about how to port Wine to
-          non-386 operating systems, though.  You would need a CPU
-          emulator.  Let's get Wine into a better shape on 386 first,
-          OK?
-        </para>
-      </sect2>
 
       <sect2>
         <title>Why <symbol>#ifdef MyOS</symbol> is probably a mistake.</title>
@@ -90,16 +55,11 @@
               bugs in header files, library functions, the compiler, ...
             </para>
           </listitem>
-          <listitem>
-            <para>
-              (you name it)
-            </para>
-          </listitem>
         </itemizedlist>
         <para>
           You will need Gnu Autoconf, which you can get from your
           friendly Gnu mirror.  This program takes Wine's
-          <filename>configure.in</filename> file and produces a
+          <filename>configure.ac</filename> file and produces a
           <filename>configure</filename> shell script that users use
           to configure Wine to their system.
         </para>
@@ -107,7 +67,11 @@
           There <emphasis>are</emphasis> exceptions to the "avoid
           <symbol>#ifdef MyOS</symbol>" rule. Wine, for example, needs
           the internals of the signal stack -- that cannot easily be
-          described in terms of features.
+          described in terms of features. Moreover, you can not use
+	  <filename>autoconf</filename>'s <symbol>HAVE_*</symbol>
+	  symbols in Wine's headers, as these may be used by Winelib
+	  users who may not be using a <filename>configure</filename>
+	  script.
         </para>
         <para>
           Let's now turn to specific porting problems and how to solve
@@ -246,198 +210,6 @@
         </para>
 
       </sect2>
-    </sect1>
-
-    <sect1 id="os2-wine">
-      <title>Running & Compiling Wine in OS/2</title>
-
-      <para>
-        Written by &name-robert-pouliot; <email>&email-robert-pouliot;</email>,
-        January 9, 1997
-      </para>
-      <para>
-        (Extracted from <filename>wine/documentation/wine_os2</filename>)
-      </para>
-
-      <para>
-        If you want to help the port of Wine to OS/2, send me a
-        message at <email>krynos at clic.net</email> I currently don't
-        want beta testers. It must work before we can test it.
-      </para>
-      <para>
-        Here is what you need to (try to) compile Wine for OS/2:
-      </para>
-
-      <itemizedlist>
-        <listitem>
-          <para>
-            EMX 0.9c (fix 2)
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            XFree86 3.2 OS/2 (with development libraries)
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            <command>bash</command>, gnu <command>make</command>,
-            <command>grep</command>, <command>tar</command>,
-            <command>bison</command>, <command>flex</command>
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            <command>sed</command> (a working copy of)
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            <command>diff</command> and <command>patch</command>
-            are recommended
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            Lots of disk space (about 40-50 megs after EMX and XFree installed)
-          </para>
-        </listitem>
-      </itemizedlist>
-
-      <para>
-        To compile:
-      </para>
-
-      <screen>
-<prompt>$ </prompt><userinput>sh</userinput>
-<prompt>$ </prompt><userinput>tools/make_os2.sh</userinput>
-<prompt>$ </prompt><userinput>make depend</userinput>
-<prompt>$ </prompt><userinput>make</userinput>
-<prompt>$ </prompt><userinput>emxbind wine</userinput>
-      </screen>
-
-      <para>
-        Currently:
-      </para>
-
-      <itemizedlist>
-        <listitem>
-          <para>
-            <command>configure</command> and <command>make depend</command> work...
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            <command>make</command> compiles (with a modified
-            Linux <filename>mman.h</filename>), but doesn't
-            link.
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            signal handling is horrible... (if any)
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            EMX doesn't support <function>mmap</function> (and
-            related), SysV IPC and <function>stafs()</function>
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            XFree86/OS2 3.2 doesn't support
-            <function>XShmQueryExtension()</function> and
-            <function>XShmPixmapFormat()</function> due to the same
-            lack in EMX...
-          </para>
-        </listitem>
-      </itemizedlist>
-
-      <para>
-        What needs to be redone:
-      </para>
-
-      <itemizedlist>
-        <listitem>
-          <para>
-            LDT (using <function>DosAllocSeg</function> in
-            <filename>memory/ldt.c</filename>) *
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            Implement <function>mmap()</function> and SysV IPC in EMX *
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            File functions,
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            I/O access (do it!),
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            Communication (modem),
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            Interrupt (if int unknown, call current RealMode one...),
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            Verify that everything is thread safe (how does Win95/NT handle multi-thread?),
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            Move X functions in some files (and make a wrapper, to use PM instead latter),
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            Return right CPU type,
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            Make winsock work
-          </para>
-        </listitem>
-      </itemizedlist>
-
-      <para>
-        The good things:
-      </para>
-
-      <itemizedlist>
-        <listitem>
-          <para>
-            OS/2 have DOS interrupts
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            OS/2 have I/O port access
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            OS/2 have multi-thread
-          </para>
-        </listitem>
-        <listitem>
-          <para>
-            Merlin have Open32 (to be used later...)
-          </para>
-        </listitem>
-      </itemizedlist>
     </sect1>
 
     </chapter>

-- 
Dimi.




More information about the wine-patches mailing list