Commit 2f158c26 authored by Alexandre Julliard's avatar Alexandre Julliard

Removed @PROGEXT@ (it was broken anyway).

Improved 'make install'. Cleaned up the main Makefile.
parent 6d96e301
...@@ -54,11 +54,11 @@ LINT = @LINT@ ...@@ -54,11 +54,11 @@ LINT = @LINT@
LINTFLAGS = @LINTFLAGS@ LINTFLAGS = @LINTFLAGS@
ALLLINTFLAGS = $(LINTFLAGS) $(DEFS) $(OPTIONS) $(DIVINCL) ALLLINTFLAGS = $(LINTFLAGS) $(DEFS) $(OPTIONS) $(DIVINCL)
WINAPI_CHECK = $(TOPSRCDIR)/tools/winapi_check/winapi_check WINAPI_CHECK = $(TOPSRCDIR)/tools/winapi_check/winapi_check
BUILD = $(TOPOBJDIR)/tools/build@PROGEXT@ BUILD = $(TOPOBJDIR)/tools/build
MAKEDEP = $(TOPOBJDIR)/tools/makedep@PROGEXT@ MAKEDEP = $(TOPOBJDIR)/tools/makedep
WRC = $(TOPOBJDIR)/tools/wrc/wrc@PROGEXT@ WRC = $(TOPOBJDIR)/tools/wrc/wrc
WRCFLAGS = -c -s -p $* WRCFLAGS = -c -s -p $*
WMC = $(TOPOBJDIR)/tools/wmc/wmc@PROGEXT@ WMC = $(TOPOBJDIR)/tools/wmc/wmc
DLLDIR = $(TOPOBJDIR)/dlls DLLDIR = $(TOPOBJDIR)/dlls
@SET_MAKE@ @SET_MAKE@
...@@ -199,22 +199,22 @@ all: Makefile ...@@ -199,22 +199,22 @@ all: Makefile
# Rule to rebuild the resource compiler # Rule to rebuild the resource compiler
$(WRC) check_wrc: $(WRC) check_wrc:
cd $(TOPOBJDIR)/tools/wrc && $(MAKE) wrc@PROGEXT@ cd $(TOPOBJDIR)/tools/wrc && $(MAKE) wrc
# Rule to rebuild the message compiler # Rule to rebuild the message compiler
$(WMC) check_wmc: $(WMC) check_wmc:
cd $(TOPOBJDIR)/tools/wmc && $(MAKE) wmc@PROGEXT@ cd $(TOPOBJDIR)/tools/wmc && $(MAKE) wmc
# Rule to rebuild the 'makedep' program # Rule to rebuild the 'makedep' program
$(MAKEDEP) check_makedep: $(MAKEDEP) check_makedep:
cd $(TOPOBJDIR)/tools && $(MAKE) makedep@PROGEXT@ cd $(TOPOBJDIR)/tools && $(MAKE) makedep
# Rule to rebuild the 'build' program # Rule to rebuild the 'build' program
$(BUILD) checkbuild: $(BUILD) checkbuild:
cd $(TOPOBJDIR)/tools && $(MAKE) build@PROGEXT@ cd $(TOPOBJDIR)/tools && $(MAKE) build
# Rule for main module # Rule for main module
...@@ -272,6 +272,14 @@ $(EXTRASUBDIRS:%=%/__clean__): dummy ...@@ -272,6 +272,14 @@ $(EXTRASUBDIRS:%=%/__clean__): dummy
clean:: $(SUBDIRS:%=%/__clean__) $(EXTRASUBDIRS:%=%/__clean__) clean:: $(SUBDIRS:%=%/__clean__) $(EXTRASUBDIRS:%=%/__clean__)
$(RM) $(CLEAN_FILES) $(GEN_C_SRCS) $(GEN_ASM_SRCS) $(RC_SRCS:.rc=.s) $(RC_SRCS:.rc=.h) $(PROGRAMS) $(RM) $(CLEAN_FILES) $(GEN_C_SRCS) $(GEN_ASM_SRCS) $(RC_SRCS:.rc=.s) $(RC_SRCS:.rc=.h) $(PROGRAMS)
# Rules for installing
$(SUBDIRS:%=%/__install__): dummy
cd `dirname $@` && $(MAKE) install
$(SUBDIRS:%=%/__uninstall__): dummy
cd `dirname $@` && $(MAKE) uninstall
# Misc. rules # Misc. rules
$(SPEC_SRCS:.spec=.spec.c): $(BUILD) $(TOPSRCDIR)/include/builtin16.h $(TOPSRCDIR)/include/builtin32.h $(SPEC_SRCS:.spec=.spec.c): $(BUILD) $(TOPSRCDIR)/include/builtin16.h $(TOPSRCDIR)/include/builtin32.h
......
...@@ -23,74 +23,62 @@ MODULE = wine ...@@ -23,74 +23,62 @@ MODULE = wine
SOVERSION = 1.0 SOVERSION = 1.0
SONAME = libwine.so SONAME = libwine.so
TOOLSUBDIRS = tools # Stand-alone programs
PROGRAMS = \
loader/dos/dosmod \
server/wineserver
LIBSUBDIRS = \ # Programs that link with libwine
controls \ LIBPROGRAMS = \
debugger/winedbg
# Sub-directories to run make depend/clean into
SUBDIRS = \
console \ console \
controls \
debugger \
dlls \
dlls/advapi32 \ dlls/advapi32 \
dlls/crtdll \ dlls/crtdll \
dlls/kernel \ dlls/kernel \
dlls/ntdll \ dlls/ntdll \
documentation \
files \ files \
graphics \ graphics \
graphics/enhmetafiledrv \ graphics/enhmetafiledrv \
graphics/metafiledrv \ graphics/metafiledrv \
graphics/win16drv \ graphics/win16drv \
if1632 \ if1632 \
include \
library \ library \
libtest \
loader \ loader \
loader/ne \
loader/dos \ loader/dos \
loader/ne \
memory \ memory \
misc \ misc \
miscemu \
msdos \ msdos \
objects \ objects \
ole \ ole \
programs \
relay32 \ relay32 \
resources \ resources \
scheduler \ scheduler \
server \
tools \
unicode \ unicode \
win32 \ win32 \
windows windows
EMUSUBDIRS = \
miscemu \
server
PROGSUBDIRS = \
debugger \
libtest \
programs
DOCSUBDIRS = documentation
INCSUBDIRS = include
# Stand-alone programs
PROGRAMS = \
loader/dos/dosmod \
server/wineserver
# Programs that link with libwine
LIBPROGRAMS = \
debugger/winedbg
# Sub-directories to run make into
SUBDIRS = \
$(TOOLSUBDIRS) \
$(LIBSUBDIRS) \
$(DLLDIR) \
$(EMUSUBDIRS) \
$(PROGSUBDIRS) \
$(DOCSUBDIRS) \
include
# Sub-directories to run make install into # Sub-directories to run make install into
INSTALLSUBDIRS = $(DLLDIR) $(DOCSUBDIRS) $(INCSUBDIRS) INSTALLSUBDIRS = \
debugger \
# Sub-directories to run make lint into dlls \
LINTSUBDIRS = $(LIBSUBDIRS) $(DLLDIR) $(EMUSUBDIRS) $(DOCSUBDIRS) documentation \
include \
server \
tools
LIBOBJS = \ LIBOBJS = \
controls/controls.o \ controls/controls.o \
...@@ -126,9 +114,7 @@ DLLOBJS = $(DLLS:%=dlls/lib%.@LIBEXT@) ...@@ -126,9 +114,7 @@ DLLOBJS = $(DLLS:%=dlls/lib%.@LIBEXT@)
EXTRA_OBJS = $(LIBOBJS) EXTRA_OBJS = $(LIBOBJS)
EMU_TARGET = @EMU_TARGET@ all: Make.rules $(PROGRAMS) $(LIBPROGRAMS) wine
all: Make.rules $(PROGRAMS) $(LIBPROGRAMS) lib$(MODULE).$(LIBEXT) $(DLLDIR) $(EMU_TARGET)
@echo "Wine build complete." @echo "Wine build complete."
LIBLINTS = $(LIBOBJS:.o=.ln) LIBLINTS = $(LIBOBJS:.o=.ln)
...@@ -160,19 +146,15 @@ install_a: lib$(MODULE).a ...@@ -160,19 +146,15 @@ install_a: lib$(MODULE).a
[ -d $(libdir) ] || $(MKDIR) $(libdir) [ -d $(libdir) ] || $(MKDIR) $(libdir)
$(INSTALL_DATA) lib$(MODULE).a $(libdir)/lib$(MODULE).a $(INSTALL_DATA) lib$(MODULE).a $(libdir)/lib$(MODULE).a
install_wine: wine install:: all $(LIBEXT:%=install_%) $(INSTALLSUBDIRS:%=%/__install__)
[ -d $(bindir) ] || $(MKDIR) $(bindir) [ -d $(bindir) ] || $(MKDIR) $(bindir)
$(INSTALL_PROGRAM) wine $(bindir)/wine $(INSTALL_PROGRAM) wine $(bindir)/wine
install:: $(PROGRAMS) $(LIBPROGRAMS) $(EMU_TARGET:%=install_%) $(LIBEXT:%=install_%)
[ -d $(bindir) ] || $(MKDIR) $(bindir)
$(INSTALL_PROGRAM) server/wineserver $(bindir)/wineserver
$(INSTALL_PROGRAM) loader/dos/dosmod $(bindir)/dosmod $(INSTALL_PROGRAM) loader/dos/dosmod $(bindir)/dosmod
$(INSTALL_PROGRAM) debugger/winedbg $(bindir)/winedbg -$(LDCONFIG)
uninstall:: uninstall:: $(INSTALLSUBDIRS:%=%/__uninstall__)
cd $(libdir) && $(RM) libwine.a libwine.so libwine.so.$(SOVERSION) cd $(libdir) && $(RM) libwine.a libwine.so libwine.so.$(SOVERSION)
cd $(bindir) && $(RM) wine wineserver dosmod winedbg cd $(bindir) && $(RM) wine dosmod
lib$(MODULE).so.$(SOVERSION): $(OBJS) Makefile.in Make.rules.in lib$(MODULE).so.$(SOVERSION): $(OBJS) Makefile.in Make.rules.in
$(LDSHARED) $(OBJS) -o $@ $(LDSHARED) $(OBJS) -o $@
...@@ -185,32 +167,25 @@ lib$(MODULE).a: $(OBJS) Makefile.in Make.rules.in ...@@ -185,32 +167,25 @@ lib$(MODULE).a: $(OBJS) Makefile.in Make.rules.in
$(AR) $@ $(OBJS) $(AR) $@ $(OBJS)
$(RANLIB) $@ $(RANLIB) $@
checklink:: $(EMUOBJS) $(LIBOBJS) $(DLLOBJS) $(PROGRAMS) $(LIBPROGRAMS): dummy
$(CC) -o checklink $(TOPSRCDIR)/library/checklink.c -L. -lwine $(LIBS) && $(RM) checklink
$(EMUOBJS) $(LIBOBJS) $(DLLOBJS) $(PROGRAMS) $(LIBPROGRAMS): $(TOOLSUBDIRS) dummy
@cd `dirname $@` && $(MAKE) `basename $@` @cd `dirname $@` && $(MAKE) `basename $@`
$(DLLDIR): $(TOOLSUBDIRS) dummy $(EMUOBJS) $(LIBOBJS) $(DLLOBJS) $(PROGRAMS) $(DLLDIR): tools
$(LIBPROGRAMS): lib$(MODULE).$(LIBEXT) $(DLLDIR) $(LIBPROGRAMS): tools dlls lib$(MODULE).$(LIBEXT)
$(LIBLINTS) $(EMULINTS): dummy $(LIBLINTS) $(EMULINTS): dummy
@cd `dirname $@` && $(MAKE) lint @cd `dirname $@` && $(MAKE) lint
checklink::
$(CC) -o checklink $(TOPSRCDIR)/library/checklink.c -L. -lwine $(LIBS) && $(RM) checklink
install_programs: dummy install_programs: dummy
@cd programs && $(MAKE) install @cd programs && $(MAKE) install
uninstall_programs: dummy uninstall_programs: dummy
@cd programs && $(MAKE) uninstall @cd programs && $(MAKE) uninstall
install::
for i in $(INSTALLSUBDIRS); do (cd $$i && $(MAKE) install) || exit 1; done
-$(LDCONFIG)
uninstall::
for i in $(INSTALLSUBDIRS); do (cd $$i && $(MAKE) uninstall) || exit 1; done
checklink:: checklink::
@cd dlls && $(MAKE) checklink @cd dlls && $(MAKE) checklink
...@@ -219,11 +194,11 @@ TAGS etags: ...@@ -219,11 +194,11 @@ TAGS etags:
manpages: manpages:
-$(MKDIR) $(TOPOBJDIR)/documentation/man3w -$(MKDIR) $(TOPOBJDIR)/documentation/man3w
for i in $(LIBSUBDIRS); do (cd $$i && $(MAKE) man); done for i in $(SUBDIRS); do (cd $$i && $(MAKE) man); done
htmlpages: htmlpages:
-$(MKDIR) $(TOPOBJDIR)/documentation/html -$(MKDIR) $(TOPOBJDIR)/documentation/html
for i in $(LIBSUBDIRS); do (cd $$i && $(MAKE) html); done for i in $(SUBDIRS); do (cd $$i && $(MAKE) html); done
clean:: clean::
$(RM) wine libwine.so.1.0 TAGS $(RM) wine libwine.so.1.0 TAGS
......
...@@ -6,24 +6,15 @@ AC_INIT(controls/edit.c) ...@@ -6,24 +6,15 @@ AC_INIT(controls/edit.c)
AC_CONFIG_HEADER(include/config.h) AC_CONFIG_HEADER(include/config.h)
AC_CONFIG_AUX_DIR(tools) AC_CONFIG_AUX_DIR(tools)
# We want these before the checks, so the checks can modify their values.
test -z "$PROGEXT" && PROGEXT="" AC_SUBST(PROGEXT)
dnl **** Command-line arguments **** dnl **** Command-line arguments ****
dnl Default values dnl Default values
EMU_TARGET=wine
LIBEXT=so # library type .so or .a LIBEXT=so # library type .so or .a
TRACE_MSGS=yes # the TRACE() macro TRACE_MSGS=yes # the TRACE() macro
DEBUG_MSGS=yes # the TRACE(), WARN(), and FIXME() macros. DEBUG_MSGS=yes # the TRACE(), WARN(), and FIXME() macros.
CURSES=yes CURSES=yes
OPENGL=normal OPENGL=normal
AC_ARG_ENABLE(emulator,
[ --disable-emulator build only the Wine library, not the emulator],
[if test "$enableval" = "no"; then EMU_TARGET=""; fi])
AC_ARG_ENABLE(dll, AC_ARG_ENABLE(dll,
[ --disable-dll build static libraries instead of DLLs], [ --disable-dll build static libraries instead of DLLs],
[if test "$enableval" = "no"; then LIBEXT="a"; fi]) [if test "$enableval" = "no"; then LIBEXT="a"; fi])
...@@ -47,7 +38,6 @@ AC_ARG_WITH(curses, ...@@ -47,7 +38,6 @@ AC_ARG_WITH(curses,
AC_ARG_WITH(reentrant-x, AC_ARG_WITH(reentrant-x,
[ --without-reentrant-x compile for use with non-reentrant X libraries]) [ --without-reentrant-x compile for use with non-reentrant X libraries])
AC_SUBST(EMU_TARGET)
AC_SUBST(OPTIONS) AC_SUBST(OPTIONS)
if test "$DEBUG_MSGS" = "no" if test "$DEBUG_MSGS" = "no"
......
...@@ -44,4 +44,11 @@ lex.yy.c: debug.l ...@@ -44,4 +44,11 @@ lex.yy.c: debug.l
winedbg: $(OBJS) winedbg: $(OBJS)
$(CC) -o $@ $(OBJS) $(DLL_LINK) $(LIBS) $(CC) -o $@ $(OBJS) $(DLL_LINK) $(LIBS)
install:: $(PROGRAMS)
[ -d $(bindir) ] || $(MKDIR) $(bindir)
$(INSTALL_PROGRAM) winedbg $(bindir)/winedbg
uninstall::
$(RM) $(bindir)/winedbg
### Dependencies: ### Dependencies:
...@@ -44,4 +44,11 @@ all: $(PROGRAMS) ...@@ -44,4 +44,11 @@ all: $(PROGRAMS)
wineserver: $(OBJS) wineserver: $(OBJS)
$(CC) -o $(PROGRAMS) $(OBJS) $(LIBS) $(CC) -o $(PROGRAMS) $(OBJS) $(LIBS)
install:: $(PROGRAMS)
[ -d $(bindir) ] || $(MKDIR) $(bindir)
$(INSTALL_PROGRAM) wineserver $(bindir)/wineserver
uninstall::
$(RM) $(bindir)/wineserver
### Dependencies: ### Dependencies:
...@@ -4,7 +4,7 @@ TOPOBJDIR = .. ...@@ -4,7 +4,7 @@ TOPOBJDIR = ..
SRCDIR = @srcdir@ SRCDIR = @srcdir@
VPATH = @srcdir@ VPATH = @srcdir@
PROGRAMS = build@PROGEXT@ makedep@PROGEXT@ fnt2bdf@PROGEXT@ bin2res@PROGEXT@ PROGRAMS = build makedep fnt2bdf bin2res
MODULE = none MODULE = none
C_SRCS = build.c makedep.c fnt2bdf.c bin2res.c C_SRCS = build.c makedep.c fnt2bdf.c bin2res.c
...@@ -24,16 +24,24 @@ all: $(PROGRAMS) wmc wrc ...@@ -24,16 +24,24 @@ all: $(PROGRAMS) wmc wrc
@MAKE_RULES@ @MAKE_RULES@
build@PROGEXT@: build.o build: build.o
$(CC) $(CFLAGS) -o build@PROGEXT@ build.o $(CC) $(CFLAGS) -o build build.o
makedep@PROGEXT@: makedep.o makedep: makedep.o
$(CC) $(CFLAGS) -o makedep@PROGEXT@ makedep.o $(CC) $(CFLAGS) -o makedep makedep.o
fnt2bdf@PROGEXT@: fnt2bdf.o fnt2bdf: fnt2bdf.o
$(CC) $(CFLAGS) -o fnt2bdf@PROGEXT@ fnt2bdf.o $(CC) $(CFLAGS) -o fnt2bdf fnt2bdf.o
bin2res@PROGEXT@: bin2res.o bin2res: bin2res.o
$(CC) $(CFLAGS) -o bin2res@PROGEXT@ bin2res.o $(CC) $(CFLAGS) -o bin2res bin2res.o
install:: $(PROGRAMS) $(SUBDIRS:%=%/__install__)
[ -d $(bindir) ] || $(MKDIR) $(bindir)
$(INSTALL_PROGRAM) build $(bindir)/winebuild
$(INSTALL_PROGRAM) fnt2bdf $(bindir)/fnt2bdf
uninstall:: $(PROGRAMS) $(SUBDIRS:%=%/__uninstall__)
$(RM) $(bindir)/winebuild $(bindir)/fnt2bdf
### Dependencies: ### Dependencies:
...@@ -3,7 +3,7 @@ TOPOBJDIR = ../.. ...@@ -3,7 +3,7 @@ TOPOBJDIR = ../..
SRCDIR = @srcdir@ SRCDIR = @srcdir@
VPATH = @srcdir@ VPATH = @srcdir@
PROGRAMS = cvdump@PROGEXT@ PROGRAMS = cvdump
MODULE = none MODULE = none
C_SRCS = cvcrunch.c cvdump.c cvload.c C_SRCS = cvcrunch.c cvdump.c cvload.c
...@@ -12,7 +12,7 @@ all: $(PROGRAMS) ...@@ -12,7 +12,7 @@ all: $(PROGRAMS)
@MAKE_RULES@ @MAKE_RULES@
cvdump@PROGEXT@: $(OBJS) cvdump: $(OBJS)
$(CC) $(CFLAGS) -o cvdump@PROGEXT@ $(OBJS) $(CC) $(CFLAGS) -o cvdump $(OBJS)
### Dependencies: ### Dependencies:
...@@ -5,7 +5,7 @@ SRCDIR = @srcdir@ ...@@ -5,7 +5,7 @@ SRCDIR = @srcdir@
VPATH = @srcdir@ VPATH = @srcdir@
YACCOPT = #-v YACCOPT = #-v
PROGRAMS = wmc@PROGEXT@ PROGRAMS = wmc
MODULE = none MODULE = none
C_SRCS = \ C_SRCS = \
...@@ -24,8 +24,8 @@ depend: y.tab.h ...@@ -24,8 +24,8 @@ depend: y.tab.h
@MAKE_RULES@ @MAKE_RULES@
wmc@PROGEXT@: $(OBJS) $(TOPOBJDIR)/unicode/unicode.o wmc: $(OBJS) $(TOPOBJDIR)/unicode/unicode.o
$(CC) $(CFLAGS) -o wmc@PROGEXT@ $(OBJS) $(TOPOBJDIR)/unicode/unicode.o $(LEXLIB) $(CC) $(CFLAGS) -o wmc $(OBJS) $(TOPOBJDIR)/unicode/unicode.o $(LEXLIB)
$(TOPOBJDIR)/unicode/unicode.o check_unicode: $(TOPOBJDIR)/unicode/unicode.o check_unicode:
cd $(TOPSRCDIR)/unicode && $(MAKE) cd $(TOPSRCDIR)/unicode && $(MAKE)
......
...@@ -6,7 +6,7 @@ VPATH = @srcdir@ ...@@ -6,7 +6,7 @@ VPATH = @srcdir@
LEXOPT = -Cf #-w -b LEXOPT = -Cf #-w -b
YACCOPT = #-v YACCOPT = #-v
PROGRAMS = wrc@PROGEXT@ PROGRAMS = wrc
MODULE = none MODULE = none
C_SRCS = \ C_SRCS = \
...@@ -29,8 +29,8 @@ depend: y.tab.h ppy.tab.h ...@@ -29,8 +29,8 @@ depend: y.tab.h ppy.tab.h
@MAKE_RULES@ @MAKE_RULES@
wrc@PROGEXT@: $(OBJS) wrc: $(OBJS)
$(CC) $(CFLAGS) -o wrc@PROGEXT@ $(OBJS) $(LEXLIB) $(CC) $(CFLAGS) -o wrc $(OBJS) $(LEXLIB)
y.tab.c y.tab.h: parser.y y.tab.c y.tab.h: parser.y
$(YACC) $(YACCOPT) -d -t $(SRCDIR)/parser.y $(YACC) $(YACCOPT) -d -t $(SRCDIR)/parser.y
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment