Designing C++ Code Generator Guardrails
P. All rights reserved. © 2024 Bloomberg Finance L.P. All rights reserved. Designing C++ Code Generator Guardrails A collaboration between outreach and development teams & users CppCon 2024 September least astonishment.” We were offering a modern set of guardrails for Bloomberg’s 20-year-old Code Generator. Others responded before we could. They said they weren’t the least bit surprised.© 2018 Bloomberg features were used in a feature rich tool; and Made it far easier to continue modernizing the Code Generator. We did it without risk! And we did it with the consensus and participation of dozens of teams0 码力 | 48 页 | 2.71 MB | 5 月前3Conan 1.42 Documentation
. . . . . . . . . . . . . . . . . . . . . . 345 17.11 How to create and share a custom generator with generator packages . . . . . . . . . . . . . . . . . . 348 17.12 How to manage shared libraries . previous page) [-r=] # Download dependencies from only the␣ ˓→specified remote [-g=<generator>] # Specify generators at the command␣ ˓→line 3. #include interface files to the Conan packages packages in the source code 4. Modify the build system to use the files output from the Generator 5. Build the application using the build system Downloading packages Download a package, if it isn’t already 0 码力 | 841 页 | 7.12 MB | 1 年前3Conan 1.56 Documentation
. . . . . . . . . . . . . . . . . . . . . . 362 17.11 How to create and share a custom generator with generator packages . . . . . . . . . . . . . . . . . . 365 17.12 How to manage shared libraries . deps_user_info, these have been removed in 2.0. Note: If you don’t need to customize anything in a generator you can specify it in the generators attribute and skip using the generate() method for that: from cpp_info.components["mycomponent"].set_property("custom_name", "mycomponent-name ˓→", "custom_generator") ... Please note that most of the legacy generators like cmake, cmake_multi, cmake_find_package0 码力 | 963 页 | 7.67 MB | 1 年前3Conan 1.55 Documentation
. . . . . . . . . . . . . . . . . . . . . . 362 17.11 How to create and share a custom generator with generator packages . . . . . . . . . . . . . . . . . . 365 17.12 How to manage shared libraries . deps_user_info, these have been removed in 2.0. Note: If you don’t need to customize anything in a generator you can specify it in the generators attribute and skip using the generate() method for that: from cpp_info.components["mycomponent"].set_property("custom_name", "mycomponent-name ˓→", "custom_generator") ... Please note that most of the legacy generators like cmake, cmake_multi, cmake_find_package0 码力 | 963 页 | 7.67 MB | 1 年前3Conan 1.53 Documentation
. . . . . . . . . . . . . . . . . . . . . . 362 17.11 How to create and share a custom generator with generator packages . . . . . . . . . . . . . . . . . . 365 17.12 How to manage shared libraries . deps_user_info, these have been removed in 2.0. Note: If you don’t need to customize anything in a generator you can specify it in the generators attribute and skip using the generate() method for that: from cpp_info.components["mycomponent"].set_property("custom_name", "mycomponent-name ˓→", "custom_generator") ... Please note that most of the legacy generators like cmake, cmake_multi, cmake_find_package0 码力 | 953 页 | 7.64 MB | 1 年前3Conan 1.54 Documentation
. . . . . . . . . . . . . . . . . . . . . . 362 17.11 How to create and share a custom generator with generator packages . . . . . . . . . . . . . . . . . . 365 17.12 How to manage shared libraries . deps_user_info, these have been removed in 2.0. Note: If you don’t need to customize anything in a generator you can specify it in the generators attribute and skip using the generate() method for that: from cpp_info.components["mycomponent"].set_property("custom_name", "mycomponent-name ˓→", "custom_generator") ... Please note that most of the legacy generators like cmake, cmake_multi, cmake_find_package0 码力 | 953 页 | 7.65 MB | 1 年前3Conan 1.52 Documentation
. . . . . . . . . . . . . . . . . . . . . . 360 17.11 How to create and share a custom generator with generator packages . . . . . . . . . . . . . . . . . . 363 17.12 How to manage shared libraries . deps_user_info, these have been removed in 2.0. Note: If you don’t need to customize anything in a generator you can specify it in the generators attribute and skip using the generate() method for that: from cpp_info.components["mycomponent"].set_property("custom_name", "mycomponent-name ˓→", "custom_generator") ... Please note that most of the legacy generators like cmake, cmake_multi, cmake_find_package0 码力 | 943 页 | 7.62 MB | 1 年前3Conan 1.41 Documentation
. . . . . . . . . . . . . . . . . . . . . . 345 17.11 How to create and share a custom generator with generator packages . . . . . . . . . . . . . . . . . . 348 17.12 How to manage shared libraries . previous page) [-r=] # Download dependencies from only the␣ ˓→specified remote [-g=<generator>] # Specify generators at the command␣ ˓→line 3. #include interface files to the Conan packages packages in the source code 4. Modify the build system to use the files output from the Generator 5. Build the application using the build system Downloading packages Download a package, if it isn’t already 0 码力 | 835 页 | 7.10 MB | 1 年前3Conan 1.51 Documentation
. . . . . . . . . . . . . . . . . . . . . . 358 17.11 How to create and share a custom generator with generator packages . . . . . . . . . . . . . . . . . . 361 17.12 How to manage shared libraries . deps_user_info, these have been removed in 2.0. Note: If you don’t need to customize anything in a generator you can specify it in the generators attribute and skip using the generate() method for that: from cpp_info.components["mycomponent"].set_property("custom_name", "mycomponent-name ˓→", "custom_generator") ... Please note that most of the legacy generators like cmake, cmake_multi, cmake_find_package0 码力 | 933 页 | 7.58 MB | 1 年前3Conan 1 Documentation
. . . . . . . . . . . . . . . . . . . . . . 359 17.11 How to create and share a custom generator with generator packages . . . . . . . . . . . . . . . . . . 362 17.12 How to manage shared libraries deps_user_info, these have been removed in 2.0. Note: If you don’t need to customize anything in a generator you can specify it in the generators attribute and skip using the generate() method for that: from "pybind11" ... def package_info(self): ... for generator in ["cmake_find_package", "cmake_find_package_multi"]: self.cpp_info.components["main"].build_modules[generator].append(os.path. �→join("lib", "cmake"0 码力 | 975 页 | 8.75 MB | 1 年前3
共 114 条
- 1
- 2
- 3
- 4
- 5
- 6
- 12