Browse Source

cmake: minor cleanup and changes for pydoc target

Signed-off-by: Mihai Tudor Panu <mihai.tudor.panu@intel.com>
Mihai Tudor Panu 9 years ago
parent
commit
5bc5379640
2 changed files with 17 additions and 23 deletions
  1. 16
    22
      CMakeLists.txt
  2. 1
    1
      doxy/conf.py.in

+ 16
- 22
CMakeLists.txt View File

80
     list (GET PYTHON_VERSION_LIST 0 PYTHON_VERSION_MAJOR)
80
     list (GET PYTHON_VERSION_LIST 0 PYTHON_VERSION_MAJOR)
81
     list (GET PYTHON_VERSION_LIST 1 PYTHON_VERSION_MINOR)
81
     list (GET PYTHON_VERSION_LIST 1 PYTHON_VERSION_MINOR)
82
     set (SITE_PACKAGES ${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}/site-packages)
82
     set (SITE_PACKAGES ${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}/site-packages)
83
-
84
-    # throw a warning if site-packages doesn't exist, might need a more robust way on adding make install dependency and paths
85
-    if (NOT EXISTS ${CMAKE_CURRENT_BINARY_DIR}/${SITE_PACKAGES})
86
-      message( WARNING " - Sphinx documentation 'pydoc' target depends on python libs generated by 'install' target. Run that first!")
87
-    endif()
88
-
89
     configure_file (${CMAKE_CURRENT_SOURCE_DIR}/doxy/conf.py.in ${CMAKE_CURRENT_BINARY_DIR}/pydoc/conf.py @ONLY)
83
     configure_file (${CMAKE_CURRENT_SOURCE_DIR}/doxy/conf.py.in ${CMAKE_CURRENT_BINARY_DIR}/pydoc/conf.py @ONLY)
90
     configure_file (${CMAKE_CURRENT_SOURCE_DIR}/doxy/index.rst ${CMAKE_CURRENT_BINARY_DIR}/pydoc/index.rst COPYONLY)
84
     configure_file (${CMAKE_CURRENT_SOURCE_DIR}/doxy/index.rst ${CMAKE_CURRENT_BINARY_DIR}/pydoc/index.rst COPYONLY)
