Giter Site home page Giter Site logo

castxmlsuperbuild's Introduction

CastXML

Introduction

CastXML is a C-family abstract syntax tree XML output tool.

This project is maintained by Kitware in support of ITK, the Insight Segmentation and Registration Toolkit.

Manual

See the castxml(1) manual page for instructions to run the tool.

License

CastXML is licensed under the Apache License, Version 2.0. See the LICENSE and NOTICE files for details.

Superbuild

If you are looking for pre-built binaries, or a compact way to build this project, please see CastXMLSuperbuild.

Build

To build CastXML from source, first obtain the prerequisites:

  • A C++ compiler supporting the c++11 standard language level.
  • CMake cross-platform build system generator.
  • LLVM/Clang compiler SDK install tree built using the C++ compiler. This version of CastXML has been tested with LLVM/Clang
    • Git main as of 2024-03-06 (f7d354af57)
    • Release 18.1
    • Release 17.0
    • Release 16.0
    • Release 15.0
    • Release 14.0
    • Release 13.0
    • Release 12.0
    • Release 11.0
    • Release 10.0
    • Release 9.0
    • Release 8.0
    • Release 7.0
    • Release 6.0
    • Release 5.0
    • Release 4.0
    • Release 3.9
    • Release 3.8
    • Release 3.7
    • Release 3.6
  • Optionally, the Sphinx documentation generator to build documentation.

Run CMake on the CastXML source tree to generate a build tree using a C++ compiler compatible with that used to build the LLVM/Clang SDK. CMake options include:

Clang_DIR
Location of the LLVM/Clang SDK. Set to <prefix>/lib/cmake/clang, where <prefix> is the top of the LLVM/Clang SDK install tree. Alternatively, LLVM_DIR may be set to <prefix>/lib/cmake/llvm.
SPHINX_EXECUTABLE
Location of the sphinx-build executable. Required only if building documentation.
SPHINX_HTML
Build documentation in html format.
SPHINX_MAN
Build documentation in man format.

Run the corresponding native build tool (e.g. make) in the CastXML build tree, and optionally build the install target. The castxml command-line tool may be used either from the build tree or the install tree. The install tree is relocatable.

castxmlsuperbuild's People

Contributors

bradking avatar jcfr avatar josephsnyder avatar thewtex avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

castxmlsuperbuild's Issues

Release with clang 6

I can see that the source and binaries are built for only clang version 5. How can I upgrade it to clang 6 or when can I expect a new version.

Windows build: Missing Makefile

