From fb8183f046ed6c902d61a1b6a66a125702d29bf8 Mon Sep 17 00:00:00 2001 From: CABEL Tristan Date: Fri, 30 Sep 2022 10:19:13 +0200 Subject: [PATCH 1/6] recipe for qt6 --- conda/conda_build_config.yaml | 14 ++++++++++++++ conda/meta.yaml | 25 +++++++++++-------------- 2 files changed, 25 insertions(+), 14 deletions(-) create mode 100644 conda/conda_build_config.yaml diff --git a/conda/conda_build_config.yaml b/conda/conda_build_config.yaml new file mode 100644 index 00000000..d8c04f0c --- /dev/null +++ b/conda/conda_build_config.yaml @@ -0,0 +1,14 @@ +cxx_compiler: + - gxx # [linux] + - clangxx # [osx] + - vs2019 # [win] +compiler_version: + - 11 # [osx] + - 11.2.0 # [linux] +cxx_compiler_version: + - 11 # [osx] + - 11.2.0 # [linux] +MACOSX_DEPLOYMENT_TARGET: # [osx] + - '10.12' # [osx] +MACOSX_SDK_VERSION: # [osx and x86_64] + - '10.12' # [osx and x86_64] diff --git a/conda/meta.yaml b/conda/meta.yaml index 89f4119d..eee7b15d 100644 --- a/conda/meta.yaml +++ b/conda/meta.yaml @@ -17,31 +17,28 @@ build: preserve_egg_dir: True number: 0 requirements: + host: + - python {{PY_VER}} + - setuptools + - openalea.plantgl>=3.15 + - qt>=6.2 build: - - binutils_impl_linux-64<2.31.0 # [linux] - {{ compiler('cxx') }} - - python {{PY_VER}} - - cmake >=3.12.0 + - cmake >=3.20.0 - pkg-config # [linux] - make # [unix] - menuinst # [win] - host: - - python {{PY_VER}} - - setuptools - - openalea.plantgl - # - boost # provided by plantgl - - pyqt run: - python {{PY_VER}} - setuptools - - {{ pin_compatible('openalea.plantgl', max_pin='x.x') }} - - {{ pin_compatible('boost', max_pin='x.x.x') }} - - pyqt + - {{ pin_compatible('numpy', max_pin='x.x') }} + - {{ pin_compatible('openalea.plantgl', max_pin='x.x') }} + - {{ pin_compatible('boost', max_pin='x.x.x') }} + - pyside6 - ipython - - qtconsole + - qtconsole-base - jupyter_client # <6 - pyopengl - - pyqglviewer - jsonschema app: From 367cf7e81715a6346f816c046ad14dc6598f3356 Mon Sep 17 00:00:00 2001 From: Guillaume Cerutti Date: Mon, 21 Nov 2022 15:56:59 +0100 Subject: [PATCH 2/6] fix qopenglwidget imports --- src/openalea/lpy/gui/lpyview3d.py | 8 +++++++- src/openalea/lpy/gui/objectpanel.py | 4 ++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/openalea/lpy/gui/lpyview3d.py b/src/openalea/lpy/gui/lpyview3d.py index d3251491..ed586a5a 100644 --- a/src/openalea/lpy/gui/lpyview3d.py +++ b/src/openalea/lpy/gui/lpyview3d.py @@ -6,7 +6,13 @@ ParentClass = QGLViewer hasPyQGLViewer = True except ImportError as e: - ParentClass = qt.QtWidgets.QOpenGLWidget + try: + from openalea.plantgl.gui.qt.QtWidgets import QOpenGLWidget + ParentClass = QOpenGLWidget + pass + except: + from openalea.plantgl.gui.qt.QtOpenGL import QOpenGLWidget + ParentClass = QOpenGLWidget print('Missing PyQGLViewer !!!!!! Unstable Lpy !!!!!!!!!') hasPyQGLViewer = False diff --git a/src/openalea/lpy/gui/objectpanel.py b/src/openalea/lpy/gui/objectpanel.py index 76d8aa68..acc33767 100644 --- a/src/openalea/lpy/gui/objectpanel.py +++ b/src/openalea/lpy/gui/objectpanel.py @@ -19,8 +19,8 @@ NewOpenGLClass = True pass except: - from openalea.plantgl.gui.qt.QtOpenGL import QGLWidget - QGLParentClass = QGLWidget + from openalea.plantgl.gui.qt.QtOpenGL import QOpenGLWidget + QGLParentClass = QOpenGLWidget NewOpenGLClass = False From 5a88f27e3cdb68c25568530e41923e38ee256534 Mon Sep 17 00:00:00 2001 From: CABEL Tristan Date: Wed, 15 Mar 2023 12:15:28 +0100 Subject: [PATCH 3/6] add parallel qt6 recipe --- conda_qt6/README.md | 2 + conda_qt6/bld.bat | 16 ++++++++ conda_qt6/conda_build_config.yaml | 18 +++++++++ conda_qt6/icon_64x64.png | Bin 0 -> 16181 bytes conda_qt6/meta.yaml | 59 ++++++++++++++++++++++++++++++ 5 files changed, 95 insertions(+) create mode 100644 conda_qt6/README.md create mode 100644 conda_qt6/bld.bat create mode 100644 conda_qt6/conda_build_config.yaml create mode 100644 conda_qt6/icon_64x64.png create mode 100644 conda_qt6/meta.yaml diff --git a/conda_qt6/README.md b/conda_qt6/README.md new file mode 100644 index 00000000..143d66e3 --- /dev/null +++ b/conda_qt6/README.md @@ -0,0 +1,2 @@ +to build do: +`mamba build -c gnomon -c dtk-forge6 -c conda-forge conda_qt6/ ` diff --git a/conda_qt6/bld.bat b/conda_qt6/bld.bat new file mode 100644 index 00000000..005ceacc --- /dev/null +++ b/conda_qt6/bld.bat @@ -0,0 +1,16 @@ +:: Working Dir +mkdir build +cd build + +:: Build +cmake -G "NMake Makefiles" -DCMAKE_INSTALL_PREFIX=%LIBRARY_PREFIX% -DCMAKE_BUILD_TYPE=Release -DPython3_EXECUTABLE=%PYTHON% -LAH .. +if errorlevel 1 exit 1 +nmake +if errorlevel 1 exit 1 +nmake install +if errorlevel 1 exit 1 + +:: Install Python Files +cd .. +%PYTHON% setup.py install +if errorlevel 1 exit 1 diff --git a/conda_qt6/conda_build_config.yaml b/conda_qt6/conda_build_config.yaml new file mode 100644 index 00000000..c9eaffae --- /dev/null +++ b/conda_qt6/conda_build_config.yaml @@ -0,0 +1,18 @@ +python: + - 3.9 +numpy: + - 1.22 +cxx_compiler: + - gxx # [linux] + - clangxx # [osx] + - vs2019 # [win] +compiler_version: + - 11 # [osx] + - 11.2.0 # [linux] +cxx_compiler_version: + - 11 # [osx] + - 11.2.0 # [linux] +MACOSX_DEPLOYMENT_TARGET: # [osx] + - '10.12' # [osx] +MACOSX_SDK_VERSION: # [osx and x86_64] + - '10.12' # [osx and x86_64] diff --git a/conda_qt6/icon_64x64.png b/conda_qt6/icon_64x64.png new file mode 100644 index 0000000000000000000000000000000000000000..8349291e74b58ef973295c13a4e7881953a1128b GIT binary patch literal 16181 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 T2p#)K00000NkvXXu0mjfculxm literal 0 HcmV?d00001 diff --git a/conda_qt6/meta.yaml b/conda_qt6/meta.yaml new file mode 100644 index 00000000..f7c01708 --- /dev/null +++ b/conda_qt6/meta.yaml @@ -0,0 +1,59 @@ +#{% set version = "2.7.2" %} +{% set data = load_setup_py_data() %} + +package: + name: openalea.lpy + version: {{ data.get('version') }} + +source: + path: .. + +about: + home: https://github.com/openalea/lpy + license: Cecill-C + summary: L-Py is a simulation software that mixes L-systems construction with the Python high-level modeling language. + +build: + preserve_egg_dir: True + number: 1 +requirements: + host: + - python + - setuptools + - openalea.plantgl>=3.19 + - qt=6.2.2 + build: + - {{ compiler('cxx') }} + - cmake >=3.20.0 + - pkg-config # [linux] + - make # [unix] + - menuinst # [win] + run: + - python + - setuptools + - {{ pin_compatible('numpy', max_pin='x.x') }} + - {{ pin_compatible('openalea.plantgl', max_pin='x.x') }} + - {{ pin_compatible('boost', max_pin='x.x.x') }} + - pyside6 + - ipython + - qtconsole-base + - jupyter_client # <6 + - pyopengl + - jsonschema + +app: + entry: lpy + summary: Plant simulation software + icon: icon_64x64.png + +test: + requires: + - nose + imports: + - openalea.lpy + source_files: + - test/ + - share/ + commands: + - nosetests -v -I test_predecessor_at_scale.py -I test_ui.py [unix] + - nosetests -v -I test_predecessor_at_scale.py -I test_ui.py -I test_axialtree.py -I test_successor_at_scale.py [win] From dcaf21a7e956d3711515dc302afac433eed434dc Mon Sep 17 00:00:00 2001 From: CABEL Tristan Date: Wed, 5 Apr 2023 11:40:31 +0200 Subject: [PATCH 4/6] update plantgl version --- conda_qt6/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conda_qt6/meta.yaml b/conda_qt6/meta.yaml index f7c01708..f1ba8a19 100644 --- a/conda_qt6/meta.yaml +++ b/conda_qt6/meta.yaml @@ -20,7 +20,7 @@ requirements: host: - python - setuptools - - openalea.plantgl>=3.19 + - openalea.plantgl>=3.20 - qt=6.2.2 build: - {{ compiler('cxx') }} From 8057f08af17b45f304ce7a6879ae208310dddd20 Mon Sep 17 00:00:00 2001 From: tristan Cabel Date: Thu, 6 Apr 2023 22:38:40 +0200 Subject: [PATCH 5/6] fix conda build --- conda_qt6/build.sh | 76 +++++++++++++++++++++++++++++++ conda_qt6/conda_build_config.yaml | 3 ++ 2 files changed, 79 insertions(+) create mode 100644 conda_qt6/build.sh diff --git a/conda_qt6/build.sh b/conda_qt6/build.sh new file mode 100644 index 00000000..8abbfaa9 --- /dev/null +++ b/conda_qt6/build.sh @@ -0,0 +1,76 @@ +#!/bin/bash + +if [[ -d build ]]; then + rm -rf build +fi +mkdir build +cd build + +if [ `uname` = "Darwin" ]; then + SYSTEM_DEPENDENT_ARGS=( + "-DCMAKE_OSX_SYSROOT=${CONDA_BUILD_SYSROOT}" + ) + export LDFLAGS="-undefined dynamic_lookup ${LDFLAGS}" +else + SYSTEM_DEPENDENT_ARGS=( + "-DOPENGL_opengl_LIBRARY=${BUILD_PREFIX}/${HOST}/sysroot/usr/lib64/libGL.so" + "-DOPENGL_glx_LIBRARY=${BUILD_PREFIX}/${HOST}/sysroot/usr/lib64/libGL.so" + ) +fi + +export SYSTEM_DEPENDENT_ARGS + +echo +echo "****** CMAKE" +which cmake +echo 'CONDA_BUILD_SYSROOT:' $CONDA_BUILD_SYSROOT +echo +echo "****** ENV" +env + +echo +echo "****** CMAKE CONFIG" + +cmake -DCMAKE_INSTALL_PREFIX=${PREFIX} \ + -DCMAKE_PREFIX_PATH=${PREFIX} \ + -DCMAKE_BUILD_TYPE=Release \ + -DPython3_EXECUTABLE=${PYTHON} \ + ${SYSTEM_DEPENDENT_ARGS[@]} \ + -LAH .. + +echo +echo "****** LPY CONFIG" +cat $SRC_DIR/src/openalea/lpy/__version__.py + +echo +echo "****** COMPILE" +export VERBOSE=1 +make -j${CPU_COUNT} +echo "****** INSTALL CXX LIB" +make install + +echo +echo "****** INSTALL PYTHON LIB" +cd .. +echo "PYTHON:" ${PYTHON} + +#echo "** PYTHON CALL" +#export PYTHONPATH=${PREFIX}/lib/python${PY_VER}/site-packages/ +${PYTHON} setup.py install --prefix=${PREFIX} + +#cp -r share `${PYTHON} -c "import os, openalea.lpy as lpy ; print(os.path.dirname(lpy.__file__))"`/.. + +echo +echo "****** CHECK PYTHON LIB" + +# To check if Python lib is not in the dependencies with conda-forge distribution. +# See https://github.com/conda-forge/boost-feedstock/issues/81 +if [ `uname` = "Darwin" ]; then + export LDD='otool -L' +else + export LDD='ldd' +fi + +echo `${PYTHON} -c "import openalea.lpy.__lpy_kernel__ as lpy ; print(lpy.__file__)"` + +echo "****** END OF BUILD PROCESS" diff --git a/conda_qt6/conda_build_config.yaml b/conda_qt6/conda_build_config.yaml index c9eaffae..71dac7fa 100644 --- a/conda_qt6/conda_build_config.yaml +++ b/conda_qt6/conda_build_config.yaml @@ -16,3 +16,6 @@ MACOSX_DEPLOYMENT_TARGET: # [osx] - '10.12' # [osx] MACOSX_SDK_VERSION: # [osx and x86_64] - '10.12' # [osx and x86_64] + +#CONDA_BUILD_SYSROOT: # [osx] +# - /Users/ci/Desktop/MacOSX-SDKs/MacOSX10.12.sdk # [osx] \ No newline at end of file From d798a56b09936c8cb5301f8b1b1df451602c17ac Mon Sep 17 00:00:00 2001 From: CABEL Tristan Date: Fri, 8 Sep 2023 14:40:10 +0200 Subject: [PATCH 6/6] update to conda-forge qt6-main --- CMakeLists.txt | 6 +++--- conda_qt6/build.sh | 9 ++++----- conda_qt6/conda_build_config.yaml | 10 +++++----- conda_qt6/meta.yaml | 4 ++-- 4 files changed, 14 insertions(+), 15 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 502ca291..61aeffdb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -48,7 +48,7 @@ if (APPLE) endif() ## ################################################################### -## Dependencies +## Dependencies ## ################################################################### # --- Python @@ -59,7 +59,7 @@ if (WIN32) set(Python3_FIND_REGISTRY LAST) endif() -find_package (Python3 COMPONENTS Interpreter Development NumPy REQUIRED) +find_package (Python3 3.9 EXACT COMPONENTS Interpreter Development NumPy REQUIRED) include_directories(${Python3_INCLUDE_DIRS}) # --- Libraries @@ -102,4 +102,4 @@ endif() add_subdirectory("src/cpp") add_subdirectory("src/wrapper") -install_share("share" "lpy") \ No newline at end of file +install_share("share" "lpy") diff --git a/conda_qt6/build.sh b/conda_qt6/build.sh index 8abbfaa9..5bd82c62 100644 --- a/conda_qt6/build.sh +++ b/conda_qt6/build.sh @@ -36,7 +36,7 @@ cmake -DCMAKE_INSTALL_PREFIX=${PREFIX} \ -DCMAKE_BUILD_TYPE=Release \ -DPython3_EXECUTABLE=${PYTHON} \ ${SYSTEM_DEPENDENT_ARGS[@]} \ - -LAH .. + -LAH .. echo echo "****** LPY CONFIG" @@ -44,8 +44,7 @@ cat $SRC_DIR/src/openalea/lpy/__version__.py echo echo "****** COMPILE" -export VERBOSE=1 -make -j${CPU_COUNT} +make -j${CPU_COUNT} echo "****** INSTALL CXX LIB" make install @@ -56,7 +55,7 @@ echo "PYTHON:" ${PYTHON} #echo "** PYTHON CALL" #export PYTHONPATH=${PREFIX}/lib/python${PY_VER}/site-packages/ -${PYTHON} setup.py install --prefix=${PREFIX} +${PYTHON} setup.py install --prefix=${PREFIX} #cp -r share `${PYTHON} -c "import os, openalea.lpy as lpy ; print(os.path.dirname(lpy.__file__))"`/.. @@ -68,7 +67,7 @@ echo "****** CHECK PYTHON LIB" if [ `uname` = "Darwin" ]; then export LDD='otool -L' else - export LDD='ldd' + export LDD='ldd' fi echo `${PYTHON} -c "import openalea.lpy.__lpy_kernel__ as lpy ; print(lpy.__file__)"` diff --git a/conda_qt6/conda_build_config.yaml b/conda_qt6/conda_build_config.yaml index 71dac7fa..aca02d5f 100644 --- a/conda_qt6/conda_build_config.yaml +++ b/conda_qt6/conda_build_config.yaml @@ -1,3 +1,4 @@ +cdt_name: cos7 # [linux] python: - 3.9 numpy: @@ -13,9 +14,8 @@ cxx_compiler_version: - 11 # [osx] - 11.2.0 # [linux] MACOSX_DEPLOYMENT_TARGET: # [osx] - - '10.12' # [osx] + - '10.14' # [osx] MACOSX_SDK_VERSION: # [osx and x86_64] - - '10.12' # [osx and x86_64] - -#CONDA_BUILD_SYSROOT: # [osx] -# - /Users/ci/Desktop/MacOSX-SDKs/MacOSX10.12.sdk # [osx] \ No newline at end of file + - '10.14' # [osx and x86_64] +CONDA_BUILD_SYSROOT: # [osx] + - /Users/ci/Desktop/MacOSX-SDKs/MacOSX10.12.sdk # [osx] diff --git a/conda_qt6/meta.yaml b/conda_qt6/meta.yaml index f1ba8a19..98437c3b 100644 --- a/conda_qt6/meta.yaml +++ b/conda_qt6/meta.yaml @@ -15,13 +15,13 @@ about: build: preserve_egg_dir: True - number: 1 + number: 2 requirements: host: - python - setuptools - openalea.plantgl>=3.20 - - qt=6.2.2 + - qt6-main=6.5 build: - {{ compiler('cxx') }} - cmake >=3.20.0