Author: fireball Date: Fri Jun 1 23:21:45 2007 New Revision: 26962
URL: http://svn.reactos.org/svn/reactos?rev=26962&view=rev Log: - Put precompiled binaries of the ofwstub needed to load freeldr. - Make changes to makefile.auto, so that "make freeldr" build olpcros.elf in the root dir. In order to use this feature, you must be building on a Windows host, and must copy ld.exe from cygwin to rosbe\bin\cgld.exe, and also copy a cygwin.dll into the same folder. This hacky solution will be thrown away once vlink is imported.
Added: branches/olpc/boot/freeldr/freeldr/arch/i386/ofwstub/ branches/olpc/boot/freeldr/freeldr/arch/i386/ofwstub/binary/ branches/olpc/boot/freeldr/freeldr/arch/i386/ofwstub/binary/freeldr_ofw.o (with props) branches/olpc/boot/freeldr/freeldr/arch/i386/ofwstub/binary/libobp.a (with props) branches/olpc/boot/freeldr/freeldr/arch/i386/ofwstub/binary/ofwboot.o (with props) branches/olpc/boot/freeldr/freeldr/arch/i386/ofwstub/binary/start.o (with props) Modified: branches/olpc/tools/rbuild/backend/mingw/modulehandler.cpp
Added: branches/olpc/boot/freeldr/freeldr/arch/i386/ofwstub/binary/freeldr_ofw.o URL: http://svn.reactos.org/svn/reactos/branches/olpc/boot/freeldr/freeldr/arch/i... ============================================================================== Binary file - no diff available.
Propchange: branches/olpc/boot/freeldr/freeldr/arch/i386/ofwstub/binary/freeldr_ofw.o ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream
Added: branches/olpc/boot/freeldr/freeldr/arch/i386/ofwstub/binary/libobp.a URL: http://svn.reactos.org/svn/reactos/branches/olpc/boot/freeldr/freeldr/arch/i... ============================================================================== Binary file - no diff available.
Propchange: branches/olpc/boot/freeldr/freeldr/arch/i386/ofwstub/binary/libobp.a ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream
Added: branches/olpc/boot/freeldr/freeldr/arch/i386/ofwstub/binary/ofwboot.o URL: http://svn.reactos.org/svn/reactos/branches/olpc/boot/freeldr/freeldr/arch/i... ============================================================================== Binary file - no diff available.
Propchange: branches/olpc/boot/freeldr/freeldr/arch/i386/ofwstub/binary/ofwboot.o ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream
Added: branches/olpc/boot/freeldr/freeldr/arch/i386/ofwstub/binary/start.o URL: http://svn.reactos.org/svn/reactos/branches/olpc/boot/freeldr/freeldr/arch/i... ============================================================================== Binary file - no diff available.
Propchange: branches/olpc/boot/freeldr/freeldr/arch/i386/ofwstub/binary/start.o ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream
Modified: branches/olpc/tools/rbuild/backend/mingw/modulehandler.cpp URL: http://svn.reactos.org/svn/reactos/branches/olpc/tools/rbuild/backend/mingw/... ============================================================================== --- branches/olpc/tools/rbuild/backend/mingw/modulehandler.cpp (original) +++ branches/olpc/tools/rbuild/backend/mingw/modulehandler.cpp Fri Jun 1 23:21:45 2007 @@ -2955,9 +2955,29 @@ junk_tmp.c_str (), objectsMacro.c_str (), linkDepsMacro.c_str () ); + fprintf ( fMakefile, "\t${objcopy} -O binary %s $@\n", junk_tmp.c_str () ); + + fprintf ( fMakefile, + "\t${cp} $@ %s\n", + targetName.c_str () ); + + fprintf ( fMakefile, + "\t${objcopy} -I binary -B i386 -O elf32-i386 %s freeldr-payload.elf\n", + targetName.c_str ()); + + fprintf ( fMakefile, + "\t${rm} %s\n", + targetName.c_str () ); + + /* FIXME: Hack, make use of vlink instead of an ugly cygwin-dependable ld! */ + fprintf ( fMakefile, + "\tcgld.exe -nostdlib -Bstatic -N -Ttext 0x100000 -o olpcros.elf boot\freeldr\freeldr\arch\i386\ofwstub\binary\start.o boot\freeldr\freeldr\arch\i386\ofwstub\binary\ofwboot.o boot\freeldr\freeldr\arch\i386\ofwstub\binary\freeldr_ofw.o boot\freeldr\freeldr\arch\i386\ofwstub\binary\libobp.a freeldr-payload.elf\n"); + + + GenerateBuildMapCode ( junk_tmp.c_str() ); fprintf ( fMakefile, "\t-@${rm} %s 2>$(NUL)\n",