Skip to content

Commit

Permalink
qpOASES version 3.2.0 AS DOWNLOADED
Browse files Browse the repository at this point in the history
  • Loading branch information
gabrielenava committed Dec 27, 2017
1 parent f5b1406 commit 407c77a
Show file tree
Hide file tree
Showing 188 changed files with 16,206 additions and 11,080 deletions.
35 changes: 27 additions & 8 deletions AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
## This file is part of qpOASES.
##
## qpOASES -- An Implementation of the Online Active Set Strategy.
## Copyright (C) 2007-2015 by Hans Joachim Ferreau, Andreas Potschka,
## Copyright (C) 2007-2017 by Hans Joachim Ferreau, Andreas Potschka,
## Christian Kirches et al. All rights reserved.
##
## qpOASES is free software; you can redistribute it and/or
Expand All @@ -12,7 +12,7 @@
##
## qpOASES 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.
## 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
Expand All @@ -25,7 +25,7 @@
MAIN AUTHORS
============

qpOASES's core functionality and software design have been developed by the
qpOASES's core functionality and software design have been developed by the
following main developers (in alphabetical order):

Hans Joachim Ferreau
Expand All @@ -37,12 +37,15 @@ following main developers (in alphabetical order):
FURTHER AUTHORS
===============

Moreover, the following developers have contributed code to qpOASES's
third-party interfaces (in alphabetical order):
Moreover, the following developers have contributed code to qpOASES's
third-party interfaces or provided additional functionality
(in alphabetical order):

Alexander Buchner
Holger Diedam
Dennis Janka
Manuel Kudruss
Andreas Waechter
Sebastian F. Walter


Expand All @@ -51,20 +54,36 @@ CONTRIBUTORS
============

Finally, the following people have not contributed to the source code,
but have helped making qpOASES even more useful by testing, reporting
but have helped making qpOASES even more useful by testing, reporting
bugs or proposing algorithmic improvements (in alphabetical order):

Eckhard Arnold
Joris Gillis
Boris Houska
D. Kwame Minde Kufoalor
Aude Perrin
Milan Vukov
Thomas Wiese
Leonard Wirsching



All users are invited to further improve qpOASES by providing comments,
code enhancements, bug reports, additional documentation or whatever you
SCIENTIFIC MENTORS
==================

We also would like to thank two persons who had a major share in making
qpOASES a success. Not by writing even a single line of code, but by
establishing the idea of using a homotopy-based approach for high-speed
QP solutions and by excellent scientific guidance during the development
process:

Hans Georg Bock
Moritz Diehl



All users are invited to further improve qpOASES by providing comments,
code enhancements, bug reports, additional documentation or whatever you
feel is missing.


Expand Down
35 changes: 27 additions & 8 deletions AUTHORS.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
## This file is part of qpOASES.
##
## qpOASES -- An Implementation of the Online Active Set Strategy.
## Copyright (C) 2007-2015 by Hans Joachim Ferreau, Andreas Potschka,
## Copyright (C) 2007-2017 by Hans Joachim Ferreau, Andreas Potschka,
## Christian Kirches et al. All rights reserved.
##
## qpOASES is free software; you can redistribute it and/or
Expand All @@ -12,7 +12,7 @@
##
## qpOASES 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.
## 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
Expand All @@ -25,7 +25,7 @@
MAIN AUTHORS
============

qpOASES's core functionality and software design have been developed by the
qpOASES's core functionality and software design have been developed by the
following main developers (in alphabetical order):

Hans Joachim Ferreau
Expand All @@ -37,12 +37,15 @@ following main developers (in alphabetical order):
FURTHER AUTHORS
===============

Moreover, the following developers have contributed code to qpOASES's
third-party interfaces (in alphabetical order):
Moreover, the following developers have contributed code to qpOASES's
third-party interfaces or provided additional functionality
(in alphabetical order):

Alexander Buchner
Holger Diedam
Dennis Janka
Manuel Kudruss
Andreas Waechter
Sebastian F. Walter


Expand All @@ -51,20 +54,36 @@ CONTRIBUTORS
============

Finally, the following people have not contributed to the source code,
but have helped making qpOASES even more useful by testing, reporting
but have helped making qpOASES even more useful by testing, reporting
bugs or proposing algorithmic improvements (in alphabetical order):

