cmake_modules/CMakePascalInformation.cmake
author koda
Tue, 19 Mar 2013 10:35:10 +0100
branchcmake_pascal
changeset 8778 04363016580f
parent 8770 53481d654691
child 8798 03d113d51062
permissions -rw-r--r--
internal handling of some osx-only pascal flags
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
8750
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
     1
# This file sets the basic flags for the Pascal language in CMake.
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
     2
# It also loads the available platform file for the system-compiler
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
     3
# if it exists.
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
     4
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
     5
GET_FILENAME_COMPONENT(CMAKE_BASE_NAME ${CMAKE_Pascal_COMPILER} NAME_WE)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
     6
SET(CMAKE_SYSTEM_AND_Pascal_COMPILER_INFO_FILE
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
     7
  ${CMAKE_ROOT}/Modules/Platform/${CMAKE_SYSTEM_NAME}-${CMAKE_BASE_NAME}.cmake)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
     8
INCLUDE(Platform/${CMAKE_SYSTEM_NAME}-${CMAKE_BASE_NAME} OPTIONAL)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
     9
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    10
# This should be included before the _INIT variables are
8752
48cf2ccb83c6 with lot of hackery, use add_executable on pascal files, SUCCSS
koda
parents: 8750
diff changeset
    11
# used to initialize the cache.  Since the rule variables
8750
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    12
# have if blocks on them, users can still define them here.
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    13
# But, it should still be after the platform file so changes can
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    14
# be made to those values.
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    15
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    16
IF(CMAKE_USER_MAKE_RULES_OVERRIDE)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    17
   INCLUDE(${CMAKE_USER_MAKE_RULES_OVERRIDE})
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    18
ENDIF(CMAKE_USER_MAKE_RULES_OVERRIDE)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    19
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    20
IF(CMAKE_USER_MAKE_RULES_OVERRIDE_Pascal)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    21
   INCLUDE(${CMAKE_USER_MAKE_RULES_OVERRIDE_Pascal})
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    22
ENDIF(CMAKE_USER_MAKE_RULES_OVERRIDE_Pascal)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    23
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    24
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    25
# for most systems a module is the same as a shared library
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    26
# so unless the variable CMAKE_MODULE_EXISTS is set just
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    27
# copy the values from the LIBRARY variables
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    28
IF(NOT CMAKE_MODULE_EXISTS)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    29
  SET(CMAKE_SHARED_MODULE_Pascal_FLAGS ${CMAKE_SHARED_LIBRARY_Pascal_FLAGS})
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    30
  SET(CMAKE_SHARED_MODULE_CREATE_Pascal_FLAGS ${CMAKE_SHARED_LIBRARY_CREATE_Pascal_FLAGS})
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    31
ENDIF(NOT CMAKE_MODULE_EXISTS)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    32
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    33
# Create a set of shared library variable specific to Pascal
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    34
# For 90% of the systems, these are the same flags as the C versions
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    35
# so if these are not set just copy the flags from the c version
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    36
#IF(NOT CMAKE_SHARED_LIBRARY_CREATE_Ada_FLAGS)
8770
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    37
#-dynamiclib -Wl,-headerpad_max_install_names for C
8750
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    38
#  SET(CMAKE_SHARED_LIBRARY_CREATE_Ada_FLAGS ${CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS})
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    39
#ENDIF(NOT CMAKE_SHARED_LIBRARY_CREATE_Ada_FLAGS)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    40
8770
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    41
IF(NOT CMAKE_SHARED_LIBRARY_Pascal_FLAGS)
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    42
  #another similarity, fpc: -fPIC  Same as -Cg
8778
04363016580f internal handling of some osx-only pascal flags
koda
parents: 8770
diff changeset
    43
  #(maybe required only for x86_64)
