[CMAKE]: Add wmc to host tools, and export it as native-wmc.
authorSir Richard <sir_richard@svn.reactos.org>
Sun, 25 Jul 2010 23:05:32 +0000 (23:05 +0000)
committerSir Richard <sir_richard@svn.reactos.org>
Sun, 25 Jul 2010 23:05:32 +0000 (23:05 +0000)
[CMAKE]: Add a makelist to build the mc->headers as one target.
[CMAKE]: Fix the IDL rule to build all IDLs as one target.
[CMAKE]: Build a whole lot more libraries.

svn path=/branches/cmake-bringup/; revision=48267

14 files changed:
CMakeLists.txt
include/psdk/CMakeLists.txt
include/reactos/mc/CMakeLists.txt [new file with mode: 0644]
lib/CMakeLists.txt
lib/atl/CMakeLists.txt [new file with mode: 0644]
lib/cmlib/CMakeLists.txt [new file with mode: 0644]
lib/dnslib/CMakeLists.txt [new file with mode: 0644]
lib/epsapi/CMakeLists.txt [new file with mode: 0644]
lib/lsalib/CMakeLists.txt [new file with mode: 0644]
lib/recyclebin/CMakeLists.txt [new file with mode: 0644]
lib/rossym/CMakeLists.txt [new file with mode: 0644]
lib/rtl/CMakeLists.txt [new file with mode: 0644]
lib/smlib/CMakeLists.txt [new file with mode: 0644]
lib/tdilib/CMakeLists.txt [new file with mode: 0644]

index 8e1bcbe..a46afab 100644 (file)
@@ -16,7 +16,7 @@ include_directories(./include/reactos/wine)
 
 add_subdirectory(tools)
 
-export(TARGETS widl FILE ${CMAKE_BINARY_DIR}/ImportExecutables.cmake NAMESPACE native- )
+export(TARGETS widl wmc FILE ${CMAKE_BINARY_DIR}/ImportExecutables.cmake NAMESPACE native- )
 
 else()
 
@@ -51,6 +51,7 @@ add_definitions(-Os -fno-strict-aliasing -ftracer -momit-leaf-frame-pointer -mpr
 include_directories(./include)
 include_directories(./include/psdk)
 include_directories(${REACTOS_BINARY_DIR}/include/psdk)
+include_directories(${REACTOS_BINARY_DIR}/include/reactos)
 include_directories(./include/crt)
 include_directories(./include/crt/mingw32)
 include_directories(./include/ddk)
@@ -59,6 +60,7 @@ include_directories(./include/reactos)
 include_directories(./include/reactos/libs)
 
 add_subdirectory(include/psdk)
+add_subdirectory(include/reactos/mc)
 
 add_subdirectory(lib)
 
index 3b9d85d..fecfd4d 100644 (file)
@@ -17,7 +17,7 @@ MACRO (MACRO_ADD_INTERFACES)
      GENERATED TRUE
    )
 
-    ADD_CUSTOM_TARGET(build_${FILE}_idl ALL DEPENDS ${REACTOS_BINARY_DIR}/include/psdk/${FILE}.h)
+    LIST(APPEND HEADERS ${REACTOS_BINARY_DIR}/include/psdk/${FILE}.h)  
 
  ENDFOREACH(_in_FILE ${ARGN})
 
@@ -49,3 +49,4 @@ LIST(REMOVE_ITEM SOURCE ${REACTOS_SOURCE_DIR}/include/psdk/dbprop.idl)
 
 MACRO_ADD_INTERFACES(${SOURCE})
 
+ADD_CUSTOM_TARGET(build_headers ALL DEPENDS ${HEADERS})
diff --git a/include/reactos/mc/CMakeLists.txt b/include/reactos/mc/CMakeLists.txt
new file mode 100644 (file)
index 0000000..7e9f83b
--- /dev/null
@@ -0,0 +1,30 @@
+
+MACRO (MACRO_ADD_RESOURCES)
+
+ FOREACH(_in_FILE ${ARGN})
+
+   GET_FILENAME_COMPONENT(FILE ${_in_FILE} NAME_WE)
+
+   ADD_CUSTOM_COMMAND(
+     OUTPUT ${REACTOS_BINARY_DIR}/include/reactos/${FILE}.h
+     COMMAND native-wmc -i -H ${REACTOS_BINARY_DIR}/include/reactos/${FILE}.h -o ${REACTOS_BINARY_DIR}/include/reactos/mc/${FILE}.rc ${REACTOS_SOURCE_DIR}/include/reactos/mc/${FILE}.mc
+     DEPENDS native-wmc
+   )
+
+   SET_SOURCE_FILES_PROPERTIES(
+     ${REACTOS_BINARY_DIR}/include/reactos/${FILE}.h
+     PROPERTIES
+     GENERATED TRUE
+   )
+   
+   LIST(APPEND RESOURCES ${REACTOS_BINARY_DIR}/include/reactos/${FILE}.h)  
+
+ ENDFOREACH(_in_FILE ${ARGN})
+
+ENDMACRO (MACRO_ADD_RESOURCES)
+
+file(GLOB_RECURSE SOURCE "*.mc")
+
+MACRO_ADD_RESOURCES(${SOURCE})
+
+ADD_CUSTOM_TARGET(build_resources ALL DEPENDS ${RESOURCES})
index a97704a..e14cd34 100644 (file)
@@ -1,2 +1,11 @@
 