Eckhard Arnold
Joris Gillis
Boris Houska
D. Kwame Minde Kufoalor
Aude Perrin
Milan Vukov
Thomas Wiese
Leonard Wirsching



All users are invited to further improve qpOASES by providing comments,
code enhancements, bug reports, additional documentation or whatever you
SCIENTIFIC MENTORS
==================

We also would like to thank two persons who had a major share in making
qpOASES a success. Not by writing even a single line of code, but by
establishing the idea of using a homotopy-based approach for high-speed
QP solutions and by excellent scientific guidance during the development
process:

Hans Georg Bock
Moritz Diehl



All users are invited to further improve qpOASES by providing comments,
code enhancements, bug reports, additional documentation or whatever you
feel is missing.


Expand Down
119 changes: 55 additions & 64 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
## This file is part of qpOASES.
##
## qpOASES -- An Implementation of the Online Active Set Strategy.
## Copyright (C) 2007-2015 by Hans Joachim Ferreau, Andreas Potschka,
## Copyright (C) 2007-2017 by Hans Joachim Ferreau, Andreas Potschka,
## Christian Kirches et al. All rights reserved.
##
## qpOASES is free software; you can redistribute it and/or
Expand All @@ -25,44 +25,43 @@
##
## Filename: CMakeLists.txt
## Author: Hans Joachim Ferreau (thanks to Milan Vukov)
## Version: 3.1
## Date: 2007-2015
## Version: 3.2
## Date: 2007-2017
##

cmake_minimum_required(VERSION 2.8.11)
cmake_minimum_required(VERSION 2.6)

project(qpOASES CXX)
set(PACKAGE_NAME "qpOASES")
set(PACKAGE_VERSION "3.1.0")
set(PACKAGE_SO_VERSION "3.1")
set(PACKAGE_DESCRIPTION "QP solver using the online active set strategy")
set(PACKAGE_AUTHOR "Hans Joachim Ferreau, Andreas Potschka, Christian Kirches et al.")
set(PACKAGE_MAINTAINER "Hans Joachim Ferreau, Andreas Potschka, Christian Kirches et al.")
set(PACKAGE_URL "https://projects.coin-or.org/qpOASES")
PROJECT(qpOASES CXX)
SET(PACKAGE_NAME "qpOASES")
SET(PACKAGE_VERSION "3.2.0")
SET(PACKAGE_SO_VERSION "3.2")
SET(PACKAGE_DESCRIPTION "An implementation of the online active set strategy")
SET(PACKAGE_AUTHOR "Hans Joachim Ferreau, Andreas Potschka, Christian Kirches et al.")
SET(PACKAGE_MAINTAINER "Hans Joachim Ferreau, Andreas Potschka, Christian Kirches et al.")
SET(PACKAGE_URL "https://projects.coin-or.org/qpOASES")

set(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
set(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib)
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/libs)

set(BUILD_SHARED_LIBS ON)
IF( NOT CMAKE_VERBOSE_MAKEFILE )
SET( CMAKE_VERBOSE_MAKEFILE OFF )
ENDIF( NOT CMAKE_VERBOSE_MAKEFILE )

list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)

if( NOT CMAKE_VERBOSE_MAKEFILE )
set( CMAKE_VERBOSE_MAKEFILE OFF )
endif( NOT CMAKE_VERBOSE_MAKEFILE )

if( NOT CMAKE_BUILD_TYPE )
set(CMAKE_BUILD_TYPE Release CACHE STRING
IF( NOT CMAKE_BUILD_TYPE )
SET(CMAKE_BUILD_TYPE Release CACHE STRING
"Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel."
FORCE
)
endif( NOT CMAKE_BUILD_TYPE )
ENDIF( NOT CMAKE_BUILD_TYPE )


option(QPOASES_BUILD_EXAMPLES "Build examples." ON)


############################################################
#################### compiler flags ########################
############################################################
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__NO_COPYRIGHT__")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__NO_COPYRIGHT__")
IF ( UNIX )
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -pedantic -Wfloat-equal -Wshadow -DLINUX")
SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_DEBUG} -O3 -finline-functions")
Expand All @@ -75,57 +74,52 @@ SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -D__DEBUG__")
############################################################
######################## rpath #############################
############################################################
option(QPOASES_ENABLE_RPATH "Enable RPATH for the library" TRUE)
mark_as_advanced(QPOASES_ENABLE_RPATH)
# use, i.e. don't skip the full RPATH for the build tree
set(CMAKE_SKIP_BUILD_RPATH FALSE)

