Mastering CMake [a cross-platform build system ; covers installing and running CMake ; details converting existing build processes to CMake ; create powerful cross-platform build scripts]

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Martin, Ken 1968- (VerfasserIn), Hoffman, Bill (VerfasserIn)
Format: Buch
Sprache:English
Veröffentlicht: [Clifton Park, NY] Kitware 2007
Ausgabe:4. ed.
Schlagworte:
Online-Zugang:Inhaltsverzeichnis
Inhaltsverzeichnis
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!

MARC

LEADER 00000nam a2200000 c 4500
001 BV035258731
003 DE-604
005 20110705
007 t|
008 090120s2007 xx |||| 00||| eng d
020 |a 9781930934207  |9 978-1-930934-20-7 
020 |a 1930934203  |9 1-930934-20-3 
035 |a (OCoLC)254713739 
035 |a (DE-599)BVBBV035258731 
040 |a DE-604  |b ger  |e rakwb 
041 0 |a eng 
049 |a DE-91G  |a DE-634  |a DE-83 
084 |a ST 257  |0 (DE-625)143630:  |2 rvk 
084 |a DAT 332f  |2 stub 
100 1 |a Martin, Ken  |d 1968-  |e Verfasser  |0 (DE-588)13973970X  |4 aut 
245 1 0 |a Mastering CMake  |b [a cross-platform build system ; covers installing and running CMake ; details converting existing build processes to CMake ; create powerful cross-platform build scripts]  |c Ken Martin & Bill Hoffman 
250 |a 4. ed. 
264 1 |a [Clifton Park, NY]  |b Kitware  |c 2007 
300 |a VII, 385 S.  |e 7 Bl. Errata 
336 |b txt  |2 rdacontent 
337 |b n  |2 rdamedia 
338 |b nc  |2 rdacarrier 
650 0 7 |a C  |g Programmiersprache  |0 (DE-588)4113195-2  |2 gnd  |9 rswk-swf 
650 0 7 |a CMake  |0 (DE-588)7573102-2  |2 gnd  |9 rswk-swf 
689 0 0 |a CMake  |0 (DE-588)7573102-2  |D s 
689 0 1 |a C  |g Programmiersprache  |0 (DE-588)4113195-2  |D s 
689 0 |8 1\p  |5 DE-604 
700 1 |a Hoffman, Bill  |e Verfasser  |4 aut 
856 4 |u http://www.gbv.de/dms/hbz/toc/ht015501912.pdf  |3 Inhaltsverzeichnis 
856 4 2 |m HBZ Datenaustausch  |q application/pdf  |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=017064283&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA  |3 Inhaltsverzeichnis 
883 1 |8 1\p  |a cgwrk  |d 20201028  |q DE-101  |u https://d-nb.info/provenance/plan#cgwrk 
943 1 |a oai:aleph.bib-bvb.de:BVB01-017064283 

Datensatz im Suchindex

