From 86aa28c3d23d695dc76fc2d3e44b671c9b35a8e1 Mon Sep 17 00:00:00 2001 From: Nabil Ghodbane Date: Thu, 31 Mar 2022 16:45:21 +0200 Subject: [PATCH] fix SALOME 9.4, 9.5, 9.6 compilation issues --- applications/SALOME-9.3.0.pyconf | 2 - applications/SALOME-9.4.0.pyconf | 24 ++++++---- applications/SALOME-9.5.0.pyconf | 8 ++-- applications/SALOME-9.6.0-MPI.pyconf | 2 +- applications/SALOME-9.6.0.pyconf | 65 ++++++------------------- products/ParaView.pyconf | 66 ++++++++++++++++++++++++++ products/compil_scripts/qt-5.9.1.sh | 71 ++++++++++++++++++++++++++++ products/embree.pyconf | 25 ++++++++++ products/gl2ps.pyconf | 11 +++++ products/ispc.pyconf | 9 ++++ products/patches/qt_mysql_UB20.patch | 47 ++++++++++++++++++ products/qt.pyconf | 19 +++++++- 12 files changed, 282 insertions(+), 67 deletions(-) create mode 100755 products/compil_scripts/qt-5.9.1.sh create mode 100644 products/patches/qt_mysql_UB20.patch diff --git a/applications/SALOME-9.3.0.pyconf b/applications/SALOME-9.3.0.pyconf index e3f1820..8c1cfc7 100644 --- a/applications/SALOME-9.3.0.pyconf +++ b/applications/SALOME-9.3.0.pyconf @@ -148,5 +148,3 @@ __overwrite__ : { } ] - - diff --git a/applications/SALOME-9.4.0.pyconf b/applications/SALOME-9.4.0.pyconf index 617559a..27122cd 100644 --- a/applications/SALOME-9.4.0.pyconf +++ b/applications/SALOME-9.4.0.pyconf @@ -159,24 +159,30 @@ __overwrite__ : # GTK compilation issue __condition__ : "VARS.dist in ['CO6']" 'APPLICATION.products.opencv' : '2.4.13.5' - 'PRODUCTS.embree.default.patches' : ['embree-3.5.2-centos6.patch'] - 'PRODUCTS.ispc.version_1_9_2_src.patches' : ['ispc-1.9.2-centos6.patch'] + 'APPLICATION.products.embree' : {tag:'3.5.2', base: 'no', section: 'version_3_5_2_CO6'} + 'APPLICATION.products.ispc' : {tag:'1.9.2', base: 'no', section: 'version_1_9_2_CO6'} } { # - __condition__ : "VARS.dist in ['UB16.04', 'UB18.04']" - 'APPLICATION.products.tbb' : 'native' - 'PRODUCTS.embree.default.depend' : ['ispc'] + __condition__ : "VARS.dist in ['UB18.04']" + 'APPLICATION.products.tbb' : 'native' + 'APPLICATION.products.embree' : {tag:'3.3.0', base: 'no', section: 'version_3_3_0_UB18_0_4'} + } + + { + # + __condition__ : "VARS.dist in ['UB16.04']" + 'APPLICATION.products.tbb' : 'native' + 'APPLICATION.products.embree' : {tag:'3.3.0', base: 'no', section: 'version_3_3_0_UB16_0_4'} } { # __condition__ : "VARS.dist in ['DB10']" - 'APPLICATION.products.tbb' : 'native' - 'PRODUCTS.embree.default.depend' : ['ispc'] - 'PRODUCTS.gl2ps.version_1_4_0_4037312.build_source' : 'script' - 'PRODUCTS.gl2ps.version_1_4_0_4037312.compil_script' : 'gl2ps-1.4.0.sh' + 'APPLICATION.products.tbb' : 'native' + 'APPLICATION.products.embree' : {tag:'3.3.0', base: 'no', section: 'version_3_3_0_DB10' } + 'APPLICATION.products.gl2ps' : {tag:'1.4.0_4037312', base: 'no', section: 'version_1_4_0_4037312_DB10'} } { diff --git a/applications/SALOME-9.5.0.pyconf b/applications/SALOME-9.5.0.pyconf index f0bd3fc..3c7aec9 100644 --- a/applications/SALOME-9.5.0.pyconf +++ b/applications/SALOME-9.5.0.pyconf @@ -171,10 +171,10 @@ __overwrite__ : # GTK compilation issue __condition__ : "VARS.dist in ['CO6']" 'APPLICATION.products.opencv' : '2.4.13.5' - 'APPLICATION.products.tbb' : '4.4' - 'APPLICATION.products.llvm' : '3.9.1-clang' - 'APPLICATION.products.mesa' : '13.0.6' - 'PRODUCTS.embree.default.patches' : ['embree-3.5.2-centos6.patch'] + 'APPLICATION.products.tbb' : '4.4' + 'APPLICATION.products.llvm' : '3.9.1-clang' + 'APPLICATION.products.mesa' : '13.0.6' + 'APPLICATION.products.embree' : {tag:'3.3.0', base: 'no', section: 'version_3_3_0_CO6'} } { diff --git a/applications/SALOME-9.6.0-MPI.pyconf b/applications/SALOME-9.6.0-MPI.pyconf index 661af5f..9262173 100644 --- a/applications/SALOME-9.6.0-MPI.pyconf +++ b/applications/SALOME-9.6.0-MPI.pyconf @@ -177,6 +177,6 @@ __overwrite__ : { # __condition__ : "VARS.dist in ['UB20.04']" - 'PRODUCTS.qt.version_5_9_1.patches' : ['qt-5.9.1-UB20-FD32-socketcanbackend.patch'] + 'APPLICATION.products.qt' : {tag: '5.9.1', base: 'no', section: 'version_5_9_1_UB20_0_4'} } ] diff --git a/applications/SALOME-9.6.0.pyconf b/applications/SALOME-9.6.0.pyconf index 189e64c..7164315 100644 --- a/applications/SALOME-9.6.0.pyconf +++ b/applications/SALOME-9.6.0.pyconf @@ -176,10 +176,10 @@ __overwrite__ : # GTK compilation issue __condition__ : "VARS.dist in ['CO6']" 'APPLICATION.products.opencv' : '2.4.13.5' - 'APPLICATION.products.tbb' : '4.4' - 'APPLICATION.products.llvm' : '3.9.1-clang' - 'APPLICATION.products.mesa' : '13.0.6' - 'PRODUCTS.embree.default.patches' : ['embree-3.5.2-centos6.patch'] + 'APPLICATION.products.tbb' : '4.4' + 'APPLICATION.products.llvm' : '3.9.1-clang' + 'APPLICATION.products.mesa' : '13.0.6' + 'APPLICATION.products.embree' : {tag:'3.3.0', base: 'no', section: 'version_3_3_0_CO6'} } { @@ -195,55 +195,22 @@ __overwrite__ : 'APPLICATION.products.embree' : '3.5.2' } - { - # - __condition__ : "VARS.dist in ['UB20.04']" - 'PRODUCTS.qt.version_5_9_1.patches' : ['qt-5.9.1-UB20-FD32-socketcanbackend.patch'] - } - { __condition__ : "VARS.dist in ['FD30']" - 'PRODUCTS.ParaView.version_5_8_0.patches' : ['paraview.0010-ParaViewClient.patch', # xmlpatterns-qt5 - 'paraview.0004-ParaView_hdf5.patch', - 'paraview.0005-ParaView_find_cgns.patch', - 'paraview.0006-ParaView_find_libxml2.patch', - 'paraview.0007-ParaView_find_freetype.patch', - 'paraview.0009-ParaView_volume_mapper.patch', - 'pv_coincident.patch', - 'paraview-0012-LATA_64BITS_IDS.patch' - ] + 'APPLICATION.products.ParaView' : {tag: '5.8.0', base: 'no', section: 'version_5_8_0_FD30' } } { __condition__ : "VARS.dist in ['FD32']" 'APPLICATION.products.scipy' : '1.5.2' # gcc https://github.com/scipy/scipy/issues/11611 - either patch numpy to include -fallow-argument-mismatch or move to that version # see https://bugs.gentoo.org/708730 - 'PRODUCTS.llvm.version_8_0_1_clang.patches' : ['llvm-8.0.1-clang-FD32.patch'] - 'PRODUCTS.qt.version_5_9_1.patches' : ['qt-5.9.1-UB20-FD32-socketcanbackend.patch', 'qt-5.9.1-mapbox-FD32.patch'] - 'PRODUCTS.mesa.version_19_0_8.patches' : ['mesa-19.0.8-debug_symbol.patch'] - 'PRODUCTS.ParaView.version_5_8_0.patches' : ['paraview.0010-ParaViewClient.patch', - 'paraview.0004-ParaView_hdf5.patch', - 'paraview.0005-ParaView_find_cgns.patch', - 'paraview.0006-ParaView_find_libxml2.patch', - 'paraview.0007-ParaView_find_freetype.patch', - 'paraview.0009-ParaView_volume_mapper.patch', - 'pv_coincident.patch', - 'paraview-0012-LATA_64BITS_IDS.patch' - ] + 'APPLICATION.products.qt' : {tag: '5.9.1', base: 'no', section: 'version_5_9_1_FD32' } + 'APPLICATION.products.ParaView' : {tag: '5.8.0', base: 'no', section: 'version_5_8_0_FD32' } } { __condition__ : "VARS.dist in ['CO7'] and APPLICATION.environ.build.VTK_SMP_IMPLEMENTATION_TYPE == 'OpenMP'" - 'PRODUCTS.ParaView.version_5_8_0.patches' : ['paraview.0003-ParaViewClient.patch', - 'paraview.0004-ParaView_hdf5.patch', - 'paraview.0005-ParaView_find_cgns.patch', - 'paraview.0006-ParaView_find_libxml2.patch', - 'paraview.0007-ParaView_find_freetype.patch', - 'paraview.0009-ParaView_volume_mapper.patch', - 'paraview.0011-vtkSMPSelection.patch', - 'pv_coincident.patch', - 'paraview-0012-LATA_64BITS_IDS.patch' - ] + 'APPLICATION.products.ParaView' : {tag: '5.8.0', base: 'no', section: 'version_5_8_0_CO7_OpenMP' } } { @@ -253,14 +220,12 @@ __overwrite__ : { __condition__ : "VARS.dist in ['CO8']" - 'PRODUCTS.ParaView.version_5_8_0.patches' : ['paraview.0010-ParaViewClient.patch', - 'paraview.0004-ParaView_hdf5.patch', - 'paraview.0005-ParaView_find_cgns.patch', - 'paraview.0006-ParaView_find_libxml2.patch', - 'paraview.0007-ParaView_find_freetype.patch', - 'paraview.0009-ParaView_volume_mapper.patch', - 'pv_coincident.patch', - 'paraview-0012-LATA_64BITS_IDS.patch' - ] + 'APPLICATION.products.ParaView' : {tag: '5.8.0', base: 'no', section: 'version_5_8_0_CO8' } } + + { + __condition__ : "VARS.dist in ['UB20.04']" + 'APPLICATION.products.qt' : {tag: '5.9.1', base: 'no', section: 'version_5_9_1_UB20_0_4' } + } + ] diff --git a/products/ParaView.pyconf b/products/ParaView.pyconf index 03a9861..c696870 100755 --- a/products/ParaView.pyconf +++ b/products/ParaView.pyconf @@ -470,6 +470,72 @@ version_5_8_0_MPI_int32 : ] } +version_5_8_0_FD30 : +{ + compil_script : 'ParaView-5.8.0.sh' + archive_info : {archive_name : "ParaView-5.8.0-lata.tar.gz"} + # two other LATA patches already included in archive + patches : ['paraview.0010-ParaViewClient.patch', # xmlpatterns-qt5 + 'paraview.0004-ParaView_hdf5.patch', + 'paraview.0005-ParaView_find_cgns.patch', + 'paraview.0006-ParaView_find_libxml2.patch', + 'paraview.0007-ParaView_find_freetype.patch', + 'paraview.0009-ParaView_volume_mapper.patch', + 'pv_coincident.patch', + 'paraview-0012-LATA_64BITS_IDS.patch' + ] +} + +version_5_8_0_FD32 : +{ + compil_script : 'ParaView-5.8.0.sh' + archive_info : {archive_name : "ParaView-5.8.0-lata.tar.gz"} + # two other LATA patches already included in archive + patches : ['paraview.0010-ParaViewClient.patch', + 'paraview.0004-ParaView_hdf5.patch', + 'paraview.0005-ParaView_find_cgns.patch', + 'paraview.0006-ParaView_find_libxml2.patch', + 'paraview.0007-ParaView_find_freetype.patch', + 'paraview.0009-ParaView_volume_mapper.patch', + 'pv_coincident.patch', + 'paraview-0012-LATA_64BITS_IDS.patch' + ] +} + +version_5_8_0_CO7_OpenMP : +{ + compil_script : 'ParaView-5.8.0.sh' + archive_info : {archive_name : "ParaView-5.8.0-lata.tar.gz"} + # two other LATA patches already included in archive + patches : ['paraview.0003-ParaViewClient.patch', + 'paraview.0004-ParaView_hdf5.patch', + 'paraview.0005-ParaView_find_cgns.patch', + 'paraview.0006-ParaView_find_libxml2.patch', + 'paraview.0007-ParaView_find_freetype.patch', + 'paraview.0009-ParaView_volume_mapper.patch', + 'paraview.0011-vtkSMPSelection.patch', + 'pv_coincident.patch', + 'paraview-0012-LATA_64BITS_IDS.patch' + ] +} + +version_5_8_0_CO8 : +{ + compil_script : 'ParaView-5.8.0.sh' + archive_info : {archive_name : "ParaView-5.8.0-lata.tar.gz"} + # two other LATA patches already included in archive + patches : ['paraview.0010-ParaViewClient.patch', + 'paraview.0004-ParaView_hdf5.patch', + 'paraview.0005-ParaView_find_cgns.patch', + 'paraview.0006-ParaView_find_libxml2.patch', + 'paraview.0007-ParaView_find_freetype.patch', + 'paraview.0009-ParaView_volume_mapper.patch', + 'pv_coincident.patch', + 'paraview-0012-LATA_64BITS_IDS.patch' + ] +} + + version_5_6_0_bfaf7b8 : { compil_script : "ParaView-5.6.0_bfaf7b8.sh" diff --git a/products/compil_scripts/qt-5.9.1.sh b/products/compil_scripts/qt-5.9.1.sh new file mode 100755 index 0000000..d537229 --- /dev/null +++ b/products/compil_scripts/qt-5.9.1.sh @@ -0,0 +1,71 @@ +#!/bin/bash + +echo "##########################################################################" +echo "Qt" $VERSION +echo "##########################################################################" + +cd $SOURCE_DIR +if [ $? -ne 0 ] +then + echo "ERROR on $SOURCE_DIR access" + exit 1 +fi +QT_CONFIGURE_OPTIONS= +QT_CONFIGURE_OPTIONS+=" -opensource -nomake tests -nomake examples -no-rpath" +QT_CONFIGURE_OPTIONS+=" -verbose -no-separate-debug-info -confirm-license -qt-libpng -qt-xcb -no-eglfs -dbus-runtime -skip qtwebengine" +QT_CONFIGURE_OPTIONS+=" -skip wayland -skip qtgamepad -system-freetype -qt-harfbuzz" +QT_CONFIGURE_OPTIONS+=" -no-openssl -no-glib" + +if [[ $DIST_NAME == "FD" && $DIST_VERSION == "32" ]]; then + export QMAKE_CXXFLAGS="-std=c++11" +fi + +if [ -n "$SAT_DEBUG" ] +then + BUILD_TYPE="-debug" +else + BUILD_TYPE="-release" +fi + +# For -qt-harfbuzz option, see spns #9694 +echo +echo "*** ./configure -prefix $PRODUCT_INSTALL $BUILD_TYPE ${QT_CONFIGURE_OPTIONS}" + +./configure -prefix $PRODUCT_INSTALL $BUILD_TYPE ${QT_CONFIGURE_OPTIONS} +if [ $? -ne 0 ] +then + echo "ERROR on configure" + exit 2 +fi + +echo +echo "*** make" $MAKE_OPTIONS +make $MAKE_OPTIONS +if [ $? -ne 0 ] +then + echo "ERROR on make" + exit 3 +fi + +echo +echo "*** make install" +make install +if [ $? -ne 0 ] +then + echo "ERROR on make install" + exit 4 +fi + +# make clean pour nettoyer les sources +echo +echo "*** make clean" +make clean +if [ $? -ne 0 ] +then + echo "ERROR on make clean" + exit 5 +fi + +echo +echo "########## END" + diff --git a/products/embree.pyconf b/products/embree.pyconf index 6b8510f..f583888 100644 --- a/products/embree.pyconf +++ b/products/embree.pyconf @@ -28,3 +28,28 @@ default_win : single_install_dir: "yes" } } + +version_3_3_0_CO6 : +{ + patches : ['embree-3.5.2-centos6.patch'] +} + +version_3_5_2_CO6 : +{ + patches : ['embree-3.5.2-centos6.patch'] +} + +version_3_3_0_DB10 : +{ + depend: ['ispc'] +} + +version_3_3_0_UB18_0_4 : +{ + depend: ['ispc'] +} + +version_3_3_0_UB16_0_4 : +{ + depend: ['ispc'] +} diff --git a/products/gl2ps.pyconf b/products/gl2ps.pyconf index 85754ed..6d1c0b1 100755 --- a/products/gl2ps.pyconf +++ b/products/gl2ps.pyconf @@ -80,6 +80,17 @@ version_1_4_0_4037312 : patches : ["gl2ps-1.4.0-GLUT.patch"] } +version_1_4_0_4037312_DB10 : +{ + build_source : "script" + compil_script: "gl2ps-1.4.0.sh" + archive_info: + { + archive_name : "gl2ps-1.4.0_4037312.tar.gz" + } + patches : ["gl2ps-1.4.0-GLUT.patch"] +} + version_1_4_0_4037312_win : { build_source : "script" diff --git a/products/ispc.pyconf b/products/ispc.pyconf index 6a9498a..6fdbbb1 100644 --- a/products/ispc.pyconf +++ b/products/ispc.pyconf @@ -65,3 +65,12 @@ version_1_9_2_src : patches : ['ispc-makefile_WERROR.patch'] depend : ['llvm'] } + +version_1_9_2_CO6 : +{ + build_source : "script" + compil_script : "ispc-1.9.2.sh" + archive_info : {archive_name : "ispc-1.9.2.tar.gz"} + patches : ['ispc-1.9.2-centos6.patch'] + depend : ['llvm'] +} diff --git a/products/patches/qt_mysql_UB20.patch b/products/patches/qt_mysql_UB20.patch new file mode 100644 index 0000000..3ead767 --- /dev/null +++ b/products/patches/qt_mysql_UB20.patch @@ -0,0 +1,47 @@ +--- qt/qtbase/src/plugins/sqldrivers/mysql/qsql_mysql.cpp 2017-06-28 11:54:29.000000000 +0200 ++++ qt_new/qtbase/src/plugins/sqldrivers/mysql/qsql_mysql.cpp 2022-03-31 16:11:26.861381738 +0200 +@@ -232,7 +232,7 @@ + myField(0), type(QVariant::Invalid) + {} + char *outField; +- my_bool nullIndicator; ++ bool nullIndicator; + ulong bufLength; + MYSQL_FIELD *myField; + QVariant::Type type; +@@ -983,7 +983,7 @@ + MYSQL_BIND* currBind; + QVector timeVector; + QVector stringVector; +- QVector nullVector; ++ QVector nullVector; + + const QVector values = boundValues(); + +@@ -1004,7 +1004,7 @@ + + currBind = &d->outBinds[i]; + +- nullVector[i] = static_cast(val.isNull()); ++ nullVector[i] = static_cast(val.isNull()); + currBind->is_null = &nullVector[i]; + currBind->length = 0; + currBind->is_unsigned = 0; +@@ -1101,7 +1101,7 @@ + d->rowsAffected = mysql_stmt_affected_rows(d->stmt); + + if (isSelect()) { +- my_bool update_max_length = true; ++ bool update_max_length = true; + + r = mysql_stmt_bind_result(d->stmt, d->inBinds); + if (r != 0) { +@@ -1306,7 +1306,7 @@ + QString sslCAPath; + QString sslCipher; + #if MYSQL_VERSION_ID >= 50000 +- my_bool reconnect=false; ++ bool reconnect=false; + uint connectTimeout = 0; + uint readTimeout = 0; + uint writeTimeout = 0; diff --git a/products/qt.pyconf b/products/qt.pyconf index f472e68..7b44107 100644 --- a/products/qt.pyconf +++ b/products/qt.pyconf @@ -53,9 +53,26 @@ version_5_12_10_win : version_5_9_1 : { + compil_script : "qt-5.9.1.sh" patches : [] } +version_5_9_1_FD32 : +{ + compil_script : "qt-5.9.1.sh" + patches : ['qt-5.9.1-UB20-FD32-socketcanbackend.patch', + 'qt-5.9.1-mapbox-FD32.patch' + ] +} + +version_5_9_1_UB20_0_4 : +{ + compil_script : "qt-5.9.1.sh" + patches : ['qt-5.9.1-UB20-FD32-socketcanbackend.patch', + 'qt_mysql_UB20.patch' + ] +} + version_5_6_1_1: { compil_script : "qt-5.6.1" + $VARS.scriptExtension @@ -66,7 +83,7 @@ version_5_5_1: { compil_script : "qt-5.5.1.sh" patches : [ - "qt-5.5.1-qlockfile.patch" + "qt-5.5.1-qlockfile.patch", "qt_5.5.1-qwebengine.patch" ] depend : [] -- 2.39.2