From dff4a5e79651e589f892ad2e05ba81e183b39a35 Mon Sep 17 00:00:00 2001
From: Olivier Stasse <ostasse@laas.fr>
Date: Fri, 14 Sep 2018 07:05:03 +0200
Subject: [PATCH] [wip/py-sot-core-v3] Fix pb related to install __init__.py
 Bump PKGREVISION to 1

---
 py-sot-core-v3/Makefile         |  1 +
 py-sot-core-v3/distinfo         |  1 +
 py-sot-core-v3/patches/patch-aa | 81 +++++++++++++++++++++++++++++++++
 3 files changed, 83 insertions(+)
 create mode 100644 py-sot-core-v3/patches/patch-aa

diff --git a/py-sot-core-v3/Makefile b/py-sot-core-v3/Makefile
index d83af778..8f60cf52 100644
--- a/py-sot-core-v3/Makefile
+++ b/py-sot-core-v3/Makefile
@@ -5,6 +5,7 @@
 ORG=			stack-of-tasks
 NAME=			sot-core
 VERSION=		3.2.0
+PKGREVISION=		1
 
 DISTNAME=		${NAME}-${VERSION}
 PKGNAME=		${PKGTAG.python-}${NAME}-v3-${VERSION}
diff --git a/py-sot-core-v3/distinfo b/py-sot-core-v3/distinfo
index f35513dd..6028d8e1 100644
--- a/py-sot-core-v3/distinfo
+++ b/py-sot-core-v3/distinfo
@@ -1,3 +1,4 @@
 SHA1 (sot-core-3.2.0.tar.gz) = fdba4a6febb240904872a519de9a613f44645d84
 RMD160 (sot-core-3.2.0.tar.gz) = ce5f4378feff289536b06e269750243ae2a1d3b7
 Size (sot-core-3.2.0.tar.gz) = 1070131 bytes
+SHA1 (patch-aa) = 963ff7b9884339a9a92f774cb626ae5c2ffb7bdd
diff --git a/py-sot-core-v3/patches/patch-aa b/py-sot-core-v3/patches/patch-aa
new file mode 100644
index 00000000..f692fbcf
--- /dev/null
+++ b/py-sot-core-v3/patches/patch-aa
@@ -0,0 +1,81 @@
+--- src/CMakeLists.txt
++++ src/CMakeLists.txt
+@@ -232,7 +232,9 @@ FOREACH(plugin ${plugins})
+ ENDFOREACH(plugin)
+ 
+ IF(BUILD_PYTHON_INTERFACE)
+-  DYNAMIC_GRAPH_PYTHON_MODULE("sot/core" ${SOTCORE_LIB_NAME} wrap)
++  SET(NO_INSTALL_OF_INIT_PY 0)
++  DYNAMIC_GRAPH_PYTHON_MODULE("sot/core" ${SOTCORE_LIB_NAME} wrap
++    ${NO_INSTALL_OF_INIT_PY})
+ 
+   # Install empty __init__.py files in intermediate directories.
+   INSTALL(FILES
+diff --git a/python.cmake b/python.cmake
+index 4683449..e759c13 100644
+--- cmake/python.cmake
++++ cmake/python.cmake
+@@ -94,7 +94,7 @@ ENDMACRO(FINDPYTHON)
+ 
+ 
+ #.rst:
+-# .. command:: DYNAMIC_GRAPH_PYTHON_MODULE ( SUBMODULENAME LIBRARYNAME TARGETNAME )
++# .. command:: DYNAMIC_GRAPH_PYTHON_MODULE ( SUBMODULENAME LIBRARYNAME TARGETNAME INSTALL_INIT_PY=1)
+ #
+ #   Add a python submodule to dynamic_graph
+ #  
+@@ -105,6 +105,9 @@ ENDMACRO(FINDPYTHON)
+ #   :param TARGETNAME:     name of the target: should be different for several
+ #                   calls to the macro.
+ #
++#   :param INSTALL_INIT_PY: if set to 1 install and generated a __init__.py file.
++#                   Set to 1 by default.
++#
+ #  .. note::
+ #    Before calling this macro, set variable NEW_ENTITY_CLASS as
+ #    the list of new Entity types that you want to be bound.
+@@ -113,7 +116,15 @@ ENDMACRO(FINDPYTHON)
+ #
+ MACRO(DYNAMIC_GRAPH_PYTHON_MODULE SUBMODULENAME LIBRARYNAME TARGETNAME)
+ 
++  # By default the __init__.py file is installed.
++  SET(INSTALL_INIT_PY 1)
+ 
++  set(extra_macro_args ${ARGN})
++  list(LENGTH extra_macro_args num_extra_args)
++  if( ${num_extra_args} GREATER 0)
++    list(GET extra_macro_args 0 INSTALL_INIT_PY)
++  endif(${num_extra_args} GREATER 0)
++  
+   IF(NOT DEFINED PYTHONLIBS_FOUND)
+     FINDPYTHON()
+   ELSEIF(NOT ${PYTHONLIBS_FOUND} STREQUAL "TRUE")
+@@ -158,15 +169,20 @@ MACRO(DYNAMIC_GRAPH_PYTHON_MODULE SUBMODULENAME LIBRARYNAME TARGETNAME)
+     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 if INSTALL_INIT_PY is set to 1
++  IF (${INSTALL_INIT_PY} EQUAL 1)
+ 
+-  INSTALL(
+-    FILES ${PROJECT_BINARY_DIR}/src/dynamic_graph/${SUBMODULENAME}/__init__.py
+-    DESTINATION ${PYTHON_INSTALL_DIR}
+-    )
++    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}
++      )
++    
++  ENDIF(${INSTALL_INIT_PY} EQUAL 1)
+ 
+ ENDMACRO(DYNAMIC_GRAPH_PYTHON_MODULE SUBMODULENAME)
+ 
-- 
GitLab