]> git.sur5r.net Git - bacula/bacula/commitdiff
Add native win32 bconsole
authorKern Sibbald <kern@sibbald.com>
Fri, 23 Apr 2004 16:19:06 +0000 (16:19 +0000)
committerKern Sibbald <kern@sibbald.com>
Fri, 23 Apr 2004 16:19:06 +0000 (16:19 +0000)
git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@1273 91ce42f0-d328-0410-95d8-f526ca767f89

bacula/autoconf/configure.in
bacula/configure
bacula/src/console/console.c
bacula/src/console/console_conf.c
bacula/src/lib/message.c
bacula/src/win32/baculafd/bacula-fd.conf.in [new file with mode: 0755]
bacula/src/win32/console/Makefile [new file with mode: 0644]
bacula/src/win32/console/bconsole.conf.in [new file with mode: 0755]
bacula/src/win32/console/console.dsp
bacula/src/win32/console/console.mak [new file with mode: 0644]
bacula/src/win32/winbacula.nsi.in

index 87c4f3fc1edddd23c31ec36dd792e204247ce15a..37ca9a59d4ef7fbcef6034414bec6c9a2ac6f596 100644 (file)
@@ -1,4 +1,4 @@
-dnl#
+lal#
 dnl#
 dnl# Process this file with autoconf to produce a configure script.
 dnl#
@@ -1662,8 +1662,9 @@ AC_OUTPUT([autoconf/Make.common \
           src/findlib/Makefile \
           src/tools/Makefile \
           src/win32/winbacula.nsi \
-          src/win32/bacula-fd.conf \
+          src/win32/baculafd/bacula-fd.conf \
           src/win32/Makefile \
+          src/win32/console/bconsole.conf.in \
           $PFILES ],  
          [(echo "Doing make of dependencies"; make depend;) ]
 )
index 9c953a795133ce926dcfe81efedfc3bbb4961e87..217ad1b53a9cc66b00f25337f0769fd5e1ef3243 100755 (executable)
@@ -18186,7 +18186,7 @@ if test "x${subsysdir}" = "x${sbindir}" ; then
    exit 1
 fi
 