8770
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    44
  SET(CMAKE_SHARED_LIBRARY_Pascal_FLAGS ${CMAKE_SHARED_LIBRARY_C_FLAGS})
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    45
ENDIF(NOT CMAKE_SHARED_LIBRARY_Pascal_FLAGS)
8750
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    46
8770
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    47
IF(NOT CMAKE_SHARED_LIBRARY_LINK_Pascal_FLAGS)
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    48
  SET(CMAKE_SHARED_LIBRARY_LINK_Pascal_FLAGS ${CMAKE_SHARED_LIBRARY_LINK_C_FLAGS})
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    49
ENDIF(NOT CMAKE_SHARED_LIBRARY_LINK_Pascal_FLAGS)
8750
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    50
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    51
#IF(NOT CMAKE_SHARED_LIBRARY_RUNTIME_Ada_FLAG)
8752
48cf2ccb83c6 with lot of hackery, use add_executable on pascal files, SUCCSS
koda
parents: 8750
diff changeset
    52
#  SET(CMAKE_SHARED_LIBRARY_RUNTIME_Ada_FLAG ${CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG})
8750
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    53
#ENDIF(NOT CMAKE_SHARED_LIBRARY_RUNTIME_Ada_FLAG)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    54
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    55
#IF(NOT CMAKE_SHARED_LIBRARY_RUNTIME_Ada_FLAG_SEP)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    56
#  SET(CMAKE_SHARED_LIBRARY_RUNTIME_Ada_FLAG_SEP ${CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG_SEP})
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    57
#ENDIF(NOT CMAKE_SHARED_LIBRARY_RUNTIME_Ada_FLAG_SEP)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    58
8770
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    59
if(NOT CMAKE_SHARED_LIBRARY_RPATH_LINK_Pascal_FLAG)
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    60
  set(CMAKE_SHARED_LIBRARY_RPATH_LINK_Pascal_FLAG ${CMAKE_SHARED_LIBRARY_RPATH_LINK_C_FLAG})
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    61
endif(NOT CMAKE_SHARED_LIBRARY_RPATH_LINK_Pascal_FLAG)
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    62
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    63
# for most systems a module is the same as a shared library
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    64
# so unless the variable CMAKE_MODULE_EXISTS is set just
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    65
# copy the values from the LIBRARY variables
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    66
if(NOT CMAKE_MODULE_EXISTS)
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    67
  set(CMAKE_SHARED_MODULE_Pascal_FLAGS ${CMAKE_SHARED_LIBRARY_Pascal_FLAGS})
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    68
  set(CMAKE_SHARED_MODULE_CREATE_Pascal_FLAGS ${CMAKE_SHARED_LIBRARY_CREATE_Pascal_FLAGS})
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    69
endif()
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
    70
8750
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    71
# repeat for modules
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    72
#IF(NOT CMAKE_SHARED_MODULE_CREATE_Ada_FLAGS)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    73
#  SET(CMAKE_SHARED_MODULE_CREATE_Ada_FLAGS ${CMAKE_SHARED_MODULE_CREATE_C_FLAGS})
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    74
#ENDIF(NOT CMAKE_SHARED_MODULE_CREATE_Ada_FLAGS)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    75
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    76
#IF(NOT CMAKE_SHARED_MODULE_Ada_FLAGS)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    77
#  SET(CMAKE_SHARED_MODULE_Ada_FLAGS ${CMAKE_SHARED_MODULE_C_FLAGS})
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    78
#ENDIF(NOT CMAKE_SHARED_MODULE_Ada_FLAGS)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    79
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    80
#IF(NOT CMAKE_SHARED_MODULE_RUNTIME_Ada_FLAG)
8752
48cf2ccb83c6 with lot of hackery, use add_executable on pascal files, SUCCSS
koda
parents: 8750
diff changeset
    81
#  SET(CMAKE_SHARED_MODULE_RUNTIME_Ada_FLAG ${CMAKE_SHARED_MODULE_RUNTIME_C_FLAG})
8750
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    82
#ENDIF(NOT CMAKE_SHARED_MODULE_RUNTIME_Ada_FLAG)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    83
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    84
#IF(NOT CMAKE_SHARED_MODULE_RUNTIME_Ada_FLAG_SEP)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    85
#  SET(CMAKE_SHARED_MODULE_RUNTIME_Ada_FLAG_SEP ${CMAKE_SHARED_MODULE_RUNTIME_C_FLAG_SEP})
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    86
#ENDIF(NOT CMAKE_SHARED_MODULE_RUNTIME_Ada_FLAG_SEP)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    87
8756
671f6ef4f7f1 move paths setup inside cmake_lang files
koda
parents: 8754
diff changeset
    88
