From a7e4cab50278f0ae92e65f21f4400c471e2ca289 Mon Sep 17 00:00:00 2001
From: Guilhem Saurel <guilhem.saurel@laas.fr>
Date: Fri, 4 Jan 2019 22:40:38 +0100
Subject: [PATCH] [CMake] fix qpOASES detection

---
 CMakeLists.txt           |  8 ++++--
 cmake2/FindqpOASES.cmake | 53 ----------------------------------------
 src/CMakeLists.txt       |  3 +--
 test/CMakeLists.txt      |  3 +--
 4 files changed, 8 insertions(+), 59 deletions(-)
 delete mode 100644 cmake2/FindqpOASES.cmake

diff --git a/CMakeLists.txt b/CMakeLists.txt
index efe0aff..8d0766d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -3,7 +3,6 @@ cmake_minimum_required(VERSION 2.6)
 INCLUDE(cmake/base.cmake)
 INCLUDE(cmake/test.cmake)
 INCLUDE(cmake/python.cmake)
-INCLUDE(cmake2/FindqpOASES.cmake)
 
 SET(PROJECT_ORG stonneau)
 SET(PROJECT_NAME hpp-centroidal-dynamics)
@@ -51,7 +50,12 @@ else()
 endif()
 
 #SEARCH_FOR_QPOASES()
-ADD_REQUIRED_DEPENDENCY("qpOASES")
+#ADD_REQUIRED_DEPENDENCY("qpOASES")
+SET(QPOASES_PREFIX ${CMAKE_PREFIX_PATH} CACHE PATH "Set the prefix where qpOASES is installed")
+FIND_LIBRARY(QPOASES_LIBRARY "qpOASES" PATHS ${QPOASES_PREFIX} PATH_SUFFIXES lib)
+FIND_PATH(QPOASES_INCLUDE_DIRS NAMES "qpOASES.hpp" PATHS ${QPOASES_PREFIX} PATH_SUFFIXES include)
+INCLUDE_DIRECTORIES(${QPOASES_INCLUDE_DIRS})
+
 
 ADD_SUBDIRECTORY (include/${CUSTOM_HEADER_DIR})
 add_subdirectory (src)
diff --git a/cmake2/FindqpOASES.cmake b/cmake2/FindqpOASES.cmake
deleted file mode 100644
index 0f349c6..0000000
--- a/cmake2/FindqpOASES.cmake
+++ /dev/null
@@ -1,53 +0,0 @@
-#.rst:
-# FindqpOASES
-# -----------
-#
-# Try to find the qpOASES library.
-# Once done this will define the following variables::
-#
-#  qpOASES_FOUND         - System has qpOASES
-#  qpOASES_INCLUDE_DIR   - qpOASES include directory
-#  qpOASES_LIBRARY       - qpOASES libraries
-#
-# qpOASES does not have an "install" step, and the includes are in the source
-# tree, while the libraries are in the build tree.
-# Therefore the environment and cmake variables `qpOASES_SOURCE_DIR` and
-# `qpOASES_BINARY_DIR` will be used to locate the includes and libraries.
-
-#=============================================================================
-# Copyright 2014 iCub Facility, Istituto Italiano di Tecnologia
-#   Authors: Daniele E. Domenichelli <daniele.domenichelli@iit.it>
-#
-# 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 YCM, substitute the full
-#  License text for the above reference.)
-MACRO(SEARCH_FOR_QPOASES)
-
-include(FindPackageHandleStandardArgs)
-
-find_path(qpOASES_INCLUDEDIR
-          NAMES qpOASES.hpp
-          HINTS "${qpOASES_SOURCE_DIR}"
-                ENV qpOASES_SOURCE_DIR
-          PATH_SUFFIXES include)
-find_library(qpOASES_LIB
-             NAMES qpOASES
-             HINTS "${qpOASES_BINARY_DIR}"
-                   ENV qpOASES_BINARY_DIR
-             PATH_SUFFIXES lib
-                           libs)
-
-set(qpOASES_INCLUDE_DIR ${qpOASES_INCLUDEDIR})
-set(qpOASES_LIBRARY ${qpOASES_LIB})
-
-find_package_handle_standard_args(qpOASES DEFAULT_MSG qpOASES_LIBRARY
-                                                      qpOASES_INCLUDE_DIR)
-set(qpOASES_FOUND ${QPOASES_FOUND})
-
-ENDMACRO(SEARCH_FOR_QPOASES)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index db62488..dd68263 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -19,9 +19,8 @@ SET(${LIBRARY_NAME}_SOURCES
 
 ADD_LIBRARY(${LIBRARY_NAME} SHARED ${${LIBRARY_NAME}_SOURCES})
 
-TARGET_LINK_LIBRARIES(${LIBRARY_NAME} ${CDD_LIBRARIES})
+TARGET_LINK_LIBRARIES(${LIBRARY_NAME} ${CDD_LIBRARIES} ${QPOASES_LIBRARY})
 PKG_CONFIG_USE_DEPENDENCY(${LIBRARY_NAME} eigen3)
-PKG_CONFIG_USE_DEPENDENCY(${LIBRARY_NAME} qpOASES)
 
 if(CLP_FOUND)
   TARGET_LINK_LIBRARIES(${LIBRARY_NAME} ${CLP_LIBRARIES}
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index b8dd2f6..3271bad 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -9,6 +9,5 @@ PKG_CONFIG_USE_DEPENDENCY(static-equilibrium eigen3)
 TARGET_LINK_LIBRARIES(static-equilibrium ${PROJECT_NAME})
 
 ADD_UNIT_TEST(lp-solvers test_LP_solvers)
-PKG_CONFIG_USE_DEPENDENCY(lp-solvers qpOASES)
 PKG_CONFIG_USE_DEPENDENCY(lp-solvers eigen3)
-TARGET_LINK_LIBRARIES(lp-solvers ${PROJECT_NAME})
+TARGET_LINK_LIBRARIES(lp-solvers ${PROJECT_NAME} ${QPOASES_LIBRARY})
-- 
GitLab