From 4943642f289037f8c6d958b85f82123aad262802 Mon Sep 17 00:00:00 2001 From: Kern Sibbald Date: Sat, 12 Jan 2008 19:50:28 +0000 Subject: [PATCH] Fix Win32 build with new .def files and DLL_IMP_EXP ... git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@6281 91ce42f0-d328-0410-95d8-f526ca767f89 --- bacula/src/cats/sql_cmds.c | 2 +- bacula/src/lib/message.c | 2 +- bacula/src/lib/runscript.h | 4 ++-- bacula/src/win32/README.mingw32 | 11 ++++++++++- bacula/src/win32/dll/bacula.def | 1 + bacula/src/win32/dll/make_def | 8 ++++++++ bacula/technotes-2.3 | 2 ++ 7 files changed, 25 insertions(+), 5 deletions(-) diff --git a/bacula/src/cats/sql_cmds.c b/bacula/src/cats/sql_cmds.c index e953c34271..b847033d18 100644 --- a/bacula/src/cats/sql_cmds.c +++ b/bacula/src/cats/sql_cmds.c @@ -1,7 +1,7 @@ /* Bacula® - The Network Backup Solution - Copyright (C) 2002-2007 Free Software Foundation Europe e.V. + Copyright (C) 2002-2008 Free Software Foundation Europe e.V. The main author of Bacula is Kern Sibbald, with contributions from many others, a complete list can be found in the file AUTHORS. diff --git a/bacula/src/lib/message.c b/bacula/src/lib/message.c index 91a34cf417..2b624f8235 100644 --- a/bacula/src/lib/message.c +++ b/bacula/src/lib/message.c @@ -1,7 +1,7 @@ /* Bacula® - The Network Backup Solution - Copyright (C) 2000-2007 Free Software Foundation Europe e.V. + Copyright (C) 2000-2008 Free Software Foundation Europe e.V. The main author of Bacula is Kern Sibbald, with contributions from many others, a complete list can be found in the file AUTHORS. diff --git a/bacula/src/lib/runscript.h b/bacula/src/lib/runscript.h index 5a6594f9a2..921fc11ef2 100644 --- a/bacula/src/lib/runscript.h +++ b/bacula/src/lib/runscript.h @@ -1,7 +1,7 @@ /* Bacula® - The Network Backup Solution - Copyright (C) 2006-2007 Free Software Foundation Europe e.V. + Copyright (C) 2006-2008 Free Software Foundation Europe e.V. The main author of Bacula is Kern Sibbald, with contributions from many others, a complete list can be found in the file AUTHORS. @@ -110,6 +110,6 @@ void free_runscript(RUNSCRIPT *script); /* foreach_alist free RUNSCRIPT */ void free_runscripts(alist *runscripts); /* you have to free alist */ -extern bool (*console_command)(JCR *jcr, const char *cmd); +extern DLL_IMP_EXP bool (*console_command)(JCR *jcr, const char *cmd); #endif /* __RUNSCRIPT_H_ */ diff --git a/bacula/src/win32/README.mingw32 b/bacula/src/win32/README.mingw32 index ecd0bb6b88..09a34bf777 100644 --- a/bacula/src/win32/README.mingw32 +++ b/bacula/src/win32/README.mingw32 @@ -201,7 +201,16 @@ exported. New data variables are exported by adding the macro DLL_IMP_EXP to the variable declaration in the header file. All exported variables must be declared in a header file and MUST NOT be declared in a -source file referencing the variable. +source file referencing the variable. Example, src/lib/runscript.h: + +extern DLL_IMP_EXP bool (*console_command)(JCR *jcr, const char *cmd); + +or src/jcr.h + +extern int DLL_IMP_EXP num_jobs_run; +extern DLL_IMP_EXP dlist * last_jobs; +... + Exporting functions is now more or less automated. If you find that a function name has been added, changed, or an argument modified, diff --git a/bacula/src/win32/dll/bacula.def b/bacula/src/win32/dll/bacula.def index 857677e4d5..8bf1f070fe 100644 --- a/bacula/src/win32/dll/bacula.def +++ b/bacula/src/win32/dll/bacula.def @@ -714,3 +714,4 @@ _Z17register_watchdogP12s_watchdog_t _Z19unregister_watchdogP12s_watchdog_t watchdog_thread +console_command DATA diff --git a/bacula/src/win32/dll/make_def b/bacula/src/win32/dll/make_def index 89b036e058..25f1988064 100755 --- a/bacula/src/win32/dll/make_def +++ b/bacula/src/win32/dll/make_def @@ -17,3 +17,11 @@ for i in *.o ; do \ ${NM} $i | grep "^[0-9a-f]* T _" | cut -c13- ; \ echo " "; \ done + +DATA="\ + console_command" + +for i in ${DATA}; do \ + echo "$i DATA"; \ +done + diff --git a/bacula/technotes-2.3 b/bacula/technotes-2.3 index 9522891bc2..20d33f5dd4 100644 --- a/bacula/technotes-2.3 +++ b/bacula/technotes-2.3 @@ -1,6 +1,8 @@ Technical notes on version 2.3 General: +12Jan08 +kes Fix Win32 build with new .def files and DLL_IMP_EXP ... 10Jan08 kes Add DataDespooling and DataCommitting status (committing is the last despooling). -- 2.39.5