-                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ac_config_files="$ac_config_files autoconf/Make.common Makefile rescue/Makefile rescue/linux/Makefile rescue/freebsd/Makefile rescue/solaris/Makefile scripts/startmysql scripts/stopmysql scripts/btraceback scripts/startit scripts/stopit scripts/bconsole scripts/gconsole scripts/bacula scripts/devel_bacula scripts/fd scripts/Makefile scripts/logrotate scripts/bacula.desktop.gnome1 scripts/bacula.desktop.gnome2 scripts/bacula.desktop.gnome1.consolehelper scripts/bacula.desktop.gnome2.consolehelper scripts/bacula.desktop.gnome1.xsu scripts/bacula.desktop.gnome2.xsu scripts/gnome-console.console_apps scripts/mtx-changer doc/Makefile src/Makefile src/host.h src/console/Makefile src/console/bconsole.conf src/gnome-console/Makefile src/gnome-console/gnome-console.conf src/gnome2-console/Makefile src/gnome2-console/gnome-console.conf src/wx-console/Makefile src/wx-console/wx-console.conf src/dird/Makefile src/dird/bacula-dir.conf src/lib/Makefile src/stored/Makefile src/stored/bacula-sd.conf src/filed/Makefile src/filed/bacula-fd.conf src/filed/win32/Makefile src/cats/Makefile src/cats/make_catalog_backup src/cats/delete_catalog_backup src/cats/create_postgresql_database src/cats/update_postgresql_tables src/cats/make_postgresql_tables src/cats/grant_postgresql_privileges src/cats/drop_postgresql_tables src/cats/drop_postgresql_database src/cats/create_mysql_database src/cats/update_mysql_tables src/cats/make_mysql_tables src/cats/grant_mysql_privileges src/cats/drop_mysql_tables src/cats/drop_mysql_database src/cats/create_sqlite_database src/cats/update_sqlite_tables src/cats/make_sqlite_tables src/cats/grant_sqlite_privileges src/cats/drop_sqlite_tables src/cats/drop_sqlite_database src/cats/sqlite src/cats/mysql src/cats/create_bdb_database src/cats/update_bdb_tables src/cats/make_bdb_tables src/cats/grant_bdb_privileges src/cats/drop_bdb_tables src/cats/drop_bdb_database src/cats/create_bacula_database src/cats/update_bacula_tables src/cats/grant_bacula_privileges src/cats/make_bacula_tables src/cats/drop_bacula_tables src/cats/drop_bacula_database src/findlib/Makefile src/tools/Makefile src/win32/winbacula.nsi src/win32/bacula-fd.conf src/win32/Makefile $PFILES"
+                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      ac_config_files="$ac_config_files autoconf/Make.common Makefile rescue/Makefile rescue/linux/Makefile rescue/freebsd/Makefile rescue/solaris/Makefile scripts/startmysql scripts/stopmysql scripts/btraceback scripts/startit scripts/stopit scripts/bconsole scripts/gconsole scripts/bacula scripts/devel_bacula scripts/fd scripts/Makefile scripts/logrotate scripts/bacula.desktop.gnome1 scripts/bacula.desktop.gnome2 scripts/bacula.desktop.gnome1.consolehelper scripts/bacula.desktop.gnome2.consolehelper scripts/bacula.desktop.gnome1.xsu scripts/bacula.desktop.gnome2.xsu scripts/gnome-console.console_apps scripts/mtx-changer doc/Makefile src/Makefile src/host.h src/console/Makefile src/console/bconsole.conf src/gnome-console/Makefile src/gnome-console/gnome-console.conf src/gnome2-console/Makefile src/gnome2-console/gnome-console.conf src/wx-console/Makefile src/wx-console/wx-console.conf src/dird/Makefile src/dird/bacula-dir.conf src/lib/Makefile src/stored/Makefile src/stored/bacula-sd.conf src/filed/Makefile src/filed/bacula-fd.conf src/filed/win32/Makefile src/cats/Makefile src/cats/make_catalog_backup src/cats/delete_catalog_backup src/cats/create_postgresql_database src/cats/update_postgresql_tables src/cats/make_postgresql_tables src/cats/grant_postgresql_privileges src/cats/drop_postgresql_tables src/cats/drop_postgresql_database src/cats/create_mysql_database src/cats/update_mysql_tables src/cats/make_mysql_tables src/cats/grant_mysql_privileges src/cats/drop_mysql_tables src/cats/drop_mysql_database src/cats/create_sqlite_database src/cats/update_sqlite_tables src/cats/make_sqlite_tables src/cats/grant_sqlite_privileges src/cats/drop_sqlite_tables src/cats/drop_sqlite_database src/cats/sqlite src/cats/mysql src/cats/create_bdb_database src/cats/update_bdb_tables src/cats/make_bdb_tables src/cats/grant_bdb_privileges src/cats/drop_bdb_tables src/cats/drop_bdb_database src/cats/create_bacula_database src/cats/update_bacula_tables src/cats/grant_bacula_privileges src/cats/make_bacula_tables src/cats/drop_bacula_tables src/cats/drop_bacula_database src/findlib/Makefile src/tools/Makefile src/win32/winbacula.nsi src/win32/baculafd/bacula-fd.conf src/win32/Makefile src/win32/console/bconsole.conf.in $PFILES"
           ac_config_commands="$ac_config_commands default"
 cat >confcache <<\_ACEOF
 # This file is a shell script that caches the results of configure
@@ -18798,8 +18798,9 @@ do
   "src/findlib/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/findlib/Makefile" ;;
   "src/tools/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/tools/Makefile" ;;
   "src/win32/winbacula.nsi" ) CONFIG_FILES="$CONFIG_FILES src/win32/winbacula.nsi" ;;
-  "src/win32/bacula-fd.conf" ) CONFIG_FILES="$CONFIG_FILES src/win32/bacula-fd.conf" ;;
+  "src/win32/baculafd/bacula-fd.conf" ) CONFIG_FILES="$CONFIG_FILES src/win32/baculafd/bacula-fd.conf" ;;
   "src/win32/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/win32/Makefile" ;;
+  "src/win32/console/bconsole.conf.in" ) CONFIG_FILES="$CONFIG_FILES src/win32/console/bconsole.conf.in" ;;
   "$PFILES" ) CONFIG_FILES="$CONFIG_FILES $PFILES" ;;
   "default" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
   "src/config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS src/config.h:autoconf/config.h.in" ;;
index 2116aae67348c269494a519c3f991bc4d0ff15e0..d3f0fcd4e054fa00bd5568a754c1b76a87c8cbe7 100644 (file)
@@ -44,7 +44,7 @@
 
 #ifdef HAVE_WIN32
 #include <windows.h>
-#define isatty(fd) (fd==1)
+#define isatty(fd) (fd==0)
 DWORD  g_platform_id = VER_PLATFORM_WIN32_WINDOWS;
 #endif
  
@@ -381,6 +381,10 @@ Without that I don't how to speak to the Director :-(\n"), configfile);
    memset(&jcr, 0, sizeof(jcr));
 
 
