Win64 patch 1/13

Ge van Geldorp ge at gse.nl
Mon Jun 19 13:03:32 CDT 2006


Changelog:
  Ge van Geldorp <ge at gse.nl>
  - Prepare build system for Win64 specific .c and .spec files

Index: configure.ac
===================================================================
RCS file: /home/wine/wine/configure.ac,v
retrieving revision 1.456
diff -u -r1.456 configure.ac
--- configure.ac	15 Mar 2006 11:13:39 -0000	1.456
+++ configure.ac	19 Jun 2006 16:33:48 -0000
@@ -62,6 +62,14 @@
   WIN16_INSTALL=""
 fi
 
+AC_SUBST(WIN64_FILES,"\$(WIN64_FILES)")
+AC_SUBST(MAINSPEC,"\$(SPEC_SRC64)")
+if test "x$enable_win64" != "xyes"
+then
+  WIN64_FILES=""
+  MAINSPEC="\$(SPEC_SRC32)"
+fi
+
 dnl **** Check for some programs ****
 
 AC_PROG_MAKE_SET
@@ -1000,7 +1008,7 @@
         fi
 
         case $host_cpu in
-          *i[[3456789]]86*)
+          *i[[3456789]]86* | x86_64)
             AC_CACHE_CHECK([whether we can relocate the executable to 0x7bf00000], ac_cv_ld_reloc_exec,
               [WINE_TRY_CFLAGS([-Wl,--section-start,.interp=0x7bf00400],
                                ac_cv_ld_reloc_exec="yes", ac_cv_ld_reloc_exec="no")])
Index: dlls/Makedll.rules.in
===================================================================
RCS file: /home/wine/wine/dlls/Makedll.rules.in,v
retrieving revision 1.85
diff -u -r1.85 Makedll.rules.in
--- dlls/Makedll.rules.in	16 Mar 2006 20:41:41 -0000	1.85
+++ dlls/Makedll.rules.in	19 Jun 2006 16:33:48 -0000
@@ -15,10 +15,13 @@
 IMPLIBEXT   = @IMPLIBEXT@
 DEFS        = -D__WINESRC__ $(DLLDEFS) $(EXTRADEFS)
 BASEMODULE  = $(MODULE:%.dll=%)
-MAINSPEC    = $(BASEMODULE).spec
+SPEC_SRC32  = $(BASEMODULE).spec
+SPEC_SRC64  ?= $(SPEC_SRC32)
+MAINSPEC    = @MAINSPEC@
 SPEC_DEF    = lib$(BASEMODULE).def
 WIN16_FILES = $(SPEC_SRCS16:.spec=.spec.o) $(C_SRCS16:.c=.o) $(EXTRA_OBJS16)
-ALL_OBJS    = @WIN16_FILES@ $(OBJS) $(RC_SRCS:.rc=.res)
+WIN64_FILES = $(C_SRCS64:.c=.o) $(EXTRA_OBJS64)
+ALL_OBJS    = @WIN16_FILES@ @WIN64_FILES@ $(OBJS) $(RC_SRCS:.rc=.res)
 ALL_LIBS    = -L$(LIBDIR) -lwine $(EXTRALIBS) $(LIBPORT) $(LDFLAGS) $(LIBS)
 ALL_IMPORTS = $(DELAYIMPORTS) $(IMPORTS)
 IMPLIB_OBJS = $(IMPLIB_SRCS:.c=.o)
Index: programs/Makeprog.rules.in
===================================================================
RCS file: /home/wine/wine/programs/Makeprog.rules.in,v
retrieving revision 1.43
diff -u -r1.43 Makeprog.rules.in
--- programs/Makeprog.rules.in	16 Mar 2006 20:41:41 -0000	1.43
+++ programs/Makeprog.rules.in	19 Jun 2006 16:33:48 -0000
@@ -12,6 +12,8 @@
 DLLDEFS     = @DLLDEFS@
 DLLFLAGS    = @DLLFLAGS@
 DEFS        = $(DLLDEFS) $(EXTRADEFS)
+WIN64_FILES = $(C_SRCS64:.c=.o) $(EXTRA_OBJS64)
+ALL_OBJS    = @WIN64_FILES@ $(OBJS)
 ALL_IMPORTS = $(DELAYIMPORTS) $(IMPORTS)
 ALL_LIBS    = $(ALL_IMPORTS:%=-l%) -L$(LIBDIR) -lwine $(EXTRALIBS) $(LIBPORT) $(LDFLAGS) $(LIBS)
 BASEMODULE  = $(MODULE:.exe=)
@@ -23,16 +25,16 @@
 
 # Rules for .so main module
 
-$(MODULE).so: $(OBJS) $(RC_SRCS:.rc=.res) Makefile.in
-	$(WINEGCC) -B$(TOOLSDIR)/tools/winebuild $(APPMODE) $(OBJS) $(RC_SRCS:.rc=.res) -o $@ -L$(DLLDIR) $(ALL_LIBS) $(DELAYIMPORTS:%=-Wb,-d%)
+$(MODULE).so: $(ALL_OBJS) $(RC_SRCS:.rc=.res) Makefile.in
+	$(WINEGCC) -B$(TOOLSDIR)/tools/winebuild $(APPMODE) $(ALL_OBJS) $(RC_SRCS:.rc=.res) -o $@ -L$(DLLDIR) $(ALL_LIBS) $(DELAYIMPORTS:%=-Wb,-d%)
 
 $(BASEMODULE): $(WINEWRAPPER)
 	$(RM) $@ && $(LN_S) $(WINEWRAPPER) $@
 
 # Rules for .exe main module
 
-$(MODULE): $(OBJS) $(RCOBJS) Makefile.in
-	$(CC) $(APPMODE) $(OBJS) $(RCOBJS) -o $@ $(ALL_LIBS)
+$(MODULE): $(ALL_OBJS) $(RCOBJS) Makefile.in
+	$(CC) $(APPMODE) $(ALL_OBJS) $(RCOBJS) -o $@ $(ALL_LIBS)
 
 # Rules for testing
 



More information about the wine-patches mailing list