When Implementing Incomplete Code
Please identify all incomplete code with a comment that contains
***FIXME***
where there are three asterisks (*) before and after the word FIXME (in capitals) and no intervening spaces. This is important as it allows new programmers to easily recognize where things are partially implemented.
Bacula Source File Structure
The distribution generally comes as a tar
file of the form
bacula.x.y.z.tar.gz
where x, y, and z are the version, release, and
update numbers respectively.
Once you detar this file, you will have a directory structure as follows:
|
Tar file:
|- depkgs
|- mtx (autochanger control program + tape drive info)
|- sqlite (SQLite database program)
Tar file:
|- depkgs-win32
|- pthreads (Native win32 pthreads library -- dll)
|- zlib (Native win32 zlib library)
|- wx (wxWidgets source code)
Project bacula:
|- bacula (main source directory containing configuration
| and installation files)
|- autoconf (automatic configuration files, not normally used
| by users)
|- intl (programs used to translate)
|- platforms (OS specific installation files)
|- redhat (Red Hat installation)
|- solaris (Sun installation)
|- freebsd (FreeBSD installation)
|- irix (Irix installation -- not tested)
|- unknown (Default if system not identified)
|- po (translations of source strings)
|- src (source directory; contains global header files)
|- plugins (plugins for FD/SD/DIR)
|-fd (FileDaemon plugins)
|-sd (Storage Daemon plugins)
|-dir (Director Daemon plugins)
|- cats (SQL catalog database interface directory)
|- console (bacula user agent directory)
|- dird (Director daemon)
|- filed (Unix File daemon)
|- findlib (Unix file find library for File daemon)
|- lib (General Bacula library)
|- stored (Storage daemon)
|- tools (Various tool programs)
|- win32 (Native Win32 File daemon)
|- libwin32 (Win32 files to make bacula-fd be a service)
|- compat (compatibility interface library)
|- filed (links to src/filed)
|- findlib (links to src/findlib)
|- lib (links to src/lib)
|- console (beginning of native console program)
|- wx-console (wxWidget console Win32 specific parts)
|- win32-installer (Makensis installer for 32bit)
|- win64-installer (Makensis installer for 64bit)
Project regress:
|- regress (Regression scripts)
|- bin (temporary directory to hold Bacula installed binaries)
|- build (temporary directory to hold Bacula source)
|- scripts (scripts and .conf files)
|- tests (test scripts)
|- tmp (temporary directory for temp files)
|- working (temporary working directory for Bacula daemons)
Project docs:
|- docs (documentation directory)
|- developers (Developer's guide)
|- home-page (Bacula's home page source)
|- manual (html document directory)
|- manual-fr (French translation)
|- manual-de (German translation)
|- techlogs (Technical development notes);
Project gui:
|- gui (Bacula GUI projects)
|- bacula-web (Bacula web php management code)
|- bimagemgr (Web application for burning CDROMs)
Possible Next Steps
Go to Header Files.
Go back to Developer Notes.
Go back to Developer Guide.