IF(NOT CMAKE_INCLUDE_FLAG_Pascal)
671f6ef4f7f1 move paths setup inside cmake_lang files
koda
parents: 8754
diff changeset
    89
  #amazing, fpc: -I<x>  Add <x> to include path
671f6ef4f7f1 move paths setup inside cmake_lang files
koda
parents: 8754
diff changeset
    90
  SET(CMAKE_INCLUDE_FLAG_Pascal ${CMAKE_INCLUDE_FLAG_C})
671f6ef4f7f1 move paths setup inside cmake_lang files
koda
parents: 8754
diff changeset
    91
ENDIF(NOT CMAKE_INCLUDE_FLAG_Pascal)
8750
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    92
8758
cb3b470f1000 better support for cmake directory and fpc output paths
koda
parents: 8756
diff changeset
    93
IF(NOT CMAKE_INCLUDE_FLAG_SEP_Pascal)
cb3b470f1000 better support for cmake directory and fpc output paths
koda
parents: 8756
diff changeset
    94
  SET(CMAKE_INCLUDE_FLAG_SEP_Pascal ${CMAKE_INCLUDE_FLAG_SEP_C})
cb3b470f1000 better support for cmake directory and fpc output paths
koda
parents: 8756
diff changeset
    95
ENDIF(NOT CMAKE_INCLUDE_FLAG_SEP_Pascal)
8750
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    96
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    97
# Copy C version of this flag which is normally determined in platform file.
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    98
IF(NOT CMAKE_SHARED_LIBRARY_SONAME_Pascal_FLAG)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
    99
  SET(CMAKE_SHARED_LIBRARY_SONAME_Pascal_FLAG ${CMAKE_SHARED_LIBRARY_SONAME_C_FLAG})
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   100
ENDIF(NOT CMAKE_SHARED_LIBRARY_SONAME_Pascal_FLAG)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   101
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   102
SET(CMAKE_VERBOSE_MAKEFILE FALSE CACHE BOOL "If this value is on, makefiles will be generated without the .SILENT directive, and all commands will be echoed to the console during the make.  This is useful for debugging only. With Visual Studio IDE projects all commands are done without /nologo.")
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   103
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   104
SET (CMAKE_Pascal_FLAGS "$ENV{FPFLAGS} ${CMAKE_Pascal_FLAGS_INIT}" CACHE STRING
8752
48cf2ccb83c6 with lot of hackery, use add_executable on pascal files, SUCCSS
koda
parents: 8750
diff changeset
   105
     "Flags for Pascal compiler.")
8750
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   106
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   107
INCLUDE(CMakeCommonLanguageInclude)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   108
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   109
# now define the following rule variables
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   110
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   111
# CMAKE_Ada_CREATE_SHARED_LIBRARY
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   112
# CMAKE_Ada_CREATE_SHARED_MODULE
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   113
# CMAKE_Ada_CREATE_STATIC_LIBRARY
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   114
# CMAKE_Ada_COMPILE_OBJECT
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   115
# CMAKE_Ada_LINK_EXECUTABLE
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   116
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   117
# variables supplied by the generator at use time
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   118
# <TARGET>
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   119
# <TARGET_BASE> the target without the suffix
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   120
# <OBJECTS>
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   121
# <OBJECT>
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   122
# <LINK_LIBRARIES>
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   123
# <FLAGS>
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   124
# <LINK_FLAGS>
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   125
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   126
# Ada compiler information
8752
48cf2ccb83c6 with lot of hackery, use add_executable on pascal files, SUCCSS
koda
parents: 8750
diff changeset
   127
# <CMAKE_Ada_COMPILER>
8750
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   128
# <CMAKE_SHARED_LIBRARY_CREATE_Ada_FLAGS>
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   129
# <CMAKE_SHARED_MODULE_CREATE_Ada_FLAGS>
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   130
# <CMAKE_Ada_LINK_FLAGS>
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   131
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   132
# Static library tools
8752
48cf2ccb83c6 with lot of hackery, use add_executable on pascal files, SUCCSS
koda
parents: 8750
diff changeset
   133
