Hello

In our development environment, we have to support multiple platforms like
Make-based, Visual Studio, Eclipse CDT and Keil uVision. CMake seems
perfect to support this. But obviously there is no generator for uVision.
Here comes the fun part: I am going to implement a generator for it :-)

Looking at the code of cmake, I identified cmGlobalGenerator and
cmLocalGenerator as a base "hock" to start off. But actually I am looking
for higer-level starting-point. Could you help me to identify one based on
the information for uVision:

uVision:

- uVision does not use makefiles.

- Multiproject Workspace: Kind of like a VisualStudio-solution. It is a
xml-file basically just naming the projects contained in to workspace.

Here's how it looks like:

<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<ProjectWorkspace xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xsi:noNamespaceSchemaLocation="project_mpw.xsd">

  <SchemaVersion>1.0</SchemaVersion>

  <Header>### uVision Project, (C) Keil Software</Header>

  <WorkspaceName>WorkSpace</WorkspaceName>

  <project>
    <PathAndName>.\Project1\Project1.uvproj</PathAndName>
  </project>

  <project>
    <PathAndName>.\Project2\Project2.uvproj</PathAndName>
    <NodeIsActive>1</NodeIsActive>
  </project>

</ProjectWorkspace>

- Then there is a project-file, also xml. One sub-section of it names the
files contained within the project.

This part looks like this:

      <Groups>
        <Group>
          <GroupName>SOURCE_FILES</GroupName>
          <Files>
            <File>
              <FileName>Main.cpp</FileName>
              <FileType>8</FileType>
              <FilePath>.\src\Main.cpp</FilePath>
            </File>
            <File>
              <FileName>startup_stm32f10x_md_vl.s</FileName>
              <FileType>2</FileType>
              <FilePath>.\src\startup_stm32f10x_md_vl.s</FilePath>
            </File>
          </Files>
        </Group>
      </Groups>

- Then there is an option-file. In there, there is also some reference to
the source-files. But I guess once I am able to create the project-file
entries, generating the option-files is trivial.

If anyone could guide me to a good starting point, that would be awesome!

Thanks a lot in advance!

--
Cheers!
 Marco
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers

Reply via email to