Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
A working 'make install' target
authormquinson <mquinson@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Tue, 18 May 2010 00:57:12 +0000 (00:57 +0000)
committermquinson <mquinson@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Tue, 18 May 2010 00:57:12 +0000 (00:57 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@7760 48e7efb5-ca39-0410-a469-dd3cf9ba447f

buildtools/Cmake/src/CMakeDefinePackages.txt
buildtools/Cmake/src/CMakeDistrib.txt
buildtools/Cmake/src/CMakeMakeExeLib.txt
tools/tesh/CMakeLists.txt

index 6db8a6c..efec41e 100755 (executable)
@@ -815,11 +815,11 @@ set(to_svg
        src/bindings/rubyDag/rb_simdag.c
        src/bindings/rubyDag/simdag.rb
 )
        src/bindings/rubyDag/rb_simdag.c
        src/bindings/rubyDag/simdag.rb
 )
-set(script_to_install
-       src/smpi/smpicc
-       src/smpi/smpirun
-       tools/MSG_visualization/colorize.pl
-)
+#set(script_to_install
+#      src/smpi/smpicc
+#      src/smpi/smpirun
+#      tools/MSG_visualization/colorize.pl
+#)
 #      tools/sg_unit_extractor.pl
 #      tools/doxygen/index_create.pl
 #      tools/doxygen/toc_create.pl
 #      tools/sg_unit_extractor.pl
 #      tools/doxygen/index_create.pl
 #      tools/doxygen/toc_create.pl
index d335a05..630aa79 100755 (executable)
@@ -13,35 +13,92 @@ set(CPACK_SOURCE_FILES "${to_svg}")
 set(CPACK_SET_DESTDIR on)
 set(CMAKE_INSTALL_PREFIX ${prefix} CACHE TYPE INTERNAL FORCE)
 
 set(CPACK_SET_DESTDIR on)
 set(CMAKE_INSTALL_PREFIX ${prefix} CACHE TYPE INTERNAL FORCE)
 
-foreach(file ${script_to_install})
-       get_filename_component(file_location ${file} PATH)
-#      message(${file_location})
-#      string(REPLACE "${PROJECT_DIRECTORY}/" "" file_location ${file_location})
-       install(FILES ${file} DESTINATION "${file_location}")
-endforeach(file ${EXTRA_DIST})
-
-###copy doc
+#########################################
+### Fill in the "make install" target ###
+#########################################
+         
+                                 
+
+# doc
 install(DIRECTORY "${PROJECT_DIRECTORY}/doc/html/"
 install(DIRECTORY "${PROJECT_DIRECTORY}/doc/html/"
-  DESTINATION "$ENV{DESTDIR}${prefix}/doc/html/"
+  DESTINATION "$ENV{DESTDIR}${prefix}/doc/simgrid/html/"
   PATTERN ".svn" EXCLUDE 
   PATTERN ".git" EXCLUDE 
   PATTERN "*.o" EXCLUDE
   PATTERN "*~" EXCLUDE
 )
 
   PATTERN ".svn" EXCLUDE 
   PATTERN ".git" EXCLUDE 
   PATTERN "*.o" EXCLUDE
   PATTERN "*~" EXCLUDE
 )
 
+# binaries
+install(PROGRAMS ${CMAKE_BINARY_DIR}/bin/smpicc
+                 ${CMAKE_BINARY_DIR}/bin/smpirun
+                 ${CMAKE_BINARY_DIR}/bin/tesh
+       DESTINATION $ENV{DESTDIR}${prefix}/bin/)
+       
+install(PROGRAMS tools/MSG_visualization/colorize.pl
+        DESTINATION $ENV{DESTDIR}${prefix}/bin/
+       RENAME simgrid-colorizer)
+
+# libraries
+install(TARGETS simgrid gras 
+        LIBRARY DESTINATION $ENV{DESTDIR}${prefix}/lib/)
+       
+install(FILES ${CMAKE_BINARY_DIR}/lib/libsimgrid_static.a 
+        RENAME libsimgrid.a
+        DESTINATION $ENV{DESTDIR}${prefix}/lib/)
+       
+if(enable_smpi)        
+  install(TARGETS smpi
+          LIBRARY DESTINATION $ENV{DESTDIR}${prefix}/lib/)
+endif(enable_smpi)     
+
+# include files
+foreach(file ${install_HEADERS})
+  get_filename_component(location ${file} PATH)
+  install(FILES ${file}
+          DESTINATION $ENV{DESTDIR}${prefix}/${location})
+endforeach(file ${install_HEADERS})
+
+# example files
+foreach(file ${ex_to_svg})
+  string(REPLACE "${PROJECT_DIRECTORY}/examples/" "" file ${file})
+  get_filename_component(location ${file} PATH)
+  install(FILES "examples/${file}"
+          DESTINATION $ENV{DESTDIR}${prefix}/doc/simgrid/examples/${location})
+endforeach(file ${ex_to_svg})
+
+# bindings cruft
+if(HAVE_JAVA)
+  install(FILES ${CMAKE_BINARY_DIR}/simgrid.jar
+          DESTINATION $ENV{DESTDIR}${prefix}/share/)
+endif(HAVE_JAVA)
+
+if(HAVE_LUA)
+  add_custom_target(absolute_liblink ALL
+    COMMAND ln -sf $ENV{DESTDIR}${prefix}/lib/libsimgrid.so ${CMAKE_BINARY_DIR}/libsimgrid.so)
+  install(FILES ${CMAKE_BINARY_DIR}/libsimgrid.so
+          DESTINATION $ENV{DESTDIR}${prefix}/lib/lua/5.1
+         RENAME simgrid.so)
+endif(HAVE_LUA)
+
+if(HAVE_RUBY)
+  string(REGEX REPLACE "^.*ruby/" "" install_link_ruby "${RUBY_ARCH_DIR}")
+  install(FILES ${CMAKE_BINARY_DIR}/libsimgrid.so
+                ${PROJECT_DIRECTORY}/src/bindings/ruby/simgrid.rb
+          DESTINATION $ENV{DESTDIR}${prefix}/lib/ruby/${install_link_ruby}/)
+endif(HAVE_RUBY)
+
+
+########################################################
+### Fill in the BROKEN "make install-simgrid" target ###
+########################################################
 ### scripts
 set(install_bins
 ### scripts
 set(install_bins
- ${PROJECT_DIRECTORY}/src/smpi/smpicc
- ${PROJECT_DIRECTORY}/src/smpi/smpirun
- ${PROJECT_DIRECTORY}/tools/gras/gras_stub_generator
- ${PROJECT_DIRECTORY}/tools/tesh/tesh
+ ${CMAKE_BINARY_DIR}/bin/smpicc
+ ${CMAKE_BINARY_DIR}/bin/smpirun
+ ${CMAKE_BINARY_DIR}/bin/gras_stub_generator
+ ${CMAKE_BINARY_DIR}/bin/tesh
 )
 
 )
 