# <CMAKE_AR>
8750
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   134
# <CMAKE_RANLIB>
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   135
8756
671f6ef4f7f1 move paths setup inside cmake_lang files
koda
parents: 8754
diff changeset
   136
if (NOT EXECUTABLE_OUTPUT_PATH)
671f6ef4f7f1 move paths setup inside cmake_lang files
koda
parents: 8754
diff changeset
   137
    set (EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR})
671f6ef4f7f1 move paths setup inside cmake_lang files
koda
parents: 8754
diff changeset
   138
endif (NOT EXECUTABLE_OUTPUT_PATH)
8750
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   139
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   140
# create an Ada shared library
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   141
IF(NOT CMAKE_Ada_CREATE_SHARED_LIBRARY)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   142
    SET(CMAKE_Ada_CREATE_SHARED_LIBRARY
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   143
    "<CMAKE_Ada_COMPILER> <CMAKE_SHARED_LIBRARY_Ada_FLAGS> <LANGUAGE_COMPILE_FLAGS> <LINK_FLAGS> <CMAKE_SHARED_LIBRARY_CREATE_Ada_FLAGS> <CMAKE_SHARED_LIBRARY_SONAME_Ada_FLAG><TARGET_SONAME> -o <TARGET> <OBJECTS> <LINK_LIBRARIES>"
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   144
    )
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   145
ENDIF(NOT CMAKE_Ada_CREATE_SHARED_LIBRARY)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   146
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   147
# create an Ada shared module just copy the shared library rule
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   148
IF(NOT CMAKE_Ada_CREATE_SHARED_MODULE)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   149
  SET(CMAKE_Ada_CREATE_SHARED_MODULE ${CMAKE_Ada_CREATE_SHARED_LIBRARY})
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   150
ENDIF(NOT CMAKE_Ada_CREATE_SHARED_MODULE)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   151
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   152
# create an Ada static library
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   153
IF(NOT CMAKE_Ada_CREATE_STATIC_LIBRARY)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   154
  SET(CMAKE_Ada_CREATE_STATIC_LIBRARY
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   155
      "<CMAKE_AR> cr <TARGET> <LINK_FLAGS> <OBJECTS> "
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   156
      "<CMAKE_RANLIB> <TARGET> ")
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   157
ENDIF(NOT CMAKE_Ada_CREATE_STATIC_LIBRARY)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   158
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   159
# compile a Pascal file into an object file
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   160
IF(NOT CMAKE_Pascal_COMPILE_OBJECT)
8778
04363016580f internal handling of some osx-only pascal flags
koda
parents: 8770
diff changeset
   161
    #when you have multiple ld installation make sure you get the one bundled with the system C compiler
04363016580f internal handling of some osx-only pascal flags
koda
parents: 8770
diff changeset
   162
  get_filename_component(CMAKE_C_COMPILER_DIR ${CMAKE_C_COMPILER} PATH)
04363016580f internal handling of some osx-only pascal flags
koda
parents: 8770
diff changeset
   163
  if(APPLE)
04363016580f internal handling of some osx-only pascal flags
koda
parents: 8770
diff changeset
   164
    #add user framework directory
04363016580f internal handling of some osx-only pascal flags
koda
parents: 8770
diff changeset
   165
    set(CMAKE_Pascal_OSX_FLAGS "-Ff~/Library/Frameworks")
04363016580f internal handling of some osx-only pascal flags
koda
parents: 8770
diff changeset
   166
    if(CMAKE_OSX_SYSROOT)
04363016580f internal handling of some osx-only pascal flags
koda
parents: 8770
diff changeset
   167
        set(CMAKE_Pascal_OSX_FLAGS "-XD${CMAKE_OSX_SYSROOT} ${CMAKE_Pascal_OSX_FLAGS}")
04363016580f internal handling of some osx-only pascal flags
koda
parents: 8770
diff changeset
   168
    endif(CMAKE_OSX_SYSROOT)
04363016580f internal handling of some osx-only pascal flags
koda
parents: 8770
diff changeset
   169
  endif(APPLE)
