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@
LINTFLAGS = @LINTFLAGS@
ALLLINTFLAGS = $(LINTFLAGS) $(DEFS) $(OPTIONS) $(DIVINCL)
WINAPI_CHECK = $(TOPSRCDIR)/tools/winapi_check/winapi_check
BUILD = $(TOPOBJDIR)/tools/build@PROGEXT@
MAKEDEP = $(TOPOBJDIR)/tools/makedep@PROGEXT@
WRC = $(TOPOBJDIR)/tools/wrc/wrc@PROGEXT@
BUILD = $(TOPOBJDIR)/tools/build
MAKEDEP = $(TOPOBJDIR)/tools/makedep
WRC = $(TOPOBJDIR)/tools/wrc/wrc
WRCFLAGS = -c -s -p $*
WMC = $(TOPOBJDIR)/tools/wmc/wmc@PROGEXT@
WMC = $(TOPOBJDIR)/tools/wmc/wmc
DLLDIR = $(TOPOBJDIR)/dlls
@SET_MAKE@
......@@ -199,22 +199,22 @@ all: Makefile
# Rule to rebuild the resource compiler
$(WRC) check_wrc:
cd $(TOPOBJDIR)/tools/wrc && $(MAKE) wrc@PROGEXT@
cd $(TOPOBJDIR)/tools/wrc && $(MAKE) wrc
# Rule to rebuild the message compiler
$(WMC) check_wmc:
cd $(TOPOBJDIR)/tools/wmc && $(MAKE) wmc@PROGEXT@
cd $(TOPOBJDIR)/tools/wmc && $(MAKE) wmc
# Rule to rebuild the 'makedep' program
$(MAKEDEP) check_makedep:
cd $(TOPOBJDIR)/tools && $(MAKE) makedep@PROGEXT@
cd $(TOPOBJDIR)/tools && $(MAKE) makedep
# Rule to rebuild the 'build' program
$(BUILD) checkbuild:
cd $(TOPOBJDIR)/tools && $(MAKE) build@PROGEXT@
cd $(TOPOBJDIR)/tools && $(MAKE) build
# Rule for main module
......@@ -272,6 +272,14 @@ $(EXTRASUBDIRS:%=%/__clean__): dummy
clean:: $(SUBDIRS:%=%/__clean__) $(EXTRASUBDIRS:%=%/__clean__)
$(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
$(SPEC_SRCS:.spec=.spec.c): $(BUILD) $(TOPSRCDIR)/include/builtin16.h $(TOPSRCDIR)/include/builtin32.h
......
......@@ -23,74 +23,62 @@ MODULE = wine
SOVERSION = 1.0
SONAME = libwine.so
TOOLSUBDIRS = tools
# Stand-alone programs
PROGRAMS = \
loader/dos/dosmod \
server/wineserver
LIBSUBDIRS = \
controls \
# Programs that link with libwine
LIBPROGRAMS = \
debugger/winedbg
# Sub-directories to run make depend/clean into
SUBDIRS = \
console \
controls \
debugger \
dlls \
dlls/advapi32 \
dlls/crtdll \
dlls/kernel \
dlls/ntdll \
documentation \
files \
graphics \
graphics/enhmetafiledrv \
graphics/metafiledrv \
graphics/win16drv \
if1632 \
include \
library \
libtest \
loader \
loader/ne \
loader/dos \
loader/ne \
memory \
misc \
miscemu \
msdos \
objects \
ole \
programs \
relay32 \
resources \
scheduler \
server \
tools \
unicode \
win32 \
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
INSTALLSUBDIRS = $(DLLDIR) $(DOCSUBDIRS) $(INCSUBDIRS)
# Sub-directories to run make lint into
LINTSUBDIRS = $(LIBSUBDIRS) $(DLLDIR) $(EMUSUBDIRS) $(DOCSUBDIRS)
INSTALLSUBDIRS = \
debugger \
dlls \
documentation \
include \
server \
tools
LIBOBJS = \
controls/controls.o \
......@@ -126,9 +114,7 @@ DLLOBJS = $(DLLS:%=dlls/lib%.@LIBEXT@)
EXTRA_OBJS = $(LIBOBJS)
EMU_TARGET = @EMU_TARGET@
all: Make.rules $(PROGRAMS) $(LIBPROGRAMS) lib$(MODULE).$(LIBEXT) $(DLLDIR) $(EMU_TARGET)
all: Make.rules $(PROGRAMS) $(LIBPROGRAMS) wine
@echo "Wine build complete."
LIBLINTS = $(LIBOBJS:.o=.ln)
......@@ -160,19 +146,15 @@ install_a: lib$(MODULE).a
[ -d $(libdir) ] || $(MKDIR) $(libdir)
$(INSTALL_DATA) lib$(MODULE).a $(libdir)/lib$(MODULE).a
install_wine: wine
install:: all $(LIBEXT:%=install_%) $(INSTALLSUBDIRS:%=%/__install__)
[ -d $(bindir) ] || $(MKDIR) $(bindir)
$(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) debugger/winedbg $(bindir)/winedbg
-$(LDCONFIG)
uninstall::
uninstall:: $(INSTALLSUBDIRS:%=%/__uninstall__)
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
$(LDSHARED) $(OBJS) -o $@
......@@ -185,32 +167,25 @@ lib$(MODULE).a: $(OBJS) Makefile.in Make.rules.in
$(AR) $@ $(OBJS)
$(RANLIB) $@
checklink::
$(CC) -o checklink $(TOPSRCDIR)/library/checklink.c -L. -lwine $(LIBS) && $(RM) checklink
$(EMUOBJS) $(LIBOBJS) $(DLLOBJS) $(PROGRAMS) $(LIBPROGRAMS): $(TOOLSUBDIRS) dummy
$(EMUOBJS) $(LIBOBJS) $(DLLOBJS) $(PROGRAMS) $(LIBPROGRAMS): dummy
@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
@cd `dirname $@` && $(MAKE) lint
checklink::
$(CC) -o checklink $(TOPSRCDIR)/library/checklink.c -L. -lwine $(LIBS) && $(RM) checklink
install_programs: dummy
@cd programs && $(MAKE) install
uninstall_programs: dummy
@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::
@cd dlls && $(MAKE) checklink
......@@ -219,11 +194,11 @@ TAGS etags:
manpages:
-$(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:
-$(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::
$(RM) wine libwine.so.1.0 TAGS
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -6,24 +6,15 @@ AC_INIT(controls/edit.c)
AC_CONFIG_HEADER(include/config.h)
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 Default values
EMU_TARGET=wine
LIBEXT=so # library type .so or .a
TRACE_MSGS=yes # the TRACE() macro
DEBUG_MSGS=yes # the TRACE(), WARN(), and FIXME() macros.
CURSES=yes
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,
[ --disable-dll build static libraries instead of DLLs],
[if test "$enableval" = "no"; then LIBEXT="a"; fi])
......@@ -47,7 +38,6 @@ AC_ARG_WITH(curses,
AC_ARG_WITH(reentrant-x,
[ --without-reentrant-x compile for use with non-reentrant X libraries])
AC_SUBST(EMU_TARGET)
AC_SUBST(OPTIONS)
if test "$DEBUG_MSGS" = "no"
......
......@@ -44,4 +44,11 @@ lex.yy.c: debug.l
winedbg: $(OBJS)
$(CC) -o $@ $(OBJS) $(DLL_LINK) $(LIBS)
install:: $(PROGRAMS)
[ -d $(bindir) ] || $(MKDIR) $(bindir)
$(INSTALL_PROGRAM) winedbg $(bindir)/winedbg
uninstall::
$(RM) $(bindir)/winedbg
### Dependencies:
......@@ -44,4 +44,11 @@ all: $(PROGRAMS)
wineserver: $(OBJS)
$(CC) -o $(PROGRAMS) $(OBJS) $(LIBS)
install:: $(PROGRAMS)
[ -d $(bindir) ] || $(MKDIR) $(bindir)
$(INSTALL_PROGRAM) wineserver $(bindir)/wineserver
uninstall::
$(RM) $(bindir)/wineserver
### Dependencies:
......@@ -4,7 +4,7 @@ TOPOBJDIR = ..
SRCDIR = @srcdir@
VPATH = @srcdir@
PROGRAMS = build@PROGEXT@ makedep@PROGEXT@ fnt2bdf@PROGEXT@ bin2res@PROGEXT@
PROGRAMS = build makedep fnt2bdf bin2res
MODULE = none
C_SRCS = build.c makedep.c fnt2bdf.c bin2res.c
......@@ -24,16 +24,24 @@ all: $(PROGRAMS) wmc wrc
@MAKE_RULES@
build@PROGEXT@: build.o
$(CC) $(CFLAGS) -o build@PROGEXT@ build.o
build: build.o
$(CC) $(CFLAGS) -o build build.o
makedep@PROGEXT@: makedep.o
$(CC) $(CFLAGS) -o makedep@PROGEXT@ makedep.o
makedep: makedep.o
$(CC) $(CFLAGS) -o makedep makedep.o
fnt2bdf@PROGEXT@: fnt2bdf.o
$(CC) $(CFLAGS) -o fnt2bdf@PROGEXT@ fnt2bdf.o
fnt2bdf: fnt2bdf.o
$(CC) $(CFLAGS) -o fnt2bdf fnt2bdf.o
bin2res@PROGEXT@: bin2res.o
$(CC) $(CFLAGS) -o bin2res@PROGEXT@ bin2res.o
bin2res: 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:
......@@ -3,7 +3,7 @@ TOPOBJDIR = ../..
SRCDIR = @srcdir@
VPATH = @srcdir@
PROGRAMS = cvdump@PROGEXT@
PROGRAMS = cvdump
MODULE = none
C_SRCS = cvcrunch.c cvdump.c cvload.c
......@@ -12,7 +12,7 @@ all: $(PROGRAMS)
@MAKE_RULES@
cvdump@PROGEXT@: $(OBJS)
$(CC) $(CFLAGS) -o cvdump@PROGEXT@ $(OBJS)
cvdump: $(OBJS)
$(CC) $(CFLAGS) -o cvdump $(OBJS)
### Dependencies:
......@@ -5,7 +5,7 @@ SRCDIR = @srcdir@
VPATH = @srcdir@
YACCOPT = #-v
PROGRAMS = wmc@PROGEXT@
PROGRAMS = wmc
MODULE = none
C_SRCS = \
......@@ -24,8 +24,8 @@ depend: y.tab.h
@MAKE_RULES@
wmc@PROGEXT@: $(OBJS) $(TOPOBJDIR)/unicode/unicode.o
$(CC) $(CFLAGS) -o wmc@PROGEXT@ $(OBJS) $(TOPOBJDIR)/unicode/unicode.o $(LEXLIB)
wmc: $(OBJS) $(TOPOBJDIR)/unicode/unicode.o
$(CC) $(CFLAGS) -o wmc $(OBJS) $(TOPOBJDIR)/unicode/unicode.o $(LEXLIB)
$(TOPOBJDIR)/unicode/unicode.o check_unicode:
cd $(TOPSRCDIR)/unicode && $(MAKE)
......
......@@ -6,7 +6,7 @@ VPATH = @srcdir@
LEXOPT = -Cf #-w -b
YACCOPT = #-v
PROGRAMS = wrc@PROGEXT@
PROGRAMS = wrc
MODULE = none
C_SRCS = \
......@@ -29,8 +29,8 @@ depend: y.tab.h ppy.tab.h
@MAKE_RULES@
wrc@PROGEXT@: $(OBJS)
$(CC) $(CFLAGS) -o wrc@PROGEXT@ $(OBJS) $(LEXLIB)
wrc: $(OBJS)
$(CC) $(CFLAGS) -o wrc $(OBJS) $(LEXLIB)
y.tab.c y.tab.h: 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