Hi,
I am trying to build CastXML for Windows, as per instructions, a make command would build the binary, but there is no Makefile on the folder:
`jciena@WSAMZN-JFHIMA4K MINGW64 /D/Users/jciena/source/CastXML/CastXMLSuperbuild-build
$ l
total 463
drwxr-xr-x 1 jciena 1049089 0 Apr 19 11:26 ./
drwxr-xr-x 1 jciena 1049089 0 Apr 18 13:10 ../
drwxr-xr-x 1 jciena 1049089 0 Apr 18 13:29 .vs/
-rw-r--r-- 1 jciena 1049089 49359 Apr 18 13:11 ALL_BUILD.vcxproj
-rw-r--r-- 1 jciena 1049089 303 Apr 18 13:11 ALL_BUILD.vcxproj.filters
-rw-r--r-- 1 jciena 1049089 168 Apr 18 13:55 ALL_BUILD.vcxproj.user
-rw-r--r-- 1 jciena 1049089 14585 Apr 18 13:11 CMakeCache.txt
drwxr-xr-x 1 jciena 1049089 0 Apr 19 11:26 CMakeFiles/
-rw-r--r-- 1 jciena 1049089 5397 Apr 18 13:11 CastXMLSuperbuild.sln
-rw-r--r-- 1 jciena 1049089 48219 Apr 18 13:11 ZERO_CHECK.vcxproj
-rw-r--r-- 1 jciena 1049089 546 Apr 18 13:11 ZERO_CHECK.vcxproj.filters
drwxr-xr-x 1 jciena 1049089 0 Apr 18 13:11 castxml/
drwxr-xr-x 1 jciena 1049089 0 Apr 18 13:11 castxml-prefix/
-rw-r--r-- 1 jciena 1049089 103933 Apr 18 13:11 castxml.vcxproj
-rw-r--r-- 1 jciena 1049089 2400 Apr 18 13:11 castxml.vcxproj.filters
drwxr-xr-x 1 jciena 1049089 0 Sep 24 2021 cfe-13.0.0/
drwxr-xr-x 1 jciena 1049089 0 Apr 18 13:11 clang-prefix/
-rw-r--r-- 1 jciena 1049089 102272 Apr 18 13:11 clang.vcxproj
-rw-r--r-- 1 jciena 1049089 2380 Apr 18 13:11 clang.vcxproj.filters
-rw-r--r-- 1 jciena 1049089 1490 Apr 18 13:11 cmake_install.cmake
drwxr-xr-x 1 jciena 1049089 0 Apr 18 13:11 llvm/
drwxr-xr-x 1 jciena 1049089 0 Apr 18 13:11 llvm-prefix/
-rw-r--r-- 1 jciena 1049089 101116 Apr 18 13:11 llvm.vcxproj
-rw-r--r-- 1 jciena 1049089 2370 Apr 18 13:11 llvm.vcxproj.filters
drwxr-xr-x 1 jciena 1049089 0 Apr 18 13:30 x64/

jciena@WSAMZN-JFHIMA4K MINGW64 /D/Users/jciena/source/CastXML/CastXMLSuperbuild-build
$ find . -iname makefile
./cfe-13.0.0/tools/scan-build-py/tests/functional/src/build/Makefile
./cfe-13.0.0/utils/ABITest/layout/Makefile
./cfe-13.0.0/utils/ABITest/return-types-32/Makefile
./cfe-13.0.0/utils/ABITest/return-types-64/Makefile
./cfe-13.0.0/utils/ABITest/single-args-32/Makefile
./cfe-13.0.0/utils/ABITest/single-args-64/Makefile

jciena@WSAMZN-JFHIMA4K MINGW64 /D/Users/jciena/source/CastXML/CastXMLSuperbuild-build
$ cmake
Usage

cmake [options]
cmake [options]
cmake [options] -S -B

Specify a source directory to (re-)generate a build system for it in the
current working directory. Specify an existing build directory to
re-generate its build system.

Run 'cmake --help' for more information.
CMake has not also worked. Then I opened the solution file CastXMLSuperbuild.sln and tried to build 'castxml' and 'ALL_BUILD' but both fails:Build started...
1>------ Build started: Project: ZERO_CHECK, Configuration: Debug x64 ------
1>Checking Build System
2>------ Build started: Project: llvm, Configuration: Debug x64 ------
2>Creating directories for 'llvm'
2>Building Custom Rule D:/Users/jciena/source/CastXML/CastXMLSuperbuild/CMakeLists.txt
2>Performing download step (download, verify and extract) for 'llvm'
2>-- verifying file...
2> file='D:/Users/jciena/source/CastXML/CastXMLSuperbuild-build/llvm-prefix/src/llvm-13.0.0.src.tar.xz'
2>-- File already exists and hash match (skip download):
2> file='D:/Users/jciena/source/CastXML/CastXMLSuperbuild-build/llvm-prefix/src/llvm-13.0.0.src.tar.xz'
2> MD5='8c24626dce3ee9d87d1079ebf0897db5'
2>-- extracting...
2> src='D:/Users/jciena/source/CastXML/CastXMLSuperbuild-build/llvm-prefix/src/llvm-13.0.0.src.tar.xz'
2> dst='D:/Users/jciena/source/CastXML/CastXMLSuperbuild-build/llvm-prefix/src/llvm'
2>-- extracting... [tar xfz]
2>-- extracting... [analysis]
2>-- extracting... [rename]
2>-- extracting... [clean up]
2>-- extracting... done
2>No update step for 'llvm'
2>No patch step for 'llvm'
2>Performing configure step for 'llvm'
2>loading initial cache file D:/Users/jciena/source/CastXML/CastXMLSuperbuild-build/llvm-prefix/tmp/llvm-cache-Debug.cmake
2>CMake Warning at CMakeLists.txt:32 (message):
2> Visual Studio generators use the x86 host compiler by default, even for
2> 64-bit targets. This can result in linker instability and out of memory
2> errors. To use the 64-bit host compiler, pass -Thost=x64 on the CMake
2> command line.
2>
2>
2>-- Selecting Windows SDK version 10.0.22000.0 to target Windows 10.0.17763.
2>-- Could NOT find ZLIB (missing: ZLIB_LIBRARY) (found version "1.2.11")
2>CMake Error at C:/Program Files/CMake/share/cmake-3.24/Modules/FindLibXml2.cmake:100 (if):
2> if given arguments:
2>
2> "LIBXML2_LIBRARY" "MATCHES" "^npp=notepad++"
2>
2> Regular expression "^npp=notepad++" cannot compile
2>Call Stack (most recent call first):
2> cmake/config-ix.cmake:144 (find_package)
2> CMakeLists.txt:684 (include)
2>
2>
2>-- Configuring incomplete, errors occurred!
2>See also "D:/Users/jciena/source/CastXML/CastXMLSuperbuild-build/llvm-prefix/src/llvm-build/CMakeFiles/CMakeOutput.log".
2>See also "D:/Users/jciena/source/CastXML/CastXMLSuperbuild-build/llvm-prefix/src/llvm-build/CMakeFiles/CMakeError.log".
2>RegularExpression::compile(): Nested *?+.
2>RegularExpression::compile(): Error in compile.
2>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(247,5): error MSB8066: Custom build for 'D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\001c63a3b8a26f8953e6e5ece5506f00\llvm-mkdir.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\001c63a3b8a26f8953e6e5ece5506f00\llvm-download.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\001c63a3b8a26f8953e6e5ece5506f00\llvm-update.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\001c63a3b8a26f8953e6e5ece5506f00\llvm-patch.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\001c63a3b8a26f8953e6e5ece5506f00\llvm-configure.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\001c63a3b8a26f8953e6e5ece5506f00\llvm-build.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\001c63a3b8a26f8953e6e5ece5506f00\llvm-install.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\17596611cc464f77773a527715841064\llvm-complete.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\37bb8047cee14eea84c5373bc2dcb3d4\llvm.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild\CMakeLists.txt' exited with code 1.
2>Done building project "llvm.vcxproj" -- FAILED.
3>------ Build started: Project: clang, Configuration: Debug x64 ------
3>Creating directories for 'clang'
3>Building Custom Rule D:/Users/jciena/source/CastXML/CastXMLSuperbuild/CMakeLists.txt
3>Performing download step (download, verify and extract) for 'clang'
3>-- verifying file...
3> file='D:/Users/jciena/source/CastXML/CastXMLSuperbuild-build/clang-prefix/src/clang-13.0.0.src.tar.xz'
3>-- File already exists and hash match (skip download):
3> file='D:/Users/jciena/source/CastXML/CastXMLSuperbuild-build/clang-prefix/src/clang-13.0.0.src.tar.xz'
3> MD5='020cbac6e5786094fe4f96f72e290763'
3>-- extracting...
3> src='D:/Users/jciena/source/CastXML/CastXMLSuperbuild-build/clang-prefix/src/clang-13.0.0.src.tar.xz'
3> dst='D:/Users/jciena/source/CastXML/CastXMLSuperbuild-build/cfe-13.0.0'
3>-- extracting... [tar xfz]
3>cmake -E tar : warning : skipping symbolic link "clang-13.0.0.src/test/Driver/Inputs/CUDA-symlinks/usr/bin/ptxas" -> "../../opt/cuda/bin/ptxas".
3>cmake -E tar : warning : skipping symbolic link "clang-13.0.0.src/test/Driver/Inputs/basic_cross_linux_tree/usr/bin/i386-unknown-linux-gnu-ld" -> "i386-unknown-linux-gnu-ld.gold".
3>cmake -E tar : warning : skipping symbolic link "clang-13.0.0.src/test/Driver/Inputs/basic_cross_linux_tree/usr/bin/x86_64-unknown-linux-gnu-ld" -> "x86_64-unknown-linux-gnu-ld.gold".
3>cmake -E tar : warning : skipping symbolic link "clang-13.0.0.src/test/Driver/Inputs/basic_cross_linux_tree/usr/i386-unknown-linux-gnu/bin/ld" -> "ld.gold".
3>cmake -E tar : warning : skipping symbolic link "clang-13.0.0.src/test/Driver/Inputs/basic_cross_linux_tree/usr/x86_64-unknown-linux-gnu/bin/ld" -> "ld.gold".
3>cmake -E tar : warning : skipping symbolic link "clang-13.0.0.src/test/Driver/Inputs/multilib_32bit_linux_tree/usr/bin/as" -> "i386-unknown-linux-gnu-as".
3>cmake -E tar : warning : skipping symbolic link "clang-13.0.0.src/test/Driver/Inputs/multilib_32bit_linux_tree/usr/bin/ld" -> "i386-unknown-linux-gnu-ld".
3>cmake -E tar : warning : skipping symbolic link "clang-13.0.0.src/test/Driver/Inputs/multilib_32bit_linux_tree/usr/i386-unknown-linux/bin/as" -> "../../bin/i386-unknown-linux-gnu-as".
3>cmake -E tar : warning : skipping symbolic link "clang-13.0.0.src/test/Driver/Inputs/multilib_32bit_linux_tree/usr/i386-unknown-linux/bin/ld" -> "../../bin/i386-unknown-linux-gnu-ld".
3>cmake -E tar : warning : skipping symbolic link "clang-13.0.0.src/test/Driver/Inputs/multilib_64bit_linux_tree/usr/bin/as" -> "x86_64-unknown-linux-gnu-as".
3>cmake -E tar : warning : skipping symbolic link "clang-13.0.0.src/test/Driver/Inputs/multilib_64bit_linux_tree/usr/bin/ld" -> "x86_64-unknown-linux-gnu-ld".
3>cmake -E tar : warning : skipping symbolic link "clang-13.0.0.src/test/Driver/Inputs/multilib_64bit_linux_tree/usr/x86_64-unknown-linux/bin/as" -> "../../bin/x86_64-unknown-linux-gnu-as".
3>cmake -E tar : warning : skipping symbolic link "clang-13.0.0.src/test/Driver/Inputs/multilib_64bit_linux_tree/usr/x86_64-unknown-linux/bin/ld" -> "../../bin/x86_64-unknown-linux-gnu-ld".
3>-- extracting... [analysis]
3>-- extracting... [rename]
3>-- extracting... [clean up]
3>-- extracting... done
3>No update step for 'clang'
3>No patch step for 'clang'
3>Performing configure step for 'clang'
3>loading initial cache file D:/Users/jciena/source/CastXML/CastXMLSuperbuild-build/clang-prefix/tmp/clang-cache-Debug.cmake
3>-- Selecting Windows SDK version 10.0.22000.0 to target Windows 10.0.17763.
3>-- Found LLVM_CONFIG as D:/Users/jciena/source/CastXML/CastXMLSuperbuild-build/llvm/bin/llvm-config
3>-- D:/Users/jciena/source/CastXML/CastXMLSuperbuild-build/llvm/bin/llvm-config --assertion-mode --bindir --libdir --includedir --prefix --src-root --cmakedir
3>CMake Error at CMakeLists.txt:42 (message):
3> llvm-config failed with status The system cannot find the file specified
3>
3>
3>-- Configuring incomplete, errors occurred!
3>See also "D:/Users/jciena/source/CastXML/CastXMLSuperbuild-build/clang-prefix/src/clang-build/CMakeFiles/CMakeOutput.log".
3>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(247,5): error MSB8066: Custom build for 'D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\1201def659986bd99dce7255c69c21c2\clang-mkdir.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\1201def659986bd99dce7255c69c21c2\clang-download.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\1201def659986bd99dce7255c69c21c2\clang-update.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\1201def659986bd99dce7255c69c21c2\clang-patch.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\1201def659986bd99dce7255c69c21c2\clang-configure.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\1201def659986bd99dce7255c69c21c2\clang-build.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\1201def659986bd99dce7255c69c21c2\clang-install.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\17596611cc464f77773a527715841064\clang-complete.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\37bb8047cee14eea84c5373bc2dcb3d4\clang.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild\CMakeLists.txt' exited with code 1.
3>Done building project "clang.vcxproj" -- FAILED.
4>------ Build started: Project: castxml, Configuration: Debug x64 ------
4>Creating directories for 'castxml'
4>Building Custom Rule D:/Users/jciena/source/CastXML/CastXMLSuperbuild/CMakeLists.txt
4>Performing download step (git clone) for 'castxml'
4>-- Avoiding repeated git clone, stamp file is up to date: 'D:/Users/jciena/source/CastXML/CastXMLSuperbuild-build/castxml-prefix/src/castxml-stamp/castxml-gitclone-lastrun.txt'
4>Performing update step for 'castxml'
4>No patch step for 'castxml'
4>Performing configure step for 'castxml'
4>loading initial cache file D:/Users/jciena/source/CastXML/CastXMLSuperbuild-build/castxml-prefix/tmp/castxml-cache-Debug.cmake
4>-- Selecting Windows SDK version 10.0.22000.0 to target Windows 10.0.17763.
4>CMake Error at CMakeLists.txt:83 (find_package):
4> By not providing "FindLLVM.cmake" in CMAKE_MODULE_PATH this project has
4> asked CMake to find a package configuration file provided by "LLVM", but
4> CMake did not find one.
4>
4> Could not find a package configuration file provided by "LLVM" with any of
4> the following names:
4>
4> LLVMConfig.cmake
4> llvm-config.cmake
4>
4> Add the installation prefix of "LLVM" to CMAKE_PREFIX_PATH or set
4> "LLVM_DIR" to a directory containing one of the above files. If "LLVM"
4> provides a separate development package or SDK, be sure it has been
4> installed.
4>
4>
4>-- Configuring incomplete, errors occurred!
4>See also "D:/Users/jciena/source/CastXML/CastXMLSuperbuild-build/castxml-prefix/src/castxml-build/CMakeFiles/CMakeOutput.log".
4>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(247,5): error MSB8066: Custom build for 'D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\6213ae581c9d091e6bc127abf182d71a\castxml-mkdir.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\6213ae581c9d091e6bc127abf182d71a\castxml-download.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\6213ae581c9d091e6bc127abf182d71a\castxml-update.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\6213ae581c9d091e6bc127abf182d71a\castxml-patch.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\6213ae581c9d091e6bc127abf182d71a\castxml-configure.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\6213ae581c9d091e6bc127abf182d71a\castxml-build.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\6213ae581c9d091e6bc127abf182d71a\castxml-install.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\17596611cc464f77773a527715841064\castxml-complete.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild-build\CMakeFiles\37bb8047cee14eea84c5373bc2dcb3d4\castxml.rule;D:\Users\jciena\source\CastXML\CastXMLSuperbuild\CMakeLists.txt' exited with code 1.
4>Done building project "castxml.vcxproj" -- FAILED.
========== Build: 1 succeeded, 3 failed, 0 up-to-date, 0 skipped ==========
========== Build started at 6:31 AM and took 01:04.968 minutes ==========
`

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.