04363016580f internal handling of some osx-only pascal flags
koda
parents: 8770
diff changeset
   170
    SET(CMAKE_Pascal_COMPILE_OBJECT
04363016580f internal handling of some osx-only pascal flags
koda
parents: 8770
diff changeset
   171
      "<CMAKE_Pascal_COMPILER> -Cn -FE${EXECUTABLE_OUTPUT_PATH} -FU${CMAKE_CURRENT_BINARY_DIR}/<OBJECT_DIR> -Fi${CMAKE_CURRENT_BINARY_DIR} -FD${CMAKE_C_COMPILER_DIR} ${CMAKE_Pascal_OSX_FLAGS} <FLAGS> <SOURCE>")
8750
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   172
ENDIF(NOT CMAKE_Pascal_COMPILE_OBJECT)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   173
8778
04363016580f internal handling of some osx-only pascal flags
koda
parents: 8770
diff changeset
   174
# link Pascal objects in a single executable
8750
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   175
IF(NOT CMAKE_Pascal_LINK_EXECUTABLE)
8752
48cf2ccb83c6 with lot of hackery, use add_executable on pascal files, SUCCSS
koda
parents: 8750
diff changeset
   176
    set(CMAKE_Pascal_LINK_EXECUTABLE "${EXECUTABLE_OUTPUT_PATH}/ppas.sh")
8770
53481d654691 partial conversion of pascal_flags to CMAKE_Pascal_FLAGS
koda
parents: 8758
diff changeset
   177
#  SET(CMAKE_Pascal_LINK_EXECUTABLE "${CMAKE_Pascal_COMPILER} <CMAKE_Pascal_LINK_FLAGS> <LINK_FLAGS> <TARGET_BASE>.adb -cargs <FLAGS> -largs <LINK_LIBRARIES>")
8750
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   178
ENDIF(NOT CMAKE_Pascal_LINK_EXECUTABLE)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   179
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   180
IF(CMAKE_Ada_STANDARD_LIBRARIES_INIT)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   181
  SET(CMAKE_Ada_STANDARD_LIBRARIES "${CMAKE_Ada_STANDARD_LIBRARIES_INIT}"
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   182
    CACHE STRING "Libraries linked by default with all Ada applications.")
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   183
  MARK_AS_ADVANCED(CMAKE_Ada_STANDARD_LIBRARIES)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   184
ENDIF(CMAKE_Ada_STANDARD_LIBRARIES_INIT)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   185
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   186
IF(NOT CMAKE_NOT_USING_CONFIG_FLAGS)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   187
  SET (CMAKE_Ada_FLAGS_DEBUG "${CMAKE_Ada_FLAGS_DEBUG_INIT}" CACHE STRING
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   188
     "Flags used by the compiler during debug builds.")
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   189
  SET (CMAKE_Ada_FLAGS_MINSIZEREL "${CMAKE_Ada_FLAGS_MINSIZEREL_INIT}" CACHE STRING
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   190
     "Flags used by the compiler during release minsize builds.")
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   191
  SET (CMAKE_Ada_FLAGS_RELEASE "${CMAKE_Ada_FLAGS_RELEASE_INIT}" CACHE STRING
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   192
     "Flags used by the compiler during release builds (/MD /Ob1 /Oi /Ot /Oy /Gs will produce slightly less optimized but smaller files).")
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   193
  SET (CMAKE_Ada_FLAGS_RELWITHDEBINFO "${CMAKE_Ada_FLAGS_RELWITHDEBINFO_INIT}" CACHE STRING
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   194
     "Flags used by the compiler during Release with Debug Info builds.")
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   195
ENDIF(NOT CMAKE_NOT_USING_CONFIG_FLAGS)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   196
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   197
MARK_AS_ADVANCED(
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   198
CMAKE_Pascal_FLAGS
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   199
CMAKE_Pascal_FLAGS_DEBUG
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   200
CMAKE_Pascal_FLAGS_MINSIZEREL
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   201
CMAKE_Pascal_FLAGS_RELEASE
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   202
CMAKE_Pascal_FLAGS_RELWITHDEBINFO
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   203
)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   204
SET(CMAKE_Pascal_INFORMATION_LOADED 1)
d9e57426e759 barebone cmake config file to support pascal files, based off plplot's ada files
koda
parents:
diff changeset
   205