+#ifdef HAVE_WIN32
+   WSA_Init();                       /* Initialize Windows sockets */
+#endif
+
    if (ndir > 1) {
       struct sockaddr_in client_addr;
       memset(&client_addr, 0, sizeof(client_addr));
@@ -519,6 +523,9 @@ wait_for_data(int fd, int sec)
 {
    fd_set fdset;
    struct timeval tv;
+#ifdef HAVE_WIN32
+   return 1;                          /* select doesn't seem to work on Win32 */
+#endif
 
    tv.tv_sec = sec;
    tv.tv_usec = 0;
@@ -731,6 +738,8 @@ void sendit(char *buf)
     if (tee) {
        fputs(buf, stdout);
     }
-    fflush(stdout);
+    if (output == stdout || tee) {
+       fflush(stdout);
+    }
 #endif
 }
index 48e460b5819d69c20b2bb806473824b0fee42de4..1fade95c5fc9336eb823d3c9a09e042f1d28504c 100644 (file)
@@ -56,8 +56,15 @@ int r_last  = R_LAST;
  * then move it to allocated memory when the resource
  * scan is complete.
  */
+#if defined(HAVE_WIN32) && !defined(HAVE_CYGWIN)  && !defined(HAVE_MINGW)
+extern "C" { // work around visual compiler mangling variables
+    URES res_all;
+    int  res_all_size = sizeof(res_all);
+}
+#else
 URES res_all;
 int  res_all_size = sizeof(res_all);
+#endif
 
 /* Definition of records permitted within each
  * resource with the routine to process the record 
index f9742687492cf20d35103af4ba4f98775ca61f3f..697fc59220d2d224d0934f1a55808406c8dbabe6 100755 (executable)
 #include "bacula.h"
 #include "jcr.h"
 
+#if !define(HAVE_CONSOLE)
 #if defined(HAVE_CYGWIN) || defined(HAVE_WIN32)
 #include <windows.h>
 #endif
+#endif
 
 #define FULL_LOCATION 1              /* set for file:line in Debug messages */
 
@@ -560,8 +562,10 @@ void dispatch_message(JCR *jcr, int type, int level, char *msg)
     if (type == M_ABORT || type == M_ERROR_TERM) {
        fputs(msg, stdout);        /* print this here to INSURE that it is printed */
        fflush(stdout);
+#if !defined(HAVE_CONSOLE)
 #if defined(HAVE_CYGWIN) || defined(HAVE_WIN32)
        MessageBox(NULL, msg, "Bacula", MB_OK);
+#endif
 #endif
     }
 
diff --git a/bacula/src/win32/baculafd/bacula-fd.conf.in b/bacula/src/win32/baculafd/bacula-fd.conf.in
new file mode 100755 (executable)
index 0000000..a73011a
--- /dev/null
@@ -0,0 +1,32 @@
+#
+# Default  Bacula File Daemon Configuration file
+#
+#  For Bacula release @VERSION@ (@DATE@) -- @DISTNAME@ @DISTVER@
+#
+# There is not much to change here except perhaps the
+# File daemon Name to
+#
+
+#
+# List Directors who are permitted to contact this File daemon
+#
+Director {
+  Name = @hostname@-dir
+  Password = "@fd_password@"
+}
+
+#
+# "Global" File daemon configuration specifications
+#
+FileDaemon {                          # this is me
+  Name = @hostname@-fd
+  FDport = @fd_port@                  # where we listen for the director
+  WorkingDirectory = @working_dir@
+  Pid Directory = @piddir@
+}
+
+# Send all messages except skipped files back to Director
+Messages {
+  Name = Standard
+  director = @hostname@-dir = all, !skipped
+}
diff --git a/bacula/src/win32/console/Makefile b/bacula/src/win32/console/Makefile
new file mode 100644 (file)
index 0000000..226c8ac
--- /dev/null
@@ -0,0 +1,24 @@
+#
+# Makefile to build the native Win32 console
+# VC++ and tools must be on your path
+#
+#     Kern Sibbald, April 2004
+#
+
+NMAKE=nmake
+
+first_rule: all
+
+dummy:
+
+all:  console
+
+
+console:
+       (env MAKEFLAGS= ${NMAKE} CFG="console - Win32 Release" /f console.mak)
+
+
+clean:
+       rm -rf Debug/*.obj Release/*.obj
+
+distclean: clean
diff --git a/bacula/src/win32/console/bconsole.conf.in b/bacula/src/win32/console/bconsole.conf.in
new file mode 100755 (executable)
index 0000000..010797b
--- /dev/null
@@ -0,0 +1,10 @@
+#
+# Bacula User Agent (or Console) Configuration File
+#
+
+Director {
+  Name = @hostname@-dir
+  DIRport = @dir_port@
+  address = @hostname@
+  Password = "@dir_password@"
+}
index fbd4eaf9862a7322e6bbeb9c387ff1d12f55e060..e9c899339acd5bb2bf0a62ec1b09e9a9a65ac8aa 100644 (file)
@@ -35,21 +35,22 @@ RSC=rc.exe
 # PROP BASE Output_Dir "Release"\r
 # PROP BASE Intermediate_Dir "Release"\r
 # PROP BASE Target_Dir ""\r
-# PROP Use_MFC 0\r
+# PROP Use_MFC 2\r
 # PROP Use_Debug_Libraries 0\r
 # PROP Output_Dir "Release"\r
 # PROP Intermediate_Dir "Release"\r
+# PROP Ignore_Export_Lib 0\r
 # PROP Target_Dir ""\r
 # ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /Yu"stdafx.h" /FD /c\r
-# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /Yu"stdafx.h" /FD /c\r
+# ADD CPP /nologo /MD /W3 /GX /I "../compat" /I "../.." /I "../../../../depkgs-win32/pthreads" /I "." /D "_DEBUG" /D "HAVE_CONSOLE" /D "_WINMAIN_" /D "PTW32_BUILD" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "HAVE_WIN32" /D "_AFXDLL" /FD /I /GZ /c\r
 # ADD BASE RSC /l 0x409 /d "NDEBUG"\r
-# ADD RSC /l 0x409 /d "NDEBUG"\r
+# ADD RSC /l 0x409 /d "NDEBUG" /d "_AFXDLL"\r
 BSC32=bscmake.exe\r
 # ADD BASE BSC32 /nologo\r
 # ADD BSC32 /nologo\r
 LINK32=link.exe\r
 # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386\r
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386\r
+# ADD LINK32 wsock32.lib pthreadVCE.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"Release/bconsole.exe" /libpath:"../../../../depkgs-win32/pthreads"\r
 \r
 !ELSEIF  "$(CFG)" == "console - Win32 Debug"\r
 \r
@@ -65,7 +66,8 @@ LINK32=link.exe
 # PROP Ignore_Export_Lib 0\r
 # PROP Target_Dir ""\r
 # ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /Yu"stdafx.h" /FD /GZ /c\r
-# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "../compat" /I "../.." /I "../../../../depkgs-win32/pthreads" /I "." /D "_DEBUG" /D "_WINMAIN_" /D "PTW32_BUILD" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "HAVE_WIN32" /D "_AFXDLL" /FR /FD /I /GZ /c\r
+# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "../compat" /I "../.." /I "../../../../depkgs-win32/pthreads" /I "." /D "_DEBUG" /D "HAVE_CONSOLE" /D "_WINMAIN_" /D "PTW32_BUILD" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "HAVE_WIN32" /D "_AFXDLL" /FD /I /GZ /c\r
+# SUBTRACT CPP /Fr\r
 # ADD BASE RSC /l 0x409 /d "_DEBUG"\r
 # ADD RSC /l 0x409 /d "_DEBUG" /d "_AFXDLL"\r
 BSC32=bscmake.exe\r
@@ -73,7 +75,7 @@ BSC32=bscmake.exe
 # ADD BSC32 /nologo\r
 LINK32=link.exe\r
 # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept\r
-# ADD LINK32 wsock32.lib pthreadVCE.lib /nologo /subsystem:windows /pdb:none /debug /machine:I386 /out:"Debug/bconsole.exe" /libpath:"../../../../depkgs-win32/pthreads"\r
+# ADD LINK32 wsock32.lib pthreadVCE.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /out:"Debug/bconsole.exe" /libpath:"../../../../depkgs-win32/pthreads"\r
 \r
 !ENDIF \r
 \r
diff --git a/bacula/src/win32/console/console.mak b/bacula/src/win32/console/console.mak
new file mode 100644 (file)
index 0000000..a2aae0c
--- /dev/null
@@ -0,0 +1,488 @@
+# Microsoft Developer Studio Generated NMAKE File, Based on console.dsp
+!IF "$(CFG)" == ""
+CFG=console - Win32 Debug
+!MESSAGE No configuration specified. Defaulting to console - Win32 Debug.
+!ENDIF 
+
+!IF "$(CFG)" != "console - Win32 Release" && "$(CFG)" != "console - Win32 Debug"
+!MESSAGE Invalid configuration "$(CFG)" specified.
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE 
+!MESSAGE NMAKE /f "console.mak" CFG="console - Win32 Debug"
+!MESSAGE 
+!MESSAGE Possible choices for configuration are:
+!MESSAGE 
+!MESSAGE "console - Win32 Release" (based on "Win32 (x86) Console Application")
+!MESSAGE "console - Win32 Debug" (based on "Win32 (x86) Console Application")
+!MESSAGE 
+!ERROR An invalid configuration is specified.
+!ENDIF 
+
+!IF "$(OS)" == "Windows_NT"
+NULL=
+!ELSE 
+NULL=nul
+!ENDIF 
+
+CPP=cl.exe
+RSC=rc.exe
+
+!IF  "$(CFG)" == "console - Win32 Release"
+
+OUTDIR=.\Release
+INTDIR=.\Release
+# Begin Custom Macros
+OutDir=.\Release
+# End Custom Macros
+
+ALL : "$(OUTDIR)\bconsole.exe" "$(OUTDIR)\console.pch"
+
+
+CLEAN :
+       -@erase "$(INTDIR)\alist.obj"
+       -@erase "$(INTDIR)\authenticate.obj"
+       -@erase "$(INTDIR)\base64.obj"
+       -@erase "$(INTDIR)\bnet.obj"
+       -@erase "$(INTDIR)\bsys.obj"
+       -@erase "$(INTDIR)\btime.obj"
+       -@erase "$(INTDIR)\compat.obj"
+       -@erase "$(INTDIR)\console.obj"
+       -@erase "$(INTDIR)\console.pch"
+       -@erase "$(INTDIR)\console_conf.obj"
+       -@erase "$(INTDIR)\cram-md5.obj"
+       -@erase "$(INTDIR)\crc32.obj"
+       -@erase "$(INTDIR)\dlist.obj"
+       -@erase "$(INTDIR)\edit.obj"
+       -@erase "$(INTDIR)\getopt.obj"
+       -@erase "$(INTDIR)\hmac.obj"
+       -@erase "$(INTDIR)\idcache.obj"
+       -@erase "$(INTDIR)\jcr.obj"
+       -@erase "$(INTDIR)\lex.obj"
+       -@erase "$(INTDIR)\md5.obj"
+       -@erase "$(INTDIR)\mem_pool.obj"
+       -@erase "$(INTDIR)\message.obj"
+       -@erase "$(INTDIR)\parse_conf.obj"
+       -@erase "$(INTDIR)\print.obj"
+       -@erase "$(INTDIR)\queue.obj"
+       -@erase "$(INTDIR)\rwlock.obj"
+       -@erase "$(INTDIR)\scan.obj"
+       -@erase "$(INTDIR)\serial.obj"
+       -@erase "$(INTDIR)\sha1.obj"
+       -@erase "$(INTDIR)\smartall.obj"
+       -@erase "$(INTDIR)\StdAfx.obj"
+       -@erase "$(INTDIR)\timers.obj"
+       -@erase "$(INTDIR)\util.obj"
+       -@erase "$(INTDIR)\vc60.idb"
+       -@erase "$(INTDIR)\watchdog.obj"
+       -@erase "$(OUTDIR)\bconsole.exe"
+
+"$(OUTDIR)" :
+    if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP_PROJ=/nologo /MD /W3 /GX /I "../compat" /I "../.." /I "../../../../depkgs-win32/pthreads" /I "." /D "_DEBUG" /D "HAVE_CONSOLE" /D "_WINMAIN_" /D "PTW32_BUILD" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "HAVE_WIN32" /D "_AFXDLL" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /I /GZ /c 
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\console.bsc" 
+BSC32_SBRS= \
+       
+LINK32=link.exe
+LINK32_FLAGS=wsock32.lib pthreadVCE.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"$(OUTDIR)\bconsole.exe" /libpath:"../../../../depkgs-win32/pthreads" 
+LINK32_OBJS= \
+       "$(INTDIR)\alist.obj" \
+       "$(INTDIR)\authenticate.obj" \
+       "$(INTDIR)\base64.obj" \
+       "$(INTDIR)\bnet.obj" \
+       "$(INTDIR)\bsys.obj" \
+       "$(INTDIR)\btime.obj" \
+       "$(INTDIR)\compat.obj" \
+       "$(INTDIR)\console.obj" \
+       "$(INTDIR)\console_conf.obj" \
+       "$(INTDIR)\cram-md5.obj" \
+       "$(INTDIR)\crc32.obj" \
+       "$(INTDIR)\dlist.obj" \
+       "$(INTDIR)\edit.obj" \
+       "$(INTDIR)\getopt.obj" \
+       "$(INTDIR)\hmac.obj" \
+       "$(INTDIR)\idcache.obj" \
+       "$(INTDIR)\jcr.obj" \
+       "$(INTDIR)\lex.obj" \
+       "$(INTDIR)\md5.obj" \
+       "$(INTDIR)\mem_pool.obj" \
+       "$(INTDIR)\message.obj" \
+       "$(INTDIR)\parse_conf.obj" \
+       "$(INTDIR)\print.obj" \
+       "$(INTDIR)\queue.obj" \
+       "$(INTDIR)\rwlock.obj" \
+       "$(INTDIR)\scan.obj" \
+       "$(INTDIR)\serial.obj" \
+       "$(INTDIR)\sha1.obj" \
+       "$(INTDIR)\smartall.obj" \
+       "$(INTDIR)\StdAfx.obj" \
+       "$(INTDIR)\timers.obj" \
+       "$(INTDIR)\util.obj" \
+       "$(INTDIR)\watchdog.obj"
+
+"$(OUTDIR)\bconsole.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+    $(LINK32) @<<
+  $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+!ELSEIF  "$(CFG)" == "console - Win32 Debug"
+
+OUTDIR=.\Debug
+INTDIR=.\Debug
+# Begin Custom Macros
+OutDir=.\Debug
+# End Custom Macros
+
+ALL : "$(OUTDIR)\bconsole.exe" "$(OUTDIR)\console.pch"
+
+
+CLEAN :
+       -@erase "$(INTDIR)\alist.obj"
+       -@erase "$(INTDIR)\authenticate.obj"
+       -@erase "$(INTDIR)\base64.obj"
+       -@erase "$(INTDIR)\bnet.obj"
+       -@erase "$(INTDIR)\bsys.obj"
+       -@erase "$(INTDIR)\btime.obj"
+       -@erase "$(INTDIR)\compat.obj"
+       -@erase "$(INTDIR)\console.obj"
+       -@erase "$(INTDIR)\console.pch"
+       -@erase "$(INTDIR)\console_conf.obj"
+       -@erase "$(INTDIR)\cram-md5.obj"
+       -@erase "$(INTDIR)\crc32.obj"
+       -@erase "$(INTDIR)\dlist.obj"
+       -@erase "$(INTDIR)\edit.obj"
+       -@erase "$(INTDIR)\getopt.obj"
+       -@erase "$(INTDIR)\hmac.obj"
+       -@erase "$(INTDIR)\idcache.obj"
+       -@erase "$(INTDIR)\jcr.obj"
+       -@erase "$(INTDIR)\lex.obj"
+       -@erase "$(INTDIR)\md5.obj"
+       -@erase "$(INTDIR)\mem_pool.obj"
+       -@erase "$(INTDIR)\message.obj"
+       -@erase "$(INTDIR)\parse_conf.obj"
+       -@erase "$(INTDIR)\print.obj"
+       -@erase "$(INTDIR)\queue.obj"
+       -@erase "$(INTDIR)\rwlock.obj"
+       -@erase "$(INTDIR)\scan.obj"
+       -@erase "$(INTDIR)\serial.obj"
+       -@erase "$(INTDIR)\sha1.obj"
+       -@erase "$(INTDIR)\smartall.obj"
+       -@erase "$(INTDIR)\StdAfx.obj"
+       -@erase "$(INTDIR)\timers.obj"
+       -@erase "$(INTDIR)\util.obj"
+       -@erase "$(INTDIR)\vc60.idb"
+       -@erase "$(INTDIR)\vc60.pdb"
+       -@erase "$(INTDIR)\watchdog.obj"
+       -@erase "$(OUTDIR)\bconsole.exe"
+
+"$(OUTDIR)" :
+    if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
+
+CPP_PROJ=/nologo /MDd /W3 /Gm /GX /ZI /Od /I "../compat" /I "../.." /I "../../../../depkgs-win32/pthreads" /I "." /D "_DEBUG" /D "HAVE_CONSOLE" /D "_WINMAIN_" /D "PTW32_BUILD" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "HAVE_WIN32" /D "_AFXDLL" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /I /GZ /c 
+BSC32=bscmake.exe
+BSC32_FLAGS=/nologo /o"$(OUTDIR)\console.bsc" 
+BSC32_SBRS= \
+       
+LINK32=link.exe
+LINK32_FLAGS=wsock32.lib pthreadVCE.lib /nologo /subsystem:console /pdb:none /debug /machine:I386 /out:"$(OUTDIR)\bconsole.exe" /libpath:"../../../../depkgs-win32/pthreads" 
+LINK32_OBJS= \
+       "$(INTDIR)\alist.obj" \
+       "$(INTDIR)\authenticate.obj" \
+       "$(INTDIR)\base64.obj" \
+       "$(INTDIR)\bnet.obj" \
+       "$(INTDIR)\bsys.obj" \
+       "$(INTDIR)\btime.obj" \
+       "$(INTDIR)\compat.obj" \
+       "$(INTDIR)\console.obj" \
+       "$(INTDIR)\console_conf.obj" \
+       "$(INTDIR)\cram-md5.obj" \
+       "$(INTDIR)\crc32.obj" \
+       "$(INTDIR)\dlist.obj" \
+       "$(INTDIR)\edit.obj" \
+       "$(INTDIR)\getopt.obj" \
+       "$(INTDIR)\hmac.obj" \
+       "$(INTDIR)\idcache.obj" \
+       "$(INTDIR)\jcr.obj" \
+       "$(INTDIR)\lex.obj" \
+       "$(INTDIR)\md5.obj" \
+       "$(INTDIR)\mem_pool.obj" \
+       "$(INTDIR)\message.obj" \
+       "$(INTDIR)\parse_conf.obj" \
+       "$(INTDIR)\print.obj" \
+       "$(INTDIR)\queue.obj" \
+       "$(INTDIR)\rwlock.obj" \
+       "$(INTDIR)\scan.obj" \
+       "$(INTDIR)\serial.obj" \
+       "$(INTDIR)\sha1.obj" \
+       "$(INTDIR)\smartall.obj" \
+       "$(INTDIR)\StdAfx.obj" \
+       "$(INTDIR)\timers.obj" \
+       "$(INTDIR)\util.obj" \
+       "$(INTDIR)\watchdog.obj"
+
+"$(OUTDIR)\bconsole.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+    $(LINK32) @<<
+  $(LINK32_FLAGS) $(LINK32_OBJS)
+<<
+
+!ENDIF 
+
+.c{$(INTDIR)}.obj::
+   $(CPP) @<<
+   $(CPP_PROJ) $< 
+<<
+
+.cpp{$(INTDIR)}.obj::
+   $(CPP) @<<
+   $(CPP_PROJ) $< 
+<<
+
+.cxx{$(INTDIR)}.obj::
+   $(CPP) @<<
+   $(CPP_PROJ) $< 
+<<
+
+.c{$(INTDIR)}.sbr::
+   $(CPP) @<<
+   $(CPP_PROJ) $< 
+<<
+
+.cpp{$(INTDIR)}.sbr::
+   $(CPP) @<<
+   $(CPP_PROJ) $< 
+<<
+
+.cxx{$(INTDIR)}.sbr::
+   $(CPP) @<<
+   $(CPP_PROJ) $< 
+<<
+
+
+!IF "$(NO_EXTERNAL_DEPS)" != "1"
+!IF EXISTS("console.dep")
+!INCLUDE "console.dep"
+!ELSE 
+!MESSAGE Warning: cannot find "console.dep"
+!ENDIF 
+!ENDIF 
+
+
+!IF "$(CFG)" == "console - Win32 Release" || "$(CFG)" == "console - Win32 Debug"
+SOURCE=..\lib\alist.cpp
+
+"$(INTDIR)\alist.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\authenticate.cpp
+
+"$(INTDIR)\authenticate.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=..\lib\base64.cpp
+
+"$(INTDIR)\base64.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\bnet.cpp
+
+"$(INTDIR)\bnet.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\bsys.cpp
+
+"$(INTDIR)\bsys.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\btime.cpp
+
+"$(INTDIR)\btime.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\compat\compat.cpp
+
+"$(INTDIR)\compat.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\console.cpp
+
+"$(INTDIR)\console.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE=.\console_conf.cpp
+
+"$(INTDIR)\console_conf.obj" : $(SOURCE) "$(INTDIR)"
+
+
+SOURCE="..\lib\cram-md5.cpp"
+
+"$(INTDIR)\cram-md5.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\crc32.cpp
+
+"$(INTDIR)\crc32.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\dlist.cpp
+
+"$(INTDIR)\dlist.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\edit.cpp
+
+"$(INTDIR)\edit.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\compat\getopt.c
+
+"$(INTDIR)\getopt.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\hmac.cpp
+
+"$(INTDIR)\hmac.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\idcache.cpp
+
+"$(INTDIR)\idcache.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\jcr.cpp
+
+"$(INTDIR)\jcr.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\lex.cpp
+
+"$(INTDIR)\lex.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\md5.cpp
+
+"$(INTDIR)\md5.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\mem_pool.cpp
+
+"$(INTDIR)\mem_pool.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\message.cpp
+
+"$(INTDIR)\message.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\parse_conf.cpp
+
+"$(INTDIR)\parse_conf.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\compat\print.cpp
+
+"$(INTDIR)\print.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\queue.cpp
+
+"$(INTDIR)\queue.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\rwlock.cpp
+
+"$(INTDIR)\rwlock.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\scan.cpp
+
+"$(INTDIR)\scan.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\serial.cpp
+
+"$(INTDIR)\serial.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\sha1.cpp
+
+"$(INTDIR)\sha1.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\smartall.cpp
+
+"$(INTDIR)\smartall.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=.\StdAfx.cpp
+
+!IF  "$(CFG)" == "console - Win32 Release"
+
+CPP_SWITCHES=/nologo /MD /W3 /GX /I "../compat" /I "../.." /I "../../../../depkgs-win32/pthreads" /I "." /D "_DEBUG" /D "HAVE_CONSOLE" /D "_WINMAIN_" /D "PTW32_BUILD" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "HAVE_WIN32" /D "_AFXDLL" /Fp"$(INTDIR)\console.pch" /Yc"stdafx.h" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /I /GZ /c 
+
+"$(INTDIR)\StdAfx.obj" "$(INTDIR)\console.pch" : $(SOURCE) "$(INTDIR)"
+       $(CPP) @<<
+  $(CPP_SWITCHES) $(SOURCE)
+<<
+
+
+!ELSEIF  "$(CFG)" == "console - Win32 Debug"
+
+CPP_SWITCHES=/nologo /MDd /W3 /Gm /GX /ZI /Od /I "../compat" /I "../.." /I "../../../../depkgs-win32/pthreads" /I "." /D "_DEBUG" /D "HAVE_CONSOLE" /D "_WINMAIN_" /D "PTW32_BUILD" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "HAVE_WIN32" /D "_AFXDLL" /Fp"$(INTDIR)\console.pch" /Yc"stdafx.h" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /I /GZ /c 
+
+"$(INTDIR)\StdAfx.obj" "$(INTDIR)\console.pch" : $(SOURCE) "$(INTDIR)"
+       $(CPP) @<<
+  $(CPP_SWITCHES) $(SOURCE)
+<<
+
+
+!ENDIF 
+
+SOURCE=..\lib\timers.cpp
+
+"$(INTDIR)\timers.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\util.cpp
+
+"$(INTDIR)\util.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+SOURCE=..\lib\watchdog.cpp
+
+"$(INTDIR)\watchdog.obj" : $(SOURCE) "$(INTDIR)"
+       $(CPP) $(CPP_PROJ) $(SOURCE)
+
+
+
+!ENDIF 
+
index 66f022359fcda63e48b53c38da3cbb6d6ad9a6cb..e80ffcf14568d10bd34c3369ab042519bcf9868f 100755 (executable)
@@ -148,7 +148,19 @@ Section "Bacula File Service" SecService
  Start:
   Exec '"$INSTDIR\bin\bacula-fd.exe" -c "$INSTDIR\bin\bacula-fd.conf"'
  NoStart:
+SectionEnd
 
+Section "Install Console" SecConsole
+  SetOutPath "$INSTDIR\bin"
+  File console\Release\bconsole.exe
+  IfFileExists "$INSTDIR\bin\bconsole.conf" newconf 
+  File console\bconsole.conf
+  goto do_next
+ newconf:
+  File /oname=bconsole.conf.new console\bconsole.conf
+       
+  ; If /service was given jump to the service install part
+ do_next:
 SectionEnd
 
 
@@ -165,10 +177,12 @@ SectionEnd
 ;
 
   LangString DESC_SecService ${LANG_ENGLISH} "Install Bacula client on this system."
+  LangString DESC_SecConsole ${LANG_ENGLISH} "Install Console program on this system."
   LangString DESC_SecDoc ${LANG_ENGLISH} "Install Documenation on this system."
 
   !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
     !insertmacro MUI_DESCRIPTION_TEXT ${SecService} $(DESC_SecService)
+    !insertmacro MUI_DESCRIPTION_TEXT ${SecConsole} $(DESC_SecConsole)
     !insertmacro MUI_DESCRIPTION_TEXT ${SecDoc} $(DESC_SecDoc)
   !insertmacro MUI_FUNCTION_DESCRIPTION_END
 
@@ -198,6 +212,7 @@ Section "Uninstall"
   Delete /REBOOTOK "$INSTDIR\bin\*.*"
   Delete /REBOOTOK "$INSTDIR\doc\*.*"
   CopyFiles /SILENT "$INSTDIR\bacula-fd.conf" "$INSTDIR\bin\bacula-fd.conf"
+  CopyFiles /SILENT "$INSTDIR\bconsole.conf" "$INSTDIR\bin\bconsole.conf"
   Delete /REBOOTOK "$INSTDIR\bacula-fd.conf"
   Delete /REBOOTOK "$INSTDIR\Uninstall.exe"