[CMake] Generating makefile from Visual Studio Project (Migrating to Eclipse)

Olumide 50295 at web.de
Tue Dec 4 16:58:00 EST 2007


Jesper Eskilson wrote:
  > I've uploaded a new version of the vcproj2cmake.rb script which does not
 > emit any add_locale() macros.
 > ...
 >> include_directories(
 >>   C:/Program Files/Alias/Maya6.5/include
 >> )
 >
 > You need double quotes around the path, since it contains spaces.
 >
 >> add_definitions(
 >>   -DWIN32,_DEBUG,_WINDOWS,_AFXDLL,_MBCS,NT_PLUGIN,REQUIRE_IOSTREAM
 >> )
 >
 > No commas between the symbols.

Thanks.

Here's a copy of my new CMakeLists.txt, after double quoting paths with 
spaces and removing commas between symbols

#######################################################################

project( TestTexturePlugin )

set(SOURCES
   C:/Work/Demo/TestTexturePlugin/pluginMain.cpp
)

include_directories(
   C:/Program
   C:/Work/Demo/TestTexturePlugin/Files/Alias/Maya6.5/include
)

add_definitions(
   -DWIN32 _WINDOWS _DEBUG "WIN32 _DEBUG _WINDOWS _AFXDLL _MBCS 
NT_PLUGIN REQUIRE_IOSTREAM" "CMAKE_INTDIR=\"Debug\"" 
TestTexturePlugin_EXPORTS
)

add_library( TestTexturePlugin SHARED ${SOURCES} )

target_link_libraries( TestTexturePlugin $(NOINHERIT) kernel32 user32 
gdi32 winspool comdlg32 advapi32 shell32 ole32 oleaut32 uuid odbc32 
odbccp32 Foundation OpenMaya )

#######################################################################

'Just a few observations/questions:

(1.) The definitions section previously read:

add_definitions(
-DWIN32,_WINDOWS,_DEBUG,"WIN32,_DEBUG,_WINDOWS,_AFXDLL,_MBCS,NT_PLUGIN,REQUIRE_IOSTREAM","CMAKE_INTDIR=\"Debug\"",TestTexturePlugin_EXPORTS
)

Why does WIN32 begin with a quote mark, and REQUIRE_IOSTREAM end with a 
quote mark? Is this some sort of grouping of 
WIN32,_DEBUG,_WINDOWS,_AFXDLL,_MBCS,NT_PLUGIN,REQUIRE_IOSTREAM? Also, is 
CMAKE_INTDIR=\"Debug\" intentionally double quoted?


(2.) The contents of the include_directories section are somewhat 
mangled i.e. they read:

include_directories(
   C:/Program
   C:/Work/Demo/TestTexturePlugin/Files/Alias/Maya6.5/include
)

instead of:

include_directories(
   "C:/Program Files/Alias/Maya6.5/include"
   C:/Work/Demo/TestTexturePlugin/
)

Regards,

- Olumide







More information about the CMake mailing list