Ignore:
Timestamp:
Mar 28, 2017, 11:52:19 AM (10 years ago)
Author:
Jorge Pérez <josp.jorge@…>
Branches:
1941-docker-image-to-test, devel, master
Children:
fe5b9e1
Parents:
bb5f9a8
Message:

fixes #1950 corregimos las reglas para cpack, detectamos sistemas basandonos en uname y lsb_release

git-svn-id: ​https://www.tol-project.org/svn/tolp/trunk@7446 be4846ae-f051-483a-831f-b64e7d08527f

File:
1 edited

Legend:

Unmodified
Added
Removed
  • installer/linux/cpack_generator.cmake

    rbb5f9a8 rb09e2f4f  
     1message(STATUS HELLO)
    12if( CMAKE_SYSTEM_NAME MATCHES "Linux" )
    2   set( SPECIFIC_SYSTEM_VERSION_NAME "${CMAKE_SYSTEM_NAME}" )
    3   set( SPECIFIC_SYSTEM_PREFERED_CPACK_GENERATOR "TGZ" )
    4   if( EXISTS "/etc/issue" )
    5     set( LINUX_NAME "" )
    6     file( READ "/etc/issue" LINUX_ISSUE )
    7     message( STATUS "LINUX_ISSUE = ${LINUX_ISSUE}" )
    8     # CentOS case
    9     if( LINUX_ISSUE MATCHES "CentOS" )
    10       string( REGEX MATCH "release ([0-9]+)" CENTOS "${LINUX_ISSUE}" )
    11       set( LINUX_NAME "CentOS_${CMAKE_MATCH_1}" ) 
    12       set( SPECIFIC_SYSTEM_PREFERED_CPACK_GENERATOR "RPM" )     
    13     endif( LINUX_ISSUE MATCHES "CentOS" )
    14     # Fedora case
    15     if( LINUX_ISSUE MATCHES "Fedora" )
    16       string( REGEX MATCH "release ([0-9]+)" FEDORA "${LINUX_ISSUE}" )
    17       set( LINUX_NAME "FC${CMAKE_MATCH_1}" ) 
    18       set( SPECIFIC_SYSTEM_PREFERED_CPACK_GENERATOR "RPM" )     
    19     endif( LINUX_ISSUE MATCHES "Fedora" )
    20     # Ubuntu case
    21     if( LINUX_ISSUE MATCHES "Ubuntu" )
    22       string( REGEX MATCH "buntu ([0-9]+\\.[0-9]+)" UBUNTU "${LINUX_ISSUE}" )
    23       set( LINUX_NAME "Ubuntu_${CMAKE_MATCH_1}" )       
    24       set( SPECIFIC_SYSTEM_PREFERED_CPACK_GENERATOR "DEB" )
    25     endif( LINUX_ISSUE MATCHES "Ubuntu" )
    26     # Debian case
    27     if( LINUX_ISSUE MATCHES "Debian" )
    28       string( REGEX MATCH "Debian .*ux ([a-zA-Z]*/?[a-zA-Z]*) .*" DEBIAN "${LINUX_ISSUE}" )
    29       set( LINUX_NAME "Debian_${CMAKE_MATCH_1}" )
    30       string( REPLACE "/" "_" LINUX_NAME ${LINUX_NAME} )
    31       set( SPECIFIC_SYSTEM_PREFERED_CPACK_GENERATOR "DEB" )       
    32     endif( LINUX_ISSUE MATCHES "Debian" )     
    33     # Open SuSE case
    34     if( LINUX_ISSUE MATCHES "SUSE" )
    35       string( REGEX MATCH "SUSE  ([0-9]+\\.[0-9]+)" SUSE "${LINUX_ISSUE}" )
    36       set( LINUX_NAME "openSUSE_${CMAKE_MATCH_1}" )
    37       string( REPLACE "/" "_" LINUX_NAME ${LINUX_NAME} )   
    38       set( SPECIFIC_SYSTEM_PREFERED_CPACK_GENERATOR "RPM" )     
    39     endif( LINUX_ISSUE MATCHES "SUSE" )
    40     # Mandriva case
    41     # TODO     
    42     if( LINUX_NAME )
    43       set( SPECIFIC_SYSTEM_VERSION_NAME "${CMAKE_SYSTEM_NAME}-${LINUX_NAME}" )
    44     endif( LINUX_NAME )   
    45   endif( EXISTS "/etc/issue" )     
     3  execute_process(COMMAND uname "-m"
     4    OUTPUT_VARIABLE SPECIFIC_SYSTEM_ARCHITECTURE
     5    OUTPUT_STRIP_TRAILING_WHITESPACE )
     6  execute_process(COMMAND lsb_release "-i"
     7    OUTPUT_VARIABLE LSB_RELEASE_ID
     8    OUTPUT_STRIP_TRAILING_WHITESPACE )
     9  string(REGEX MATCH "Distributor ID:(.+)" LSB_Distributor_ID "${LSB_RELEASE_ID}")
     10  string(STRIP ${CMAKE_MATCH_1} SPECIFIC_SYSTEM_NAME)
     11  execute_process(COMMAND lsb_release "-r"
     12    OUTPUT_VARIABLE LSB_RELEASE_R
     13    OUTPUT_STRIP_TRAILING_WHITESPACE )
     14  string(REGEX MATCH "Release:(.+)" LSB_Release "${LSB_RELEASE_R}")
     15  string(STRIP ${CMAKE_MATCH_1} SPECIFIC_SYSTEM_RELEASE)
     16  if(SPECIFIC_SYSTEM_NAME MATCHES "CentOS")
     17    set( SPECIFIC_SYSTEM_PREFERED_CPACK_GENERATOR "RPM")
     18  elseif(SPECIFIC_SYSTEM_NAME MATCHES "Fedora")
     19    set( SPECIFIC_SYSTEM_PREFERED_CPACK_GENERATOR "RPM")
     20  elseif(SPECIFIC_SYSTEM_NAME MATCHES "SUSE")
     21    set( SPECIFIC_SYSTEM_PREFERED_CPACK_GENERATOR "RPM")
     22  elseif(SPECIFIC_SYSTEM_NAME MATCHES "Ubuntu")
     23    set(SPECIFIC_SYSTEM_PREFERED_CPACK_GENERATOR "DEB")
     24  else(SPECIFIC_SYSTEM_NAME MATCHES "CentOS")
     25    set( SPECIFIC_SYSTEM_PREFERED_CPACK_GENERATOR "TGZ" )
     26  endif(SPECIFIC_SYSTEM_NAME MATCHES "CentOS")
     27 
     28  message("SPECIFIC_SYSTEM_ARCHITECTURE=${SPECIFIC_SYSTEM_ARCHITECTURE}")
     29  message("SPECIFIC_SYSTEM_NAME=${SPECIFIC_SYSTEM_NAME}")
     30  message("SPECIFIC_SYSTEM_RELEASE=${SPECIFIC_SYSTEM_RELEASE}")
    4631endif( CMAKE_SYSTEM_NAME MATCHES "Linux" )
    4732
    48 set( SPECIFIC_SYSTEM_VERSION_NAME "${SPECIFIC_SYSTEM_VERSION_NAME}-${CMAKE_SYSTEM_PROCESSOR}" )
    49 
    50 message( STATUS "SPECIFIC_SYSTEM_VERSION_NAME = ${SPECIFIC_SYSTEM_VERSION_NAME}" )
Note: See TracChangeset for help on using the changeset viewer.