+add_subdirectory(atl)
+add_subdirectory(cmlib)
+add_subdirectory(dnslib)
+add_subdirectory(epsapi)
+add_subdirectory(lsalib)
+add_subdirectory(recyclebin)
+#add_subdirectory(rtl)
 add_subdirectory(sdk)
+add_subdirectory(smlib)
+add_subdirectory(tdilib)
diff --git a/lib/atl/CMakeLists.txt b/lib/atl/CMakeLists.txt
new file mode 100644 (file)
index 0000000..ccc6e73
--- /dev/null
@@ -0,0 +1,7 @@
+
+file(GLOB_RECURSE SOURCE "*.cpp")
+
+add_definitions(-DUNICODE -D_UNICODE)
+add_definitions(-DROS_Headers)
+
+add_library(atl ${SOURCE})
\ No newline at end of file
diff --git a/lib/cmlib/CMakeLists.txt b/lib/cmlib/CMakeLists.txt
new file mode 100644 (file)
index 0000000..013e55e
--- /dev/null
@@ -0,0 +1,7 @@
+
+
+add_definitions(-D_NTOSKRNL_ -D_NTSYSTEM_ -DNASSERT)
+
+file(GLOB_RECURSE SOURCE "*.c")
+
+add_library(cmlib ${SOURCE})
\ No newline at end of file
diff --git a/lib/dnslib/CMakeLists.txt b/lib/dnslib/CMakeLists.txt
new file mode 100644 (file)
index 0000000..2c0855f
--- /dev/null
@@ -0,0 +1,5 @@
+include_directories(./inc)
+
+file(GLOB_RECURSE SOURCE "*.c")
+
+add_library(dnslib ${SOURCE})
\ No newline at end of file
diff --git a/lib/epsapi/CMakeLists.txt b/lib/epsapi/CMakeLists.txt
new file mode 100644 (file)
index 0000000..775a712
--- /dev/null
@@ -0,0 +1,4 @@
+
+file(GLOB_RECURSE SOURCE "*.c")
+
+add_library(epsapi ${SOURCE})
\ No newline at end of file
diff --git a/lib/lsalib/CMakeLists.txt b/lib/lsalib/CMakeLists.txt
new file mode 100644 (file)
index 0000000..c544bcc
--- /dev/null
@@ -0,0 +1,5 @@
+include_directories(${REACTOS_SOURCE_DIR}/include/reactos/subsys)
+file(GLOB_RECURSE SOURCE "*.c")
+
+add_library(lsalib ${SOURCE})
\ No newline at end of file
diff --git a/lib/recyclebin/CMakeLists.txt b/lib/recyclebin/CMakeLists.txt
new file mode 100644 (file)
index 0000000..a35c28d
--- /dev/null
@@ -0,0 +1,4 @@
+
+file(GLOB_RECURSE SOURCE "*.c")
+
+add_library(recyclebin ${SOURCE})
\ No newline at end of file
diff --git a/lib/rossym/CMakeLists.txt b/lib/rossym/CMakeLists.txt
new file mode 100644 (file)
index 0000000..2efce18
--- /dev/null
@@ -0,0 +1,4 @@
+
+file(GLOB_RECURSE SOURCE "*.c")
+
+add_library(rossym ${SOURCE})
\ No newline at end of file
diff --git a/lib/rtl/CMakeLists.txt b/lib/rtl/CMakeLists.txt
new file mode 100644 (file)
index 0000000..589763f
--- /dev/null
@@ -0,0 +1,4 @@
+
+file(GLOB_RECURSE SOURCE "*.c")
+
+add_library(rtl ${SOURCE})
\ No newline at end of file
diff --git a/lib/smlib/CMakeLists.txt b/lib/smlib/CMakeLists.txt
new file mode 100644 (file)
index 0000000..639454c
--- /dev/null
@@ -0,0 +1,5 @@
+include_directories(${REACTOS_SOURCE_DIR}/include/reactos/subsys)
+
+file(GLOB_RECURSE SOURCE "*.c")
+
+add_library(smlib ${SOURCE})
\ No newline at end of file
diff --git a/lib/tdilib/CMakeLists.txt b/lib/tdilib/CMakeLists.txt
new file mode 100644 (file)
index 0000000..a65ebcd
--- /dev/null
@@ -0,0 +1,7 @@
+# FIXFIX: You guys should move this header in include/reactos/libs/iphlpapi!
+include_directories(${REACTOS_SOURCE_DIR}/dll/win32/iphlpapi) 
+include_directories(.) 
+
+file(GLOB_RECURSE SOURCE "*.c")
+
+add_library(tdilib ${SOURCE})
\ No newline at end of file