# when building, don't use the install RPATH already
# (but later on when installing)
set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)

set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib:${CMAKE_INSTALL_PREFIX}/lib/casadi")

# add the automatically determined parts of the RPATH
# which point to directories outside the build tree to the install RPATH
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)

# the RPATH to be used when installing, but only if it's not a system directory
list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/lib" isSystemDir)
if("${isSystemDir}" STREQUAL "-1")
set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib:${CMAKE_INSTALL_PREFIX}/lib/casadi")
endif("${isSystemDir}" STREQUAL "-1")


include(AddInstallRPATHSupport)
add_install_rpath_support(BIN_DIRS "${CMAKE_INSTALL_PREFIX}/bin"
LIB_DIRS "${CMAKE_INSTALL_PREFIX}/lib"
DEPENDS QPOASES_ENABLE_RPATH
USE_LINK_PATH)

############################################################
#################### build and install #####################
############################################################
include_directories(${PROJECT_SOURCE_DIR}/include)
file(GLOB HPPS include/qpOASES/*.hpp)
file(GLOB IPPS include/qpOASES/*.ipp)

set(HEADERS ${HPPS} ${IPPS} include/qpOASES.hpp)
source_group("Header Files" FILES include/qpOASES.hpp)
source_group("Header Files\\hpp" FILES ${HPPS})
source_group("Header Files\\ipp" FILES ${IPPS})
INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/include)

# compile qpOASES libraries
file(GLOB SRC src/*.cpp)

if(WIN32)
set(LIBRARY_TYPE STATIC)
else()
if (BUILD_SHARED_LIBS)
set(LIBRARY_TYPE SHARED)
else()
set(LIBRARY_TYPE STATIC)
endif()
endif()
FILE(GLOB SRC src/*.cpp)

# library
add_library(qpOASES ${LIBRARY_TYPE} ${SRC} ${HEADERS})
install(TARGETS qpOASES
ADD_LIBRARY(qpOASES STATIC ${SRC})
INSTALL(TARGETS qpOASES
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib
RUNTIME DESTINATION lib
)
set_target_properties(
SET_TARGET_PROPERTIES(
qpOASES
PROPERTIES
SOVERSION ${PACKAGE_SO_VERSION}
)

# headers
install(FILES include/qpOASES.hpp
INSTALL(FILES include/qpOASES.hpp
DESTINATION include)
install(DIRECTORY include/qpOASES
INSTALL(DIRECTORY include/qpOASES
DESTINATION include
FILES_MATCHING PATTERN "*.hpp"
PATTERN "*.ipp"
Expand All @@ -134,12 +128,10 @@ install(DIRECTORY include/qpOASES
############################################################
######################### examples #########################
############################################################
#TODO: Move the examples in sub-folders to avoid cluttering the project
option(QPOASES_BUILD_EXAMPLES "Build examples" OFF)

if (QPOASES_BUILD_EXAMPLES)
# compile qpOASES examples
set(EXAMPLE_NAMES
SET(EXAMPLE_NAMES
example1
example1a
example1b
Expand All @@ -150,16 +142,15 @@ if (QPOASES_BUILD_EXAMPLES)
example5
exampleLP
qrecipe
qrecipeSchur
)

foreach(ELEMENT ${EXAMPLE_NAMES})
FOREACH(ELEMENT ${EXAMPLE_NAMES})
ADD_EXECUTABLE(${ELEMENT} examples/${ELEMENT}.cpp)
TARGET_LINK_LIBRARIES(${ELEMENT} qpOASES)
endforeach(ELEMENT ${EXAMPLE_NAMES})
endif()
ENDFOREACH(ELEMENT ${EXAMPLE_NAMES})
endif(QPOASES_BUILD_EXAMPLES)

##
## end of file
##

add_subdirectory(interfaces)
Loading

0 comments on commit 407c77a

Please sign in to comment.