From df2556860f09e8f7fbf27f522c79355a33fbcd0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A5=D0=B8=D1=80=D0=B5=D1=86=D0=BA=D0=B8=D0=B9=20=D0=9C?= =?UTF-8?q?=D0=B8=D1=85=D0=B0=D0=B8=D0=BB?= Date: Tue, 4 Oct 2016 14:47:35 +0300 Subject: [PATCH] Fix automagic depends --- media-libs/opencv/Manifest | 2 + .../opencv/files/opencv-3.0.0-gles.patch | 14 + .../files/opencv-3.1.0-cmake-no-opengl.patch | 22 + .../files/opencv-3.1.0-fix-hal-headers.patch | 91 ++++ .../opencv-3.1.0-fix-ocl-declaration.patch | 214 ++++++++++ .../files/opencv-3.1.0-gentooify-python.patch | 101 +++++ .../files/opencv-3.1.0-git-autodetect.patch | 42 ++ .../opencv-3.1.0-invalid-string-usage.patch | 75 ++++ .../files/opencv-3.1.0-java-magic.patch | 47 +++ .../files/opencv-contrib-find-hdf5-fix.patch | 392 ++++++++++++++++++ media-libs/opencv/opencv-3.1.0-r6.ebuild | 301 ++++++++++++++ .../net-libs/.calculate_directory | 1 + .../net-libs/libproxy/.calculate_directory | 1 + .../libproxy/libproxy-disable-webkit.patch | 20 + .../net-misc/.calculate_directory | 1 + .../net-misc/openconnect/.calculate_directory | 1 + .../openconnect/openconnect-disable-lz4.patch | 116 ++++++ .../revision/91-rebuild_openconnect_libproxy | 21 + .../net-libs/.calculate_directory | 1 + .../net-libs/libproxy/.calculate_directory | 1 + .../libproxy/libproxy-disable-webkit.patch | 20 + .../net-misc/.calculate_directory | 1 + .../net-misc/openconnect/.calculate_directory | 1 + .../openconnect/openconnect-disable-lz4.patch | 116 ++++++ .../revision/91-rebuild_openconnect_libproxy | 21 + 25 files changed, 1623 insertions(+) create mode 100644 media-libs/opencv/Manifest create mode 100644 media-libs/opencv/files/opencv-3.0.0-gles.patch create mode 100644 media-libs/opencv/files/opencv-3.1.0-cmake-no-opengl.patch create mode 100644 media-libs/opencv/files/opencv-3.1.0-fix-hal-headers.patch create mode 100644 media-libs/opencv/files/opencv-3.1.0-fix-ocl-declaration.patch create mode 100644 media-libs/opencv/files/opencv-3.1.0-gentooify-python.patch create mode 100644 media-libs/opencv/files/opencv-3.1.0-git-autodetect.patch create mode 100644 media-libs/opencv/files/opencv-3.1.0-invalid-string-usage.patch create mode 100644 media-libs/opencv/files/opencv-3.1.0-java-magic.patch create mode 100644 media-libs/opencv/files/opencv-contrib-find-hdf5-fix.patch create mode 100644 media-libs/opencv/opencv-3.1.0-r6.ebuild create mode 100644 profiles/templates/3.4/6_ac_install_patch/net-libs/.calculate_directory create mode 100644 profiles/templates/3.4/6_ac_install_patch/net-libs/libproxy/.calculate_directory create mode 100644 profiles/templates/3.4/6_ac_install_patch/net-libs/libproxy/libproxy-disable-webkit.patch create mode 100644 profiles/templates/3.4/6_ac_install_patch/net-misc/.calculate_directory create mode 100644 profiles/templates/3.4/6_ac_install_patch/net-misc/openconnect/.calculate_directory create mode 100644 profiles/templates/3.4/6_ac_install_patch/net-misc/openconnect/openconnect-disable-lz4.patch create mode 100644 profiles/templates/3.4/6_ac_update_sync/revision/91-rebuild_openconnect_libproxy create mode 100644 profiles/templates/3.5/6_ac_install_patch/net-libs/.calculate_directory create mode 100644 profiles/templates/3.5/6_ac_install_patch/net-libs/libproxy/.calculate_directory create mode 100644 profiles/templates/3.5/6_ac_install_patch/net-libs/libproxy/libproxy-disable-webkit.patch create mode 100644 profiles/templates/3.5/6_ac_install_patch/net-misc/.calculate_directory create mode 100644 profiles/templates/3.5/6_ac_install_patch/net-misc/openconnect/.calculate_directory create mode 100644 profiles/templates/3.5/6_ac_install_patch/net-misc/openconnect/openconnect-disable-lz4.patch create mode 100644 profiles/templates/3.5/6_ac_update_sync/revision/91-rebuild_openconnect_libproxy diff --git a/media-libs/opencv/Manifest b/media-libs/opencv/Manifest new file mode 100644 index 000000000..3316e5a2b --- /dev/null +++ b/media-libs/opencv/Manifest @@ -0,0 +1,2 @@ +DIST opencv-3.1.0.zip 79186131 SHA256 1f6990249fdb82804fff40e96fa6d99949023ab0e3277eae4bd459b374e622a4 SHA512 b4915e8838fce8ba9e1af8b11e46678624435e9a41592e645413dfdc830993eaa017d337fe4c212a49f096421a6317a1892546087fbc3cfdab554522336c0f1a WHIRLPOOL 3c38715e2abc431781b724199c2cf06f844c7a889c51a06ecb64889a8ca36d9fd370a0738deec2995e24e453cb64f5db228238681714f62daf6eac50d95a4914 +DIST opencv-3.1.0_contrib.zip 55182211 SHA256 5082b5df7179ff71f4681747c482169f0d5d5b77605816cfe5b93c588021fbb4 SHA512 f0ceb8d9ed85efe948a40071793d164a82391a462c52ca71a6029e8b119afdab8b1453baaed2cd7d540001559849a62ec4b745d41345db225acff0531c76e762 WHIRLPOOL 589294c849a00426f4c52d07ab652e71e8bbc74efd0878fbaea2e089051fd118217b1a04f33258fcef2abe1729147282eb17a98c5463691aa3fd56af264ea6a0 diff --git a/media-libs/opencv/files/opencv-3.0.0-gles.patch b/media-libs/opencv/files/opencv-3.0.0-gles.patch new file mode 100644 index 000000000..a2629d928 --- /dev/null +++ b/media-libs/opencv/files/opencv-3.0.0-gles.patch @@ -0,0 +1,14 @@ +Index: opencv-2.4.11/modules/highgui/src/window_QT.cpp +=================================================================== +--- opencv-2.4.11.orig/modules/highgui/src/window_QT.cpp ++++ opencv-2.4.11/modules/highgui/src/window_QT.cpp +@@ -3118,7 +3118,9 @@ void OpenGlViewPort::updateGl() + + void OpenGlViewPort::initializeGL() + { ++#ifdef GL_PERSPECTIVE_CORRECTION_HINT + glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST); ++#endif + } + + void OpenGlViewPort::resizeGL(int w, int h) diff --git a/media-libs/opencv/files/opencv-3.1.0-cmake-no-opengl.patch b/media-libs/opencv/files/opencv-3.1.0-cmake-no-opengl.patch new file mode 100644 index 000000000..d6d70d717 --- /dev/null +++ b/media-libs/opencv/files/opencv-3.1.0-cmake-no-opengl.patch @@ -0,0 +1,22 @@ +From cdb9c60dcb65e04e7c0bd6bef9b86841191c785a Mon Sep 17 00:00:00 2001 +From: Alexander Alekhin +Date: Thu, 31 Dec 2015 02:24:54 +0300 +Subject: [PATCH] gpu samples: fix REMOVE_ITEM error + +--- + samples/gpu/CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/samples/gpu/CMakeLists.txt b/samples/gpu/CMakeLists.txt +index 6085cac..852a8c2 100644 +--- a/samples/gpu/CMakeLists.txt ++++ b/samples/gpu/CMakeLists.txt +@@ -97,7 +97,7 @@ endif() + if(INSTALL_C_EXAMPLES AND NOT WIN32) + file(GLOB install_list *.c *.cpp *.jpg *.png *.data makefile.* build_all.sh *.dsp *.cmd ) + if(NOT WITH_OPENGL) +- list(REMOVE_ITEM all_samples "opengl.cpp") ++ list(REMOVE_ITEM install_list "opengl.cpp") + endif(NOT WITH_OPENGL) + install(FILES ${install_list} + DESTINATION ${OPENCV_SAMPLES_SRC_INSTALL_PATH}/gpu diff --git a/media-libs/opencv/files/opencv-3.1.0-fix-hal-headers.patch b/media-libs/opencv/files/opencv-3.1.0-fix-hal-headers.patch new file mode 100644 index 000000000..dd77571a6 --- /dev/null +++ b/media-libs/opencv/files/opencv-3.1.0-fix-hal-headers.patch @@ -0,0 +1,91 @@ +From f529a1df2b17bcada1179ddcaf1352e3a5ba97b8 Mon Sep 17 00:00:00 2001 +From: Maksim Shabunin +Date: Tue, 15 Dec 2015 17:51:08 +0300 +Subject: [PATCH] Fixed HAL headers location + +diff --git opencv_contrib-master/modules/xfeatures2d/src/sift.cpp opencv_contrib-master/modules/xfeatures2d/src/sift.cpp +index fc67c4d..9634fbb 100644 +--- opencv_contrib-master/modules/xfeatures2d/src/sift.cpp ++++ opencv_contrib-master/modules/xfeatures2d/src/sift.cpp +@@ -105,6 +105,7 @@ + #include "precomp.hpp" + #include + #include ++#include + + namespace cv + { +@@ -337,9 +338,9 @@ static float calcOrientationHist( const Mat& img, Point pt, int radius, + len = k; + + // compute gradient values, orientations and the weights over the pixel neighborhood +- hal::exp(W, W, len); +- hal::fastAtan2(Y, X, Ori, len, true); +- hal::magnitude(X, Y, Mag, len); ++ cv::hal::exp32f(W, W, len); ++ cv::hal::fastAtan2(Y, X, Ori, len, true); ++ cv::hal::magnitude32f(X, Y, Mag, len); + + for( k = 0; k < len; k++ ) + { +@@ -620,9 +621,9 @@ static void calcSIFTDescriptor( const Mat& img, Point2f ptf, float ori, float sc + } + + len = k; +- hal::fastAtan2(Y, X, Ori, len, true); +- hal::magnitude(X, Y, Mag, len); +- hal::exp(W, W, len); ++ cv::hal::fastAtan2(Y, X, Ori, len, true); ++ cv::hal::magnitude32f(X, Y, Mag, len); ++ cv::hal::exp32f(W, W, len); + + for( k = 0; k < len; k++ ) + { + +diff --git opencv_contrib-master/modules/optflow/src/motempl.cpp opencv_contrib-master/modules/optflow/src/motempl.cpp +index ec18013..452ad63 100644 +--- opencv_contrib-master/modules/optflow/src/motempl.cpp ++++ opencv_contrib-master/modules/optflow/src/motempl.cpp +@@ -41,6 +41,7 @@ + + #include "precomp.hpp" + #include "opencv2/core/utility.hpp" ++#include "opencv2/core/hal/hal.hpp" + #include "opencl_kernels_optflow.hpp" + + namespace cv { +@@ -212,7 +213,7 @@ void calcMotionGradient( InputArray _mhi, OutputArray _mask, + float* orient_row = orient.ptr(y); + uchar* mask_row = mask.ptr(y); + +- hal::fastAtan2(dY_max_row, dX_min_row, orient_row, size.width, true); ++ cv::hal::fastAtan2(dY_max_row, dX_min_row, orient_row, size.width, true); + + // make orientation zero where the gradient is very small + for( x = 0; x < size.width; x++ ) +diff --git opencv_contrib-master/modules/ximgproc/src/fgs_filter.cpp opencv_contrib-master/modules/ximgproc/src/fgs_filter.cpp +index e89eb8f..39307e5 100644 +--- opencv_contrib-master/modules/ximgproc/src/fgs_filter.cpp ++++ opencv_contrib-master/modules/ximgproc/src/fgs_filter.cpp +@@ -35,7 +35,7 @@ + */ + + #include "precomp.hpp" +-#include "opencv2/hal/intrin.hpp" ++#include "opencv2/core/hal/intrin.hpp" + #include + + namespace cv { +diff --git opencv_contrib-master/modules/xphoto/src/grayworld_white_balance.cpp opencv_contrib-master/modules/xphoto/src/grayworld_white_balance.cpp +index 4780497..15530d3 100644 +--- opencv_contrib-master/modules/xphoto/src/grayworld_white_balance.cpp ++++ opencv_contrib-master/modules/xphoto/src/grayworld_white_balance.cpp +@@ -40,7 +40,7 @@ + #include "opencv2/xphoto.hpp" + + #include "opencv2/core.hpp" +-#include "opencv2/hal/intrin.hpp" ++#include "opencv2/core/hal/intrin.hpp" + + namespace cv { namespace xphoto { + diff --git a/media-libs/opencv/files/opencv-3.1.0-fix-ocl-declaration.patch b/media-libs/opencv/files/opencv-3.1.0-fix-ocl-declaration.patch new file mode 100644 index 000000000..e9a190c66 --- /dev/null +++ b/media-libs/opencv/files/opencv-3.1.0-fix-ocl-declaration.patch @@ -0,0 +1,214 @@ +From ac8dd366e4a1877e0af16961a4094496bed955f7 Mon Sep 17 00:00:00 2001 +From: Alexander Alekhin +Date: Sun, 13 Sep 2015 21:18:47 +0300 +Subject: [PATCH] ocl: fix "off" mode + +diff --git opencv_contrib-master/modules/tracking/src/tldDetector.cpp opencv_contrib-master/modules/tracking/src/tldDetector.cpp +index cbb783e..d61444b 100644 +--- opencv_contrib-master/modules/tracking/src/tldDetector.cpp ++++ opencv_contrib-master/modules/tracking/src/tldDetector.cpp +@@ -104,6 +104,7 @@ namespace cv + return splus / (sminus + splus); + } + ++#ifdef HAVE_OPENCL + double TLDDetector::ocl_Sr(const Mat_& patch) + { + //int64 e1, e2, e3, e4; +@@ -283,6 +284,7 @@ namespace cv + //t = (e2 - e1) / getTickFrequency()*1000.0; + //printf("Sr GPU: %f\n\n", t); + } ++#endif + + // Calculate Conservative similarity of the patch (NN-Model) + double TLDDetector::Sc(const Mat_& patch) +@@ -337,6 +339,7 @@ namespace cv + return splus / (sminus + splus); + } + ++#ifdef HAVE_OPENCL + double TLDDetector::ocl_Sc(const Mat_& patch) + { + //int64 e1, e2, e3, e4; +@@ -415,6 +418,7 @@ namespace cv + return 0.0; + return splus / (sminus + splus); + } ++#endif // HAVE_OPENCL + + // Generate Search Windows for detector from aspect ratio of initial BBs + void TLDDetector::generateScanGrid(int rows, int cols, Size initBox, std::vector& res, bool withScaling) +@@ -565,6 +569,7 @@ namespace cv + return true; + } + ++#ifdef HAVE_OPENCL + bool TLDDetector::ocl_detect(const Mat& img, const Mat& imgBlurred, Rect2d& res, std::vector& patches, Size initSize) + { + patches.clear(); +@@ -696,6 +701,7 @@ namespace cv + res = maxScRect; + return true; + } ++#endif // HAVE_OPENCL + + // Computes the variance of subimage given by box, with the help of two integral + // images intImgP and intImgP2 (sum of squares), which should be also provided. +diff --git opencv_contrib-master/modules/tracking/src/tldDetector.hpp opencv_contrib-master/modules/tracking/src/tldDetector.hpp +index 3e11895..1caff57 100644 +--- opencv_contrib-master/modules/tracking/src/tldDetector.hpp ++++ opencv_contrib-master/modules/tracking/src/tldDetector.hpp +@@ -74,10 +74,12 @@ namespace cv + inline double ensembleClassifierNum(const uchar* data); + inline void prepareClassifiers(int rowstep); + double Sr(const Mat_& patch); +- double ocl_Sr(const Mat_& patch); + double Sc(const Mat_& patch); ++#ifdef HAVE_OPENCL ++ double ocl_Sr(const Mat_& patch); + double ocl_Sc(const Mat_& patch); + void ocl_batchSrSc(const Mat_& patches, double *resultSr, double *resultSc, int numOfPatches); ++#endif + + std::vector classifiers; + Mat *posExp, *negExp; +diff --git opencv_contrib-master/modules/tracking/src/tldModel.cpp opencv_contrib-master/modules/tracking/src/tldModel.cpp +index 0854022..47fc32a 100644 +--- opencv_contrib-master/modules/tracking/src/tldModel.cpp ++++ opencv_contrib-master/modules/tracking/src/tldModel.cpp +@@ -246,6 +246,7 @@ namespace cv + dfprintf((stdout, "\n"));*/ + } + ++#ifdef HAVE_OPENCL + void TrackerTLDModel::ocl_integrateAdditional(const std::vector >& eForModel, const std::vector >& eForEnsemble, bool isPositive) + { + int positiveIntoModel = 0, negativeIntoModel = 0, positiveIntoEnsemble = 0, negativeIntoEnsemble = 0; +@@ -315,6 +316,7 @@ namespace cv + dfprintf((stdout, "positiveIntoEnsemble = %d ", positiveIntoEnsemble)); + dfprintf((stdout, "\n"));*/ + } ++#endif // HAVE_OPENCL + + //Push the patch to the model + void TrackerTLDModel::pushIntoModel(const Mat_& example, bool positive) +diff --git opencv_contrib-master/modules/tracking/src/tldModel.hpp opencv_contrib-master/modules/tracking/src/tldModel.hpp +index be9141a..ba7c926 100644 +--- opencv_contrib-master/modules/tracking/src/tldModel.hpp ++++ opencv_contrib-master/modules/tracking/src/tldModel.hpp +@@ -58,7 +58,9 @@ namespace cv + void setBoudingBox(Rect2d boundingBox){ boundingBox_ = boundingBox; } + void integrateRelabeled(Mat& img, Mat& imgBlurred, const std::vector& patches); + void integrateAdditional(const std::vector >& eForModel, const std::vector >& eForEnsemble, bool isPositive); ++#ifdef HAVE_OPENCL + void ocl_integrateAdditional(const std::vector >& eForModel, const std::vector >& eForEnsemble, bool isPositive); ++#endif + Size getMinSize(){ return minSize_; } + void printme(FILE* port = stdout); + Ptr detector; +diff --git opencv_contrib-master/modules/tracking/src/tldTracker.cpp opencv_contrib-master/modules/tracking/src/tldTracker.cpp +index 0f1e2f7..a5190f5 100644 +--- opencv_contrib-master/modules/tracking/src/tldTracker.cpp ++++ opencv_contrib-master/modules/tracking/src/tldTracker.cpp +@@ -123,9 +123,11 @@ bool TrackerTLDImpl::updateImpl(const Mat& image, Rect2d& boundingBox) + + if (i == 1) + { ++#ifdef HAVE_OPENCL + if (ocl::haveOpenCL()) + DETECT_FLG = tldModel->detector->ocl_detect(imageForDetector, image_blurred, tmpCandid, detectorResults, tldModel->getMinSize()); + else ++#endif + DETECT_FLG = tldModel->detector->detect(imageForDetector, image_blurred, tmpCandid, detectorResults, tldModel->getMinSize()); + } + +@@ -211,17 +213,21 @@ bool TrackerTLDImpl::updateImpl(const Mat& image, Rect2d& boundingBox) + tldModel->integrateRelabeled(imageForDetector, image_blurred, detectorResults); + //dprintf(("%d relabeled by nExpert\n", negRelabeled)); + pExpert.additionalExamples(examplesForModel, examplesForEnsemble); +- if (ocl::haveOpenCL()) +- tldModel->ocl_integrateAdditional(examplesForModel, examplesForEnsemble, true); +- else +- tldModel->integrateAdditional(examplesForModel, examplesForEnsemble, true); ++#ifdef HAVE_OPENCL ++ if (ocl::haveOpenCL()) ++ tldModel->ocl_integrateAdditional(examplesForModel, examplesForEnsemble, true); ++ else ++#endif ++ tldModel->integrateAdditional(examplesForModel, examplesForEnsemble, true); + examplesForModel.clear(); examplesForEnsemble.clear(); + nExpert.additionalExamples(examplesForModel, examplesForEnsemble); + +- if (ocl::haveOpenCL()) +- tldModel->ocl_integrateAdditional(examplesForModel, examplesForEnsemble, false); +- else +- tldModel->integrateAdditional(examplesForModel, examplesForEnsemble, false); ++#ifdef HAVE_OPENCL ++ if (ocl::haveOpenCL()) ++ tldModel->ocl_integrateAdditional(examplesForModel, examplesForEnsemble, false); ++ else ++#endif ++ tldModel->integrateAdditional(examplesForModel, examplesForEnsemble, false); + } + else + { +diff --git opencv_contrib-master/modules/xfeatures2d/src/surf.cpp opencv_contrib-master/modules/xfeatures2d/src/surf.cpp +index 673817e..af5ceaf6 100644 +--- opencv_contrib-master/modules/xfeatures2d/src/surf.cpp ++++ opencv_contrib-master/modules/xfeatures2d/src/surf.cpp +@@ -892,6 +892,7 @@ void SURF_Impl::detectAndCompute(InputArray _img, InputArray _mask, + CV_Assert(!_img.empty() && CV_MAT_DEPTH(imgtype) == CV_8U && (imgcn == 1 || imgcn == 3 || imgcn == 4)); + CV_Assert(_descriptors.needed() || !useProvidedKeypoints); + ++#ifdef HAVE_OPENCL + if( ocl::useOpenCL() ) + { + SURF_OCL ocl_surf; +@@ -918,6 +919,7 @@ void SURF_Impl::detectAndCompute(InputArray _img, InputArray _mask, + return; + } + } ++#endif // HAVE_OPENCL + + Mat img = _img.getMat(), mask = _mask.getMat(), mask1, sum, msum; + +diff --git opencv_contrib-master/modules/xfeatures2d/src/surf.hpp opencv_contrib-master/modules/xfeatures2d/src/surf.hpp +index 2c4e271..cf3fda1 100644 +--- opencv_contrib-master/modules/xfeatures2d/src/surf.hpp ++++ opencv_contrib-master/modules/xfeatures2d/src/surf.hpp +@@ -64,6 +64,7 @@ class SURF_Impl : public SURF + bool upright; + }; + ++#ifdef HAVE_OPENCL + class SURF_OCL + { + public: +@@ -145,6 +146,7 @@ class SURF_OCL + + int status; + }; ++#endif // HAVE_OPENCL + + /* + template void copyVectorToUMat(const std::vector<_Tp>& v, UMat& um) +diff --git opencv_contrib-master/modules/xfeatures2d/src/surf.ocl.cpp opencv_contrib-master/modules/xfeatures2d/src/surf.ocl.cpp +index b12ebd3..3d9845d 100644 +--- opencv_contrib-master/modules/xfeatures2d/src/surf.ocl.cpp ++++ opencv_contrib-master/modules/xfeatures2d/src/surf.ocl.cpp +@@ -43,6 +43,9 @@ + // + //M*/ + #include "precomp.hpp" ++ ++#ifdef HAVE_OPENCL ++ + #include "surf.hpp" + + #include +@@ -461,3 +464,4 @@ bool SURF_OCL::calcOrientation(UMat &keypoints) + } + } + ++#endif // HAVE_OPENCL diff --git a/media-libs/opencv/files/opencv-3.1.0-gentooify-python.patch b/media-libs/opencv/files/opencv-3.1.0-gentooify-python.patch new file mode 100644 index 000000000..7bb01b455 --- /dev/null +++ b/media-libs/opencv/files/opencv-3.1.0-gentooify-python.patch @@ -0,0 +1,101 @@ +diff -purN a/cmake/OpenCVDetectGentooPython.cmake b/cmake/OpenCVDetectGentooPython.cmake +--- a/cmake/OpenCVDetectGentooPython.cmake 1970-01-01 01:00:00.000000000 +0100 ++++ b/cmake/OpenCVDetectGentooPython.cmake 2016-06-09 10:21:09.236148446 +0100 +@@ -0,0 +1,77 @@ ++# Find specified Python version ++# Arguments: ++# found (variable): Set if interpreter found ++# executable (variable): Output of executable found ++# version_string (variable): Output of found version ++# version_major (variable): Output of found major version ++# version_minor (variable): Output of found minor version ++# libs_found (variable): Set if libs found ++# libs_version_string (variable): Output of found libs version ++# libraries (variable): Output of found Python libraries ++# library (variable): Output of found Python library ++# debug_libraries (variable): Output of found Python debug libraries ++# debug_library (variable): Output of found Python debug library ++# include_path (variable): Output of found Python include path ++# include_dir (variable): Output of found Python include dir ++# include_dir2 (variable): Output of found Python include dir2 ++# packages_path (variable): Output of found Python packages path ++# numpy_include_dirs (variable): Output of found Python Numpy include dirs ++function(find_python found executable version_string version_major version_minor ++ libs_found libs_version_string libraries library debug_libraries ++ debug_library include_path include_dir include_dir2 packages_path ++ numpy_include_dirs) ++ ++ set(${found} "TRUE" PARENT_SCOPE) ++ set(${executable} "${GENTOO_PYTHON_EXECUTABLE}" CACHE FILEPATH "Path to Python interpretor") ++ set(${version_string} "${GENTOO_PYTHON_MAJOR}.${GENTOO_PYTHON_MINOR}" PARENT_SCOPE) ++ set(${version_major} "${GENTOO_PYTHON_MAJOR}" PARENT_SCOPE) ++ set(${version_minor} "${GENTOO_PYTHON_MINOR}" PARENT_SCOPE) ++ set(${libs_found} "TRUE" PARENT_SCOPE) ++ set(${libs_version_string} "${version_string}" PARENT_SCOPE) ++ set(${libraries} "${GENTOO_PYTHON_LIBRARIES}" PARENT_SCOPE) ++ set(${library} "${GENTOO_PYTHON_LIBRARIES}" CACHE FILEPATH "Path to Python library") ++ set(${debug_libraries} "${GENTOO_PYTHON_DEBUG_LIBRARIES}" PARENT_SCOPE) ++ set(${debug_library} "${GENTOO_PYTHON_DEBUG_LIBRARIES}" CACHE FILEPATH "Path to Python debug") ++ set(${include_path} "${GENTOO_PYTHON_INCLUDE_PATH}" PARENT_SCOPE) ++ set(${include_dir} "${GENTOO_PYTHON_INCLUDE_PATH}" CACHE PATH "Python include dir") ++ set(${include_dir2} "${GENTOO_PYTHON_INCLUDE_PATH}" CACHE PATH "Python include dir 2") ++ set(${packages_path} "${GENTOO_PYTHON_PACKAGES_PATH}" CACHE PATH "Where to install the python packages.") ++ set(${numpy_include_dirs} "${GENTOO_PYTHON_PACKAGES_PATH}/numpy/core/include/" CACHE PATH "Path to numpy headers") ++endfunction(find_python) ++ ++# In order to use existing CMake files, this needs to be here to switch between ++# Python 2 and 3. It's messy and could be in the ebuild to declare this, ++# but then the ebuild would be a mile long and unreadable. This makes then ++# messy stuff hidden out of the way. ++set(PYTHON2INTERP_FOUND "FALSE") ++set(PYTHON3INTERP_FOUND "FALSE") ++ ++if(WITH_PYTHON) ++ if(GENTOO_PYTHON_MAJOR EQUAL 2) ++ find_python(PYTHON2INTERP_FOUND PYTHON2_EXECUTABLE PYTHON2_VERSION_STRING ++ PYTHON2_VERSION_MAJOR PYTHON2_VERSION_MINOR PYTHON2LIBS_FOUND ++ PYTHON2LIBS_VERSION_STRING PYTHON2_LIBRARIES PYTHON2_LIBRARY ++ PYTHON2_DEBUG_LIBRARIES PYTHON2_LIBRARY_DEBUG PYTHON2_INCLUDE_PATH ++ PYTHON2_INCLUDE_DIR PYTHON2_INCLUDE_DIR2 PYTHON2_PACKAGES_PATH ++ PYTHON2_NUMPY_INCLUDE_DIRS) ++ endif() ++ ++ if(GENTOO_PYTHON_MAJOR EQUAL 3) ++ find_python(PYTHON3INTERP_FOUND PYTHON3_EXECUTABLE PYTHON3_VERSION_STRING ++ PYTHON3_VERSION_MAJOR PYTHON3_VERSION_MINOR PYTHON3LIBS_FOUND ++ PYTHON3LIBS_VERSION_STRING PYTHON3_LIBRARIES PYTHON3_LIBRARY ++ PYTHON3_DEBUG_LIBRARIES PYTHON3_LIBRARY_DEBUG PYTHON3_INCLUDE_PATH ++ PYTHON3_INCLUDE_DIR PYTHON3_INCLUDE_DIR2 PYTHON3_PACKAGES_PATH ++ PYTHON3_NUMPY_INCLUDE_DIRS) ++ endif() ++endif() ++ ++if(PYTHON2INTERP_FOUND) # Use Python 2 as default Python interpreter ++ set(PYTHON_DEFAULT_AVAILABLE "TRUE") ++ set(PYTHON_DEFAULT_EXECUTABLE "${PYTHON2_EXECUTABLE}") ++elseif(PYTHON3INTERP_FOUND) # Use Python 2 as fallback Python interpreter (if there is no Python 2) ++ set(PYTHON_DEFAULT_AVAILABLE "TRUE") ++ set(PYTHON_DEFAULT_EXECUTABLE "${PYTHON3_EXECUTABLE}") ++else() ++ set(PYTHON_DEFAULT_AVAILABLE "FALSE") ++endif() +diff -purN a/CMakeLists.txt b/CMakeLists.txt +--- a/CMakeLists.txt 2015-12-18 15:02:16.000000000 +0000 ++++ b/CMakeLists.txt 2016-06-08 18:57:53.489793304 +0100 +@@ -215,6 +215,7 @@ OCV_OPTION(WITH_VA "Include + OCV_OPTION(WITH_VA_INTEL "Include Intel VA-API/OpenCL support" OFF IF (UNIX AND NOT ANDROID) ) + OCV_OPTION(WITH_GDAL "Include GDAL Support" OFF IF (NOT ANDROID AND NOT IOS AND NOT WINRT) ) + OCV_OPTION(WITH_GPHOTO2 "Include gPhoto2 library support" ON IF (UNIX AND NOT ANDROID) ) ++OCV_OPTION(WITH_PYTHON "Include python bindings" OFF) + + # OpenCV build components + # =================================================== +@@ -559,7 +560,7 @@ if(BUILD_DOCS) + endif(BUILD_DOCS) + + # --- Python Support --- +-include(cmake/OpenCVDetectPython.cmake) ++include(cmake/OpenCVDetectGentooPython.cmake) + + # --- Java Support --- + include(cmake/OpenCVDetectApacheAnt.cmake) diff --git a/media-libs/opencv/files/opencv-3.1.0-git-autodetect.patch b/media-libs/opencv/files/opencv-3.1.0-git-autodetect.patch new file mode 100644 index 000000000..f4bf0da2c --- /dev/null +++ b/media-libs/opencv/files/opencv-3.1.0-git-autodetect.patch @@ -0,0 +1,42 @@ +--- a/CMakeLists.txt 2016-04-07 14:34:35.090937125 +0200 ++++ b/CMakeLists.txt 2016-04-07 14:35:18.492935300 +0200 +@@ -444,23 +444,23 @@ + # ---------------------------------------------------------------------------- + # Autodetect if we are in a GIT repository + # ---------------------------------------------------------------------------- +-find_host_package(Git QUIET) ++#find_host_package(Git QUIET) + +-if(GIT_FOUND) +- execute_process(COMMAND "${GIT_EXECUTABLE}" describe --tags --always --dirty --match "[0-9].[0-9].[0-9]*" +- WORKING_DIRECTORY "${OpenCV_SOURCE_DIR}" +- OUTPUT_VARIABLE OPENCV_VCSVERSION +- RESULT_VARIABLE GIT_RESULT +- ERROR_QUIET +- OUTPUT_STRIP_TRAILING_WHITESPACE +- ) +- if(NOT GIT_RESULT EQUAL 0) +- set(OPENCV_VCSVERSION "unknown") +- endif() +-else() +- # We don't have git: +- set(OPENCV_VCSVERSION "unknown") +-endif() ++#if(GIT_FOUND) ++# execute_process(COMMAND "${GIT_EXECUTABLE}" describe --tags --always --dirty --match "[0-9].[0-9].[0-9]*" ++# WORKING_DIRECTORY "${OpenCV_SOURCE_DIR}" ++# OUTPUT_VARIABLE OPENCV_VCSVERSION ++# RESULT_VARIABLE GIT_RESULT ++# ERROR_QUIET ++# OUTPUT_STRIP_TRAILING_WHITESPACE ++# ) ++# if(NOT GIT_RESULT EQUAL 0) ++# set(OPENCV_VCSVERSION "unknown") ++# endif() ++#else() ++# # We don't have git: ++# set(OPENCV_VCSVERSION "unknown") ++#endif() + + + # ---------------------------------------------------------------------------- diff --git a/media-libs/opencv/files/opencv-3.1.0-invalid-string-usage.patch b/media-libs/opencv/files/opencv-3.1.0-invalid-string-usage.patch new file mode 100644 index 000000000..c9f85a758 --- /dev/null +++ b/media-libs/opencv/files/opencv-3.1.0-invalid-string-usage.patch @@ -0,0 +1,75 @@ +From 9862a8bac536981c1c1a74710741fb40db4beac7 Mon Sep 17 00:00:00 2001 +From: Alexander Alekhin +Date: Wed, 23 Sep 2015 12:44:26 +0300 +Subject: [PATCH] fix invalid String usage + +--- + modules/tracking/src/tldDetector.cpp | 6 +++--- + modules/ximgproc/samples/live_demo.cpp | 12 ++++++------ + 2 files changed, 9 insertions(+), 9 deletions(-) + +diff --git opencv_contrib-master/modules/tracking/src/tldDetector.cpp opencv_contrib-master/modules/tracking/src/tldDetector.cpp +index cbb783e..0916092 100644 +--- opencv_contrib-master/modules/tracking/src/tldDetector.cpp ++++ opencv_contrib-master/modules/tracking/src/tldDetector.cpp +@@ -122,7 +122,7 @@ namespace cv + ocl::Kernel k; + ocl::ProgramSource src = ocl::tracking::tldDetector_oclsrc; + String error; +- ocl::Program prog(src, NULL, error); ++ ocl::Program prog(src, String(), error); + k.create("NCC", prog); + if (k.empty()) + printf("Kernel create failed!!!\n"); +@@ -198,7 +198,7 @@ namespace cv + ocl::Kernel k; + ocl::ProgramSource src = ocl::tracking::tldDetector_oclsrc; + String error; +- ocl::Program prog(src, NULL, error); ++ ocl::Program prog(src, String(), error); + k.create("batchNCC", prog); + if (k.empty()) + printf("Kernel create failed!!!\n"); +@@ -355,7 +355,7 @@ namespace cv + ocl::Kernel k; + ocl::ProgramSource src = ocl::tracking::tldDetector_oclsrc; + String error; +- ocl::Program prog(src, NULL, error); ++ ocl::Program prog(src, String(), error); + k.create("NCC", prog); + if (k.empty()) + printf("Kernel create failed!!!\n"); +diff --git opencv_contrib-master/modules/ximgproc/samples/live_demo.cpp opencv_contrib-master/modules/ximgproc/samples/live_demo.cpp +index dd5dc1b..8e16de3 100644 +--- opencv_contrib-master/modules/ximgproc/samples/live_demo.cpp ++++ opencv_contrib-master/modules/ximgproc/samples/live_demo.cpp +@@ -189,7 +189,7 @@ int main() + + //Thread trackbar + cv::setNumThreads(g_numberOfCPUs); //speedup filtering +- createTrackbar("Threads", NULL, &g_numberOfCPUs, cv::getNumberOfCPUs(), changeNumberOfCpuCallback); ++ createTrackbar("Threads", String(), &g_numberOfCPUs, cv::getNumberOfCPUs(), changeNumberOfCpuCallback); + + //Buttons to choose different modes + createButton("Mode Details Enhancement", changeModeCallback, (void*)filterDetailEnhancement, QT_RADIOBOX, true); +@@ -199,15 +199,15 @@ int main() + + //sliders for Details Enhancement mode + g_filterOp = filterDetailEnhancement; //set Details Enhancement as default filter +- createTrackbar("Detail contrast", NULL, &g_contrastBase, 200); +- createTrackbar("Detail level" , NULL, &g_detailsLevel, 200); ++ createTrackbar("Detail contrast", String(), &g_contrastBase, 200); ++ createTrackbar("Detail level" , String(), &g_detailsLevel, 200); + + //sliders for Stylizing mode +- createTrackbar("Style gamma", NULL, &g_edgesGamma, 300); ++ createTrackbar("Style gamma", String(), &g_edgesGamma, 300); + + //sliders for every mode +- createTrackbar("Sigma Spatial", NULL, &g_sigmaSpatial, 200); +- createTrackbar("Sigma Color" , NULL, &g_sigmaColor, 200); ++ createTrackbar("Sigma Spatial", String(), &g_sigmaSpatial, 200); ++ createTrackbar("Sigma Color" , String(), &g_sigmaColor, 200); + + Mat rawFrame, outputFrame; + Mat srcFrame, processedFrame; diff --git a/media-libs/opencv/files/opencv-3.1.0-java-magic.patch b/media-libs/opencv/files/opencv-3.1.0-java-magic.patch new file mode 100644 index 000000000..96a0e7e70 --- /dev/null +++ b/media-libs/opencv/files/opencv-3.1.0-java-magic.patch @@ -0,0 +1,47 @@ +diff -purN a/CMakeLists.txt b/CMakeLists.txt +--- a/CMakeLists.txt 2015-12-18 15:02:16.000000000 +0000 ++++ b/CMakeLists.txt 2016-06-06 17:15:48.006020666 +0100 +@@ -209,6 +209,7 @@ OCV_OPTION(WITH_OPENCLAMDFFT "Include + OCV_OPTION(WITH_OPENCLAMDBLAS "Include AMD OpenCL BLAS library support" ON IF (NOT ANDROID AND NOT IOS AND NOT WINRT) ) + OCV_OPTION(WITH_DIRECTX "Include DirectX support" ON IF (WIN32 AND NOT WINRT) ) + OCV_OPTION(WITH_INTELPERC "Include Intel Perceptual Computing support" OFF IF (WIN32 AND NOT WINRT) ) ++OCV_OPTION(WITH_JAVA "Include Java support" ON) + OCV_OPTION(WITH_IPP_A "Include Intel IPP_A support" OFF IF (MSVC OR X86 OR X86_64) ) + OCV_OPTION(WITH_MATLAB "Include Matlab support" ON IF (NOT ANDROID AND NOT IOS AND NOT WINRT)) + OCV_OPTION(WITH_VA "Include VA support" OFF IF (UNIX AND NOT ANDROID) ) +@@ -562,20 +563,25 @@ endif(BUILD_DOCS) + include(cmake/OpenCVDetectPython.cmake) + + # --- Java Support --- +-include(cmake/OpenCVDetectApacheAnt.cmake) +-if(ANDROID) +- include(cmake/OpenCVDetectAndroidSDK.cmake) ++If(WITH_JAVA) ++ include(cmake/OpenCVDetectApacheAnt.cmake) ++ if(ANDROID) ++ include(cmake/OpenCVDetectAndroidSDK.cmake) + +- if(NOT ANDROID_TOOLS_Pkg_Revision GREATER 13) +- message(WARNING "OpenCV requires Android SDK tools revision 14 or newer. Otherwise tests and samples will no be compiled.") ++ if(NOT ANDROID_TOOLS_Pkg_Revision GREATER 13) ++ message(WARNING "OpenCV requires Android SDK tools revision 14 or newer. Otherwise tests and samples will no be compiled.") ++ endif() ++ else() ++ find_package(JNI) + endif() +-else() +- find_package(JNI) +-endif() + +-if(ANDROID AND ANDROID_EXECUTABLE AND ANT_EXECUTABLE AND (ANT_VERSION VERSION_GREATER 1.7) AND (ANDROID_TOOLS_Pkg_Revision GREATER 13)) +- SET(CAN_BUILD_ANDROID_PROJECTS TRUE) ++ if(ANDROID AND ANDROID_EXECUTABLE AND ANT_EXECUTABLE AND (ANT_VERSION VERSION_GREATER 1.7) AND (ANDROID_TOOLS_Pkg_Revision GREATER 13)) ++ SET(CAN_BUILD_ANDROID_PROJECTS TRUE) ++ else() ++ SET(CAN_BUILD_ANDROID_PROJECTS FALSE) ++ endif() + else() ++ SET(ANT_EXECUTABLE "") + SET(CAN_BUILD_ANDROID_PROJECTS FALSE) + endif() + diff --git a/media-libs/opencv/files/opencv-contrib-find-hdf5-fix.patch b/media-libs/opencv/files/opencv-contrib-find-hdf5-fix.patch new file mode 100644 index 000000000..af86cf980 --- /dev/null +++ b/media-libs/opencv/files/opencv-contrib-find-hdf5-fix.patch @@ -0,0 +1,392 @@ +diff -purN a/modules/hdf/cmake/FindHDF5.cmake b/modules/hdf/cmake/FindHDF5.cmake +--- a/modules/hdf/cmake/FindHDF5.cmake 1970-01-01 01:00:00.000000000 +0100 ++++ b/modules/hdf/cmake/FindHDF5.cmake 2015-09-16 17:53:05.000000000 +0100 +@@ -0,0 +1,379 @@ ++#.rst: ++# FindHDF5 ++# -------- ++# ++# Find HDF5, a library for reading and writing self describing array data. ++# ++# ++# ++# This module invokes the HDF5 wrapper compiler that should be installed ++# alongside HDF5. Depending upon the HDF5 Configuration, the wrapper ++# compiler is called either h5cc or h5pcc. If this succeeds, the module ++# will then call the compiler with the -show argument to see what flags ++# are used when compiling an HDF5 client application. ++# ++# The module will optionally accept the COMPONENTS argument. If no ++# COMPONENTS are specified, then the find module will default to finding ++# only the HDF5 C library. If one or more COMPONENTS are specified, the ++# module will attempt to find the language bindings for the specified ++# components. The only valid components are C, CXX, Fortran, HL, and ++# Fortran_HL. If the COMPONENTS argument is not given, the module will ++# attempt to find only the C bindings. ++# ++# On UNIX systems, this module will read the variable ++# HDF5_USE_STATIC_LIBRARIES to determine whether or not to prefer a ++# static link to a dynamic link for HDF5 and all of it's dependencies. ++# To use this feature, make sure that the HDF5_USE_STATIC_LIBRARIES ++# variable is set before the call to find_package. ++# ++# To provide the module with a hint about where to find your HDF5 ++# installation, you can set the environment variable HDF5_ROOT. The ++# Find module will then look in this path when searching for HDF5 ++# executables, paths, and libraries. ++# ++# In addition to finding the includes and libraries required to compile ++# an HDF5 client application, this module also makes an effort to find ++# tools that come with the HDF5 distribution that may be useful for ++# regression testing. ++# ++# This module will define the following variables: ++# ++# :: ++# ++# HDF5_INCLUDE_DIRS - Location of the hdf5 includes ++# HDF5_INCLUDE_DIR - Location of the hdf5 includes (deprecated) ++# HDF5_DEFINITIONS - Required compiler definitions for HDF5 ++# HDF5_C_LIBRARIES - Required libraries for the HDF5 C bindings. ++# HDF5_CXX_LIBRARIES - Required libraries for the HDF5 C++ bindings ++# HDF5_Fortran_LIBRARIES - Required libraries for the HDF5 Fortran bindings ++# HDF5_HL_LIBRARIES - Required libraries for the HDF5 high level API ++# HDF5_Fortran_HL_LIBRARIES - Required libraries for the high level Fortran ++# bindings. ++# HDF5_LIBRARIES - Required libraries for all requested bindings ++# HDF5_FOUND - true if HDF5 was found on the system ++# HDF5_VERSION - HDF5 version in format Major.Minor.Release ++# HDF5_LIBRARY_DIRS - the full set of library directories ++# HDF5_IS_PARALLEL - Whether or not HDF5 was found with parallel IO support ++# HDF5_C_COMPILER_EXECUTABLE - the path to the HDF5 C wrapper compiler ++# HDF5_CXX_COMPILER_EXECUTABLE - the path to the HDF5 C++ wrapper compiler ++# HDF5_Fortran_COMPILER_EXECUTABLE - the path to the HDF5 Fortran wrapper compiler ++# HDF5_DIFF_EXECUTABLE - the path to the HDF5 dataset comparison tool ++ ++#============================================================================= ++# Copyright 2015 Axel Huebl, Helmholtz-Zentrum Dresden - Rossendorf ++# Copyright 2009 Kitware, Inc. ++# ++# 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 CMake, substitute the full ++# License text for the above reference.) ++ ++# This module is maintained by Will Dicharry . ++ ++include(SelectLibraryConfigurations) ++include(FindPackageHandleStandardArgs) ++ ++# List of the valid HDF5 components ++set( HDF5_VALID_COMPONENTS ++ C ++ CXX ++ Fortran ++ HL ++ Fortran_HL ++) ++ ++# Validate the list of find components. ++if( NOT HDF5_FIND_COMPONENTS ) ++ set( HDF5_LANGUAGE_BINDINGS "C" ) ++else() ++ # add the extra specified components, ensuring that they are valid. ++ foreach( component ${HDF5_FIND_COMPONENTS} ) ++ list( FIND HDF5_VALID_COMPONENTS ${component} component_location ) ++ if( ${component_location} EQUAL -1 ) ++ message( FATAL_ERROR ++ "\"${component}\" is not a valid HDF5 component." ) ++ else() ++ list( APPEND HDF5_LANGUAGE_BINDINGS ${component} ) ++ endif() ++ endforeach() ++endif() ++ ++# try to find the HDF5 wrapper compilers ++find_program( HDF5_C_COMPILER_EXECUTABLE ++ NAMES h5cc h5pcc ++ HINTS ENV HDF5_ROOT ++ PATH_SUFFIXES bin Bin ++ DOC "HDF5 Wrapper compiler. Used only to detect HDF5 compile flags." ) ++mark_as_advanced( HDF5_C_COMPILER_EXECUTABLE ) ++ ++find_program( HDF5_CXX_COMPILER_EXECUTABLE ++ NAMES h5c++ h5pc++ ++ HINTS ENV HDF5_ROOT ++ PATH_SUFFIXES bin Bin ++ DOC "HDF5 C++ Wrapper compiler. Used only to detect HDF5 compile flags." ) ++mark_as_advanced( HDF5_CXX_COMPILER_EXECUTABLE ) ++ ++find_program( HDF5_Fortran_COMPILER_EXECUTABLE ++ NAMES h5fc h5pfc ++ HINTS ENV HDF5_ROOT ++ PATH_SUFFIXES bin Bin ++ DOC "HDF5 Fortran Wrapper compiler. Used only to detect HDF5 compile flags." ) ++mark_as_advanced( HDF5_Fortran_COMPILER_EXECUTABLE ) ++ ++find_program( HDF5_DIFF_EXECUTABLE ++ NAMES h5diff ++ HINTS ENV HDF5_ROOT ++ PATH_SUFFIXES bin Bin ++ DOC "HDF5 file differencing tool." ) ++mark_as_advanced( HDF5_DIFF_EXECUTABLE ) ++ ++# Invoke the HDF5 wrapper compiler. The compiler return value is stored to the ++# return_value argument, the text output is stored to the output variable. ++macro( _HDF5_invoke_compiler language output return_value ) ++ if( HDF5_${language}_COMPILER_EXECUTABLE ) ++ exec_program( ${HDF5_${language}_COMPILER_EXECUTABLE} ++ ARGS -show ++ OUTPUT_VARIABLE ${output} ++ RETURN_VALUE ${return_value} ++ ) ++ if( ${${return_value}} EQUAL 0 ) ++ # do nothing ++ else() ++ message( STATUS ++ "Unable to determine HDF5 ${language} flags from HDF5 wrapper." ) ++ endif() ++ endif() ++endmacro() ++ ++# Parse a compile line for definitions, includes, library paths, and libraries. ++macro( _HDF5_parse_compile_line ++ compile_line_var ++ include_paths ++ definitions ++ library_paths ++ libraries ) ++ ++ # Match the include paths ++ string( REGEX MATCHALL "-I([^\" ]+)" include_path_flags ++ "${${compile_line_var}}" ++ ) ++ foreach( IPATH ${include_path_flags} ) ++ string( REGEX REPLACE "^-I" "" IPATH ${IPATH} ) ++ string( REPLACE "//" "/" IPATH ${IPATH} ) ++ list( APPEND ${include_paths} ${IPATH} ) ++ endforeach() ++ ++ # Match the definitions ++ string( REGEX MATCHALL "-D[^ ]*" definition_flags "${${compile_line_var}}" ) ++ foreach( DEF ${definition_flags} ) ++ list( APPEND ${definitions} ${DEF} ) ++ endforeach() ++ ++ # Match the library paths ++ string( REGEX MATCHALL "-L([^\" ]+|\"[^\"]+\")" library_path_flags ++ "${${compile_line_var}}" ++ ) ++ ++ foreach( LPATH ${library_path_flags} ) ++ string( REGEX REPLACE "^-L" "" LPATH ${LPATH} ) ++ string( REPLACE "//" "/" LPATH ${LPATH} ) ++ list( APPEND ${library_paths} ${LPATH} ) ++ endforeach() ++ ++ # now search for the library names specified in the compile line (match -l...) ++ # match only -l's preceded by a space or comma ++ # this is to exclude directory names like xxx-linux/ ++ string( REGEX MATCHALL "[, ]-l([^\", ]+)" library_name_flags ++ "${${compile_line_var}}" ) ++ # strip the -l from all of the library flags and add to the search list ++ foreach( LIB ${library_name_flags} ) ++ string( REGEX REPLACE "^[, ]-l" "" LIB ${LIB} ) ++ list( APPEND ${libraries} ${LIB} ) ++ endforeach() ++endmacro() ++ ++# Try to find HDF5 using an installed hdf5-config.cmake ++if( NOT HDF5_FOUND ) ++ find_package( HDF5 QUIET NO_MODULE ) ++ if( HDF5_FOUND ) ++ set( HDF5_INCLUDE_DIRS ${HDF5_INCLUDE_DIR} ) ++ set( HDF5_LIBRARIES ) ++ set( HDF5_C_TARGET hdf5 ) ++ set( HDF5_CXX_TARGET hdf5_cpp ) ++ set( HDF5_HL_TARGET hdf5_hl ) ++ set( HDF5_Fortran_TARGET hdf5_fortran ) ++ set( HDF5_Fortran_HL_TARGET hdf5_hl_fortran ) ++ foreach( _component ${HDF5_LANGUAGE_BINDINGS} ) ++ list( FIND HDF5_VALID_COMPONENTS ${_component} _component_location ) ++ get_target_property( _comp_location ${HDF5_${_component}_TARGET} LOCATION ) ++ if( _comp_location ) ++ set( HDF5_${_component}_LIBRARY ${_comp_location} CACHE PATH ++ "HDF5 ${_component} library" ) ++ mark_as_advanced( HDF5_${_component}_LIBRARY ) ++ list( APPEND HDF5_LIBRARIES ${HDF5_${_component}_LIBRARY} ) ++ endif() ++ endforeach() ++ endif() ++endif() ++ ++if( NOT HDF5_FOUND ) ++ _HDF5_invoke_compiler( C HDF5_C_COMPILE_LINE HDF5_C_RETURN_VALUE ) ++ _HDF5_invoke_compiler( CXX HDF5_CXX_COMPILE_LINE HDF5_CXX_RETURN_VALUE ) ++ _HDF5_invoke_compiler( Fortran HDF5_Fortran_COMPILE_LINE HDF5_Fortran_RETURN_VALUE ) ++ ++ # seed the initial lists of libraries to find with items we know we need ++ set( HDF5_C_LIBRARY_NAMES_INIT hdf5 ) ++ set( HDF5_HL_LIBRARY_NAMES_INIT hdf5_hl ${HDF5_C_LIBRARY_NAMES_INIT} ) ++ set( HDF5_CXX_LIBRARY_NAMES_INIT hdf5_cpp ${HDF5_C_LIBRARY_NAMES_INIT} ) ++ set( HDF5_Fortran_LIBRARY_NAMES_INIT hdf5_fortran ++ ${HDF5_C_LIBRARY_NAMES_INIT} ) ++ set( HDF5_Fortran_HL_LIBRARY_NAMES_INIT hdf5hl_fortran ++ ${HDF5_Fortran_LIBRARY_NAMES_INIT} ) ++ ++ foreach( LANGUAGE ${HDF5_LANGUAGE_BINDINGS} ) ++ if( HDF5_${LANGUAGE}_COMPILE_LINE ) ++ _HDF5_parse_compile_line( HDF5_${LANGUAGE}_COMPILE_LINE ++ HDF5_${LANGUAGE}_INCLUDE_FLAGS ++ HDF5_${LANGUAGE}_DEFINITIONS ++ HDF5_${LANGUAGE}_LIBRARY_DIRS ++ HDF5_${LANGUAGE}_LIBRARY_NAMES ++ ) ++ ++ # take a guess that the includes may be in the 'include' sibling ++ # directory of a library directory. ++ foreach( dir ${HDF5_${LANGUAGE}_LIBRARY_DIRS} ) ++ list( APPEND HDF5_${LANGUAGE}_INCLUDE_FLAGS ${dir}/../include ) ++ endforeach() ++ endif() ++ ++ # set the definitions for the language bindings. ++ list( APPEND HDF5_DEFINITIONS ${HDF5_${LANGUAGE}_DEFINITIONS} ) ++ ++ # find the HDF5 include directories ++ if(${LANGUAGE} MATCHES "Fortran") ++ set(HDF5_INCLUDE_FILENAME hdf5.mod) ++ else() ++ set(HDF5_INCLUDE_FILENAME hdf5.h) ++ endif() ++ ++ find_path( HDF5_${LANGUAGE}_INCLUDE_DIR ${HDF5_INCLUDE_FILENAME} ++ HINTS ++ ${HDF5_${LANGUAGE}_INCLUDE_FLAGS} ++ ENV ++ HDF5_ROOT ++ PATHS ++ $ENV{HOME}/.local/include ++ PATH_SUFFIXES ++ include ++ Include ++ ) ++ mark_as_advanced( HDF5_${LANGUAGE}_INCLUDE_DIR ) ++ list( APPEND HDF5_INCLUDE_DIRS ${HDF5_${LANGUAGE}_INCLUDE_DIR} ) ++ ++ set( HDF5_${LANGUAGE}_LIBRARY_NAMES ++ ${HDF5_${LANGUAGE}_LIBRARY_NAMES_INIT} ++ ${HDF5_${LANGUAGE}_LIBRARY_NAMES} ) ++ ++ # find the HDF5 libraries ++ foreach( LIB ${HDF5_${LANGUAGE}_LIBRARY_NAMES} ) ++ if( UNIX AND HDF5_USE_STATIC_LIBRARIES ) ++ # According to bug 1643 on the CMake bug tracker, this is the ++ # preferred method for searching for a static library. ++ # See http://www.cmake.org/Bug/view.php?id=1643. We search ++ # first for the full static library name, but fall back to a ++ # generic search on the name if the static search fails. ++ set( THIS_LIBRARY_SEARCH_DEBUG lib${LIB}d.a ${LIB}d ) ++ set( THIS_LIBRARY_SEARCH_RELEASE lib${LIB}.a ${LIB} ) ++ else() ++ set( THIS_LIBRARY_SEARCH_DEBUG ${LIB}d ) ++ set( THIS_LIBRARY_SEARCH_RELEASE ${LIB} ) ++ endif() ++ find_library( HDF5_${LIB}_LIBRARY_DEBUG ++ NAMES ${THIS_LIBRARY_SEARCH_DEBUG} ++ HINTS ${HDF5_${LANGUAGE}_LIBRARY_DIRS} ++ ENV HDF5_ROOT ++ PATH_SUFFIXES lib Lib ) ++ find_library( HDF5_${LIB}_LIBRARY_RELEASE ++ NAMES ${THIS_LIBRARY_SEARCH_RELEASE} ++ HINTS ${HDF5_${LANGUAGE}_LIBRARY_DIRS} ++ ENV HDF5_ROOT ++ PATH_SUFFIXES lib Lib ) ++ select_library_configurations( HDF5_${LIB} ) ++ list(APPEND HDF5_${LANGUAGE}_LIBRARIES ${HDF5_${LIB}_LIBRARY}) ++ endforeach() ++ list( APPEND HDF5_LIBRARY_DIRS ${HDF5_${LANGUAGE}_LIBRARY_DIRS} ) ++ ++ # Append the libraries for this language binding to the list of all ++ # required libraries. ++ list(APPEND HDF5_LIBRARIES ${HDF5_${LANGUAGE}_LIBRARIES}) ++ endforeach() ++ ++ # We may have picked up some duplicates in various lists during the above ++ # process for the language bindings (both the C and C++ bindings depend on ++ # libz for example). Remove the duplicates. It appears that the default ++ # CMake behavior is to remove duplicates from the end of a list. However, ++ # for link lines, this is incorrect since unresolved symbols are searched ++ # for down the link line. Therefore, we reverse the list, remove the ++ # duplicates, and then reverse it again to get the duplicates removed from ++ # the beginning. ++ macro( _remove_duplicates_from_beginning _list_name ) ++ list( REVERSE ${_list_name} ) ++ list( REMOVE_DUPLICATES ${_list_name} ) ++ list( REVERSE ${_list_name} ) ++ endmacro() ++ ++ if( HDF5_INCLUDE_DIRS ) ++ _remove_duplicates_from_beginning( HDF5_INCLUDE_DIRS ) ++ endif() ++ if( HDF5_LIBRARY_DIRS ) ++ _remove_duplicates_from_beginning( HDF5_LIBRARY_DIRS ) ++ endif() ++ ++ # If the HDF5 include directory was found, open H5pubconf.h to determine if ++ # HDF5 was compiled with parallel IO support ++ set( HDF5_IS_PARALLEL FALSE ) ++ set( HDF5_VERSION "" ) ++ foreach( _dir IN LISTS HDF5_INCLUDE_DIRS ) ++ foreach(_hdr "${_dir}/H5pubconf.h" "${_dir}/H5pubconf-64.h" "${_dir}/H5pubconf-32.h") ++ if( EXISTS "${_hdr}" ) ++ file( STRINGS "${_hdr}" ++ HDF5_HAVE_PARALLEL_DEFINE ++ REGEX "HAVE_PARALLEL 1" ) ++ if( HDF5_HAVE_PARALLEL_DEFINE ) ++ set( HDF5_IS_PARALLEL TRUE ) ++ endif() ++ unset(HDF5_HAVE_PARALLEL_DEFINE) ++ ++ file( STRINGS "${_hdr}" ++ HDF5_VERSION_DEFINE ++ REGEX "^[ \t]*#[ \t]*define[ \t]+H5_VERSION[ \t]+" ) ++ if( "${HDF5_VERSION_DEFINE}" MATCHES ++ "H5_VERSION[ \t]+\"([0-9]+\\.[0-9]+\\.[0-9]+).*\"" ) ++ set( HDF5_VERSION "${CMAKE_MATCH_1}" ) ++ endif() ++ unset(HDF5_VERSION_DEFINE) ++ endif() ++ endforeach() ++ endforeach() ++ set( HDF5_IS_PARALLEL ${HDF5_IS_PARALLEL} CACHE BOOL ++ "HDF5 library compiled with parallel IO support" ) ++ mark_as_advanced( HDF5_IS_PARALLEL ) ++ ++ # For backwards compatibility we set HDF5_INCLUDE_DIR to the value of ++ # HDF5_INCLUDE_DIRS ++ if( HDF5_INCLUDE_DIRS ) ++ set( HDF5_INCLUDE_DIR "${HDF5_INCLUDE_DIRS}" ) ++ endif() ++ ++endif() ++ ++find_package_handle_standard_args( HDF5 ++ REQUIRED_VARS HDF5_LIBRARIES HDF5_INCLUDE_DIRS ++ VERSION_VAR HDF5_VERSION ++) ++ +diff -purN a/modules/hdf/CMakeLists.txt b/modules/hdf/CMakeLists.txt +--- a/modules/hdf/CMakeLists.txt 2015-12-17 17:11:31.000000000 +0000 ++++ b/modules/hdf/CMakeLists.txt 2016-09-19 15:24:47.958650311 +0100 +@@ -1,4 +1,4 @@ +-set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}) ++set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_LIST_DIR}/cmake) + + find_package(HDF5) + if(HDF5_FOUND) diff --git a/media-libs/opencv/opencv-3.1.0-r6.ebuild b/media-libs/opencv/opencv-3.1.0-r6.ebuild new file mode 100644 index 000000000..d2f971e77 --- /dev/null +++ b/media-libs/opencv/opencv-3.1.0-r6.ebuild @@ -0,0 +1,301 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 +PYTHON_COMPAT=( python{2_7,3_4,3_5} ) + +inherit toolchain-funcs cmake-utils python-r1 java-pkg-opt-2 java-ant-2 + +DESCRIPTION="A collection of algorithms and sample code for + various computer vision problems" +HOMEPAGE="http://opencv.org" + +SRC_URI=" + mirror://sourceforge/opencvlibrary/opencv-unix/${PV}/${P}.zip + https://github.com/Itseez/${PN}/archive/${PV}.zip -> ${P}.zip + contrib? ( + https://github.com/Itseez/${PN}_contrib/archive/cd5993c6576267875adac300b9ddd1f881bb1766.zip -> ${P}_contrib.zip )" #commit from Sun, 27 Mar 2016 17:31:51 + +LICENSE="BSD" +SLOT="0/3.1" # subslot = libopencv* soname version +KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux" +IUSE="contrib cuda +eigen examples ffmpeg gdal gphoto2 gstreamer gtk \ + ieee1394 ipp jpeg jpeg2k libav opencl openexr opengl openmp pch png \ + +python qt4 qt5 testprograms threads tiff vaapi v4l vtk webp xine" + +# OpenGL needs gtk or Qt installed to activate, otherwise build system +# will silently disable it without the user knowing, which defeats the +# purpose of the opengl use flag. +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) + ?? ( qt4 qt5 ) + opengl? ( || ( gtk qt4 qt5 ) )" + +# The following logic is intrinsic in the build system, but we do not enforce +# it on the useflags since this just blocks emerging pointlessly: +# gtk? ( !qt4 ) +# openmp? ( !threads ) + +RDEPEND=" + contrib? ( sci-libs/hdf5 ) + app-arch/bzip2 + sys-libs/zlib + cuda? ( dev-util/nvidia-cuda-toolkit:0= ) + ffmpeg? ( + libav? ( media-video/libav:0= ) + !libav? ( media-video/ffmpeg:0= ) + ) + gdal? ( sci-libs/gdal ) + gphoto2? ( media-libs/libgphoto2 ) + gstreamer? ( + media-libs/gstreamer:1.0 + media-libs/gst-plugins-base:1.0 + ) + gtk? ( + dev-libs/glib:2 + x11-libs/gtk+:2 + opengl? ( x11-libs/gtkglext ) + ) + java? ( >=virtual/jre-1.6:* ) + jpeg? ( virtual/jpeg:0 ) + jpeg2k? ( media-libs/jasper ) + ieee1394? ( + media-libs/libdc1394 + sys-libs/libraw1394 + ) + ipp? ( sci-libs/ipp ) + opencl? ( virtual/opencl ) + openexr? ( media-libs/openexr ) + opengl? ( virtual/opengl virtual/glu ) + png? ( media-libs/libpng:0= ) + python? ( ${PYTHON_DEPS} dev-python/numpy[${PYTHON_USEDEP}] ) + qt4? ( + dev-qt/qtgui:4 + dev-qt/qttest:4 + opengl? ( dev-qt/qtopengl:4 ) + ) + qt5? ( + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + dev-qt/qttest:5 + dev-qt/qtconcurrent:5 + opengl? ( dev-qt/qtopengl:5 ) + ) + threads? ( dev-cpp/tbb ) + tiff? ( media-libs/tiff:0 ) + v4l? ( >=media-libs/libv4l-0.8.3 ) + vtk? ( sci-libs/vtk[rendering] ) + webp? ( media-libs/libwebp ) + xine? ( media-libs/xine-lib ) +" +DEPEND="${RDEPEND} + virtual/pkgconfig + eigen? ( dev-cpp/eigen:3 ) + java? ( >=virtual/jdk-1.6 ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-3.0.0-gles.patch + "${FILESDIR}"/${PN}-3.1.0-cmake-no-opengl.patch + "${FILESDIR}"/${P}-git-autodetect.patch + "${FILESDIR}"/${P}-java-magic.patch + "${FILESDIR}"/${P}-gentooify-python.patch +) + +GLOBALCMAKEARGS=() + +pkg_pretend() { + if use openmp; then + tc-has-openmp || die "Please switch to an openmp compatible compiler" + fi +} + +pkg_setup() { + java-pkg-opt-2_pkg_setup +} + +src_prepare() { + default + + # remove bundled stuff + rm -rf 3rdparty || die "Removing 3rd party components failed" + sed -i \ + -e '/add_subdirectory(.*3rdparty.*)/ d' \ + CMakeLists.txt cmake/*cmake || die + + java-pkg-opt-2_src_prepare + + # Out-of-$S patching + if use contrib; then + cd "${WORKDIR}"/opencv_contrib-${PV} || die "cd failed" + epatch "${FILESDIR}"/${PN}-contrib-find-hdf5-fix.patch + fi +} + +src_configure() { + JAVA_ANT_ENCODING="iso-8859-1" + # set encoding so even this cmake build will pick it up. + export ANT_OPTS+=" -Dfile.encoding=iso-8859-1" + java-ant-2_src_configure + + # please dont sort here, order is the same as in CMakeLists.txt + GLOBALCMAKEARGS=( + # Optional 3rd party components + # =================================================== + -DWITH_1394=$(usex ieee1394) + -DWITH_AVFOUNDATION=OFF # IOS + -DWITH_VTK=$(usex vtk) + -DWITH_EIGEN=$(usex eigen) + -DWITH_VFW=OFF # Video windows support + -DWITH_FFMPEG=$(usex ffmpeg) + -DWITH_GSTREAMER=$(usex gstreamer) + -DWITH_GSTREAMER_0_10=OFF # Don't want this + -DWITH_GTK=$(usex gtk) + -DWITH_GTK_2_X=OFF + -DWITH_IPP=$(usex ipp) + -DWITH_JASPER=$(usex jpeg2k) + -DWITH_JPEG=$(usex jpeg) + -DWITH_WEBP=$(usex webp) + -DWITH_OPENEXR=$(usex openexr) + -DWITH_OPENGL=$(usex opengl) + -DWITH_OPENNI=OFF # Not packaged + -DWITH_OPENNI2=OFF # Not packaged + -DWITH_PNG=$(usex png) + -DWITH_PVAPI=OFF # Not packaged + -DWITH_GIGEAPI=OFF + # Qt in CMakeList.txt here: See below + -DWITH_WIN32UI=OFF # Windows only + -DWITH_QUICKTIME=OFF + -DWITH_TBB=$(usex threads) + -DWITH_OPENMP=$(usex openmp) + -DWITH_CSTRIPES=OFF + -DWITH_PTHREADS_PF=ON + -DWITH_TIFF=$(usex tiff) + -DWITH_UNICAP=OFF # Not packaged + -DWITH_V4L=$(usex v4l) + -DWITH_LIBV4L=$(usex v4l) + -DWITH_DSHOW=ON # direct show supp + -DWITH_MSMF=OFF + -DWITH_XIMEA=OFF # Windows only + -DWITH_XINE=$(usex xine) + -DWITH_CLP=OFF + -DWITH_OPENCL=$(usex opencl) + -DWITH_OPENCL_SVM=OFF + -DWITH_OPENCLAMDFFT=$(usex opencl) + -DWITH_OPENCLAMDBLAS=$(usex opencl) + -DWITH_DIRECTX=OFF + -DWITH_INTELPERC=OFF + -DWITH_JAVA=$(usex java) # Ant needed, no compile flag + -DWITH_IPP_A=OFF + -DWITH_MATLAB=ON + -DWITH_VA=$(usex vaapi) + -DWITH_VA_INTEL=$(usex vaapi) + -DWITH_GDAL=$(usex gdal) + -DWITH_GPHOTO2=$(usex gphoto2) + # =================================================== + # CUDA build components: nvidia-cuda-toolkit takes care of GCC version + # =================================================== + -DWITH_CUDA=$(usex cuda) + -DWITH_CUBLAS=$(usex cuda) + -DWITH_CUFFT=$(usex cuda) + -DCUDA_NPP_LIBRARY_ROOT_DIR=$(usex cuda "${EPREFIX}/opt/cuda" "") + # =================================================== + # OpenCV build components + # =================================================== + -DBUILD_SHARED_LIBS=ON + -DBUILD_ANDROID_EXAMPLES=OFF + -DBUILD_DOCS=OFF # Doesn't install anyways. + -DBUILD_EXAMPLES=$(usex examples) + -DBUILD_PERF_TESTS=OFF + -DBUILD_TESTS=$(usex testprograms) + # =================================================== + # OpenCV installation options + # =================================================== + -DINSTALL_C_EXAMPLES=$(usex examples) + -DINSTALL_TESTS=$(usex testprograms) + # =================================================== + # OpenCV build options + # =================================================== + -DENABLE_PRECOMPILED_HEADERS=$(usex pch) + -DHAVE_opencv_java=$(usex java YES NO) + # =================================================== + # things we want to be hard off or not yet figured out + # =================================================== + -DBUILD_PACKAGE=OFF + -DENABLE_PROFILING=OFF + # =================================================== + # things we want to be hard enabled not worth useflag + # =================================================== + -DCMAKE_SKIP_RPATH=ON + -DOPENCV_DOC_INSTALL_PATH= + ) + + if use qt4; then + GLOBALCMAKEARGS+=( -DWITH_QT=4 ) + elif use qt5; then + GLOBALCMAKEARGS+=( -DWITH_QT=5 ) + else + GLOBALCMAKEARGS+=( -DWITH_QT=OFF ) + fi + + use contrib && GLOBALCMAKEARGS+=( + -DOPENCV_EXTRA_MODULES_PATH="${WORKDIR}/opencv_contrib-${PV}/modules" + ) + + # workaround for bug 413429 + tc-export CC CXX + + local mycmakeargs=( ${GLOBALCMAKEARGS[@]} + -DWITH_PYTHON=OFF + -DINSTALL_PYTHON_EXAMPLES=OFF + ) + + cmake-utils_src_configure +} + +python_module_compile() { + local mycmakeargs=( ${GLOBALCMAKEARGS[@]} ) + + # Set all python variables to load the correct Gentoo paths + mycmakeargs+=( + -DWITH_PYTHON=ON + -DGENTOO_PYTHON_EXECUTABLE=${EPYTHON} + -DGENTOO_PYTHON_INCLUDE_PATH="$(python_get_includedir)" + -DGENTOO_PYTHON_LIBRARIES="$(python_get_library_path)" + -DGENTOO_PYTHON_PACKAGES_PATH="$(python_get_sitedir)" + -DGENTOO_PYTHON_MAJOR=${EPYTHON:6:1} + -DGENTOO_PYTHON_MINOR=${EPYTHON:8:1} + -DGENTOO_PYTHON_DEBUG_LIBRARIES="" # Absolutely no clue what this is + ) + + if use examples; then + mycmakeargs+=( -DINSTALL_PYTHON_EXAMPLES=ON ) + else + mycmakeargs+=( -DINSTALL_PYTHON_EXAMPLES=OFF ) + fi + + # Compile and install all at once because configuration will be wiped + # for each impl of Python + BUILD_DIR="${WORKDIR}"/${P}_build + cd "${BUILD_DIR}" || die "cd failed" + + # Regenerate cache file. Can't use rebuild_cache as it won't + # have the Gentoo specific options. + rm -rf CMakeCache.txt || die "rm failed" + cmake-utils_src_configure + cmake-utils_src_compile opencv_${EPYTHON:0:7} + cmake-utils_src_install install/fast + + # Remove compiled binary so new version compiles + # Avoid conflicts with new module builds as build system doesn't + # really support it. + emake -C modules/${EPYTHON:0:7} clean + rm -rf modules/${EPYTHON:0:7} || die "rm failed" +} + +src_install() { + cmake-utils_src_install + + # Build and install the python modules for all targets + use python && python_foreach_impl python_module_compile +} diff --git a/profiles/templates/3.4/6_ac_install_patch/net-libs/.calculate_directory b/profiles/templates/3.4/6_ac_install_patch/net-libs/.calculate_directory new file mode 100644 index 000000000..720d52e47 --- /dev/null +++ b/profiles/templates/3.4/6_ac_install_patch/net-libs/.calculate_directory @@ -0,0 +1 @@ +# Calculate append=skip diff --git a/profiles/templates/3.4/6_ac_install_patch/net-libs/libproxy/.calculate_directory b/profiles/templates/3.4/6_ac_install_patch/net-libs/libproxy/.calculate_directory new file mode 100644 index 000000000..615bc8bdf --- /dev/null +++ b/profiles/templates/3.4/6_ac_install_patch/net-libs/libproxy/.calculate_directory @@ -0,0 +1 @@ +# Calculate append=skip merge()!= diff --git a/profiles/templates/3.4/6_ac_install_patch/net-libs/libproxy/libproxy-disable-webkit.patch b/profiles/templates/3.4/6_ac_install_patch/net-libs/libproxy/libproxy-disable-webkit.patch new file mode 100644 index 000000000..ecace1d29 --- /dev/null +++ b/profiles/templates/3.4/6_ac_install_patch/net-libs/libproxy/libproxy-disable-webkit.patch @@ -0,0 +1,20 @@ +# Calculate format=diff +diff --git a/libproxy/cmake/modules.cmk b/libproxy/cmake/modules.cmk +index 017d428..7900398 100644 +--- a/libproxy/cmake/modules.cmk ++++ b/libproxy/cmake/modules.cmk +@@ -16,7 +16,6 @@ include(cmake/modules/config_macosx.cmk) + include(cmake/modules/network_networkmanager.cmk) + include(cmake/modules/pacrunner_mozjs.cmk) + include(cmake/modules/pacrunner_natus.cmk) +-include(cmake/modules/pacrunner_webkit.cmk) + + # Build the pacrunner into libproxy unless we are building for multiple engines + set(BIPR 1 CACHE BOOL "Build internal pacrunner? (Always false when building more than one PR") +@@ -41,6 +40,5 @@ px_module(ignore_ip 1 1) + px_module(network_networkmanager "${NM_FOUND}" 0 ${NM_LIBRARIES}) + px_module(pacrunner_mozjs "${MOZJS_FOUND}" ${BIPR} ${MOZJS_LIBRARIES}) + px_module(pacrunner_natus "${NATUS_FOUND}" ${BIPR} ${NATUS_LIBRARIES}) +-px_module(pacrunner_webkit "${WEBKIT_FOUND}" ${BIPR} ${WEBKIT_LIBRARIES}) + px_module(wpad_dns_alias 1 1) + message("") diff --git a/profiles/templates/3.4/6_ac_install_patch/net-misc/.calculate_directory b/profiles/templates/3.4/6_ac_install_patch/net-misc/.calculate_directory new file mode 100644 index 000000000..720d52e47 --- /dev/null +++ b/profiles/templates/3.4/6_ac_install_patch/net-misc/.calculate_directory @@ -0,0 +1 @@ +# Calculate append=skip diff --git a/profiles/templates/3.4/6_ac_install_patch/net-misc/openconnect/.calculate_directory b/profiles/templates/3.4/6_ac_install_patch/net-misc/openconnect/.calculate_directory new file mode 100644 index 000000000..615bc8bdf --- /dev/null +++ b/profiles/templates/3.4/6_ac_install_patch/net-misc/openconnect/.calculate_directory @@ -0,0 +1 @@ +# Calculate append=skip merge()!= diff --git a/profiles/templates/3.4/6_ac_install_patch/net-misc/openconnect/openconnect-disable-lz4.patch b/profiles/templates/3.4/6_ac_install_patch/net-misc/openconnect/openconnect-disable-lz4.patch new file mode 100644 index 000000000..4e310cef8 --- /dev/null +++ b/profiles/templates/3.4/6_ac_install_patch/net-misc/openconnect/openconnect-disable-lz4.patch @@ -0,0 +1,116 @@ +# Calculate format=diff +diff --git a/Makefile b/Makefile +index b389275..6050828 100644 +--- a/Makefile ++++ b/Makefile +@@ -452,9 +452,9 @@ KRB5_CONFIG = + LD = /usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64 + LDFLAGS = -Wl,--as-needed + LIBICONV = +-LIBLZ4_CFLAGS = -I/usr/local/include +-LIBLZ4_LIBS = -L/usr/local/lib -llz4 +-LIBLZ4_PC = liblz4 ++LIBLZ4_CFLAGS = ++LIBLZ4_LIBS = ++LIBLZ4_PC = + LIBOBJS = + LIBP11_CFLAGS = + LIBP11_LIBS = +diff --git a/config.h b/config.h +index eedf4ef..210aea8 100644 +--- a/config.h ++++ b/config.h +@@ -128,7 +128,7 @@ + /* #undef HAVE_LIBSTOKEN */ + + /* LZ4 was found */ +-#define HAVE_LZ4 /**/ ++/* #undef HAVE_LZ4 */ + + /* Define to 1 if you have the header file. */ + #define HAVE_MEMORY_H 1 +diff --git a/po/Makefile b/po/Makefile +index 13c74ed..4ea8c04 100644 +--- a/po/Makefile ++++ b/po/Makefile +@@ -181,9 +181,9 @@ KRB5_CONFIG = + LD = /usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64 + LDFLAGS = -Wl,--as-needed + LIBICONV = +-LIBLZ4_CFLAGS = -I/usr/local/include +-LIBLZ4_LIBS = -L/usr/local/lib -llz4 +-LIBLZ4_PC = liblz4 ++LIBLZ4_CFLAGS = ++LIBLZ4_LIBS = ++LIBLZ4_PC = + LIBOBJS = + LIBP11_CFLAGS = + LIBP11_LIBS = +diff --git a/www/Makefile b/www/Makefile +index b4a810c..dd255db 100644 +--- a/www/Makefile ++++ b/www/Makefile +@@ -271,9 +271,9 @@ KRB5_CONFIG = + LD = /usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64 + LDFLAGS = -Wl,--as-needed + LIBICONV = +-LIBLZ4_CFLAGS = -I/usr/local/include +-LIBLZ4_LIBS = -L/usr/local/lib -llz4 +-LIBLZ4_PC = liblz4 ++LIBLZ4_CFLAGS = ++LIBLZ4_LIBS = ++LIBLZ4_PC = + LIBOBJS = + LIBP11_CFLAGS = + LIBP11_LIBS = +diff --git a/www/images/Makefile b/www/images/Makefile +index 2dd6f7d..797de77 100644 +--- a/www/images/Makefile ++++ b/www/images/Makefile +@@ -210,9 +210,9 @@ KRB5_CONFIG = + LD = /usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64 + LDFLAGS = -Wl,--as-needed + LIBICONV = +-LIBLZ4_CFLAGS = -I/usr/local/include +-LIBLZ4_LIBS = -L/usr/local/lib -llz4 +-LIBLZ4_PC = liblz4 ++LIBLZ4_CFLAGS = ++LIBLZ4_LIBS = ++LIBLZ4_PC = + LIBOBJS = + LIBP11_CFLAGS = + LIBP11_LIBS = +diff --git a/www/inc/Makefile b/www/inc/Makefile +index fb578a7..78272a1 100644 +--- a/www/inc/Makefile ++++ b/www/inc/Makefile +@@ -210,9 +210,9 @@ KRB5_CONFIG = + LD = /usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64 + LDFLAGS = -Wl,--as-needed + LIBICONV = +-LIBLZ4_CFLAGS = -I/usr/local/include +-LIBLZ4_LIBS = -L/usr/local/lib -llz4 +-LIBLZ4_PC = liblz4 ++LIBLZ4_CFLAGS = ++LIBLZ4_LIBS = ++LIBLZ4_PC = + LIBOBJS = + LIBP11_CFLAGS = + LIBP11_LIBS = +diff --git a/www/styles/Makefile b/www/styles/Makefile +index 4b9b0d2..7481564 100644 +--- a/www/styles/Makefile ++++ b/www/styles/Makefile +@@ -210,9 +210,9 @@ KRB5_CONFIG = + LD = /usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64 + LDFLAGS = -Wl,--as-needed + LIBICONV = +-LIBLZ4_CFLAGS = -I/usr/local/include +-LIBLZ4_LIBS = -L/usr/local/lib -llz4 +-LIBLZ4_PC = liblz4 ++LIBLZ4_CFLAGS = ++LIBLZ4_LIBS = ++LIBLZ4_PC = + LIBOBJS = + LIBP11_CFLAGS = + LIBP11_LIBS = diff --git a/profiles/templates/3.4/6_ac_update_sync/revision/91-rebuild_openconnect_libproxy b/profiles/templates/3.4/6_ac_update_sync/revision/91-rebuild_openconnect_libproxy new file mode 100644 index 000000000..b548e2480 --- /dev/null +++ b/profiles/templates/3.4/6_ac_update_sync/revision/91-rebuild_openconnect_libproxy @@ -0,0 +1,21 @@ +# Calculate ini(overlay-calculate.revision)<91 exec=/bin/bash + +#-ini(overlay-calculate.revision,91)-# + +# key is pkg name, value is current version new reduced version split by space +declare -A map_move=( ["net-libs/libproxy"]="0.4.13-r1 0.4.13_rc73" + ["net-misc/openconnect"]="7.07-r2 7.07_rc73" +) + +PKGDB=/var/db/pkg +for pkg in ${!map_move[@]} +do + vers=(${map_move[$pkg]}) + if [[ -d $PKGDB/${pkg}-${vers[0]} ]] + then + cp -a $PKGDB/${pkg}-${vers[0]} $PKGDB/${pkg}-${vers[1]} + rm -rf $PKGDB/${pkg}-${vers[0]} + fi +done + +true diff --git a/profiles/templates/3.5/6_ac_install_patch/net-libs/.calculate_directory b/profiles/templates/3.5/6_ac_install_patch/net-libs/.calculate_directory new file mode 100644 index 000000000..720d52e47 --- /dev/null +++ b/profiles/templates/3.5/6_ac_install_patch/net-libs/.calculate_directory @@ -0,0 +1 @@ +# Calculate append=skip diff --git a/profiles/templates/3.5/6_ac_install_patch/net-libs/libproxy/.calculate_directory b/profiles/templates/3.5/6_ac_install_patch/net-libs/libproxy/.calculate_directory new file mode 100644 index 000000000..615bc8bdf --- /dev/null +++ b/profiles/templates/3.5/6_ac_install_patch/net-libs/libproxy/.calculate_directory @@ -0,0 +1 @@ +# Calculate append=skip merge()!= diff --git a/profiles/templates/3.5/6_ac_install_patch/net-libs/libproxy/libproxy-disable-webkit.patch b/profiles/templates/3.5/6_ac_install_patch/net-libs/libproxy/libproxy-disable-webkit.patch new file mode 100644 index 000000000..ecace1d29 --- /dev/null +++ b/profiles/templates/3.5/6_ac_install_patch/net-libs/libproxy/libproxy-disable-webkit.patch @@ -0,0 +1,20 @@ +# Calculate format=diff +diff --git a/libproxy/cmake/modules.cmk b/libproxy/cmake/modules.cmk +index 017d428..7900398 100644 +--- a/libproxy/cmake/modules.cmk ++++ b/libproxy/cmake/modules.cmk +@@ -16,7 +16,6 @@ include(cmake/modules/config_macosx.cmk) + include(cmake/modules/network_networkmanager.cmk) + include(cmake/modules/pacrunner_mozjs.cmk) + include(cmake/modules/pacrunner_natus.cmk) +-include(cmake/modules/pacrunner_webkit.cmk) + + # Build the pacrunner into libproxy unless we are building for multiple engines + set(BIPR 1 CACHE BOOL "Build internal pacrunner? (Always false when building more than one PR") +@@ -41,6 +40,5 @@ px_module(ignore_ip 1 1) + px_module(network_networkmanager "${NM_FOUND}" 0 ${NM_LIBRARIES}) + px_module(pacrunner_mozjs "${MOZJS_FOUND}" ${BIPR} ${MOZJS_LIBRARIES}) + px_module(pacrunner_natus "${NATUS_FOUND}" ${BIPR} ${NATUS_LIBRARIES}) +-px_module(pacrunner_webkit "${WEBKIT_FOUND}" ${BIPR} ${WEBKIT_LIBRARIES}) + px_module(wpad_dns_alias 1 1) + message("") diff --git a/profiles/templates/3.5/6_ac_install_patch/net-misc/.calculate_directory b/profiles/templates/3.5/6_ac_install_patch/net-misc/.calculate_directory new file mode 100644 index 000000000..720d52e47 --- /dev/null +++ b/profiles/templates/3.5/6_ac_install_patch/net-misc/.calculate_directory @@ -0,0 +1 @@ +# Calculate append=skip diff --git a/profiles/templates/3.5/6_ac_install_patch/net-misc/openconnect/.calculate_directory b/profiles/templates/3.5/6_ac_install_patch/net-misc/openconnect/.calculate_directory new file mode 100644 index 000000000..615bc8bdf --- /dev/null +++ b/profiles/templates/3.5/6_ac_install_patch/net-misc/openconnect/.calculate_directory @@ -0,0 +1 @@ +# Calculate append=skip merge()!= diff --git a/profiles/templates/3.5/6_ac_install_patch/net-misc/openconnect/openconnect-disable-lz4.patch b/profiles/templates/3.5/6_ac_install_patch/net-misc/openconnect/openconnect-disable-lz4.patch new file mode 100644 index 000000000..4e310cef8 --- /dev/null +++ b/profiles/templates/3.5/6_ac_install_patch/net-misc/openconnect/openconnect-disable-lz4.patch @@ -0,0 +1,116 @@ +# Calculate format=diff +diff --git a/Makefile b/Makefile +index b389275..6050828 100644 +--- a/Makefile ++++ b/Makefile +@@ -452,9 +452,9 @@ KRB5_CONFIG = + LD = /usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64 + LDFLAGS = -Wl,--as-needed + LIBICONV = +-LIBLZ4_CFLAGS = -I/usr/local/include +-LIBLZ4_LIBS = -L/usr/local/lib -llz4 +-LIBLZ4_PC = liblz4 ++LIBLZ4_CFLAGS = ++LIBLZ4_LIBS = ++LIBLZ4_PC = + LIBOBJS = + LIBP11_CFLAGS = + LIBP11_LIBS = +diff --git a/config.h b/config.h +index eedf4ef..210aea8 100644 +--- a/config.h ++++ b/config.h +@@ -128,7 +128,7 @@ + /* #undef HAVE_LIBSTOKEN */ + + /* LZ4 was found */ +-#define HAVE_LZ4 /**/ ++/* #undef HAVE_LZ4 */ + + /* Define to 1 if you have the header file. */ + #define HAVE_MEMORY_H 1 +diff --git a/po/Makefile b/po/Makefile +index 13c74ed..4ea8c04 100644 +--- a/po/Makefile ++++ b/po/Makefile +@@ -181,9 +181,9 @@ KRB5_CONFIG = + LD = /usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64 + LDFLAGS = -Wl,--as-needed + LIBICONV = +-LIBLZ4_CFLAGS = -I/usr/local/include +-LIBLZ4_LIBS = -L/usr/local/lib -llz4 +-LIBLZ4_PC = liblz4 ++LIBLZ4_CFLAGS = ++LIBLZ4_LIBS = ++LIBLZ4_PC = + LIBOBJS = + LIBP11_CFLAGS = + LIBP11_LIBS = +diff --git a/www/Makefile b/www/Makefile +index b4a810c..dd255db 100644 +--- a/www/Makefile ++++ b/www/Makefile +@@ -271,9 +271,9 @@ KRB5_CONFIG = + LD = /usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64 + LDFLAGS = -Wl,--as-needed + LIBICONV = +-LIBLZ4_CFLAGS = -I/usr/local/include +-LIBLZ4_LIBS = -L/usr/local/lib -llz4 +-LIBLZ4_PC = liblz4 ++LIBLZ4_CFLAGS = ++LIBLZ4_LIBS = ++LIBLZ4_PC = + LIBOBJS = + LIBP11_CFLAGS = + LIBP11_LIBS = +diff --git a/www/images/Makefile b/www/images/Makefile +index 2dd6f7d..797de77 100644 +--- a/www/images/Makefile ++++ b/www/images/Makefile +@@ -210,9 +210,9 @@ KRB5_CONFIG = + LD = /usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64 + LDFLAGS = -Wl,--as-needed + LIBICONV = +-LIBLZ4_CFLAGS = -I/usr/local/include +-LIBLZ4_LIBS = -L/usr/local/lib -llz4 +-LIBLZ4_PC = liblz4 ++LIBLZ4_CFLAGS = ++LIBLZ4_LIBS = ++LIBLZ4_PC = + LIBOBJS = + LIBP11_CFLAGS = + LIBP11_LIBS = +diff --git a/www/inc/Makefile b/www/inc/Makefile +index fb578a7..78272a1 100644 +--- a/www/inc/Makefile ++++ b/www/inc/Makefile +@@ -210,9 +210,9 @@ KRB5_CONFIG = + LD = /usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64 + LDFLAGS = -Wl,--as-needed + LIBICONV = +-LIBLZ4_CFLAGS = -I/usr/local/include +-LIBLZ4_LIBS = -L/usr/local/lib -llz4 +-LIBLZ4_PC = liblz4 ++LIBLZ4_CFLAGS = ++LIBLZ4_LIBS = ++LIBLZ4_PC = + LIBOBJS = + LIBP11_CFLAGS = + LIBP11_LIBS = +diff --git a/www/styles/Makefile b/www/styles/Makefile +index 4b9b0d2..7481564 100644 +--- a/www/styles/Makefile ++++ b/www/styles/Makefile +@@ -210,9 +210,9 @@ KRB5_CONFIG = + LD = /usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64 + LDFLAGS = -Wl,--as-needed + LIBICONV = +-LIBLZ4_CFLAGS = -I/usr/local/include +-LIBLZ4_LIBS = -L/usr/local/lib -llz4 +-LIBLZ4_PC = liblz4 ++LIBLZ4_CFLAGS = ++LIBLZ4_LIBS = ++LIBLZ4_PC = + LIBOBJS = + LIBP11_CFLAGS = + LIBP11_LIBS = diff --git a/profiles/templates/3.5/6_ac_update_sync/revision/91-rebuild_openconnect_libproxy b/profiles/templates/3.5/6_ac_update_sync/revision/91-rebuild_openconnect_libproxy new file mode 100644 index 000000000..b548e2480 --- /dev/null +++ b/profiles/templates/3.5/6_ac_update_sync/revision/91-rebuild_openconnect_libproxy @@ -0,0 +1,21 @@ +# Calculate ini(overlay-calculate.revision)<91 exec=/bin/bash + +#-ini(overlay-calculate.revision,91)-# + +# key is pkg name, value is current version new reduced version split by space +declare -A map_move=( ["net-libs/libproxy"]="0.4.13-r1 0.4.13_rc73" + ["net-misc/openconnect"]="7.07-r2 7.07_rc73" +) + +PKGDB=/var/db/pkg +for pkg in ${!map_move[@]} +do + vers=(${map_move[$pkg]}) + if [[ -d $PKGDB/${pkg}-${vers[0]} ]] + then + cp -a $PKGDB/${pkg}-${vers[0]} $PKGDB/${pkg}-${vers[1]} + rm -rf $PKGDB/${pkg}-${vers[0]} + fi +done + +true