]> git.sur5r.net Git - bacula/bacula/commitdiff
Update README.mingw32
authorKern Sibbald <kern@sibbald.com>
Sun, 13 Jul 2008 07:33:41 +0000 (07:33 +0000)
committerKern Sibbald <kern@sibbald.com>
Sun, 13 Jul 2008 07:33:41 +0000 (07:33 +0000)
git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/branches/Branch-2.4@7370 91ce42f0-d328-0410-95d8-f526ca767f89

bacula/src/win32/External-mingw32
bacula/src/win32/README.mingw32
bacula/src/win32/dll/bacula.def
bacula/src/win32/patches/pthreads.patch

index 7dbfeb849c2d6af5ca233af4ab6ad712364475bf..d4f2308fd71a0f72236dcca37d3b4dc89f780fe1 100644 (file)
@@ -31,7 +31,7 @@ NSIS_SRC|http://www.bacula.org/depkgs-mingw32/nsis-2.17-src.tar.bz2
 OPENSSL|http://www.bacula.org/depkgs-mingw32/openssl-0.9.8b.tar.gz
 PCRE|http://www.bacula.org/depkgs-mingw32/pcre-6.3.tar.bz2
 POSTGRESQL|http://www.bacula.org/depkgs-mingw32/postgresql-base-8.1.4.tar.bz2|postgresql-8.1.4
-PTHREADS|http://www.bacula.org/depkgs-mingw32/pthreads-snap-2004-06-22.tar.gz
+PTHREADS|http://www.bacula.org/depkgs-mingw32/pthreads-w32-2-8-0-release.tar.gz
 Qt4|ftp://www.bacula.org/depkgs-mingw32/qt-win-opensource-src-4.3.4.zip
 SCONS|http://www.bacula.org/depkgs-mingw32/scons-0.96.92.tar.gz
 SED|http://www.bacula.org/depkgs-mingw32/sed-4.1.5.tar.gz
@@ -39,6 +39,10 @@ SQLITE|http://www.bacula.org/depkgs-mingw32/sqlite-3.3.17.tar.gz
 STAB2CV|http://www.bacula.org/depkgs-mingw32/stab2cv-0.1.tar.bz2
 WX|http://www.bacula.org/depkgs-mingw32/wxWidgets-2.8.7.tar.gz
 ZLIB|http://www.bacula.org/depkgs-mingw32/zlib-1.2.3.tar.gz
+
+# previous version
+#PTHREADS|http://www.bacula.org/depkgs-mingw32/pthreads-snap-2004-06-22.tar.gz
+
 # 
 # 
 # Original file locations
index eaac14ea0e6773359577a9d6b63f1d4b862a61a7..2055e52287466f149a95ea51548cad5c9a16b9c1 100644 (file)
@@ -3,15 +3,15 @@ Instructions to build Bacula using the MinGW32 on Linux
 
 This file documents the tools (scripts) we use for building Bacula for
 Microsoft Windows using the cross-compiler tools on a Linux system.  We
-use Fedora Core 5 and SuSE so those should definitely work.  But there
+use Ubuntu 8.04 so building on that system should definitely work.  But there
 shouldn't be any issues on other Linux distributions.
 
 We don't officially support this script, but it is what we use, and it should
 build on any Linux machine if you carefully follow the instructions and have
 all the prerequisite programs loaded on your machine.
 
-It has also been tested on other systems such as FreeBSD and CentOS.  We
-expect that there may be problems on systems other than Linux where you
+It has also been tested on other systems such as FreeBSD, CentOS, Fedora, and SUSE.
+We expect that there may be problems on systems other than Linux where you
 are pretty much on your own.  However, we will try to provide responses to
 your questions on the bacula-devel list, but we can't guarantee anything.
 
@@ -29,7 +29,7 @@ The new directory structure is:
     depkgs-mingw32 (MinGW32) 3rd Party Dependencies for MinGW32 build
 or
     depkgs-msvc (MS VC++)    3rd Party Dependencies for Microsoft VC++ build.
-      bin              --
+      bin              --    NOTE!  depkgs-msvc is no longer suppored
       include            |
       lib                |
       man                |   Created by script
@@ -56,8 +56,7 @@ If you're reading this file you've probably already enlisted in the SVN tree or
 extracted the contents of the source tar.  If not you need to do that first.
 
 You also need to download one of the doc tar balls and extract to your
