123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301 |
- #
- # PART B. DOWNLOADING AGREEMENT - LICENSE FROM SBIA WITH RIGHT TO SUBLICENSE ("SOFTWARE LICENSE").
- # ------------------------------------------------------------------------------------------------
- #
- # 1. As used in this Software License, "you" means the individual downloading and/or
- # using, reproducing, modifying, displaying and/or distributing the Software and
- # the institution or entity which employs or is otherwise affiliated with such
- # individual in connection therewith. The Section of Biomedical Image Analysis,
- # Department of Radiology at the Universiy of Pennsylvania ("SBIA") hereby grants
- # you, with right to sublicense, with respect to SBIA's rights in the software,
- # and data, if any, which is the subject of this Software License (collectively,
- # the "Software"), a royalty-free, non-exclusive license to use, reproduce, make
- # derivative works of, display and distribute the Software, provided that:
- # (a) you accept and adhere to all of the terms and conditions of this Software
- # License; (b) in connection with any copy of or sublicense of all or any portion
- # of the Software, all of the terms and conditions in this Software License shall
- # appear in and shall apply to such copy and such sublicense, including without
- # limitation all source and executable forms and on any user documentation,
- # prefaced with the following words: "All or portions of this licensed product
- # (such portions are the "Software") have been obtained under license from the
- # Section of Biomedical Image Analysis, Department of Radiology at the University
- # of Pennsylvania and are subject to the following terms and conditions:"
- # (c) you preserve and maintain all applicable attributions, copyright notices
- # and licenses included in or applicable to the Software; (d) modified versions
- # of the Software must be clearly identified and marked as such, and must not
- # be misrepresented as being the original Software; and (e) you consider making,
- # but are under no obligation to make, the source code of any of your modifications
- # to the Software freely available to others on an open source basis.
- #
- # 2. The license granted in this Software License includes without limitation the
- # right to (i) incorporate the Software into proprietary programs (subject to
- # any restrictions applicable to such programs), (ii) add your own copyright
- # statement to your modifications of the Software, and (iii) provide additional
- # or different license terms and conditions in your sublicenses of modifications
- # of the Software; provided that in each case your use, reproduction or
- # distribution of such modifications otherwise complies with the conditions
- # stated in this Software License.
- #
- # 3. This Software License does not grant any rights with respect to third party
- # software, except those rights that SBIA has been authorized by a third
- # party to grant to you, and accordingly you are solely responsible for
- # (i) obtaining any permissions from third parties that you need to use,
- # reproduce, make derivative works of, display and distribute the Software,
- # and (ii) informing your sublicensees, including without limitation your
- # end-users, of their obligations to secure any such required permissions.
- #
- # 4. The Software has been designed for research purposes only and has not been
- # reviewed or approved by the Food and Drug Administration or by any other
- # agency. YOU ACKNOWLEDGE AND AGREE THAT CLINICAL APPLICATIONS ARE NEITHER
- # RECOMMENDED NOR ADVISED. Any commercialization of the Software is at the
- # sole risk of the party or parties engaged in such commercialization.
- # You further agree to use, reproduce, make derivative works of, display
- # and distribute the Software in compliance with all applicable governmental
- # laws, regulations and orders, including without limitation those relating
- # to export and import control.
- #
- # 5. The Software is provided "AS IS" and neither SBIA nor any contributor to
- # the software (each a "Contributor") shall have any obligation to provide
- # maintenance, support, updates, enhancements or modifications thereto.
- # SBIA AND ALL CONTRIBUTORS SPECIFICALLY DISCLAIM ALL EXPRESS AND IMPLIED
- # WARRANTIES OF ANY KIND INCLUDING, BUT NOT LIMITED TO, ANY WARRANTIES OF
- # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
- # IN NO EVENT SHALL SBIA OR ANY CONTRIBUTOR BE LIABLE TO ANY PARTY FOR
- # DIRECT, INDIRECT, SPECIAL, INCIDENTAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES
- # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY ARISING IN ANY WAY RELATED
- # TO THE SOFTWARE, EVEN IF SBIA OR ANY CONTRIBUTOR HAS BEEN ADVISED OF THE
- # POSSIBILITY OF SUCH DAMAGES. TO THE MAXIMUM EXTENT NOT PROHIBITED BY LAW OR
- # REGULATION, YOU FURTHER ASSUME ALL LIABILITY FOR YOUR USE, REPRODUCTION,
- # MAKING OF DERIVATIVE WORKS, DISPLAY, LICENSE OR DISTRIBUTION OF THE SOFTWARE
- # AND AGREE TO INDEMNIFY AND HOLD HARMLESS SBIA AND ALL CONTRIBUTORS FROM
- # AND AGAINST ANY AND ALL CLAIMS, SUITS, ACTIONS, DEMANDS AND JUDGMENTS ARISING
- # THEREFROM.
- #
- # 6. None of the names, logos or trademarks of SBIA or any of SBIA's affiliates
- # or any of the Contributors, or any funding agency, may be used to endorse
- # or promote products produced in whole or in part by operation of the Software
- # or derived from or based on the Software without specific prior written
- # permission from the applicable party.
- #
- # 7. Any use, reproduction or distribution of the Software which is not in accordance
- # with this Software License shall automatically revoke all rights granted to you
- # under this Software License and render Paragraphs 1 and 2 of this Software
- # License null and void.
- #
- # 8. This Software License does not grant any rights in or to any intellectual
- # property owned by SBIA or any Contributor except those rights expressly
- # granted hereunder.
- #
- #
- # PART C. MISCELLANEOUS
- # ---------------------
- #
- # This Agreement shall be governed by and construed in accordance with the laws
- # of The Commonwealth of Pennsylvania without regard to principles of conflicts
- # of law. This Agreement shall supercede and replace any license terms that you
- # may have agreed to previously with respect to Software from SBIA.
- #
- ##############################################################################
- # @file FindSphinx.cmake
- # @brief Find Sphinx documentation build tools.
- #
- # @par Input variables:
- # <table border="0">
- # <tr>
- # @tp @b Sphinx_DIR @endtp
- # <td>Installation directory of Sphinx tools. Can also be set as environment variable.</td>
- # </tr>
- # <tr>
- # @tp @b SPHINX_DIR @endtp
- # <td>Alternative environment variable for @c Sphinx_DIR.</td>
- # </tr>
- # <tr>
- # @tp @b Sphinx_FIND_COMPONENTS @endtp
- # <td>Sphinx build tools to look for, i.e., 'apidoc' and/or 'build'.</td>
- # </tr>
- # </table>
- #
- # @par Output variables:
- # <table border="0">
- # <tr>
- # @tp @b Sphinx_FOUND @endtp
- # <td>Whether all or only the requested Sphinx build tools were found.</td>
- # </tr>
- # <tr>
- # @tp @b SPHINX_FOUND @endtp
- # <td>Alias for @c Sphinx_FOUND.<td>
- # </tr>
- # <tr>
- # @tp @b SPHINX_EXECUTABLE @endtp
- # <td>Non-cached alias for @c Sphinx-build_EXECUTABLE.</td>
- # </tr>
- # <tr>
- # @tp @b Sphinx_PYTHON_EXECUTABLE @endtp
- # <td>Python executable used to run sphinx-build. This is either the
- # by default found Python interpreter or a specific version as
- # specified by the shebang (#!) of the sphinx-build script.</td>
- # </tr>
- # <tr>
- # @tp @b Sphinx_PYTHON_OPTIONS @endtp
- # <td>A list of Python options extracted from the shebang (#!) of the
- # sphinx-build script. The -E option is added by this module
- # if the Python executable is not the system default to avoid
- # problems with a differing setting of the @c PYTHONHOME.</td>
- # </tr>
- # <tr>
- # @tp @b Sphinx-build_EXECUTABLE @endtp
- # <td>Absolute path of the found sphinx-build tool.</td>
- # </tr>
- # <tr>
- # @tp @b Sphinx-apidoc_EXECUTABLE @endtp
- # <td>Absolute path of the found sphinx-apidoc tool.</td>
- # </tr>
- # <tr>
- # @tp @b Sphinx_VERSION_STRING @endtp
- # <td>Sphinx version found e.g. 1.1.2.</td>
- # </tr>
- # <tr>
- # @tp @b Sphinx_VERSION_MAJOR @endtp
- # <td>Sphinx major version found e.g. 1.</td>
- # </tr>
- # <tr>
- # @tp @b Sphinx_VERSION_MINOR @endtp
- # <td>Sphinx minor version found e.g. 1.</td>
- # </tr>
- # <tr>
- # @tp @b Sphinx_VERSION_PATCH @endtp
- # <td>Sphinx patch version found e.g. 2.</td>
- # </tr>
- # </table>
- #
- # @ingroup CMakeFindModules
- ##############################################################################
- set (_Sphinx_REQUIRED_VARS)
- # ----------------------------------------------------------------------------
- # initialize search
- if (NOT Sphinx_DIR)
- if (NOT $ENV{Sphinx_DIR} STREQUAL "")
- set (Sphinx_DIR "$ENV{Sphinx_DIR}" CACHE PATH "Installation prefix of Sphinx (docutils)." FORCE)
- else ()
- set (Sphinx_DIR "$ENV{SPHINX_DIR}" CACHE PATH "Installation prefix of Sphinx (docutils)." FORCE)
- endif ()
- endif ()
- # ----------------------------------------------------------------------------
- # default components to look for
- if (NOT Sphinx_FIND_COMPONENTS)
- set (Sphinx_FIND_COMPONENTS "build")
- elseif (NOT Sphinx_FIND_COMPONENTS MATCHES "^(build|apidoc)$")
- message (FATAL_ERROR "Invalid Sphinx component in: ${Sphinx_FIND_COMPONENTS}")
- endif ()
- # ----------------------------------------------------------------------------
- # find components, i.e., build tools
- foreach (_Sphinx_TOOL IN LISTS Sphinx_FIND_COMPONENTS)
- if (Sphinx_DIR)
- find_program (
- Sphinx-${_Sphinx_TOOL}_EXECUTABLE
- NAMES sphinx-${_Sphinx_TOOL} sphinx-${_Sphinx_TOOL}.py
- HINTS "${Sphinx_DIR}"
- PATH_SUFFIXES bin
- DOC "The sphinx-${_Sphinx_TOOL} Python script."
- NO_DEFAULT_PATH
- )
- else ()
- find_program (
- Sphinx-${_Sphinx_TOOL}_EXECUTABLE
- NAMES sphinx-${_Sphinx_TOOL} sphinx-${_Sphinx_TOOL}.py
- DOC "The sphinx-${_Sphinx_TOOL} Python script."
- )
- endif ()
- mark_as_advanced (Sphinx-${_Sphinx_TOOL}_EXECUTABLE)
- list (APPEND _Sphinx_REQUIRED_VARS Sphinx-${_Sphinx_TOOL}_EXECUTABLE)
- endforeach ()
- # ----------------------------------------------------------------------------
- # determine Python executable used by Sphinx
- if (Sphinx-build_EXECUTABLE)
- # extract python executable from shebang of sphinx-build
- find_package (PythonInterp QUIET)
- set (Sphinx_PYTHON_EXECUTABLE "${PYTHON_EXECUTABLE}")
- set (Sphinx_PYTHON_OPTIONS)
- file (STRINGS "${Sphinx-build_EXECUTABLE}" FIRST_LINE LIMIT_COUNT 1)
- if (FIRST_LINE MATCHES "^#!(.*/python.*)") # does not match "#!/usr/bin/env python" !
- string (REGEX REPLACE "^ +| +$" "" Sphinx_PYTHON_EXECUTABLE "${CMAKE_MATCH_1}")
- if (Sphinx_PYTHON_EXECUTABLE MATCHES "([^ ]+) (.*)")
- set (Sphinx_PYTHON_EXECUTABLE "${CMAKE_MATCH_1}")
- string (REGEX REPLACE " +" ";" Sphinx_PYTHON_OPTIONS "${CMAKE_MATCH_2}")
- endif ()
- endif ()
- # this is done to avoid problems with multiple Python versions being installed
- # remember: CMake command if(STR EQUAL STR) is bad and may cause many troubles !
- string (REGEX REPLACE "([.+*?^$])" "\\\\\\1" _Sphinx_PYTHON_EXECUTABLE_RE "${PYTHON_EXECUTABLE}")
- list (FIND Sphinx_PYTHON_OPTIONS -E IDX)
- if (IDX EQUAL -1 AND NOT Sphinx_PYTHON_EXECUTABLE MATCHES "^${_Sphinx_PYTHON_EXECUTABLE_RE}$")
- list (INSERT Sphinx_PYTHON_OPTIONS 0 -E)
- endif ()
- unset (_Sphinx_PYTHON_EXECUTABLE_RE)
- endif ()
- # ----------------------------------------------------------------------------
- # determine Sphinx version
- if (Sphinx-build_EXECUTABLE)
- # intentionally use invalid -h option here as the help that is shown then
- # will include the Sphinx version information
- if (Sphinx_PYTHON_EXECUTABLE)
- execute_process (
- COMMAND "${Sphinx_PYTHON_EXECUTABLE}" ${Sphinx_PYTHON_OPTIONS} "${Sphinx-build_EXECUTABLE}" -h
- OUTPUT_VARIABLE _Sphinx_VERSION
- ERROR_VARIABLE _Sphinx_VERSION
- )
- elseif (UNIX)
- execute_process (
- COMMAND "${Sphinx-build_EXECUTABLE}" -h
- OUTPUT_VARIABLE _Sphinx_VERSION
- ERROR_VARIABLE _Sphinx_VERSION
- )
- endif ()
- # The sphinx version can also contain a "b" instead of the last dot.
- # For example "Sphinx v1.2b1" so we cannot just split on "."
- if (_Sphinx_VERSION MATCHES "Sphinx v([0-9]+\\.[0-9]+(\\.|b)[0-9]+)")
- set (Sphinx_VERSION_STRING "${CMAKE_MATCH_1}")
- string(REGEX REPLACE "([0-9]+)\\.[0-9]+(\\.|b)[0-9]+" "\\1" Sphinx_VERSION_MAJOR ${Sphinx_VERSION_STRING})
- string(REGEX REPLACE "[0-9]+\\.([0-9]+)(\\.|b)[0-9]+" "\\1" Sphinx_VERSION_MINOR ${Sphinx_VERSION_STRING})
- string(REGEX REPLACE "[0-9]+\\.[0-9]+(\\.|b)([0-9]+)" "\\1" Sphinx_VERSION_PATCH ${Sphinx_VERSION_STRING})
- # v1.2.0 -> v1.2
- if (Sphinx_VERSION_PATCH EQUAL 0)
- string (REGEX REPLACE "\\.0$" "" Sphinx_VERSION_STRING "${Sphinx_VERSION_STRING}")
- endif ()
- endif()
- endif ()
- # ----------------------------------------------------------------------------
- # compatibility with FindPythonInterp.cmake and FindPerl.cmake
- set (SPHINX_EXECUTABLE "${Sphinx-build_EXECUTABLE}")
- # ----------------------------------------------------------------------------
- # handle the QUIETLY and REQUIRED arguments and set SPHINX_FOUND to TRUE if
- # all listed variables are TRUE
- include (FindPackageHandleStandardArgs)
- FIND_PACKAGE_HANDLE_STANDARD_ARGS (
- Sphinx
- REQUIRED_VARS
- ${_Sphinx_REQUIRED_VARS}
- # VERSION_VAR # This isn't available until CMake 2.8.8 so don't use it.
- Sphinx_VERSION_STRING
- )
- # ----------------------------------------------------------------------------
- # set Sphinx_DIR
- if (NOT Sphinx_DIR AND Sphinx-build_EXECUTABLE)
- get_filename_component (Sphinx_DIR "${Sphinx-build_EXECUTABLE}" PATH)
- string (REGEX REPLACE "/bin/?" "" Sphinx_DIR "${Sphinx_DIR}")
- set (Sphinx_DIR "${Sphinx_DIR}" CACHE PATH "Installation directory of Sphinx tools." FORCE)
- endif ()
- unset (_Sphinx_VERSION)
- unset (_Sphinx_REQUIRED_VARS)
|