Author: kornel
Date: Fri May 20 08:40:04 2011
New Revision: 38791
URL: http://www.lyx.org/trac/changeset/38791
Log:
Remove the need for perl if creating doc
Added:
lyx-devel/trunk/development/cmake/doc/ReplaceValues.py (contents, props
changed)
Modified:
lyx-devel/trunk/CMakeLists.txt
lyx-devel/trunk/development/cmake/doc/CMakeLists.txt
Modified: lyx-devel/trunk/CMakeLists.txt
==============================================================================
--- lyx-devel/trunk/CMakeLists.txt Thu May 19 21:11:01 2011 (r38790)
+++ lyx-devel/trunk/CMakeLists.txt Fri May 20 08:40:04 2011 (r38791)
@@ -561,9 +561,9 @@
if(LYX_INSTALL)
- FIND_PROGRAM(LYX_PERL_EXECUTABLE perl)
- if(${LYX_PERL_EXECUTABLE} MATCHES "-NOTFOUND")
- message(STATUS "Perl required to create doc!")
+ #FIND_PROGRAM(LYX_PERL_EXECUTABLE perl)
+ if(${LYX_PYTHON_EXECUTABLE} MATCHES "-NOTFOUND")
+ message(STATUS "Python required to create doc!")
else()
add_subdirectory(${LYX_CMAKE_DIR}/man "${TOP_BINARY_DIR}/man")
add_subdirectory(${LYX_CMAKE_DIR}/doc "${TOP_BINARY_DIR}/doc")
Modified: lyx-devel/trunk/development/cmake/doc/CMakeLists.txt
==============================================================================
--- lyx-devel/trunk/development/cmake/doc/CMakeLists.txt Thu May 19
21:11:01 2011 (r38790)
+++ lyx-devel/trunk/development/cmake/doc/CMakeLists.txt Fri May 20
08:40:04 2011 (r38791)
@@ -29,8 +29,8 @@
SET_SOURCE_FILES_PROPERTIES(${_created_doc} GENERATED)
add_custom_command(
OUTPUT "${_created_doc}"
- COMMAND perl "${TOP_SRC_DIR}/development/cmake/doc/ReplaceValues.pl"
"LYX_USERDIR_VER=${LYX_USERDIR_VER}" "LYX_DIR_VER=${LYX_DIR_VER}"
"${TOP_SRC_DIR}/lib/doc/${_rel_doc}" > "${_created_doc}"
- DEPENDS "${TOP_SRC_DIR}/lib/doc/${_rel_doc}"
+ COMMAND ${LYX_PYTHON_EXECUTABLE}
"${TOP_SRC_DIR}/development/cmake/doc/ReplaceValues.py"
"LYX_USERDIR_VER=${LYX_USERDIR_VER}" "LYX_DIR_VER=${LYX_DIR_VER}"
"${TOP_SRC_DIR}/lib/doc/${_rel_doc}" > "${_created_doc}"
+ DEPENDS "${TOP_SRC_DIR}/lib/doc/${_rel_doc}"
"${TOP_SRC_DIR}/development/cmake/doc/ReplaceValues.py"
)
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/${_rel_doc}" DESTINATION
"${LYX_DATA_SUBDIR}doc/${_rel_dir_part}")
LIST(APPEND _docs "${_created_doc}")
Added: lyx-devel/trunk/development/cmake/doc/ReplaceValues.py
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ lyx-devel/trunk/development/cmake/doc/ReplaceValues.py Fri May 20
08:40:04 2011 (r38791)
@@ -0,0 +1,45 @@
+#! /usr/bin/env python
+import sys
+import re
+
+Subst = {} # map of desired substitutions
+prog = re.compile("")
+
+def createProg():
+ matchingS = "\\b|\\b".join(Subst.keys())
+ pattern = "".join(["(.*)(\\b", matchingS, "\\b)(.*)"])
+ return re.compile(pattern)
+
+def SubstituteDataInLine(line):
+ result = line
+ m = prog.match(result)
+ if m:
+ return "".join([SubstituteDataInLine(m.group(1)),
+ Subst[m.group(2)],
+ SubstituteDataInLine(m.group(3))])
+ return line
+
+
+def SubstituteDataInFile(InFile):
+ for line in open(InFile):
+ print SubstituteDataInLine(line[:-1])
+
+##########################################
+
+
+args = sys.argv
+
+del args[0] # we don't need the name ot this script
+while len(args) > 0:
+ arg = args[0]
+ entry = args[0].split("=",1)
+ if len(entry) == 2:
+ key=entry[0]
+ val=entry[1]
+ if len(key) > 0:
+ Subst[key] = val
+ else:
+ prog = createProg()
+ SubstituteDataInFile(args[0])
+ del args[0]
+