-top level Bacula directory.  It is referred to as bacula-top in the
-diagram located in README.win32.  It will be signified in this file as ...
+top level Bacula directory. 
 
 The extracted doc directory name will be bacula-docs-version where version
 is the version number.  The directory must be renamed to docs (ie remove
@@ -111,8 +110,9 @@ depkgs-mingw32/scons/lib64 to depkgs-mingw32/scons/lib will fix the
 problem.
 
 You need the header files from the Microsoft VSS SDK.  Unfortunately the SDK
-can only be downloaded and installed on a Windows system.  You can find it on
-Microsoft's web-site at:
+can only be downloaded and installed on a Windows system.  We do not have
+the right to distribute it, so you must download it yourself.
+You can find it on Microsoft's web-site at:
 
 http://www.microsoft.com/downloads/details.aspx?FamilyID=0b4f56e4-0ccc-4626-826a-ed2c4c95c871&DisplayLang=en
 
@@ -155,7 +155,9 @@ Finally, to build the Microsoft Windows version of Bacula, do the following:
    make
 
 If all goes well, you will end with all the executables in the
-.../bacula/src/win32/release directory.
+.../bacula/src/win32/release directory, and the installer binary
+containing everything will be named winbacula-xx.yy.zz.exe where
+xx.yy.zz is the Bacula version you are building.
 
 If you have an older build environment, you might do the following
 to ensure that you pick up all the new Win32 changes:
@@ -166,9 +168,6 @@ to ensure that you pick up all the new Win32 changes:
    cd src/win32
    make
 
-The installer is now built as part of the default rule when you
-say "make" in the src/win32 directory.
-
 
 Updating the 3rd party package patches
 ======================================
@@ -340,3 +339,4 @@ executables, etc.
 Makefile.template is a template for creating new Makefiles, if you are
 creating a new directory, copy Makefile.template to Makefile in that
 directory and edit to suit.
+
index 0818935b9ba99ff909afb024b93d9cde0bffc474..876dbdcde7892c4c1c80b0fa4b10e10e739a1faf 100644 (file)
@@ -238,7 +238,7 @@ _Z9dup_bsockP5BSOCK
  
 ; bnet_server.o
 _Z18bnet_thread_serverP5dlistiP9workq_tagPFPvS3_E
-_Z23bnet_stop_thread_serverP10pthread_t_
+_Z23bnet_stop_thread_server14ptw32_handle_t
  
 ; bpipe.o
 _Z11run_programPciS_
@@ -354,7 +354,7 @@ _Z16stop_child_timerP8btimer_t
 _Z17start_bsock_timerP5BSOCKj
 _Z17start_child_timerij
 _Z17stop_thread_timerP8btimer_t
-_Z18start_thread_timerP10pthread_t_j
+_Z18start_thread_timer14ptw32_handle_tj
 
 ; cram-md5.o
 _Z16cram_md5_respondP5BSOCKPKcPiS3_
@@ -467,10 +467,10 @@ _Z12job_end_pushP3JCRPFvS0_PvES1_
 _Z13get_jcr_by_idj
 _Z13jcr_walk_nextP3JCR
 _Z14jcr_walk_startv
-_Z16get_jcr_from_tidP10pthread_t_
+_Z16get_jcr_from_tid14ptw32_handle_t
 _Z16get_jcr_from_tidv
 _Z18get_jcr_by_sessionjj
-_Z18get_jobid_from_tidP10pthread_t_
+_Z18get_jobid_from_tid14ptw32_handle_t
 _Z18get_jobid_from_tidv
 _Z18init_jcr_subsystemv
 _Z18set_jcr_job_statusP3JCRi
index 3f6113738e7b45297c3d7b87bc47274f3c5dc8ba..fc53fc6947aa96aa1c193c3c1ea9ee648ec6b034 100644 (file)
@@ -1,95 +1,22 @@
-Index: GNUmakefile
---- ../tmp/pthreads-snap-2004-06-22/GNUmakefile        2004-05-19 17:56:52.000000000 -0700
-+++ ./GNUmakefile      2006-06-27 05:48:10.000000000 -0700
-@@ -408,16 +408,16 @@
-       @ $(MAKE) clean GC
- GC:
--              $(MAKE) CC=gcc CLEANUP_FLAGS="$(GC_CFLAGS)" OBJ="$(DLL_OBJS)" $(GC_DLL)
-+              $(MAKE) CC=mingw32-gcc CLEANUP_FLAGS="$(GC_CFLAGS)" OBJ="$(DLL_OBJS)" $(GC_DLL)
- GCE:
--              $(MAKE) CC=g++ CLEANUP_FLAGS="$(GCE_CFLAGS)" OBJ="$(DLL_OBJS)" $(GCE_DLL)
-+              $(MAKE) CC=mingw32-g++ CLEANUP_FLAGS="$(GCE_CFLAGS)" OBJ="$(DLL_OBJS)" $(GCE_DLL)
- GC-inlined:
--              $(MAKE) CC=gcc CLEANUP_FLAGS="$(GC_CFLAGS)" OBJ="$(DLL_INLINED_OBJS)" $(GC_INLINED_STAMP)
-+              $(MAKE) CC=mingw32-gcc CLEANUP_FLAGS="$(GC_CFLAGS)" OBJ="$(DLL_INLINED_OBJS)" $(GC_INLINED_STAMP)
- GCE-inlined:
--              $(MAKE) CC=g++ CLEANUP_FLAGS="$(GCE_CFLAGS)" OBJ="$(DLL_INLINED_OBJS)" $(GCE_INLINED_STAMP)
-+              $(MAKE) CC=mingw32-g++ CLEANUP_FLAGS="$(GCE_CFLAGS)" OBJ="$(DLL_INLINED_OBJS)" $(GCE_INLINED_STAMP)
- tests:
-       @ cd tests
-@@ -436,24 +436,24 @@
- $(GC_DLL): $(DLL_OBJS)
-       $(CC) $(OPT) -shared -o $(GC_DLL) $(DLL_OBJS) $(LFLAGS)
--      dlltool -z pthread.def $(DLL_OBJS)
--      dlltool -k --dllname $@ --output-lib $(GC_LIB) --def $(PTHREAD_DEF)
-+      mingw32-dlltool -z pthread.def $(DLL_OBJS)
-+      mingw32-dlltool -k --dllname $@ --output-lib $(GC_LIB) --def $(PTHREAD_DEF)
- $(GCE_DLL): $(DLL_OBJS)
-       $(CC) $(OPT) -mthreads -shared -o $(GCE_DLL) $(DLL_OBJS) $(LFLAGS)
--      dlltool -z pthread.def $(DLL_OBJS)
--      dlltool -k --dllname $@ --output-lib $(GCE_LIB) --def $(PTHREAD_DEF)
-+      mingw32-dlltool -z pthread.def $(DLL_OBJS)
-+      mingw32-dlltool -k --dllname $@ --output-lib $(GCE_LIB) --def $(PTHREAD_DEF)
- $(GC_INLINED_STAMP): $(DLL_INLINED_OBJS)
-       $(CC) $(OPT) -shared -o $(GC_DLL) $(DLL_INLINED_OBJS) $(LFLAGS)
--      dlltool -z pthread.def $(DLL_INLINED_OBJS)
--      dlltool -k --dllname $(GC_DLL) --output-lib $(GC_LIB) --def $(PTHREAD_DEF)
-+      mingw32-dlltool -z pthread.def $(DLL_INLINED_OBJS)
-+      mingw32-dlltool -k --dllname $(GC_DLL) --output-lib $(GC_LIB) --def $(PTHREAD_DEF)
-       echo touched > $(GC_INLINED_STAMP)
- $(GCE_INLINED_STAMP): $(DLL_INLINED_OBJS)
-       $(CC) $(OPT) -mthreads -shared -o $(GCE_DLL) $(DLL_INLINED_OBJS)  $(LFLAGS)
--      dlltool -z pthread.def $(DLL_INLINED_OBJS)
--      dlltool -k --dllname $(GCE_DLL) --output-lib $(GCE_LIB) --def $(PTHREAD_DEF)
-+      mingw32-dlltool -z pthread.def $(DLL_INLINED_OBJS)
-+      mingw32-dlltool -k --dllname $(GCE_DLL) --output-lib $(GCE_LIB) --def $(PTHREAD_DEF)
-       echo touched > $(GCE_INLINED_STAMP)
- clean:
-Index: ptw32_semwait.c
---- ../tmp/pthreads-snap-2004-06-22/ptw32_semwait.c    2004-05-17 00:59:47.000000000 -0700
-+++ ./ptw32_semwait.c  2006-06-27 05:52:59.000000000 -0700
-@@ -41,7 +41,7 @@
- #include "implement.h"
--INLINE int
-+int
- ptw32_semwait (sem_t * sem)
-      /*
-       * ------------------------------------------------------
---- /tmp/pthread_getspecific.c.bak     2008-07-12 17:26:03.000000000 +0200
-+++ pthread_getspecific.c      2008-07-12 17:26:03.000000000 +0200
-@@ -63,13 +63,18 @@
-       * ------------------------------------------------------
-       */
- {
--  int lasterror = GetLastError ();
--  int lastWSAerror = WSAGetLastError ();
-+  void *ptr;
--  void *ptr = TlsGetValue (key->key);
-+  if (key == NULL) {
-+     ptr = NULL;
-+  } else {
-+     int lasterror = GetLastError ();
-+     int lastWSAerror = WSAGetLastError ();
--  SetLastError (lasterror);
--  WSASetLastError (lastWSAerror);
-+     ptr = TlsGetValue(key->key);
-+     SetLastError(lasterror);
-+     WSASetLastError(lastWSAerror);
-+  }
-   return ptr;
- }
+--- ../pthreads-w32-2-8-0-release-orig/GNUmakefile     2006-04-30 12:22:33.000000000 +0200
++++ ./GNUmakefile      2008-07-12 12:20:10.000000000 +0200
+@@ -49,7 +49,7 @@
+ # For cross compiling use e.g.
+ # make CROSS=i386-mingw32msvc- clean GC-inlined
+-CROSS = 
++CROSS = mingw32-
+ AR    = $(CROSS)ar
+ DLLTOOL = $(CROSS)dlltool
+--- ../pthreads-w32-2-8-0-release-orig/implement.h     2005-06-03 10:36:27.000000000 +0200
++++ ./implement.h      2008-07-12 13:42:01.000000000 +0200
+@@ -77,7 +77,7 @@
+ #include "sched.h"
+ #if defined(HAVE_C_INLINE) || defined(__cplusplus)
+-#define INLINE inline
++#define INLINE
+ #else
+ #define INLINE
+ #endif