DE-BY-TUM_call_number 0102 DAT 332f 2005 A 2190(4)
DE-BY-TUM_katkey 1688174
DE-BY-TUM_location 01
DE-BY-TUM_media_number 040010151125
_version_ 1820896338296963072
adam_text Contents CHAPTER 1 WHYCMAKE? I 1.1 The History of CMake 3 1.2 Why Not Use Autoconf? 3 1.3 Why Not Use JAM, qmake, SCons, or ANT? 4 1.4 Why Not Script It Yourself? 4 1.5 On What Platforms Does CMake Run? 5 CHAPTER 2 GETTING STARTED 7 2.1 Getting and Installing CMake on Your Computer 7 2.2 UNIX and Mac Binary Installations 7 2.3 Windows Binary Installation: 8 2.4 Building CMake Yourself 8 2.5 Basic CMake Usage and Syntax 8 2.6 Hello World for CMake 9 2.7 How to Run CMake? 11 Running CMake for Windows /Microsoft Visual C++ 11 Running CMake on UNIX /.? Running CMake on Mac OSX 16 Running CMake from the Command Line 16 Specifying the Compiler to CMake 17 Dependency Analysis Ifi 2.8 Editing CMakeLists Files 18 2.9 Setting Initial Values for CMake 19 CHAPTER 3 KEY CONCEPTS H 3.1 Main Structures 21 3.2 Targets 24 3.3 Source Files 25 3.4 Directories. Generators. Tests, and Properties 26 3.5 Variables and Cache Entries 27 3.6 Build Configurations 30 CHAPTER 4 WRITING CMAKELISTS FILES 33 4.1 CMake Syntax 33 4.2 Basic Commands 34 4.3 Flow Control 34 4.4 Regular Expressions 41 4.5 Checking Versions of CMake 43 jy 4.6 Using Modules 44 Using CMake with SWIG 47 Using CMake with Qt 48 Using CMake with FLTK 49 4.7 Specifying Optimized or Debug Libraries with a Target 49 4.8 Shared Libraries and Loadable Modules 50 4.9 Shared Library Versioning 55 4.10 Installing Files 56 4.11 Advanced Commands 66 CHAPTER 5 PACKAGING WITH CPACK 69 5.1 CPack Basics 69 Simple Example 70 What happens when CPack.cmake is included 71 Adding custom CPack options 72 Options added by CPack 73 5.2 CPack Source Packages 74 5.3 CPack Installer commands 74 CPack and CMake install commands 75 CPack and DESTDIR 75 CPack and other installed directories 75 5.4 CPack for Windows Installer NSIS 76 CPack variables used by CMake for NSIS 76 Creating Windows Short Cuts in the Start Menu 81 Advanced NSIS CPack Options 81 Setting file extension associations with NSIS 82 Installing Microsoft run time libraries 83 5.5 CPack for Cygwin Setup 83 5.6 CPack for Apple OSX PackageMaker 86 5.7 CPack for OSX XI1 applications 89 5.8 CPack for Debian packages 91 5.9 CPack for RPM 92 5.10 CPack files 93 CHAPTER 6 CONVERTING EXISTING SYSTEMS TO CMAKE 95 6.1 Source Code Directory Structures 95 6.2 Build Directories 97 6.3 Useful CMake Commands when Converting Projects 99 6.4 Converting UNIX Makefiles 100 6.5 Converting Autoconf Based Projects 101 6.6 Converting Windows Based Workspaces 103 V CHAPTER 7 SYSTEM INSPECTION 105 7.1 Using Header Files and Libraries 105 7.2 System Properties 107 7.3 Built-in Find Modules 113 7.4 How to Pass Parameters to a Compilation? 115 7.5 How to Configure a Header File 116 7.6 Creating a Package Config.cmake File 118 CHAPTER 8 CUSTOM COMMANDS AND TARGETS 125 8.1 Portable Custom Commands 125 8.2 Using add_custom_command on a Target 127 How to Copy an Executable Once it is Built? 128 8.3 Using add_custom_command to Generate a File 129 Using an Executable to Build a Source File 129 8.4 Adding a Custom Target 130 8.5 Specifying Dependencies and Outputs 133 8.6 When There Isn t One Rule for One Output 134 A Single Command Producing Multiple Outputs 134 Having One Output That Can Be Generated By Different Commands 134 CHAPTER 9 CROSS COMPILING WITH CMAKE 137 9.1 Toolchain files 138 Finding external libraries, programs and other files 140 9.2 System inspection 142 Using compile checks 142 9.3 Running executables built in the project itself 144 9.4 Cross compiling Hello world 147 9.5 Cross compiling for a microcontroller 152 9.6 Cross compiling an existing project 154 9.7 Cross compiling a complex project - VTK 157 9.8 Some tips and tricks 158 Dealing with try_run tests 158 Target platform and toolchain issues 159 RPATH handling under UNIX 159 CHAPTER 10 AUTOMATION TESTING WITH CMAKE 161 10.1 Automating and Testing with CMake and CTest 161 10.2 How does CMake Facilitate Testing? 162 10.3 Testing Using CTest 163 10.4 Additional Test Properties 166 10.5 Using CTest to Drive Complex Tests 167 yj 10.6 Handling a Large Number of Tests 168 10.7 Producing Test Dashboards 169 Adding DART Dashboard Support to a Project 172 Project Specific Dashboard 174 Customizing Dashboards for a Project 176 Adding Notes to a Dashboard 178 10.8 Setting up Automated Dashboard Clients 178 Settings for Continuous Dashboards 183 Variables Available in CTest Scripts 185 10.9 Advanced CTest Scripting 185 Limitations of Traditional CTest Scripting 185 Extended CTest Scripting 186 10.10 Setting up a Dashboard Server 191 Dart Server Version 1 Setup 191 Dart Server Version 2 Setup 193 CDash Server 195 CHAPTER 11 PORTING CMAKE TO NEW PLATFORMS AND LANGUAGES 197 11.1 The Determine System Process 197 11.2 The Enable Language Process 198 11.3 Porting to a New Platform 200 11.4 Adding a New Language 202 11.5 Rule Variable Listing 202 General Tag Variables 203 Language Specific Information 203 11.6 Compiler and Platform Examples 204 Cotno Compiler 204 Borland Compiler 205 11.7 Extending CMake 206 Creating a Loaded Command 206 Using a Loaded Command 207 CHAPTER 12 TUTORIALS 211 12.1 A Basic Starting Point (Step 1) 211 Adding a Version Number and Configured Header File 212 12.2 Adding a Library (Step 2) 213 12.3 Installing and Testing (Step 3) 216 12.4 Adding System Introspection (Step 4) 218 12.5 Adding a Generated File and Generator (Step 5) 218 12.6 Building an Installer (Step 6) 223 12.7 Adding Support for a Dashboard (Step 7) 224 yi| APPENDIX A - VARIABLES 225 Variables That Change Behavior 225 Variables That Describe the System 228 Variables for Languages 230 Variables that Control the Build 233 Variables that Provide Information 235 Variables In CMakeBackwardCompatibilityC.cmake 241 Variables in CMakeBackwardCompatibilityCXX.cmake 243 System Environment Variables That Affect CMake 243 APPENDIX B - CMAKE COMMAND REFERENCE 245 CMake Command-Line Options 245 CMake Generators 250 CTest Command-Line Options 251 CPack Command-Line Options 257 Listfile Commands 258 Extra CTest Listfile Commands 308 Compatibility Listfile Commands 310 APPENDIX C - CMAKE MODULES 317 Standard CMake Modules 317 APPENDIX D - PROPERTIES 367 Global Properties 367 Directory Properties 368 Target Properties 369 Test Properties 374 Sourcefile Properties 375 Copyright 377 See Also 378 Mailing List 379 INDEX 381
any_adam_object 1
author Martin, Ken 1968-
Hoffman, Bill
author_GND (DE-588)13973970X
author_facet Martin, Ken 1968-
Hoffman, Bill
author_role aut
aut
author_sort Martin, Ken 1968-
author_variant k m km
b h bh
building Verbundindex
bvnumber BV035258731
classification_rvk ST 257
classification_tum DAT 332f
ctrlnum (OCoLC)254713739
(DE-599)BVBBV035258731
discipline Informatik
edition 4. ed.
format Book
fullrecord <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>01778nam a2200409 c 4500</leader><controlfield tag="001">BV035258731</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20110705 </controlfield><controlfield tag="007">t|</controlfield><controlfield tag="008">090120s2007 xx |||| 00||| eng d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9781930934207</subfield><subfield code="9">978-1-930934-20-7</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">1930934203</subfield><subfield code="9">1-930934-20-3</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)254713739</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV035258731</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakwb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-91G</subfield><subfield code="a">DE-634</subfield><subfield code="a">DE-83</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 257</subfield><subfield code="0">(DE-625)143630:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">DAT 332f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Martin, Ken</subfield><subfield code="d">1968-</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)13973970X</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Mastering CMake</subfield><subfield code="b">[a cross-platform build system ; covers installing and running CMake ; details converting existing build processes to CMake ; create powerful cross-platform build scripts]</subfield><subfield code="c">Ken Martin &amp; Bill Hoffman</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">4. ed.</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">[Clifton Park, NY]</subfield><subfield code="b">Kitware</subfield><subfield code="c">2007</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">VII, 385 S.</subfield><subfield code="e">7 Bl. Errata</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">C</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4113195-2</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">CMake</subfield><subfield code="0">(DE-588)7573102-2</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">CMake</subfield><subfield code="0">(DE-588)7573102-2</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="1"><subfield code="a">C</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4113195-2</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="8">1\p</subfield><subfield code="5">DE-604</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Hoffman, Bill</subfield><subfield code="e">Verfasser</subfield><subfield code="4">aut</subfield></datafield><datafield tag="856" ind1="4" ind2=" "><subfield code="u">http://www.gbv.de/dms/hbz/toc/ht015501912.pdf</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">HBZ Datenaustausch</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&amp;doc_library=BVB01&amp;local_base=BVB01&amp;doc_number=017064283&amp;sequence=000002&amp;line_number=0001&amp;func_code=DB_RECORDS&amp;service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="883" ind1="1" ind2=" "><subfield code="8">1\p</subfield><subfield code="a">cgwrk</subfield><subfield code="d">20201028</subfield><subfield code="q">DE-101</subfield><subfield code="u">https://d-nb.info/provenance/plan#cgwrk</subfield></datafield><datafield tag="943" ind1="1" ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-017064283</subfield></datafield></record></collection>
id DE-604.BV035258731
illustrated Not Illustrated
indexdate 2024-12-23T21:24:23Z
institution BVB
isbn 9781930934207
1930934203
language English
oai_aleph_id oai:aleph.bib-bvb.de:BVB01-017064283
oclc_num 254713739
open_access_boolean
owner DE-91G
DE-BY-TUM
DE-634
DE-83
owner_facet DE-91G
DE-BY-TUM
DE-634
DE-83
physical VII, 385 S. 7 Bl. Errata
publishDate 2007
publishDateSearch 2007
publishDateSort 2007
publisher Kitware
record_format marc
spellingShingle Martin, Ken 1968-
Hoffman, Bill
Mastering CMake [a cross-platform build system ; covers installing and running CMake ; details converting existing build processes to CMake ; create powerful cross-platform build scripts]
C Programmiersprache (DE-588)4113195-2 gnd
CMake (DE-588)7573102-2 gnd
subject_GND (DE-588)4113195-2
(DE-588)7573102-2
title Mastering CMake [a cross-platform build system ; covers installing and running CMake ; details converting existing build processes to CMake ; create powerful cross-platform build scripts]
title_auth Mastering CMake [a cross-platform build system ; covers installing and running CMake ; details converting existing build processes to CMake ; create powerful cross-platform build scripts]
title_exact_search Mastering CMake [a cross-platform build system ; covers installing and running CMake ; details converting existing build processes to CMake ; create powerful cross-platform build scripts]
title_full Mastering CMake [a cross-platform build system ; covers installing and running CMake ; details converting existing build processes to CMake ; create powerful cross-platform build scripts] Ken Martin & Bill Hoffman
title_fullStr Mastering CMake [a cross-platform build system ; covers installing and running CMake ; details converting existing build processes to CMake ; create powerful cross-platform build scripts] Ken Martin & Bill Hoffman
title_full_unstemmed Mastering CMake [a cross-platform build system ; covers installing and running CMake ; details converting existing build processes to CMake ; create powerful cross-platform build scripts] Ken Martin & Bill Hoffman
title_short Mastering CMake
title_sort mastering cmake a cross platform build system covers installing and running cmake details converting existing build processes to cmake create powerful cross platform build scripts
title_sub [a cross-platform build system ; covers installing and running CMake ; details converting existing build processes to CMake ; create powerful cross-platform build scripts]
topic C Programmiersprache (DE-588)4113195-2 gnd
CMake (DE-588)7573102-2 gnd
topic_facet C Programmiersprache
CMake
url http://www.gbv.de/dms/hbz/toc/ht015501912.pdf
http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=017064283&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA
work_keys_str_mv AT martinken masteringcmakeacrossplatformbuildsystemcoversinstallingandrunningcmakedetailsconvertingexistingbuildprocessestocmakecreatepowerfulcrossplatformbuildscripts
AT hoffmanbill masteringcmakeacrossplatformbuildsystemcoversinstallingandrunningcmakedetailsconvertingexistingbuildprocessestocmakecreatepowerfulcrossplatformbuildscripts