-# FIXME: the following does not work because these binaries are not known as targets
-#install(TARGETS smpicc smpirun gras_stub_generator tesh 
-#        RUNTIME DESTINATION $ENV{DESTDIR}${prefix}/bin)
-       
-
 string(REPLACE ";" "\t" install_libs "${install_libs}")
 set(uninstall_bins "${install_bins}")
 string(REPLACE "${PROJECT_DIRECTORY}/src/smpi" "${prefix}/bin" uninstall_bins "${uninstall_bins}")
 string(REPLACE ";" "\t" install_libs "${install_libs}")
 set(uninstall_bins "${install_bins}")
 string(REPLACE "${PROJECT_DIRECTORY}/src/smpi" "${prefix}/bin" uninstall_bins "${uninstall_bins}")
@@ -200,9 +257,10 @@ COMMAND rm -f ${PROJECT_DIRECTORY}/buildtools/Cmake/src/doc/Makefile
 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/buildtools/Cmake/src/doc"
 )
 
 WORKING_DIRECTORY "${PROJECT_DIRECTORY}/buildtools/Cmake/src/doc"
 )
 
-SET(CMAKE_VERBOSE_MAKEFILE 1)
 
 
 
 
+#SET(CMAKE_VERBOSE_MAKEFILE 1)
+
 ################################################################
 ## Build a sain "make dist" target to build a source package ###
 ##   containing only the files that I explicitely state      ###
 ################################################################
 ## Build a sain "make dist" target to build a source package ###
 ##   containing only the files that I explicitely state      ###
index 7f58ea6..30e6bdf 100644 (file)
@@ -64,10 +64,6 @@ if(enable_smpi)
 endif(enable_smpi)
 
 
 endif(enable_smpi)
 
 
-#SET_TARGET_PROPERTIES(simgrid_static PROPERTIES OUTPUT_NAME "simgrid")
-#SET_TARGET_PROPERTIES(simgrid_static PROPERTIES PREFIX "lib")
-
-
 ### Make EXEs
 
 #src/testall
 ### Make EXEs
 
 #src/testall
@@ -142,6 +138,7 @@ if(enable_smpi)
        add_subdirectory(${PROJECT_DIRECTORY}/examples/smpi)
 endif(enable_smpi)
 
        add_subdirectory(${PROJECT_DIRECTORY}/examples/smpi)
 endif(enable_smpi)
 
+# FIXME: should be killed once integrated properly in examples' CMakeList.txt
 set(targets_depended_of_gras_stub_generator
 ping_client
 ping_server
 set(targets_depended_of_gras_stub_generator
 ping_client
 ping_server
index 563f893..9f05b93 100644 (file)
@@ -1,8 +1,8 @@
 cmake_minimum_required(VERSION 2.6)
 
 cmake_minimum_required(VERSION 2.6)
 
-set(EXECUTABLE_OUTPUT_PATH "${PROJECT_DIRECTORY}/tools/tesh/")
+set(EXECUTABLE_OUTPUT_PATH "${CMAKE_BINARY_DIR}/bin/")
 
 
-add_executable(tesh ${PROJECT_DIRECTORY}/tools/tesh/tesh.c ${PROJECT_DIRECTORY}/tools/tesh/run_context.c ${PROJECT_DIRECTORY}/tools/tesh/signal.c)
+add_executable(tesh tesh.c run_context.c signal.c)
 
 ### Add definitions for compile
 target_link_libraries(tesh gras m pthread -fprofile-arcs) 
 
 ### Add definitions for compile
 target_link_libraries(tesh gras m pthread -fprofile-arcs)