Browse Source

Added a cmake file for org

Samuel W. Flint 8 years ago
parent
commit
96eaadc74e
1 changed files with 127 additions and 0 deletions
  1. 127 0
      org-Cmake.txt

+ 127 - 0
org-Cmake.txt

@@ -0,0 +1,127 @@
+cmake_minimum_required(VERSION 2.8)
+
+project(thesis NONE)
+
+include(/usr/share/cmake-2.8/Modules/UseLATEX.cmake)
+
+# Set R executable
+set(R_COMPILE "/usr/bin/Rscript")
+# Set the location of data files
+##set(DATA_DIR data)
+# Set the location of the directory for image files
+set(IMAGE_DIR graphicsauto)
+
+# Get a list of R files
+file(GLOB_RECURSE R_FILES "R/*.R")
+
+file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/R DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
+file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${IMAGE_DIR})
+
+foreach(file ${R_FILES})
+  message("processing ${file}")
+  get_filename_component(basename "${file}" NAME_WE)
+
+  # Command to run R
+  if(R_COMPILE)
+    message("Adding ........... ${CMAKE_CURRENT_BINARY_DIR}/R/${basename}.R")
+
+    add_custom_command(
+      OUTPUT
+      ${CMAKE_CURRENT_BINARY_DIR}/${IMAGE_DIR}/${basename}.eps
+      DEPENDS
+      ${CMAKE_CURRENT_BINARY_DIR}/R/${basename}.R
+      #      ${CMAKE_CURRENT_BINARY_DIR}/${IMAGE_DIR}/${DATA_DIR}
+      COMMAND
+      ${R_COMPILE}
+      ARGS
+      ${CMAKE_CURRENT_BINARY_DIR}/R/${basename}.R
+      ${CMAKE_CURRENT_BINARY_DIR}/${IMAGE_DIR}/${basename}.eps
+      )
+    message("Running ${R_COMPILE} ${CMAKE_CURRENT_BINARY_DIR}/R/${basename}.R ${CMAKE_CURRENT_BINARY_DIR}/${IMAGE_DIR}/${basename}.eps")
+
+  endif(R_COMPILE)
+
+  # Make a list of all R files (for ADD_LATEX_DOCUMENT depend)
+  set(ALL_R_FILES ${ALL_R_FILES}
+    ${CMAKE_CURRENT_BINARY_DIR}/${IMAGE_DIR}/${basename}.eps
+    )
+endforeach(file)
+
+# ------- export mainThesis.org -----------------------
+latex_get_output_path(OUTPUT_DIR)
+file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/mainThesis.org DESTINATION ${OUTPUT_DIR}/ )
+file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/thesis.el DESTINATION ${OUTPUT_DIR}/ )
+
+add_custom_target( orgfile ALL
+  DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/mainThesis.org )
+
+add_custom_target( elfile ALL
+  DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/thesis.el )
+
+add_custom_command(
+  OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/mainThesis.tex
+  COMMAND emacs -Q --batch --eval \"(progn
+    (add-to-list 'load-path
+      (expand-file-name \\"~/.emacs.d/plugins/org-mode/lisp/\\"))
+    (add-to-list 'load-path
+      (expand-file-name \\"~/.emacs.d/plugins/org-mode/contrib/lisp/\\" t))
+    (require 'org)
+    (require 'ox)
+    (require 'org-exp)
+    (require 'org-inlinetask)
+    (require 'ob-plantuml)
+    (setq org-plantuml-jar-path \\"/home/myles/Downloads/plantuml.jar\\")
+    (org-babel-do-load-languages
+      'org-babel-load-languages
+      '((emacs-lisp . t)
+        (sh . t)
+        (plantuml . t)))
+    (setq org-confirm-babel-evaluate nil)
+    (setq org-latex-listings 'minted)
+    (setq org-latex-with-hyperref nil)
+    (add-to-list 'org-latex-packages-alist '(\\"\\" \\"minted\\"))
+
+    (add-to-list 'org-latex-classes
+      '(\\"mynewthesis\\" \\"\\\\\\documentclass[11pt]{mythesis}\\"
+        (\\"\\\\\\chapter{%s}\\" . \\"\\\\\\chapter*{%s}\\")
+        (\\"\\\\\\section{%s}\\" . \\"\\\\\\section*{%s}\\")
+        (\\"\\\\\\subsection{%s}\\" . \\"\\\\\\subsection*{%s}\\")
+        (\\"\\\\\\subsubsection{%s}\\" . \\"\\\\\\subsubsection*{%s}\\")
+        (\\"\\\\\\paragraph{%s}\\" . \\"\\\\\\paragraph*{%s}\\")))
+    (setq org-export-with-todo-keywords nil)
+    (load-library \\"/home/myles/lib/lisp/my-export.el\\")
+    (add-to-list 'org-export-before-parsing-hook 'my-export-delete-headlines-tagged-noheading)
+    (add-to-list 'org-export-filter-link-functions 'my-autoref-filter-link-func)
+    (load-file \\"thesis.el\\")
+    (find-file \\"${CMAKE_CURRENT_BINARY_DIR}/mainThesis.org\\")
+    (org-latex-export-to-latex))\"
+  DEPENDS orgfile elfile
+  COMMENT "Exporting orgmode file to LaTeX using emacs")
+
+add_custom_target( mainfile ALL
+  DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/mainThesis.tex )
+# ------ end mainThesis.org ---------------------------
+
+# add_custom_command(
+#         OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/master.tex
+#         COMMAND echo "\\\\input{mainThesis.tex}" > ${CMAKE_CURRENT_BINARY_DIR}/master.tex
+#         DEPENDS orgfile
+#         COMMENT "Writing file master.tex")
+
+# add_custom_target( masterfile ALL
+#         DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/master.tex )
+
+add_latex_document(master.tex
+  BIBFILES texlib/mybiblatex.bib
+  INPUTS biber.conf
+  phd_papers.bib
+  tex/title.tex
+  tex/titleBasic.tex
+  tex/abstract.tex
+  tex/sharedMemory_sec.tex
+  texlib/mystyle.sty
+  tex/linked_nodes_test.tex
+  IMAGE_DIRS ${IMAGE_DIR} ../graphics/thirdParty ../graphics/VE
+  DEPENDS ${ALL_R_FILES}
+  DEFAULT_PDF
+  USE_NOMENCL)