Wine on Sparc

Hiji hijinio at yahoo.com
Thu May 26 01:02:00 CDT 2005


As an end-user, I'd find any screenshots of notepad
running amazing. :)  Got any?

Hiji

--- Eric Frias <efrias at syncad.com> wrote:

> Chuck Hall wrote:
> > On Wed, 25 May 2005, Eric Frias wrote:
> >>I'll be trying to get the current wine running
> this afternoon; I'll post 
> >>something when it's working.
> > 
> > I look forward to hearing how this turns out.
> 
> It actually went more smoothly than I expected. 
> I've attached a patch 
> with the minimal changes I needed to get 'notepad'
> running.  As you can 
> see, I disabled winedbg, oleaut32, and dbghelp
> because they are missing 
> some assembly bits, and they aren't strictly
> necessary for most winelib 
> applications.  I haven't tried compiling or running
> anything big with 
> this, so it may be missing a few patches... but it's
> a start.
> 
> Eric
> > Index: programs/Makefile.in
>
===================================================================
> --- programs/Makefile.in	(revision 30735)
> +++ programs/Makefile.in	(working copy)
> @@ -27,7 +27,6 @@
>  	winebrowser \
>  	winecfg \
>  	wineconsole \
> -	winedbg \
>  	winefile \
>  	winemenubuilder \
>  	winemine \
> @@ -58,7 +57,6 @@
>  	winebrowser \
>  	winecfg \
>  	wineconsole \
> -	winedbg \
>  	winefile \
>  	winemenubuilder \
>  	winemine \
> @@ -81,7 +79,6 @@
>  	winebrowser \
>  	winecfg \
>  	wineconsole \
> -	winedbg \
>  	winefile \
>  	winemine \
>  	winepath \
> @@ -112,7 +109,6 @@
>  	winebrowser.exe$(DLLEXT) \
>  	winecfg.exe$(DLLEXT) \
>  	wineconsole.exe$(DLLEXT) \
> -	winedbg.exe$(DLLEXT) \
>  	winefile.exe$(DLLEXT) \
>  	winemenubuilder.exe$(DLLEXT) \
>  	winemine.exe$(DLLEXT) \
> Index: programs/winetest/Makefile.in
>
===================================================================
> --- programs/winetest/Makefile.in	(revision 30735)
> +++ programs/winetest/Makefile.in	(working copy)
> @@ -39,7 +39,6 @@
>  	netapi32_test.exe$(DLLEXT) \
>  	ntdll_test.exe$(DLLEXT) \
>  	ole32_test.exe$(DLLEXT) \
> -	oleaut32_test.exe$(DLLEXT) \
>  	psapi_test.exe$(DLLEXT) \
>  	quartz_test.exe$(DLLEXT) \
>  	rpcrt4_test.exe$(DLLEXT) \
> Index: dlls/ntdll/signal_sparc.c
>
===================================================================
> --- dlls/ntdll/signal_sparc.c	(revision 30735)
> +++ dlls/ntdll/signal_sparc.c	(working copy)
> @@ -388,7 +388,7 @@
>  
>      /* wait with 0 timeout, will only return once
> the thread is no longer suspended */
>      timeout.QuadPart = 0;
> -    NTDLL_wait_for_multiple_objects( 0, NULL, 0,
> &timeout );
> +    NTDLL_wait_for_multiple_objects( 0, NULL, 0,
> &timeout, 0 );
>  }
>  
>  
> Index: dlls/ole32/storage32.c
>
===================================================================
> --- dlls/ole32/storage32.c	(revision 30735)
> +++ dlls/ole32/storage32.c	(working copy)
> @@ -4130,8 +4130,8 @@
>      ULARGE_INTEGER tmp;
>  
>      memcpy(&tmp, buffer + offset,
> sizeof(ULARGE_INTEGER));
> -    value->LowPart = htole32(tmp.HighPart);
> -    value->HighPart = htole32(tmp.LowPart);
> +    value->u.LowPart = htole32(tmp.u.HighPart);
> +    value->u.HighPart = htole32(tmp.u.LowPart);
>  #else
>      memcpy(value, buffer + offset,
> sizeof(ULARGE_INTEGER));
>  #endif
> @@ -4143,8 +4143,8 @@
>  #ifdef WORDS_BIGENDIAN
>      ULARGE_INTEGER tmp;
>  
> -    tmp.LowPart = htole32(value->HighPart);
> -    tmp.HighPart = htole32(value->LowPart);
> +    tmp.u.LowPart = htole32(value->u.HighPart);
> +    tmp.u.HighPart = htole32(value->u.LowPart);
>      memcpy(buffer + offset, &tmp,
> sizeof(ULARGE_INTEGER));
>  #else
>      memcpy(buffer + offset, value,
> sizeof(ULARGE_INTEGER));
> Index: dlls/Makefile.in
>
===================================================================
> --- dlls/Makefile.in	(revision 30735)
> +++ dlls/Makefile.in	(working copy)
> @@ -36,7 +36,6 @@
>  	d3dim \
>  	d3drm \
>  	d3dxof \
> -	dbghelp \
>  	dciman32 \
>  	devenum \
>  	dinput \
> @@ -100,7 +99,6 @@
>  	odbccp32 \
>  	ole32 \
>  	oleacc \
> -	oleaut32 \
>  	olecli \
>  	oledlg \
>  	olepro32 \
> @@ -270,7 +268,6 @@
>  	d3dim.dll.so \
>  	d3drm.dll.so \
>  	d3dxof.dll.so \
> -	dbghelp.dll.so \
>  	dciman32.dll.so \
>  	devenum.dll.so \
>  	dinput.dll.so \
> @@ -346,7 +343,6 @@
>  	odbccp32.dll.so \
>  	ole32.dll.so \
>  	oleacc.dll.so \
> -	oleaut32.dll.so \
>  	olecli32.dll.so \
>  	oledlg.dll.so \
>  	olepro32.dll.so \
> Index: tools/winebuild/import.c
>
===================================================================
> --- tools/winebuild/import.c	(revision 30735)
> +++ tools/winebuild/import.c	(working copy)
> @@ -753,7 +753,11 @@
>      fprintf( outfile, "#ifndef __GNUC__\nstatic
> void __asm__dummy_import(void) {\n#endif\n\n" );
>      pos = (sizeof(void *) + 2*sizeof(unsigned int)
> + sizeof(const char *) + sizeof(void *)) *
>              (nb_imm + 1);  /* offset of
> imports.data from start of imports */
> +#if defined(__sun) && defined(__sparc)
> +    fprintf( outfile,
>
"asm(\".section\\t\\\".data.rel.local\\\"\\n\\t.align
> %d\\n\"\n", get_alignment(8) );
> +#else
>      fprintf( outfile, "asm(\".text\\n\\t.align
> %d\\n\"\n", get_alignment(8) );
> +#endif
>      fprintf( outfile, "    \"" __ASM_NAME("%s")
> ":\\n\"\n", import_thunks);
>  
>      for (i = 0; i < nb_imports; i++)
> @@ -1057,7 +1061,11 @@
>      }
>      output_function_size( outfile,
> delayed_import_loaders );
>  
> +#if defined(__sun) && defined(__sparc)
> +    fprintf( outfile, "\n   
> \".section\\t\\\".data.rel\\\"\\n\\t.align
> %d\\n\"\n", get_alignment(8) );
> +#else
>      fprintf( outfile, "\n    \".align %d\\n\"\n",
> get_alignment(8) );
> +#endif
>      fprintf( outfile, "    \"" __ASM_NAME("%s")
> ":\\n\"\n", delayed_import_thunks);
>      pos = nb_delayed * 32;
>      for (i = 0; i < nb_imports; i++)
> 


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 



More information about the wine-devel mailing list