]> git.sur5r.net Git - bacula/bacula/blob - bacula/autoconf/who_and_what_of_libtool_patch
baculum: Add required config fields asterisk mark
[bacula/bacula] / bacula / autoconf / who_and_what_of_libtool_patch
1 Small walk trough of libtool patch (what in there ...)
2
3 - Toplevel Makefile.in
4    - Added depend definition for LIBTOOL
5    - Rewrote some of the autoconf targets for the new name and always remove the cache autoconf makes
6    - Updated some install targets to use the RMF macro (minor cleanup)
7    - Remove libtool (which is autogenerated by configure) on make distclean
8
9 - autoconf/Make.common.in
10    - Added libdir and includedir
11    - Changed RM and RMF macros (See configure.in warning why its named @REMOVE@ now)
12    - Small update in INSTALL_ macros to use the INSTALL_PROGRAM macro better and not have configure
13      replace all the instances.
14    - Added the LIBTOOL macros which are used when building with libtool (the DEFAULT_* macros
15      are a workaround for easily disabling libtool and build in the old fashion way but still use
16      the same Makefile.in everywhere.
17
18 - autoconf/aclocal.m4
19    - Added libtool m4 files to be included
20
21 - autoconf/bacula-macros/db.m4
22    - Updated all help strings to use the Autoconf AC_HELP_STRING function which formats help strings
23      better so we never have to change those in the future (e.g. relayout ever again even when changing the content)
24
25 - autoconf/config.h.in
26    - updated by configure run with libtool updates
27
28 - autoconf/config.on.save
29    - removed redundant file (because things are in SVN don't see why you want this)
30
31 - autoconf/configure.in
32    - This is a complete overhaul of the original file I reindented most stuff
33      (killed all tabs ...) I think its better readable now and when changing it I think
34      I also got some small bugs fixed. Also updated all comments to use dnl and not
35      sometimes # and then dnl as comment. As we probably never gonna read the resulting
36      configure script generated by autoconf anyhow I think using this style in configure.in is
37      more consistent.
38    - also added all libtool specific coding which gives us the --disable-libtool option
39      which makes sure we can build everything using the old tools too. The LT_INIT is not in
40      the if statement because it breaks the generated configure. So we always test for libtool
41      but you can overwrite it usage by using the --disable-libtool option.
42
43 - autoconf/gettext-macros/gettext.m4
44    - updated to use AC_HELP_STRING function
45
46 - autoconf/libtool/libtool.m4
47 - autoconf/libtool/ltoptions.m4
48 - autoconf/libtool/ltsugar.m4
49 - autoconf/libtool/ltversion.m4
50 - autoconf/libtool/lt~obsolete.m4
51 - autoconf/libtool/ltmain.sh
52    - Files from libtool 2.2.6 install which are needed to build libtool support in package
53
54 - configure
55    - Regenerated file from autoconf 2.63 run on new configure.in
56
57 - src/Makefile.in
58    - removed stray empty line
59
60 - src/cats/Makefile.in
61    - added support for libtool
62       - use dynamic generation of names of object files
63       - add version for shared lib
64       - new inference rule for .c.lo
65       - changed lib name from libsql to libbacsql (to make it linked to the Bacula project)
66       - extra target to create libtool .la (libtool archive)
67       - extra libtool-clean target only called when libtool is used
68       - libtool-install and libtool-uninstall target only called when libtool is used
69       - install include files when using libtool
70
71 - src/console/Makefile.in
72    - added support for libtool
73       - updated to use libtool when defined and have depend on correct archive type
74       - extra libtool-clean target only called when libtool is used
75
76 - src/dird/Makefile.in
77    - use dynamic generation of names of object files
78    - added support for libtool
79       - updated to use libtool when defined and have depend on correct archive type
80       - extra libtool-clean target only called when libtool is used
81
82 - src/dird/dird.c
83    - update for python interface change (because of full prototypes we wrap things in #ifdef HAVE_PYTHON)
84
85 - src/dird/pythondir.c
86    - update for python interface change (some prototypes are moved to pythonlib.h)
87
88 - src/dird/ua_cmds.c
89    - update for python interface change (because of full prototypes we wrap things in #ifdef HAVE_PYTHON)
90
91 - src/filed/Makefile.in
92    - use dynamic generation of names of object files
93    - added support for libtool
94       - updated to use libtool when defined and have depend on correct archive type
95       - extra libtool-clean target only called when libtool is used
96
97 - src/filed/filed.c
98    - update for python interface change (because of full prototypes we wrap things in #ifdef HAVE_PYTHON)
99
100 - src/filed/pythonfd.c
101    - update for python interface change (some prototypes are moved to pythonlib.h)
102
103 - src/findlib/Makefile.in
104    - added support for libtool
105       - use dynamic generation of names of object files
106       - add version for shared lib
107       - new inference rule for .c.lo
108       - changed lib name from libfind to libbacfind (to make it linked to the Bacula project)
109       - extra target to create libtool .la (libtool archive)
110       - extra libtool-clean target only called when libtool is used
111       - libtool-install and libtool-uninstall target only called when libtool is used
112       - install include files when using libtool
113
114 - src/lib/Makefile.in
115    - added support for libtool
116       - use dynamic generation of names of object files
117       - splitted objects into 3 libs (because of symbol reference problems otherwise)
118       - kept all in the same dir to not interfere with win32 build etc. (first moved it to configlib and pythonlib
119         but that would break non libtool/unix builds.
120       - add version for shared libs
121       - new inference rule for .c.lo and .cc.lo
122       - extra target to create libtool .la (libtool archive)
123       - extra libtool-clean target only called when libtool is used
124       - libtool-install and libtool-uninstall target only called when libtool is used
125       - install include files when using libtool
126       - need to see if we need all those include files (already removed tcpd.h)
127
128 - src/lib/protos.h
129    - update for python interface change (some prototypes are moved to pythonlib.h)
130
131 - src/lib/pythonlib.c
132    - update for python interface change (some prototypes are moved to pythonlib.h)
133    - extern references to global vars/functions not needed anymore
134
135 - src/lib/pythonlib.h
136    - new file for python interface change (some prototypes are moved here)
137
138 - src/plugins/fd/Makefile.in
139    - added support for libtool
140       - new inference rule for .c.lo and .cc.lo
141       - kept old rule but that doesn't get called for libtool builds
142       - install rule extended to remove .la file which gets installed by the libtool --mode=install (Apache does same for DSO)
143
144 - src/qt-console/bat.pro.in
145    - added support for libtool
146
147 - src/stored/Makefile.in
148    - removed pythond.o from BEXTOBJS unneeded
149    - added support for libtool
150       - updated to use libtool when defined and have depend on correct archive type
151       - extra libtool-clean target only called when libtool is used
152
153 - src/stored/pythonsd.c
154    - update for python interface change (some prototypes are moved to pythonlib.h)
155
156 - src/stored/stored.c
157    - update for python interface change (because of full prototypes we wrap things in #ifdef HAVE_PYTHON)
158
159 - src/tools/Makefile.in
160    - added support for libtool
161       - updated to use libtool when defined and have depend on correct archive type
162       - extra libtool-clean target only called when libtool is used
163
164 Todo:
165
166 - check if install of libs and includes also goes nicely when you don't do things like --prefix=/opt/ELMbacula
167   e.g. where does the stuff then gets installed.
168 - do a full regression test on the new stuff build with libtool
169 - see how it works on a real install (currently running 72 hours with shared libs on Solaris 10 64 bits)
170