Declare debug channels as static variables so that we don't need to
generate an external .dbg.c file to define them.
diff --git a/Make.rules.in b/Make.rules.in
index 94bb883..456180d 100644
--- a/Make.rules.in
+++ b/Make.rules.in
@@ -107,7 +107,7 @@
api_manext = 3w
conf_manext = 5
CLEAN_FILES = *.o *.a *.so *.ln *.$(LIBEXT) \\\#*\\\# *~ *% .\\\#* *.bak *.orig *.rej \
- *.flc *.dbg.c *.tab.c *.tab.h @LEX_OUTPUT_ROOT@.c core
+ *.flc *.tab.c *.tab.h @LEX_OUTPUT_ROOT@.c core
OBJS = $(C_SRCS:.c=.o) $(EXTRA_OBJS)
@@ -167,11 +167,6 @@
$(RC_SRCS:.rc=.res) $(RC_SRCS16:.rc=.res): $(WRC) $(RC_BINARIES) $(RC_TLB)
-# Rule for main module debug channels
-
-$(MODULE).dbg.c: $(C_SRCS) $(C_SRCS16) $(WINEBUILD)
- $(WINEBUILD) $(DEFS) -o $@ --debug -C$(SRCDIR) $(C_SRCS) $(C_SRCS16)
-
# Rules for makefile
Makefile: Makefile.in $(TOPSRCDIR)/configure
diff --git a/Makefile.in b/Makefile.in
index c2e260c..64c7298 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -136,10 +136,10 @@
# Misc rules
TAGS etags:
- find $(TOPSRCDIR) -name '*.[ch]' -a -not -name '*.dbg.c' -print | etags -
+ find $(TOPSRCDIR) -name '*.[ch]' -print | etags -
tags ctags:
- find $(TOPSRCDIR) -name '*.[ch]' -a -not -name '*.dbg.c' -print | ctags --c-types=+px -L -
+ find $(TOPSRCDIR) -name '*.[ch]' -print | ctags --c-types=+px -L -
manpages htmlpages sgmlpages:
cd documentation && $(MAKE) $@
diff --git a/dlls/Makedll.rules.in b/dlls/Makedll.rules.in
index 6fa914d..ebdc2f1 100644
--- a/dlls/Makedll.rules.in
+++ b/dlls/Makedll.rules.in
@@ -18,7 +18,7 @@
MAINSPEC = $(BASEMODULE).spec
SPEC_DEF = lib$(BASEMODULE).def
WIN16_FILES = $(SPEC_SRCS16:.spec=.spec.o) $(C_SRCS16:.c=.o) $(EXTRA_OBJS16)
-ALL_OBJS = @WIN16_FILES@ $(OBJS) $(MODULE).dbg.o $(RC_SRCS:.rc=.res)
+ALL_OBJS = @WIN16_FILES@ $(OBJS) $(RC_SRCS:.rc=.res)
ALL_LIBS = $(LIBWINE) $(EXTRALIBS) $(LIBPORT) $(LDFLAGS) $(LIBS)
ALL_IMPORTS = $(DELAYIMPORTS) $(IMPORTS)
IMPLIB_OBJS = $(IMPLIB_SRCS:.c=.o)
@@ -36,8 +36,8 @@
# Rules for .dll files
-$(MODULE): $(RCOBJS) $(OBJS) $(MODULE).dbg.o $(SPEC_DEF) Makefile.in
- $(DLLWRAP) -k --def $(SPEC_DEF) -o $@ $(RCOBJS) $(OBJS) $(MODULE).dbg.o $(DLL_LDPATH) $(ALL_IMPORTS:%=-l%) $(ALL_LIBS)
+$(MODULE): $(RCOBJS) $(OBJS) $(SPEC_DEF) Makefile.in
+ $(DLLWRAP) -k --def $(SPEC_DEF) -o $@ $(RCOBJS) $(OBJS) $(DLL_LDPATH) $(ALL_IMPORTS:%=-l%) $(ALL_LIBS)
# Rules for import libraries
@@ -68,8 +68,8 @@
$(WIN16_FILES:%=__checklink16__%): checklink16
-checklink16:: $(MAINSPEC).o $(OBJS) $(MODULE).dbg.o dummy
- $(CC) -o checklink -Wl,-rpath,$(TOPOBJDIR)/libs $(TOPSRCDIR)/dlls/checklink.c $(MAINSPEC).o $(OBJS) $(MODULE).dbg.o -L$(DLLDIR) $(ALL_LIBS) -lwinecrt0 -lm && $(RM) checklink $(MAINSPEC).o
+checklink16:: $(MAINSPEC).o $(OBJS) dummy
+ $(CC) -o checklink -Wl,-rpath,$(TOPOBJDIR)/libs $(TOPSRCDIR)/dlls/checklink.c $(MAINSPEC).o $(OBJS) -L$(DLLDIR) $(ALL_LIBS) -lwinecrt0 -lm && $(RM) checklink $(MAINSPEC).o
checklink:: $(WIN16_FILES:%=__checklink16__%)
diff --git a/dlls/dxerr8/Makefile.in b/dlls/dxerr8/Makefile.in
index d1eb28c..4167db2 100644
--- a/dlls/dxerr8/Makefile.in
+++ b/dlls/dxerr8/Makefile.in
@@ -7,8 +7,6 @@
C_SRCS = \
dxerr8.c
-EXTRA_OBJS = $(MODULE).dbg.o
-
@MAKE_IMPLIB_RULES@
### Dependencies:
diff --git a/dlls/dxerr9/Makefile.in b/dlls/dxerr9/Makefile.in
index 7a8f2fa..0a2a005 100644
--- a/dlls/dxerr9/Makefile.in
+++ b/dlls/dxerr9/Makefile.in
@@ -7,8 +7,6 @@
C_SRCS = \
dxerr9.c
-EXTRA_OBJS = $(MODULE).dbg.o
-
@MAKE_IMPLIB_RULES@
### Dependencies:
diff --git a/dlls/kernel/process.c b/dlls/kernel/process.c
index f599729..fcfeb7c 100644
--- a/dlls/kernel/process.c
+++ b/dlls/kernel/process.c
@@ -933,12 +933,9 @@
{
static const WCHAR kernel32W[] = {'k','e','r','n','e','l','3','2',0};
PEB *peb = NtCurrentTeb()->Peb;
- extern void __wine_dbg_kernel32_init(void);
PTHREAD_Init();
- __wine_dbg_kernel32_init(); /* hack: register debug channels early */
-
setbuf(stdout,NULL);
setbuf(stderr,NULL);
setlocale(LC_CTYPE,"");
diff --git a/dlls/ntdll/debugtools.c b/dlls/ntdll/debugtools.c
index 2f0be3d..ce2e65b 100644
--- a/dlls/ntdll/debugtools.c
+++ b/dlls/ntdll/debugtools.c
@@ -200,8 +200,5 @@
*/
void debug_init(void)
{
- extern void __wine_dbg_ntdll_init(void);
-
__wine_dbg_set_functions( &funcs, &default_funcs, sizeof(funcs) );
- __wine_dbg_ntdll_init(); /* hack: register debug channels early */
}
diff --git a/include/wine/debug.h b/include/wine/debug.h
index 4393b3b..aca055f 100644
--- a/include/wine/debug.h
+++ b/include/wine/debug.h
@@ -234,9 +234,9 @@
#define WINE_ERR_ON(ch) __WINE_IS_DEBUG_ON(_ERR,&__wine_dbch_##ch)
#define WINE_DECLARE_DEBUG_CHANNEL(ch) \
- extern struct __wine_debug_channel __wine_dbch_##ch
+ static struct __wine_debug_channel __wine_dbch_##ch = { ~0, #ch }
#define WINE_DEFAULT_DEBUG_CHANNEL(ch) \
- extern struct __wine_debug_channel __wine_dbch_##ch; \
+ static struct __wine_debug_channel __wine_dbch_##ch = { ~0, #ch }; \
static struct __wine_debug_channel * const __wine_dbch___default = &__wine_dbch_##ch
#define WINE_DPRINTF wine_dbg_printf
diff --git a/programs/Makeprog.rules.in b/programs/Makeprog.rules.in
index c001cfc..308ea27 100644
--- a/programs/Makeprog.rules.in
+++ b/programs/Makeprog.rules.in
@@ -12,7 +12,6 @@
DLLDEFS = @DLLDEFS@
DLLFLAGS = @DLLFLAGS@
DEFS = $(DLLDEFS) $(EXTRADEFS)
-ALL_OBJS = $(OBJS) $(MODULE).dbg.o
ALL_IMPORTS = $(DELAYIMPORTS) $(IMPORTS)
ALL_LIBS = $(ALL_IMPORTS:%=-l%) $(LIBWINE) $(EXTRALIBS) $(LIBPORT) $(LDFLAGS) $(LIBS)
DLL_LDPATH = -L$(DLLDIR) $(ALL_IMPORTS:%=-L$(DLLDIR)/%)
@@ -25,16 +24,16 @@
# Rules for .so main module
-$(MODULE).so: $(ALL_OBJS) $(RC_SRCS:.rc=.res) Makefile.in
- $(WINEGCC) -B$(TOOLSDIR)/tools/winebuild $(APPMODE) $(ALL_OBJS) $(RC_SRCS:.rc=.res) -o $@ $(DLL_LDPATH) $(ALL_LIBS) $(DELAYIMPORTS:%=-Wb,-d%)
+$(MODULE).so: $(OBJS) $(RC_SRCS:.rc=.res) Makefile.in
+ $(WINEGCC) -B$(TOOLSDIR)/tools/winebuild $(APPMODE) $(OBJS) $(RC_SRCS:.rc=.res) -o $@ $(DLL_LDPATH) $(ALL_LIBS) $(DELAYIMPORTS:%=-Wb,-d%)
$(BASEMODULE): $(WINEWRAPPER)
$(RM) $@ && $(LN_S) $(WINEWRAPPER) $@
# Rules for .exe main module
-$(MODULE): $(ALL_OBJS) $(RCOBJS) Makefile.in
- $(CC) $(APPMODE) $(ALL_OBJS) $(RCOBJS) -o $@ $(ALL_LIBS)
+$(MODULE): $(OBJS) $(RCOBJS) Makefile.in
+ $(CC) $(APPMODE) $(OBJS) $(RCOBJS) -o $@ $(ALL_LIBS)
# Rules for testing