Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
fc01b729
Commit
fc01b729
authored
May 12, 2002
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Added some support for cross-compilation using mingw32.
parent
b93f1114
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
111 additions
and
72 deletions
+111
-72
Make.rules.in
Make.rules.in
+31
-17
configure
configure
+0
-0
configure.ac
configure.ac
+45
-17
process.c
dlls/kernel/tests/process.c
+0
-22
Makefile.in
library/Makefile.in
+6
-2
Makeprog.rules.in
programs/Makeprog.rules.in
+20
-7
runtest
programs/winetest/runtest
+1
-3
Makefile.in
unicode/Makefile.in
+8
-4
No files found.
Make.rules.in
View file @
fc01b729
...
...
@@ -37,18 +37,23 @@ LIBS = @LIBS@
YACC = @YACC@
LEX = @LEX@
LEXLIB = @LEXLIB@
EXEEXT = @EXEEXT@
OBJEXT = @OBJEXT@
LIBEXT = @LIBEXT@
DLLEXT = @DLLEXT@
LDSHARED = @LDSHARED@
DLLWRAP = @DLLWRAP@
DLLWRAPFLAGS = --add-stdcall-alias
AR = @AR@ rc
RANLIB = @RANLIB@
STRIP = @STRIP@
WINDRES = @WINDRES@
LN_S = @LN_S@
TOOLSDIR = @TOOLSDIR@
DIVINCL = -I$(SRCDIR) -I. -I$(TOPSRCDIR)/include -I$(TOPOBJDIR)/include $(EXTRAINCL)
ALLCFLAGS = $(DIVINCL) $(CFLAGS) $(DEFS) $(OPTIONS) $(X_CFLAGS)
LDCOMBINE = @LDCOMBINE@
LDFLAGS = @LDFLAGS@
AR = ar rc
RM = rm -f
MV = mv
C2MAN = @C2MAN@
...
...
@@ -62,10 +67,10 @@ LINTFLAGS = @LINTFLAGS@
ALLLINTFLAGS = $(LINTFLAGS) $(DEFS) $(OPTIONS) $(DIVINCL)
MKINSTALLDIRS= $(TOPSRCDIR)/tools/mkinstalldirs
WINAPI_CHECK = $(TOPSRCDIR)/tools/winapi_check/winapi_check
WINEBUILD
= $(TOPOBJ
DIR)/tools/winebuild/winebuild
MAKEDEP
= $(TOPOBJ
DIR)/tools/makedep
WRC
= $(TOPOBJ
DIR)/tools/wrc/wrc
WMC
= $(TOPOBJ
DIR)/tools/wmc/wmc
WINEBUILD
= $(TOOLS
DIR)/tools/winebuild/winebuild
MAKEDEP
= $(TOOLS
DIR)/tools/makedep
WRC
= $(TOOLS
DIR)/tools/wrc/wrc
WMC
= $(TOOLS
DIR)/tools/wmc/wmc
LDPATH = @LDPATH@
DLLDIR = $(TOPOBJDIR)/dlls
LIBWINE = -L$(TOPOBJDIR)/library -lwine
...
...
@@ -100,7 +105,7 @@ dlldir = @libdir@/wine
prog_manext = 1
conf_manext = 5
includedir = @includedir@/wine
CLEAN_FILES = *.o *.a *.so *.ln \\\#*\\\# *~ *% .\\\#* *.bak *.orig *.rej \
CLEAN_FILES = *.o *.a *.so *.ln
*.$(LIBEXT)
\\\#*\\\# *~ *% .\\\#* *.bak *.orig *.rej \
*.flc *.spec.c *.spec.def *.glue.c y.tab.c y.tab.h @LEX_OUTPUT_ROOT@.c core
OBJS = $(C_SRCS:.c=.o) $(GEN_C_SRCS:.c=.o) $(GEN_ASM_SRCS:.s=.o) \
...
...
@@ -110,7 +115,7 @@ LINTS = $(C_SRCS:.c=.ln)
# Implicit rules
.SUFFIXES: .mc .rc .mc.rc .res .spec .spec.c .spec.def .glue.c .pl .ok
.SUFFIXES: .mc .rc .mc.rc .res .
res.o .
spec .spec.c .spec.def .glue.c .pl .ok
.c.o:
$(CC) -c $(ALLCFLAGS) -o $@ $<
...
...
@@ -127,11 +132,14 @@ LINTS = $(C_SRCS:.c=.ln)
.rc.res:
$(LDPATH) $(WRC) $(WRCFLAGS) $(DIVINCL) -o $@ -r $<
.res.res.o:
$(WINDRES) -i $< -o $@
.spec.spec.c:
$(LDPATH) $(WINEBUILD) @DLLFLAGS@ -
L$(DLLDIR) -
o $@ -spec $<
$(LDPATH) $(WINEBUILD) @DLLFLAGS@ -o $@ -spec $<
.spec.spec.def:
$(LDPATH) $(WINEBUILD) @DLLFLAGS@ -
L$(DLLDIR) -
o $@ -def $<
$(LDPATH) $(WINEBUILD) @DLLFLAGS@ -o $@ -def $<
.c.glue.c:
$(LDPATH) $(WINEBUILD) @DLLFLAGS@ -o $@ -glue $<
...
...
@@ -158,27 +166,27 @@ filter:
$(MODULE).tmp.o: $(SPEC_SRCS:.spec=.spec.o) $(OBJS) Makefile.in
$(LDCOMBINE) $(SPEC_SRCS:.spec=.spec.o) $(OBJS) -o $@
-
strip
--strip-unneeded $@
-
$(STRIP)
--strip-unneeded $@
# Rule to rebuild the resource compiler
$(WRC):
cd $(TO
POBJ
DIR)/tools/wrc && $(MAKE) wrc
cd $(TO
OLS
DIR)/tools/wrc && $(MAKE) wrc
# Rule to rebuild the message compiler
$(WMC):
cd $(TO
POBJ
DIR)/tools/wmc && $(MAKE) wmc
cd $(TO
OLS
DIR)/tools/wmc && $(MAKE) wmc
# Rule to rebuild the 'makedep' program
$(MAKEDEP):
cd $(TO
POBJ
DIR)/tools && $(MAKE) makedep
cd $(TO
OLS
DIR)/tools && $(MAKE) makedep
# Rule to rebuild the 'winebuild' program
$(WINEBUILD):
cd $(TO
POBJ
DIR)/tools/winebuild && $(MAKE) winebuild
cd $(TO
OLS
DIR)/tools/winebuild && $(MAKE) winebuild
# Rules for makefile
...
...
@@ -241,7 +249,7 @@ testclean:: $(SUBDIRS:%=%/__testclean__)
$(RM) $(TESTRESULTS)
clean:: $(SUBDIRS:%=%/__clean__) $(EXTRASUBDIRS:%=%/__clean__)
$(RM) $(CLEAN_FILES) $(GEN_C_SRCS) $(GEN_ASM_SRCS) $(RC_SRCS:.rc=.res) $(RC_SRCS16:.rc=.res) $(MC_SRCS:.mc=.mc.rc) $(TESTRESULTS) $(TESTLIST) $(PROGRAMS)
$(RM) $(CLEAN_FILES) $(GEN_C_SRCS) $(GEN_ASM_SRCS) $(RC_SRCS:.rc=.res) $(RC_SRCS16:.rc=.res) $(MC_SRCS:.mc=.mc.rc) $(TESTRESULTS) $(TESTLIST) $(
TESTPROGRAM)$(EXEEXT) $(
PROGRAMS)
# Rules for installing
...
...
@@ -259,7 +267,7 @@ $(SUBDIRS:%=%/__test__): dummy
@cd `dirname $@` && $(MAKE) test
$(PLTESTS:.c=.ok): $(WINETEST)
$(CTESTS:.c=.ok): $(TESTPROGRAM)
.so
$(CTESTS:.c=.ok): $(TESTPROGRAM)
$(EXEEXT)
$(WINETEST):
cd $(TOPOBJDIR)/programs/winetest && $(MAKE) winetest
...
...
@@ -270,16 +278,22 @@ $(TESTMAIN):
$(TESTLIST): Makefile.in
$(TOPSRCDIR)/programs/winetest/make_ctests $(CTESTS) >$(TESTLIST) || $(RM) $(TESTLIST)
$(TESTPROGRAM): $(TESTPROGRAM).so
$(RM) $(TESTPROGRAM) && cd tests && $(LN_S) $(TOPOBJDIR)/../wine `basename $(TESTPROGRAM)`
$(TESTPROGRAM).so: $(TESTPROGRAM).spec.o $(TESTOBJS)
$(LDSHARED) $(LDDLLFLAGS) $(TESTPROGRAM).spec.o $(TESTOBJS) -o $@ $(LIBWINE) $(LIBS)
$(TESTPROGRAM).tmp.o: $(TESTOBJS)
$(LDCOMBINE) $(TESTOBJS) -o $@
-
strip
--strip-unneeded $@
-
$(STRIP)
--strip-unneeded $@
$(TESTPROGRAM).spec.c: $(TESTPROGRAM).tmp.o $(WINEBUILD)
$(LDPATH) $(WINEBUILD) @DLLFLAGS@ -sym $(TESTPROGRAM).tmp.o -o $@ -exe $(TESTPROGRAM) -mcui -L$(DLLDIR) $(TESTIMPORTS:%=-l%)
$(TESTPROGRAM).exe: $(TESTOBJS)
$(CC) $(TESTOBJS) -o $@ $(TESTIMPORTS:%=-l%) $(LIBWINE) $(LIBS)
# Misc. rules
$(SPEC_SRCS:.spec=.spec.c): $(WINEBUILD)
...
...
configure
View file @
fc01b729
This diff is collapsed.
Click to expand it.
configure.ac
View file @
fc01b729
...
...
@@ -19,6 +19,7 @@ AC_ARG_ENABLE(debug, AC_HELP_STRING([--disable-debug],[compile out all debugging
AC_ARG_ENABLE(trace, AC_HELP_STRING([--disable-trace],[compile out TRACE messages]))
AC_ARG_ENABLE(opengl,AC_HELP_STRING([--enable-opengl],[force usage of OpenGL even if the latter is thread-safe via pthread]))
AC_ARG_WITH(curses, AC_HELP_STRING([--without-curses],[do not use curses]))
AC_ARG_WITH(wine-tools,AC_HELP_STRING([--with-wine-tools=<dir>],[use Wine tools from directory <dir>]))
AC_SUBST(OPTIONS)
if test "x$enable_debug" = "xno"
...
...
@@ -32,10 +33,28 @@ fi
dnl **** Check for some programs ****
AC_CANONICAL_
TARGE
T
AC_CANONICAL_
HOS
T
AC_PROG_MAKE_SET
AC_PROG_CC
AC_PROG_CPP
AC_CACHE_CHECK([for the directory containing the Wine tools], wine_cv_toolsdir,
[if test -z "$with_wine_tools"; then
if test "$cross_compiling" = "yes"; then
AC_MSG_ERROR([you must use the --with-wine-tools option when cross-compiling.])
else
wine_cv_toolsdir="\$(TOPOBJDIR)"
fi
elif test -d "$with_wine_tools/tools/winebuild"; then
case $with_wine_tools in
/*) wine_cv_toolsdir="$with_wine_tools" ;;
*) wine_cv_toolsdir="\$(TOPOBJDIR)/$with_wine_tools" ;;
esac
else
AC_MSG_ERROR([could not find Wine tools in $with_wine_tools.])
fi])
AC_SUBST(TOOLSDIR,$wine_cv_toolsdir)
AC_PATH_XTRA
AC_PROG_YACC
AC_PROG_LEX
...
...
@@ -52,12 +71,23 @@ if test "$XLEX" = "none"
then
AC_MSG_ERROR([no suitable lex found. Please install the 'flex' package.])
fi
AC_CHECK_TOOL(AR,ar,ar)
AC_PROG_RANLIB
AC_CHECK_TOOL(STRIP,strip,strip)
AC_CHECK_TOOL(WINDRES,windres,false)
AC_PROG_INSTALL
AC_PROG_LN_S
AC_CHECK_PROG(C2MAN,c2man,c2man,\$(TOPSRCDIR)/tools/c2man.pl)
AC_PATH_PROG(LDCONFIG, ldconfig, true, [/sbin /usr/sbin $PATH])
case $host_os in
cygwin*|mingw32*)
AC_CHECK_TOOL(LDCOMBINE,[ld -r --enable-stdcall-fixup],[ld -r --enable-stdcall-fixup]) ;;
*)
AC_CHECK_TOOL(LDCOMBINE,[ld -r],[ld -r]) ;;
esac
dnl Check for lint
AC_CHECK_PROGS(LINT, lclint lint)
if test "$LINT" = "lint"
...
...
@@ -68,12 +98,6 @@ fi
AC_SUBST(LINT)
AC_SUBST(LINTFLAGS)
case $host_os in
*cygwin*) LDCOMBINE="ld -r --enable-stdcall-fixup" ;;
*) LDCOMBINE="ld -r" ;;
esac
AC_SUBST(LDCOMBINE)
dnl **** Check for some libraries ****
dnl Check for -lm
...
...
@@ -700,14 +724,14 @@ LDSHARED=""
LDDLLFLAGS=""
DLLIBS=""
case $target_os in
cygwin|mingw32)
AC_CHECK_PROG(DLLWRAP,dllwrap,dllwrap,false)
if test "$DLLWRAP" = "dllwrap"; then
case $host_os in
cygwin*|mingw32*)
AC_CHECK_TOOL(DLLWRAP,dllwrap,false)
if test "$DLLWRAP" = "false"; then
LIBEXT="a"
else
dnl FIXME - check whether dllwrap works correctly...
LIBEXT="dll"
else
LIBEXT="a"
fi
;;
*)
...
...
@@ -759,18 +783,22 @@ If you are using Linux, you will need a newer binutils.]
fi
DLLFLAGS=""
LDPATH=""
if test "$LIBEXT" = "so"; then
DLLFLAGS="-fPIC"
DLLEXT=".so"
LDPATH="LD_LIBRARY_PATH=\"\$(TOPOBJDIR)/library:\$(TOPOBJDIR)/unicode:\$\$LD_LIBRARY_PATH\""
elif test "$LIBEXT" = "dll"; then
#DLLFLAGS="-fPIC" # -fPIC doesn't work(at least in cygwin-b20) - FIXME
DLLEXT=""
LDPATH="PATH=\"\$(TOPOBJDIR)/library:\$(TOPOBJDIR)/unicode:\$\$PATH\""
fi
case $build_os in
cygwin*|mingw32*)
LDPATH="PATH=\"\$(TOOLSDIR)/library:\$(TOOLSDIR)/unicode:\$\$PATH\"" ;;
*)
LDPATH="LD_LIBRARY_PATH=\"\$(TOOLSDIR)/library:\$(TOOLSDIR)/unicode:\$\$LD_LIBRARY_PATH\"" ;;
esac
AC_SUBST(DLLIBS)
AC_SUBST(DLLFLAGS)
AC_SUBST(DLLEXT)
...
...
@@ -1191,7 +1219,7 @@ WINE_CHECK_STRUCT_MEMBER(sockaddr_un,sun_len,
dnl *** check for the need to define __i386__
case $
targe
t_cpu in
case $
hos
t_cpu in
*i[3456789]86* )
AC_CACHE_CHECK([whether we need to define __i386__],ac_cv_cpp_def_i386,
AC_EGREP_CPP(yes,[#ifndef __i386__
...
...
dlls/kernel/tests/process.c
View file @
fc01b729
...
...
@@ -137,29 +137,7 @@ static int init(void)
{
myARGC
=
winetest_get_mainargs
(
&
myARGV
);
if
(
!
GetCurrentDirectoryA
(
sizeof
(
base
),
base
))
return
0
;
if
(
strcmp
(
winetest_platform
,
"windows"
))
{
char
*
ptr
=
getenv
(
"WINELOADER"
);
char
*
root
;
if
(
!
ptr
)
return
0
;
root
=
grab_memory
(
strlen
(
ptr
)
+
1
);
strcpy
(
root
,
ptr
);
ptr
=
strrchr
(
root
,
'/'
);
if
(
!
ptr
)
return
0
;
*
ptr
=
'\0'
;
/* be sure to use absolute pathnames so we can change dirs whenever we want */
sprintf
(
selfname
,
"%s/programs/winetest/runtest -q -P wine -M kernel32.dll -T %s -p %s/dlls/kernel/tests/kernel32_test"
,
root
,
root
,
root
);
}
else
{
strcpy
(
selfname
,
myARGV
[
0
]);
}
return
1
;
}
...
...
library/Makefile.in
View file @
fc01b729
...
...
@@ -43,10 +43,14 @@ install_a: libwine.a
$(MKINSTALLDIRS)
$(libdir)
$(INSTALL_DATA)
libwine.a
$(libdir)
/libwine.a
install
::
all $(LIBEXT:%=install_%)
install_dll
:
libwine.dll
$(MKINSTALLDIRS)
$(libdir)
$(INSTALL_DATA)
libwine.dll
$(libdir)
/libwine.dll
install
::
$(LIBEXT:%=install_%)
uninstall
::
$(RM)
$(libdir)
/libwine.a
$(libdir)
/libwine.so
$(libdir)
/libwine.so.
$(SOVERSION)
$(RM)
$(libdir)
/libwine.a
$(libdir)
/libwine.
dll
$(libdir)
/libwine.
so
$(libdir)
/libwine.so.
$(SOVERSION)
clean
::
$(RM)
libwine.so.
$(SOVERSION)
...
...
programs/Makeprog.rules.in
View file @
fc01b729
...
...
@@ -11,21 +11,21 @@
DEFS = @DLLFLAGS@ -DSTRICT -DNONAMELESSUNION -DNONAMELESSSTRUCT $(EXTRADEFS)
LDDLLFLAGS = @LDDLLFLAGS@
ALL_OBJS = $(MODULE).spec.o $(OBJS)
ALL_LIBS = $(LIBWINE) $(EXTRALIBS) $(LIBS)
SYMBOLFILE = $(MODULE).tmp.o
TESTIMPORTS = $(DELAYIMPORTS) $(IMPORTS)
all: $(MODULE)
RCOBJS = $(RC_SRCS:.rc=.res.o)
@MAKE_RULES@
all: $(MODULE)$(EXEEXT)
# Rule for main module spec file
$(MODULE).spec.c: $(RC_SRCS:.rc=.res) $(SYMBOLFILE) $(WINEBUILD)
$(LDPATH) $(WINEBUILD) @DLLFLAGS@ $(SYMBOLFILE:%=-sym %) -o $@ -exe $(MODULE) $(APPMODE:%=-m%) $(RC_SRCS:%.rc=-res %.res) -L$(DLLDIR) $(DELAYIMPORTS:%=-dl%) $(IMPORTS:%=-l%)
# Rules for main module
# Rules for
.so
main module
$(MODULE).so: $(MODULE).spec.o $(OBJS) Makefile.in
$(LDSHARED) $(LDDLLFLAGS) $(MODULE).spec.o $(OBJS) -o $@ $(ALL_LIBS)
...
...
@@ -33,6 +33,11 @@ $(MODULE).so: $(MODULE).spec.o $(OBJS) Makefile.in
$(MODULE): $(MODULE).so
$(RM) $(MODULE) && $(LN_S) $(TOPOBJDIR)/wine $(MODULE)
# Rules for .exe main module
$(MODULE).exe: $(OBJS) $(RCOBJS) Makefile.in
$(CC) $(OBJS) $(RCOBJS) -o $@ $(DELAYIMPORTS:%=-l%) $(IMPORTS:%=-l%) $(ALL_LIBS)
# Rules for checking that no imports are missing
checklink:: $(MODULE).so
...
...
@@ -49,13 +54,21 @@ debug_channels: dummy
# Rules for installation
install:: $(MODULE).so
.PHONY: install_prog$(EXEEXT)
install_prog:: $(MODULE).so
$(MKINSTALLDIRS) $(bindir)
$(INSTALL_PROGRAM) $(MODULE).so $(bindir)/$(MODULE).so
cd $(bindir) && $(RM) $(MODULE) && $(LN_S) wine $(MODULE)
install_prog.exe:: $(MODULE).exe
$(MKINSTALLDIRS) $(bindir)
$(INSTALL_PROGRAM) $(MODULE).exe $(bindir)/$(MODULE).exe
install:: install_prog$(EXEEXT)
uninstall::
$(RM) $(bindir)/$(MODULE) $(bindir)/$(MODULE).so
$(RM) $(bindir)/$(MODULE)
$(EXEEXT)
$(bindir)/$(MODULE).so
clean::
$(RM) $(MODULE)
$(RM) $(MODULE)
$(EXEEXT)
programs/winetest/runtest
View file @
fc01b729
...
...
@@ -123,9 +123,7 @@ if (defined($topobjdir))
$ENV
{
WINESERVER
}
=
$topobjdir
.
"/server/wineserver"
;
$ENV
{
WINELOADER
}
=
$topobjdir
.
"/wine"
;
$ENV
{
WINETEST_PLATFORM
}
=
$platform
||
"wine"
;
$ENV
{
WINEPRELOAD
}
=
(
$program
||
(
$topobjdir
.
"/programs/winetest/winetest"
))
.
".so"
;
# try to exec the wine loader directly; if it fails continue on to normal exec
exec
$ENV
{
WINELOADER
},
$infile
,
@ARGV
;
$program
||=
$topobjdir
.
"/programs/winetest/winetest"
;
}
else
{
...
...
unicode/Makefile.in
View file @
fc01b729
...
...
@@ -95,9 +95,9 @@ libwine_unicode.a: $(OBJS)
$(AR)
$@
$(OBJS)
$(RANLIB)
$@
# --export-all don't work correctly because of dllwrap's bug
# --export-all do
es
n't work correctly because of dllwrap's bug
libwine_unicode.dll
:
$(OBJS) wine_unicode.def
$(DLLWRAP)
$(DLLWRAPFLAGS)
--def
wine_unicode.def
--implib
libwine_unicode.a
-o
libwine_unicode.dll
$(OBJS)
$(DLLWRAP)
$(DLLWRAPFLAGS)
--def
$(SRCDIR)
/
wine_unicode.def
--implib
libwine_unicode.a
-o
libwine_unicode.dll
$(OBJS)
install_so
:
libwine_unicode.so.$(SOVERSION)
$(MKINSTALLDIRS)
$(libdir)
...
...
@@ -108,10 +108,14 @@ install_a: libwine_unicode.a
$(MKINSTALLDIRS)
$(libdir)
$(INSTALL_DATA)
libwine_unicode.a
$(libdir)
/libwine_unicode.a
install
::
all $(LIBEXT:%=install_%)
install_dll
:
libwine_unicode.dll
$(MKINSTALLDIRS)
$(libdir)
$(INSTALL_DATA)
libwine_unicode.dll
$(libdir)
/libwine_unicode.dll
install
::
$(LIBEXT:%=install_%)
uninstall
::
$(RM)
$(libdir)
/libwine_unicode.a
$(libdir)
/libwine_unicode.so
$(libdir)
/libwine_unicode.so.
$(SOVERSION)
$(RM)
$(libdir)
/libwine_unicode.a
$(libdir)
/libwine_unicode.
dll
$(libdir)
/libwine_unicode.
so
$(libdir)
/libwine_unicode.so.
$(SOVERSION)
clean
::
$(RM)
libwine_unicode.so.
$(SOVERSION)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment