diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000000000000000000000000000000000000..60c916416ec2ca44d7ff835e959cc9d22ccb394c --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "cmake"] + path = cmake + url = git://github.com/jrl-umi3218/jrl-cmakemodules.git diff --git a/cmake b/cmake new file mode 160000 index 0000000000000000000000000000000000000000..a831f5403a93b67c6cb8675625e79dd676a565f3 --- /dev/null +++ b/cmake @@ -0,0 +1 @@ +Subproject commit a831f5403a93b67c6cb8675625e79dd676a565f3 diff --git a/cmake/FindOpenRTM.cmake b/cmake/FindOpenRTM.cmake deleted file mode 100644 index 425ae2146dee6eeb45269215aa5a408127c2c3f0..0000000000000000000000000000000000000000 --- a/cmake/FindOpenRTM.cmake +++ /dev/null @@ -1,171 +0,0 @@ - -# @author Shin'ichiro Nakaoka - -set(OPENRTM_FOUND FALSE) -set(OPENRTM_VERSION042 "0.4.2") -set(OPENRTM_VERSION100 "1.0.0") -set(OPENRTM_PKG_CONFIG_FOUND FALSE) -#Additional threshold OpenRTM versions switching processing -set(OPENRTM_DEFAULT_VERSION ${OPENRTM_VERSION100}) - -if(UNIX) - if(OPENRTM_DIR) - string(REGEX REPLACE "/$" "" OPENRTM_DIR ${OPENRTM_DIR}) - set(OPENRTM_CONFIG_EXECUTABLE ${OPENRTM_DIR}/bin/rtm-config) - if(NOT EXISTS ${OPENRTM_CONFIG_EXECUTABLE}) - set(OPENRTM_CONFIG_EXECUTABLE) - message(FATAL_ERROR "rtm-config was not found in ${OPENRTM_DIR}/bin. Please set OPENRTM_DIR correctly.") - endif() - else() - find_program(OPENRTM_CONFIG_EXECUTABLE rtm-config DOC "The location of the rtm-config script") - mark_as_advanced(OPENRTM_CONFIG_EXECUTABLE) - endif() - - if(OPENRTM_CONFIG_EXECUTABLE) - set(OPENRTM_FOUND TRUE) - - execute_process( - COMMAND ${OPENRTM_CONFIG_EXECUTABLE} --version - OUTPUT_VARIABLE OPENRTM_VERSION - RESULT_VARIABLE RESULT - OUTPUT_STRIP_TRAILING_WHITESPACE) - - if(NOT RESULT EQUAL 0) - set(OPENRTM_FOUND FALSE) - endif() - - execute_process( - COMMAND ${OPENRTM_CONFIG_EXECUTABLE} --prefix - OUTPUT_VARIABLE OPENRTM_DIR - RESULT_VARIABLE RESULT - OUTPUT_STRIP_TRAILING_WHITESPACE) - - if(RESULT EQUAL 0) - if(OPENRTM_DIR) - list(APPEND OPENRTM_INCLUDE_DIRS "${OPENRTM_DIR}/include") - list(APPEND OPENRTM_INCLUDE_DIRS "${OPENRTM_DIR}/include/rtm/idl") - endif() - else() - set(OPENRTM_FOUND FALSE) - endif() - - execute_process( - COMMAND ${OPENRTM_CONFIG_EXECUTABLE} --cflags - OUTPUT_VARIABLE OPENRTM_CXX_FLAGS - RESULT_VARIABLE RESULT) - - if(RESULT EQUAL 0) - string(REGEX MATCHALL "-D.*[^ ;]+" OPENRTM_DEFINITIONS ${OPENRTM_CXX_FLAGS}) - else() - set(OPENRTM_FOUND FALSE) - endif() - - execute_process( - COMMAND ${OPENRTM_CONFIG_EXECUTABLE} --libs - OUTPUT_VARIABLE OPENRTM_LIBRARIES - RESULT_VARIABLE RESULT - OUTPUT_STRIP_TRAILING_WHITESPACE) - - if(RESULT EQUAL 0) - string(REGEX MATCHALL "-L[^ ;]+" OPENRTM_LIBRARY_DIRS ${OPENRTM_LIBRARIES}) - string(REGEX REPLACE "-L" ";" OPENRTM_LIBRARY_DIRS ${OPENRTM_LIBRARY_DIRS}) - string(REGEX REPLACE "-L[^ ;]+" "" OPENRTM_LIBRARIES ${OPENRTM_LIBRARIES}) - separate_arguments(OPENRTM_LIBRARIES) - else() - set(OPENRTM_FOUND FALSE) - endif() - - endif(OPENRTM_CONFIG_EXECUTABLE) - set(OPENRTM_PKG_CONFIG_FILE "/usr/lib/pkgconfig/openrtm-aist.pc") - if(EXISTS ${OPENRTM_PKG_CONFIG_FILE}) - set(OPENRTM_PKG_CONFIG_FOUND TRUE) - endif() -endif(UNIX) - -if(WIN32) - set(OPENRTM_DEFINITIONS -DUSE_stub_in_nt_dll ) - if( NOT OPENRTM_DIR ) - if(NOT $ENV{RTM_ROOT} STREQUAL "") - set(OPENRTM_DIR $ENV{RTM_ROOT}) - endif() - endif() - if(OPENRTM_DIR ) - if( ${OPENRTM_DIR} MATCHES ".*\\\\0\\.4\\\\$" ) - set(OPENRTM_DEFAULT_VERSION ${OPENRTM_VERSION042}) - elseif(${OPENRTM_DIR} MATCHES ".*\\/0\\.4$") - set(OPENRTM_DEFAULT_VERSION ${OPENRTM_VERSION042}) - else() - set(OPENRTM_DEFAULT_VERSION ${OPENRTM_VERSION100}) - endif() - set(OPENRTM_VERSION ${OPENRTM_DEFAULT_VERSION} CACHE STRING "Set version of OpenRTM-aist. Default version is ${OPENRTM_DEFAULT_VERSION}") - set(OPENRTM_INCLUDE_DIRS ${OPENRTM_DIR} ) - set(OPENRTM_LIBRARY_DIRS ${OPENRTM_DIR}/bin ) - list(APPEND OPENRTM_INCLUDE_DIRS "${OPENRTM_DIR}/rtm/idl") - if(OPENRTM_VERSION STREQUAL ${OPENRTM_VERSION042}) - set(OPENRTM_LIBRARIES_RELEASE RTC042 ACE ) - else() - # 1.0.0-RC - #set(OPENRTM_LIBRARIES_RELEASE RTC100 coil) - - # 1.0.0-Release - set(OPENRTM_LIBRARIES_RELEASE RTC100 coil) - set(OPENRTM_NODEBUG_LIBRARIES ws2_32 mswsock) - endif() - foreach(library ${OPENRTM_LIBRARIES_RELEASE}) - list(APPEND OPENRTM_LIBRARIES optimized ${library} debug ${library}d ) - endforeach() - foreach(library ${OPENRTM_NODEBUG_LIBRARIES}) - list(APPEND OPENRTM_LIBRARIES optimized ${library} debug ${library} ) - endforeach() - endif() - - if("${OPENRTM_VERSION}" STREQUAL ${OPENRTM_VERSION042}) - if(NOT ACE_ROOT) - if(NOT $ENV{ACE_ROOT} STREQUAL "") - set(ACE_ROOT $ENV{ACE_ROOT}) - endif() - set(ACE_ROOT ${ACE_ROOT} CACHE PATH "The top directory of ACE") - endif() - if(ACE_ROOT) - include_directories(${ACE_ROOT}) - link_directories(${ACE_ROOT}/lib) - endif() - if(OPENRTM_DIR AND ACE_ROOT) - set(OPENRTM_FOUND TRUE) - endif() - else() - if(OPENRTM_DIR) - set(OPENRTM_FOUND TRUE) - endif() - endif() -endif(WIN32) - -if(NOT OPENRTM_FOUND) - set(OPENRTM_DIR NOT_FOUND) -endif() - -set(OPENRTM_DIR ${OPENRTM_DIR} CACHE PATH "The top directory of OpenRTM-aist") - -if(OPENRTM_FOUND) - if( ${OPENRTM_VERSION} MATCHES "^0\\." ) - message(FATAL_ERROR "Not support OpenRTM-aist Ver.${OPENRTM_VERSION}, please install OpenRTM-aist Ver.1.0.0 or later and specify it's location.") - endif() - - if(NOT OpenRTM_FIND_QUIETLY) - message(STATUS "Found OpenRTM-aist ${OPENRTM_VERSION} in ${OPENRTM_DIR}") - endif() - if(OPENRTM_PKG_CONFIG_FOUND) - message(STATUS "OpenRTM is supported pkg-config.") - else() - message(STATUS "OpenRTM is not supported pkg-config.") - if(WIN32) - list(APPEND OPENRTM_LIBRARIES ${OMNIORB_LIBRARIES}) - endif(WIN32) - endif() -else() - if(NOT OpenRTM_FIND_QUIETLY) - if(OpenRTM_FIND_REQUIRED) - message(FATAL_ERROR "OpenRTM-aist required, please specify it's location.") - endif() - endif() -endif() diff --git a/cmake/GNUInstallDirs.cmake b/cmake/GNUInstallDirs.cmake deleted file mode 100644 index 0302e4bef6c3910b1992fa0125c873fff066a427..0000000000000000000000000000000000000000 --- a/cmake/GNUInstallDirs.cmake +++ /dev/null @@ -1,188 +0,0 @@ -# - Define GNU standard installation directories -# Provides install directory variables as defined for GNU software: -# http://www.gnu.org/prep/standards/html_node/Directory-Variables.html -# Inclusion of this module defines the following variables: -# CMAKE_INSTALL_<dir> - destination for files of a given type -# CMAKE_INSTALL_FULL_<dir> - corresponding absolute path -# where <dir> is one of: -# BINDIR - user executables (bin) -# SBINDIR - system admin executables (sbin) -# LIBEXECDIR - program executables (libexec) -# SYSCONFDIR - read-only single-machine data (etc) -# SHAREDSTATEDIR - modifiable architecture-independent data (com) -# LOCALSTATEDIR - modifiable single-machine data (var) -# LIBDIR - object code libraries (lib or lib64 or lib/<multiarch-tuple> on Debian) -# INCLUDEDIR - C header files (include) -# OLDINCLUDEDIR - C header files for non-gcc (/usr/include) -# DATAROOTDIR - read-only architecture-independent data root (share) -# DATADIR - read-only architecture-independent data (DATAROOTDIR) -# INFODIR - info documentation (DATAROOTDIR/info) -# LOCALEDIR - locale-dependent data (DATAROOTDIR/locale) -# MANDIR - man documentation (DATAROOTDIR/man) -# DOCDIR - documentation root (DATAROOTDIR/doc/PROJECT_NAME) -# Each CMAKE_INSTALL_<dir> value may be passed to the DESTINATION options of -# install() commands for the corresponding file type. If the includer does -# not define a value the above-shown default will be used and the value will -# appear in the cache for editing by the user. -# Each CMAKE_INSTALL_FULL_<dir> value contains an absolute path constructed -# from the corresponding destination by prepending (if necessary) the value -# of CMAKE_INSTALL_PREFIX. - -#============================================================================= -# Copyright 2011 Nikita Krupen'ko <krnekit@gmail.com> -# Copyright 2011 Kitware, Inc. -# -# Distributed under the OSI-approved BSD License (the "License"); -# see accompanying file Copyright.txt for details. -# -# This software is distributed WITHOUT ANY WARRANTY; without even the -# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the License for more information. -#============================================================================= -# (To distribute this file outside of CMake, substitute the full -# License text for the above reference.) - -# Installation directories -# -if(NOT DEFINED CMAKE_INSTALL_BINDIR) - set(CMAKE_INSTALL_BINDIR "bin" CACHE PATH "user executables (bin)") -endif() - -if(NOT DEFINED CMAKE_INSTALL_SBINDIR) - set(CMAKE_INSTALL_SBINDIR "sbin" CACHE PATH "system admin executables (sbin)") -endif() - -if(NOT DEFINED CMAKE_INSTALL_LIBEXECDIR) - set(CMAKE_INSTALL_LIBEXECDIR "libexec" CACHE PATH "program executables (libexec)") -endif() - -if(NOT DEFINED CMAKE_INSTALL_SYSCONFDIR) - set(CMAKE_INSTALL_SYSCONFDIR "etc" CACHE PATH "read-only single-machine data (etc)") -endif() - -if(NOT DEFINED CMAKE_INSTALL_SHAREDSTATEDIR) - set(CMAKE_INSTALL_SHAREDSTATEDIR "com" CACHE PATH "modifiable architecture-independent data (com)") -endif() - -if(NOT DEFINED CMAKE_INSTALL_LOCALSTATEDIR) - set(CMAKE_INSTALL_LOCALSTATEDIR "var" CACHE PATH "modifiable single-machine data (var)") -endif() - -if(NOT DEFINED CMAKE_INSTALL_LIBDIR) - set(_LIBDIR_DEFAULT "lib") - # Override this default 'lib' with 'lib64' iff: - # - we are on Linux system but NOT cross-compiling - # - we are NOT on debian - # - we are on a 64 bits system - # reason is: amd64 ABI: http://www.x86-64.org/documentation/abi.pdf - # For Debian with multiarch, use 'lib/${CMAKE_LIBRARY_ARCHITECTURE}' if - # CMAKE_LIBRARY_ARCHITECTURE is set (which contains e.g. "i386-linux-gnu" - # See http://wiki.debian.org/Multiarch - if(CMAKE_SYSTEM_NAME MATCHES "Linux" - AND NOT CMAKE_CROSSCOMPILING) - if (EXISTS "/etc/debian_version") # is this a debian system ? - if(CMAKE_LIBRARY_ARCHITECTURE) - set(_LIBDIR_DEFAULT "lib/${CMAKE_LIBRARY_ARCHITECTURE}") - endif() - else() # not debian, rely on CMAKE_SIZEOF_VOID_P: - if(NOT DEFINED CMAKE_SIZEOF_VOID_P) - message(AUTHOR_WARNING - "Unable to determine default CMAKE_INSTALL_LIBDIR directory because no target architecture is known. " - "Please enable at least one language before including GNUInstallDirs.") - else() - if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8") - set(_LIBDIR_DEFAULT "lib64") - endif() - endif() - endif() - endif() - set(CMAKE_INSTALL_LIBDIR "${_LIBDIR_DEFAULT}" CACHE PATH "object code libraries (${_LIBDIR_DEFAULT})") -endif() - -if(NOT DEFINED CMAKE_INSTALL_INCLUDEDIR) - set(CMAKE_INSTALL_INCLUDEDIR "include" CACHE PATH "C header files (include)") -endif() - -if(NOT DEFINED CMAKE_INSTALL_OLDINCLUDEDIR) - set(CMAKE_INSTALL_OLDINCLUDEDIR "/usr/include" CACHE PATH "C header files for non-gcc (/usr/include)") -endif() - -if(NOT DEFINED CMAKE_INSTALL_DATAROOTDIR) - set(CMAKE_INSTALL_DATAROOTDIR "share" CACHE PATH "read-only architecture-independent data root (share)") -endif() - -#----------------------------------------------------------------------------- -# Values whose defaults are relative to DATAROOTDIR. Store empty values in -# the cache and store the defaults in local variables if the cache values are -# not set explicitly. This auto-updates the defaults as DATAROOTDIR changes. - -if(NOT CMAKE_INSTALL_DATADIR) - set(CMAKE_INSTALL_DATADIR "" CACHE PATH "read-only architecture-independent data (DATAROOTDIR)") - set(CMAKE_INSTALL_DATADIR "${CMAKE_INSTALL_DATAROOTDIR}") -endif() - -if(NOT CMAKE_INSTALL_INFODIR) - set(CMAKE_INSTALL_INFODIR "" CACHE PATH "info documentation (DATAROOTDIR/info)") - set(CMAKE_INSTALL_INFODIR "${CMAKE_INSTALL_DATAROOTDIR}/info") -endif() - -if(NOT CMAKE_INSTALL_LOCALEDIR) - set(CMAKE_INSTALL_LOCALEDIR "" CACHE PATH "locale-dependent data (DATAROOTDIR/locale)") - set(CMAKE_INSTALL_LOCALEDIR "${CMAKE_INSTALL_DATAROOTDIR}/locale") -endif() - -if(NOT CMAKE_INSTALL_MANDIR) - set(CMAKE_INSTALL_MANDIR "" CACHE PATH "man documentation (DATAROOTDIR/man)") - set(CMAKE_INSTALL_MANDIR "${CMAKE_INSTALL_DATAROOTDIR}/man") -endif() - -if(NOT CMAKE_INSTALL_DOCDIR) - set(CMAKE_INSTALL_DOCDIR "" CACHE PATH "documentation root (DATAROOTDIR/doc/PROJECT_NAME)") - set(CMAKE_INSTALL_DOCDIR "${CMAKE_INSTALL_DATAROOTDIR}/doc/${PROJECT_NAME}") -endif() - -#----------------------------------------------------------------------------- - -mark_as_advanced( - CMAKE_INSTALL_BINDIR - CMAKE_INSTALL_SBINDIR - CMAKE_INSTALL_LIBEXECDIR - CMAKE_INSTALL_SYSCONFDIR - CMAKE_INSTALL_SHAREDSTATEDIR - CMAKE_INSTALL_LOCALSTATEDIR - CMAKE_INSTALL_LIBDIR - CMAKE_INSTALL_INCLUDEDIR - CMAKE_INSTALL_OLDINCLUDEDIR - CMAKE_INSTALL_DATAROOTDIR - CMAKE_INSTALL_DATADIR - CMAKE_INSTALL_INFODIR - CMAKE_INSTALL_LOCALEDIR - CMAKE_INSTALL_MANDIR - CMAKE_INSTALL_DOCDIR - ) - -# Result directories -# -foreach(dir - BINDIR - SBINDIR - LIBEXECDIR - SYSCONFDIR - SHAREDSTATEDIR - LOCALSTATEDIR - LIBDIR - INCLUDEDIR - OLDINCLUDEDIR - DATAROOTDIR - DATADIR - INFODIR - LOCALEDIR - MANDIR - DOCDIR - ) - if(NOT IS_ABSOLUTE ${CMAKE_INSTALL_${dir}}) - set(CMAKE_INSTALL_FULL_${dir} "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_${dir}}") - else() - set(CMAKE_INSTALL_FULL_${dir} "${CMAKE_INSTALL_${dir}}") - endif() -endforeach() diff --git a/cmake/LICENSE b/cmake/LICENSE deleted file mode 100644 index f8b3c93b606cb3173cf2c3172d542088a09f640b..0000000000000000000000000000000000000000 --- a/cmake/LICENSE +++ /dev/null @@ -1,4 +0,0 @@ -Unless otherwise specified, files of this project are released under the -GNU Lesser General Public License. - -Some files are copies from other project and as such keep their initial license. diff --git a/cmake/README.md b/cmake/README.md deleted file mode 100644 index d6c6ffe78ed8103129a44b847592b56dc2fea009..0000000000000000000000000000000000000000 --- a/cmake/README.md +++ /dev/null @@ -1,13 +0,0 @@ -Shared CMake submodule -====================== - -This repository is meant to be used as a submodule for any project -from CNRS LAAS/HPP or JRL. - -It factorizes CMake mechanisms to provide a uniform look'n feel for -all packages. - - -Please see the documentation on the [wiki] for more information. - -[wiki]: http://github.com/jrl-umi3218/jrl-cmakemodules/wiki diff --git a/cmake/announce-gen b/cmake/announce-gen deleted file mode 100755 index 3a64ec659ac20822e64f04294ac5d96408012481..0000000000000000000000000000000000000000 --- a/cmake/announce-gen +++ /dev/null @@ -1,555 +0,0 @@ -eval '(exit $?0)' && eval 'exec perl -wS "$0" ${1+"$@"}' - & eval 'exec perl -wS "$0" $argv:q' - if 0; -# Generate a release announcement message. - -my $VERSION = '2012-06-08 06:53'; # UTC -# The definition above must lie within the first 8 lines in order -# for the Emacs time-stamp write hook (at end) to update it. -# If you change this file with Emacs, please let the write hook -# do its job. Otherwise, update this string manually. - -# Copyright (C) 2002-2013 Free Software Foundation, Inc. - -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# Written by Jim Meyering - -use strict; - -use Getopt::Long; -use Digest::MD5; -eval { require Digest::SHA; } - or eval 'use Digest::SHA1'; -use POSIX qw(strftime); - -(my $ME = $0) =~ s|.*/||; - -my %valid_release_types = map {$_ => 1} qw (alpha beta stable); -my @archive_suffixes = ('tar.gz', 'tar.bz2', 'tar.lzma', 'tar.xz'); -my $srcdir = '.'; - -sub usage ($) -{ - my ($exit_code) = @_; - my $STREAM = ($exit_code == 0 ? *STDOUT : *STDERR); - if ($exit_code != 0) - { - print $STREAM "Try '$ME --help' for more information.\n"; - } - else - { - my @types = sort keys %valid_release_types; - print $STREAM <<EOF; -Usage: $ME [OPTIONS] -Generate an announcement message. Run this from builddir. - -OPTIONS: - -These options must be specified: - - --release-type=TYPE TYPE must be one of @types - --package-name=PACKAGE_NAME - --previous-version=VER - --current-version=VER - --gpg-key-id=ID The GnuPG ID of the key used to sign the tarballs - --url-directory=URL_DIR - -The following are optional: - - --news=NEWS_FILE include the NEWS section about this release - from this NEWS_FILE; accumulates. - --srcdir=DIR where to find the NEWS_FILEs (default: $srcdir) - --bootstrap-tools=TOOL_LIST a comma-separated list of tools, e.g., - autoconf,automake,bison,gnulib - --gnulib-version=VERSION report VERSION as the gnulib version, where - VERSION is the result of running git describe - in the gnulib source directory. - required if gnulib is in TOOL_LIST. - --no-print-checksums do not emit MD5 or SHA1 checksums - --archive-suffix=SUF add SUF to the list of archive suffixes - --mail-headers=HEADERS a space-separated list of mail headers, e.g., - To: x\@example.com Cc: y-announce\@example.com,... - - --help display this help and exit - --version output version information and exit - -EOF - } - exit $exit_code; -} - - -=item C<%size> = C<sizes (@file)> - -Compute the sizes of the C<@file> and return them as a hash. Return -C<undef> if one of the computation failed. - -=cut - -sub sizes (@) -{ - my (@file) = @_; - - my $fail = 0; - my %res; - foreach my $f (@file) - { - my $cmd = "du -h $f"; - my $t = `$cmd`; - # FIXME-someday: give a better diagnostic, a la $PROCESS_STATUS - $@ - and (warn "command failed: '$cmd'\n"), $fail = 1; - chomp $t; - $t =~ s/^\s*([\d.]+[MkK]).*/${1}B/; - $res{$f} = $t; - } - return $fail ? undef : %res; -} - -=item C<print_locations ($title, \@url, \%size, @file) - -Print a section C<$title> dedicated to the list of <@file>, which -sizes are stored in C<%size>, and which are available from the C<@url>. - -=cut - -sub print_locations ($\@\%@) -{ - my ($title, $url, $size, @file) = @_; - print "Here are the $title:\n"; - foreach my $url (@{$url}) - { - for my $file (@file) - { - print " $url/$file"; - print " (", $$size{$file}, ")" - if exists $$size{$file}; - print "\n"; - } - } - print "\n"; -} - -=item C<print_checksums (@file) - -Print the MD5 and SHA1 signature section for each C<@file>. - -=cut - -sub print_checksums (@) -{ - my (@file) = @_; - - print "Here are the MD5 and SHA1 checksums:\n"; - print "\n"; - - foreach my $meth (qw (md5 sha1)) - { - foreach my $f (@file) - { - open IN, '<', $f - or die "$ME: $f: cannot open for reading: $!\n"; - binmode IN; - my $dig = - ($meth eq 'md5' - ? Digest::MD5->new->addfile(*IN)->hexdigest - : Digest::SHA1->new->addfile(*IN)->hexdigest); - close IN; - print "$dig $f\n"; - } - } - print "\n"; -} - -=item C<print_news_deltas ($news_file, $prev_version, $curr_version) - -Print the section of the NEWS file C<$news_file> addressing changes -between versions C<$prev_version> and C<$curr_version>. - -=cut - -sub print_news_deltas ($$$) -{ - my ($news_file, $prev_version, $curr_version) = @_; - - my $news_name = $news_file; - $news_name =~ s|^\Q$srcdir\E/||; - - print "\n$news_name\n\n"; - - # Print all lines from $news_file, starting with the first one - # that mentions $curr_version up to but not including - # the first occurrence of $prev_version. - my $in_items; - - my $re_prefix = qr/(?:\* )?(?:Noteworthy c|Major c|C)(?i:hanges)/; - - my $found_news; - open NEWS, '<', $news_file - or die "$ME: $news_file: cannot open for reading: $!\n"; - while (defined (my $line = <NEWS>)) - { - if ( ! $in_items) - { - # Match lines like these: - # * Major changes in release 5.0.1: - # * Noteworthy changes in release 6.6 (2006-11-22) [stable] - $line =~ /^$re_prefix.*(?:[^\d.]|$)\Q$curr_version\E(?:[^\d.]|$)/o - or next; - $in_items = 1; - print $line; - } - else - { - # This regexp must not match version numbers in NEWS items. - # For example, they might well say "introduced in 4.5.5", - # and we don't want that to match. - $line =~ /^$re_prefix.*(?:[^\d.]|$)\Q$prev_version\E(?:[^\d.]|$)/o - and last; - print $line; - $line =~ /\S/ - and $found_news = 1; - } - } - close NEWS; - - $in_items - or die "$ME: $news_file: no matching lines for '$curr_version'\n"; - $found_news - or die "$ME: $news_file: no news item found for '$curr_version'\n"; -} - -sub print_changelog_deltas ($$) -{ - my ($package_name, $prev_version) = @_; - - # Print new ChangeLog entries. - - # First find all CVS-controlled ChangeLog files. - use File::Find; - my @changelog; - find ({wanted => sub {$_ eq 'ChangeLog' && -d 'CVS' - and push @changelog, $File::Find::name}}, - '.'); - - # If there are no ChangeLog files, we're done. - @changelog - or return; - my %changelog = map {$_ => 1} @changelog; - - # Reorder the list of files so that if there are ChangeLog - # files in the specified directories, they're listed first, - # in this order: - my @dir = qw ( . src lib m4 config doc ); - - # A typical @changelog array might look like this: - # ./ChangeLog - # ./po/ChangeLog - # ./m4/ChangeLog - # ./lib/ChangeLog - # ./doc/ChangeLog - # ./config/ChangeLog - my @reordered; - foreach my $d (@dir) - { - my $dot_slash = $d eq '.' ? $d : "./$d"; - my $target = "$dot_slash/ChangeLog"; - delete $changelog{$target} - and push @reordered, $target; - } - - # Append any remaining ChangeLog files. - push @reordered, sort keys %changelog; - - # Remove leading './'. - @reordered = map { s!^\./!!; $_ } @reordered; - - print "\nChangeLog entries:\n\n"; - # print join ("\n", @reordered), "\n"; - - $prev_version =~ s/\./_/g; - my $prev_cvs_tag = "\U$package_name\E-$prev_version"; - - my $cmd = "cvs -n diff -u -r$prev_cvs_tag -rHEAD @reordered"; - open DIFF, '-|', $cmd - or die "$ME: cannot run '$cmd': $!\n"; - # Print two types of lines, making minor changes: - # Lines starting with '+++ ', e.g., - # +++ ChangeLog 22 Feb 2003 16:52:51 -0000 1.247 - # and those starting with '+'. - # Don't print the others. - my $prev_printed_line_empty = 1; - while (defined (my $line = <DIFF>)) - { - if ($line =~ /^\+\+\+ /) - { - my $separator = "*"x70 ."\n"; - $line =~ s///; - $line =~ s/\s.*//; - $prev_printed_line_empty - or print "\n"; - print $separator, $line, $separator; - } - elsif ($line =~ /^\+/) - { - $line =~ s///; - print $line; - $prev_printed_line_empty = ($line =~ /^$/); - } - } - close DIFF; - - # The exit code should be 1. - # Allow in case there are no modified ChangeLog entries. - $? == 256 || $? == 128 - or warn "warning: '$cmd' had unexpected exit code or signal ($?)\n"; -} - -sub get_tool_versions ($$) -{ - my ($tool_list, $gnulib_version) = @_; - @$tool_list - or return (); - - my $fail; - my @tool_version_pair; - foreach my $t (@$tool_list) - { - if ($t eq 'gnulib') - { - push @tool_version_pair, ucfirst $t . ' ' . $gnulib_version; - next; - } - # Assume that the last "word" on the first line of - # 'tool --version' output is the version string. - my ($first_line, undef) = split ("\n", `$t --version`); - if ($first_line =~ /.* (\d[\w.-]+)$/) - { - $t = ucfirst $t; - push @tool_version_pair, "$t $1"; - } - else - { - defined $first_line - and $first_line = ''; - warn "$t: unexpected --version output\n:$first_line"; - $fail = 1; - } - } - - $fail - and exit 1; - - return @tool_version_pair; -} - -{ - # Neutralize the locale, so that, for instance, "du" does not - # issue "1,2" instead of "1.2", what confuses our regexps. - $ENV{LC_ALL} = "C"; - - my $mail_headers; - my $release_type; - my $package_name; - my $prev_version; - my $curr_version; - my $gpg_key_id; - my @url_dir_list; - my @news_file; - my $bootstrap_tools; - my $gnulib_version; - my $print_checksums_p = 1; - - # Reformat the warnings before displaying them. - local $SIG{__WARN__} = sub - { - my ($msg) = @_; - # Warnings from GetOptions. - $msg =~ s/Option (\w)/option --$1/; - warn "$ME: $msg"; - }; - - GetOptions - ( - 'mail-headers=s' => \$mail_headers, - 'release-type=s' => \$release_type, - 'package-name=s' => \$package_name, - 'previous-version=s' => \$prev_version, - 'current-version=s' => \$curr_version, - 'gpg-key-id=s' => \$gpg_key_id, - 'url-directory=s' => \@url_dir_list, - 'news=s' => \@news_file, - 'srcdir=s' => \$srcdir, - 'bootstrap-tools=s' => \$bootstrap_tools, - 'gnulib-version=s' => \$gnulib_version, - 'print-checksums!' => \$print_checksums_p, - 'archive-suffix=s' => \@archive_suffixes, - - help => sub { usage 0 }, - version => sub { print "$ME version $VERSION\n"; exit }, - ) or usage 1; - - my $fail = 0; - # Ensure that each required option is specified. - $release_type - or (warn "release type not specified\n"), $fail = 1; - $package_name - or (warn "package name not specified\n"), $fail = 1; - $prev_version - or (warn "previous version string not specified\n"), $fail = 1; - $curr_version - or (warn "current version string not specified\n"), $fail = 1; - $gpg_key_id - or (warn "GnuPG key ID not specified\n"), $fail = 1; - @url_dir_list - or (warn "URL directory name(s) not specified\n"), $fail = 1; - - my @tool_list = split ',', $bootstrap_tools; - - grep (/^gnulib$/, @tool_list) ^ defined $gnulib_version - and (warn "when specifying gnulib as a tool, you must also specify\n" - . "--gnulib-version=V, where V is the result of running git describe\n" - . "in the gnulib source directory.\n"), $fail = 1; - - exists $valid_release_types{$release_type} - or (warn "'$release_type': invalid release type\n"), $fail = 1; - - @ARGV - and (warn "too many arguments:\n", join ("\n", @ARGV), "\n"), - $fail = 1; - $fail - and usage 1; - - my $my_distdir = "$package_name-$curr_version"; - - my $xd = "$package_name-$prev_version-$curr_version.xdelta"; - - my @candidates = map { "$my_distdir.$_" } @archive_suffixes; - my @tarballs = grep {-f $_} @candidates; - - @tarballs - or die "$ME: none of " . join(', ', @candidates) . " were found\n"; - my @sizable = @tarballs; - -f $xd - and push @sizable, $xd; - my %size = sizes (@sizable); - %size - or exit 1; - - my $headers = ''; - if (defined $mail_headers) - { - ($headers = $mail_headers) =~ s/\s+(\S+:)/\n$1/g; - $headers .= "\n"; - } - - # The markup is escaped as <\# so that when this script is sent by - # mail (or part of a diff), Gnus is not triggered. - print <<EOF; - -${headers}Subject: $my_distdir released [$release_type] - -<\#secure method=pgpmime mode=sign> - -FIXME: put comments here - -EOF - - if (@url_dir_list == 1 && @tarballs == 1) - { - # When there's only one tarball and one URL, use a more concise form. - my $m = "$url_dir_list[0]/$tarballs[0]"; - print "Here are the compressed sources and a GPG detached signature[*]:\n" - . " $m\n" - . " $m.sig\n\n"; - } - else - { - print_locations ("compressed sources", @url_dir_list, %size, @tarballs); - -f $xd - and print_locations ("xdelta diffs (useful? if so, " - . "please tell bug-gnulib\@gnu.org)", - @url_dir_list, %size, $xd); - my @sig_files = map { "$_.sig" } @tarballs; - print_locations ("GPG detached signatures[*]", @url_dir_list, %size, - @sig_files); - } - - if ($url_dir_list[0] =~ "gnu\.org") - { - print "Use a mirror for higher download bandwidth:\n"; - if (@tarballs == 1 && $url_dir_list[0] =~ m!http://ftp\.gnu\.org/gnu/!) - { - (my $m = "$url_dir_list[0]/$tarballs[0]") - =~ s!http://ftp\.gnu\.org/gnu/!http://ftpmirror\.gnu\.org/!; - print " $m\n" - . " $m.sig\n\n"; - - } - else - { - print " http://www.gnu.org/order/ftp.html\n\n"; - } - } - - $print_checksums_p - and print_checksums (@sizable); - - print <<EOF; -[*] Use a .sig file to verify that the corresponding file (without the -.sig suffix) is intact. First, be sure to download both the .sig file -and the corresponding tarball. Then, run a command like this: - - gpg --verify $tarballs[0].sig - -If that command fails because you don't have the required public key, -then run this command to import it: - - gpg --keyserver keys.gnupg.net --recv-keys $gpg_key_id - -and rerun the 'gpg --verify' command. -EOF - - my @tool_versions = get_tool_versions (\@tool_list, $gnulib_version); - @tool_versions - and print "\nThis release was bootstrapped with the following tools:", - join ('', map {"\n $_"} @tool_versions), "\n"; - - print_news_deltas ($_, $prev_version, $curr_version) - foreach @news_file; - - $release_type eq 'stable' - or print_changelog_deltas ($package_name, $prev_version); - - exit 0; -} - -### Setup "GNU" style for perl-mode and cperl-mode. -## Local Variables: -## mode: perl -## perl-indent-level: 2 -## perl-continued-statement-offset: 2 -## perl-continued-brace-offset: 0 -## perl-brace-offset: 0 -## perl-brace-imaginary-offset: 0 -## perl-label-offset: -2 -## perl-extra-newline-before-brace: t -## perl-merge-trailing-else: nil -## eval: (add-hook 'write-file-hooks 'time-stamp) -## time-stamp-start: "my $VERSION = '" -## time-stamp-format: "%:y-%02m-%02d %02H:%02M" -## time-stamp-time-zone: "UTC" -## time-stamp-end: "'; # UTC" -## End: diff --git a/cmake/base.cmake b/cmake/base.cmake deleted file mode 100644 index 01d973fffd7e9e559fef93ecd18785d8ac1ab0fe..0000000000000000000000000000000000000000 --- a/cmake/base.cmake +++ /dev/null @@ -1,178 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - - # ------ # - # README # - # ------ # - -# This file factorizes all rules to define a project for JRL or LAAS. -# It supposes that some variables have already been defined: -# - PROJECT_NAME Project name. -# Please keep respect our coding style and choose a name -# which respects the following regexp: [a-z][a-z0-9-]* -# I.e. a lower-case letter then one or more lower-case -# letter, number or hyphen ``-''. -# - PROJECT_VERSION Project version (X.Y.Z where X, Y, Z are unsigned -# integers). If not defined, it will automatically -# be computed through `git describe`. -# See BASE_COMPUTE_VERSION for more information. -# - PROJECT_DESCRIPTION One line summary of the package goal. -# - PROJECT_URL Project's website. -# -# Please note that functions starting with an underscore are internal -# functions and should not be used directly. - - # ---- # - # TODO # - # ---- # - -# - make install should trigger make doc -# - unit tests should be tagged as -# EXCLUDE_FROM_ALL and make test should trigger their compilation. - -# Include base features. -INCLUDE(cmake/logging.cmake) -INCLUDE(cmake/portability.cmake) -INCLUDE(cmake/compiler.cmake) -INCLUDE(cmake/debian.cmake) -INCLUDE(cmake/dist.cmake) -INCLUDE(cmake/distcheck.cmake) -INCLUDE(cmake/doxygen.cmake) -INCLUDE(cmake/header.cmake) -INCLUDE(cmake/pkg-config.cmake) -INCLUDE(cmake/uninstall.cmake) -INCLUDE(cmake/install-data.cmake) -INCLUDE(cmake/release.cmake) -INCLUDE(cmake/version.cmake) - - # --------- # - # Constants # - # --------- # - -# Variables requires by SETUP_PROJECT. -SET(REQUIRED_VARIABLES PROJECT_NAME PROJECT_DESCRIPTION PROJECT_URL) - - # --------------------- # - # Project configuration # - # --------------------- # - -# _ADD_TO_LIST LIST VALUE -# ------------- -# -# Add a value to a comma-separated list. -# -# LIST : the list. -# VALUE : the value to be appended. -# SEPARATOR : the separation symol. -# -MACRO(_ADD_TO_LIST LIST VALUE SEPARATOR) - IF("${${LIST}}" STREQUAL "") - SET(${LIST} "${VALUE}") - ELSE("${${LIST}}" STREQUAL "") - SET(${LIST} "${${LIST}}${SEPARATOR} ${VALUE}") - ENDIF("${${LIST}}" STREQUAL "") -ENDMACRO(_ADD_TO_LIST LIST VALUE) - -# _CONCATE_ARGUMENTS -# ------------- -# -# Concatenate all arguments into the output variable. -# -# OUTPUT : the output variable. -# SEPARTOR : the list separation symbol. -# ARG1...ARGN : the values to be concatenated. -# -MACRO(_CONCATENATE_ARGUMENTS OUTPUT SEPARATOR) - FOREACH(I RANGE 2 ${ARGC}) - _ADD_TO_LIST("${OUTPUT}" "${ARGV${I}}" "${SEPARATOR}") - ENDFOREACH(I RANGE 2 ${ARGC}) - MESSAGE(${${OUTPUT}}) -ENDMACRO(_CONCATENATE_ARGUMENTS OUTPUT) - - -# SETUP_PROJECT -# ------------- -# -# Initialize the project. Should be called first in the root -# CMakeList.txt. -# -# This function does not take any argument but check that some -# variables are defined (see documentation at the beginning of this -# file). -# -MACRO(SETUP_PROJECT) - IF(NOT DEFINED CMAKE_INSTALL_LIBDIR) - SET(CMAKE_INSTALL_LIBDIR lib) - ENDIF() - INCLUDE(cmake/GNUInstallDirs.cmake) - SET(CMAKE_INSTALL_FULL_PKGLIBDIR ${CMAKE_INSTALL_FULL_LIBDIR}/${PROJECT_NAME}) - SET(CMAKE_INSTALL_PKGLIBDIR ${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME}) - - # Check that required variables are defined. - FOREACH(VARIABLE ${REQUIRED_VARIABLES}) - IF (NOT DEFINED ${VARIABLE}) - MESSAGE(FATAL_ERROR - "Required variable ``${VARIABLE}'' has not been defined.") - ENDIF(NOT DEFINED ${VARIABLE}) - ENDFOREACH(VARIABLE) - - # Define project name. - PROJECT(${PROJECT_NAME} CXX) - - # If the project version number is not set, compute it automatically. - IF(NOT DEFINED PROJECT_VERSION) - VERSION_COMPUTE() - ENDIF() - - IF(${ARGC}) - SET(CMAKE_VERBOSE_MAKEFILE ${ARGV0}) - ELSE(${ARGC}) - # Be verbose by default. - SET(CMAKE_VERBOSE_MAKEFILE TRUE) - ENDIF(${ARGC}) - - - ENABLE_TESTING() - - LOGGING_INITIALIZE() - - #FIXME: normalize naming to <MODULE>_SETUP() - _SETUP_PROJECT_WARNINGS() - _SETUP_PROJECT_HEADER() - _SETUP_PROJECT_DIST() - DISTCHECK_SETUP() - RELEASE_SETUP() - _SETUP_PROJECT_DEB() - _SETUP_PROJECT_UNINSTALL() - _SETUP_PROJECT_PKG_CONFIG() - _SETUP_PROJECT_DOCUMENTATION() -ENDMACRO(SETUP_PROJECT) - -# SETUP_PROJECT_FINALIZE -# ---------------------- -# -# To be called at the end of the CMakeLists.txt to -# finalize the project setup. -# -MACRO(SETUP_PROJECT_FINALIZE) - _SETUP_PROJECT_PKG_CONFIG_FINALIZE() - _SETUP_PROJECT_DOCUMENTATION_FINALIZE() - _SETUP_PROJECT_HEADER_FINAlIZE() - _SETUP_DEBIAN() - # Install data if needed - _INSTALL_PROJECT_DATA() - - LOGGING_FINALIZE() -ENDMACRO(SETUP_PROJECT_FINALIZE) diff --git a/cmake/boost.cmake b/cmake/boost.cmake deleted file mode 100644 index b5c4913d17aa5859f6dea788122a66f943ff2a6c..0000000000000000000000000000000000000000 --- a/cmake/boost.cmake +++ /dev/null @@ -1,85 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# SEARCH_FOR_BOOST -# ----------------- -# -# This macro deals with Visual Studio Fortran incompatibilities -# and add detected flags to the pkg-config file automatically. -# -# The components to be detected is controlled by BOOST_COMPONENTS. If -# this variable is not defined, it defaults to the following component -# list: -# - Filesystem -# - Program_options -# - System -# - Thread -# - Unit_test_framework -# -MACRO(SEARCH_FOR_BOOST) - SET(Boost_USE_STATIC_LIBS OFF) - SET(Boost_USE_MULTITHREAD ON) - - IF(NOT BOOST_REQUIRED) - SET(BOOST_REQUIRED 1.40) - ENDIF(NOT BOOST_REQUIRED) - - IF(NOT DEFINED BOOST_COMPONENTS) - SET(BOOST_COMPONENTS - filesystem system thread program_options unit_test_framework) - ENDIF(NOT DEFINED BOOST_COMPONENTS) - - FIND_PACKAGE(Boost ${BOOST_REQUIRED} COMPONENTS ${BOOST_COMPONENTS} REQUIRED) - - IF(NOT Boost_FOUND) - MESSAGE( - FATAL_ERROR "Failed to detect Boost with the following components:\n" - ${COMPONENTS}) - ENDIF(NOT Boost_FOUND) - - PKG_CONFIG_APPEND_CFLAGS("-I${Boost_INCLUDE_DIR}") - PKG_CONFIG_APPEND_LIBRARY_DIR("${Boost_LIBRARY_DIRS}") - - LIST(APPEND LOGGING_WATCHED_VARIABLES - Boost_USE_MULTITHREADED - Boost_USE_STATIC_LIBS - Boost_ADDITIONAL_VERSIONS - Boost_DEBUG - Boost_COMPILER - BOOST_ROOT - BOOSTROOT - BOOST_INCLUDEDIR - BOOST_LIBRARYDIR - Boost_FOUND - Boost_INCLUDE_DIRS - Boost_INCLUDE_DIR - Boost_LIBRARIES - Boost_LIBRARY_DIRS - Boost_VERSION - Boost_LIB_VERSION - Boost_MAJOR_VERSION - Boost_MINOR_VERSION - Boost_SUBMINOR_VERSION - Boost_LIB_DIAGNOSTIC_DEFINITIONS - ) - FOREACH(COMPONENT ${BOOST_COMPONENTS}) - LIST(APPEND LOGGING_WATCHED_VARIABLES - Boost_${COMPONENT}_FOUND - Boost_${COMPONENT}_LIBRARY - Boost_${COMPONENT}_LIBRARY_DEBUG - Boost_${COMPONENT}_LIBRARY_RELEASE - ) - ENDFOREACH() -ENDMACRO(SEARCH_FOR_BOOST) diff --git a/cmake/bootstrap b/cmake/bootstrap deleted file mode 100755 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/cmake/catkin.cmake b/cmake/catkin.cmake deleted file mode 100644 index 97208d939096318f67845a533222709977bdf891..0000000000000000000000000000000000000000 --- a/cmake/catkin.cmake +++ /dev/null @@ -1,23 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# Author: Florent Lamiraux -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# Override binary installation directory -# Be aware that including this file implies that binary installation directory -# cannot be chosen by user. -SET(CATKIN_PACKAGE_BIN_DESTINATION ${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME}) -SET(CMAKE_INSTALL_BINDIR ${CATKIN_PACKAGE_BIN_DESTINATION}) - diff --git a/cmake/cmake_uninstall.cmake.in b/cmake/cmake_uninstall.cmake.in deleted file mode 100644 index 6b7b6a5b237160342413d2c2244489eb68c1a43e..0000000000000000000000000000000000000000 --- a/cmake/cmake_uninstall.cmake.in +++ /dev/null @@ -1,48 +0,0 @@ -# Copyright (C) 2010 Olivier Stasse, JRL, CNRS, 2010 -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. -# -# This files comes from the CMake FAQ: http://www.cmake.org/Wiki/CMake_FAQ - -IF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") - MESSAGE(FATAL_ERROR "Cannot find install manifest:\"@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt\"") -ENDIF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") - -FILE(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files) -STRING(REGEX REPLACE "\n" ";" files "${files}") -LIST(REVERSE files) -FOREACH(file ${files}) - MESSAGE(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"") - IF(EXISTS "$ENV{DESTDIR}${file}") - EXECUTE_PROCESS( - COMMAND @CMAKE_COMMAND@ -E remove "$ENV{DESTDIR}${file}" - RESULT_VARIABLE rm_resval - OUTPUT_VARIABLE rm_out - ) - IF(NOT ${rm_resval} STREQUAL 0) - MESSAGE(FATAL_ERROR "Problem when removing \"$ENV{DESTDIR}${file}\"") - ENDIF(NOT ${rm_resval} STREQUAL 0) - ELSE(EXISTS "$ENV{DESTDIR}${file}") - MESSAGE(STATUS "File \"$ENV{DESTDIR}${file}\" does not exist.") - - # If file is a broken symbolic link, EXISTS returns false. - # Workaround this bug by attempting to remove the file anyway. - EXECUTE_PROCESS( - COMMAND @CMAKE_COMMAND@ -E remove "$ENV{DESTDIR}${file}" - RESULT_VARIABLE rm_resval - OUTPUT_VARIABLE rm_out - ERROR_QUIET - ) - ENDIF(EXISTS "$ENV{DESTDIR}${file}") -ENDFOREACH(file) diff --git a/cmake/compile.py b/cmake/compile.py deleted file mode 100755 index 4d7b7a9b800a613fad113473449169c2f8e472b5..0000000000000000000000000000000000000000 --- a/cmake/compile.py +++ /dev/null @@ -1,44 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This file is part of jrl-cmakemodules. -# jrl-cmakemodules is free software: you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public License -# as published by the Free Software Foundation, either version 3 of -# the License, or (at your option) any later version. -# -# jrl-cmakemodules is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Lesser Public License for more details. You should have -# received a copy of the GNU Lesser General Public License along with -# jrl-cmakemodules. If not, see <http://www.gnu.org/licenses/>. - -import sys, os, py_compile - -srcdir = sys.argv[1] -builddir = sys.argv[2] -name = sys.argv[3] - -if srcdir[-1] != '/': - srcdir = srcdir + '/' -if builddir[-1] != '/': - builddir = builddir + '/' - -src = srcdir + name -comp = builddir + name + (__debug__ and 'c' or 'o') - -#print("compiling " + src + " into " + comp) - -#os.mkdir(os.path.splittext(comp)[0]) - -try: - py_compile.compile(src, comp, doraise=True) -except Exception, e: - print ("Failed to compile python script: {0}".format (repr (src))) - print ("Exception raised: {0}".format (str(e))) - sys.exit(1) -except: - print ("Failed to compile python script: {0}".format (repr (src))) - sys.exit(1) diff --git a/cmake/compiler.cmake b/cmake/compiler.cmake deleted file mode 100644 index a6820d5a5198df497af5648c8904a919a024a281..0000000000000000000000000000000000000000 --- a/cmake/compiler.cmake +++ /dev/null @@ -1,64 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -INCLUDE(CheckCXXCompilerFlag) - -MACRO(_SETUP_PROJECT_WARNINGS) - # -Wmissing-declarations is disabled for now - # as older GCC version does not support it - # but CMake doest not check for the flag acceptance - # correctly. - - IF(UNIX) - SET(FLAGS -pedantic -Wno-long-long -Wall -Wextra -Wcast-align -Wcast-qual - -Wformat -Wwrite-strings -Wconversion) - FOREACH(FLAG ${FLAGS}) - CHECK_CXX_COMPILER_FLAG(${FLAG} R${FLAG}) - IF(${R${FLAG}}) - SET(WARNING_CXX_FLAGS "${WARNING_CXX_FLAGS} ${FLAG}") - ENDIF(${R${FLAG}}) - ENDFOREACH(FLAG ${FLAGS}) - - IF(NOT DEFINED CXX_DISABLE_WERROR) - SET(WARNING_CXX_FLAGS "-Werror ${WARNING_CXX_FLAGS}") - ENDIF(NOT DEFINED CXX_DISABLE_WERROR) - ENDIF(UNIX) - - # For win32 systems, it is impossible to use Wall, - # especially with boost, which is way too verbose - # The default levels (W3/W4) are enough - # The next macro remove warnings on deprecations due to stl. - IF(WIN32) - SET(WARNING_CXX_FLAGS "-D_SCL_SECURE_NO_WARNINGS -D_CRT_SECURE_NO_WARNINGS") - SET(WARNING_CXX_FLAGS "${WARNING_CXX_FLAGS} -D_CRT_SECURE_NO_DEPRECATE") - ## -- The following warnings are removed to highlight the output - # C4101 The local variable is never used - # removed since happens frequently in headers. - SET(WARNING_CXX_FLAGS "${WARNING_CXX_FLAGS} /wd4101") - # C4250 'class1' : inherits 'class2::member' via dominance - SET(WARNING_CXX_FLAGS "${WARNING_CXX_FLAGS} /wd4250") - # C4251 class 'type' needs to have dll-interface to be used by clients of class 'type2' - # ~ in practice, raised by the classes that have non-dll attribute (such as std::vector) - SET(WARNING_CXX_FLAGS "${WARNING_CXX_FLAGS} /wd4251") - # C4275 non - DLL-interface used as base for DLL-interface - SET(WARNING_CXX_FLAGS "${WARNING_CXX_FLAGS} /wd4275") - # C4355 "this" used in base member initializer list - SET(WARNING_CXX_FLAGS "${WARNING_CXX_FLAGS} /wd4355") - ENDIF(WIN32) - - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${WARNING_CXX_FLAGS}") - - LIST(APPEND LOGGING_WATCHED_VARIABLES WARNING_CXX_FLAGS) -ENDMACRO(_SETUP_PROJECT_WARNINGS) diff --git a/cmake/config.h.cmake b/cmake/config.h.cmake deleted file mode 100644 index f3eec3de8bd36f3669279cebf441742200dd913b..0000000000000000000000000000000000000000 --- a/cmake/config.h.cmake +++ /dev/null @@ -1,18 +0,0 @@ -// Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -// -// This file is part of jrl-cmakemodules. -// jrl-mathtools is free software: you can redistribute it and/or modify -// it under the terms of the GNU Lesser General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// jrl-mathtools is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Lesser General Public License for more details. -// You should have received a copy of the GNU Lesser General Public License -// along with jrl-mathtools. If not, see <http://www.gnu.org/licenses/>. - -#define PACKAGE_NAME "${PROJECT_NAME}" -#define PACKAGE_STRING "${PROJECT_NAME} ${PROJECT_VERSION}" -#define PACKAGE_VERSION "${PROJECT_VERSION}" diff --git a/cmake/config.hh.cmake b/cmake/config.hh.cmake deleted file mode 100644 index c69accf359ab8821a0fc097a66bca21aa3151ee0..0000000000000000000000000000000000000000 --- a/cmake/config.hh.cmake +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -// -// This file is part of jrl-cmakemodules. -// jrl-mathtools is free software: you can redistribute it and/or modify -// it under the terms of the GNU Lesser General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// jrl-mathtools is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Lesser General Public License for more details. -// You should have received a copy of the GNU Lesser General Public License -// along with jrl-mathtools. If not, see <http://www.gnu.org/licenses/>. - -#ifndef @LIBRARY_NAME@_CONFIG_HH -# define @LIBRARY_NAME@_CONFIG_HH - -// Package version (header). -# define @LIBRARY_NAME@_VERSION "@PROJECT_VERSION@" - -// Handle portable symbol export. -// Defining manually which symbol should be exported is required -// under Windows whether MinGW or MSVC is used. -// -// The headers then have to be able to work in two different modes: -// - dllexport when one is building the library, -// - dllimport for clients using the library. -// -// On Linux, set the visibility accordingly. If C++ symbol visibility -// is handled by the compiler, see: http://gcc.gnu.org/wiki/Visibility -# if defined _WIN32 || defined __CYGWIN__ -// On Microsoft Windows, use dllimport and dllexport to tag symbols. -# define @LIBRARY_NAME@_DLLIMPORT __declspec(dllimport) -# define @LIBRARY_NAME@_DLLEXPORT __declspec(dllexport) -# define @LIBRARY_NAME@_DLLLOCAL -# else -// On Linux, for GCC >= 4, tag symbols using GCC extension. -# if __GNUC__ >= 4 -# define @LIBRARY_NAME@_DLLIMPORT __attribute__ ((visibility("default"))) -# define @LIBRARY_NAME@_DLLEXPORT __attribute__ ((visibility("default"))) -# define @LIBRARY_NAME@_DLLLOCAL __attribute__ ((visibility("hidden"))) -# else -// Otherwise (GCC < 4 or another compiler is used), export everything. -# define @LIBRARY_NAME@_DLLIMPORT -# define @LIBRARY_NAME@_DLLEXPORT -# define @LIBRARY_NAME@_DLLLOCAL -# endif // __GNUC__ >= 4 -# endif // defined _WIN32 || defined __CYGWIN__ - -# ifdef @LIBRARY_NAME@_STATIC -// If one is using the library statically, get rid of -// extra information. -# define @LIBRARY_NAME@_DLLAPI -# define @LIBRARY_NAME@_LOCAL -# else -// Depending on whether one is building or using the -// library define DLLAPI to import or export. -# ifdef @EXPORT_SYMBOL@ -# define @LIBRARY_NAME@_DLLAPI @LIBRARY_NAME@_DLLEXPORT -# else -# define @LIBRARY_NAME@_DLLAPI @LIBRARY_NAME@_DLLIMPORT -# endif // @LIBRARY_NAME@_EXPORTS -# define @LIBRARY_NAME@_LOCAL @LIBRARY_NAME@_DLLLOCAL -# endif // @LIBRARY_NAME@_STATIC -#endif //! @LIBRARY_NAME@_CONFIG_HH diff --git a/cmake/cpack.cmake b/cmake/cpack.cmake deleted file mode 100644 index d218455c5069ba921af55f8d38c32036df081448..0000000000000000000000000000000000000000 --- a/cmake/cpack.cmake +++ /dev/null @@ -1,84 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# ADD_CMAKE_DEPENDENCY -# -------------------- -# -# Warning: use on this macro if NECESSARY. -# -# This macro adds CPack dependencies support to the package. -# It should be avoided unless Ubuntu 8.04 packages have to be built. -# -# Please, prefer the use of git-archive for tarball generation -# and debhelper for Debian package generation. -# -MACRO(ADD_CMAKE_DEPENDENCY PKG_CONFIG_STRING) - MESSAGE(STATUS "PKG_CONFIG_STRING: ${PKG_CONFIG_STRING}") - STRING(REGEX MATCH "[^<>= ]+" LIBRARY_NAME "${PKG_CONFIG_STRING}") - # Carefull the space in front of the matching string is important to avoid - # confusion with package name. - STRING(REGEX MATCHALL " [0-9]+.[0-9]+(.[a-z0-9-])*" VERSION "${PKG_CONFIG_STRING}") - _ADD_TO_LIST(CPACK_INTERNAL_CONFIG_REQUIRES "${LIBRARY_NAME}(>=${VERSION})" ",") -ENDMACRO(ADD_CMAKE_DEPENDENCY) - -# SETUP_PROJECT_CPACK -# ------------------- -# -# Warning: use only this macro if NECESSARY. -# -# This macro adds CPack support to the package. -# It should be avoided unless Ubuntu 8.04 packages have to be built. -# -# Please, prefer the use of git-archive for tarball generation -# and debhelper for Debian package generation. -# -MACRO(SETUP_PROJECT_CPACK) - SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY ${PROJECT_DESCRIPTION}) - SET(CPACK_PACKAGE_VENDOR "JRL CNRS/AIST") - SET(CPACK_PACKAGE_VERSION ${PROJECT_VERSION}) - - SET(CPACK_PACKAGE_DESCRIPTION_FILE ${PROJECT_SOURCE_DIR}/README.md) - SET(CPACK_DEBIAN_PACKAGE_MAINTAINER - "Olivier Stasse (olivier.stasse@aist.go.jp)") - - # The following components are regex's to match anywhere (unless anchored) - # in absolute path + filename to find files or directories to be excluded - # from source tarball. - SET(CPACK_SOURCE_IGNORE_FILES - "~$" - "^${PROJECT_SOURCE_DIR}/build/" - "^${PROJECT_SOURCE_DIR}/.git/" - ) - - SET( - CPACK_SOURCE_PACKAGE_FILE_NAME - "${PROJECT_NAME}-src-${PROJECT_VERSION}" - CACHE INTERNAL "tarball basename" - ) - - SET(CPACK_PACKAGE_NAME ${PROJECT_NAME}) - SET(CPACK_BINARY_DEB ON) - SET(CPACK_GENERATOR TGZ) - SET(CPACK_GENERATOR DEB) - SET(CPACK_PACKAGING_INSTALL_PREFIX "/opt/openrobots") - - # Set dependencies - SET(CPACK_DEBIAN_PACKAGE_DEPENDS "${CPACK_INTERNAL_CONFIG_REQUIRES}") - - # CPack SHOULD be called after setting all the variables. - # SETUP_PROJECT_CPACK is supposed to be called only once for a project. - INCLUDE(CPack) - -ENDMACRO(SETUP_PROJECT_CPACK) diff --git a/cmake/createshexe.cmake b/cmake/createshexe.cmake deleted file mode 100644 index 735ac7910f2f493ce76d17a7dd3593c4aee2982b..0000000000000000000000000000000000000000 --- a/cmake/createshexe.cmake +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# CREATE_SH_EXE -# ------------------- -# -# Add a deb target to generate a Debian package using -# git-buildpackage (Linux specific). -# -MACRO(CREATE_SH_EXE EXEC_NAME) - IF(UNIX) - SET(sh_exe_filename "${EXEC_NAME}.sh") - FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/${sh_exe_filename} "#!/bin/sh\nLD_LIBRARY_PATH=$LD_LIBRARY_PATH:${CMAKE_INSTALL_PREFIX}/lib/plugin;export LD_LIBRARY_PATH\n./${EXEC_NAME}") - INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${sh_exe_filename} - DESTINATION bin - PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ - GROUP_EXECUTE GROUP_READ WORLD_EXECUTE WORLD_READ) - ENDIF(UNIX) -ENDMACRO(CREATE_SH_EXE) diff --git a/cmake/debian.cmake b/cmake/debian.cmake deleted file mode 100644 index 8d0eb7bba919879e215299461347d962d9aace48..0000000000000000000000000000000000000000 --- a/cmake/debian.cmake +++ /dev/null @@ -1,121 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# _SETUP_DEBIAN -# ------------------- -# -# Prepare needed file for debian if the target is a shared library. -# -MACRO(_SETUP_DEBIAN) - IF (BUILDING_DEBIAN_PACKAGE) - MESSAGE(STATUS "setup debian. Trying to get the type of ${PROJECT_NAME}") - GET_TARGET_PROPERTY(${PROJECT_NAME}_IS_SHARED_LIBRARY ${PROJECT_NAME} TYPE) - MESSAGE(STATUS "${PROJECT_NAME}_IS_SHARED_LIBRARY:" ${${PROJECT_NAME}_IS_SHARED_LIBRARY}) - - IF(UNIX) - IF (IS_DIRECTORY ${PROJECT_SOURCE_DIR}/debian) - IF(${PROJECT_NAME}_IS_SHARED_LIBRARY STREQUAL "SHARED_LIBRARY") - # Create the install file to be inside ld.so.conf.d - MESSAGE(STATUS "PROJECT_SOURCE_DIR:" ${PROJECT_SOURCE_DIR}) - EXECUTE_PROCESS( - COMMAND ${GIT} describe --abbrev=0 --match=v* HEAD - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} - RESULT_VARIABLE LGIT_DESCRIBE_RESULT - OUTPUT_VARIABLE LGIT_DESCRIBE_OUTPUT - ERROR_VARIABLE LGIT_DESCRIBE_ERROR - OUTPUT_STRIP_TRAILING_WHITESPACE - ) - MESSAGE(STATUS "LGIT_DESCRIBE_OUTPUT:" ${LGIT_DESCRIBE_OUTPUT}) - MESSAGE(STATUS "LGIT_DESCRIBE_ERROR:" ${LGIT_DESCRIBE_ERROR}) - - # From the v[0-9]+.[0-9]+.[0-9]+ version remove the v in prefix. - STRING(REGEX REPLACE "^v" "" LPROJECT_RELEASE_VERSION "${LGIT_DESCRIBE_OUTPUT}") - - # Considers the file *.release.version - SET(file_release_version "${PROJECT_SOURCE_DIR}/debian/${PROJECT_NAME}.release.version") - - MESSAGE(STATUS "file_release_version: ${file_release_version}") - MESSAGE(STATUS "Everything sounds great: ${LPROJECT_RELEASE_VERSION}") - # If this is not a git version. - IF(LPROJECT_RELEASE_VERSION STREQUAL "" ) - # If the file exists - MESSAGE(STATUS "Read the release version file") - IF(EXISTS ${file_release_version}) - # Use it. This is the release version. - FILE(STRINGS ${file_release_version} LPROJECT_RELEASE_VERSION) - ENDIF(EXISTS ${file_release_version}) - # if this is - ELSE(LPROJECT_RELEASE_VERSION STREQUAL "") - # Then create the containing the release version. - MESSAGE(STATUS "Create the release version file") - FILE(WRITE ${file_release_version} "${LPROJECT_RELEASE_VERSION}") - - ENDIF(LPROJECT_RELEASE_VERSION STREQUAL "" ) - - SET(install_file_name_src "debian/lib${PROJECT_NAME}${LPROJECT_RELEASE_VERSION}.install.cmake") - - MESSAGE(STATUS "install_file_name_src :" ${install_file_name_src}) - IF(EXISTS ${PROJECT_SOURCE_DIR}/${install_file_name_src}) - SET(install_file_name_dest "debian/lib${PROJECT_NAME}${LPROJECT_RELEASE_VERSION}.install") - EXECUTE_PROCESS( - COMMAND cp ${install_file_name_src} ${install_file_name_dest} - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} - ) - - MESSAGE(STATUS "install_file_name :" ${install_file_name_dest}) - FILE(APPEND ${install_file_name_dest} - "/etc/ld.so.conf.d/*\n" - ) - # Create the file to be installed. - SET(install_file_name "debian/lib${PROJECT_NAME}.conf") - FILE(WRITE ${install_file_name} - "${CMAKE_INSTALL_PREFIX}/lib" - ) - MESSAGE(STATUS "install_file_name :" ${install_file_name}) - INSTALL(FILES ${install_file_name} DESTINATION /etc/ld.so.conf.d ) - - ENDIF(EXISTS ${PROJECT_SOURCE_DIR}/${install_file_name_src}) - ENDIF(${PROJECT_NAME}_IS_SHARED_LIBRARY STREQUAL "SHARED_LIBRARY") - ENDIF(IS_DIRECTORY ${PROJECT_SOURCE_DIR}/debian) - ENDIF(UNIX) - ENDIF(BUILDING_DEBIAN_PACKAGE) -ENDMACRO(_SETUP_DEBIAN) - -# _SETUP_PROJECT_DEB -# ------------------- -# -# Add a deb target to generate a Debian package using -# git-buildpackage (Linux specific). -# - -MACRO(_SETUP_PROJECT_DEB) - IF(UNIX AND NOT APPLE) - ADD_CUSTOM_TARGET(deb-src - COMMAND - git-buildpackage - --git-debian-branch=debian - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} - COMMENT "Generating source Debian package..." - ) - ADD_CUSTOM_TARGET(deb - COMMAND - git-buildpackage - --git-debian-branch=debian --git-builder="debuild -S -i.git -I.git" - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} - COMMENT "Generating Debian package..." - ) - ENDIF(UNIX AND NOT APPLE) -ENDMACRO(_SETUP_PROJECT_DEB) - diff --git a/cmake/deprecated.hh.cmake b/cmake/deprecated.hh.cmake deleted file mode 100644 index b0d14712782cf66995bcb8d57283372278406d4e..0000000000000000000000000000000000000000 --- a/cmake/deprecated.hh.cmake +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see <http://www.gnu.org/licenses/>. - -#ifndef @PACKAGE_CPPNAME@_DEPRECATED_HH -# define @PACKAGE_CPPNAME@_DEPRECATED_HH - -// Define a suffix which can be used to tag a type, a function or a a -// variable as deprecated (i.e. it will emit a warning when using it). -// -// Tagging a function as deprecated: -// void foo () @PACKAGE_CPPNAME@_DEPRECATED; -// -// Tagging a type as deprecated: -// class Foo {}; -// typedef Foo Bar @PACKAGE_CPPNAME@_DEPRECATED; -// -// Tagging a variable as deprecated: -// int a @PACKAGE_CPPNAME@_DEPRECATED = 0; -// -// The use of a macro is required as this is /not/ a standardized -// feature of C++ language or preprocessor, even if most of the -// compilers support it. -# ifdef __GNUC__ -# define @PACKAGE_CPPNAME@_DEPRECATED __attribute__ ((deprecated)) -# else -# ifdef _MSC_VER -# define @PACKAGE_CPPNAME@_DEPRECATED __declspec (deprecated) -# else -// If the compiler is not recognized, drop the feature. -# define @PACKAGE_CPPNAME@_DEPRECATED /* nothing */ -# endif // __MSVC__ -# endif // __GNUC__ - -#endif //! @PACKAGE_CPPNAME@_DEPRECATED_HH diff --git a/cmake/dist.cmake b/cmake/dist.cmake deleted file mode 100644 index 381a3aac3256574b02254feff3b67dfb493c4544..0000000000000000000000000000000000000000 --- a/cmake/dist.cmake +++ /dev/null @@ -1,76 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# _SETUP_PROJECT_DIST -# ------------------- -# -# Add a dist target to generate a tarball using git-archive. -# -# Linux specific: use git-archive-all.sh to obtain a recursive -# git-archive on the project's submodule. -# Please note that git-archive-all.sh is not carefully written -# and create a temporary file in the source directory -# (which is then moved to the build directory). -MACRO(_SETUP_PROJECT_DIST) - IF(UNIX) - FIND_PROGRAM(TAR tar) - FIND_PROGRAM(GPG gpg) - - ADD_CUSTOM_TARGET(distdir - COMMAND - rm -f /tmp/${PROJECT_NAME}.tar - && ${PROJECT_SOURCE_DIR}/cmake/git-archive-all.sh - --prefix ${PROJECT_NAME}-${PROJECT_VERSION}/ ${PROJECT_NAME}.tar - && cd ${CMAKE_BINARY_DIR}/ - && (test -d ${PROJECT_NAME}-${PROJECT_VERSION} - && find ${PROJECT_NAME}-${PROJECT_VERSION}/ -type d -print0 - | xargs -0 chmod a+w || true) - && rm -rf ${PROJECT_NAME}-${PROJECT_VERSION}/ - && ${TAR} xf ${PROJECT_SOURCE_DIR}/${PROJECT_NAME}.tar - && echo "${PROJECT_VERSION}" > - ${CMAKE_BINARY_DIR}/${PROJECT_NAME}-${PROJECT_VERSION}/.version - && ${PROJECT_SOURCE_DIR}/cmake/gitlog-to-changelog > - ${CMAKE_BINARY_DIR}/${PROJECT_NAME}-${PROJECT_VERSION}/ChangeLog - && rm -f ${PROJECT_SOURCE_DIR}/${PROJECT_NAME}.tar - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} - COMMENT "Generating dist directory..." - ) - - ADD_CUSTOM_TARGET(dist - COMMAND - ${TAR} czf ${PROJECT_NAME}-${PROJECT_VERSION}.tar.gz - ${PROJECT_NAME}-${PROJECT_VERSION}/ - && ${GPG} --detach-sign --armor -o - ${CMAKE_BINARY_DIR}/${PROJECT_NAME}-${PROJECT_VERSION}.tar.gz.sig - ${CMAKE_BINARY_DIR}/${PROJECT_NAME}-${PROJECT_VERSION}.tar.gz - && rm -rf ${CMAKE_BINARY_DIR}/${PROJECT_NAME}-${PROJECT_VERSION}/ - WORKING_DIRECTORY ${CMAKE_BINARY_DIR} - COMMENT "Generating tarball..." - ) - - ADD_CUSTOM_TARGET(distorig - COMMAND - cmake -E copy ${PROJECT_NAME}-${PROJECT_VERSION}.tar.gz - ${PROJECT_NAME}-${PROJECT_VERSION}.orig.tar.gz - WORKING_DIRECTORY ${CMAKE_BINARY_DIR} - COMMENT "Generating orig tarball..." - ) - - ADD_DEPENDENCIES(dist distdir) - ADD_DEPENDENCIES(distorig dist) - ELSE() - #FIXME: what to do here? - ENDIF() -ENDMACRO(_SETUP_PROJECT_DIST) diff --git a/cmake/distcheck.cmake b/cmake/distcheck.cmake deleted file mode 100644 index a2e61092f2106e7b646e39a12d81e784bffffedc..0000000000000000000000000000000000000000 --- a/cmake/distcheck.cmake +++ /dev/null @@ -1,105 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# DISTCHECK_SETUP -# --------------- -# -# Add a distcheck target to check the generated tarball. -# -# This step calls `make distdir' to generate a copy of the project without -# the git history and with the `.version' file (as it will be when an user -# will retrieve a stable version). -# Then: -# - create _build and _inst to respectively create a build and an installation -# directory. -# - copy the CMakeCache.txt file. -# - run cmake with _inst as the installation prefix -# - run make, make check, make install and make uninstall -# - remove _build and _inst. -# -# During the compilation phase, all files in the source tree are modified -# to *not* be writeable to detect bad compilation steps which tries to modify -# the source tree. Permissions are reverted at the end of the check. -# -MACRO(DISTCHECK_SETUP) - IF(UNIX) - FIND_PROGRAM(SED sed) - SET(INSTDIR ${CMAKE_BINARY_DIR}/${PROJECT_NAME}-${PROJECT_VERSION}/_inst) - ADD_CUSTOM_TARGET(distcheck - COMMAND - find . -type d -print0 | xargs -0 chmod a-w - && chmod u+w . && rm -rf _build _inst && mkdir -p _build && mkdir -p _inst - && chmod u+rwx _build _inst && chmod a-w . - && cp ${CMAKE_BINARY_DIR}/CMakeCache.txt _build/ - && ${SED} -i -e "'s|CMAKE_CACHEFILE_DIR:INTERNAL=.\\+||g'" - -e "'s|CMAKE_HOME_DIRECTORY:INTERNAL=.\\+||g'" - -e "'s|CMAKE_CXX_COMPILER:FILEPATH=.\\+||g'" - -e "'s|CMAKE_CXX_FLAGS:STRING=.\\+||g'" - -e "'s|CMAKE_CXX_FLAGS_DEBUG:STRING=.\\+||g'" - -e "'s|CMAKE_CXX_FLAGS_MINSIZEREL:STRING=.\\+||g'" - -e "'s|CMAKE_CXX_FLAGS_RELEASE:STRING=.\\+||g'" - -e "'s|CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=.\\+||g'" - -e "'s|CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=.\\+||g'" - -e "'s|CMAKE_CXX_COMPILER_WORKS:INTERNAL=.\\+||g'" - -e "'s|CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=.\\+||g'" - -e "'s|CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=.\\+||g'" - -e "'s|CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=.\\+||g'" - -e "'s|CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=.\\+||g'" - -e "'s|CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=.\\+||g'" - -e "'s|CMAKE_DETERMINE_CXX_ABI_COMPILED:INTERNAL=.\\+||g'" - -e "'s|CMAKE_C_COMPILER:FILEPATH=.\\+||g'" - -e "'s|CMAKE_C_FLAGS:STRING=.\\+||g'" - -e "'s|CMAKE_C_FLAGS_DEBUG:STRING=.\\+||g'" - -e "'s|CMAKE_C_FLAGS_MINSIZEREL:STRING=.\\+||g'" - -e "'s|CMAKE_C_FLAGS_RELEASE:STRING=.\\+||g'" - -e "'s|CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=.\\+||g'" - -e "'s|CMAKE_C_COMPILER-ADVANCED:INTERNAL=.\\+||g'" - -e "'s|CMAKE_C_FLAGS-ADVANCED:INTERNAL=.\\+||g'" - -e "'s|CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=.\\+||g'" - -e "'s|CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=.\\+||g'" - -e "'s|CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=.\\+||g'" - -e "'s|CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=.\\+||g'" - -e "'s|CMAKE_DETERMINE_C_ABI_COMPILED:INTERNAL=.\\+||g'" - _build/CMakeCache.txt - && cd _build - && cmake -DCMAKE_INSTALL_PREFIX=${INSTDIR} .. || cmake .. - || (echo "ERROR: the cmake configuration failed." && false) - && make - || (echo "ERROR: the compilation failed." && false) - && make test - || (echo "ERROR: the test suite failed." && false) - && make install - || (echo "ERROR: the install target failed." && false) - && make uninstall - || (echo "ERROR: the uninstall target failed." && false) - && test x`find ${INSTDIR} -type f | wc -l` = x0 - || (echo "ERROR: the uninstall target does not work." && false) - && make clean - || (echo "ERROR: the clean target failed." && false) - && cd ${CMAKE_BINARY_DIR}/${PROJECT_NAME}-${PROJECT_VERSION} - && chmod u+w . _build _inst && rm -rf _build _inst - && find . -type d -print0 | xargs -0 chmod u+w - && echo "==============================================================" - && echo "${PROJECT_NAME}-${PROJECT_VERSION}" - "is ready for distribution." - && echo "==============================================================" - WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/${PROJECT_NAME}-${PROJECT_VERSION} - COMMENT "Checking generated tarball..." - ) - ADD_DEPENDENCIES(distcheck distdir) - ELSE() - #FIXME: what to do here? - ENDIF() -ENDMACRO() diff --git a/cmake/doxygen.cmake b/cmake/doxygen.cmake deleted file mode 100644 index ac3d721c66f6ee8201736933c5421a35964a6bf0..0000000000000000000000000000000000000000 --- a/cmake/doxygen.cmake +++ /dev/null @@ -1,128 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# _SETUP_PROJECT_DOCUMENTATION -# ---------------------------- -# -# Look for Doxygen, add a custom rule to generate the documentation -# and install the documentation properly. -# -MACRO(_SETUP_PROJECT_DOCUMENTATION) - # Search for Doxygen. - FIND_PACKAGE(Doxygen) - - IF(NOT DOXYGEN_FOUND) - MESSAGE(FATAL_ERROR "Failed to find Doxygen.") - ENDIF(NOT DOXYGEN_FOUND) - - # Search for Perl. - FIND_PROGRAM(PERL perl DOC "the Perl interpreter") - IF(NOT PERL) - MESSAGE(SEND_ERROR "Failed to find Perl.") - ENDIF(NOT PERL) - - # Generate variable to be substitued in Doxyfile.in - # for dot use. - IF(DOXYGEN_DOT_FOUND) - SET(HAVE_DOT YES) - ELSE(DOXYGEN_DOT_FOUND) - SET(HAVE_DOT NO) - ENDIF(DOXYGEN_DOT_FOUND) - - # Teach CMake how to generate the documentation. - IF(MSVC) - # FIXME: it is impossible to trigger documentation installation - # at install, so put the target in ALL instead. - ADD_CUSTOM_TARGET(doc ALL - COMMAND ${DOXYGEN_EXECUTABLE} Doxyfile - WORKING_DIRECTORY doc - COMMENT "Generating Doxygen documentation" - ) - ELSE(MSVC) - ADD_CUSTOM_TARGET(doc - COMMAND ${DOXYGEN_EXECUTABLE} Doxyfile - WORKING_DIRECTORY doc - COMMENT "Generating Doxygen documentation" - ) - - INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_MAKE_PROGRAM} doc)") - ENDIF(MSVC) - - ADD_CUSTOM_COMMAND( - OUTPUT - ${CMAKE_CURRENT_BINARY_DIR}/doc/${PROJECT_NAME}.doxytag - ${CMAKE_CURRENT_BINARY_DIR}/doc/doxygen-html - COMMAND ${DOXYGEN_EXECUTABLE} Doxyfile - WORKING_DIRECTORY doc - COMMENT "Generating Doxygen documentation" - ) - - # Clean generated files. - SET_PROPERTY( - DIRECTORY APPEND PROPERTY - ADDITIONAL_MAKE_CLEAN_FILES - ${CMAKE_CURRENT_BINARY_DIR}/doc/${PROJECT_NAME}.doxytag - ${CMAKE_CURRENT_BINARY_DIR}/doc/doxygen.log - ${CMAKE_CURRENT_BINARY_DIR}/doc/doxygen-html - ) - - # Install generated files. - INSTALL( - FILES ${CMAKE_CURRENT_BINARY_DIR}/doc/${PROJECT_NAME}.doxytag - DESTINATION ${CMAKE_INSTALL_DOCDIR}/doxygen-html) - INSTALL(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/doc/doxygen-html - DESTINATION ${CMAKE_INSTALL_DOCDIR}) - - IF(EXISTS ${PROJECT_SOURCE_DIR}/doc/pictures) - INSTALL(DIRECTORY ${PROJECT_SOURCE_DIR}/doc/pictures - DESTINATION ${CMAKE_INSTALL_DOCDIR}/doxygen-html) - ENDIF(EXISTS ${PROJECT_SOURCE_DIR}/doc/pictures) - - LIST(APPEND LOGGING_WATCHED_VARIABLES - DOXYGEN_SKIP_DOT - DOXYGEN_EXECUTABLE - DOXYGEN_FOUND - DOXYGEN_DOT_EXECUTABLE - DOXYGEN_DOT_FOUND - DOXYGEN_DOT_PATH - ) -ENDMACRO(_SETUP_PROJECT_DOCUMENTATION) - -# _SETUP_PROJECT_DOCUMENTATION_FINALIZE -# ------------------------------------- -# -# Post-processing for the documentation generation macro. -# -# Doxyfile.extra and Doxyfile files are generated at the end to allow -# the replacement of user-defined variables. -# -MACRO(_SETUP_PROJECT_DOCUMENTATION_FINALIZE) - # Generate Doxyfile.extra. - CONFIGURE_FILE( - ${PROJECT_SOURCE_DIR}/doc/Doxyfile.extra.in - ${CMAKE_CURRENT_BINARY_DIR}/doc/Doxyfile.extra - @ONLY - ) - # Generate Doxyfile. - CONFIGURE_FILE( - ${PROJECT_SOURCE_DIR}/cmake/doxygen/Doxyfile.in - ${CMAKE_CURRENT_BINARY_DIR}/doc/Doxyfile - @ONLY - ) - FILE(STRINGS ${CMAKE_CURRENT_BINARY_DIR}/doc/Doxyfile.extra doxyfile_extra) - FOREACH(x ${doxyfile_extra}) - FILE(APPEND ${CMAKE_CURRENT_BINARY_DIR}/doc/Doxyfile ${x} "\n") - ENDFOREACH(x in doxyfile_extra) -ENDMACRO(_SETUP_PROJECT_DOCUMENTATION_FINALIZE) \ No newline at end of file diff --git a/cmake/doxygen/Doxyfile.in b/cmake/doxygen/Doxyfile.in deleted file mode 100644 index 98de280ebb3ccb1bd4f46b6e9d37a7445a68212e..0000000000000000000000000000000000000000 --- a/cmake/doxygen/Doxyfile.in +++ /dev/null @@ -1,1565 +0,0 @@ -# Doxyfile 1.6.3 - -# This file describes the settings to be used by the documentation system -# doxygen (www.doxygen.org) for a project -# -# All text after a hash (#) is considered a comment and will be ignored -# The format is: -# TAG = value [value, ...] -# For lists items can also be appended using: -# TAG += value [value, ...] -# Values that contain spaces should be placed between quotes (" ") - -#--------------------------------------------------------------------------- -# Project related configuration options -#--------------------------------------------------------------------------- - -# This tag specifies the encoding used for all characters in the config file -# that follow. The default is UTF-8 which is also the encoding used for all -# text before the first occurrence of this tag. Doxygen uses libiconv (or the -# iconv built into libc) for the transcoding. See -# http://www.gnu.org/software/libiconv for the list of possible encodings. - -DOXYFILE_ENCODING = UTF-8 - -# The PROJECT_NAME tag is a single word (or a sequence of words surrounded -# by quotes) that should identify the project. - -PROJECT_NAME = "@PROJECT_NAME@" - -# The PROJECT_NUMBER tag can be used to enter a project or revision number. -# This could be handy for archiving the generated documentation or -# if some version control system is used. - -PROJECT_NUMBER = "@PROJECT_VERSION@" - -# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) -# base path where the generated documentation will be put. -# If a relative path is entered, it will be relative to the location -# where doxygen was started. If left blank the current directory will be used. - -OUTPUT_DIRECTORY = . - -# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create -# 4096 sub-directories (in 2 levels) under the output directory of each output -# format and will distribute the generated files over these directories. -# Enabling this option can be useful when feeding doxygen a huge amount of -# source files, where putting all generated files in the same directory would -# otherwise cause performance problems for the file system. - -CREATE_SUBDIRS = NO - -# The OUTPUT_LANGUAGE tag is used to specify the language in which all -# documentation generated by doxygen is written. Doxygen will use this -# information to generate all constant output in the proper language. -# The default language is English, other supported languages are: -# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, -# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German, -# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English -# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, -# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrilic, Slovak, -# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese. - -OUTPUT_LANGUAGE = English - -# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will -# include brief member descriptions after the members that are listed in -# the file and class documentation (similar to JavaDoc). -# Set to NO to disable this. - -BRIEF_MEMBER_DESC = YES - -# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend -# the brief description of a member or function before the detailed description. -# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the -# brief descriptions will be completely suppressed. - -REPEAT_BRIEF = YES - -# This tag implements a quasi-intelligent brief description abbreviator -# that is used to form the text in various listings. Each string -# in this list, if found as the leading text of the brief description, will be -# stripped from the text and the result after processing the whole list, is -# used as the annotated text. Otherwise, the brief description is used as-is. -# If left blank, the following values are used ("$name" is automatically -# replaced with the name of the entity): "The $name class" "The $name widget" -# "The $name file" "is" "provides" "specifies" "contains" -# "represents" "a" "an" "the" - -ABBREVIATE_BRIEF = "The $name class" \ - "The $name widget" \ - "The $name file" \ - is \ - provides \ - specifies \ - contains \ - represents \ - a \ - an \ - the - -# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then -# Doxygen will generate a detailed section even if there is only a brief -# description. - -ALWAYS_DETAILED_SEC = NO - -# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all -# inherited members of a class in the documentation of that class as if those -# members were ordinary class members. Constructors, destructors and assignment -# operators of the base classes will not be shown. - -INLINE_INHERITED_MEMB = NO - -# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full -# path before files name in the file list and in the header files. If set -# to NO the shortest path that makes the file name unique will be used. - -FULL_PATH_NAMES = NO - -# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag -# can be used to strip a user-defined part of the path. Stripping is -# only done if one of the specified strings matches the left-hand part of -# the path. The tag can be used to show relative paths in the file list. -# If left blank the directory from which doxygen is run is used as the -# path to strip. - -STRIP_FROM_PATH = @PROJECT_SOURCE_DIR@ - -# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of -# the path mentioned in the documentation of a class, which tells -# the reader which header file to include in order to use a class. -# If left blank only the name of the header file containing the class -# definition is used. Otherwise one should specify the include paths that -# are normally passed to the compiler using the -I flag. - -STRIP_FROM_INC_PATH = @PROJECT_SOURCE_DIR@/src @PROJECT_SOURCE_DIR@/include - -# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter -# (but less readable) file names. This can be useful is your file systems -# doesn't support long names like on DOS, Mac, or CD-ROM. - -SHORT_NAMES = YES - -# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen -# will interpret the first line (until the first dot) of a JavaDoc-style -# comment as the brief description. If set to NO, the JavaDoc -# comments will behave just like regular Qt-style comments -# (thus requiring an explicit @brief command for a brief description.) - -JAVADOC_AUTOBRIEF = YES - -# If the QT_AUTOBRIEF tag is set to YES then Doxygen will -# interpret the first line (until the first dot) of a Qt-style -# comment as the brief description. If set to NO, the comments -# will behave just like regular Qt-style comments (thus requiring -# an explicit \brief command for a brief description.) - -QT_AUTOBRIEF = NO - -# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen -# treat a multi-line C++ special comment block (i.e. a block of //! or /// -# comments) as a brief description. This used to be the default behaviour. -# The new default is to treat a multi-line C++ comment block as a detailed -# description. Set this tag to YES if you prefer the old behaviour instead. - -MULTILINE_CPP_IS_BRIEF = NO - -# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented -# member inherits the documentation from any documented member that it -# re-implements. - -INHERIT_DOCS = YES - -# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce -# a new page for each member. If set to NO, the documentation of a member will -# be part of the file/class/namespace that contains it. - -SEPARATE_MEMBER_PAGES = NO - -# The TAB_SIZE tag can be used to set the number of spaces in a tab. -# Doxygen uses this value to replace tabs by spaces in code fragments. - -TAB_SIZE = 2 - -# This tag can be used to specify a number of aliases that acts -# as commands in the documentation. An alias has the form "name=value". -# For example adding "sideeffect=\par Side Effects:\n" will allow you to -# put the command \sideeffect (or @sideeffect) in the documentation, which -# will result in a user-defined paragraph with heading "Side Effects:". -# You can put \n's in the value part of an alias to insert newlines. - -ALIASES = - -# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C -# sources only. Doxygen will then generate output that is more tailored for C. -# For instance, some of the names that are used will be different. The list -# of all members will be omitted, etc. - -OPTIMIZE_OUTPUT_FOR_C = NO - -# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java -# sources only. Doxygen will then generate output that is more tailored for -# Java. For instance, namespaces will be presented as packages, qualified -# scopes will look different, etc. - -OPTIMIZE_OUTPUT_JAVA = NO - -# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran -# sources only. Doxygen will then generate output that is more tailored for -# Fortran. - -OPTIMIZE_FOR_FORTRAN = NO - -# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL -# sources. Doxygen will then generate output that is tailored for -# VHDL. - -OPTIMIZE_OUTPUT_VHDL = NO - -# Doxygen selects the parser to use depending on the extension of the files it parses. -# With this tag you can assign which parser to use for a given extension. -# Doxygen has a built-in mapping, but you can override or extend it using this tag. -# The format is ext=language, where ext is a file extension, and language is one of -# the parsers supported by doxygen: IDL, Java, Javascript, C#, C, C++, D, PHP, -# Objective-C, Python, Fortran, VHDL, C, C++. For instance to make doxygen treat -# .inc files as Fortran files (default is PHP), and .f files as C (default is Fortran), -# use: inc=Fortran f=C. Note that for custom extensions you also need to set FILE_PATTERNS otherwise the files are not read by doxygen. - -EXTENSION_MAPPING = - -# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want -# to include (a tag file for) the STL sources as input, then you should -# set this tag to YES in order to let doxygen match functions declarations and -# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. -# func(std::string) {}). This also make the inheritance and collaboration -# diagrams that involve STL classes more complete and accurate. - -BUILTIN_STL_SUPPORT = YES - -# If you use Microsoft's C++/CLI language, you should set this option to YES to -# enable parsing support. - -CPP_CLI_SUPPORT = NO - -# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only. -# Doxygen will parse them like normal C++ but will assume all classes use public -# instead of private inheritance when no explicit protection keyword is present. - -SIP_SUPPORT = NO - -# For Microsoft's IDL there are propget and propput attributes to indicate getter -# and setter methods for a property. Setting this option to YES (the default) -# will make doxygen to replace the get and set methods by a property in the -# documentation. This will only work if the methods are indeed getting or -# setting a simple type. If this is not the case, or you want to show the -# methods anyway, you should set this option to NO. - -IDL_PROPERTY_SUPPORT = YES - -# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC -# tag is set to YES, then doxygen will reuse the documentation of the first -# member in the group (if any) for the other members of the group. By default -# all members of a group must be documented explicitly. - -DISTRIBUTE_GROUP_DOC = NO - -# Set the SUBGROUPING tag to YES (the default) to allow class member groups of -# the same type (for instance a group of public functions) to be put as a -# subgroup of that type (e.g. under the Public Functions section). Set it to -# NO to prevent subgrouping. Alternatively, this can be done per class using -# the \nosubgrouping command. - -SUBGROUPING = YES - -# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum -# is documented as struct, union, or enum with the name of the typedef. So -# typedef struct TypeS {} TypeT, will appear in the documentation as a struct -# with name TypeT. When disabled the typedef will appear as a member of a file, -# namespace, or class. And the struct will be named TypeS. This can typically -# be useful for C code in case the coding convention dictates that all compound -# types are typedef'ed and only the typedef is referenced, never the tag name. - -TYPEDEF_HIDES_STRUCT = NO - -# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to -# determine which symbols to keep in memory and which to flush to disk. -# When the cache is full, less often used symbols will be written to disk. -# For small to medium size projects (<1000 input files) the default value is -# probably good enough. For larger projects a too small cache size can cause -# doxygen to be busy swapping symbols to and from disk most of the time -# causing a significant performance penality. -# If the system has enough physical memory increasing the cache will improve the -# performance by keeping more symbols in memory. Note that the value works on -# a logarithmic scale so increasing the size by one will rougly double the -# memory usage. The cache size is given by this formula: -# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0, -# corresponding to a cache size of 2^16 = 65536 symbols - -SYMBOL_CACHE_SIZE = 0 - -#--------------------------------------------------------------------------- -# Build related configuration options -#--------------------------------------------------------------------------- - -# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in -# documentation are documented, even if no documentation was available. -# Private class members and static file members will be hidden unless -# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES - -EXTRACT_ALL = YES - -# If the EXTRACT_PRIVATE tag is set to YES all private members of a class -# will be included in the documentation. - -EXTRACT_PRIVATE = NO - -# If the EXTRACT_STATIC tag is set to YES all static members of a file -# will be included in the documentation. - -EXTRACT_STATIC = YES - -# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) -# defined locally in source files will be included in the documentation. -# If set to NO only classes defined in header files are included. - -EXTRACT_LOCAL_CLASSES = YES - -# This flag is only useful for Objective-C code. When set to YES local -# methods, which are defined in the implementation section but not in -# the interface are included in the documentation. -# If set to NO (the default) only methods in the interface are included. - -EXTRACT_LOCAL_METHODS = NO - -# If this flag is set to YES, the members of anonymous namespaces will be -# extracted and appear in the documentation as a namespace called -# 'anonymous_namespace{file}', where file will be replaced with the base -# name of the file that contains the anonymous namespace. By default -# anonymous namespace are hidden. - -EXTRACT_ANON_NSPACES = NO - -# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all -# undocumented members of documented classes, files or namespaces. -# If set to NO (the default) these members will be included in the -# various overviews, but no documentation section is generated. -# This option has no effect if EXTRACT_ALL is enabled. - -HIDE_UNDOC_MEMBERS = NO - -# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all -# undocumented classes that are normally visible in the class hierarchy. -# If set to NO (the default) these classes will be included in the various -# overviews. This option has no effect if EXTRACT_ALL is enabled. - -HIDE_UNDOC_CLASSES = NO - -# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all -# friend (class|struct|union) declarations. -# If set to NO (the default) these declarations will be included in the -# documentation. - -HIDE_FRIEND_COMPOUNDS = NO - -# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any -# documentation blocks found inside the body of a function. -# If set to NO (the default) these blocks will be appended to the -# function's detailed documentation block. - -HIDE_IN_BODY_DOCS = NO - -# The INTERNAL_DOCS tag determines if documentation -# that is typed after a \internal command is included. If the tag is set -# to NO (the default) then the documentation will be excluded. -# Set it to YES to include the internal documentation. - -INTERNAL_DOCS = NO - -# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate -# file names in lower-case letters. If set to YES upper-case letters are also -# allowed. This is useful if you have classes or files whose names only differ -# in case and if your file system supports case sensitive file names. Windows -# and Mac users are advised to set this option to NO. - -CASE_SENSE_NAMES = NO - -# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen -# will show members with their full class and namespace scopes in the -# documentation. If set to YES the scope will be hidden. - -HIDE_SCOPE_NAMES = NO - -# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen -# will put a list of the files that are included by a file in the documentation -# of that file. - -SHOW_INCLUDE_FILES = YES - -# If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen -# will list include files with double quotes in the documentation -# rather than with sharp brackets. - -FORCE_LOCAL_INCLUDES = NO - -# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] -# is inserted in the documentation for inline members. - -INLINE_INFO = YES - -# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen -# will sort the (detailed) documentation of file and class members -# alphabetically by member name. If set to NO the members will appear in -# declaration order. - -SORT_MEMBER_DOCS = YES - -# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the -# brief documentation of file, namespace and class members alphabetically -# by member name. If set to NO (the default) the members will appear in -# declaration order. - -SORT_BRIEF_DOCS = NO - -# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the (brief and detailed) documentation of class members so that constructors and destructors are listed first. If set to NO (the default) the constructors will appear in the respective orders defined by SORT_MEMBER_DOCS and SORT_BRIEF_DOCS. This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO. - -SORT_MEMBERS_CTORS_1ST = NO - -# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the -# hierarchy of group names into alphabetical order. If set to NO (the default) -# the group names will appear in their defined order. - -SORT_GROUP_NAMES = NO - -# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be -# sorted by fully-qualified names, including namespaces. If set to -# NO (the default), the class list will be sorted only by class name, -# not including the namespace part. -# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. -# Note: This option applies only to the class list, not to the -# alphabetical list. - -SORT_BY_SCOPE_NAME = NO - -# The GENERATE_TODOLIST tag can be used to enable (YES) or -# disable (NO) the todo list. This list is created by putting \todo -# commands in the documentation. - -GENERATE_TODOLIST = YES - -# The GENERATE_TESTLIST tag can be used to enable (YES) or -# disable (NO) the test list. This list is created by putting \test -# commands in the documentation. - -GENERATE_TESTLIST = YES - -# The GENERATE_BUGLIST tag can be used to enable (YES) or -# disable (NO) the bug list. This list is created by putting \bug -# commands in the documentation. - -GENERATE_BUGLIST = YES - -# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or -# disable (NO) the deprecated list. This list is created by putting -# \deprecated commands in the documentation. - -GENERATE_DEPRECATEDLIST= YES - -# The ENABLED_SECTIONS tag can be used to enable conditional -# documentation sections, marked by \if sectionname ... \endif. - -ENABLED_SECTIONS = - -# The MAX_INITIALIZER_LINES tag determines the maximum number of lines -# the initial value of a variable or define consists of for it to appear in -# the documentation. If the initializer consists of more lines than specified -# here it will be hidden. Use a value of 0 to hide initializers completely. -# The appearance of the initializer of individual variables and defines in the -# documentation can be controlled using \showinitializer or \hideinitializer -# command in the documentation regardless of this setting. - -MAX_INITIALIZER_LINES = 30 - -# Set the SHOW_USED_FILES tag to NO to disable the list of files generated -# at the bottom of the documentation of classes and structs. If set to YES the -# list will mention the files that were used to generate the documentation. - -SHOW_USED_FILES = NO - -# If the sources in your project are distributed over multiple directories -# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy -# in the documentation. The default is NO. - -SHOW_DIRECTORIES = NO - -# Set the SHOW_FILES tag to NO to disable the generation of the Files page. -# This will remove the Files entry from the Quick Index and from the -# Folder Tree View (if specified). The default is YES. - -SHOW_FILES = YES - -# Set the SHOW_NAMESPACES tag to NO to disable the generation of the -# Namespaces page. -# This will remove the Namespaces entry from the Quick Index -# and from the Folder Tree View (if specified). The default is YES. - -SHOW_NAMESPACES = YES - -# The FILE_VERSION_FILTER tag can be used to specify a program or script that -# doxygen should invoke to get the current version for each file (typically from -# the version control system). Doxygen will invoke the program by executing (via -# popen()) the command <command> <input-file>, where <command> is the value of -# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file -# provided by doxygen. Whatever the program writes to standard output -# is used as the file version. See the manual for examples. - -FILE_VERSION_FILTER = - -# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed by -# doxygen. The layout file controls the global structure of the generated output files -# in an output format independent way. The create the layout file that represents -# doxygen's defaults, run doxygen with the -l option. You can optionally specify a -# file name after the option, if omitted DoxygenLayout.xml will be used as the name -# of the layout file. - -LAYOUT_FILE = - -#--------------------------------------------------------------------------- -# configuration options related to warning and progress messages -#--------------------------------------------------------------------------- - -# The QUIET tag can be used to turn on/off the messages that are generated -# by doxygen. Possible values are YES and NO. If left blank NO is used. - -QUIET = YES - -# The WARNINGS tag can be used to turn on/off the warning messages that are -# generated by doxygen. Possible values are YES and NO. If left blank -# NO is used. - -WARNINGS = YES - -# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings -# for undocumented members. If EXTRACT_ALL is set to YES then this flag will -# automatically be disabled. - -WARN_IF_UNDOCUMENTED = YES - -# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for -# potential errors in the documentation, such as not documenting some -# parameters in a documented function, or documenting parameters that -# don't exist or using markup commands wrongly. - -WARN_IF_DOC_ERROR = YES - -# This WARN_NO_PARAMDOC option can be abled to get warnings for -# functions that are documented, but have no documentation for their parameters -# or return value. If set to NO (the default) doxygen will only warn about -# wrong or incomplete parameter documentation, but not about the absence of -# documentation. - -WARN_NO_PARAMDOC = YES - -# The WARN_FORMAT tag determines the format of the warning messages that -# doxygen can produce. The string should contain the $file, $line, and $text -# tags, which will be replaced by the file and line number from which the -# warning originated and the warning text. Optionally the format may contain -# $version, which will be replaced by the version of the file (if it could -# be obtained via FILE_VERSION_FILTER) - -WARN_FORMAT = "$file:$line: $text" - -# The WARN_LOGFILE tag can be used to specify a file to which warning -# and error messages should be written. If left blank the output is written -# to stderr. - -WARN_LOGFILE = doxygen.log - -#--------------------------------------------------------------------------- -# configuration options related to the input files -#--------------------------------------------------------------------------- - -# The INPUT tag can be used to specify the files and/or directories that contain -# documented source files. You may enter file names like "myfile.cpp" or -# directories like "/usr/src/myproject". Separate the files or directories -# with spaces. - -INPUT = @PROJECT_SOURCE_DIR@/include \ - @PROJECT_SOURCE_DIR@/src - -# This tag can be used to specify the character encoding of the source files -# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is -# also the default input encoding. Doxygen uses libiconv (or the iconv built -# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for -# the list of possible encodings. - -INPUT_ENCODING = UTF-8 - -# If the value of the INPUT tag contains directories, you can use the -# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp -# and *.h) to filter out the source-files in the directories. If left -# blank the following patterns are tested: -# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx -# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90 - -FILE_PATTERNS = *.cc *.cpp \ - *.hh \ - *.hxx - -# The RECURSIVE tag can be used to turn specify whether or not subdirectories -# should be searched for input files as well. Possible values are YES and NO. -# If left blank NO is used. - -RECURSIVE = YES - -# The EXCLUDE tag can be used to specify files and/or directories that should -# excluded from the INPUT source files. This way you can easily exclude a -# subdirectory from a directory tree whose root is specified with the INPUT tag. - -EXCLUDE = - -# The EXCLUDE_SYMLINKS tag can be used select whether or not files or -# directories that are symbolic links (a Unix filesystem feature) are excluded -# from the input. - -EXCLUDE_SYMLINKS = NO - -# If the value of the INPUT tag contains directories, you can use the -# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude -# certain files from those directories. Note that the wildcards are matched -# against the file with absolute path, so to exclude all test directories -# for example use the pattern */test/* - -EXCLUDE_PATTERNS = - -# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names -# (namespaces, classes, functions, etc.) that should be excluded from the -# output. The symbol name can be a fully qualified name, a word, or if the -# wildcard * is used, a substring. Examples: ANamespace, AClass, -# AClass::ANamespace, ANamespace::*Test - -EXCLUDE_SYMBOLS = - -# The EXAMPLE_PATH tag can be used to specify one or more files or -# directories that contain example code fragments that are included (see -# the \include command). - -EXAMPLE_PATH = @PROJECT_SOURCE_DIR@/tests - -# If the value of the EXAMPLE_PATH tag contains directories, you can use the -# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp -# and *.h) to filter out the source-files in the directories. If left -# blank all files are included. - -EXAMPLE_PATTERNS = * - -# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be -# searched for input files to be used with the \include or \dontinclude -# commands irrespective of the value of the RECURSIVE tag. -# Possible values are YES and NO. If left blank NO is used. - -EXAMPLE_RECURSIVE = NO - -# The IMAGE_PATH tag can be used to specify one or more files or -# directories that contain image that are included in the documentation (see -# the \image command). - -IMAGE_PATH = @PROJECT_SOURCE_DIR@/doc - -# The INPUT_FILTER tag can be used to specify a program that doxygen should -# invoke to filter for each input file. Doxygen will invoke the filter program -# by executing (via popen()) the command <filter> <input-file>, where <filter> -# is the value of the INPUT_FILTER tag, and <input-file> is the name of an -# input file. Doxygen will then use the output that the filter program writes -# to standard output. -# If FILTER_PATTERNS is specified, this tag will be -# ignored. - -INPUT_FILTER = - -# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern -# basis. -# Doxygen will compare the file name with each pattern and apply the -# filter if there is a match. -# The filters are a list of the form: -# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further -# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER -# is applied to all files. - -FILTER_PATTERNS = - -# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using -# INPUT_FILTER) will be used to filter the input files when producing source -# files to browse (i.e. when SOURCE_BROWSER is set to YES). - -FILTER_SOURCE_FILES = NO - -#--------------------------------------------------------------------------- -# configuration options related to source browsing -#--------------------------------------------------------------------------- - -# If the SOURCE_BROWSER tag is set to YES then a list of source files will -# be generated. Documented entities will be cross-referenced with these sources. -# Note: To get rid of all source code in the generated output, make sure also -# VERBATIM_HEADERS is set to NO. - -SOURCE_BROWSER = NO - -# Setting the INLINE_SOURCES tag to YES will include the body -# of functions and classes directly in the documentation. - -INLINE_SOURCES = NO - -# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct -# doxygen to hide any special comment blocks from generated source code -# fragments. Normal C and C++ comments will always remain visible. - -STRIP_CODE_COMMENTS = YES - -# If the REFERENCED_BY_RELATION tag is set to YES -# then for each documented function all documented -# functions referencing it will be listed. - -REFERENCED_BY_RELATION = YES - -# If the REFERENCES_RELATION tag is set to YES -# then for each documented function all documented entities -# called/used by that function will be listed. - -REFERENCES_RELATION = YES - -# If the REFERENCES_LINK_SOURCE tag is set to YES (the default) -# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from -# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will -# link to the source code. -# Otherwise they will link to the documentation. - -REFERENCES_LINK_SOURCE = YES - -# If the USE_HTAGS tag is set to YES then the references to source code -# will point to the HTML generated by the htags(1) tool instead of doxygen -# built-in source browser. The htags tool is part of GNU's global source -# tagging system (see http://www.gnu.org/software/global/global.html). You -# will need version 4.8.6 or higher. - -USE_HTAGS = NO - -# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen -# will generate a verbatim copy of the header file for each class for -# which an include is specified. Set to NO to disable this. - -VERBATIM_HEADERS = NO - -#--------------------------------------------------------------------------- -# configuration options related to the alphabetical class index -#--------------------------------------------------------------------------- - -# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index -# of all compounds will be generated. Enable this if the project -# contains a lot of classes, structs, unions or interfaces. - -ALPHABETICAL_INDEX = YES - -# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then -# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns -# in which this list will be split (can be a number in the range [1..20]) - -COLS_IN_ALPHA_INDEX = 5 - -# In case all classes in a project start with a common prefix, all -# classes will be put under the same header in the alphabetical index. -# The IGNORE_PREFIX tag can be used to specify one or more prefixes that -# should be ignored while generating the index headers. - -IGNORE_PREFIX = @PACKAGE_NAME@ - -#--------------------------------------------------------------------------- -# configuration options related to the HTML output -#--------------------------------------------------------------------------- - -# If the GENERATE_HTML tag is set to YES (the default) Doxygen will -# generate HTML output. - -GENERATE_HTML = YES - -# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `html' will be used as the default path. - -HTML_OUTPUT = doxygen-html - -# The HTML_FILE_EXTENSION tag can be used to specify the file extension for -# each generated HTML page (for example: .htm,.php,.asp). If it is left blank -# doxygen will generate files with .html extension. - -HTML_FILE_EXTENSION = .html - -# The HTML_HEADER tag can be used to specify a personal HTML header for -# each generated HTML page. If it is left blank doxygen will generate a -# standard header. - -HTML_HEADER = @PROJECT_SOURCE_DIR@/cmake/doxygen/header.html - -# The HTML_FOOTER tag can be used to specify a personal HTML footer for -# each generated HTML page. If it is left blank doxygen will generate a -# standard footer. - -HTML_FOOTER = @PROJECT_SOURCE_DIR@/cmake/doxygen/footer.html - -# The HTML_STYLESHEET tag can be used to specify a user-defined cascading -# style sheet that is used by each HTML page. It can be used to -# fine-tune the look of the HTML output. If the tag is left blank doxygen -# will generate a default style sheet. Note that doxygen will try to copy -# the style sheet file to the HTML output directory, so don't put your own -# stylesheet in the HTML output directory as well, or it will be erased! - -HTML_STYLESHEET = @PROJECT_SOURCE_DIR@/cmake/doxygen/doxygen.css - -# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML -# page will contain the date and time when the page was generated. Setting -# this to NO can help when comparing the output of multiple runs. - -HTML_TIMESTAMP = YES - -# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, -# files or namespaces will be aligned in HTML using tables. If set to -# NO a bullet list will be used. - -HTML_ALIGN_MEMBERS = YES - -# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML -# documentation will contain sections that can be hidden and shown after the -# page has loaded. For this to work a browser that supports -# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox -# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari). - -HTML_DYNAMIC_SECTIONS = NO - -# If the GENERATE_DOCSET tag is set to YES, additional index files -# will be generated that can be used as input for Apple's Xcode 3 -# integrated development environment, introduced with OSX 10.5 (Leopard). -# To create a documentation set, doxygen will generate a Makefile in the -# HTML output directory. Running make will produce the docset in that -# directory and running "make install" will install the docset in -# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find -# it at startup. -# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html for more information. - -GENERATE_DOCSET = NO - -# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the -# feed. A documentation feed provides an umbrella under which multiple -# documentation sets from a single provider (such as a company or product suite) -# can be grouped. - -DOCSET_FEEDNAME = "Doxygen generated docs" - -# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that -# should uniquely identify the documentation set bundle. This should be a -# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen -# will append .docset to the name. - -DOCSET_BUNDLE_ID = org.doxygen.@PACKAGE_NAME@ - -# If the GENERATE_HTMLHELP tag is set to YES, additional index files -# will be generated that can be used as input for tools like the -# Microsoft HTML help workshop to generate a compiled HTML help file (.chm) -# of the generated HTML documentation. - -GENERATE_HTMLHELP = NO - -# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can -# be used to specify the file name of the resulting .chm file. You -# can add a path in front of the file if the result should not be -# written to the html output directory. - -CHM_FILE = - -# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can -# be used to specify the location (absolute path including file name) of -# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run -# the HTML help compiler on the generated index.hhp. - -HHC_LOCATION = - -# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag -# controls if a separate .chi index file is generated (YES) or that -# it should be included in the master .chm file (NO). - -GENERATE_CHI = NO - -# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING -# is used to encode HtmlHelp index (hhk), content (hhc) and project file -# content. - -CHM_INDEX_ENCODING = - -# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag -# controls whether a binary table of contents is generated (YES) or a -# normal table of contents (NO) in the .chm file. - -BINARY_TOC = NO - -# The TOC_EXPAND flag can be set to YES to add extra items for group members -# to the contents of the HTML help documentation and to the tree view. - -TOC_EXPAND = NO - -# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and QHP_VIRTUAL_FOLDER -# are set, an additional index file will be generated that can be used as input for -# Qt's qhelpgenerator to generate a Qt Compressed Help (.qch) of the generated -# HTML documentation. - -GENERATE_QHP = NO - -# If the QHG_LOCATION tag is specified, the QCH_FILE tag can -# be used to specify the file name of the resulting .qch file. -# The path specified is relative to the HTML output folder. - -QCH_FILE = - -# The QHP_NAMESPACE tag specifies the namespace to use when generating -# Qt Help Project output. For more information please see -# http://doc.trolltech.com/qthelpproject.html#namespace - -QHP_NAMESPACE = org.doxygen.@PACKAGE_NAME@ - -# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating -# Qt Help Project output. For more information please see -# http://doc.trolltech.com/qthelpproject.html#virtual-folders - -QHP_VIRTUAL_FOLDER = doc - -# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to add. -# For more information please see -# http://doc.trolltech.com/qthelpproject.html#custom-filters - -QHP_CUST_FILTER_NAME = - -# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the custom filter to add.For more information please see -# <a href="http://doc.trolltech.com/qthelpproject.html#custom-filters">Qt Help Project / Custom Filters</a>. - -QHP_CUST_FILTER_ATTRS = - -# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this project's -# filter section matches. -# <a href="http://doc.trolltech.com/qthelpproject.html#filter-attributes">Qt Help Project / Filter Attributes</a>. - -QHP_SECT_FILTER_ATTRS = - -# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can -# be used to specify the location of Qt's qhelpgenerator. -# If non-empty doxygen will try to run qhelpgenerator on the generated -# .qhp file. - -QHG_LOCATION = - -# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files -# will be generated, which together with the HTML files, form an Eclipse help -# plugin. To install this plugin and make it available under the help contents -# menu in Eclipse, the contents of the directory containing the HTML and XML -# files needs to be copied into the plugins directory of eclipse. The name of -# the directory within the plugins directory should be the same as -# the ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before the help appears. - -GENERATE_ECLIPSEHELP = NO - -# A unique identifier for the eclipse help plugin. When installing the plugin -# the directory name containing the HTML and XML files should also have -# this name. - -ECLIPSE_DOC_ID = org.doxygen.@PACKAGE_NAME@ - -# The DISABLE_INDEX tag can be used to turn on/off the condensed index at -# top of each HTML page. The value NO (the default) enables the index and -# the value YES disables it. - -DISABLE_INDEX = NO - -# This tag can be used to set the number of enum values (range [1..20]) -# that doxygen will group on one line in the generated HTML documentation. - -ENUM_VALUES_PER_LINE = 1 - -# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index -# structure should be generated to display hierarchical information. -# If the tag value is set to YES, a side panel will be generated -# containing a tree-like index structure (just like the one that -# is generated for HTML Help). For this to work a browser that supports -# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser). -# Windows users are probably better off using the HTML help feature. - -GENERATE_TREEVIEW = YES - -# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories, -# and Class Hierarchy pages using a tree view instead of an ordered list. - -USE_INLINE_TREES = NO - -# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be -# used to set the initial width (in pixels) of the frame in which the tree -# is shown. - -TREEVIEW_WIDTH = 250 - -# Use this tag to change the font size of Latex formulas included -# as images in the HTML documentation. The default is 10. Note that -# when you change the font size after a successful doxygen run you need -# to manually remove any form_*.png images from the HTML output directory -# to force them to be regenerated. - -FORMULA_FONTSIZE = 10 - -# When the SEARCHENGINE tag is enabled doxygen will generate a search box for the HTML output. The underlying search engine uses javascript -# and DHTML and should work on any modern browser. Note that when using HTML help (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET) there is already a search function so this one should -# typically be disabled. For large projects the javascript based search engine -# can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution. - -SEARCHENGINE = YES - -# When the SERVER_BASED_SEARCH tag is enabled the search engine will be implemented using a PHP enabled web server instead of at the web client using Javascript. Doxygen will generate the search PHP script and index -# file to put on the web server. The advantage of the server based approach is that it scales better to large projects and allows full text search. The disadvances is that it is more difficult to setup -# and does not have live searching capabilities. - -SERVER_BASED_SEARCH = NO - -#--------------------------------------------------------------------------- -# configuration options related to the LaTeX output -#--------------------------------------------------------------------------- - -# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will -# generate Latex output. - -GENERATE_LATEX = NO - -# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `latex' will be used as the default path. - -LATEX_OUTPUT = doxygen-latex - -# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be -# invoked. If left blank `latex' will be used as the default command name. -# Note that when enabling USE_PDFLATEX this option is only used for -# generating bitmaps for formulas in the HTML output, but not in the -# Makefile that is written to the output directory. - -LATEX_CMD_NAME = latex - -# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to -# generate index for LaTeX. If left blank `makeindex' will be used as the -# default command name. - -MAKEINDEX_CMD_NAME = makeindex - -# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact -# LaTeX documents. This may be useful for small projects and may help to -# save some trees in general. - -COMPACT_LATEX = YES - -# The PAPER_TYPE tag can be used to set the paper type that is used -# by the printer. Possible values are: a4, a4wide, letter, legal and -# executive. If left blank a4wide will be used. - -PAPER_TYPE = a4wide - -# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX -# packages that should be included in the LaTeX output. - -EXTRA_PACKAGES = amssymb,amsmath - -# The LATEX_HEADER tag can be used to specify a personal LaTeX header for -# the generated latex document. The header should contain everything until -# the first chapter. If it is left blank doxygen will generate a -# standard header. Notice: only use this tag if you know what you are doing! - -LATEX_HEADER = - -# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated -# is prepared for conversion to pdf (using ps2pdf). The pdf file will -# contain links (just like the HTML output) instead of page references -# This makes the output suitable for online browsing using a pdf viewer. - -PDF_HYPERLINKS = NO - -# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of -# plain latex in the generated Makefile. Set this option to YES to get a -# higher quality PDF documentation. - -USE_PDFLATEX = YES - -# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. -# command to the generated LaTeX files. This will instruct LaTeX to keep -# running if errors occur, instead of asking the user for help. -# This option is also used when generating formulas in HTML. - -LATEX_BATCHMODE = NO - -# If LATEX_HIDE_INDICES is set to YES then doxygen will not -# include the index chapters (such as File Index, Compound Index, etc.) -# in the output. - -LATEX_HIDE_INDICES = NO - -# If LATEX_SOURCE_CODE is set to YES then doxygen will include source code with syntax highlighting in the LaTeX output. Note that which sources are shown also depends on other settings such as SOURCE_BROWSER. - -LATEX_SOURCE_CODE = NO - -#--------------------------------------------------------------------------- -# configuration options related to the RTF output -#--------------------------------------------------------------------------- - -# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output -# The RTF output is optimized for Word 97 and may not look very pretty with -# other RTF readers or editors. - -GENERATE_RTF = NO - -# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `rtf' will be used as the default path. - -RTF_OUTPUT = doxygen-rtf - -# If the COMPACT_RTF tag is set to YES Doxygen generates more compact -# RTF documents. This may be useful for small projects and may help to -# save some trees in general. - -COMPACT_RTF = NO - -# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated -# will contain hyperlink fields. The RTF file will -# contain links (just like the HTML output) instead of page references. -# This makes the output suitable for online browsing using WORD or other -# programs which support those fields. -# Note: wordpad (write) and others do not support links. - -RTF_HYPERLINKS = NO - -# Load stylesheet definitions from file. Syntax is similar to doxygen's -# config file, i.e. a series of assignments. You only have to provide -# replacements, missing definitions are set to their default value. - -RTF_STYLESHEET_FILE = - -# Set optional variables used in the generation of an rtf document. -# Syntax is similar to doxygen's config file. - -RTF_EXTENSIONS_FILE = - -#--------------------------------------------------------------------------- -# configuration options related to the man page output -#--------------------------------------------------------------------------- - -# If the GENERATE_MAN tag is set to YES (the default) Doxygen will -# generate man pages - -GENERATE_MAN = NO - -# The MAN_OUTPUT tag is used to specify where the man pages will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `man' will be used as the default path. - -MAN_OUTPUT = doxygen-man - -# The MAN_EXTENSION tag determines the extension that is added to -# the generated man pages (default is the subroutine's section .3) - -MAN_EXTENSION = .3 - -# If the MAN_LINKS tag is set to YES and Doxygen generates man output, -# then it will generate one additional man file for each entity -# documented in the real man page(s). These additional files -# only source the real man page, but without them the man command -# would be unable to find the correct page. The default is NO. - -MAN_LINKS = NO - -#--------------------------------------------------------------------------- -# configuration options related to the XML output -#--------------------------------------------------------------------------- - -# If the GENERATE_XML tag is set to YES Doxygen will -# generate an XML file that captures the structure of -# the code including all documentation. - -GENERATE_XML = NO - -# The XML_OUTPUT tag is used to specify where the XML pages will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `xml' will be used as the default path. - -XML_OUTPUT = doxygen-xml - -# The XML_SCHEMA tag can be used to specify an XML schema, -# which can be used by a validating XML parser to check the -# syntax of the XML files. - -XML_SCHEMA = - -# The XML_DTD tag can be used to specify an XML DTD, -# which can be used by a validating XML parser to check the -# syntax of the XML files. - -XML_DTD = - -# If the XML_PROGRAMLISTING tag is set to YES Doxygen will -# dump the program listings (including syntax highlighting -# and cross-referencing information) to the XML output. Note that -# enabling this will significantly increase the size of the XML output. - -XML_PROGRAMLISTING = YES - -#--------------------------------------------------------------------------- -# configuration options for the AutoGen Definitions output -#--------------------------------------------------------------------------- - -# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will -# generate an AutoGen Definitions (see autogen.sf.net) file -# that captures the structure of the code including all -# documentation. Note that this feature is still experimental -# and incomplete at the moment. - -GENERATE_AUTOGEN_DEF = NO - -#--------------------------------------------------------------------------- -# configuration options related to the Perl module output -#--------------------------------------------------------------------------- - -# If the GENERATE_PERLMOD tag is set to YES Doxygen will -# generate a Perl module file that captures the structure of -# the code including all documentation. Note that this -# feature is still experimental and incomplete at the -# moment. - -GENERATE_PERLMOD = NO - -# If the PERLMOD_LATEX tag is set to YES Doxygen will generate -# the necessary Makefile rules, Perl scripts and LaTeX code to be able -# to generate PDF and DVI output from the Perl module output. - -PERLMOD_LATEX = NO - -# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be -# nicely formatted so it can be parsed by a human reader. -# This is useful -# if you want to understand what is going on. -# On the other hand, if this -# tag is set to NO the size of the Perl module output will be much smaller -# and Perl will parse it just the same. - -PERLMOD_PRETTY = YES - -# The names of the make variables in the generated doxyrules.make file -# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. -# This is useful so different doxyrules.make files included by the same -# Makefile don't overwrite each other's variables. - -PERLMOD_MAKEVAR_PREFIX = - -#--------------------------------------------------------------------------- -# Configuration options related to the preprocessor -#--------------------------------------------------------------------------- - -# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will -# evaluate all C-preprocessor directives found in the sources and include -# files. - -ENABLE_PREPROCESSING = YES - -# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro -# names in the source code. If set to NO (the default) only conditional -# compilation will be performed. Macro expansion can be done in a controlled -# way by setting EXPAND_ONLY_PREDEF to YES. - -MACRO_EXPANSION = YES - -# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES -# then the macro expansion is limited to the macros specified with the -# PREDEFINED and EXPAND_AS_DEFINED tags. - -EXPAND_ONLY_PREDEF = YES - -# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files -# in the INCLUDE_PATH (see below) will be search if a #include is found. - -SEARCH_INCLUDES = YES - -# The INCLUDE_PATH tag can be used to specify one or more directories that -# contain include files that are not input files but should be processed by -# the preprocessor. - -INCLUDE_PATH = @PROJECT_SOURCE_DIR@/include \ - @CMAKE_BINARY_DIR@/include - -# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard -# patterns (like *.h and *.hpp) to filter out the header-files in the -# directories. If left blank, the patterns specified with FILE_PATTERNS will -# be used. - -INCLUDE_FILE_PATTERNS = - -# The PREDEFINED tag can be used to specify one or more macro names that -# are defined before the preprocessor is started (similar to the -D option of -# gcc). The argument of the tag is a list of macros of the form: name -# or name=definition (no spaces). If the definition and the = are -# omitted =1 is assumed. To prevent a macro definition from being -# undefined via #undef or recursively expanded use the := operator -# instead of the = operator. - -PREDEFINED = IS_DOXYGEN - -# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then -# this tag can be used to specify a list of macro names that should be expanded. -# The macro definition that is found in the sources will be used. -# Use the PREDEFINED tag if you want to use a different macro definition. - -EXPAND_AS_DEFINED = - -# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then -# doxygen's preprocessor will remove all function-like macros that are alone -# on a line, have an all uppercase name, and do not end with a semicolon. Such -# function macros are typically used for boiler-plate code, and will confuse -# the parser if not removed. - -SKIP_FUNCTION_MACROS = YES - -#--------------------------------------------------------------------------- -# Configuration::additions related to external references -#--------------------------------------------------------------------------- - -# The TAGFILES option can be used to specify one or more tagfiles. -# Optionally an initial location of the external documentation -# can be added for each tagfile. The format of a tag file without -# this location is as follows: -# -# TAGFILES = file1 file2 ... -# Adding location for the tag files is done as follows: -# -# TAGFILES = file1=loc1 "file2 = loc2" ... -# where "loc1" and "loc2" can be relative or absolute paths or -# URLs. If a location is present for each tag, the installdox tool -# does not have to be run to correct the links. -# Note that each tag file must have a unique name -# (where the name does NOT include the path) -# If a tag file is not located in the directory in which doxygen -# is run, you must also specify the path to the tagfile here. - -TAGFILES = - -# When a file name is specified after GENERATE_TAGFILE, doxygen will create -# a tag file that is based on the input files it reads. - -GENERATE_TAGFILE = @PROJECT_NAME@.doxytag - -# If the ALLEXTERNALS tag is set to YES all external classes will be listed -# in the class index. If set to NO only the inherited external classes -# will be listed. - -ALLEXTERNALS = NO - -# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed -# in the modules index. If set to NO, only the current project's groups will -# be listed. - -EXTERNAL_GROUPS = YES - -# The PERL_PATH should be the absolute path and name of the perl script -# interpreter (i.e. the result of `which perl'). - -PERL_PATH = @PERL@ - -#--------------------------------------------------------------------------- -# Configuration options related to the dot tool -#--------------------------------------------------------------------------- - -# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will -# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base -# or super classes. Setting the tag to NO turns the diagrams off. Note that -# this option is superseded by the HAVE_DOT option below. This is only a -# fallback. It is recommended to install and use dot, since it yields more -# powerful graphs. - -CLASS_DIAGRAMS = YES - -# You can define message sequence charts within doxygen comments using the \msc -# command. Doxygen will then run the mscgen tool (see -# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the -# documentation. The MSCGEN_PATH tag allows you to specify the directory where -# the mscgen tool resides. If left empty the tool is assumed to be found in the -# default search path. - -MSCGEN_PATH = - -# If set to YES, the inheritance and collaboration graphs will hide -# inheritance and usage relations if the target is undocumented -# or is not a class. - -HIDE_UNDOC_RELATIONS = YES - -# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is -# available from the path. This tool is part of Graphviz, a graph visualization -# toolkit from AT&T and Lucent Bell Labs. The other options in this section -# have no effect if this option is set to NO (the default) - -HAVE_DOT = @HAVE_DOT@ - -# By default doxygen will write a font called FreeSans.ttf to the output -# directory and reference it in all dot files that doxygen generates. This -# font does not include all possible unicode characters however, so when you need -# these (or just want a differently looking font) you can specify the font name -# using DOT_FONTNAME. You need need to make sure dot is able to find the font, -# which can be done by putting it in a standard location or by setting the -# DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory -# containing the font. - -DOT_FONTNAME = FreeSans - -# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs. -# The default size is 10pt. - -DOT_FONTSIZE = 10 - -# By default doxygen will tell dot to use the output directory to look for the -# FreeSans.ttf font (which doxygen will put there itself). If you specify a -# different font using DOT_FONTNAME you can set the path where dot -# can find it using this tag. - -DOT_FONTPATH = - -# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for each documented class showing the direct and -# indirect inheritance relations. Setting this tag to YES will force the -# the CLASS_DIAGRAMS tag to NO. - -CLASS_GRAPH = YES - -# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for each documented class showing the direct and -# indirect implementation dependencies (inheritance, containment, and -# class references variables) of the class with other documented classes. - -COLLABORATION_GRAPH = YES - -# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for groups, showing the direct groups dependencies - -GROUP_GRAPHS = YES - -# If the UML_LOOK tag is set to YES doxygen will generate inheritance and -# collaboration diagrams in a style similar to the OMG's Unified Modeling -# Language. - -UML_LOOK = NO - -# If set to YES, the inheritance and collaboration graphs will show the -# relations between templates and their instances. - -TEMPLATE_RELATIONS = NO - -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT -# tags are set to YES then doxygen will generate a graph for each documented -# file showing the direct and indirect include dependencies of the file with -# other documented files. - -INCLUDE_GRAPH = YES - -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and -# HAVE_DOT tags are set to YES then doxygen will generate a graph for each -# documented header file showing the documented files that directly or -# indirectly include this file. - -INCLUDED_BY_GRAPH = YES - -# If the CALL_GRAPH and HAVE_DOT options are set to YES then -# doxygen will generate a call dependency graph for every global function -# or class method. Note that enabling this option will significantly increase -# the time of a run. So in most cases it will be better to enable call graphs -# for selected functions only using the \callgraph command. - -CALL_GRAPH = NO - -# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then -# doxygen will generate a caller dependency graph for every global function -# or class method. Note that enabling this option will significantly increase -# the time of a run. So in most cases it will be better to enable caller -# graphs for selected functions only using the \callergraph command. - -CALLER_GRAPH = NO - -# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen -# will graphical hierarchy of all classes instead of a textual one. - -GRAPHICAL_HIERARCHY = YES - -# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES -# then doxygen will show the dependencies a directory has on other directories -# in a graphical way. The dependency relations are determined by the #include -# relations between the files in the directories. - -DIRECTORY_GRAPH = YES - -# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images -# generated by dot. Possible values are png, jpg, or gif -# If left blank png will be used. - -DOT_IMAGE_FORMAT = png - -# The tag DOT_PATH can be used to specify the path where the dot tool can be -# found. If left blank, it is assumed the dot tool can be found in the path. - -DOT_PATH = @DOXYGEN_DOT_PATH@ - -# The DOTFILE_DIRS tag can be used to specify one or more directories that -# contain dot files that are included in the documentation (see the -# \dotfile command). - -DOTFILE_DIRS = - -# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of -# nodes that will be shown in the graph. If the number of nodes in a graph -# becomes larger than this value, doxygen will truncate the graph, which is -# visualized by representing a node as a red box. Note that doxygen if the -# number of direct children of the root node in a graph is already larger than -# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note -# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH. - -DOT_GRAPH_MAX_NODES = 50 - -# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the -# graphs generated by dot. A depth value of 3 means that only nodes reachable -# from the root by following a path via at most 3 edges will be shown. Nodes -# that lay further from the root node will be omitted. Note that setting this -# option to 1 or 2 may greatly reduce the computation time needed for large -# code bases. Also note that the size of a graph can be further restricted by -# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction. - -MAX_DOT_GRAPH_DEPTH = 1000 - -# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent -# background. This is disabled by default, because dot on Windows does not -# seem to support this out of the box. Warning: Depending on the platform used, -# enabling this option may lead to badly anti-aliased labels on the edges of -# a graph (i.e. they become hard to read). - -DOT_TRANSPARENT = NO - -# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output -# files in one run (i.e. multiple -o and -T options on the command line). This -# makes dot run faster, but since only newer versions of dot (>1.8.10) -# support this, this feature is disabled by default. - -DOT_MULTI_TARGETS = YES - -# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will -# generate a legend page explaining the meaning of the various boxes and -# arrows in the dot generated graphs. - -GENERATE_LEGEND = YES - -# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will -# remove the intermediate dot files that are used to generate -# the various graphs. - -DOT_CLEANUP = YES diff --git a/cmake/doxygen/doxygen.css b/cmake/doxygen/doxygen.css deleted file mode 100644 index 224338bc61304317eaf6884c09dd7470bea5423e..0000000000000000000000000000000000000000 --- a/cmake/doxygen/doxygen.css +++ /dev/null @@ -1,657 +0,0 @@ -/* The standard CSS for doxygen */ - -body, table, div, p, dl { - font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif; - font-size: 12px; -} - -/* @group Heading Levels */ - -h1 { - font-size: 150%; -} - -h2 { - font-size: 120%; -} - -h3 { - font-size: 100%; -} - -dt { - font-weight: bold; -} - -div.multicol { - -moz-column-gap: 1em; - -webkit-column-gap: 1em; - -moz-column-count: 3; - -webkit-column-count: 3; -} - -p.startli, p.startdd, p.starttd { - margin-top: 2px; -} - -p.endli { - margin-bottom: 0px; -} - -p.enddd { - margin-bottom: 4px; -} - -p.endtd { - margin-bottom: 2px; -} - -/* @end */ - -caption { - font-weight: bold; -} - -span.legend { - font-size: 70%; - text-align: center; -} - -h3.version { - font-size: 90%; - text-align: center; -} - -div.qindex, div.navtab{ - background-color: #EBEFF6; - border: 1px solid #A3B4D7; - text-align: center; - margin: 2px; - padding: 2px; -} - -div.qindex, div.navpath { - width: 100%; - line-height: 140%; -} - -div.navtab { - margin-right: 15px; -} - -/* @group Link Styling */ - -a { - color: #3D578C; - font-weight: normal; - text-decoration: none; -} - -.contents a:visited { - color: #4665A2; -} - -a:hover { - text-decoration: underline; -} - -a.qindex { - font-weight: bold; -} - -a.qindexHL { - font-weight: bold; - background-color: #9CAFD4; - color: #ffffff; - border: 1px double #869DCA; -} - -.contents a.qindexHL:visited { - color: #ffffff; -} - -a.el { - font-weight: bold; -} - -a.elRef { -} - -a.code { - color: #4665A2; -} - -a.codeRef { - color: #4665A2; -} - -/* @end */ - -dl.el { - margin-left: -1cm; -} - -.fragment { - font-family: monospace, fixed; - font-size: 105%; -} - -pre.fragment { - border: 1px solid #C4CFE5; - background-color: #FBFCFD; - padding: 4px 6px; - margin: 4px 8px 4px 2px; - overflow: auto; - word-wrap: break-word; - font-size: 9pt; - line-height: 125%; -} - -div.ah { - background-color: black; - font-weight: bold; - color: #ffffff; - margin-bottom: 3px; - margin-top: 3px; - padding: 0.2em; - border: solid thin #333; - border-radius: 0.5em; - -webkit-border-radius: .5em; - -moz-border-radius: .5em; - -webkit-box-shadow: 2px 2px 3px #999; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; - background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); - background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); -} - -div.groupHeader { - margin-left: 16px; - margin-top: 12px; - margin-bottom: 6px; - font-weight: bold; -} - -div.groupText { - margin-left: 16px; - font-style: italic; -} - -body { - background: white; - color: black; - margin: 0; -} - -div.contents { - margin-top: 10px; - margin-left: 10px; - margin-right: 10px; -} - -td.indexkey { - background-color: #EBEFF6; - font-weight: bold; - border: 1px solid #C4CFE5; - margin: 2px 0px 2px 0; - padding: 2px 10px; -} - -td.indexvalue { - background-color: #EBEFF6; - border: 1px solid #C4CFE5; - padding: 2px 10px; - margin: 2px 0px; -} - -tr.memlist { - background-color: #EEF1F7; -} - -p.formulaDsp { - text-align: center; -} - -img.formulaDsp { - -} - -img.formulaInl { - vertical-align: middle; -} - -div.center { - text-align: center; - margin-top: 0px; - margin-bottom: 0px; - padding: 0px; -} - -div.center img { - border: 0px; -} - -address.footer { - text-align: right; - padding-right: 12px; -} - -img.footer { - border: 0px; - vertical-align: middle; -} - -/* @group Code Colorization */ - -span.keyword { - color: #008000 -} - -span.keywordtype { - color: #604020 -} - -span.keywordflow { - color: #e08000 -} - -span.comment { - color: #800000 -} - -span.preprocessor { - color: #806020 -} - -span.stringliteral { - color: #002080 -} - -span.charliteral { - color: #008080 -} - -span.vhdldigit { - color: #ff00ff -} - -span.vhdlchar { - color: #000000 -} - -span.vhdlkeyword { - color: #700070 -} - -span.vhdllogic { - color: #ff0000 -} - -/* @end */ - -/* -.search { - color: #003399; - font-weight: bold; -} - -form.search { - margin-bottom: 0px; - margin-top: 0px; -} - -input.search { - font-size: 75%; - color: #000080; - font-weight: normal; - background-color: #e8eef2; -} -*/ - -td.tiny { - font-size: 75%; -} - -.dirtab { - padding: 4px; - border-collapse: collapse; - border: 1px solid #A3B4D7; -} - -th.dirtab { - background: #EBEFF6; - font-weight: bold; -} - -hr { - height: 0px; - border: none; - border-top: 1px solid #4A6AAA; -} - -hr.footer { - height: 1px; -} - -/* @group Member Descriptions */ - -table.memberdecls { - border-spacing: 0px; - padding: 0px; -} - -.mdescLeft, .mdescRight, -.memItemLeft, .memItemRight, -.memTemplItemLeft, .memTemplItemRight, .memTemplParams { - background-color: #F9FAFC; - border: none; - margin: 4px; - padding: 1px 0 0 8px; -} - -.mdescLeft, .mdescRight { - padding: 0px 8px 4px 8px; - color: #555; -} - -.memItemLeft, .memItemRight, .memTemplParams { - border-top: 1px solid #C4CFE5; -} - -.memItemLeft, .memTemplItemLeft { - white-space: nowrap; -} - -.memTemplParams { - color: #4665A2; - white-space: nowrap; -} - -/* @end */ - -/* @group Member Details */ - -/* Styles for detailed member documentation */ - -.memtemplate { - font-size: 80%; - color: #4665A2; - font-weight: normal; - margin-left: 3px; -} - -.memnav { - background-color: #EBEFF6; - border: 1px solid #A3B4D7; - text-align: center; - margin: 2px; - margin-right: 15px; - padding: 2px; -} - -.memitem { - padding: 0; - margin-bottom: 10px; -} - -.memname { - white-space: nowrap; - font-weight: bold; - margin-left: 6px; -} - -.memproto { - border-top: 1px solid #A8B8D9; - border-left: 1px solid #A8B8D9; - border-right: 1px solid #A8B8D9; - padding: 6px 0px 6px 0px; - color: #253555; - font-weight: bold; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - /* firefox specific markup */ - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - -moz-border-radius-topright: 8px; - -moz-border-radius-topleft: 8px; - /* webkit specific markup */ - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - -webkit-border-top-right-radius: 8px; - -webkit-border-top-left-radius: 8px; - background-image:url('nav_f.png'); - background-repeat:repeat-x; - background-color: #E2E8F2; - -} - -.memdoc { - border-bottom: 1px solid #A8B8D9; - border-left: 1px solid #A8B8D9; - border-right: 1px solid #A8B8D9; - padding: 2px 5px; - background-color: #FBFCFD; - border-top-width: 0; - /* firefox specific markup */ - -moz-border-radius-bottomleft: 8px; - -moz-border-radius-bottomright: 8px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - background-image: -moz-linear-gradient(center top, #FFFFFF 0%, #FFFFFF 60%, #F7F8FB 95%, #EEF1F7); - /* webkit specific markup */ - -webkit-border-bottom-left-radius: 8px; - -webkit-border-bottom-right-radius: 8px; - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - background-image: -webkit-gradient(linear,center top,center bottom,from(#FFFFFF), color-stop(0.6,#FFFFFF), color-stop(0.60,#FFFFFF), color-stop(0.95,#F7F8FB), to(#EEF1F7)); -} - -.paramkey { - text-align: right; -} - -.paramtype { - white-space: nowrap; -} - -.paramname { - color: #602020; - white-space: nowrap; -} -.paramname em { - font-style: normal; -} - -/* @end */ - -/* @group Directory (tree) */ - -/* for the tree view */ - -.ftvtree { - font-family: sans-serif; - margin: 0px; -} - -/* these are for tree view when used as main index */ - -.directory { - font-size: 9pt; - font-weight: bold; - margin: 5px; -} - -.directory h3 { - margin: 0px; - margin-top: 1em; - font-size: 11pt; -} - -/* -The following two styles can be used to replace the root node title -with an image of your choice. Simply uncomment the next two styles, -specify the name of your image and be sure to set 'height' to the -proper pixel height of your image. -*/ - -/* -.directory h3.swap { - height: 61px; - background-repeat: no-repeat; - background-image: url("yourimage.gif"); -} -.directory h3.swap span { - display: none; -} -*/ - -.directory > h3 { - margin-top: 0; -} - -.directory p { - margin: 0px; - white-space: nowrap; -} - -.directory div { - display: none; - margin: 0px; -} - -.directory img { - vertical-align: -30%; -} - -/* these are for tree view when not used as main index */ - -.directory-alt { - font-size: 100%; - font-weight: bold; -} - -.directory-alt h3 { - margin: 0px; - margin-top: 1em; - font-size: 11pt; -} - -.directory-alt > h3 { - margin-top: 0; -} - -.directory-alt p { - margin: 0px; - white-space: nowrap; -} - -.directory-alt div { - display: none; - margin: 0px; -} - -.directory-alt img { - vertical-align: -30%; -} - -/* @end */ - -div.dynheader { - margin-top: 8px; -} - -address { - font-style: normal; - color: #2A3D61; -} - -table.doxtable { - border-collapse:collapse; -} - -table.doxtable td, table.doxtable th { - border: 1px solid #2D4068; - padding: 3px 7px 2px; -} - -table.doxtable th { - background-color: #374F7F; - color: #FFFFFF; - font-size: 110%; - padding-bottom: 4px; - padding-top: 5px; - text-align:left; -} - -.tabsearch { - top: 0px; - left: 10px; - height: 36px; - background-image: url('tab_b.png'); - z-index: 101; - overflow: hidden; - font-size: 13px; -} - -.navpath ul -{ - font-size: 11px; - background-image:url('tab_b.png'); - background-repeat:repeat-x; - height:30px; - line-height:30px; - color:#8AA0CC; - border:solid 1px #C2CDE4; - overflow:hidden; - margin:0px; - padding:0px; -} - -.navpath li -{ - list-style-type:none; - float:left; - padding-left:10px; - padding-right: 15px; - background-image:url('bc_s.png'); - background-repeat:no-repeat; - background-position:right; - color:#364D7C; -} - -.navpath a -{ - height:32px; - display:block; - text-decoration: none; - outline: none; -} - -.navpath a:hover -{ - color:#6884BD; -} - -div.summary -{ - float: right; - font-size: 8pt; - padding-right: 5px; - width: 50%; - text-align: right; -} - -div.summary a -{ - white-space: nowrap; -} - -div.header -{ - background-image:url('nav_h.png'); - background-repeat:repeat-x; - background-color: #F9FAFC; - margin: 0px; - border-bottom: 1px solid #C4CFE5; -} - -div.headertitle -{ - padding: 5px 5px 5px 10px; -} - - diff --git a/cmake/doxygen/footer.html b/cmake/doxygen/footer.html deleted file mode 100644 index 308b1d01b6ca1e7ab1b1fa896e6a8497bbcd1a37..0000000000000000000000000000000000000000 --- a/cmake/doxygen/footer.html +++ /dev/null @@ -1,2 +0,0 @@ -</body> -</html> diff --git a/cmake/doxygen/header.html b/cmake/doxygen/header.html deleted file mode 100644 index 41c1d88fd7142431ffce46e7132ca3f3735ab8f0..0000000000000000000000000000000000000000 --- a/cmake/doxygen/header.html +++ /dev/null @@ -1,6 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> -<title>$title</title> -<link href="$relpath$tabs.css" rel="stylesheet" type="text/css"> -<link href="$relpath$doxygen.css" rel="stylesheet" type="text/css"> -</head><body> diff --git a/cmake/doxygen/header.tex b/cmake/doxygen/header.tex deleted file mode 100644 index 063092d69b952f93cd05fea1ac127cecf2f35015..0000000000000000000000000000000000000000 --- a/cmake/doxygen/header.tex +++ /dev/null @@ -1,53 +0,0 @@ -\documentclass[a4paper]{book} -\usepackage{a4wide} -\usepackage{makeidx} -\usepackage{fancyhdr} -\usepackage{graphicx} -\usepackage{multicol} -\usepackage{float} -\usepackage{listings} -\usepackage{color} -\usepackage{textcomp} -\usepackage{alltt} -\usepackage{times} -\usepackage{ifpdf} -\ifpdf -\usepackage[pdftex, - pagebackref=true, - colorlinks=true, - linkcolor=blue, - unicode - ]{hyperref} -\else -\usepackage[ps2pdf, - pagebackref=true, - colorlinks=true, - linkcolor=blue, - unicode - ]{hyperref} -\usepackage{pspicture} -\fi -\usepackage[utf8]{inputenc} -\usepackage{doxygen} -\lstset{language=C++,inputencoding=utf8,basicstyle=\footnotesize,breaklines=true,breakatwhitespace=true,tabsize=8,numbers=left } -\makeindex -\setcounter{tocdepth}{3} -\renewcommand{\footrulewidth}{0.4pt} -\begin{document} -\hypersetup{pageanchor=false} -\begin{titlepage} -\vspace*{7cm} -\begin{center} -{\Large Your title here}\\ -\vspace*{1cm} -{\large Generated by Doxygen 1.5.9}\\ -\vspace*{0.5cm} -{\small Fri Sep 18 10:45:25 2009}\\ -\end{center} -\end{titlepage} -\clearemptydoublepage -\pagenumbering{roman} -\tableofcontents -\clearemptydoublepage -\pagenumbering{arabic} -\hypersetup{pageanchor=true} diff --git a/cmake/doxygen/style.rtf b/cmake/doxygen/style.rtf deleted file mode 100644 index 223585c5266f87f6c91648b826f1c856ba489221..0000000000000000000000000000000000000000 --- a/cmake/doxygen/style.rtf +++ /dev/null @@ -1,78 +0,0 @@ -# Generated by doxygen 1.5.9 - -# This file describes styles used for generating RTF output. -# All text after a hash (#) is considered a comment and will be ignored. -# Remove a hash to activate a line. - -# Heading1 = \s1\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs36\kerning36\cgrid \sbasedon0 \snext0 heading 1 -# Heading2 = \s2\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs28\kerning28\cgrid \sbasedon0 \snext0 heading 2 -# Heading3 = \s3\sb240\sa60\keepn\widctlpar\adjustright \b\f1\cgrid \sbasedon0 \snext0 heading 3 -# Heading4 = \s4\sb240\sa60\keepn\widctlpar\adjustright \b\f1\fs20\cgrid \sbasedon0 \snext0 heading 4;}{\*\cs10 \additive Default Paragraph Font -# Heading5 = \s5\sb90\sa30\keepn\widctlpar\adjustright \b\f1\fs20\cgrid \sbasedon0 \snext0 heading 5;}{\*\cs10 \additive Default Paragraph Font -# Title = \s15\qc\sb240\sa60\widctlpar\outlinelevel0\adjustright \b\f1\fs32\kerning28\cgrid \sbasedon0 \snext15 Title -# SubTitle = \s16\qc\sa60\widctlpar\outlinelevel1\adjustright \f1\cgrid \sbasedon0 \snext16 Subtitle -# BodyText = \s17\sa60\sb30\widctlpar\qj \fs22\cgrid \sbasedon0 \snext17 BodyText -# DenseText = \s18\widctlpar\fs22\cgrid \sbasedon0 \snext18 DenseText -# Header = \s28\widctlpar\tqc\tx4320\tqr\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext28 header -# Footer = \s29\widctlpar\tqc\tx4320\tqr\tx8640\qr\adjustright \fs20\cgrid \sbasedon0 \snext29 footer -# GroupHeader = \s30\li360\sa60\sb120\keepn\widctlpar\adjustright \b\f1\fs20\cgrid \sbasedon0 \snext30 GroupHeader -# CodeExample0 = \s40\li0\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext41 Code Example 0 -# CodeExample1 = \s41\li360\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext42 Code Example 1 -# CodeExample2 = \s42\li720\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext43 Code Example 2 -# CodeExample3 = \s43\li1080\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext44 Code Example 3 -# CodeExample4 = \s44\li1440\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext45 Code Example 4 -# CodeExample5 = \s45\li1800\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext46 Code Example 5 -# CodeExample6 = \s46\li2160\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext47 Code Example 6 -# CodeExample7 = \s47\li2520\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext48 Code Example 7 -# CodeExample8 = \s48\li2880\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext49 Code Example 8 -# CodeExample9 = \s49\li3240\widctlpar\adjustright \shading1000\cbpat8 \f2\fs16\cgrid \sbasedon0 \snext49 Code Example 9 -# ListContinue0 = \s50\li0\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext51 List Continue 0 -# ListContinue1 = \s51\li360\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext52 List Continue 1 -# ListContinue2 = \s52\li720\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext53 List Continue 2 -# ListContinue3 = \s53\li1080\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext54 List Continue 3 -# ListContinue4 = \s54\li1440\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext55 List Continue 4 -# ListContinue5 = \s55\li1800\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext56 List Continue 5 -# ListContinue6 = \s56\li2160\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext57 List Continue 6 -# ListContinue7 = \s57\li2520\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext58 List Continue 7 -# ListContinue8 = \s58\li2880\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext59 List Continue 8 -# ListContinue9 = \s59\li3240\sa60\sb30\qj\widctlpar\qj\adjustright \fs20\cgrid \sbasedon0 \snext59 List Continue 9 -# DescContinue0 = \s60\li0\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext61 DescContinue 0 -# DescContinue1 = \s61\li360\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext62 DescContinue 1 -# DescContinue2 = \s62\li720\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext63 DescContinue 2 -# DescContinue3 = \s63\li1080\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext64 DescContinue 3 -# DescContinue4 = \s64\li1440\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext65 DescContinue 4 -# DescContinue5 = \s65\li1800\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext66 DescContinue 5 -# DescContinue6 = \s66\li2160\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext67 DescContinue 6 -# DescContinue7 = \s67\li2520\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext68 DescContinue 7 -# DescContinue8 = \s68\li2880\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext69 DescContinue 8 -# DescContinue9 = \s69\li3240\widctlpar\ql\adjustright \fs20\cgrid \sbasedon0 \snext69 DescContinue 9 -# LatexTOC0 = \s70\li0\sa30\sb30\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext81 LatexTOC 0 -# LatexTOC1 = \s71\li360\sa27\sb27\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext82 LatexTOC 1 -# LatexTOC2 = \s72\li720\sa24\sb24\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext83 LatexTOC 2 -# LatexTOC3 = \s73\li1080\sa21\sb21\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext84 LatexTOC 3 -# LatexTOC4 = \s74\li1440\sa18\sb18\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext85 LatexTOC 4 -# LatexTOC5 = \s75\li1800\sa15\sb15\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext86 LatexTOC 5 -# LatexTOC6 = \s76\li2160\sa12\sb12\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext87 LatexTOC 6 -# LatexTOC7 = \s77\li2520\sa9\sb9\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext88 LatexTOC 7 -# LatexTOC8 = \s78\li2880\sa6\sb6\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext89 LatexTOC 8 -# LatexTOC9 = \s79\li3240\sa3\sb3\widctlpar\tqr\tldot\tx8640\adjustright \fs20\cgrid \sbasedon0 \snext89 LatexTOC 9 -# ListBullet0 = \s80\fi-360\li360\widctlpar\jclisttab\tx360{\*\pn \pnlvlbody\ilvl0\ls1\pnrnot0\pndec }\ls1\adjustright \fs20\cgrid \sbasedon0 \snext81 \sautoupd List Bullet 0 -# ListBullet1 = \s81\fi-360\li720\widctlpar\jclisttab\tx720{\*\pn \pnlvlbody\ilvl0\ls2\pnrnot0\pndec }\ls2\adjustright \fs20\cgrid \sbasedon0 \snext82 \sautoupd List Bullet 1 -# ListBullet2 = \s82\fi-360\li1080\widctlpar\jclisttab\tx1080{\*\pn \pnlvlbody\ilvl0\ls3\pnrnot0\pndec }\ls3\adjustright \fs20\cgrid \sbasedon0 \snext83 \sautoupd List Bullet 2 -# ListBullet3 = \s83\fi-360\li1440\widctlpar\jclisttab\tx1440{\*\pn \pnlvlbody\ilvl0\ls4\pnrnot0\pndec }\ls4\adjustright \fs20\cgrid \sbasedon0 \snext84 \sautoupd List Bullet 3 -# ListBullet4 = \s84\fi-360\li1800\widctlpar\jclisttab\tx1800{\*\pn \pnlvlbody\ilvl0\ls5\pnrnot0\pndec }\ls5\adjustright \fs20\cgrid \sbasedon0 \snext85 \sautoupd List Bullet 4 -# ListBullet5 = \s85\fi-360\li2160\widctlpar\jclisttab\tx2160{\*\pn \pnlvlbody\ilvl0\ls6\pnrnot0\pndec }\ls6\adjustright \fs20\cgrid \sbasedon0 \snext86 \sautoupd List Bullet 5 -# ListBullet6 = \s86\fi-360\li2520\widctlpar\jclisttab\tx2520{\*\pn \pnlvlbody\ilvl0\ls7\pnrnot0\pndec }\ls7\adjustright \fs20\cgrid \sbasedon0 \snext87 \sautoupd List Bullet 6 -# ListBullet7 = \s87\fi-360\li2880\widctlpar\jclisttab\tx2880{\*\pn \pnlvlbody\ilvl0\ls8\pnrnot0\pndec }\ls8\adjustright \fs20\cgrid \sbasedon0 \snext88 \sautoupd List Bullet 7 -# ListBullet8 = \s88\fi-360\li3240\widctlpar\jclisttab\tx3240{\*\pn \pnlvlbody\ilvl0\ls9\pnrnot0\pndec }\ls9\adjustright \fs20\cgrid \sbasedon0 \snext89 \sautoupd List Bullet 8 -# ListBullet9 = \s89\fi-360\li3600\widctlpar\jclisttab\tx3600{\*\pn \pnlvlbody\ilvl0\ls10\pnrnot0\pndec }\ls10\adjustright \fs20\cgrid \sbasedon0 \snext89 \sautoupd List Bullet 9 -# ListEnum0 = \s90\fi-360\li360\widctlpar\fs20\cgrid \sbasedon0 \snext91 \sautoupd List Enum 0 -# ListEnum1 = \s91\fi-360\li720\widctlpar\fs20\cgrid \sbasedon0 \snext92 \sautoupd List Enum 1 -# ListEnum2 = \s92\fi-360\li1080\widctlpar\fs20\cgrid \sbasedon0 \snext93 \sautoupd List Enum 2 -# ListEnum3 = \s93\fi-360\li1440\widctlpar\fs20\cgrid \sbasedon0 \snext94 \sautoupd List Enum 3 -# ListEnum4 = \s94\fi-360\li1800\widctlpar\fs20\cgrid \sbasedon0 \snext95 \sautoupd List Enum 4 -# ListEnum5 = \s95\fi-360\li2160\widctlpar\fs20\cgrid \sbasedon0 \snext96 \sautoupd List Enum 5 -# ListEnum6 = \s96\fi-360\li2520\widctlpar\fs20\cgrid \sbasedon0 \snext96 \sautoupd List Enum 5 -# ListEnum7 = \s97\fi-360\li2880\widctlpar\fs20\cgrid \sbasedon0 \snext98 \sautoupd List Enum 7 -# ListEnum8 = \s98\fi-360\li3240\widctlpar\fs20\cgrid \sbasedon0 \snext99 \sautoupd List Enum 8 -# ListEnum9 = \s99\fi-360\li3600\widctlpar\fs20\cgrid \sbasedon0 \snext99 \sautoupd List Enum 9 diff --git a/cmake/doxygen/style.tex b/cmake/doxygen/style.tex deleted file mode 100644 index 23dc650a42de8a7c5fa013aea748d8b4849e83a9..0000000000000000000000000000000000000000 --- a/cmake/doxygen/style.tex +++ /dev/null @@ -1,96 +0,0 @@ -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{doxygen} -\RequirePackage{calc} -\RequirePackage{array} -\RequirePackage{color} -\pagestyle{fancyplain} -\newcommand{\clearemptydoublepage}{\newpage{\pagestyle{empty}\cleardoublepage}} -\renewcommand{\chaptermark}[1]{\markboth{#1}{}} -\renewcommand{\sectionmark}[1]{\markright{\thesection\ #1}} -\lhead[\fancyplain{}{\bfseries\thepage}] - {\fancyplain{}{\bfseries\rightmark}} -\rhead[\fancyplain{}{\bfseries\leftmark}] - {\fancyplain{}{\bfseries\thepage}} -\rfoot[\fancyplain{}{\bfseries\scriptsize Generated on Fri Sep 18 10:45:25 2009 by doxygen\lfoot[]{\fancyplain{}{\bfseries\scriptsize Generated on Fri Sep 18 10:45:25 2009 by doxygen}} -\cfoot{} -\newenvironment{Code} -{\footnotesize} -{\normalsize} -\newcommand{\doxyref}[3]{\textbf{#1} (\textnormal{#2}\,\pageref{#3})} -\newenvironment{DocInclude} -{\footnotesize} -{\normalsize} -\newenvironment{VerbInclude} -{\footnotesize} -{\normalsize} -\newenvironment{Image} -{\begin{figure}[H]} -{\end{figure}} -\newenvironment{ImageNoCaption}{}{} -\newenvironment{CompactList} -{\begin{list}{}{ - \setlength{\leftmargin}{0.5cm} - \setlength{\itemsep}{0pt} - \setlength{\parsep}{0pt} - \setlength{\topsep}{0pt} - \renewcommand{\makelabel}{\hfill}}} -{\end{list}} -\newenvironment{CompactItemize} -{ - \begin{itemize} - \setlength{\itemsep}{-3pt} - \setlength{\parsep}{0pt} - \setlength{\topsep}{0pt} - \setlength{\partopsep}{0pt} -} -{\end{itemize}} -\newcommand{\PBS}[1]{\let\temp=\\#1\let\\=\temp} -\newlength{\tmplength} -\newenvironment{TabularC}[1] -{ -\setlength{\tmplength} - {\linewidth/(#1)-\tabcolsep*2-\arrayrulewidth*(#1+1)/(#1)} - \par\begin{tabular*}{\linewidth} - {*{#1}{|>{\PBS\raggedright\hspace{0pt}}p{\the\tmplength}}|} -} -{\end{tabular*}\par} -\newcommand{\entrylabel}[1]{ - {\parbox[b]{\labelwidth-4pt}{\makebox[0pt][l]{\textbf{#1}}\vspace{1.5\baselineskip}}}} -\newenvironment{Desc} -{\begin{list}{} - { - \settowidth{\labelwidth}{40pt} - \setlength{\leftmargin}{\labelwidth} - \setlength{\parsep}{0pt} - \setlength{\itemsep}{-4pt} - \renewcommand{\makelabel}{\entrylabel} - } -} -{\end{list}} -\newenvironment{Indent} - {\begin{list}{}{\setlength{\leftmargin}{0.5cm}} - \item[]\ignorespaces} - {\unskip\end{list}} -\setlength{\parindent}{0cm} -\setlength{\parskip}{0.2cm} -\addtocounter{secnumdepth}{1} -\sloppy -\usepackage[T1]{fontenc} -\makeatletter -\renewcommand{\paragraph}{\@startsection{paragraph}{4}{0ex}% - {-3.25ex plus -1ex minus -0.2ex}% - {1.5ex plus 0.2ex}% - {\normalfont\normalsize\bfseries}} -\makeatother -\stepcounter{secnumdepth} -\stepcounter{tocdepth} -\definecolor{comment}{rgb}{0.5,0.0,0.0} -\definecolor{keyword}{rgb}{0.0,0.5,0.0} -\definecolor{keywordtype}{rgb}{0.38,0.25,0.125} -\definecolor{keywordflow}{rgb}{0.88,0.5,0.0} -\definecolor{preprocessor}{rgb}{0.5,0.38,0.125} -\definecolor{stringliteral}{rgb}{0.0,0.125,0.25} -\definecolor{charliteral}{rgb}{0.0,0.5,0.5} -\definecolor{vhdldigit}{rgb}{1.0,0.0,1.0} -\definecolor{vhdlkeyword}{rgb}{0.43,0.0,0.43} -\definecolor{vhdllogic}{rgb}{1.0,0.0,0.0} diff --git a/cmake/doxygen/tabs.css b/cmake/doxygen/tabs.css deleted file mode 100644 index 21920562a831f80ad5df7d913b1d3d64db994510..0000000000000000000000000000000000000000 --- a/cmake/doxygen/tabs.css +++ /dev/null @@ -1,59 +0,0 @@ -.tabs, .tabs2, .tabs3 { - background-image: url('tab_b.png'); - width: 100%; - z-index: 101; - font-size: 13px; -} - -.tabs2 { - font-size: 10px; -} -.tabs3 { - font-size: 9px; -} - -.tablist { - margin: 0; - padding: 0; - display: table; -} - -.tablist li { - float: left; - display: table-cell; - background-image: url('tab_b.png'); - line-height: 36px; - list-style: none; -} - -.tablist a { - display: block; - padding: 0 20px; - font-weight: bold; - background-image:url('tab_s.png'); - background-repeat:no-repeat; - background-position:right; - color: #283A5D; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - text-decoration: none; - outline: none; -} - -.tabs3 .tablist a { - padding: 0 10px; -} - -.tablist a:hover { - background-image: url('tab_h.png'); - background-repeat:repeat-x; - color: #fff; - text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); - text-decoration: none; -} - -.tablist li.current a { - background-image: url('tab_a.png'); - background-repeat:repeat-x; - color: #fff; - text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); -} diff --git a/cmake/dynamic_graph/python-module-py.cc b/cmake/dynamic_graph/python-module-py.cc deleted file mode 100644 index 0452fd7a0d4e8eee572b3dd405f87e1d98a84c33..0000000000000000000000000000000000000000 --- a/cmake/dynamic_graph/python-module-py.cc +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -// -// This file is part of jrl-cmakemodules. -// jrl-mathtools is free software: you can redistribute it and/or modify -// it under the terms of the GNU Lesser General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// jrl-mathtools is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Lesser General Public License for more details. -// You should have received a copy of the GNU Lesser General Public License -// along with jrl-mathtools. If not, see <http://www.gnu.org/licenses/>. - -#include <Python.h> - -/** - \brief List of python functions -*/ -static PyMethodDef functions[] = { - {NULL, NULL, 0, NULL} /* Sentinel */ -}; - -PyMODINIT_FUNC -initwrap(void) -{ - PyObject *m; - - m = Py_InitModule("wrap", functions); - if (m == NULL) - return; -} diff --git a/cmake/dynamic_graph/submodule/__init__.py.cmake b/cmake/dynamic_graph/submodule/__init__.py.cmake deleted file mode 100644 index 34f0ae1860a3d40bf4341f9c699c59c094f63864..0000000000000000000000000000000000000000 --- a/cmake/dynamic_graph/submodule/__init__.py.cmake +++ /dev/null @@ -1,30 +0,0 @@ -# -# Copyright 2010 CNRS -# -# Author: Florent Lamiraux -# -# This file is free software: you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public License -# as published by the Free Software Foundation, either version 3 of -# the License, or (at your option) any later version. -# -# This file is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Lesser Public License for more details. You should have -# received a copy of the GNU Lesser General Public License along with -# this file. If not, see <http://www.gnu.org/licenses/>. - -import sys, DLFCN -import dynamic_graph as dg -flags = sys.getdlopenflags() -# Import C++ symbols in a global scope -# This is necessary for signal compiled in different modules to be compatible -sys.setdlopenflags(DLFCN.RTLD_NOW|DLFCN.RTLD_GLOBAL) -import wrap -# Recover previous flags -sys.setdlopenflags(flags) - -dg.entity.updateEntityClasses(globals()) - -${ENTITY_CLASS_LIST} diff --git a/cmake/eigen.cmake b/cmake/eigen.cmake deleted file mode 100644 index 39ed2fcdda954642161163ab7e185f72e12a5b36..0000000000000000000000000000000000000000 --- a/cmake/eigen.cmake +++ /dev/null @@ -1,40 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# SEARCH_FOR_EIGEN -# ----------------- -# -# This macro gets eigen include path from pkg-config file, and adds it include directories. - -# If the variable Eigen_REQUIRED is not defined before calling -# the method SEARCH_FOR_EIGEN, the version chosen is the default one. -MACRO(SEARCH_FOR_EIGEN) - - SET(_Eigen_FOUND 0) - IF(NOT Eigen_REQUIRED) - SET(Eigen_REQUIRED "eigen3 >= 3.0.0") - ENDIF(NOT Eigen_REQUIRED) - PKG_CHECK_MODULES(_Eigen REQUIRED ${Eigen_REQUIRED}) - - IF(NOT ${_Eigen_FOUND}) - MESSAGE(FATAL_ERROR "Check that package Eigen is installed in a directory pointed out by PKG_CONFIG_PATH.") - ENDIF(NOT ${_Eigen_FOUND}) - - SET(${PROJECT_NAME}_CXX_FLAGS "${${PROJECT_NAME}_CXX_FLAGS} ${_Eigen_CFLAGS}") - SET(${PROJECT_NAME}_LINK_FLAGS "${${PROJECT_NAME}_LINK_FLAGS} ${_Eigen_LDFLAGS}") - - STRING(REGEX REPLACE "-I" "" Eigen_INCLUDE_DIR ${_Eigen_CFLAGS}) - INCLUDE_DIRECTORIES(SYSTEM ${Eigen_INCLUDE_DIR} ) -ENDMACRO(SEARCH_FOR_EIGEN) diff --git a/cmake/filefilter.txt b/cmake/filefilter.txt deleted file mode 100644 index 71b54d32e92f0f9df6b8c6177027d9921082cdbf..0000000000000000000000000000000000000000 --- a/cmake/filefilter.txt +++ /dev/null @@ -1,51 +0,0 @@ -# This file is used by the nsiqcppstyle coding style checker to -# validate coding style. -~ RULE_10_1_A_do_not_use_bufferoverflow_risky_function_for_unix -~ RULE_10_1_B_do_not_use_bufferoverflow_risky_function_for_windows -~ RULE_3_1_A_do_not_start_filename_with_underbar -~ RULE_3_2_B_do_not_use_same_filename_more_than_once -~ RULE_3_2_CD_do_not_use_special_characters_in_filename -~ RULE_3_2_F_use_representitive_classname_for_cpp_filename -~ RULE_3_2_H_do_not_use_underbars_for_cpp_filename -~ RULE_3_2_H_do_not_use_uppercase_for_c_filename -~ RULE_3_3_A_start_function_name_with_is_or_has_when_return_bool -~ RULE_3_3_A_start_function_name_with_lowercase_unix -~ RULE_3_3_A_start_function_name_with_upperrcase_windows -~ RULE_3_3_B_start_private_function_name_with_underbar -~ RULE_4_1_A_B_use_space_for_indentation -~ RULE_4_1_B_indent_each_enum_item_in_enum_block -~ RULE_4_1_B_locate_each_enum_item_in_seperate_line -~ RULE_4_1_C_align_long_function_parameter_list -~ RULE_4_1_E_align_conditions -~ RULE_4_2_A_A_space_around_operator -~ RULE_4_2_A_B_space_around_word -~ RULE_4_4_A_do_not_write_over_120_columns_per_line -~ RULE_4_5_A_brace_for_namespace_should_be_located_in_seperate_line -~ RULE_4_5_A_braces_for_function_definition_should_be_located_in_seperate_line -~ RULE_4_5_A_braces_for_type_definition_should_be_located_in_seperate_line -~ RULE_4_5_A_braces_inside_of_function_should_be_located_in_end_of_line -~ RULE_4_5_A_indent_blocks_inside_of_function -~ RULE_4_5_A_matching_braces_inside_of_function_should_be_located_same_column -~ RULE_4_5_B_use_braces_even_for_one_statement -~ RULE_5_2_C_provide_doxygen_class_comment_on_class_def -~ RULE_5_2_C_provide_doxygen_namespace_comment_on_namespace_def -~ RULE_5_2_C_provide_doxygen_struct_comment_on_struct_def -~ RULE_5_3_A_provide_doxygen_function_comment_on_function_in_header -~ RULE_5_3_A_provide_doxygen_function_comment_on_function_in_impl -~ RULE_6_1_A_do_not_omit_function_parameter_names -~ RULE_6_1_E_do_not_use_more_than_5_paramters_in_function -~ RULE_6_1_G_write_less_than_200_lines_for_function -~ RULE_6_2_A_do_not_use_system_dependent_type -~ RULE_6_4_B_initialize_first_item_of_enum -~ RULE_6_5_B_do_not_use_lowercase_for_macro_constants -~ RULE_6_5_B_do_not_use_macro_for_constants -~ RULE_7_1_B_A_do_not_use_double_assignment -~ RULE_7_1_C_do_not_use_question_keyword -~ RULE_7_2_B_do_not_use_goto_statement -~ RULE_8_1_A_provide_file_info_comment -~ RULE_9_1_A_do_not_use_hardcorded_include_path -~ RULE_9_2_D_use_reentrant_function -~ RULE_A_3_avoid_too_deep_blocks -- _build/ -- build/ -- _travis/ diff --git a/cmake/fix-license.sh b/cmake/fix-license.sh deleted file mode 100755 index f0aba93fefb88b8b2bc535e2ef3fc7afb0c492b0..0000000000000000000000000000000000000000 --- a/cmake/fix-license.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/sh -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -########## -# README # -########## -# -# Update the copyright header with the current date and make the -# copyright notice uniform. - -year=`date '+%Y'` - -find . -name CMakeLists.txt \ - -or -name "*.cmake" \ - -or -name "*.sh" \ - -or -name "*.py" \ - -and -not -name "git-archive-all.sh" \ - -and -not -name "FindOpenRTM.cmake" \ - -and -not -name "GNUInstallDirs.cmake" \ - | xargs sed -i "s|^// Copyright .*$|# Copyright (C) 2008-$year LAAS-CNRS, JRL AIST-CNRS.|" - -find . -name "*.hh" -or -name "*.hxx" -or -name "*.h" -or -name "*.hpp" \ - -or -name "*.cpp" -or -name "*.cc" \ - | xargs sed -i "s|^// Copyright .*$|// Copyright (C) 2008-$year LAAS-CNRS, JRL AIST-CNRS.|" diff --git a/cmake/geometric-tools.cmake b/cmake/geometric-tools.cmake deleted file mode 100644 index ea5f0347938e8fa5b186a89f5ab4626c0abb9dc1..0000000000000000000000000000000000000000 --- a/cmake/geometric-tools.cmake +++ /dev/null @@ -1,68 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# SEARCH_FOR_GEOMETRIC_TOOLS -# ----------------- -# -# The geometric-tools (aka WildMagic5) does not provide a pkg-config -# file. This macro defines a CMake variable that must be filled to -# point to the geometric-tools install prefix. -# -MACRO(SEARCH_FOR_GEOMETRIC_TOOLS) - MESSAGE(STATUS "geometric-tools is required.") - SET(GEOMETRIC_TOOLS_INSTALL_PREFIX "" CACHE PATH "geometric-tools installation prefix") - SET(LIB_GEOMETRIC_TOOLS_CORE LIB_GEOMETRIC_TOOLS_CORE-NOTFOUND) - SET(LIB_GEOMETRIC_TOOLS_MATH LIB_GEOMETRIC_TOOLS_MATH-NOTFOUND) - MESSAGE(STATUS "checking for module geometric-tools") - FIND_LIBRARY(LIB_GEOMETRIC_TOOLS_CORE - libWm5Core.so - PATH - ${GEOMETRIC_TOOLS_INSTALL_PREFIX}/lib) - IF (NOT LIB_GEOMETRIC_TOOLS_CORE) - MESSAGE(FATAL_ERROR - "Failed to find geometric-tools Core library, check that geometric-tools is installed and set the GEOMETRIC_TOOLS_INSTALL_PREFIX CMake variable.") - ENDIF() - FIND_LIBRARY(LIB_GEOMETRIC_TOOLS_MATH - libWm5Mathematics.so - PATH - ${GEOMETRIC_TOOLS_INSTALL_PREFIX}/lib) - IF (NOT LIB_GEOMETRIC_TOOLS_MATH) - MESSAGE(FATAL_ERROR - "Failed to find geometric-tools Mathematics library, check that geometric-tools is installed and set the GEOMETRIC_TOOLS_INSTALL_PREFIX CMake variable.") - ENDIF() - SET(GEOMETRIC_TOOLS_H GEOMETRIC_TOOLS-NOTFOUND) - FIND_PATH (GEOMETRIC_TOOLS_H - Wm5DistSegment3Segment3.h - "${GEOMETRIC_TOOLS_INSTALL_PREFIX}/include/geometric-tools") - IF (NOT GEOMETRIC_TOOLS_H) - MESSAGE(FATAL_ERROR - "Failed to find geometric-tools/Wm5DistSegment3Segment3.h, check that geometric-tools is installed.") - ENDIF() - - MESSAGE(STATUS " found geometric-tools") - - SET(GEOMETRIC_TOOLS_INCLUDEDIR "${GEOMETRIC_TOOLS_INSTALL_PREFIX}/include") - SET(GEOMETRIC_TOOLS_LIBRARYDIR "${GEOMETRIC_TOOLS_INSTALL_PREFIX}/lib") - SET(GEOMETRIC_TOOLS_LIBRARIES - ${LIB_GEOMETRIC_TOOLS_MATH} ${LIB_GEOMETRIC_TOOLS_CORE}) - - INCLUDE_DIRECTORIES(SYSTEM ${GEOMETRIC_TOOLS_INCLUDEDIR}) - LINK_DIRECTORIES(${GEOMETRIC_TOOLS_LIBRARYDIR}) - - PKG_CONFIG_APPEND_CFLAGS("-isystem ${GEOMETRIC_TOOLS_INCLUDEDIR}") - PKG_CONFIG_APPEND_LIBRARY_DIR("${GEOMETRIC_TOOLS_LIBRARYDIR}") - - MESSAGE(STATUS "Module geometric-tools has been detected with success.") -ENDMACRO(SEARCH_FOR_GEOMETRIC_TOOLS) diff --git a/cmake/git-archive-all.sh b/cmake/git-archive-all.sh deleted file mode 100755 index 5d500331789685cbb843c105c364554f16c51a57..0000000000000000000000000000000000000000 --- a/cmake/git-archive-all.sh +++ /dev/null @@ -1,255 +0,0 @@ -#!/bin/bash - -# -# File: git-archive-all.sh -# -# Description: A utility script that builds an archive file(s) of all -# git repositories and submodules in the current path. -# Useful for creating a single tarfile of a git super- -# project that contains other submodules. -# -# Examples: Use git-archive-all.sh to create archive distributions -# from git repositories. To use, simply do: -# -# cd $GIT_DIR; git-archive-all.sh -# -# where $GIT_DIR is the root of your git superproject. -# -# License: GPL3 -# -############################################################################### -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -# -############################################################################### - -# DEBUGGING -set -e -set -C # noclobber - -# TRAP SIGNALS -trap 'cleanup' QUIT EXIT - -# For security reasons, explicitly set the internal field separator -# to newline, space, tab -OLD_IFS=$IFS -IFS=' - ' - -function cleanup () { - rm -f $TMPFILE - rm -f $TOARCHIVE - IFS="$OLD_IFS" -} - -function usage () { - echo "Usage is as follows:" - echo - echo "$PROGRAM <--version>" - echo " Prints the program version number on a line by itself and exits." - echo - echo "$PROGRAM <--usage|--help|-?>" - echo " Prints this usage output and exits." - echo - echo "$PROGRAM [--format <fmt>] [--prefix <path>] [--verbose|-v] [--separate|-s] [output_file]" - echo " Creates an archive for the entire git superproject, and its submodules" - echo " using the passed parameters, described below." - echo - echo " If '--format' is specified, the archive is created with the named" - echo " git archiver backend. Obviously, this must be a backend that git archive" - echo " understands. The format defaults to 'tar' if not specified." - echo - echo " If '--prefix' is specified, the archive's superproject and all submodules" - echo " are created with the <path> prefix named. The default is to not use one." - echo - echo " If '--separate' or '-s' is specified, individual archives will be created" - echo " for each of the superproject itself and its submodules. The default is to" - echo " concatenate individual archives into one larger archive." - echo - echo " If 'output_file' is specified, the resulting archive is created as the" - echo " file named. This parameter is essentially a path that must be writeable." - echo " When combined with '--separate' ('-s') this path must refer to a directory." - echo " Without this parameter or when combined with '--separate' the resulting" - echo " archive(s) are named with a dot-separated path of the archived directory and" - echo " a file extension equal to their format (e.g., 'superdir.submodule1dir.tar')." - echo - echo " If '--verbose' or '-v' is specified, progress will be printed." -} - -function version () { - echo "$PROGRAM version $VERSION" -} - -# Internal variables and initializations. -readonly PROGRAM=`basename "$0"` -readonly VERSION=0.2 - -OLD_PWD="`pwd`" -TMPDIR=${TMPDIR:-/tmp} -TMPFILE=`mktemp "$TMPDIR/$PROGRAM.XXXXXX"` # Create a place to store our work's progress -TOARCHIVE=`mktemp "$TMPDIR/$PROGRAM.toarchive.XXXXXX"` -OUT_FILE=$OLD_PWD # assume "this directory" without a name change by default -SEPARATE=0 -VERBOSE=0 - -FORMAT=tar -PREFIX= -TREEISH=HEAD - -# RETURN VALUES/EXIT STATUS CODES -readonly E_BAD_OPTION=254 -readonly E_UNKNOWN=255 - -# Process command-line arguments. -while test $# -gt 0; do - case $1 in - --format ) - shift - FORMAT="$1" - shift - ;; - - --prefix ) - shift - PREFIX="$1" - shift - ;; - - --separate | -s ) - shift - SEPARATE=1 - ;; - - --version ) - version - exit - ;; - - --verbose | -v ) - shift - VERBOSE=1 - ;; - - -? | --usage | --help ) - usage - exit - ;; - - -* ) - echo "Unrecognized option: $1" >&2 - usage - exit $E_BAD_OPTION - ;; - - * ) - break - ;; - esac -done - -if [ ! -z "$1" ]; then - OUT_FILE="$1" - shift -fi - -# Validate parameters; error early, error often. -if [ $SEPARATE -eq 1 -a ! -d $OUT_FILE ]; then - echo "When creating multiple archives, your destination must be a directory." - echo "If it's not, you risk being surprised when your files are overwritten." - exit -elif [ `git config -l | grep -q '^core\.bare=false'; echo $?` -ne 0 ]; then - echo "$PROGRAM must be run from a git working copy (i.e., not a bare repository)." - exit -fi - -# Create the superproject's git-archive -if [ $VERBOSE -eq 1 ]; then - echo -n "creating superproject archive..." -fi -git archive --format=$FORMAT --prefix="$PREFIX" $TREEISH > $TMPDIR/$(basename $(pwd)).$FORMAT -if [ $VERBOSE -eq 1 ]; then - echo "done" -fi -echo $TMPDIR/$(basename $(pwd)).$FORMAT >| $TMPFILE # clobber on purpose -superfile=`head -n 1 $TMPFILE` - -if [ $VERBOSE -eq 1 ]; then - echo -n "looking for subprojects..." -fi -# find all '.git' dirs, these show us the remaining to-be-archived dirs -# we only want directories that are below the current directory -find . -mindepth 2 -name '.git' -type d -print | sed -e 's/^\.\///' -e 's/\.git$//' >> $TOARCHIVE -# as of version 1.7.8, git places the submodule .git directories under the superprojects .git dir -# the submodules get a .git file that points to their .git dir. we need to find all of these too -find . -mindepth 2 -name '.git' -type f -print | xargs grep -l "gitdir" | sed -e 's/^\.\///' -e 's/\.git$//' >> $TOARCHIVE -if [ $VERBOSE -eq 1 ]; then - echo "done" - echo " found:" - cat $TOARCHIVE | while read arch - do - echo " $arch" - done -fi - -if [ $VERBOSE -eq 1 ]; then - echo -n "archiving submodules..." -fi -while read path; do - TREEISH=$(git submodule | grep "^ .*${path%/} " | cut -d ' ' -f 2) # git submodule does not list trailing slashes in $path - cd "$path" - git archive --format=$FORMAT --prefix="${PREFIX}$path" ${TREEISH:-HEAD} > "$TMPDIR"/"$(echo "$path" | sed -e 's/\//./g')"$FORMAT - if [ $FORMAT == 'zip' ]; then - # delete the empty directory entry; zipped submodules won't unzip if we don't do this - zip -d "$(tail -n 1 $TMPFILE)" "${PREFIX}${path%/}" >/dev/null # remove trailing '/' - fi - echo "$TMPDIR"/"$(echo "$path" | sed -e 's/\//./g')"$FORMAT >> $TMPFILE - cd "$OLD_PWD" -done < $TOARCHIVE -if [ $VERBOSE -eq 1 ]; then - echo "done" -fi - -if [ $VERBOSE -eq 1 ]; then - echo -n "concatenating archives into single archive..." -fi -# Concatenate archives into a super-archive. -if [ $SEPARATE -eq 0 ]; then - if [ $FORMAT == 'tar' ]; then - sed -e '1d' $TMPFILE | while read file; do - tar --concatenate -f "$superfile" "$file" && rm -f "$file" - done - elif [ $FORMAT == 'zip' ]; then - sed -e '1d' $TMPFILE | while read file; do - # zip incorrectly stores the full path, so cd and then grow - cd `dirname "$file"` - zip -g "$superfile" `basename "$file"` && rm -f "$file" - done - cd "$OLD_PWD" - fi - - echo "$superfile" >| $TMPFILE # clobber on purpose -fi -if [ $VERBOSE -eq 1 ]; then - echo "done" -fi - -if [ $VERBOSE -eq 1 ]; then - echo -n "moving archive to $OUT_FILE..." -fi -while read file; do - mv "$file" "$OUT_FILE" -done < $TMPFILE -if [ $VERBOSE -eq 1 ]; then - echo "done" -fi diff --git a/cmake/github/update-doxygen-doc.sh b/cmake/github/update-doxygen-doc.sh deleted file mode 100755 index 658a5e690d0d02bee5a731badfe39ad39e58596e..0000000000000000000000000000000000000000 --- a/cmake/github/update-doxygen-doc.sh +++ /dev/null @@ -1,351 +0,0 @@ -#!/bin/sh -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - - # ------ # - # README # - # ------ # - -# This script updates the Doxygen documentation on Github. -# -# - it checkouts locally the gh-pages of the current repository, -# - it copy the local Doxygen documentation, -# - it creates a commit and push the modification. -# -# This scripts makes several assumptions on the project structure: -# -# 1. The documentation is generated in the doxygen-html directory -# of the doc build directory. -# -# 2. The documentation is updated through `make doc` in the top build -# directory. -# -# If doxygen.cmake is used, these assumptions will be respected. -# -# -# Launch the script by running: -# -# $ /path/to/update-doxygen-doc.sh -r /path/to/repo/root/dir \ -# -b /path/to/build/root/dir -set -e - -# Override the locale. -LC_ALL='C' -export LC_ALL - -me=$0 -bme=`basename "$0"` - - - # ----------------------- # - # Cross-links management. # - # ----------------------- # -# -# This stores the doxygen /online/ documentation -# so that installdox can be called to fix links before upload. -# -# Please note that this script makes the assumption that the unstable -# documentation should be used for cross-links which is not what we -# want. - -# FIXME: find a way to link against the "real" corresponding version. - -ia="abstract-robot-dynamics" -ia="$ia jrl-mathtools jrl-mal jrl-dynamics jrl-walkgen" -ia="$ia dynamic-graph dg-middleware" -ia="$ia sot-core sot-dynamic sot-pattern-generator" -ia="$ia sot-openhrp sot-openhrp-scripts" -installdox_args="$ia" - -iu="http://laas.github.com/abstract-robot-dynamics/doxygen/HEAD/" -iu="$iu http://jrl-umi3218.github.com/jrl-mathtools/doxygen/HEAD/" -iu="$iu http://jrl-umi3218.github.com/jrl-mal/doxygen/HEAD/" -iu="$iu http://jrl-umi3218.github.com/jrl-dynamics/doxygen/HEAD/" -iu="$iu http://jrl-umi3218.github.com/jrl-walkgen/doxygen/HEAD/" -iu="$iu http://jrl-umi3218.github.com/dynamic-graph/doxygen/HEAD/" -iu="$iu http://jrl-umi3218.github.com/dg-middleware/doxygen/HEAD/" -iu="$iu http://jrl-umi3218.github.com/sot-core/doxygen/HEAD/" -iu="$iu http://jrl-umi3218.github.com/sot-dynamic/doxygen/HEAD/" -iu="$iu http://jrl-umi3218.github.com/sot-pattern-generator/doxygen/HEAD/" -iu="$iu http://jrl-umi3218.github.com/sot-openhrp/doxygen/HEAD/" -iu="$iu http://jrl-umi3218.github.com/sot-openhrp-scripts/doxygen/HEAD/" -installdox_urls="$iu" - - # ----------------------- # - # Customizable variables. # - # ----------------------- # - -: ${GIT=/usr/bin/git} - - # ---------------- # - # Helper functions # - # ---------------- # - -set_colors() -{ - red='[0;31m'; lred='[1;31m' - green='[0;32m'; lgreen='[1;32m' - yellow='[0;33m'; lyellow='[1;33m' - blue='[0;34m'; lblue='[1;34m' - purple='[0;35m'; lpurple='[1;35m' - cyan='[0;36m'; lcyan='[1;36m' - grey='[0;37m'; lgrey='[1;37m' - white='[0;38m'; lwhite='[1;38m' - std='[m' -} - -set_nocolors() -{ - red=; lred= - green=; lgreen= - yellow=; lyellow= - blue=; lblue= - purple=; lpurple= - cyan=; lcyan= - grey=; lgrey= - white=; lwhite= - std= -} - -# abort err-msg -abort() -{ - echo "update-doxygen-doc.sh: ${lred}abort${std}: $@" \ - | sed '1!s/^[ ]*/ /' >&2 - exit 1 -} - -# warn msg -warn() -{ - echo "update-doxygen-doc.sh: ${lred}warning${std}: $@" \ - | sed '1!s/^[ ]*/ /' >&2 -} - -# notice msg -notice() -{ - echo "update-doxygen-doc.sh: ${lyellow}notice${std}: $@" \ - | sed '1!s/^[ ]*/ /' >&2 -} - -# yesno question -yesno() -{ - printf "$@ [y/N] " - read answer || return 1 - case $answer in - y* | Y*) return 0;; - *) return 1;; - esac - return 42 # should never happen... -} - - - # -------------------- # - # Actions definitions. # - # -------------------- # - -version() -{ - echo 'update-doxygen-doc.sh -Copyright (C) 2010-2013 LAAS-CNRS, JRL CNRS/AIST. -This is free software; see the source for copying conditions. -There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A -PARTICULAR PURPOSE.' -} - -help() -{ - echo 'Usage: update-doxygen-doc.sh -r ROOT_DIR -b BUILD_DIR [options] - --r and -b are mandatory. They must be set respectively to the project -root directory and to the build directory. - -Options: - --help, -h Print this message and exit. - --version, -v Print the script version and exit. - --doc-version VERSION Update the documentation of a stable - release to github. - VERSION by default is HEAD but can be - changed to vX.Y.Z to update the documentation - of a released version. - -Report bugs to http://github.com/jrl-umi3218/jrl-cmakemodules/issues -For more information, see http://github.com/jrl-umi3218/jrl-cmakemodules -' - -} - # ------------------- # - # `main' starts here. # - # ------------------- # - -# Define colors if stdout is a tty. -if test -t 1; then - set_colors -else # stdout isn't a tty => don't print colors. - set_nocolors -fi - -# For dev's: -test "x$1" = x--debug && shift && set -x - -# Default documentation version -doc_version=HEAD -# Remote URL used to push -remote_url= -# Package root directory -root_dir= -# Build root directory -build_dir= - -while `test $# -gt 0`; do - case $1 in - version | -v | --version | -version) - shift - version - exit 0 - ;; - help | -h | --help | -help) - shift - help - exit 0 - ;; - --doc-version) - doc_version=$2 - shift; shift - ;; - --remote-url) - remote_url=$2 - shift; shift - ;; - --root-dir | -r) - root_dir=$2 - shift; shift - ;; - --build-dir | -b) - build_dir=$2 - shift; shift - ;; - *) - echo "update-doxygen-doc.sh: ${lred}invalid option${std}: $1" - shift - help - exit 1 - ;; - esac -done - -# If root dir is not set, fail. -if `test x${root_dir} = x`; then - abort "root directory is not set, please set it using \`-r'" - usage - exit 1 -fi -# If build dir is not set, fail. -if `test x${build_dir} = x`; then - abort "build directory is not set, please set it using \`-b'" - usage - exit 1 -fi - -# If no remote URL is set, try to retrieve it automatically. -if `test x${remote_url} = x`; then - cd $root_dir - remote_url=`${GIT} config remote.origin.url` -fi - - -# Main starts here... -echo "* Checkout ${doc_version}..." -cd $root_dir -${GIT} checkout --quiet $doc_version - -echo "* Generating the documentation..." -cd $build_dir -make doc 2> /dev/null > /dev/null || \ - abort "failed to generate the documentation" - -echo "* Creating the temporary directory..." -tmp=`mktemp -d` || abort "cannot create the temporary directory" -trap "rm -rf -- '$tmp'" EXIT - -cd $root_dir -head_commit=`${GIT} log --format=oneline HEAD^.. | cut -d' ' -f1` - - -echo "* Clone the project..." -cd $tmp -${GIT} clone --quiet --depth 1 --branch gh-pages $remote_url project \ - || abort "failed to clone the package repository" -cd ${tmp}/project \ - || abort "failed to change directory" - -echo "* Copy the documentation..." -git rm --quiet -rf doxygen/${doc_version} || true -mkdir -p doxygen/${doc_version} -cp -rf ${build_dir}/doc/doxygen-html/* doxygen/${doc_version}/ \ - || abort "failed to copy the documentation" - -if test -x "$tmp/project/doxygen/$doc_version/installdox"; then - echo "* Run installdox to fix documentation cross-links..." - - cd $tmp/project/doxygen/$doc_version/ || abort "Failed to change directory." - - # Patch installdox to never abort. - # installdox normally checks that _all_ links are substituted. - # This is not what we want, we call installdox one dependency at a time - # to avoid resolving documentation dependencies manually. - sed 's|&usage();||g' installdox > installdox.fixed - chmod 755 installdox.fixed - - i=1 - for doxytag in $installdox_args; do - url=`echo "$installdox_urls" | cut -d' ' -f$i` - ./installdox.fixed -q -l ${doxytag}.doxytag@$url \ - 2> /dev/null > /dev/null \ - || true - i=$((i+1)) - done - cd $tmp/project || abort "Failed to change directory." -fi - -echo "* Generate the commit..." -${GIT} add doxygen/$doc_version \ - || abort "failed to add the updated documentation to the git index" - -echo "Update $doc_version Doxygen documentation. -Source commit id: $head_commit" >> $tmp/commit_msg -commit_status=`${GIT} status -s` - -# Make sure that there is something to commit. -# If this is not the case, the documentation is already -# up-to-date and the commit should not be generated. -if test -n "$commit_status"; then - ${GIT} commit --quiet -F $tmp/commit_msg \ - || abort "failed to generate the git commit" - - echo "* Push the generated commit..." - ${GIT} push origin gh-pages - - echo "${lgreen}Documentation updated with success!${std}" -else - notice "Github pages documentation is already up-to-date." -fi - -# Clean up the tmp directory -rm -rf $tmp - -trap - EXIT diff --git a/cmake/gitlog-to-changelog b/cmake/gitlog-to-changelog deleted file mode 100755 index e02d34c2135c31b455cb56dd835501e0bc6b1195..0000000000000000000000000000000000000000 --- a/cmake/gitlog-to-changelog +++ /dev/null @@ -1,432 +0,0 @@ -eval '(exit $?0)' && eval 'exec perl -wS "$0" ${1+"$@"}' - & eval 'exec perl -wS "$0" $argv:q' - if 0; -# Convert git log output to ChangeLog format. - -my $VERSION = '2012-07-29 06:11'; # UTC -# The definition above must lie within the first 8 lines in order -# for the Emacs time-stamp write hook (at end) to update it. -# If you change this file with Emacs, please let the write hook -# do its job. Otherwise, update this string manually. - -# Copyright (C) 2008-2013 Free Software Foundation, Inc. - -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# Written by Jim Meyering - -use strict; -use warnings; -use Getopt::Long; -use POSIX qw(strftime); - -(my $ME = $0) =~ s|.*/||; - -# use File::Coda; # http://meyering.net/code/Coda/ -END { - defined fileno STDOUT or return; - close STDOUT and return; - warn "$ME: failed to close standard output: $!\n"; - $? ||= 1; -} - -sub usage ($) -{ - my ($exit_code) = @_; - my $STREAM = ($exit_code == 0 ? *STDOUT : *STDERR); - if ($exit_code != 0) - { - print $STREAM "Try '$ME --help' for more information.\n"; - } - else - { - print $STREAM <<EOF; -Usage: $ME [OPTIONS] [ARGS] - -Convert git log output to ChangeLog format. If present, any ARGS -are passed to "git log". To avoid ARGS being parsed as options to -$ME, they may be preceded by '--'. - -OPTIONS: - - --amend=FILE FILE maps from an SHA1 to perl code (i.e., s/old/new/) that - makes a change to SHA1's commit log text or metadata. - --append-dot append a dot to the first line of each commit message if - there is no other punctuation or blank at the end. - --no-cluster never cluster commit messages under the same date/author - header; the default is to cluster adjacent commit messages - if their headers are the same and neither commit message - contains multiple paragraphs. - --srcdir=DIR the root of the source tree, from which the .git/ - directory can be derived. - --since=DATE convert only the logs since DATE; - the default is to convert all log entries. - --format=FMT set format string for commit subject and body; - see 'man git-log' for the list of format metacharacters; - the default is '%s%n%b%n' - --strip-tab remove one additional leading TAB from commit message lines. - --strip-cherry-pick remove data inserted by "git cherry-pick"; - this includes the "cherry picked from commit ..." line, - and the possible final "Conflicts:" paragraph. - --help display this help and exit - --version output version information and exit - -EXAMPLE: - - $ME --since=2008-01-01 > ChangeLog - $ME -- -n 5 foo > last-5-commits-to-branch-foo - -SPECIAL SYNTAX: - -The following types of strings are interpreted specially when they appear -at the beginning of a log message line. They are not copied to the output. - - Copyright-paperwork-exempt: Yes - Append the "(tiny change)" notation to the usual "date name email" - ChangeLog header to mark a change that does not require a copyright - assignment. - Co-authored-by: Joe User <user\@example.com> - List the specified name and email address on a second - ChangeLog header, denoting a co-author. - Signed-off-by: Joe User <user\@example.com> - These lines are simply elided. - -In a FILE specified via --amend, comment lines (starting with "#") are ignored. -FILE must consist of <SHA,CODE+> pairs where SHA is a 40-byte SHA1 (alone on -a line) referring to a commit in the current project, and CODE refers to one -or more consecutive lines of Perl code. Pairs must be separated by one or -more blank line. - -Here is sample input for use with --amend=FILE, from coreutils: - -3a169f4c5d9159283548178668d2fae6fced3030 -# fix typo in title: -s/all tile types/all file types/ - -1379ed974f1fa39b12e2ffab18b3f7a607082202 -# Due to a bug in vc-dwim, I mis-attributed a patch by Paul to myself. -# Change the author to be Paul. Note the escaped "@": -s,Jim .*>,Paul Eggert <eggert\\\@cs.ucla.edu>, - -EOF - } - exit $exit_code; -} - -# If the string $S is a well-behaved file name, simply return it. -# If it contains white space, quotes, etc., quote it, and return the new string. -sub shell_quote($) -{ - my ($s) = @_; - if ($s =~ m![^\w+/.,-]!) - { - # Convert each single quote to '\'' - $s =~ s/\'/\'\\\'\'/g; - # Then single quote the string. - $s = "'$s'"; - } - return $s; -} - -sub quoted_cmd(@) -{ - return join (' ', map {shell_quote $_} @_); -} - -# Parse file F. -# Comment lines (starting with "#") are ignored. -# F must consist of <SHA,CODE+> pairs where SHA is a 40-byte SHA1 -# (alone on a line) referring to a commit in the current project, and -# CODE refers to one or more consecutive lines of Perl code. -# Pairs must be separated by one or more blank line. -sub parse_amend_file($) -{ - my ($f) = @_; - - open F, '<', $f - or die "$ME: $f: failed to open for reading: $!\n"; - - my $fail; - my $h = {}; - my $in_code = 0; - my $sha; - while (defined (my $line = <F>)) - { - $line =~ /^\#/ - and next; - chomp $line; - $line eq '' - and $in_code = 0, next; - - if (!$in_code) - { - $line =~ /^([0-9a-fA-F]{40})$/ - or (warn "$ME: $f:$.: invalid line; expected an SHA1\n"), - $fail = 1, next; - $sha = lc $1; - $in_code = 1; - exists $h->{$sha} - and (warn "$ME: $f:$.: duplicate SHA1\n"), - $fail = 1, next; - } - else - { - $h->{$sha} ||= ''; - $h->{$sha} .= "$line\n"; - } - } - close F; - - $fail - and exit 1; - - return $h; -} - -# git_dir_option $SRCDIR -# -# From $SRCDIR, the --git-dir option to pass to git (none if $SRCDIR -# is undef). Return as a list (0 or 1 element). -sub git_dir_option($) -{ - my ($srcdir) = @_; - my @res = (); - if (defined $srcdir) - { - my $qdir = shell_quote $srcdir; - my $cmd = "cd $qdir && git rev-parse --show-toplevel"; - my $qcmd = shell_quote $cmd; - my $git_dir = qx($cmd); - defined $git_dir - or die "$ME: cannot run $qcmd: $!\n"; - $? == 0 - or die "$ME: $qcmd had unexpected exit code or signal ($?)\n"; - chomp $git_dir; - push @res, "--git-dir=$git_dir/.git"; - } - @res; -} - -{ - my $since_date; - my $format_string = '%s%n%b%n'; - my $amend_file; - my $append_dot = 0; - my $cluster = 1; - my $strip_tab = 0; - my $strip_cherry_pick = 0; - my $srcdir; - GetOptions - ( - help => sub { usage 0 }, - version => sub { print "$ME version $VERSION\n"; exit }, - 'since=s' => \$since_date, - 'format=s' => \$format_string, - 'amend=s' => \$amend_file, - 'append-dot' => \$append_dot, - 'cluster!' => \$cluster, - 'strip-tab' => \$strip_tab, - 'strip-cherry-pick' => \$strip_cherry_pick, - 'srcdir=s' => \$srcdir, - ) or usage 1; - - defined $since_date - and unshift @ARGV, "--since=$since_date"; - - # This is a hash that maps an SHA1 to perl code (i.e., s/old/new/) - # that makes a correction in the log or attribution of that commit. - my $amend_code = defined $amend_file ? parse_amend_file $amend_file : {}; - - my @cmd = ('git', - git_dir_option $srcdir, - qw(log --log-size), - '--pretty=format:%H:%ct %an <%ae>%n%n'.$format_string, @ARGV); - open PIPE, '-|', @cmd - or die ("$ME: failed to run '". quoted_cmd (@cmd) ."': $!\n" - . "(Is your Git too old? Version 1.5.1 or later is required.)\n"); - - my $prev_multi_paragraph; - my $prev_date_line = ''; - my @prev_coauthors = (); - while (1) - { - defined (my $in = <PIPE>) - or last; - $in =~ /^log size (\d+)$/ - or die "$ME:$.: Invalid line (expected log size):\n$in"; - my $log_nbytes = $1; - - my $log; - my $n_read = read PIPE, $log, $log_nbytes; - $n_read == $log_nbytes - or die "$ME:$.: unexpected EOF\n"; - - # Extract leading hash. - my ($sha, $rest) = split ':', $log, 2; - defined $sha - or die "$ME:$.: malformed log entry\n"; - $sha =~ /^[0-9a-fA-F]{40}$/ - or die "$ME:$.: invalid SHA1: $sha\n"; - - # If this commit's log requires any transformation, do it now. - my $code = $amend_code->{$sha}; - if (defined $code) - { - eval 'use Safe'; - my $s = new Safe; - # Put the unpreprocessed entry into "$_". - $_ = $rest; - - # Let $code operate on it, safely. - my $r = $s->reval("$code") - or die "$ME:$.:$sha: failed to eval \"$code\":\n$@\n"; - - # Note that we've used this entry. - delete $amend_code->{$sha}; - - # Update $rest upon success. - $rest = $_; - } - - # Remove lines inserted by "git cherry-pick". - if ($strip_cherry_pick) - { - $rest =~ s/^\s*Conflicts:\n.*//sm; - $rest =~ s/^\s*\(cherry picked from commit [\da-f]+\)\n//m; - } - - my @line = split "\n", $rest; - my $author_line = shift @line; - defined $author_line - or die "$ME:$.: unexpected EOF\n"; - $author_line =~ /^(\d+) (.*>)$/ - or die "$ME:$.: Invalid line " - . "(expected date/author/email):\n$author_line\n"; - - # Format 'Copyright-paperwork-exempt: Yes' as a standard ChangeLog - # `(tiny change)' annotation. - my $tiny = (grep (/^Copyright-paperwork-exempt:\s+[Yy]es$/, @line) - ? ' (tiny change)' : ''); - - my $date_line = sprintf "%s %s$tiny\n", - strftime ("%F", localtime ($1)), $2; - - my @coauthors = grep /^Co-authored-by:.*$/, @line; - # Omit meta-data lines we've already interpreted. - @line = grep !/^(?:Signed-off-by:[ ].*>$ - |Co-authored-by:[ ] - |Copyright-paperwork-exempt:[ ] - )/x, @line; - - # Remove leading and trailing blank lines. - if (@line) - { - while ($line[0] =~ /^\s*$/) { shift @line; } - while ($line[$#line] =~ /^\s*$/) { pop @line; } - } - - # Record whether there are two or more paragraphs. - my $multi_paragraph = grep /^\s*$/, @line; - - # Format 'Co-authored-by: A U Thor <email@example.com>' lines in - # standard multi-author ChangeLog format. - for (@coauthors) - { - s/^Co-authored-by:\s*/\t /; - s/\s*</ </; - - /<.*?@.*\..*>/ - or warn "$ME: warning: missing email address for " - . substr ($_, 5) . "\n"; - } - - # If clustering of commit messages has been disabled, if this header - # would be different from the previous date/name/email/coauthors header, - # or if this or the previous entry consists of two or more paragraphs, - # then print the header. - if ( ! $cluster - || $date_line ne $prev_date_line - || "@coauthors" ne "@prev_coauthors" - || $multi_paragraph - || $prev_multi_paragraph) - { - $prev_date_line eq '' - or print "\n"; - print $date_line; - @coauthors - and print join ("\n", @coauthors), "\n"; - } - $prev_date_line = $date_line; - @prev_coauthors = @coauthors; - $prev_multi_paragraph = $multi_paragraph; - - # If there were any lines - if (@line == 0) - { - warn "$ME: warning: empty commit message:\n $date_line\n"; - } - else - { - if ($append_dot) - { - # If the first line of the message has enough room, then - if (length $line[0] < 72) - { - # append a dot if there is no other punctuation or blank - # at the end. - $line[0] =~ /[[:punct:]\s]$/ - or $line[0] .= '.'; - } - } - - # Remove one additional leading TAB from each line. - $strip_tab - and map { s/^\t// } @line; - - # Prefix each non-empty line with a TAB. - @line = map { length $_ ? "\t$_" : '' } @line; - - print "\n", join ("\n", @line), "\n"; - } - - defined ($in = <PIPE>) - or last; - $in ne "\n" - and die "$ME:$.: unexpected line:\n$in"; - } - - close PIPE - or die "$ME: error closing pipe from " . quoted_cmd (@cmd) . "\n"; - # FIXME-someday: include $PROCESS_STATUS in the diagnostic - - # Complain about any unused entry in the --amend=F specified file. - my $fail = 0; - foreach my $sha (keys %$amend_code) - { - warn "$ME:$amend_file: unused entry: $sha\n"; - $fail = 1; - } - - exit $fail; -} - -# Local Variables: -# mode: perl -# indent-tabs-mode: nil -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "my $VERSION = '" -# time-stamp-format: "%:y-%02m-%02d %02H:%02M" -# time-stamp-time-zone: "UTC" -# time-stamp-end: "'; # UTC" -# End: diff --git a/cmake/header.cmake b/cmake/header.cmake deleted file mode 100644 index 5fe3d536e343f3013431cb23f9b7a9ab282ed78e..0000000000000000000000000000000000000000 --- a/cmake/header.cmake +++ /dev/null @@ -1,182 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# _SETUP_PROJECT_HEADER -# --------------------- -# -# This setup CMake to handle headers properly. -# -# 1. The `include` directory in the build and source trees is added -# to the include search path (see INCLUDE_DIRECTORIES). -# As always, the build directory has the priority over the source -# directory in case of conflict. -# -# However you *should not* have conflicting names -# for files which are both in the build and source trees. -# Conflicting names are filenames which differ only by a prefix: -# -# include/a.h vs _build/include/a.h -# src/a.h vs src/foo/a.h -# -# ...this files makes a project very fragile as the -I ordering -# will have a lot of importance and may break easily when using -# tools which may reorder the pre-processor flags such as pkg-config. -# -# -# 2. The headers are installed in the prefix -# in a way which preserves the directory structure. -# -# The directory name for header follows the rule: -# each non alpha-numeric character is replaced by a slash (`/`). -# In practice, it means that hpp-util will put its header in: -# ${CMAKE_INSTALL_PREFIX}/include/hpp/util -# -# This rule has been decided to homogenize headers location, however -# some packages do not follow this rule (dg-middleware for instance). -# -# In that case, CUSTOM_HEADER_DIR can be set to override this policy. -# -# Reminder: breaking the JRL/LAAS policies shoud be done after -# discussing the issue. You should at least open a ticket -# or send an e-mail to notify this behavior. -# -MACRO(_SETUP_PROJECT_HEADER) - # Install project headers. - IF(DEFINED CUSTOM_HEADER_DIR) - SET(HEADER_DIR "${CUSTOM_HEADER_DIR}") - ELSE(DEFINED CUSTOM_HEADER_DIR) - STRING(REGEX REPLACE "[^a-zA-Z0-9]" "/" HEADER_DIR "${PROJECT_NAME}") - ENDIF(DEFINED CUSTOM_HEADER_DIR) - - STRING(TOLOWER "${HEADER_DIR}" "HEADER_DIR") - - # Generate config.hh header. - STRING(REGEX REPLACE "[^a-zA-Z0-9]" "_" - PACKAGE_CPPNAME "${PROJECT_NAME}") - STRING(TOLOWER "${PACKAGE_CPPNAME}" "PACKAGE_CPPNAME_LOWER") - STRING(TOUPPER "${PACKAGE_CPPNAME}" "PACKAGE_CPPNAME") - GENERATE_CONFIGURATION_HEADER( - ${HEADER_DIR} config.hh ${PACKAGE_CPPNAME} - ${PACKAGE_CPPNAME_LOWER}_EXPORTS) - - # Generate deprecated.hh header. - CONFIGURE_FILE( - ${PROJECT_SOURCE_DIR}/cmake/deprecated.hh.cmake - ${CMAKE_CURRENT_BINARY_DIR}/include/${HEADER_DIR}/deprecated.hh - @ONLY - ) - INSTALL(FILES - ${CMAKE_CURRENT_BINARY_DIR}/include/${HEADER_DIR}/deprecated.hh - DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${HEADER_DIR} - PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE - ) - # Generate warning.hh header. - CONFIGURE_FILE( - ${PROJECT_SOURCE_DIR}/cmake/warning.hh.cmake - ${CMAKE_CURRENT_BINARY_DIR}/include/${HEADER_DIR}/warning.hh - @ONLY - ) - - INSTALL(FILES - ${CMAKE_CURRENT_BINARY_DIR}/include/${HEADER_DIR}/warning.hh - DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${HEADER_DIR} - PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE - ) - - - # Generate config.h header. - # This header, unlike the previous one is *not* installed and is generated - # in the top-level directory of the build tree. - # Therefore it must not be inluded by any distributed header. - CONFIGURE_FILE( - ${PROJECT_SOURCE_DIR}/cmake/config.h.cmake - ${CMAKE_CURRENT_BINARY_DIR}/config.h - ) - INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/config.h - DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${HEADER_DIR} - PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE - ) - - # Default include directories: - # - top-level build directory (for generated non-distributed headers). - # - include directory in the build tree (for generated, distributed headers). - # - include directory in the source tree (non-generated, distributed headers). - INCLUDE_DIRECTORIES( - ${CMAKE_CURRENT_BINARY_DIR} - ${CMAKE_CURRENT_BINARY_DIR}/include - ${PROJECT_SOURCE_DIR}/include - ) -ENDMACRO(_SETUP_PROJECT_HEADER) - -# GENERATE_CONFIGURATION_HEADER -# ----------------------------- -# -# This macro generates a configuration header. Macro parameters may be -# used to customize it. -# -# HEADER_DIR : where to generate the header -# FILENAME : how should the file named -# LIBRARY_NAME : CPP symbol prefix, should match the compiled library name -# EXPORT_SYMBOl : what symbol controls the switch between symbol import/export -FUNCTION(GENERATE_CONFIGURATION_HEADER - HEADER_DIR FILENAME LIBRARY_NAME EXPORT_SYMBOL) - # Generate the header. - CONFIGURE_FILE( - ${PROJECT_SOURCE_DIR}/cmake/config.hh.cmake - ${CMAKE_CURRENT_BINARY_DIR}/include/${HEADER_DIR}/${FILENAME} - @ONLY - ) - # Install it. - INSTALL(FILES - ${CMAKE_CURRENT_BINARY_DIR}/include/${HEADER_DIR}/${FILENAME} - DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${HEADER_DIR} - PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE - ) -ENDFUNCTION(GENERATE_CONFIGURATION_HEADER) - - -# _SETUP_PROJECT_HEADER_FINAlIZE -# ------------------------------ -# -# Post-processing of the header management step. -# Install public headers if required. -# -MACRO(_SETUP_PROJECT_HEADER_FINAlIZE) - # If the header list is set, install it. - IF(DEFINED ${PROJECT_NAME}_HEADERS) - FOREACH(FILE ${${PROJECT_NAME}_HEADERS}) - HEADER_INSTALL (${FILE}) - ENDFOREACH(FILE) - ENDIF(DEFINED ${PROJECT_NAME}_HEADERS) -ENDMACRO(_SETUP_PROJECT_HEADER_FINAlIZE) - - -# HEADER_INSTALL(FILES) -# ------------------------------- -# -# Install a list of headers. -# -MACRO(HEADER_INSTALL FILES) - FOREACH(FILE ${FILES}) - GET_FILENAME_COMPONENT(DIR "${FILE}" PATH) - STRING(REGEX REPLACE "${CMAKE_BINARY_DIR}" "" DIR "${DIR}") - STRING(REGEX REPLACE "${PROJECT_SOURCE_DIR}" "" DIR "${DIR}") - STRING(REGEX REPLACE "include/" "" DIR "${DIR}") - INSTALL(FILES ${FILE} - DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/${DIR}" - PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE - ) - ENDFOREACH() -ENDMACRO() diff --git a/cmake/idl.cmake b/cmake/idl.cmake deleted file mode 100644 index a3ab276e34f0cc6ab9af3520409c190f07e569ff..0000000000000000000000000000000000000000 --- a/cmake/idl.cmake +++ /dev/null @@ -1,63 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# OMNIIDL_INCLUDE_DIRECTORIES -# --------------------------- -# -# Set include directories for omniidl -# -# DIRECTORIES: a list of directories to search for idl files. -# -MACRO (OMNIIDL_INCLUDE_DIRECTORIES) - SET (_OMNIIDL_INCLUDE_FLAG "") - FOREACH (DIR ${ARGV}) - SET (_OMNIIDL_INCLUDE_FLAG ${_OMNIIDL_INCLUDE_FLAG} - -I${DIR} " " - ) - ENDFOREACH () - STRING (REGEX REPLACE " " ";" _OMNIIDL_INCLUDE_FLAG ${_OMNIIDL_INCLUDE_FLAG}) -ENDMACRO () - -# GENERATE_IDL_FILE FILENAME DIRECTORY -# ------------------------------------ -# -# Generate stubs from an idl file. -# An include directory can also be specified. -# -# FILENAME : IDL filename without the extension -# DIRECTORY : IDL directory -# -MACRO(GENERATE_IDL_FILE FILENAME DIRECTORY) - FIND_PROGRAM(OMNIIDL omniidl) - IF(${OMNIIDL} STREQUAL OMNIIDL-NOTFOUND) - MESSAGE(FATAL_ERROR "cannot find omniidl.") - ENDIF(${OMNIIDL} STREQUAL OMNIIDL-NOTFOUND) - ADD_CUSTOM_COMMAND( - OUTPUT ${FILENAME}SK.cc ${FILENAME}.hh - COMMAND ${OMNIIDL} - ARGS -bcxx ${_OMNIIDL_INCLUDE_FLAG} ${DIRECTORY}/${FILENAME}.idl - MAIN_DEPENDENCY ${DIRECTORY}/${FILENAME}.idl - ) - SET(ALL_IDL_STUBS ${FILENAME}SK.cc ${FILENAME}.hh ${ALL_IDL_STUBS}) - - # Clean generated files. - SET_PROPERTY( - DIRECTORY APPEND PROPERTY - ADDITIONAL_MAKE_CLEAN_FILES - ${FILENAME}SK.cc ${FILENAME}.hh - ) - - LIST(APPEND LOGGING_WATCHED_VARIABLES OMNIIDL ALL_IDL_STUBS) -ENDMACRO(GENERATE_IDL_FILE FILENAME DIRECTORY) diff --git a/cmake/idlrtc.cmake b/cmake/idlrtc.cmake deleted file mode 100644 index a36627cc6cb8fab9d90c4a30b3b04715978e1757..0000000000000000000000000000000000000000 --- a/cmake/idlrtc.cmake +++ /dev/null @@ -1,74 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# GENERATE_IDL_FILE FILENAME DIRECTORY -# ------------------------------------ -# -# Generate stubs from an idl file. -# An include directory can also be specified. -# -# FILENAME : IDL filename without the extension -# DIRECTORY : IDL directory -# LIST_INCLUDE_DIRECTORIES (optional) : List of include directories -# -MACRO(GENERATE_IDLRTC_FILE FILENAME DIRECTORY) - FIND_PROGRAM(OMNIIDL omniidl) - - # Test existence of omniidl - IF(${OMNIIDL} STREQUAL OMNIIDL-NOTFOUND) - MESSAGE(FATAL_ERROR "cannot find omniidl.") - ENDIF(${OMNIIDL} STREQUAL OMNIIDL-NOTFOUND) - - # Create the flag to include directories - SET(OMNIIDL_INC_DIR "") - - # Check if there is an optional value - MESSAGE(STATUS "ARGC: "${ARGC} ) - IF(${ARGC} EQUAL 3) - # If there is, the directory to include are added. - SET(LIST_INCLUDE_DIRECTORIES ${ARGV2}) - - MESSAGE(STATUS "ARGV2: "${ARGV2} ) - FOREACH(INCDIR ${LIST_INCLUDE_DIRECTORIES}) - # The format for the first one is special - # to avoid a \ to be introduced. - IF(OMNIIDL_INC_DIR STREQUAL "") - SET(OMNIIDL_INC_DIR "-I${INCDIR}") - ELSE(OMNIIDL_INC_DIR STREQUAL "") - SET(OMNIIDL_INC_DIR ${OMNIIDL_INC_DIR} "-I${INCDIR}") - ENDIF(OMNIIDL_INC_DIR STREQUAL "") - ENDFOREACH(INCDIR ${LIST_INCLUDE_DIRECTORIES}) - - ENDIF(${ARGC} EQUAL 3) - - SET(IDL_FLAGS "-Wbuse_quotes" "-Wbh=.hh" "-Wbs=SK.cc" "-Wba" "-Wbd=DynSK.cc") - MESSAGE(STATUS "OMNIIDL_INC_DIR:" ${OMNIIDL_INC_DIR}) - ADD_CUSTOM_COMMAND( - OUTPUT ${FILENAME}SK.cc ${FILENAME}DynSK.cc ${FILENAME}.hh - COMMAND ${OMNIIDL} - ARGS -bcxx ${IDL_FLAGS} ${OMNIIDL_INC_DIR} ${DIRECTORY}/${FILENAME}.idl - MAIN_DEPENDENCY ${DIRECTORY}/${FILENAME}.idl - ) - SET(ALL_IDL_STUBS ${FILENAME}SK.cc ${FILENAME}DynSK.cc ${FILENAME}.hh ${ALL_IDL_STUBS}) - - # Clean generated files. - SET_PROPERTY( - DIRECTORY APPEND PROPERTY - ADDITIONAL_MAKE_CLEAN_FILES - ${FILENAME}SK.cc ${FILENAME}DynSK.cc ${FILENAME}.hh - ) - - LIST(APPEND LOGGING_WATCHED_VARIABLES OMNIIDL ALL_IDL_STUBS) -ENDMACRO(GENERATE_IDLRTC_FILE FILENAME DIRECTORY) diff --git a/cmake/image/visp.cmake b/cmake/image/visp.cmake deleted file mode 100644 index 1f4e054be14559e88bb8901c68264e7ba491c292..0000000000000000000000000000000000000000 --- a/cmake/image/visp.cmake +++ /dev/null @@ -1,51 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# FIND_VISP() -# ----------- -# -# Find ViSP through the use of visp-config. -# -# To make ViSP detection both robust and simple, rely on the -# visp-config tool instead of the specic CMake mechanism. -# -# One just has to make sure that visp-config is available in its path -# to make ViSP detected automagically. -# -# Implementation note: please do *not* modify this code to add a -# variable which override the path and the standard look-up algorithm, -# it introduces complexity for nothing. Fix your path instead. -MACRO(FIND_VISP) - FIND_PROGRAM(VISP_CONFIG visp-config) - IF(NOT VISP_CONFIG) - MESSAGE(FATAL_ERROR "visp-config has not been found.") - ENDIF() - EXECUTE_PROCESS( - COMMAND ${VISP_CONFIG} --prefix - OUTPUT_VARIABLE VISP_PREFIX - OUTPUT_STRIP_TRAILING_WHITESPACE) - EXECUTE_PROCESS( - COMMAND ${VISP_CONFIG} --cflags - OUTPUT_VARIABLE VISP_CFLAGS - OUTPUT_STRIP_TRAILING_WHITESPACE) - EXECUTE_PROCESS( - COMMAND ${VISP_CONFIG} --libs - OUTPUT_VARIABLE VISP_LIBS - OUTPUT_STRIP_TRAILING_WHITESPACE) - EXECUTE_PROCESS( - COMMAND ${VISP_CONFIG} --dumpversion - OUTPUT_VARIABLE VISP_VERSION - OUTPUT_STRIP_TRAILING_WHITESPACE) -ENDMACRO(FIND_VISP) diff --git a/cmake/install-data.cmake b/cmake/install-data.cmake deleted file mode 100644 index 4130e200ab62a139aab05a399b46d4861d93a4a3..0000000000000000000000000000000000000000 --- a/cmake/install-data.cmake +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# _INSTALL_PROJECT_DATA -# --------------------- -# -# Build the installation rules to install data-files. -# -MACRO(_INSTALL_PROJECT_DATA) - IF(DEFINED PROJECT_DATA) - INSTALL(FILES ${PROJECT_DATA} - DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/${PROJECT_NAME} - PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE - ) - ENDIF(DEFINED PROJECT_DATA) -ENDMACRO(_INSTALL_PROJECT_DATA) diff --git a/cmake/kineo.cmake b/cmake/kineo.cmake deleted file mode 100644 index 911a26745072926b6588198828001e247dee6461..0000000000000000000000000000000000000000 --- a/cmake/kineo.cmake +++ /dev/null @@ -1,90 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. -# -# Create and install KineoPathPlanner (Kitelab) add-on modules. - -# KINEO_ADDON -# ----------- -# -# Build a add-on module for KineoPathPlanner -# -# MODULE_NAME : name of the module -# -# 1. compile a shared object named lib${MODULE_NAME}.so the sources of -# which are defined by (global) variable KINEO_ADDON_SOURCES, -# 2. install this shared object in lib/modules/${UNAME_N} where ${UNAME_N} -# is the result of command "uname -n": the name of the machine, -# 3. generate a target named "license" that creates the required .kab file. -# Note that you must be in possession of a valid kineo license file. -# -# Before calling this macro, it is recommended to reset variable -# PKG_CONFIG_LIBS to the empty string since the right directory is appended -# to the "libs:" field of the .pc file by the macro. -# -MACRO(KINEO_ADDON MODULE_NAME) - EXECUTE_PROCESS(COMMAND "uname" "-n" - OUTPUT_VARIABLE UNAME_N ERROR_QUIET) - STRING(REPLACE "\n" "" UNAME_N "${UNAME_N}") - - SET(ADDON_INSTALLDIR lib/modules/${UNAME_N}) - PKG_CONFIG_APPEND_LIBRARY_DIR(${CMAKE_INSTALL_PREFIX}/${ADDON_INSTALLDIR}) - PKG_CONFIG_APPEND_LIBS(${PROJECT_NAME}) - ADD_LIBRARY(${MODULE_NAME} SHARED ${KINEO_ADDON_SOURCES}) - SET_TARGET_PROPERTIES(${MODULE_NAME} PROPERTIES - SOVERSION ${PROJECT_VERSION} - INSTALL_RPATH ${ADDON_INSTALLDIR} - ) - ADD_CUSTOM_COMMAND(OUTPUT ${ADDON_INSTALLDIR}/lib${MODULE_NAME}.kab - DEPEND ${ADDON_INSTALLDIR}/lib${MODULE_NAME}.so - COMMAND KineoAddonBuilder ARGS - -m ${CMAKE_INSTALL_PREFIX}/${ADDON_INSTALLDIR}/lib${MODULE_NAME}.so) - ADD_CUSTOM_TARGET(license - DEPENDS ${ADDON_INSTALLDIR}/lib${MODULE_NAME}.kab) - ADD_DEPENDENCIES(license - ${CMAKE_INSTALL_PREFIX}/${ADDON_INSTALLDIR}/lib${MODULE_NAME}.so) - INSTALL(TARGETS ${MODULE_NAME} DESTINATION ${ADDON_INSTALLDIR}) -ENDMACRO() - -# KINEO_STANDALONE -# ---------------- -# -# Build a standalone executable for Kineo -# -# STANDALONE_NAME : name of the executable -# -# 1. compile a kineo add-on builder file ${STANDALONE_NAME}.kab from -# the executable ${STANDALONE_NAME}, -# 2. install this .kab file in the the current build directory, -# i.e. at the same location as the executable, -# 3. generate a target named "license" that creates the required -# .kab file. Note that you must be in possession of a valid -# kineo license file. -# -MACRO(KINEO_STANDALONE STANDALONE_NAME) - ADD_CUSTOM_COMMAND( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${STANDALONE_NAME}.kab - DEPEND ${CMAKE_CURRENT_BUILD_DIR}/${STANDALONE_NAME} - COMMAND KineoAddonBuilder - ARGS -a ${CMAKE_CURRENT_BINARY_DIR}/${STANDALONE_NAME} - ) - ADD_CUSTOM_TARGET( - ${STANDALONE_NAME}-license ALL - DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${STANDALONE_NAME}.kab - ) - ADD_DEPENDENCIES( - ${STANDALONE_NAME}-license - ${CMAKE_CURRENT_BINARY_DIR}/${STANDALONE_NAME} - ) -ENDMACRO() diff --git a/cmake/lapack.cmake b/cmake/lapack.cmake deleted file mode 100644 index 9940c425c4ef3bd36463eda2d30bd12ccf26d864..0000000000000000000000000000000000000000 --- a/cmake/lapack.cmake +++ /dev/null @@ -1,58 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# SEARCH_FOR_LAPACK -# ----------------- -# -# Search for LAPACK in a portable way. -# -# This macro deals with Visual Studio Fortran incompatibilities -# and add detected flags to the pkg-config file automatically. -# -MACRO(SEARCH_FOR_LAPACK) - IF(NOT "${CMAKE_GENERATOR}" MATCHES "Visual Studio.*") - ENABLE_LANGUAGE(Fortran) - ENDIF(NOT "${CMAKE_GENERATOR}" MATCHES "Visual Studio.*") - - FIND_PACKAGE(LAPACK REQUIRED) - - IF(NOT LAPACK_FOUND) - MESSAGE(FATAL_ERROR "Failed to detect LAPACK.") - ENDIF(NOT LAPACK_FOUND) - - IF(WIN32) - # Enabling Fortran on Win32 causes the definition of variables - # that change the name of the library built, add the prefix 'lib' - # These commands are Counter CMake mesures: - SET(CMAKE_STATIC_LIBRARY_PREFIX "") - SET(CMAKE_SHARED_LIBRARY_PREFIX "") - SET(CMAKE_SHARED_MODULE_PREFIX "") - SET(CMAKE_LINK_LIBRARY_SUFFIX ".lib") - ENDIF(WIN32) - - PKG_CONFIG_APPEND_LIBS_RAW("${LAPACK_LINKER_FLAGS};${LAPACK_LIBRARIES}") - - # Watch variables. - LIST(APPEND LOGGING_WATCHED_VARIABLES - LAPACK_FOUND - LAPACK_LINKER_FLAGS - LAPACK_LIBRARIES - LAPACK95_LIBRARIES - LAPACK95_FOUND - BLA_STATIC - BLA_VENDOR - BLA_F95 - ) -ENDMACRO(SEARCH_FOR_LAPACK) diff --git a/cmake/logging.cmake b/cmake/logging.cmake deleted file mode 100644 index 190c88bda27e3d16c961575eb33df6c353841db0..0000000000000000000000000000000000000000 --- a/cmake/logging.cmake +++ /dev/null @@ -1,194 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -########## -# README # -########## -# -# This file implements an Autotools-like config.log logging file. -# This file is generated at each project configuration and contains -# all information about the system, the environment variables, the -# flags passed to CMake, etc. -# - -# Logging file. -SET(LOGGING_FILENAME "${CMAKE_BINARY_DIR}/config.log") - -# Watched variables list. -# All watched variables final value will be displayed in the logging file. -SET(LOGGING_WATCHED_VARIABLES "") - -# Watched targets list. -# All watched target properties will be displayed in the logging file. -SET(LOGGING_WATCHED_TARGETS "") - -# Watched targets properties list. -SET(LOGGING_WATCHED_TARGETS_PROPERTIES - COMPILE_DEFINITIONS - COMPILE_FLAGS - DEFINE_SYMBOL - ENABLE_EXPORTS - EXCLUDE_FROM_ALL - LINK_FLAGS - SOVERSION - VERSION) - -# Define character separating values in a portable way. -IF(UNIX) - SET(LIST_SEPARATOR ":") -ELSEIF(WIN32) - SET(LIST_SEPARATOR ";") -ELSE(UNIX) - MESSAGE(FATAL_ERROR "Your platform is not supported.") -ENDIF(UNIX) - -# LOGGING_INITIALIZE() -# -------------- -# -# This initializes the logging process by: -# - cleaning any previous config.log -# - writing global information. -# -FUNCTION(LOGGING_INITIALIZE) - # Retrieve interesting information. - IF(${CMAKE_VERSION} VERSION_LESS 2.8) - SET(HOSTNAME "unknown (CMake >= 2.8 required)") - ELSE() - SITE_NAME(HOSTNAME) - ENDIF() - - # Write logging file. - FILE(REMOVE ${LOGGING_FILENAME}) - - FILE(APPEND ${LOGGING_FILENAME} - "This file contains any messages produced by compilers while\n" - "running CMake, to aid debugging if configure makes a mistake.\n\n") - - FILE(APPEND ${LOGGING_FILENAME} - "It was created by ${CMAKE_PROJECT_NAME} CMake configuration process " - "${PROJECT_VERSION}, which was\n" - "generated by CMake ${CMAKE_VERSION}.\n\n") - - FILE(APPEND ${LOGGING_FILENAME} - "## --------- ##\n" - "## Platform. ##\n" - "## --------- ##\n" - "\n" - "hostname = ${HOSTNAME}\n" - "system = ${CMAKE_SYSTEM}\n" - "processor = ${CMAKE_SYSTEM_PROCESSOR}\n" - "generator = ${CMAKE_GENERATOR}\n" - "\n") - - IF(NOT "$ENV{PATH}" STREQUAL "") - STRING(REPLACE "${LIST_SEPARATOR}" "\nPATH " PATH "$ENV{PATH}") - ELSE() - SET(PATH undefined) - ENDIF() - FILE(APPEND ${LOGGING_FILENAME} "PATH " ${PATH} "\n\n") - - IF(NOT "$ENV{PKG_CONFIG_PATH}" STREQUAL "") - STRING( - REPLACE "${LIST_SEPARATOR}" "\nPKG_CONFIG_PATH " - PKG_CONFIG_PATH "$ENV{PKG_CONFIG_PATH}") - ELSE() - SET(PKG_CONFIG_PATH "undefined") - ENDIF() - FILE(APPEND ${LOGGING_FILENAME} "PKG_CONFIG_PATH " ${PKG_CONFIG_PATH} "\n\n") - -ENDFUNCTION(LOGGING_INITIALIZE) - -# LOGGING_FINALIZE() -# -------------- -# -# This finalizes the logging process by: -# - logging the watched variables -# -FUNCTION(LOGGING_FINALIZE) - FILE(APPEND ${LOGGING_FILENAME} - "## ---------------- ##\n" - "## CMake variables. ##\n" - "## ---------------- ##\n" - "\n" - "CMAKE_ROOT = ${CMAKE_ROOT}\n" - "CMAKE_INCLUDE_PATH = ${CMAKE_INCLUDE_PATH}\n" - "CMAKE_LIBRARY_PATH = ${CMAKE_LIBRARY_PATH}\n" - "CMAKE_PREFIX_PATH = ${CMAKE_PREFIX_PATH}\n" - "CMAKE_INSTALL_ALWAYS = ${CMAKE_INSTALL_ALWAYS}\n" - "CMAKE_SKIP_RPATH = ${CMAKE_SKIP_RPATH}\n" - "CMAKE_SUPPRESS_REGENERATION = ${CMAKE_SUPPRESS_REGENERATION}\n" - "BUILD_SHARED_LIBS = ${BUILD_SHARED_LIBS}\n" - "\n" - "CMAKE_INSTALL_PREFIX = ${CMAKE_INSTALL_PREFIX}\n" - "PROJECT_SOURCE_DIR = ${PROJECT_SOURCE_DIR}\n" - "PROJECT_SOURCE_DIR = ${PROJECT_SOURCE_DIR}\n" - "PROJECT_BINARY_DIR = ${PROJECT_BINARY_DIR}\n" - "CMAKE_BINARY_DIR = ${CMAKE_BINARY_DIR}\n" - "\n" - "CMAKE_AR = ${CMAKE_AR}\n" - "CMAKE_RANLIB = ${CMAKE_RANLIB}\n" - "CMAKE_BUILD_TYPE = ${CMAKE_BUILD_TYPE}\n" - "CMAKE_CONFIGURATION_TYPES = ${CMAKE_CONFIGURATION_TYPES}\n" - "CMAKE_SHARED_LINKER_FLAGS = ${CMAKE_SHARED_LINKER_FLAGS}\n" - "\n" - "CMAKE_C_COMPILER = ${CMAKE_C_COMPILER}\n" - "CMAKE_C_FLAGS = ${CMAKE_C_FLAGS}\n" - "CMAKE_C_FLAGS_DEBUG = ${CMAKE_C_FLAGS_DEBUG}\n" - "CMAKE_C_FLAGS_RELEASE = ${CMAKE_C_FLAGS_RELEASE}\n" - "CMAKE_CXX_COMPILER = ${CMAKE_CXX_COMPILER}\n" - "CMAKE_CXX_FLAGS = ${CMAKE_CXX_FLAGS}\n" - "CMAKE_CXX_FLAGS_DEBUG = ${CMAKE_CXX_FLAGS_DEBUG}\n" - "CMAKE_CXX_FLAGS_RELEASE = ${CMAKE_CXX_FLAGS_RELEASE}\n" - "CMAKE_CXX_FLAGS_RELWITHDEBINFO = ${CMAKE_CXX_FLAGS_RELWITHDEBINFO}\n" - "\n" - "CMAKE_STATIC_LIBRARY_PREFIX = ${CMAKE_STATIC_LIBRARY_PREFIX}\n" - "CMAKE_STATIC_LIBRARY_SUFFIX = ${CMAKE_STATIC_LIBRARY_SUFFIX}\n" - "CMAKE_SHARED_LIBRARY_PREFIX = ${CMAKE_SHARED_LIBRARY_PREFIX}\n" - "CMAKE_SHARED_LIBRARY_SUFFIX = ${CMAKE_SHARED_LIBRARY_SUFFIX}\n" - "CMAKE_SHARED_MODULE_PREFIX = ${CMAKE_SHARED_MODULE_PREFIX}\n" - "CMAKE_SHARED_MODULE_SUFFIX = ${CMAKE_SHARED_MODULE_SUFFIX}\n" - "\n" - ) - - FILE(APPEND ${LOGGING_FILENAME} - "## ------------------ ##\n" - "## Watched variables. ##\n" - "## ------------------ ##\n" - "\n") - - LIST(REMOVE_DUPLICATES LOGGING_WATCHED_VARIABLES) - FOREACH(VAR ${LOGGING_WATCHED_VARIABLES}) - IF(NOT DEFINED ${VAR}) - SET(${VAR} "undefined") - ENDIF() - FILE(APPEND ${LOGGING_FILENAME} - "${VAR} = ${${VAR}}\n") - ENDFOREACH() - - FILE(APPEND ${LOGGING_FILENAME} - "## ---------------- ##\n" - "## Watched targets. ##\n" - "## ---------------- ##\n" - "\n") - - LIST(REMOVE_DUPLICATES LOGGING_WATCHED_TARGETS) - FOREACH(TARGET ${LOGGING_WATCHED_TARGETS}) - FOREACH(PROPERTY ${LOGGING_WATCHED_TARGETS_PROPERTIES}) - GET_TARGET_PROPERTY(VALUE ${TARGET} ${PROPERTY}) - FILE(APPEND ${LOGGING_FILENAME} "${TARGET}_${PROPERTY} = ${VALUE}\n") - ENDFOREACH() - FILE(APPEND ${LOGGING_FILENAME} "\n") - ENDFOREACH() -ENDFUNCTION(LOGGING_FINALIZE) diff --git a/cmake/man.cmake b/cmake/man.cmake deleted file mode 100644 index ead0c474da078ad92bccf23f506c6407694b5cb0..0000000000000000000000000000000000000000 --- a/cmake/man.cmake +++ /dev/null @@ -1,63 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# MANPAGE -# ------- -# -# Generate a pod man page from a template, then -# generate the man page and compress it. -# This macro also adds the installation rules. -# -MACRO(MANPAGE NAME) - IF(WIN32) - MESSAGE(FATAL_ERROR "This macro is not supported on Microsoft Windows.") - ENDIF(WIN32) - - FIND_PROGRAM(POD2MAN pod2man) - FIND_PROGRAM(GZIP gzip) - CONFIGURE_FILE(${NAME}.pod.in ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.pod @ONLY) - - ADD_CUSTOM_COMMAND( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.1 - COMMAND ${POD2MAN} --section=1 - --center="LOCAL USER COMMANDS" - --release ${PROJECT_NAME} ${NAME}.pod - > ${NAME}.1 - DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.pod) - - ADD_CUSTOM_COMMAND( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.1.gz - COMMAND ${GZIP} -c ${NAME}.1 > ${NAME}.1.gz - DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.1) - - # Trigger man page generation at install. - INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_MAKE_PROGRAM} man)") - - # Detects if PKGMAN has been specified - SET(DESTINATION_MAN_PAGE share/man/man1) - IF(MANDIR) - SET(DESTINATION_MAN_PAGE ${MANDIR}/man1) - ENDIF(MANDIR) - - # Install man page. - INSTALL( - FILES ${CMAKE_CURRENT_BINARY_DIR}/${NAME}.1.gz - DESTINATION ${DESTINATION_MAN_PAGE}) - - LIST(APPEND LOGGING_WATCHED_VARIABLES - POD2MAN - GZIP - ) -ENDMACRO(MANPAGE) diff --git a/cmake/metapodfromurdf.cmake b/cmake/metapodfromurdf.cmake deleted file mode 100644 index 1c04e039d68af7a481c2f96665fe4a1c259a0ce6..0000000000000000000000000000000000000000 --- a/cmake/metapodfromurdf.cmake +++ /dev/null @@ -1,45 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# Olivier STASSE (LAAS,CNRS) -# macro inspired from Sébastien Barthélémy in laas/metapod -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - - -MACRO(ADD_METAPOD_FROM_URDF_MODEL model_name) - - SET(robot_name "robot_${model_name}") - SET(lib_robot_name "metapod_${model_name}") - SET(dir_robot - ${PROJECT_BINARY_DIR}/include/metapod/models/${model_name} - ) - SET(robot_name_sources - ${dir_robot}/${model_name}.hh - ${dir_robot}/${model_name}.cc - ) - SET(data_robot_dir ${METAPOD_PREFIX}/share/metapod/data/${model_name}) - SET(config_file_robot ${data_robot_dir}/${model_name}.config) - SET(license_file_robot ${data_robot_dir}/${model_name}_license_file.txt) - SET(urdf_file_robot ${data_robot_dir}/${model_name}.urdf) - - ADD_CUSTOM_COMMAND( - OUTPUT ${robot_name_sources} - COMMAND metapodfromurdf - --name ${model_name} - --libname ${lib_robot_name} - --directory ${dir_robot} - --config-file ${config_file_robot} - --license-file ${license_file_robot} - ${urdf_file_robot} - ) -ENDMACRO(ADD_METAPOD_FROM_URDF_MODEL) diff --git a/cmake/openhrp.cmake b/cmake/openhrp.cmake deleted file mode 100644 index a1d454fd35b5502b7db4513411faa765b3ab0608..0000000000000000000000000000000000000000 --- a/cmake/openhrp.cmake +++ /dev/null @@ -1,69 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS, LIRMM-CNRS -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - - -# Search if openhrp3.1 is installed. -# Set the value GRX_PREFIX if found -MACRO(SEARCH_GRX) - # Define additional options. - FIND_PATH(GRX_PREFIX - # Make sure bin/DynamicsSimulator exists (to validate that it is - # _really_ the prefix of an OpenHRP setup). - include/rtm/idl/SDOPackage.hh - HINTS /opt/grx/ - DOC "GRX software prefix (i.e. '/opt/grxX.Y')" - NO_DEFAULT_PATH) -ENDMACRO(SEARCH_GRX) - - -# Search if openhrp3.0(.7) is installed. -# Set the value GRX_PREFIX if found -MACRO(SEARCH_GRX3) - FIND_PATH(GRX_PREFIX - # Make sure bin/DynamicsSimulator exists (to validate that it is - # _really_ the prefix of an OpenHRP setup). - OpenHRP/DynamicsSimulator/server/DynamicsSimulator - HINTS /opt/grx3.0 - DOC "GRX software prefix (i.e. '/opt/grxX.Y')" - NO_DEFAULT_PATH) -ENDMACRO(SEARCH_GRX3) - - -# Check the robots installed in openhrp -# Args: the robot researched (and handled by the package). -# Return: the list GRX_ROBOTS -# Example: SEARCH_GRX_ROBOTS("robot1;robot2") -MACRO(SEARCH_GRX_ROBOTS HANDLED_ROBOTS) - FOREACH(robot ${HANDLED_ROBOTS}) - IF(!GRX_PREFIX) - MESSAGE(ERROR "Dit not find GRX_PREFIX") - ELSE(!GRX_PREFIX) - #List of know robots. - IF(IS_DIRECTORY ${GRX_PREFIX}/${robot}) - LIST(APPEND GRX_ROBOTS ${robot}) - ENDIF() - ENDIF(!GRX_PREFIX) - ENDFOREACH(robot) - - IF(NOT GRX_ROBOTS) - MESSAGE(FATAL_ERROR - "None of the following robots (${HANDLED_ROBOTS}) were found in ${GRX_PREFIX}." - ) - ELSE() - MESSAGE("The following robots were found: ${GRX_ROBOTS}") - ENDIF() - LIST(APPEND LOGGING_WATCHED_VARIABLES GRX_ROBOTS) -ENDMACRO(SEARCH_GRX_ROBOTS) - diff --git a/cmake/openhrpcontroller.cmake b/cmake/openhrpcontroller.cmake deleted file mode 100644 index 21c7d9db817a4bfd1bb73f8e14d87555aa7ad43c..0000000000000000000000000000000000000000 --- a/cmake/openhrpcontroller.cmake +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# OpenRTM-aist -INCLUDE(cmake/openrtm.cmake) - -macro(create_simple_controller CONTROLLER_NAME) - openrtm() - add_library(${CONTROLLER_NAME} SHARED ${CONTROLLER_NAME}.cpp) - target_link_libraries(${CONTROLLER_NAME} ${OPENRTM_LIBRARIES}) - set_target_properties(${CONTROLLER_NAME} PROPERTIES PREFIX "") - - add_executable(${CONTROLLER_NAME}Comp ${CONTROLLER_NAME}Comp.cpp ${CONTROLLER_NAME}.cpp) - target_link_libraries(${CONTROLLER_NAME}Comp ${OPENRTM_LIBRARIES}) - - if(WIN32) - add_definitions(${OPENRTM_DEFINITIONS}) - set_target_properties(${CONTROLLER_NAME}Comp PROPERTIES DEBUG_POSTFIX d ) - endif() - - set(controller_install_path lib/openhrp/controller/${CONTROLLER_NAME}) - - install(TARGETS ${CONTROLLER_NAME} ${CONTROLLER_NAME}Comp DESTINATION ${controller_install_path} CONFIGURATIONS Release) - - if(WIN32) - install(TARGETS ${CONTROLLER_NAME} ${CONTROLLER_NAME}Comp - DESTINATION ${PROJECT_SOURCE_DIR} - CONFIGURATIONS Release ) - endif() - - install(FILES rtc.conf bridge.conf DESTINATION ${controller_install_path}) - - if(EXISTS ${PROJECT_SOURCE_DIR}/etc) - install(DIRECTORY etc DESTINATION ${controller_install_path} PATTERN ".svn" EXCLUDE) - endif() - -endmacro() - diff --git a/cmake/openrtm.cmake b/cmake/openrtm.cmake deleted file mode 100644 index 88551dc0681f5013bb4652c125e4379b96e99010..0000000000000000000000000000000000000000 --- a/cmake/openrtm.cmake +++ /dev/null @@ -1,47 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# OpenRTM-aist -macro(openrtm) - - set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/cmake/) - - find_package(OpenRTM REQUIRED) - set(ADDITIONAL_SYMBOL "") - include_directories(${OPENRTM_INCLUDE_DIRS}) - link_directories(${OPENRTM_LIBRARY_DIRS}) - if(UNIX) - add_definitions(${OPENRTM_DEFINITIONS}) - endif() - - set(OPENHRP_RTM_IDL_DIR "${OpenHRP_SOURCE_DIR}/idl/OpenRTM/${OPENRTM_VERSION}") - if( OPENRTM_VERSION STREQUAL OPENRTM_VERSION042 ) - set(ADDITIONAL_SYMBOL "OPENRTM_VERSION_042") - endif() - - if(UNIX) - set(OPENRTM_IDL_DIR "${OPENRTM_DIR}/include/rtm/idl") - elseif(WIN32) - if(OPENRTM_VERSION STREQUAL OPENRTM_VERSION042) - set(OPENRTM_IDL_DIR "${OPENHRP_RTM_IDL_DIR}") - else() - set(OPENRTM_IDL_DIR "${OPENRTM_DIR}/rtm/idl") - endif() - endif() - - add_definitions(${OMNIORB_CFLAGS}) - -endmacro(openrtm) - diff --git a/cmake/pkg-config.cmake b/cmake/pkg-config.cmake deleted file mode 100644 index b657369c425511ed245135ac9779733ee2c76660..0000000000000000000000000000000000000000 --- a/cmake/pkg-config.cmake +++ /dev/null @@ -1,478 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -INCLUDE(cmake/shared-library.cmake) - -FIND_PACKAGE(PkgConfig) - -# Additional pkg-config variables whose value will be imported -# during the dependency check. -SET(PKG_CONFIG_ADDITIONAL_VARIABLES bindir pkglibdir datarootdir pkgdatarootdir docdir doxygendocdir) - -# _SETUP_PROJECT_PKG_CONFIG -# ------------------------- -# -# Prepare pkg-config pc file generation step. -# -MACRO(_SETUP_PROJECT_PKG_CONFIG) - # Pkg-config related commands. - SET(_PKG_CONFIG_PREFIX "${CMAKE_INSTALL_PREFIX}") - SET(_PKG_CONFIG_EXEC_PREFIX "${_PKG_CONFIG_PREFIX}") - SET(_PKG_CONFIG_LIBDIR "${CMAKE_INSTALL_FULL_LIBDIR}") - SET(_PKG_CONFIG_BINDIR "${CMAKE_INSTALL_FULL_BINDIR}") - SET(_PKG_CONFIG_PKGLIBDIR "${CMAKE_INSTALL_FULL_PKGLIBDIR}") - SET(_PKG_CONFIG_INCLUDEDIR "${CMAKE_INSTALL_FULL_INCLUDEDIR}") - SET(_PKG_CONFIG_DATAROOTDIR "${CMAKE_INSTALL_FULL_DATAROOTDIR}") - SET(_PKG_CONFIG_PKGDATAROOTDIR "${CMAKE_INSTALL_FULL_DATADIR}") - SET(_PKG_CONFIG_DOCDIR "${CMAKE_INSTALL_FULL_DOCDIR}") - SET(_PKG_CONFIG_DOXYGENDOCDIR "${_PKG_CONFIG_DOCDIR}/doxygen-html") - - SET(_PKG_CONFIG_PROJECT_NAME "${PROJECT_NAME}") - SET(_PKG_CONFIG_DESCRIPTION "${PROJECT_DESCRIPTION}") - SET(_PKG_CONFIG_URL "${PROJECT_URL}") - SET(_PKG_CONFIG_VERSION "${PROJECT_VERSION}") - SET(_PKG_CONFIG_REQUIRES "") - SET(_PKG_CONFIG_CONFLICTS "") - SET(_PKG_CONFIG_LIBS "${LIBDIR_KW}\${libdir}") - SET(_PKG_CONFIG_LIBS_PRIVATE "") - SET(_PKG_CONFIG_CFLAGS "-I\${includedir}") - - SET(PKG_CONFIG_EXTRA "") - - # Where to install the pkg-config file? - SET(_PKG_CONFIG_DIR "${_PKG_CONFIG_LIBDIR}/pkgconfig") - - # Watch variables. - LIST(APPEND LOGGING_WATCHED_VARIABLES - _PKG_CONFIG_FOUND - PKG_CONFIG_EXECUTABLE - _PKG_CONFIG_PREFIX - _PKG_CONFIG_EXEC_PREFIX - _PKG_CONFIG_LIBDIR - _PKG_CONFIG_BINDIR - _PKG_CONFIG_PKGLIBDIR - _PKG_CONFIG_INCLUDEDIR - _PKG_CONFIG_DATAROOTDIR - _PKG_CONFIG_PKGDATAROOTDIR - _PKG_CONFIG_DOCDIR - _PKG_CONFIG_DOXYGENDOCDIR - _PKG_CONFIG_PROJECT_NAME - _PKG_CONFIG_DESCRIPTION - _PKG_CONFIG_URL - _PKG_CONFIG_VERSION - _PKG_CONFIG_REQUIRES - _PKG_CONFIG_CONFLICTS - _PKG_CONFIG_LIBS - _PKG_CONFIG_LIBS_PRIVATE - _PKG_CONFIG_CFLAGS - PKG_CONFIG_EXTRA - ) - - # Install it. - INSTALL( - FILES "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc" - DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig - PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE) -ENDMACRO(_SETUP_PROJECT_PKG_CONFIG) - - -# _SETUP_PROJECT_PKG_CONFIG_FINALIZE -# ---------------------------------- -# -# Post-processing of the pkg-config step. -# -# The pkg-config file has to be generated at the end to allow end-user -# defined variables replacement. -# -MACRO(_SETUP_PROJECT_PKG_CONFIG_FINALIZE) - # Generate the pkg-config file. - CONFIGURE_FILE( - "${PROJECT_SOURCE_DIR}/cmake/pkg-config.pc.cmake" - "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc" - ) -ENDMACRO(_SETUP_PROJECT_PKG_CONFIG_FINALIZE) - - -# ADD_DEPENDENCY(PREFIX P_REQUIRED PKGCONFIG_STRING) -# ------------------------------------------------ -# -# Check for a dependency using pkg-config. Fail if the package cannot -# be found. -# -# P_REQUIRED : if set to 1 the package is required, otherwise it consider -# as optional. -# WARNING for optional package: -# if the package is detected its compile -# and linking options are still put in the required fields -# of the generated pc file. Indeed from the binary viewpoint -# the package becomes required. -# -# PKG_CONFIG_STRING : string passed to pkg-config to check the version. -# Typically, this string looks like: -# ``my-package >= 0.5'' -# -MACRO(ADD_DEPENDENCY P_REQUIRED DOC_ONLY PKG_CONFIG_STRING) - # Retrieve the left part of the equation to get package name. - STRING(REGEX MATCH "[^<>= ]+" LIBRARY_NAME "${PKG_CONFIG_STRING}") - # And transform it into a valid variable prefix. - # 1. replace invalid characters into underscores. - STRING(REGEX REPLACE "[^a-zA-Z0-9]" "_" PREFIX "${LIBRARY_NAME}") - # 2. make it uppercase. - STRING(TOUPPER "${PREFIX}" "PREFIX") - - # Force redetection each time CMake is launched. - # Rationale: these values are *NEVER* manually set, so information is never - # lost by overriding them. Moreover, changes in the pkg-config files are - # not seen as long as the cache is not destroyed, even if the .pc file - # is changed. This is a BAD behavior. - SET(${PREFIX}_FOUND 0) - - # Search for the package. - IF(${P_REQUIRED}) - MESSAGE(STATUS "${PKG_CONFIG_STRING} is required.") - PKG_CHECK_MODULES("${PREFIX}" REQUIRED "${PKG_CONFIG_STRING}") - ELSE(${P_REQUIRED}) - MESSAGE(STATUS "${PKG_CONFIG_STRING} is optional.") - PKG_CHECK_MODULES("${PREFIX}" "${PKG_CONFIG_STRING}") - ENDIF(${P_REQUIRED}) - - # Watch variables. - LIST(APPEND LOGGING_WATCHED_VARIABLES - ${PREFIX}_FOUND - ${PREFIX}_LIBRARIES - ${PREFIX}_LIBRARY_DIRS - ${PREFIX}_LDFLAGS - ${PREFIX}_LDFLAGS_OTHER - ${PREFIX}_INCLUDE_DIRS - ${PREFIX}_CFLAGS - ${PREFIX}_CFLAGS_OTHER - ${PREFIX} - ${PREFIX}_STATIC - ${PREFIX}_VERSION - ${PREFIX}_PREFIX - ${PREFIX}_INCLUDEDIR - ${PREFIX}_LIBDIR - ${PREFIX}_PKGLIBDIR - ${PREFIX}_BINDIR - ${PREFIX}_DATAROOTDIR - ${PREFIX}_PKGDATAROOTDIR - ${PREFIX}_DOCDIR - ${PREFIX}_DOXYGENDOCDIR - ) - - # Get the values of additional variables. - FOREACH(VARIABLE ${PKG_CONFIG_ADDITIONAL_VARIABLES}) - # Upper-case version of the variable for CMake variable generation. - STRING(TOUPPER "${VARIABLE}" "VARIABLE_UC") - EXECUTE_PROCESS( - COMMAND "${PKG_CONFIG_EXECUTABLE}" - "--variable=${VARIABLE}" "${LIBRARY_NAME}" - OUTPUT_VARIABLE "${PREFIX}_${VARIABLE_UC}" - ERROR_QUIET) - STRING(REPLACE "\n" "" "${PREFIX}_${VARIABLE_UC}" "${${PREFIX}_${VARIABLE_UC}}") - - # Watch additional variables. - LIST(APPEND LOGGING_WATCHED_VARIABLES ${PREFIX}_${VARIABLE_UC}) - ENDFOREACH(VARIABLE) - - #FIXME: spaces are replaced by semi-colon by mistakes, revert the change. - #I cannot see why CMake is doing that... - STRING(REPLACE ";" " " PKG_CONFIG_STRING "${PKG_CONFIG_STRING}") - - # Add the package to the dependency list if found and if dependency - # is triggered not only for documentation - IF((${${PREFIX}_FOUND}) AND (NOT ${DOC_ONLY})) - _ADD_TO_LIST(_PKG_CONFIG_REQUIRES "${PKG_CONFIG_STRING}" ",") - ENDIF() - - # Add the package to the cmake dependency list - # if cpack has been included. - # This is likely to disappear when Ubuntu 8.04 will - # disappear. - IF(COMMAND ADD_CMAKE_DEPENDENCY) - ADD_CMAKE_DEPENDENCY(${PKG_CONFIG_STRING}) - ENDIF(COMMAND ADD_CMAKE_DEPENDENCY) - - IF(${${PREFIX}_FOUND}) - MESSAGE(STATUS - "Pkg-config module ${LIBRARY_NAME} v${${PREFIX}_VERSION}" - " has been detected with success.") - ENDIF() - -ENDMACRO(ADD_DEPENDENCY) - -# ADD_REQUIRED_DEPENDENCY(PREFIX PKGCONFIG_STRING) -# ------------------------------------------------ -# -# Check for a dependency using pkg-config. Fail if the package cannot -# be found. -# -# PKG_CONFIG_STRING : string passed to pkg-config to check the version. -# Typically, this string looks like: -# ``my-package >= 0.5'' -# -MACRO(ADD_REQUIRED_DEPENDENCY PKG_CONFIG_STRING) - ADD_DEPENDENCY(1 0 ${PKG_CONFIG_STRING}) -ENDMACRO(ADD_REQUIRED_DEPENDENCY) - -# ADD_OPTIONAL_DEPENDENCY(PREFIX PKGCONFIG_STRING) -# ------------------------------------------------ -# -# Check for a dependency using pkg-config. Quiet if the package cannot -# be found. -# -# PKG_CONFIG_STRING : string passed to pkg-config to check the version. -# Typically, this string looks like: -# ``my-package >= 0.5'' -# -MACRO(ADD_OPTIONAL_DEPENDENCY PKG_CONFIG_STRING) - ADD_DEPENDENCY(0 0 ${PKG_CONFIG_STRING}) -ENDMACRO(ADD_OPTIONAL_DEPENDENCY) - -# ADD_DOC_DEPENDENCY(PREFIX PKGCONFIG_STRING) -# ------------------------------------------------ -# -# Check for a dependency using pkg-config. Do not express dependency in -# "requires" field. -# -# PKG_CONFIG_STRING : string passed to pkg-config to check the version. -# Typically, this string looks like: -# ``my-package >= 0.5'' -# -MACRO(ADD_DOC_DEPENDENCY PKG_CONFIG_STRING) - ADD_DEPENDENCY(1 1 ${PKG_CONFIG_STRING}) -ENDMACRO(ADD_DOC_DEPENDENCY) - -# PKG_CONFIG_APPEND_LIBRARY_DIR -# ----------------------------- -# -# This macro adds library directories in a portable way -# into the CMake file. -MACRO(PKG_CONFIG_APPEND_LIBRARY_DIR DIRS) - FOREACH(DIR ${DIRS}) - IF(DIR) - SET(_PKG_CONFIG_LIBS "${_PKG_CONFIG_LIBS} ${LIBDIR_KW}${DIR}") - ENDIF(DIR) - ENDFOREACH(DIR ${DIRS}) -ENDMACRO(PKG_CONFIG_APPEND_LIBRARY_DIR DIR) - - -# PKG_CONFIG_APPEND_CFLAGS -# ------------------------ -# -# This macro adds CFLAGS in a portable way into the pkg-config file. -# -MACRO(PKG_CONFIG_APPEND_CFLAGS FLAGS) - FOREACH(FLAG ${FLAGS}) - IF(FLAG) - SET(_PKG_CONFIG_CFLAGS "${_PKG_CONFIG_CFLAGS} ${FLAG}") - ENDIF(FLAG) - ENDFOREACH(FLAG ${FLAGS}) -ENDMACRO(PKG_CONFIG_APPEND_CFLAGS) - - -# PKG_CONFIG_APPEND_LIBS_RAW -# ---------------------------- -# -# This macro adds raw value in the "Libs:" into the pkg-config file. -# -# Exception for mac OS X: -# In addition to the classical static and dynamic libraries (handled like -# unix does), mac systems can link against frameworks. -# Frameworks are directories gathering headers, libraries, shared resources... -# -# The syntax used to link with a framework is particular, hence a filter is -# added to convert the absolute path to a framework (e.g. /Path/to/Sample.framework) -# into the correct flags (-F/Path/to/ -framework Sample). -# -MACRO(PKG_CONFIG_APPEND_LIBS_RAW LIBS) - FOREACH(LIB ${LIBS}) - IF(LIB) - IF( APPLE AND ${LIB} MATCHES .framework) - GET_FILENAME_COMPONENT(framework_PATH ${LIB} PATH) - GET_FILENAME_COMPONENT(framework_NAME ${LIB} NAME_WE) - SET(_PKG_CONFIG_LIBS "${_PKG_CONFIG_LIBS} -F${framework_PATH} -framework ${framework_NAME}") - ELSE( APPLE AND ${LIB} MATCHES .framework) - SET(_PKG_CONFIG_LIBS "${_PKG_CONFIG_LIBS} ${LIB}") - ENDIF( APPLE AND ${LIB} MATCHES .framework) - ENDIF(LIB) - ENDFOREACH(LIB ${LIBS}) - STRING(REPLACE "\n" "" _PKG_CONFIG_LIBS "${_PKG_CONFIG_LIBS}") -ENDMACRO(PKG_CONFIG_APPEND_LIBS_RAW) - - -# PKG_CONFIG_APPEND_LIBS -# ---------------------- -# -# This macro adds libraries in a portable way into the pkg-config -# file. -# -# Library prefix and suffix is automatically added. -# -MACRO(PKG_CONFIG_APPEND_LIBS LIBS) - FOREACH(LIB ${LIBS}) - IF(LIB) - SET(_PKG_CONFIG_LIBS "${_PKG_CONFIG_LIBS} ${LIBINCL_KW}${LIB}${LIB_EXT}") - ENDIF(LIB) - ENDFOREACH(LIB ${LIBS}) -ENDMACRO(PKG_CONFIG_APPEND_LIBS) - - -# For internal use only. -# PKG_CONFIG_USE_LCOMPILE_DEPENDENCY(TARGET DEPENDENCY) -# -------------------------------------------- -# -# For user look at PKG_CONFIG_USE_COMPILE_DEPENDENCY -# -# This macro changes the target properties to properly search for -# headers against the required shared libraries -# when using a dependency detected through pkg-config. -# -# I.e. PKG_CONFIG_USE_LCOMPILE_DEPENDENCY(my-binary my-package) -# -MACRO(PKG_CONFIG_USE_LCOMPILE_DEPENDENCY TARGET PREFIX) - - # Make sure we do not override previous flags. - GET_TARGET_PROPERTY(CFLAGS ${TARGET} COMPILE_FLAGS) - - # If there were no previous flags, get rid of the XYFLAGS-NOTFOUND - # in the variables. - IF(NOT CFLAGS) - SET(CFLAGS "") - ENDIF() - - # Transform semi-colon seperated list in to space separated list. - FOREACH(FLAG ${${PREFIX}_CFLAGS}) - SET(CFLAGS "${CFLAGS} ${FLAG}") - ENDFOREACH() - - # Update the flags. - SET_TARGET_PROPERTIES(${TARGET} - PROPERTIES COMPILE_FLAGS "${CFLAGS}") - - # Include/libraries paths seems to be filtered on Linux, add paths - # again. - INCLUDE_DIRECTORIES(SYSTEM ${${PREFIX}_INCLUDE_DIRS}) - -ENDMACRO(PKG_CONFIG_USE_LCOMPILE_DEPENDENCY) - - -# Internal use only. -# PKG_CONFIG_USE_LLINK_DEPENDENCY(TARGET DEPENDENCY) -# -------------------------------------------- -# -# For user look at PKG_CONFIG_USE_LINK_DEPENDENCY -# -# This macro changes the target properties to properly search for -# the required shared libraries -# when using a dependency detected through pkg-config. -# -# I.e. PKG_CONFIG_USE_LLINK_DEPENDENCY(my-binary my-package) -# -MACRO(PKG_CONFIG_USE_LLINK_DEPENDENCY TARGET PREFIX) - - # Make sure we do not override previous flags. - GET_TARGET_PROPERTY(LDFLAGS ${TARGET} LINK_FLAGS) - - # If there were no previous flags, get rid of the XYFLAGS-NOTFOUND - # in the variables. - IF(NOT LDFLAGS) - SET(LDFLAGS "") - ENDIF() - - # Transform semi-colon seperated list in to space separated list. - FOREACH(FLAG ${${PREFIX}_LDFLAGS}) - SET(LDFLAGS "${LDFLAGS} ${FLAG}") - ENDFOREACH() - - # Update the flags. - SET_TARGET_PROPERTIES(${TARGET} - PROPERTIES LINK_FLAGS "${LDFLAGS}") - - IF(UNIX AND NOT APPLE) - TARGET_LINK_LIBRARIES(${TARGET} ${${PREFIX}_LDFLAGS}) - TARGET_LINK_LIBRARIES(${TARGET} ${${PREFIX}_LDFLAGS_OTHER}) - ENDIF(UNIX AND NOT APPLE) - - # Include/libraries paths seems to be filtered on Linux, add paths - # again. - LINK_DIRECTORIES(${${PREFIX}_LIBRARY_DIRS}) - -ENDMACRO(PKG_CONFIG_USE_LLINK_DEPENDENCY) - -MACRO(BUILD_PREFIX_FOR_PKG DEPENDENCY PREFIX) - - # Transform the dependency into a valid variable prefix. - # 1. replace invalid characters into underscores. - STRING(REGEX REPLACE "[^a-zA-Z0-9]" "_" LPREFIX "${DEPENDENCY}") - # 2. make it uppercase. - STRING(TOUPPER "${LPREFIX}" "LPREFIX") - - # Make sure we search for a previously detected package. - IF(NOT DEFINED ${LPREFIX}_FOUND) - MESSAGE(FATAL_ERROR - "The package ${DEPENDENCY} has not been detected correctly.\n" - "Have you called ADD_REQUIRED_DEPENDENCY/ADD_OPTIONAL_DEPENDENCY?") - ENDIF() - IF(NOT ${LPREFIX}_FOUND) - MESSAGE(FATAL_ERROR - "The package ${DEPENDENCY} has not been found.") - ENDIF() - - SET(${PREFIX} ${LPREFIX}) - -ENDMACRO(BUILD_PREFIX_FOR_PKG) - -# PKG_CONFIG_USE_DEPENDENCY(TARGET DEPENDENCY) -# -------------------------------------------- -# -# This macro changes the target properties to properly search for -# headers, libraries and link against the required shared libraries -# when using a dependency detected through pkg-config. -# -# I.e. PKG_CONFIG_USE_DEPENDENCY(my-binary my-package) -# -MACRO(PKG_CONFIG_USE_DEPENDENCY TARGET DEPENDENCY) - BUILD_PREFIX_FOR_PKG(${DEPENDENCY} PREFIX) - PKG_CONFIG_USE_LCOMPILE_DEPENDENCY(${TARGET} ${PREFIX}) - PKG_CONFIG_USE_LLINK_DEPENDENCY(${TARGET} ${PREFIX}) -ENDMACRO(PKG_CONFIG_USE_DEPENDENCY TARGET DEPENDENCY) - - -# PKG_CONFIG_USE_COMPILE_DEPENDENCY(TARGET DEPENDENCY) -# -------------------------------------------- -# -# This macro changes the target properties to properly search for -# headers against the required shared libraries -# when using a dependency detected through pkg-config. -# -# I.e. PKG_CONFIG_USE_COMPILE_DEPENDENCY(my-binary my-package) -MACRO(PKG_CONFIG_USE_COMPILE_DEPENDENCY TARGET DEPENDENCY) - BUILD_PREFIX_FOR_PKG(${DEPENDENCY} PREFIX) - PKG_CONFIG_USE_LCOMPILE_DEPENDENCY(${TARGET} ${PREFIX}) -ENDMACRO(PKG_CONFIG_USE_COMPILE_DEPENDENCY TARGET DEPENDENCY) - -# PKG_CONFIG_USE_LINK_DEPENDENCY(TARGET DEPENDENCY) -# -------------------------------------------- -# -# This macro changes the target properties to properly search for -# the required shared libraries -# when using a dependency detected through pkg-config. -# -# I.e. PKG_CONFIG_USE_LINK_DEPENDENCY(my-binary my-package) -MACRO(PKG_CONFIG_USE_LINK_DEPENDENCY TARGET DEPENDENCY) - BUILD_PREFIX_FOR_PKG(${DEPENDENCY} PREFIX) - PKG_CONFIG_USE_LLINK_DEPENDENCY(${TARGET} ${PREFIX}) -ENDMACRO(PKG_CONFIG_USE_LINK_DEPENDENCY TARGET DEPENDENCY) diff --git a/cmake/pkg-config.pc.cmake b/cmake/pkg-config.pc.cmake deleted file mode 100644 index b107963c2ea97d7b53c56265c3f1ba1f4f42cba3..0000000000000000000000000000000000000000 --- a/cmake/pkg-config.pc.cmake +++ /dev/null @@ -1,22 +0,0 @@ -prefix=${_PKG_CONFIG_PREFIX} -exec_prefix=${_PKG_CONFIG_EXEC_PREFIX} -libdir=${_PKG_CONFIG_LIBDIR} -bindir=${_PKG_CONFIG_BINDIR} -pkglibdir=${_PKG_CONFIG_PKGLIBDIR} -includedir=${_PKG_CONFIG_INCLUDEDIR} -datarootdir=${_PKG_CONFIG_DATAROOTDIR} -pkgdatarootdir=${_PKG_CONFIG_PKGDATAROOTDIR} -docdir=${_PKG_CONFIG_DOCDIR} -doxygendocdir=${_PKG_CONFIG_DOXYGENDOCDIR} - -Name: ${_PKG_CONFIG_PROJECT_NAME} -Description: ${_PKG_CONFIG_DESCRIPTION} -URL: ${_PKG_CONFIG_URL} -Version: ${_PKG_CONFIG_VERSION} -Requires: ${_PKG_CONFIG_REQUIRES} -Conflicts: ${_PKG_CONFIG_CONFLICTS} -Libs: ${_PKG_CONFIG_LIBS} -Libs.private: ${_PKG_CONFIG_LIBS_PRIVATE} -Cflags: ${_PKG_CONFIG_CFLAGS} - -${PKG_CONFIG_EXTRA} diff --git a/cmake/portability.cmake b/cmake/portability.cmake deleted file mode 100644 index d54b9746662a5bdc98140b5ea77092e6438f20c9..0000000000000000000000000000000000000000 --- a/cmake/portability.cmake +++ /dev/null @@ -1,66 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -########## -# README # -########## -# -# This CMake file implements various substitutes to standard CMake macros and -# functions in order to simplify them or make them more robust. -# -# Indeed, many standard macros/functions interface have changed depending -# on your CMake version triggering many problems when working with too recent -# or too old versions of CMake. -# -# These macros should be used instead of the CMake one to enhance package -# robustness. - -# CONFIG_FILES -# --------------- -# -# This wraps CONFIGURE_FILES to provide a cleaner, shorter syntax. -# -FUNCTION(CONFIG_FILES) - FOREACH(I RANGE 0 ${ARGC}) - SET(FILE ${ARGV${I}}) - IF(FILE) - CONFIGURE_FILE( - ${CMAKE_CURRENT_SOURCE_DIR}/${FILE}.in - ${CMAKE_CURRENT_BINARY_DIR}/${FILE} - @ONLY - ) - ENDIF(FILE) -ENDFOREACH(I RANGE 0 ${ARGC}) -ENDFUNCTION(CONFIG_FILES) - -# CONFIG_FILES_CMAKE -# ------------------ -# -# Same as CONFIG_FILES but with CMake-style template files. -# -# Please, prefer the use of CONFIG_FILES to this function as -# it is safer. -# -FUNCTION(CONFIG_FILES_CMAKE) - FOREACH(I RANGE 0 ${ARGC}) - SET(FILE ${ARGV${I}}) - IF(FILE) - CONFIGURE_FILE( - ${CMAKE_CURRENT_SOURCE_DIR}/${FILE}.cmake - ${CMAKE_CURRENT_BINARY_DIR}/${FILE} - ) - ENDIF(FILE) -ENDFOREACH(I RANGE 0 ${ARGC}) -ENDFUNCTION(CONFIG_FILES_CMAKE) diff --git a/cmake/pthread.cmake b/cmake/pthread.cmake deleted file mode 100644 index 6fa86a6a147d78cb0184d1bf5bea4e1c6e4c6990..0000000000000000000000000000000000000000 --- a/cmake/pthread.cmake +++ /dev/null @@ -1,45 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -INCLUDE(FindThreads) - -# SEARCH_FOR_PTHREAD -# ------------------ -# -# Check for pthread support on Linux. This does nothing on Windows. -# -MACRO(SEARCH_FOR_PTHREAD) - IF(UNIX) - IF(CMAKE_USE_PTHREADS_INIT) - ADD_DEFINITIONS(-pthread) - ELSE(CMAKE_USE_PTHREADS_INIT) - MESSAGE(FATAL_ERROR - "Pthread is required on Unix, but " - ${CMAKE_THREAD_LIBS_INIT} " has been detected.") - ENDIF(CMAKE_USE_PTHREADS_INIT) - ELSEIF(WIN32) - # Nothing to do. - ELSE(UNIX) - MESSAGE(FATAL_ERROR "Thread support for this platform is not implemented.") - ENDIF(UNIX) - - LIST(APPEND LOGGING_WATCHED_VARIABLES - CMAKE_THREAD_LIBS_INIT - CMAKE_USE_SPROC_INIT - CMAKE_USE_WIN32_THREADS_INIT - CMAKE_USE_PTHREADS_INIT - CMAKE_HP_PTHREADS_INIT - ) -ENDMACRO(SEARCH_FOR_PTHREAD) diff --git a/cmake/python.cmake b/cmake/python.cmake deleted file mode 100644 index 0b684dc35e4d9a003942230311eaf1fae4853bdc..0000000000000000000000000000000000000000 --- a/cmake/python.cmake +++ /dev/null @@ -1,222 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - - -MACRO(FINDPYTHON) -INCLUDE(FindPythonLibs) -IF (NOT ${PYTHONLIBS_FOUND} STREQUAL TRUE) - MESSAGE(FATAL_ERROR "Python has not been found.") -ENDIF (NOT ${PYTHONLIBS_FOUND} STREQUAL TRUE) - -INCLUDE(FindPythonInterp) -IF (NOT ${PYTHONINTERP_FOUND} STREQUAL TRUE) - MESSAGE(FATAL_ERROR "Python executable has not been found.") -ENDIF (NOT ${PYTHONINTERP_FOUND} STREQUAL TRUE) - -# Find PYTHON_LIBRARY_DIRS -GET_FILENAME_COMPONENT(PYTHON_LIBRARY_DIRS ${PYTHON_LIBRARIES} PATH) - -# Default Python packages directory -SET(PYTHON_PACKAGES_DIR site-packages) - -# Use either site-packages (default) or dist-packages (Debian packages) directory -OPTION(PYTHON_DEB_LAYOUT "Enable Debian-style Python package layout" OFF) - -IF (PYTHON_DEB_LAYOUT) - SET(PYTHON_PACKAGES_DIR dist-packages) -ENDIF (PYTHON_DEB_LAYOUT) - -EXECUTE_PROCESS( - COMMAND "${PYTHON_EXECUTABLE}" "-c" - "import sys, os; print os.sep.join(['lib', 'python' + sys.version[:3], '${PYTHON_PACKAGES_DIR}'])" - OUTPUT_VARIABLE PYTHON_SITELIB - ERROR_QUIET) - -# Remove final \n of the variable PYTHON_SITELIB -STRING(REPLACE "\n" "" PYTHON_SITELIB "${PYTHON_SITELIB}") - -ENDMACRO(FINDPYTHON) - - -# -# DYNAMIC_GRAPH_PYTHON_MODULE SUBMODULENAME LIBRARYNAME TARGETNAME -# --------------------------- -# -# Add a python submodule to dynamic_graph -# -# SUBMODULENAME : the name of the submodule (can be foo/bar), -# -# LIBRARYNAME : library to link the submodule with. -# -# TARGETNAME : name of the target: should be different for several -# calls to the macro. -# -# NOTICE : Before calling this macro, set variable NEW_ENTITY_CLASS as -# the list of new Entity types that you want to be bound. -# Entity class name should match the name referencing the type -# in the factory. -# -MACRO(DYNAMIC_GRAPH_PYTHON_MODULE SUBMODULENAME LIBRARYNAME TARGETNAME) - FINDPYTHON() - - SET(PYTHON_MODULE ${TARGETNAME}) - - ADD_LIBRARY(${PYTHON_MODULE} - MODULE - ${PROJECT_SOURCE_DIR}/cmake/dynamic_graph/python-module-py.cc) - - FILE(MAKE_DIRECTORY ${PROJECT_BINARY_DIR}/src/dynamic_graph/${SUBMODULENAME}) - SET_TARGET_PROPERTIES(${PYTHON_MODULE} - PROPERTIES PREFIX "" - OUTPUT_NAME dynamic_graph/${SUBMODULENAME}/wrap - ) - - TARGET_LINK_LIBRARIES(${PYTHON_MODULE} "-Wl,--no-as-needed") - TARGET_LINK_LIBRARIES(${PYTHON_MODULE} ${LIBRARYNAME} ${PYTHON_LIBRARY}) - - INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH}) - - # - # Installation - # - SET(PYTHON_INSTALL_DIR ${PYTHON_SITELIB}/dynamic_graph/${SUBMODULENAME}) - - INSTALL(TARGETS ${PYTHON_MODULE} - DESTINATION - ${PYTHON_INSTALL_DIR}) - - SET(ENTITY_CLASS_LIST "") - FOREACH (ENTITY ${NEW_ENTITY_CLASS}) - SET(ENTITY_CLASS_LIST "${ENTITY_CLASS_LIST}${ENTITY}('')\n") - ENDFOREACH(ENTITY ${NEW_ENTITY_CLASS}) - - CONFIGURE_FILE( - ${PROJECT_SOURCE_DIR}/cmake/dynamic_graph/submodule/__init__.py.cmake - ${PROJECT_BINARY_DIR}/src/dynamic_graph/${SUBMODULENAME}/__init__.py - ) - - INSTALL( - FILES ${PROJECT_BINARY_DIR}/src/dynamic_graph/${SUBMODULENAME}/__init__.py - DESTINATION ${PYTHON_INSTALL_DIR} - ) - -ENDMACRO(DYNAMIC_GRAPH_PYTHON_MODULE SUBMODULENAME) - - -# PYTHON_INSTALL(MODULE FILE DEST) -# -------------------------------- -# -# Install a Python file and its associated compiled version. -# -MACRO(PYTHON_INSTALL MODULE FILE DEST) - - FILE(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/${MODULE}") - - INSTALL(CODE - "EXECUTE_PROCESS(COMMAND - \"${PYTHON_EXECUTABLE}\" - \"${PROJECT_SOURCE_DIR}/cmake/compile.py\" - \"${CMAKE_CURRENT_SOURCE_DIR}\" - \"${CMAKE_CURRENT_BINARY_DIR}\" - \"${MODULE}/${FILE}\") - ") - - # Tag pyc file as generated. - SET_SOURCE_FILES_PROPERTIES( - "${CMAKE_CURRENT_BINARY_DIR}/${MODULE}/${FILE}c" - PROPERTIES GENERATED TRUE) - - # Clean generated files. - SET_PROPERTY( - DIRECTORY APPEND PROPERTY - ADDITIONAL_MAKE_CLEAN_FILES - "${CMAKE_CURRENT_BINARY_DIR}/${MODULE}/${FILE}c" - ) - - INSTALL(FILES - "${CMAKE_CURRENT_SOURCE_DIR}/${MODULE}/${FILE}" - "${CMAKE_CURRENT_BINARY_DIR}/${MODULE}/${FILE}c" - DESTINATION "${DEST}/${MODULE}") -ENDMACRO() - -# PYTHON_INSTALL_ON_SITE (MODULE FILE) -# -------------------------------- -# -# Install a Python file and its associated compiled version. -# -MACRO(PYTHON_INSTALL_ON_SITE MODULE FILE) - - FINDPYTHON() - PYTHON_INSTALL("${MODULE}" "${FILE}" "${PYTHON_SITELIB}") - -ENDMACRO() - -# PYTHON_INSTALL_BUILD(MODULE FILE DEST) -# -------------------------------------- -# -# Install a Python file residing in the build directory and its -# associated compiled version. -# -MACRO(PYTHON_INSTALL_BUILD MODULE FILE DEST) - - FILE(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/${MODULE}") - - INSTALL(CODE - "EXECUTE_PROCESS(COMMAND - \"${PYTHON_EXECUTABLE}\" - \"${PROJECT_SOURCE_DIR}/cmake/compile.py\" - \"${CMAKE_CURRENT_BINARY_DIR}\" - \"${CMAKE_CURRENT_BINARY_DIR}\" - \"${MODULE}/${FILE}\") - ") - - # Tag pyc file as generated. - SET_SOURCE_FILES_PROPERTIES( - "${CMAKE_CURRENT_BINARY_DIR}/${MODULE}/${FILE}c" - PROPERTIES GENERATED TRUE) - - # Clean generated files. - SET_PROPERTY( - DIRECTORY APPEND PROPERTY - ADDITIONAL_MAKE_CLEAN_FILES - "${CMAKE_CURRENT_BINARY_DIR}/${MODULE}/${FILE}c" - ) - - INSTALL(FILES - "${CMAKE_CURRENT_BINARY_DIR}/${MODULE}/${FILE}" - "${CMAKE_CURRENT_BINARY_DIR}/${MODULE}/${FILE}c" - DESTINATION "${DEST}/${MODULE}") -ENDMACRO() - -# FIND_NUMPY -# ---------- -# -# Detect numpy module -# - -MACRO(FIND_NUMPY) - # Detect numpy. - MESSAGE (STATUS "checking for numpy") - EXECUTE_PROCESS( - COMMAND "${PYTHON_EXECUTABLE}" "-c" - "import numpy; print (numpy.get_include())" - OUTPUT_VARIABLE NUMPY_INCLUDE_DIRS - ERROR_QUIET) - IF (NOT NUMPY_INCLUDE_DIRS) - MESSAGE (FATAL_ERROR "Failed to detect numpy") - ELSE () - MESSAGE (STATUS " NUMPY_INCLUDE_DIRS=${NUMPY_INCLUDE_DIRS}") - ENDIF() -ENDMACRO() diff --git a/cmake/qhull.cmake b/cmake/qhull.cmake deleted file mode 100644 index 51d27a6b5c1f33d6f66d784b2463dbbc28bebe52..0000000000000000000000000000000000000000 --- a/cmake/qhull.cmake +++ /dev/null @@ -1,114 +0,0 @@ -############################################################################### -# Find Qhull -# -# This sets the following variables: -# QHULL_FOUND - True if Qhull was found. -# QHULL_INCLUDE_DIRS - Directories containing the Qhull include files. -# QHULL_LIBRARIES - Libraries needed to use Qhull. -# QHULL_LIBRARY_DIR - Directory containing Qhull libraries. - -# SEARCH_FOR_QHULL -# ----------------- -# -# Search for Qhull in a portable way. -# -# This macro adds detected flags to the pkg-config file automatically. -# -MACRO(SEARCH_FOR_QHULL) - - set(QHULL_MAJOR_VERSION 6) - - find_file(QHULL_HEADER - NAMES libqhull/libqhull.h qhull.h - HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}" "${QHULL_INCLUDE_DIR}" - PATHS "$ENV{PROGRAMFILES}/QHull" "$ENV{PROGRAMW6432}/QHull" - "$ENV{PROGRAMFILES}/qhull 6.2.0.1373" "$ENV{PROGRAMW6432}/qhull 6.2.0.1373" - PATH_SUFFIXES qhull src/libqhull libqhull include) - - set(QHULL_HEADER "${QHULL_HEADER}" CACHE INTERNAL "QHull header" FORCE ) - - if(QHULL_HEADER) - get_filename_component(qhull_header ${QHULL_HEADER} NAME_WE) - if("${qhull_header}" STREQUAL "qhull") - set(HAVE_QHULL_2011 OFF) - get_filename_component(QHULL_INCLUDE_DIR ${QHULL_HEADER} PATH) - elseif("${qhull_header}" STREQUAL "libqhull") - set(HAVE_QHULL_2011 ON) - get_filename_component(QHULL_INCLUDE_DIR ${QHULL_HEADER} PATH) - get_filename_component(QHULL_INCLUDE_DIR ${QHULL_INCLUDE_DIR} PATH) - endif() - else(QHULL_HEADER) - set(QHULL_INCLUDE_DIR "QHULL_INCLUDE_DIR-NOTFOUND") - endif(QHULL_HEADER) - - set(QHULL_INCLUDE_DIR "${QHULL_INCLUDE_DIR}" CACHE PATH "QHull include dir." FORCE) - - # Prefer static libraries in Windows over shared ones - if(WIN32) - find_library(QHULL_LIBRARY - NAMES qhullstatic qhull qhull${QHULL_MAJOR_VERSION} - HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}" - PATHS "$ENV{PROGRAMFILES}/QHull" "$ENV{PROGRAMW6432}/QHull" - "$ENV{PROGRAMFILES}/qhull 6.2.0.1373" "$ENV{PROGRAMW6432}/qhull 6.2.0.1373" - PATH_SUFFIXES project build bin lib) - - find_library(QHULL_LIBRARY_DEBUG - NAMES qhullstatic_d qhull_d qhull_d${QHULL_MAJOR_VERSION} qhull qhull${QHULL_MAJOR_VERSION} - HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}" - PATHS "$ENV{PROGRAMFILES}/QHull" "$ENV{PROGRAMW6432}/QHull" - "$ENV{PROGRAMFILES}/qhull 6.2.0.1373" "$ENV{PROGRAMW6432}/qhull 6.2.0.1373" - PATH_SUFFIXES project build bin lib) - else(WIN32) - find_library(QHULL_LIBRARY - NAMES qhull qhull${QHULL_MAJOR_VERSION} - HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}" - PATH_SUFFIXES project build bin lib) - - find_library(QHULL_LIBRARY_DEBUG - NAMES qhull_d qhull_d${QHULL_MAJOR_VERSION} qhull qhull${QHULL_MAJOR_VERSION} - HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}" - PATH_SUFFIXES project build bin lib) - - find_library(QHULL_CPP_LIBRARY - NAMES qhullcpp - HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}" - PATH_SUFFIXES project build bin lib) - endif(WIN32) - - if(NOT QHULL_LIBRARY_DEBUG) - set(QHULL_LIBRARY_DEBUG ${QHULL_LIBRARY}) - endif(NOT QHULL_LIBRARY_DEBUG) - - set(QHULL_INCLUDE_DIRS ${QHULL_INCLUDE_DIR}) - set(QHULL_LIBRARIES ${QHULL_LIBRARY} ${QHULL_LIBRARY_DEBUG}) - - # C++ library may not be available on old Linux distributions - if(QHULL_CPP_LIBRARY) - set(QHULL_LIBRARIES ${QHULL_LIBRARIES} ${QHULL_CPP_LIBRARY}) - endif(QHULL_CPP_LIBRARY) - - include(FindPackageHandleStandardArgs) - find_package_handle_standard_args(Qhull DEFAULT_MSG QHULL_LIBRARY - QHULL_INCLUDE_DIR) - - mark_as_advanced(QHULL_LIBRARY QHULL_LIBRARY_DEBUG QHULL_CPP_LIBRARY QHULL_INCLUDE_DIR) - - IF(QHULL_FOUND) - SET(HAVE_QHULL ON) - ADD_DEFINITIONS("-DHAVE_QHULL") - PKG_CONFIG_APPEND_CFLAGS(-DHAVE_QHULL) - MESSAGE(STATUS "Qhull found") - GET_FILENAME_COMPONENT(QHULL_LIBRARY_DIR ${QHULL_LIBRARY} PATH) - ENDIF(QHULL_FOUND) - - IF(HAVE_QHULL_2011) - ADD_DEFINITIONS("-DHAVE_QHULL_2011") - PKG_CONFIG_APPEND_CFLAGS(-DHAVE_QHULL_2011) - ENDIF(HAVE_QHULL_2011) - - INCLUDE_DIRECTORIES(SYSTEM ${QHULL_INCLUDE_DIRS}) - LINK_DIRECTORIES(${QHULL_LIBRARY_DIR}) - PKG_CONFIG_APPEND_CFLAGS("-isystem ${QHULL_INCLUDE_DIRS}") - PKG_CONFIG_APPEND_LIBRARY_DIR("${QHULL_LIBRARY_DIR}") - -ENDMACRO(SEARCH_FOR_QHULL) diff --git a/cmake/release.cmake b/cmake/release.cmake deleted file mode 100644 index 0b205a4bfec9fb2073253f1b033233e2673969dd..0000000000000000000000000000000000000000 --- a/cmake/release.cmake +++ /dev/null @@ -1,52 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# RELEASE_SETUP -# ------------- -# -# This adds a release target which release a stable version of the -# current package. -# -# To release a package, please run: make release VERSION=X.Y.Z -# where X.Y.Z is the version number of your new package. -# -# A release consists in: -# - adding a signed tag following the vVERSION pattern. -# - running make distcheck to make sure everything is ok. -# - uploading the stable documentation (TODO) -# - uploading the resulting tarball to GitHub (TODO). -# - announce the release by e-mail (TODO). -# - pushing the tag on the GitHub repository (to be done manually as -# it is simple but cannot be reverted). -# -MACRO(RELEASE_SETUP) - IF(UNIX) - FIND_PROGRAM(GIT git) - - ADD_CUSTOM_TARGET(release - COMMAND - ! test x$$VERSION = x - || (echo "Please set a version for this release" && false) - && cd ${PROJECT_SOURCE_DIR} - && ${GIT} tag -s v$$VERSION -m "Release of version $$VERSION." - && cd ${CMAKE_BINARY_DIR} - && cmake ${PROJECT_SOURCE_DIR} - && make distcheck - || (echo "Please fix distcheck first." - && ${GIT} tag -d v$$VERSION && cmake ${PROJECT_SOURCE_DIR} && false) - && echo "Please, run 'git push --tags' to finalize this release." - ) - ENDIF() -ENDMACRO() diff --git a/cmake/ros.cmake b/cmake/ros.cmake deleted file mode 100644 index 693c4e36ad61fbdd474f4e7fd6557222227a0367..0000000000000000000000000000000000000000 --- a/cmake/ros.cmake +++ /dev/null @@ -1,164 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# Check the existence of the ros package using rospack. -# PKG_ROS is a string containing the name of the package and eventually the -# desired version of the package using pkg-config syntax. -# The following operators are handled: {>, >=, =, <, <=} -# example: ADD_ROSPACK_DEPENDENCY("pkg_name") -# ADD_ROSPACK_DEPENDENCY("pkg_name >= 0.1") -MACRO(ADD_ROSPACK_DEPENDENCY PKG_ROS) - IF(PKG STREQUAL "") - MESSAGE(FATAL_ERROR "ADD_ROS_DEPENDENCY invalid call.") - ENDIF() - - # check if a version is defined - STRING(REGEX MATCH "[<>=]+" SIGN "${PKG_ROS}") - IF(NOT "${SIGN}" STREQUAL "") - STRING(REGEX MATCH "[0-9.]+ *$" PKG_VERSION "${PKG_ROS}") - # get the name of the package - STRING(REGEX MATCH "[^<>= ]+" PKG ${PKG_ROS}) - ELSE() - # the name of the package is the full input - SET(PKG ${PKG_ROS}) - ENDIF() - - # Transform package name into a valid variable prefix. - # 1. replace invalid characters into underscores. - STRING(REGEX REPLACE "[^a-zA-Z0-9]" "_" PREFIX "${PKG}") - # 2. make it uppercase. - STRING(TOUPPER "${PREFIX}" "PREFIX") - - SET(${PREFIX}_FOUND 0) - - FIND_PROGRAM(ROSPACK rospack) - IF(NOT ROSPACK) - MESSAGE(FATAL_ERROR "failed to find the rospack binary. Is ROS installed?") - ENDIF() - - MESSAGE(STATUS "Looking for ${PKG} using rospack...") - EXECUTE_PROCESS( - COMMAND "${ROSPACK}" find "${PKG}" - OUTPUT_VARIABLE "${PKG}_ROS_PREFIX" - ERROR_QUIET) - IF(NOT ${PKG}_ROS_PREFIX) - MESSAGE(FATAL_ERROR "Failed to detect ${PKG}.") - ENDIF() - - # Get the version of the package - FIND_PROGRAM(ROSVERSION rosversion) - IF(NOT ROSVERSION) - MESSAGE(FATAL_ERROR "failed to find the rosversion binary. Is ROS installed?") - ENDIF() - - EXECUTE_PROCESS( - COMMAND "${ROSVERSION}" "${PKG}" - OUTPUT_VARIABLE ${PKG}_ROSVERSION_TMP - ERROR_QUIET) - STRING(REGEX REPLACE "\n" "" ${PKG}_ROSVERSION ${${PKG}_ROSVERSION_TMP}) - - #check whether the version satisfies the constraint - IF (NOT "${SIGN}" STREQUAL "") - SET(RESULT FALSE) - IF(("${${PKG}_ROSVERSION}" VERSION_LESS "${PKG_VERSION}") - AND((${SIGN} STREQUAL "<=") OR (${SIGN} STREQUAL "<"))) - SET(RESULT TRUE) - ENDIF() - - IF(("${${PKG}_ROSVERSION}" VERSION_EQUAL "${PKG_VERSION}") - AND((${SIGN} STREQUAL ">=") OR (${SIGN} STREQUAL "=") OR (${SIGN} STREQUAL "<="))) - SET(RESULT TRUE) - ENDIF() - - IF(("${${PKG}_ROSVERSION}" VERSION_GREATER "${PKG_VERSION}") - AND(("${SIGN}" STREQUAL ">=") OR ("${SIGN}" STREQUAL ">"))) - SET(RESULT TRUE) - ENDIF() - - IF (NOT RESULT) - MESSAGE(FATAL_ERROR "The package ${PKG} does not have the correct version." - " Found: ${${PKG}_ROSVERSION}, desired: ${SIGN} ${PKG_VERSION}") - ENDIF() - ENDIF (NOT "${SIGN}" STREQUAL "") - - # Declare that the package has been found - MESSAGE("${PKG} found, version ${${PKG}_ROSVERSION}") - - SET(${PREFIX}_FOUND 1) - EXECUTE_PROCESS( - COMMAND "${ROSPACK}" export "--lang=cpp" "--attrib=cflags" "${PKG}" - OUTPUT_VARIABLE "${PREFIX}_CFLAGS" - ERROR_QUIET) - EXECUTE_PROCESS( - COMMAND "${ROSPACK}" export "--lang=cpp" "--attrib=lflags" "${PKG}" - OUTPUT_VARIABLE "${PREFIX}_LIBS" - ERROR_QUIET) - STRING(REPLACE "\n" "" ${PREFIX}_CFLAGS "${${PREFIX}_CFLAGS}") - STRING(REPLACE "\n" "" ${PREFIX}_LIBS "${${PREFIX}_LIBS}") - STRING(REPLACE "\n" "" ${PKG}_ROS_PREFIX "${${PKG}_ROS_PREFIX}") - - # Add flags to package pkg-config file. - PKG_CONFIG_APPEND_CFLAGS ("${${PREFIX}_CFLAGS}") - PKG_CONFIG_APPEND_LIBS_RAW ("${${PREFIX}_LIBS}") -ENDMACRO() - -MACRO(ROSPACK_USE_DEPENDENCY TARGET PKG) - IF(PKG STREQUAL "") - MESSAGE(FATAL_ERROR "ROSPACK_USE_DEPENDENCY invalid call.") - ENDIF() - - # Transform package name into a valid variable prefix. - # 1. replace invalid characters into underscores. - STRING(REGEX REPLACE "[^a-zA-Z0-9]" "_" PREFIX "${PKG}") - # 2. make it uppercase. - STRING(TOUPPER "${PREFIX}" "PREFIX") - - # Make sure we do not override previous flags. - GET_TARGET_PROPERTY(CFLAGS "${TARGET}" COMPILE_FLAGS) - GET_TARGET_PROPERTY(LDFLAGS "${TARGET}" LINK_FLAGS) - - # If there were no previous flags, get rid of the XYFLAGS-NOTFOUND - # in the variables. - IF(NOT CFLAGS) - SET(CFLAGS "") - ENDIF() - IF(NOT LDFLAGS) - SET(LDFLAGS "") - ENDIF() - - # Filter out end of line in new flags. - STRING(REPLACE "\n" "" ${PREFIX}_CFLAGS "${${PREFIX}_CFLAGS}") - STRING(REPLACE "\n" "" ${PREFIX}_LIBS "${${PREFIX}_LIBS}") - - # Append new flags. - SET(CFLAGS "${CFLAGS} ${${PREFIX}_CFLAGS}") - SET(LDFLAGS "${LDFLAGS} ${${PREFIX}_LIBS}") - - # Update the flags. - SET_TARGET_PROPERTIES("${TARGET}" - PROPERTIES COMPILE_FLAGS "${CFLAGS}" LINK_FLAGS "${LDFLAGS}") - - # Correct the potential link issue due to the order of link flags. - # (appears e.g. on ubuntu 12.04). - # Note that this issue is the same as the one in pkg-config.cmake, - # method PKG_CONFIG_USE_LLINK_DEPENDENCY - IF(UNIX AND NOT APPLE) - # convert the string in a list - STRING(REPLACE " " ";" LDFLAGS_LIST "${LDFLAGS}") - FOREACH(dep ${LDFLAGS_LIST}) - TARGET_LINK_LIBRARIES(${TARGET} ${dep}) - ENDFOREACH(dep) - ENDIF(UNIX AND NOT APPLE) -ENDMACRO() diff --git a/cmake/shared-library.cmake b/cmake/shared-library.cmake deleted file mode 100644 index f3d5ba9a6d25cf16e1bbc790fdfb84a938dff827..0000000000000000000000000000000000000000 --- a/cmake/shared-library.cmake +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# Shared library related constants -# (used for pkg-config file generation). -# FIXME: can't we get these information from CMake directly? -IF(WIN32) - SET(LIBDIR_KW "/LIBPATH:") - SET(LIBINCL_KW "") - SET(LIB_EXT ".lib") -ELSEIF(UNIX) - SET(LIBDIR_KW "-L") - SET(LIBINCL_KW "-l") - SET(LIB_EXT "") -ENDIF(WIN32) diff --git a/cmake/sphinx.cmake b/cmake/sphinx.cmake deleted file mode 100644 index a97ff8cd2d7006b1f799a4ada8f67812f20a78e2..0000000000000000000000000000000000000000 --- a/cmake/sphinx.cmake +++ /dev/null @@ -1,112 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# SPHINX_SETUP() -# -------------- -# -# Look for Sphinx, add a custom rule to generate the documentation and -# install the documentation properly. -# -MACRO(SPHINX_SETUP) - FIND_PROGRAM(SPHINX_BUILD sphinx-build DOC - "Sphinx documentation generator tool") - IF (NOT SPHINX_BUILD) - MESSAGE(FATAL_ERROR "Failed to find sphinx") - ENDIF(NOT SPHINX_BUILD) - - IF(MSVC) - # FIXME: it is impossible to trigger documentation installation - # at install, so put the target in ALL instead. - ADD_CUSTOM_TARGET(sphinx-doc ALL - COMMAND ${SPHINX_BUILD} -b html ${CMAKE_CURRENT_BINARY_DIR}/sphinx - ${CMAKE_CURRENT_BINARY_DIR}/sphinx-html - COMMENT "Generating sphinx documentation" - ) - ELIF(APPLE) - # THE DYLD_LIBRARY_PATH should be completed to run the sphinx command. - # otherwise some symbols won't be found. - SET(EXTRA_LD_PATH "\"${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}\":") - SET(EXTRA_LD_PATH "${EXTRA_LD_PATH}\"${DYNAMIC_GRAPH_PLUGINDIR}\":") - ADD_CUSTOM_TARGET(sphinx-doc - COMMAND export DYLD_LIBRARY_PATH=${EXTRA_LD_PATH}:\$DYLD_LIBRARY_PATH \; - ${SPHINX_BUILD} -b html ${CMAKE_CURRENT_BINARY_DIR}/sphinx - ${CMAKE_CURRENT_BINARY_DIR}/sphinx-html - COMMENT "Generating sphinx documentation" - ) - - INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_MAKE_PROGRAM} sphinx-doc)") - ELSE() #UNIX - # THE LD_LIBRARY_PATH should be completed to run the sphinx command. - # otherwise some symbols won't be found. - SET(EXTRA_LD_PATH "\"${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}\":") - SET(EXTRA_LD_PATH "${EXTRA_LD_PATH}\"${DYNAMIC_GRAPH_PLUGINDIR}\":") - ADD_CUSTOM_TARGET(sphinx-doc - COMMAND export LD_LIBRARY_PATH=${EXTRA_LD_PATH}:\$LD_LIBRARY_PATH \; - ${SPHINX_BUILD} -b html ${CMAKE_CURRENT_BINARY_DIR}/sphinx - ${CMAKE_CURRENT_BINARY_DIR}/sphinx-html - COMMENT "Generating sphinx documentation" - ) - - INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_MAKE_PROGRAM} sphinx-doc)") - ENDIF(MSVC) - - ADD_CUSTOM_COMMAND( - OUTPUT - ${CMAKE_BINARY_DIR}/doc/sphinx-html - COMMAND ${SPHINX_BUILD} -b html ${CMAKE_CURRENT_BINARY_DIR}/sphinx - ${CMAKE_CURRENT_BINARY_DIR}/sphinx-html - COMMENT "Generating sphinx documentation" - ) - - # Clean generated files. - SET_PROPERTY( - DIRECTORY APPEND PROPERTY - ADDITIONAL_MAKE_CLEAN_FILES - ${CMAKE_BINARY_DIR}/doc/sphinx-html - ) - - # Install generated files. - INSTALL(DIRECTORY ${CMAKE_BINARY_DIR}/doc/sphinx-html - DESTINATION share/doc/${PROJECT_NAME}) - - IF(EXISTS ${PROJECT_SOURCE_DIR}/doc/pictures) - INSTALL(DIRECTORY ${PROJECT_SOURCE_DIR}/doc/pictures - DESTINATION share/doc/${PROJECT_NAME}/sphinx-html) - ENDIF(EXISTS ${PROJECT_SOURCE_DIR}/doc/pictures) - - LIST(APPEND LOGGING_WATCHED_VARIABLES - SPHINX_BUILD - ) -ENDMACRO(SPHINX_SETUP) - - -# SPHINX_FINALIZE() -# ----------------- -# -# Generate Sphinx related files. -# -MACRO(SPHINX_FINALIZE) - CONFIGURE_FILE( - ${CMAKE_CURRENT_SOURCE_DIR}/sphinx/index.rst.in - ${CMAKE_CURRENT_BINARY_DIR}/sphinx/index.rst - @ONLY - ) - - CONFIGURE_FILE( - ${CMAKE_CURRENT_SOURCE_DIR}/sphinx/conf.py.in - ${CMAKE_CURRENT_BINARY_DIR}/sphinx/conf.py - @ONLY - ) -ENDMACRO(SPHINX_FINALIZE) diff --git a/cmake/sphinx/conf.py.in b/cmake/sphinx/conf.py.in deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/cmake/sphinx/index.rst.in b/cmake/sphinx/index.rst.in deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/cmake/test.cmake b/cmake/test.cmake deleted file mode 100644 index 3422381f608ef33d7e6f97af83d96d0561fbd12c..0000000000000000000000000000000000000000 --- a/cmake/test.cmake +++ /dev/null @@ -1,25 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# DEFINE_UNIT_TEST(NAME LIB) -# ---------------------- -# -# Compile a program and add it as a test -# -MACRO(DEFINE_UNIT_TEST NAME LIB) - ADD_EXECUTABLE(${NAME} ${NAME}.cc) - TARGET_LINK_LIBRARIES(${NAME} ${LIB}) - ADD_TEST(${NAME} ${RUNTIME_OUTPUT_DIRECTORY}/${NAME}) -ENDMACRO(DEFINE_UNIT_TEST) diff --git a/cmake/uninstall.cmake b/cmake/uninstall.cmake deleted file mode 100644 index b012bcbac5a8e8487fd44a2d61066e03f6070a88..0000000000000000000000000000000000000000 --- a/cmake/uninstall.cmake +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# _SETUP_PROJECT_UNINSTALL -# ------------------------ -# -# Add custom rule to uninstall the package. -# -MACRO(_SETUP_PROJECT_UNINSTALL) - # FIXME: it is utterly stupid to rely on the install manifest. - # Can't we just remember what we install ?! - CONFIGURE_FILE( - "${PROJECT_SOURCE_DIR}/cmake/cmake_uninstall.cmake.in" - "${CMAKE_CURRENT_BINARY_DIR}/cmake/cmake_uninstall.cmake" - IMMEDIATE - @ONLY - ) - - ADD_CUSTOM_TARGET( - uninstall - "${CMAKE_COMMAND}" -P - "${CMAKE_CURRENT_BINARY_DIR}/cmake/cmake_uninstall.cmake" - ) -ENDMACRO(_SETUP_PROJECT_UNINSTALL) diff --git a/cmake/version.cmake b/cmake/version.cmake deleted file mode 100644 index 343d1553e1688e2ff02e7f582dd3f6af67b2e918..0000000000000000000000000000000000000000 --- a/cmake/version.cmake +++ /dev/null @@ -1,133 +0,0 @@ -# Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# VERSION_COMPUTE -# --------------- -# -# Deduce automatically the version number. -# This mechanism makes sure that version number is always up-to-date and -# coherent (i.e. strictly increasing as commits are made). -# -# There is two cases: -# - the software comes from a release (stable version). In this case, the -# software is retrieved through a tarball which does not contain the `.git' -# directory. Hence, there is no way to search in the Git history to generate -# the version number. -# In this case, a '.version' file is put at the top-directory of the source -# tree which contains the project version. Read the file to retrieve the -# version number. -# -# - the softwares comes from git (possibly unstable version). -# 'git describe' is used to retrieve the version number -# (see 'man git-describe'). This tool generates a version number from the git -# history. The version number follows this pattern: -# -# TAG[-N-SHA1][-dirty] -# -# TAG: last matching tag (i.e. last signed tag starting with v, i.e. v0.1) -# N: number of commits since the last maching tag -# SHA1: sha1 of the current commit -# -dirty: added if the workig directory is dirty (there is some uncommitted -# changes). -# -# For stable releases, i.e. the current commit is a matching tag, -N-SHA1 is -# omitted. If the HEAD is on the signed tag v0.1, the version number will be -# 0.1. -# -# If the HEAD is two commits after v0.5 and the last commit is 034f6d... -# The version number will be: -# - 0.5-2-034f if there is no uncommitted changes, -# - 0.5-2-034f-dirty if there is some uncommitted changes. -# -MACRO(VERSION_COMPUTE) - SET(PROJECT_STABLE False) - - # Check if a version is embedded in the project. - IF(EXISTS ${PROJECT_SOURCE_DIR}/.version) - # Yes, use it. This is a stable version. - FILE(STRINGS .version PROJECT_VERSION) - SET(PROJECT_STABLE True) - ELSE(EXISTS ${PROJECT_SOURCE_DIR}/.version) - # No, there is no '.version' file. Deduce the version from git. - - # Search for git. - FIND_PROGRAM(GIT git) - IF(NOT GIT) - MESSAGE("Warning: failed to compute the version number, git not found.") - SET(PROJECT_VERSION UNKNOWN) - ENDIF() - - # Run describe: search for *signed* tags starting with v, from the HEAD and - # display only the first four characters of the commit id. - EXECUTE_PROCESS( - COMMAND ${GIT} describe --abbrev=4 --match=v* HEAD - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} - RESULT_VARIABLE GIT_DESCRIBE_RESULT - OUTPUT_VARIABLE GIT_DESCRIBE_OUTPUT - ERROR_VARIABLE GIT_DESCRIBE_ERROR - OUTPUT_STRIP_TRAILING_WHITESPACE - ) - - # Run diff-index to check whether the tree is clean or not. - EXECUTE_PROCESS( - COMMAND ${GIT} diff-index --name-only HEAD - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} - RESULT_VARIABLE GIT_DIFF_INDEX_RESULT - OUTPUT_VARIABLE GIT_DIFF_INDEX_OUTPUT - ERROR_VARIABLE GIT_DIFF_INDEX_ERROR - OUTPUT_STRIP_TRAILING_WHITESPACE - ) - - # Check if the tree is clean. - IF(NOT GIT_DIFF_INDEX_RESULT AND NOT GIT_DIFF_INDEX_OUTPUT) - SET(PROJECT_DIRTY False) - ELSE() - SET(PROJECT_DIRTY True) - ENDIF() - - # Check if git describe worked and store the returned version number. - IF(GIT_DESCRIBE_RESULT) - MESSAGE( - "Warning: failed to compute the version number," - " 'git describe' failed:\n" - "\t" ${GIT_DESCRIBE_ERROR}) - SET(PROJECT_VERSION UNKNOWN) - ELSE() - # Get rid of the tag prefix to generate the final version. - STRING(REGEX REPLACE "^v" "" PROJECT_VERSION "${GIT_DESCRIBE_OUTPUT}") - IF(NOT PROJECT_VERSION) - MESSAGE( - "Warning: failed to compute the version number," - "'git describe' returned an empty string.") - SET(PROJECT_VERSION UNKNOWN) - ENDIF() - - # If there is a dash in the version number, it is an unstable release, - # otherwise it is a stable release. - # I.e. 1.0, 2, 0.1.3 are stable but 0.2.4-1-dg43 is unstable. - STRING(REGEX MATCH "-" PROJECT_STABLE "${PROJECT_VERSION}") - IF(NOT PROJECT_STABLE STREQUAL -) - SET(PROJECT_STABLE True) - ELSE() - SET(PROJECT_STABLE False) - ENDIF() - ENDIF() - - # Append dirty if the project is dirty. - IF(PROJECT_DIRTY) - SET(PROJECT_VERSION "${PROJECT_VERSION}-dirty") - ENDIF() - ENDIF(EXISTS ${PROJECT_SOURCE_DIR}/.version) -ENDMACRO() diff --git a/cmake/warning.hh.cmake b/cmake/warning.hh.cmake deleted file mode 100644 index 76c190995744db2c895ee8146ed583c3bdb9fc8b..0000000000000000000000000000000000000000 --- a/cmake/warning.hh.cmake +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright (C) 2008-2013 LAAS-CNRS, JRL AIST-CNRS. -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see <http://www.gnu.org/licenses/>. - -#ifndef @PACKAGE_CPPNAME@_WARNING_HH -# define @PACKAGE_CPPNAME@_WARNING_HH - -// Emits a warning in a portable way. -// -// To emit a warning, one can insert: -// -// #pragma message @PACKAGE_CPPNAME@_WARN("your warning message here") -// -// The use of this syntax is required as this is /not/ a standardized -// feature of C++ language or preprocessor, even if most of the -// compilers support it. - -# define @PACKAGE_CPPNAME@_WARN_STRINGISE_IMPL(x) #x -# define @PACKAGE_CPPNAME@_WARN_STRINGISE(x) \ - @PACKAGE_CPPNAME@_WARN_STRINGISE_IMPL(x) -# ifdef __GNUC__ -# define @PACKAGE_CPPNAME@_WARN(exp) ("WARNING: " exp) -# else -# ifdef _MSC_VER -# define FILE_LINE_LINK __FILE__ "(" \ - @PACKAGE_CPPNAME@_WARN_STRINGISE(__LINE__) ") : " -# define @PACKAGE_CPPNAME@_WARN(exp) (FILE_LINE_LINK "WARNING: " exp) -# else -// If the compiler is not recognized, drop the feature. -# define @PACKAGE_CPPNAME@_WARN(MSG) /* nothing */ -# endif // __MSVC__ -# endif // __GNUC__ - -#endif //! @PACKAGE_CPPNAME@_WARNING_HH