91
     add_custom_target (pydoc
85
     add_custom_target (pydoc
92
-      COMMAND rm -r ${CMAKE_BINARY_DIR}/python-staging && mkdir -p ${CMAKE_BINARY_DIR}/python-staging
93
-      COMMAND find ${CMAKE_BINARY_DIR}/src -name "_pyupm_*.so" -exec cp {} ${CMAKE_BINARY_DIR}/python-staging \;
94
-      COMMAND find ${CMAKE_BINARY_DIR}/src -name "pyupm_*.py" -exec cp {} ${CMAKE_BINARY_DIR}/python-staging \;
95
-      COMMAND ${SPHINX_API_EXECUTABLE} -f -o pydoc  ${CMAKE_BINARY_DIR}/python-staging
86
+      COMMAND rm -r -f ${CMAKE_BINARY_DIR}/pyupm && mkdir -p ${CMAKE_BINARY_DIR}/pyupm
87
+      COMMAND find ${CMAKE_BINARY_DIR}/src -name "_pyupm_*.so" -exec cp {} ${CMAKE_BINARY_DIR}/pyupm \;
88
+      COMMAND find ${CMAKE_BINARY_DIR}/src -name "pyupm_*.py" -exec cp {} ${CMAKE_BINARY_DIR}/pyupm \;
89
+      COMMAND ${SPHINX_API_EXECUTABLE} -f -o pydoc  ${CMAKE_BINARY_DIR}/pyupm
96
       # todo: use a separate cmake FILE module for string replacement instead
90
       # todo: use a separate cmake FILE module for string replacement instead
97
       COMMAND ${SPHINX_EXECUTABLE} -b html pydoc html/python
91
       COMMAND ${SPHINX_EXECUTABLE} -b html pydoc html/python
98
       COMMAND sed -i.bak s|\">pyupm_|\">|g html/python/index.html html/python/modules.html
92
       COMMAND sed -i.bak s|\">pyupm_|\">|g html/python/index.html html/python/modules.html
106
   find_package(Yuidoc)
100
   find_package(Yuidoc)
107
   if(YUIDOC_FOUND)
101
   if(YUIDOC_FOUND)
108
     # node required for Yuidoc documentation
102
     # node required for Yuidoc documentation
109
-	find_package(Node)
110
-	file(GLOB_RECURSE JSDOC_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/doxy/node doxy/node/*)
111
-	foreach(JSDOC_FILE ${JSDOC_FILES})
112
-	  configure_file(${CMAKE_CURRENT_SOURCE_DIR}/doxy/node/${JSDOC_FILE} ${CMAKE_CURRENT_BINARY_DIR}/${JSDOC_FILE} COPYONLY)
113
-	endforeach()
114
-	add_custom_target(jsdoc
115
-	  NODE_PATH=${NODE_PATH} ${NODE_EXECUTABLE} docgen -m upm -i xml -t ${CMAKE_CURRENT_SOURCE_DIR}/src -g ../../../../docs/images/
116
-	  COMMAND ${YUIDOC_EXECUTABLE} -C --no-sort --helpers generators/yuidoc/helper.js --themedir generators/yuidoc/tmpl -o html/node jsdoc/yuidoc/upm
117
-	  COMMAND NODE_PATH=${NODE_PATH} ${NODE_EXECUTABLE} tolower -i html/node
118
-	  DEPENDS doc
119
-	  WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
103
+    find_package(Node)
104
+    file(GLOB_RECURSE JSDOC_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/doxy/node doxy/node/*)
105
+    foreach(JSDOC_FILE ${JSDOC_FILES})
106
+      configure_file(${CMAKE_CURRENT_SOURCE_DIR}/doxy/node/${JSDOC_FILE} ${CMAKE_CURRENT_BINARY_DIR}/${JSDOC_FILE} COPYONLY)
107
+    endforeach()
108
+    add_custom_target(jsdoc
109
+      NODE_PATH=${NODE_PATH} ${NODE_EXECUTABLE} docgen -m upm -i xml -t ${CMAKE_CURRENT_SOURCE_DIR}/src -g ../../../../docs/images/
110
+      COMMAND ${YUIDOC_EXECUTABLE} -C --no-sort --helpers generators/yuidoc/helper.js --themedir generators/yuidoc/tmpl -o html/node jsdoc/yuidoc/upm
111
+      COMMAND NODE_PATH=${NODE_PATH} ${NODE_EXECUTABLE} tolower -i html/node
112
+      DEPENDS doc
113
+      WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
120
       COMMENT "Generating API documentation with Yuidoc" VERBATIM
114
       COMMENT "Generating API documentation with Yuidoc" VERBATIM
121
-	)
115
+    )
122
   endif()
116
   endif()
123
 endif()
117
 endif()
124
 
118
 

+ 1
- 1
doxy/conf.py.in View File

20
 # If extensions (or modules to document with autodoc) are in another directory,
20
 # If extensions (or modules to document with autodoc) are in another directory,
21
 # add these directories to sys.path here. If the directory is relative to the
21
 # add these directories to sys.path here. If the directory is relative to the
22
 # documentation root, use os.path.abspath to make it absolute, like shown here.
22
 # documentation root, use os.path.abspath to make it absolute, like shown here.
23
-sys.path.insert(0, "@CMAKE_CURRENT_BINARY_DIR@/python-staging/")
23
+sys.path.insert(0, "@CMAKE_CURRENT_BINARY_DIR@/pyupm/")
24
 sys.path.insert(0, "@MRAA_LIBDIR@@LIB_SUFFIX@")
24
 sys.path.insert(0, "@MRAA_LIBDIR@@LIB_SUFFIX@")
25
 
25
 
26
 # -- General configuration ------------------------------------------------
26
 # -- General configuration ------------------------------------------------