- Update README.cmake: The stuff now build without

running autofoo first.
- Add a comment how to change the name of a generated target

svn path=/trunk/; revision=29858
This commit is contained in:
Jörg Mayer 2009-09-11 13:30:01 +00:00
parent 0772dd06b4
commit 3a100b0cd8
2 changed files with 33 additions and 22 deletions

View File

@ -4,11 +4,8 @@
Notice Notice
The CMake build system for Wireshark is not yet ready for To find out the current state of the cmake implementaion for
building the whole system. You'll still need autofoo to buld it. Wireshark, please take a look at "What needs to be done?" below.
The only thing that can be build is dumpcap, and even that one
requires that you successfully ran autofoo prior to running cmake
(e.g. config.h is not yet build, lex and yacc are not run).
Basically this is an experiment and if we find out that it works Basically this is an experiment and if we find out that it works
and we like cmake more than autofoo we might switch one day. and we like cmake more than autofoo we might switch one day.
@ -31,21 +28,21 @@ in tree builds do not work properly in all cases.
How to do out of tree build (Unix/Linux): How to do out of tree build (Unix/Linux):
1) Install cmake. 1) Install cmake.
2) Build the project with the old build system once (to generate 2) Assuming, you are in the top directory of the wireshark source
config.h and run bison and flex to generate some c-files).
3) Assuming, you are in the top directory of the wireshark source
cd .. cd ..
4) mkdir build 3) mkdir build
5) cd build 4) cd build
6) cmake ../<Name_of_WS_source_dir> 5) cmake ../<Name_of_WS_source_dir>
7) make 6) make
Why cmake? Why cmake?
========== ==========
- Can create project files for some MS and Apple IDEs. - Can create project files for some MS and Apple IDEs.
- Fast - Fast
- Easier to understand/learn - Easier to understand/learn
- One build infrastructure even including Windows? - Doesn't create any files in the source tree in case
of out of tree builds
- One build infrastructure even including Windows
... ...
Why not cmake? Why not cmake?
@ -58,18 +55,27 @@ Why not cmake?
cmake really works). cmake really works).
... ...
What works?
===========
All the executables now build on my system (32bit openSUSE 11.1) from
clean source.
What needs to be done? What needs to be done?
====================== ======================
only dumpcap and libwiretap have been done, and even those rely on - Test detection/build with a few remaining packages
autofoo having been run before: - Add back -Werror flags.
- Redo glib2 and gtk2 find modules.
- Add proper GTK1/GLIB2/GLIB1 detection (currently links against gtk2 - Add back platform specific objects.
to pull in glib2). - Fix places in the cmake files marked as todo.
- Create config.h - Add back (working) install target.
- Autocreated source files in wiretap need to be build from .l, .y files. - Build source package (using CPack).
- Build rpm package (using CPack).
All other tools and libs still need to be built. - Add back checkAPI target.
- Test and add support for other platforms (BSDs, OSX,
Solaris, Win32, Win64, ...)
...
Links regarding cmake Links regarding cmake
===================== =====================
@ -82,6 +88,9 @@ The home page of the cmake project documentation
About cmake in general and why KDE4 uses it About cmake in general and why KDE4 uses it
http://lwn.net/Articles/188693/ http://lwn.net/Articles/188693/
Introductory/tutorial presentation
http://ait.web.psi.ch/services/linux/hpc/hpc_user_cookbook/tools/cmake/docs/Cmake_VM_2007.pdf
Introductory arcticle in Linux Journal Introductory arcticle in Linux Journal
http://www.linuxjournal.com/node/6700/print http://www.linuxjournal.com/node/6700/print

View File

@ -1170,6 +1170,8 @@ add_library(epan SHARED
${DISSECTOR_SUPPORT_SRC} ${DISSECTOR_SUPPORT_SRC}
${DISSECTOR_ASM_UTILS} ${DISSECTOR_ASM_UTILS}
) )
# In case we want the libwireshark name back
# SET_TARGET_PROPERTIES(epan PROPERTIES OUTPUT_NAME "wireshark")
target_link_libraries(epan target_link_libraries(epan
${WSLUA_LIB} ${WSLUA_LIB}