From: Sir Richard Date: Sun, 25 Jul 2010 17:03:07 +0000 (+0000) Subject: [CMAKE]: Add a makefile to build the IDL files. Not perfect, but gets the job done. X-Git-Tag: backups/GSoC_2011/GSoC_Themes@51550~990 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=844fdca2392032c6d5350ec19eecbb9fb25630ee [CMAKE]: Add a makefile to build the IDL files. Not perfect, but gets the job done. [CMAKE]: Add a mignw32 toolchain file, right now it's pretty hacked for my system only, but it works. svn path=/branches/cmake-bringup/; revision=48256 --- diff --git a/include/psdk/CMakeLists.txt b/include/psdk/CMakeLists.txt new file mode 100644 index 00000000000..29c93627cc9 --- /dev/null +++ b/include/psdk/CMakeLists.txt @@ -0,0 +1,51 @@ + +MACRO (MACRO_ADD_INTERFACES) + + FOREACH(_in_FILE ${ARGN}) + + GET_FILENAME_COMPONENT(FILE ${_in_FILE} NAME_WE) + + ADD_CUSTOM_COMMAND( + OUTPUT ${REACTOS_SOURCE_DIR}/include/psdk/${FILE}.h + COMMAND widl -I${REACTOS_SOURCE_DIR}/include/dxsdk -I. -I${REACTOS_SOURCE_DIR}/include -I${REACTOS_SOURCE_DIR}/include/psdk -m32 --win32 -h -H ${REACTOS_SOURCE_DIR}/include/psdk/${FILE}.h ${REACTOS_SOURCE_DIR}/include/psdk/${FILE}.idl + DEPENDS widl + ) + + SET_SOURCE_FILES_PROPERTIES( + ${REACTOS_SOURCE_DIR}/include/psdk/${FILE}.h + PROPERTIES + GENERATED TRUE + ) + + ADD_CUSTOM_TARGET(build_${FILE}_idl ALL DEPENDS ${REACTOS_SOURCE_DIR}/include/psdk/${FILE}.h) + + ENDFOREACH(_in_FILE ${ARGN}) + +ENDMACRO (MACRO_ADD_INTERFACES) + +file(GLOB_RECURSE SOURCE "*.idl") +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/access.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/asynot.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/asysta.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/binres.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/cmdbas.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/cmdtxt.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/crtrow.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/dbccmd.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/dbcses.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/dbdsad.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/dbinit.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/vmrender.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/sesprp.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/rstloc.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/rstbas.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/rstinf.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/rowchg.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/row.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/opnrst.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/dyngraph.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/dbs.idl) +LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/dbprop.idl) + +MACRO_ADD_INTERFACES(${SOURCE}) + diff --git a/toolchain-mingw32.cmake b/toolchain-mingw32.cmake new file mode 100644 index 00000000000..2689fb28aec --- /dev/null +++ b/toolchain-mingw32.cmake @@ -0,0 +1,16 @@ +# the name of the target operating system +SET(CMAKE_SYSTEM_NAME Windows) + +# which compilers to use for C and C++ +SET(CMAKE_C_COMPILER mingw32-gcc) +SET(CMAKE_CXX_COMPILER mingw32-g++) + +# here is the target environment located +SET(CMAKE_FIND_ROOT_PATH /usr/local/RosBE ) + +# adjust the default behaviour of the FIND_XXX() commands: +# search headers and libraries in the target environment, search +# programs in the host environment +set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)