
     Win32 PE executable with DJGPP GNU C/C++ compiller.

                        Source files.


     To  compile  type 'make'. After it, to create all libraries
type 'make lib WINDIR=C:/WINDOWS'.  'make' must be DJGPP GNU make.

 Notes:


 o  If  you  want  to  change  DOS  stub  or  first part of PE
   header  you must translate pe_start.s to binary. Type 'make
   pe.bin'  Convert  it to hex and insert into make_pe.cpp, as
   an array 'pe_header[]'.

 o  Assembler  files  requist  as.exe  from  BNU 2.10 but they
   content  commented  lines  for early versions. E.g. 'fstcww
   (%esp)' now is replaced in 'fstcw (%esp)'

 o   Creating  libraries   borrows  some  time,  because  for
   each  function  in  each  library  assembler  file  will be
   created,  exec "as.exe" and exec "ar.exe". Up to ten minuit
   per library for big library and slow machin.


 Files:

     copying.txt -- GNU General Public License
     crt0pe.s    -- Startup file.
     dll2s.cpp   -- Uses to create GNU .a library from any PE DLL.
     make_pe.cpp -- Makes PE executable  from COFF a.out
     makefile    -- Make script.
     mdef.h      -- My default header
     mstring.h   -- Inline assembler's realization of  <string.h>
     realloc.s,
     nd.s        -- Library with default new and delete operators for Windows.
     pe_m.h      -- COFF and PE headers definetion.
     pe_start.s  -- Header file and DOS stub for PE executable.
     readme      -- This file.


                                             Best regard, Max Feoktistov.
                                             E-mail: max@feokt.spb.ru
