public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Matthias Maier" <tamiko@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-visualization/paraview/, sci-visualization/paraview/files/
Date: Sat,  9 Jul 2016 20:04:03 +0000 (UTC)	[thread overview]
Message-ID: <1468094633.90bf5122ad89011806338beb9817d5f3ed2574e8.tamiko@gentoo> (raw)

commit:     90bf5122ad89011806338beb9817d5f3ed2574e8
Author:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
AuthorDate: Sat Jul  9 20:02:20 2016 +0000
Commit:     Matthias Maier <tamiko <AT> gentoo <DOT> org>
CommitDate: Sat Jul  9 20:03:53 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=90bf5122

sci-visualization/paraview: reinstantiate 4.1.0 to resolve openfoam dep

Package-Manager: portage-2.2.28

 sci-visualization/paraview/Manifest                |   1 +
 .../paraview/files/paraview-4.0.1-Protobuf.patch   |  72 +++
 .../files/paraview-4.0.1-removesqlite.patch        | 517 +++++++++++++++++++++
 .../files/paraview-4.0.1-vtk-cg-path.patch         |  36 ++
 .../files/paraview-4.1.0-glxext-legacy.patch       |   9 +
 .../files/paraview-4.1.0-no-fatal-warnings.patch   |  19 +
 .../files/paraview-4.1.0-vtk-freetype.patch        |  22 +
 .../paraview/paraview-4.1.0-r2.ebuild              | 302 ++++++++++++
 8 files changed, 978 insertions(+)

diff --git a/sci-visualization/paraview/Manifest b/sci-visualization/paraview/Manifest
index 8699b23..1e11e68 100644
--- a/sci-visualization/paraview/Manifest
+++ b/sci-visualization/paraview/Manifest
@@ -1,2 +1,3 @@
+DIST ParaView-v4.1.0-source.tar.gz 50460304 SHA256 80ef898c158d7fd9ceb0bcd83be1f679eef06ce4f20514a2435330cc97a3fdf3 SHA512 da91f7332a91746d60968a9d6cc1fe4878a3710f8e4a3d675dc65c337d6844f39df4c3e307d424ee0d2a832fd3c0f3d0c4da6a8b0a2aa6902920988fb53b9f7f WHIRLPOOL c3572d12f05b8443eb21a342c140d55e3c41e2af383aa850491aaeec412e62a45a4ee44e6d772dc9b6f141028911cb96b22a7818c6f15bc80bb8553d37008d96
 DIST ParaView-v4.4.0-source.tar.gz 58397252 SHA256 c2dc334a89df24ce5233b81b74740fc9f10bc181cd604109fd13f6ad2381fc73 SHA512 092dee4ca75b9f4e3b4a53c85ebc89f406a91f6dd9ac9a3deb65de776189c2582d15c2b1f8f0393ff4d7a438333f8801de22d2cf916b314d8b85d93cc5f4671e WHIRLPOOL 722be36c45563066a2e91e7ea3e382d6928056a38c01920089f6e16a721259e1e8f99b26c982f136f9cfac8f1cb1d9f54ee0267cea79360ace4c00e81a47e61b
 DIST ParaView-v5.1.0.tar.gz 51613148 SHA256 1ce345e9c5533c2854ad7e89cf4f90992bafee23707ae9f85d12b38405169f2a SHA512 c9af27d8be03783c7353735718a41ee03732db0f2e4f6e2db5e1e72d3df01801bb77294713c2b96eaf17e75d1fd6a30e340b3c33f496f7e705d07badfa196e69 WHIRLPOOL 08cd669f02fd54b7fc4054f23f04a3dc274e4ba8ebdf54fb14caaa95bc0c9fb2e2e5551a9e74d88062f2230eb511b7e18d6cb75bb43f4291e19dbaa2ed53cd1f

diff --git a/sci-visualization/paraview/files/paraview-4.0.1-Protobuf.patch b/sci-visualization/paraview/files/paraview-4.0.1-Protobuf.patch
new file mode 100644
index 0000000..6a09a1a
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.0.1-Protobuf.patch
@@ -0,0 +1,72 @@
+http://paraview.org/Bug/view.php?id=13656
+
+diff -up ParaView/ParaViewCore/ServerImplementation/Core/CMakeLists.txt.Protobuf ParaView/ParaViewCore/ServerImplementation/Core/CMakeLists.txt
+--- ParaView/ParaViewCore/ServerImplementation/Core/CMakeLists.txt.Protobuf	2012-11-08 07:51:51.000000000 -0700
++++ ParaView/ParaViewCore/ServerImplementation/Core/CMakeLists.txt	2012-11-13 15:17:53.980027098 -0700
+@@ -81,16 +81,24 @@
+ #------------------------------------------------------------------------------
+ # Generate the protbuf message file.
+ #------------------------------------------------------------------------------
+-get_target_property(PROTOC_LOCATION protoc_compiler LOCATION)
++if (VTK_USE_SYSTEM_PROTOBUF)
++	set (_PROTOC_COMPILER protoc)
++	set (_PROTOC_DEPEND "")
++else()
++	set (_PROTOC_COMPILER protoc_compiler)
++	set (_PROTOC_DEPEND ${_PROTOC_COMPILER})
++endif()
++
++get_target_property(PROTOC_LOCATION ${_PROTOC_COMPILER} LOCATION)
+ add_custom_command(
+     OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/vtkPVMessage.pb.h
+            ${CMAKE_CURRENT_BINARY_DIR}/vtkPVMessage.pb.cc
+     
+-    COMMAND protoc_compiler
++    COMMAND ${_PROTOC_COMPILER}
+            "--cpp_out=dllexport_decl=VTKPVSERVERIMPLEMENTATIONCORE_EXPORT:${CMAKE_CURRENT_BINARY_DIR}"
+            --proto_path "@CMAKE_CURRENT_SOURCE_DIR@"
+            "${CMAKE_CURRENT_SOURCE_DIR}/vtkPVMessage.proto"
+-    DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/vtkPVMessage.proto protoc_compiler
++    DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/vtkPVMessage.proto ${_PROTOC_DEPEND}
+     WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ )
+ 
+@@ -109,5 +117,9 @@
+ vtk_module_library(vtkPVServerImplementationCore
+   ${Module_SRCS})
+ 
++if (VTK_USE_SYSTEM_PROTOBUF)
++	target_link_libraries(vtkPVServerImplementationCore ${CMAKE_THREAD_LIBS_INIT})
++endif()
++
+ add_dependencies(vtkPVServerImplementationCore
+   protobuf_code_generation)
+diff -up ParaView/ThirdParty/protobuf/CMakeLists.txt.Protobuf ParaView/ThirdParty/protobuf/CMakeLists.txt
+--- ParaView/ThirdParty/protobuf/CMakeLists.txt.Protobuf	2012-11-08 07:51:51.000000000 -0700
++++ ParaView/ThirdParty/protobuf/CMakeLists.txt	2012-11-13 15:09:31.526673020 -0700
+@@ -34,7 +34,7 @@
+ set (PROTOBUF_INSTALL_LIB_DIR ${VTK_INSTALL_LIBRARY_DIR})
+ set (PROTOBUF_INSTALL_EXPORT_NAME ${VTK_INSTALL_EXPORT_NAME})
+ 
+-vtk_module_third_party(protobuf
++vtk_module_third_party(Protobuf
+   INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/vtkprotobuf/src
+   LIBRARIES protobuf
+ )
+@@ -42,10 +42,12 @@
+ # protobuf exports it's build-dir targets to a custom file
+ # (PROTOBUF_EXPORTS.cmake). We don't care much about that. We export
+ # build-dir targets ourselves.
+-vtk_target_export(protobuf)
+-vtk_target_export(protobuf-lite)
+-if (NOT CMAKE_CROSSCOMPILING)
+-  vtk_compile_tools_target_export(protoc_compiler)
++if (NOT VTK_USE_SYSTEM_PROTOBUF)
++  vtk_target_export(protobuf)
++  vtk_target_export(protobuf-lite)
++  if (NOT CMAKE_CROSSCOMPILING)
++    vtk_compile_tools_target_export(protoc_compiler)
++  endif()
+ endif()
+ 
+ # All these exports don't add any install rules. However we make protobuf itself

diff --git a/sci-visualization/paraview/files/paraview-4.0.1-removesqlite.patch b/sci-visualization/paraview/files/paraview-4.0.1-removesqlite.patch
new file mode 100644
index 0000000..be495b4
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.0.1-removesqlite.patch
@@ -0,0 +1,517 @@
+Description: Import patch from VTK to remove sqlite
+Author: Mathieu Malaterre <mathieu.malaterre@gmail.com>
+Last-Update: Mon Feb 11 14:58:03 UTC 2013
+
+remove the internal copy of sqlite (vtksqlite)
+http://patch-tracker.debian.org/patch/series/view/paraview/3.14.1-7/removesqlite.patch
+
+--- VTK/IO/SQL/vtkSQLiteDatabase.cxx
++++ VTK/IO/SQL/vtkSQLiteDatabase.cxx
+@@ -29,7 +29,7 @@
+ #include <vtksys/ios/fstream>
+ #include <vtksys/ios/sstream>
+ 
+-#include <vtksqlite/vtk_sqlite3.h>
++#include <sqlite3.h>
+ 
+ vtkStandardNewMacro(vtkSQLiteDatabase);
+ 
+@@ -307,15 +307,15 @@
+       }
+     }
+ 
+-  int result = vtk_sqlite3_open(this->DatabaseFileName, & (this->SQLiteInstance));
++  int result = sqlite3_open(this->DatabaseFileName, & (this->SQLiteInstance));
+ 
+-  if (result != VTK_SQLITE_OK)
++  if (result != SQLITE_OK)
+     {
+     vtkDebugMacro(<<"SQLite open() failed.  Error code is "
+                   << result << " and message is "
+-                  << vtk_sqlite3_errmsg(this->SQLiteInstance) );
++                  << sqlite3_errmsg(this->SQLiteInstance) );
+ 
+-    vtk_sqlite3_close(this->SQLiteInstance);
++    sqlite3_close(this->SQLiteInstance);
+     return false;
+     }
+   else
+@@ -334,8 +334,8 @@
+     }
+   else
+     {
+-    int result = vtk_sqlite3_close(this->SQLiteInstance);
+-    if (result != VTK_SQLITE_OK)
++    int result = sqlite3_close(this->SQLiteInstance);
++    if (result != SQLITE_OK)
+       {
+       vtkWarningMacro(<< "Close(): SQLite returned result code " << result);
+       }
+@@ -374,7 +374,7 @@
+   if (!status)
+     {
+     vtkErrorMacro(<< "GetTables(): Database returned error: "
+-                  << vtk_sqlite3_errmsg(this->SQLiteInstance) );
++                  << sqlite3_errmsg(this->SQLiteInstance) );
+     query->Delete();
+     return this->Tables;
+     }
+@@ -403,7 +403,7 @@
+   if (!status)
+     {
+     vtkErrorMacro(<< "GetRecord(" << table << "): Database returned error: "
+-                  << vtk_sqlite3_errmsg(this->SQLiteInstance) );
++                  << sqlite3_errmsg(this->SQLiteInstance) );
+     query->Delete();
+     return NULL;
+     }
+@@ -467,10 +467,10 @@
+ // ----------------------------------------------------------------------
+ bool vtkSQLiteDatabase::HasError()
+ {
+-  return (vtk_sqlite3_errcode(this->SQLiteInstance)!=VTK_SQLITE_OK);
++  return (sqlite3_errcode(this->SQLiteInstance)!=SQLITE_OK);
+ }
+ 
+ const char* vtkSQLiteDatabase::GetLastErrorText()
+ {
+-  return vtk_sqlite3_errmsg(this->SQLiteInstance);
++  return sqlite3_errmsg(this->SQLiteInstance);
+ }
+--- VTK/IO/SQL/vtkSQLiteQuery.cxx
++++ VTK/IO/SQL/vtkSQLiteQuery.cxx
+@@ -25,7 +25,7 @@
+ #include "vtkVariant.h"
+ #include "vtkVariantArray.h"
+ 
+-#include <vtksqlite/vtk_sqlite3.h>
++#include <sqlite3.h>
+ 
+ #include <assert.h>
+ 
+@@ -43,7 +43,7 @@
+ {
+   this->Statement = NULL;
+   this->InitialFetch = true;
+-  this->InitialFetchResult=VTK_SQLITE_DONE;
++  this->InitialFetchResult=SQLITE_DONE;
+   this->LastErrorText = NULL;
+   this->TransactionInProgress = false;
+ }
+@@ -61,7 +61,7 @@
+     {
+     if (this->Database != NULL)
+       {
+-      vtk_sqlite3_finalize(this->Statement);
++      sqlite3_finalize(this->Statement);
+       this->Statement = NULL;
+       }
+     }
+@@ -131,8 +131,8 @@
+   if (this->Statement)
+     {
+     vtkDebugMacro(<<"Finalizing old statement");
+-    int finalizeStatus = vtk_sqlite3_finalize(this->Statement);
+-    if (finalizeStatus != VTK_SQLITE_OK)
++    int finalizeStatus = sqlite3_finalize(this->Statement);
++    if (finalizeStatus != SQLITE_OK)
+       {
+       vtkWarningMacro(<<"SetQuery(): Finalize returned unexpected code "
+                       << finalizeStatus);
+@@ -151,19 +151,19 @@
+       return false;
+       }
+ 
+-    vtk_sqlite3 *db = dbContainer->SQLiteInstance;
++    sqlite3 *db = dbContainer->SQLiteInstance;
+     const char *unused_statement;
+ 
+-    int prepareStatus = vtk_sqlite3_prepare_v2(db,
++    int prepareStatus = sqlite3_prepare_v2(db,
+                                                this->Query,
+                                                static_cast<int>(strlen(this->Query)),
+                                                &this->Statement,
+                                                &unused_statement);
+ 
+-    if (prepareStatus != VTK_SQLITE_OK)
++    if (prepareStatus != SQLITE_OK)
+       {
+-      this->SetLastErrorText(vtk_sqlite3_errmsg(db));
+-      vtkWarningMacro(<<"SetQuery(): vtk_sqlite3_prepare_v2() failed with error message "
++      this->SetLastErrorText(sqlite3_errmsg(db));
++      vtkWarningMacro(<<"SetQuery(): sqlite3_prepare_v2() failed with error message "
+                     << this->GetLastErrorText()
+                     << " on statement: '"
+                     << this->Query << "'");
+@@ -194,31 +194,31 @@
+     }
+   else
+     {
+-    vtk_sqlite3_reset(this->Statement);
++    sqlite3_reset(this->Statement);
+     }
+ 
+   vtkDebugMacro(<<"Execute(): Query ready to execute.");
+ 
+   this->InitialFetch = true;
+-  int result = vtk_sqlite3_step(this->Statement);
++  int result = sqlite3_step(this->Statement);
+   this->InitialFetchResult = result;
+ 
+-  if (result == VTK_SQLITE_DONE)
++  if (result == SQLITE_DONE)
+     {
+     this->SetLastErrorText(NULL);
+     this->Active = true;
+     return true;
+     }
+-  else if (result != VTK_SQLITE_ROW)
++  else if (result != SQLITE_ROW)
+     {
+     vtkSQLiteDatabase *dbContainer =
+       vtkSQLiteDatabase::SafeDownCast(this->Database);
+     assert(dbContainer != NULL);
+ 
+-    vtk_sqlite3 *db = dbContainer->SQLiteInstance;
++    sqlite3 *db = dbContainer->SQLiteInstance;
+ 
+-    this->SetLastErrorText(vtk_sqlite3_errmsg(db));
+-    vtkDebugMacro(<< "Execute(): vtk_sqlite3_step() returned error message "
++    this->SetLastErrorText(sqlite3_errmsg(db));
++    vtkDebugMacro(<< "Execute(): sqlite3_step() returned error message "
+                   << this->GetLastErrorText());
+     this->Active = false;
+     return false;
+@@ -239,7 +239,7 @@
+     }
+   else
+     {
+-    return vtk_sqlite3_column_count(this->Statement);
++    return sqlite3_column_count(this->Statement);
+     }
+ }
+ 
+@@ -259,7 +259,7 @@
+     }
+   else
+     {
+-    return vtk_sqlite3_column_name(this->Statement, column);
++    return sqlite3_column_name(this->Statement, column);
+     }
+ }
+ 
+@@ -279,22 +279,22 @@
+     }
+   else
+     {
+-    switch (vtk_sqlite3_column_type(this->Statement, column))
++    switch (sqlite3_column_type(this->Statement, column))
+       {
+-      case VTK_SQLITE_INTEGER:
++      case SQLITE_INTEGER:
+         return VTK_INT;
+-      case VTK_SQLITE_FLOAT:
++      case SQLITE_FLOAT:
+         return VTK_FLOAT;
+-      case VTK_SQLITE_TEXT:
++      case SQLITE_TEXT:
+         return VTK_STRING;
+-      case VTK_SQLITE_BLOB:
++      case SQLITE_BLOB:
+         return VTK_STRING; // until we have a BLOB type of our own
+-      case VTK_SQLITE_NULL:
++      case SQLITE_NULL:
+         return VTK_VOID; // ??? what makes sense here?
+       default:
+       {
+       vtkErrorMacro(<<"GetFieldType(): Unknown data type "
+-                    << vtk_sqlite3_column_type(this->Statement, column)
++                    << sqlite3_column_type(this->Statement, column)
+                     <<" from SQLite.");
+       return VTK_VOID;
+       }
+@@ -315,7 +315,7 @@
+     {
+     vtkDebugMacro(<<"NextRow(): Initial fetch being handled.");
+     this->InitialFetch = false;
+-    if (this->InitialFetchResult == VTK_SQLITE_DONE)
++    if (this->InitialFetchResult == SQLITE_DONE)
+       {
+       return false;
+       }
+@@ -326,12 +326,12 @@
+     }
+   else
+     {
+-    int result = vtk_sqlite3_step(this->Statement);
+-    if (result == VTK_SQLITE_DONE)
++    int result = sqlite3_step(this->Statement);
++    if (result == SQLITE_DONE)
+       {
+       return false;
+       }
+-    else if (result == VTK_SQLITE_ROW)
++    else if (result == SQLITE_ROW)
+       {
+       return true;
+       }
+@@ -339,8 +339,8 @@
+       {
+       vtkSQLiteDatabase *dbContainer = vtkSQLiteDatabase::SafeDownCast( this->Database );
+       assert(dbContainer != NULL);
+-      vtk_sqlite3 *db = dbContainer->SQLiteInstance;
+-      this->SetLastErrorText(vtk_sqlite3_errmsg(db));
++      sqlite3 *db = dbContainer->SQLiteInstance;
++      this->SetLastErrorText(sqlite3_errmsg(db));
+       vtkErrorMacro(<<"NextRow(): Database returned error code "
+                     << result << " with the following message: "
+                     << this->GetLastErrorText());
+@@ -366,33 +366,33 @@
+     }
+   else
+     {
+-    switch (vtk_sqlite3_column_type(this->Statement, column))
++    switch (sqlite3_column_type(this->Statement, column))
+       {
+-      case VTK_SQLITE_INTEGER:
+-        return vtkVariant(vtk_sqlite3_column_int(this->Statement, column));
++      case SQLITE_INTEGER:
++        return vtkVariant(sqlite3_column_int(this->Statement, column));
+ 
+-      case VTK_SQLITE_FLOAT:
+-        return vtkVariant(vtk_sqlite3_column_double(this->Statement, column));
++      case SQLITE_FLOAT:
++        return vtkVariant(sqlite3_column_double(this->Statement, column));
+ 
+-      case VTK_SQLITE_TEXT:
++      case SQLITE_TEXT:
+       {
+       vtksys_ios::ostringstream str;
+-      str << vtk_sqlite3_column_text(this->Statement, column);
++      str << sqlite3_column_text(this->Statement, column);
+       return vtkVariant(vtkStdString(str.str()));
+       }
+ 
+-      case VTK_SQLITE_BLOB:
++      case SQLITE_BLOB:
+       {
+       // This is a hack ... by passing the BLOB to vtkStdString with an explicit
+       // byte count, we ensure that the string will store all of the BLOB's bytes,
+       // even if there are NULL values.
+ 
+       return vtkVariant(vtkStdString(
+-        static_cast<const char*>(vtk_sqlite3_column_blob(this->Statement, column)),
+-        vtk_sqlite3_column_bytes(this->Statement, column)));
++        static_cast<const char*>(sqlite3_column_blob(this->Statement, column)),
++        sqlite3_column_bytes(this->Statement, column)));
+       }
+ 
+-      case VTK_SQLITE_NULL:
++      case SQLITE_NULL:
+       default:
+         return vtkVariant();
+       }
+@@ -423,11 +423,11 @@
+   vtkSQLiteDatabase *dbContainer = vtkSQLiteDatabase::SafeDownCast( this->Database );
+   assert(dbContainer != NULL);
+ 
+-  vtk_sqlite3 *db = dbContainer->SQLiteInstance;
++  sqlite3 *db = dbContainer->SQLiteInstance;
+   char *errorMessage = NULL;
+-  int result = vtk_sqlite3_exec(db, BEGIN_TRANSACTION, NULL, NULL, &errorMessage);
++  int result = sqlite3_exec(db, BEGIN_TRANSACTION, NULL, NULL, &errorMessage);
+ 
+-  if (result == VTK_SQLITE_OK)
++  if (result == SQLITE_OK)
+     {
+     this->TransactionInProgress = true;
+     this->SetLastErrorText(NULL);
+@@ -451,7 +451,7 @@
+ {
+   if (this->Statement)
+     {
+-    vtk_sqlite3_finalize(this->Statement);
++    sqlite3_finalize(this->Statement);
+     this->Statement = NULL;
+     }
+ 
+@@ -463,11 +463,11 @@
+ 
+   vtkSQLiteDatabase *dbContainer = vtkSQLiteDatabase::SafeDownCast( this->Database );
+   assert(dbContainer != NULL);
+-  vtk_sqlite3 *db = dbContainer->SQLiteInstance;
++  sqlite3 *db = dbContainer->SQLiteInstance;
+   char *errorMessage = NULL;
+-  int result = vtk_sqlite3_exec(db, COMMIT_TRANSACTION, NULL, NULL, &errorMessage);
++  int result = sqlite3_exec(db, COMMIT_TRANSACTION, NULL, NULL, &errorMessage);
+ 
+-  if (result == VTK_SQLITE_OK)
++  if (result == SQLITE_OK)
+     {
+     this->TransactionInProgress = false;
+     this->SetLastErrorText(NULL);
+@@ -499,11 +499,11 @@
+ 
+   vtkSQLiteDatabase *dbContainer = vtkSQLiteDatabase::SafeDownCast( this->Database );
+   assert(dbContainer != NULL);
+-  vtk_sqlite3 *db = dbContainer->SQLiteInstance;
++  sqlite3 *db = dbContainer->SQLiteInstance;
+   char *errorMessage = NULL;
+-  int result = vtk_sqlite3_exec(db, ROLLBACK_TRANSACTION, NULL, NULL, &errorMessage);
++  int result = sqlite3_exec(db, ROLLBACK_TRANSACTION, NULL, NULL, &errorMessage);
+ 
+-  if (result == VTK_SQLITE_OK)
++  if (result == SQLITE_OK)
+     {
+     this->TransactionInProgress = false;
+     this->SetLastErrorText(NULL);
+@@ -647,11 +647,11 @@
+   if (this->Active)
+     {
+     this->Active = false;
+-    vtk_sqlite3_reset(this->Statement);
++    sqlite3_reset(this->Statement);
+     }
+-  int status = vtk_sqlite3_bind_int(this->Statement, index+1, value);
++  int status = sqlite3_bind_int(this->Statement, index+1, value);
+ 
+-  if (status != VTK_SQLITE_OK)
++  if (status != SQLITE_OK)
+     {
+     vtksys_ios::ostringstream errormessage;
+     errormessage << "sqlite_bind_int returned error: " << status;
+@@ -676,11 +676,11 @@
+   if (this->Active)
+     {
+     this->Active = false;
+-    vtk_sqlite3_reset(this->Statement);
++    sqlite3_reset(this->Statement);
+     }
+-  int status = vtk_sqlite3_bind_int(this->Statement, index+1, static_cast<vtk_sqlite_int64>(value));
++  int status = sqlite3_bind_int(this->Statement, index+1, static_cast<sqlite_int64>(value));
+ 
+-  if (status != VTK_SQLITE_OK)
++  if (status != SQLITE_OK)
+     {
+     vtksys_ios::ostringstream errormessage;
+     errormessage << "sqlite_bind_int64 returned error: " << status;
+@@ -705,12 +705,12 @@
+   if (this->Active)
+     {
+     this->Active = false;
+-    vtk_sqlite3_reset(this->Statement);
++    sqlite3_reset(this->Statement);
+     }
+ 
+-  int status = vtk_sqlite3_bind_double(this->Statement, index+1, value);
++  int status = sqlite3_bind_double(this->Statement, index+1, value);
+ 
+-  if (status != VTK_SQLITE_OK)
++  if (status != SQLITE_OK)
+     {
+     vtksys_ios::ostringstream errormessage;
+     errormessage << "sqlite_bind_double returned error: " << status;
+@@ -734,12 +734,12 @@
+   if (this->Active)
+     {
+     this->Active = false;
+-    vtk_sqlite3_reset(this->Statement);
++    sqlite3_reset(this->Statement);
+     }
+ 
+-  int status = vtk_sqlite3_bind_text(this->Statement, index+1, value, length, VTK_SQLITE_TRANSIENT);
++  int status = sqlite3_bind_text(this->Statement, index+1, value, length, SQLITE_TRANSIENT);
+ 
+-  if (status != VTK_SQLITE_OK)
++  if (status != SQLITE_OK)
+     {
+     vtksys_ios::ostringstream errormessage;
+     errormessage << "sqlite_bind_text returned error: " << status;
+@@ -763,17 +763,17 @@
+   if (this->Active)
+     {
+     this->Active = false;
+-    vtk_sqlite3_reset(this->Statement);
++    sqlite3_reset(this->Statement);
+     }
+ 
+   int status =
+-    vtk_sqlite3_bind_blob(this->Statement,
++    sqlite3_bind_blob(this->Statement,
+                           index+1,
+                           data,
+                           length,
+-                          VTK_SQLITE_TRANSIENT);
++                          SQLITE_TRANSIENT);
+ 
+-  if (status != VTK_SQLITE_OK)
++  if (status != SQLITE_OK)
+     {
+     vtksys_ios::ostringstream errormessage;
+     errormessage << "sqlite_bind_blob returned error: " << status;
+@@ -797,12 +797,12 @@
+   if (this->Active)
+     {
+     this->Active = false;
+-    vtk_sqlite3_reset(this->Statement);
++    sqlite3_reset(this->Statement);
+     }
+ 
+-  int status = vtk_sqlite3_clear_bindings(this->Statement);
++  int status = sqlite3_clear_bindings(this->Statement);
+ 
+-  if (status != VTK_SQLITE_OK)
++  if (status != SQLITE_OK)
+     {
+     vtksys_ios::ostringstream errormessage;
+     errormessage << "sqlite_clear_bindings returned error: " << status;
+--- VTK/IO/SQL/vtkSQLiteDatabase.h
++++ VTK/IO/SQL/vtkSQLiteDatabase.h
+@@ -49,7 +49,7 @@
+ class vtkSQLQuery;
+ class vtkSQLiteQuery;
+ class vtkStringArray;
+-struct vtk_sqlite3;
++struct sqlite3;
+ 
+ class VTKIOSQL_EXPORT vtkSQLiteDatabase : public vtkSQLDatabase
+ {
+@@ -147,7 +147,7 @@
+   virtual bool ParseURL(const char* url);
+ 
+ private:
+-  vtk_sqlite3 *SQLiteInstance;
++  sqlite3 *SQLiteInstance;
+ 
+   // We want this to be private, a user of this class
+   // should not be setting this for any reason
+--- VTK/IO/SQL/vtkSQLiteQuery.h
++++ VTK/IO/SQL/vtkSQLiteQuery.h
+@@ -47,7 +47,7 @@
+ class vtkSQLiteDatabase;
+ class vtkVariant;
+ class vtkVariantArray;
+-struct vtk_sqlite3_stmt;
++struct sqlite3_stmt;
+ 
+ class VTKIOSQL_EXPORT vtkSQLiteQuery : public vtkSQLQuery
+ {
+@@ -155,7 +155,7 @@
+   vtkSQLiteQuery(const vtkSQLiteQuery &); // Not implemented.
+   void operator=(const vtkSQLiteQuery &); // Not implemented.
+ 
+-  vtk_sqlite3_stmt *Statement;
++  sqlite3_stmt *Statement;
+   bool InitialFetch;
+   int InitialFetchResult;
+   char *LastErrorText;
+--- VTK/ThirdParty/sqlite/CMakeLists.txt
++++ VTK/ThirdParty/sqlite/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-set(vtksqlite_THIRD_PARTY 1)
+-set(vtksqlite_LIBRARIES vtksqlite)
++#set(vtksqlite_THIRD_PARTY 1)
++set(vtksqlite_LIBRARIES sqlite3)
+ vtk_module_export_info()
+-add_subdirectory(vtksqlite)
++#add_subdirectory(vtksqlite)

diff --git a/sci-visualization/paraview/files/paraview-4.0.1-vtk-cg-path.patch b/sci-visualization/paraview/files/paraview-4.0.1-vtk-cg-path.patch
new file mode 100644
index 0000000..58ddde9
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.0.1-vtk-cg-path.patch
@@ -0,0 +1,36 @@
+--- ParaView-3.98.0-src/VTK/CMake/FindCg.cmake
++++ ParaView-3.98.0-src/VTK/CMake/FindCg.cmake
+@@ -82,6 +82,7 @@
+     FIND_PROGRAM( CG_COMPILER cgc
+       /usr/bin
+       /usr/local/bin
++      /opt/nvidia-cg-toolkit/bin
+       DOC "The Cg Compiler"
+       )
+     GET_FILENAME_COMPONENT(CG_COMPILER_DIR "${CG_COMPILER}" PATH)
+@@ -89,6 +90,7 @@
+     FIND_PATH( CG_INCLUDE_PATH Cg/cg.h
+       /usr/include
+       /usr/local/include
++      /opt/nvidia-cg-toolkit/include
+       ${CG_COMPILER_SUPER_DIR}/include
+       DOC "The directory where Cg/cg.h resides"
+       )
+@@ -98,6 +100,8 @@
+       /usr/lib
+       /usr/local/lib64
+       /usr/local/lib
++      /opt/nvidia-cg-toolkit/lib64
++      /opt/nvidia-cg-toolkit/lib
+       ${CG_COMPILER_SUPER_DIR}/lib64
+       ${CG_COMPILER_SUPER_DIR}/lib
+       DOC "The Cg runtime library"
+@@ -108,6 +112,8 @@
+       /usr/lib
+       /usr/local/lib64
+       /usr/local/lib
++      /opt/nvidia-cg-toolkit/lib64
++      /opt/nvidia-cg-toolkit/lib
+       ${CG_COMPILER_SUPER_DIR}/lib64
+       ${CG_COMPILER_SUPER_DIR}/lib
+       DOC "The Cg runtime library"

diff --git a/sci-visualization/paraview/files/paraview-4.1.0-glxext-legacy.patch b/sci-visualization/paraview/files/paraview-4.1.0-glxext-legacy.patch
new file mode 100644
index 0000000..65a5b20
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.1.0-glxext-legacy.patch
@@ -0,0 +1,9 @@
+--- a/ParaView-v4.1.0/VTK/Rendering/OpenGL/vtkXOpenGLRenderWindow.cxx_orig	2014-01-11 15:02:10.000000000 +0100
++++ b/ParaView-v4.1.0/VTK/Rendering/OpenGL/vtkXOpenGLRenderWindow.cxx	2014-11-11 13:12:25.000000000 +0100
+@@ -28,5 +28,5 @@
+ // define GLX_GLXEXT_LEGACY to prevent glx.h to include glxext.h provided by
+ // the system
+-//#define GLX_GLXEXT_LEGACY
++#define GLX_GLXEXT_LEGACY
+ #include "GL/glx.h"
+ 

diff --git a/sci-visualization/paraview/files/paraview-4.1.0-no-fatal-warnings.patch b/sci-visualization/paraview/files/paraview-4.1.0-no-fatal-warnings.patch
new file mode 100644
index 0000000..531be2f
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.1.0-no-fatal-warnings.patch
@@ -0,0 +1,19 @@
+diff --git a/VTK/CMake/vtkCompilerExtras.cmake b/VTK/CMake/vtkCompilerExtras.cmake
+index 05b2db9..48d9395 100644
+--- a/VTK/CMake/vtkCompilerExtras.cmake
++++ b/VTK/CMake/vtkCompilerExtras.cmake
+@@ -15,11 +15,11 @@ if(CMAKE_COMPILER_IS_GNUCXX)
+   # If we are compiling on Linux then set some extra linker flags too
+   if(CMAKE_SYSTEM_NAME MATCHES Linux)
+     set(CMAKE_SHARED_LINKER_FLAGS
+-      "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
++      "-Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
+     set(CMAKE_MODULE_LINKER_FLAGS
+-      "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
++      "-Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
+     set (CMAKE_EXE_LINKER_FLAGS
+-      "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
++      "-Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
+   endif()
+ 
+   # Now check if we can use visibility to selectively export symbols

diff --git a/sci-visualization/paraview/files/paraview-4.1.0-vtk-freetype.patch b/sci-visualization/paraview/files/paraview-4.1.0-vtk-freetype.patch
new file mode 100644
index 0000000..b7d3e40
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.1.0-vtk-freetype.patch
@@ -0,0 +1,22 @@
+--- a/ParaView-v4.2.0-source/VTK/Rendering/FreeType/vtkFreeTypeTools.cxx_orig	2014-12-23 09:25:35.000000000 +0100
++++ b/ParaView-v4.2.0-source/VTK/Rendering/FreeType/vtkFreeTypeTools.cxx	2014-12-24 09:40:31.886953389 +0100
+@@ -1185,7 +1185,7 @@
+     if (bitmap)
+       {
+       metaData.ascent = std::max(bitmapGlyph->top - 1, metaData.ascent);
+-      metaData.descent = std::min(-(bitmap->rows - (bitmapGlyph->top - 1)),
++      metaData.descent = std::min(-(static_cast<int>(bitmap->rows) - (bitmapGlyph->top - 1)),
+                                   metaData.descent);
+       }
+     ++heightString;
+@@ -1952,8 +1952,8 @@
+     if (bitmap)
+       {
+       bbox[0] = std::min(bbox[0], pen[0] + bitmapGlyph->left);
+-      bbox[1] = std::max(bbox[1], pen[0] + bitmapGlyph->left + bitmap->width);
+-      bbox[2] = std::min(bbox[2], pen[1] + bitmapGlyph->top - 1 - bitmap->rows);
++      bbox[1] = std::max(bbox[1], pen[0] + bitmapGlyph->left + static_cast<int>(bitmap->width));
++      bbox[2] = std::min(bbox[2], pen[1] + bitmapGlyph->top - 1 - static_cast<int>(bitmap->rows));
+       bbox[3] = std::max(bbox[3], pen[1] + bitmapGlyph->top - 1);
+       }
+     else

diff --git a/sci-visualization/paraview/paraview-4.1.0-r2.ebuild b/sci-visualization/paraview/paraview-4.1.0-r2.ebuild
new file mode 100644
index 0000000..5745716
--- /dev/null
+++ b/sci-visualization/paraview/paraview-4.1.0-r2.ebuild
@@ -0,0 +1,302 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+inherit eutils multilib versionator python-single-r1 cmake-utils
+
+MAIN_PV=$(get_major_version)
+MAJOR_PV=$(get_version_component_range 1-2)
+MY_P="ParaView-v${PV}-source"
+
+DESCRIPTION="ParaView is a powerful scientific data visualization application"
+HOMEPAGE="http://www.paraview.org"
+SRC_URI="http://www.paraview.org/files/v${MAJOR_PV}/${MY_P}.tar.gz"
+RESTRICT="mirror"
+
+LICENSE="paraview GPL-2"
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+IUSE="boost cg coprocessing development doc examples ffmpeg mpi mysql nvcontrol plugins python qt4 sqlite tcl test tk"
+RESTRICT="test"
+
+REQUIRED_USE="python? ( mpi ${PYTHON_REQUIRED_USE} )
+	mysql? ( sqlite )" # "vtksqlite, needed by vtkIOSQL" and "vtkIOSQL, needed by vtkIOMySQL"
+
+RDEPEND="
+	dev-libs/expat
+	dev-libs/jsoncpp
+	dev-libs/libxml2:2
+	<dev-libs/protobuf-2.6
+	media-libs/freetype
+	media-libs/libpng:0
+	media-libs/libtheora
+	media-libs/tiff:0=
+	sci-libs/hdf5[mpi=]
+	>=sci-libs/netcdf-4.2[hdf5]
+	>=sci-libs/netcdf-cxx-4.2:3
+	sys-libs/zlib
+	virtual/jpeg:0
+	virtual/opengl
+	>=x11-libs/gl2ps-1.3.8
+	x11-libs/libX11
+	x11-libs/libXext
+	x11-libs/libXmu
+	x11-libs/libXt
+	boost? ( >=dev-libs/boost-1.40.0[mpi?,${PYTHON_USEDEP}] )
+	coprocessing? (
+		plugins? (
+			dev-python/PyQt4
+			dev-qt/qtgui:4
+		)
+	)
+	ffmpeg? ( virtual/ffmpeg )
+	mpi? ( virtual/mpi[cxx,romio] )
+	mysql? ( virtual/mysql )
+	python? (
+		${PYTHON_DEPS}
+		dev-python/matplotlib[${PYTHON_USEDEP}]
+		dev-python/numpy[${PYTHON_USEDEP}]
+		dev-python/sip[${PYTHON_USEDEP}]
+		dev-python/twisted-core[${PYTHON_USEDEP}]
+		dev-python/zope-interface[${PYTHON_USEDEP}]
+		mpi? ( dev-python/mpi4py[${PYTHON_USEDEP}] )
+		qt4? ( dev-python/PyQt4[opengl,webkit,${PYTHON_USEDEP}] )
+	)
+	qt4? (
+		dev-qt/designer:4
+		dev-qt/qtgui:4
+		dev-qt/qtopengl:4
+		dev-qt/qthelp:4[compat]
+		dev-qt/qtsql:4
+		dev-qt/qtwebkit:4
+	)
+	sqlite? ( dev-db/sqlite:3 )
+	tcl? ( dev-lang/tcl:0= )
+	tk? ( dev-lang/tk:0= )"
+DEPEND="${RDEPEND}
+	doc? ( app-doc/doxygen )"
+
+S=${WORKDIR}/${MY_P%-source}
+
+pkg_setup() {
+	python-single-r1_pkg_setup
+	PVLIBDIR=$(get_libdir)/${PN}-${MAJOR_PV}
+}
+
+src_prepare() {
+	# see patch headers for description
+	epatch "${FILESDIR}"/${PN}-4.0.1-xdmf-cstring.patch \
+		"${FILESDIR}"/${PN}-4.0.1-removesqlite.patch \
+		"${FILESDIR}"/${PN}-4.0.1-gcc-4.7.patch \
+		"${FILESDIR}"/${PN}-4.0.1-vtk-cg-path.patch \
+		"${FILESDIR}"/${PN}-4.0.1-Protobuf.patch \
+		"${FILESDIR}"/${P}-glxext-legacy.patch \
+		"${FILESDIR}"/${P}-no-fatal-warnings.patch \
+		"${FILESDIR}"/${P}-vtk-freetype.patch
+
+	# lib64 fixes
+	sed -i \
+		-e "s:/usr/lib:${EPREFIX}/usr/$(get_libdir):g" \
+		 VTK/ThirdParty/xdmf2/vtkxdmf2/libsrc/CMakeLists.txt || die
+	sed -i \
+		-e "s:\/lib\/python:\/$(get_libdir)\/python:g" \
+		 VTK/ThirdParty/xdmf2/vtkxdmf2/CMake/setup_install_paths.py || die
+	sed -i \
+		-e "s:lib/paraview-:$(get_libdir)/paraview-:g" \
+		CMakeLists.txt \
+		Plugins/SciberQuestToolKit/CMakeLists.txt \
+		ParaViewConfig.cmake.in \
+		CoProcessing/PythonCatalyst/vtkCPPythonScriptPipeline.cxx \
+		ParaViewCore/ClientServerCore/Core/vtkProcessModuleInitializePython.h \
+		ParaViewCore/ClientServerCore/Core/vtkPVPluginTracker.cxx \
+		Plugins/SciberQuestToolKit/ParaViewPlugin/CMakeLists.txt \
+		Plugins/SciberQuestToolKit/SciberQuest/CMakeLists.txt || die
+
+	# no proper switch
+	use nvcontrol || {
+		sed -i \
+			-e '/VTK_USE_NVCONTROL/s#1#0#' \
+			VTK/Rendering/OpenGL/CMakeLists.txt || die
+	}
+}
+
+src_configure() {
+	local mysql_lib mysql_includedir
+
+	if use mysql ; then
+		if [[ $(mysql_config --version | sed 's/\.//g') -lt 5529 ]] ; then
+			mysql_lib="/usr/$(get_libdir)/mysql/libmysqlclient.so"
+			mysql_includedir="/usr/include/mysql"
+		else
+			mysql_lib="$(mysql_config --variable=pkglibdir)/libmysqlclient.so"
+			mysql_includedir="$(mysql_config --variable=pkgincludedir)"
+		fi
+	fi
+
+	# TODO: use system jsoncpp
+	# VTK_USE_SYSTEM_QTTESTING
+	# PARAVIEW_USE_SYSTEM_AUTOBAHN
+	local mycmakeargs=(
+		-DPV_INSTALL_LIB_DIR="${PVLIBDIR}"
+		-DCMAKE_INSTALL_PREFIX="${EPREFIX}"/usr
+		-DEXPAT_INCLUDE_DIR="${EPREFIX}"/usr/include
+		-DEXPAT_LIBRARY="${EPREFIX}"/usr/$(get_libdir)/libexpat.so
+		-DOPENGL_gl_LIBRARY="${EPREFIX}"/usr/$(get_libdir)/libGL.so
+		-DOPENGL_glu_LIBRARY="${EPREFIX}"/usr/$(get_libdir)/libGLU.so
+		-DBUILD_SHARED_LIBS=ON
+		-DVTK_USE_SYSTEM_EXPAT=ON
+		-DVTK_USE_SYSTEM_FREETYPE=ON
+		-DVTK_USE_SYSTEM_GL2PS=ON
+		-DVTK_USE_SYSTEM_HDF5=ON
+		-DVTK_USE_SYSTEM_JPEG=ON
+		-DVTK_USE_SYSTEM_JSONCPP=ON
+		-DVTK_USE_SYSTEM_LIBXML2=ON
+		-DVTK_USE_SYSTEM_NETCDF=ON
+		-DVTK_USE_SYSTEM_OGGTHEORA=ON
+		-DVTK_USE_SYSTEM_PNG=ON
+		-DVTK_USE_SYSTEM_PROTOBUF=ON
+		-DVTK_USE_SYSTEM_TIFF=ON
+		-DVTK_USE_SYSTEM_XDMF2=OFF
+		-DVTK_USE_SYSTEM_ZLIB=ON
+		-DPARAVIEW_USE_SYSTEM_MPI4PY=ON
+		-DVTK_USE_SYSTEM_ZOPE=ON
+		-DVTK_USE_SYSTEM_TWISTED=ON
+		-DCMAKE_VERBOSE_MAKEFILE=ON
+		-DCMAKE_COLOR_MAKEFILE=TRUE
+		-DVTK_USE_OFFSCREEN=TRUE
+		-DCMAKE_USE_PTHREADS=ON
+		-DVTK_USE_FFMPEG_ENCODER=OFF
+		-DPROTOC_LOCATION=$(type -P protoc)
+		-DVTK_Group_StandAlone=ON
+		-DMYSQL_INCLUDE_DIRECTORIES="$(usex mysql "${mysql_includedir}" "")"
+		-DMYSQL_LIBRARY="$(usex mysql "${mysql_lib}" "")"
+		# force this module due to incorrect build system deps
+		# wrt bug 460528
+		-DModule_vtkUtilitiesProcessXML=ON
+		)
+
+	# TODO: XDMF_USE_MYSQL?
+	# VTK_WRAP_JAVA
+	mycmakeargs+=(
+		$(cmake-utils_use development PARAVIEW_INSTALL_DEVELOPMENT_FILES)
+		$(cmake-utils_use qt4 PARAVIEW_BUILD_QT_GUI)
+		$(cmake-utils_use qt4 Module_vtkGUISupportQtOpenGL)
+		$(cmake-utils_use qt4 Module_vtkGUISupportQtSQL)
+		$(cmake-utils_use qt4 Module_vtkGUISupportQtWebkit)
+		$(cmake-utils_use qt4 Module_vtkRenderingQt)
+		$(cmake-utils_use qt4 Module_vtkViewsQt)
+		$(cmake-utils_use qt4 VTK_Group_ParaViewQt)
+		$(cmake-utils_use qt4 VTK_Group_Qt)
+		$(cmake-utils_use !qt4 PQWIDGETS_DISABLE_QTWEBKIT)
+		$(cmake-utils_use boost Module_vtkInfovisBoost)
+		$(cmake-utils_use boost Module_vtkInfovisBoostGraphAlg)
+		$(cmake-utils_use mpi PARAVIEW_USE_MPI)
+		$(cmake-utils_use mpi PARAVIEW_USE_MPI_SSEND)
+		$(cmake-utils_use mpi PARAVIEW_USE_ICE_T)
+		$(cmake-utils_use mpi VTK_Group_MPI)
+		$(cmake-utils_use mpi VTK_XDMF_USE_MPI)
+		$(cmake-utils_use mpi XDMF_BUILD_MPI)
+		$(cmake-utils_use python PARAVIEW_ENABLE_PYTHON)
+		$(cmake-utils_use python VTK_Group_ParaViewPython)
+		$(cmake-utils_use python XDMF_WRAP_PYTHON)
+		$(cmake-utils_use python Module_vtkPython)
+		$(cmake-utils_use python Module_pqPython)
+		$(cmake-utils_use python Module_vtkWrappingPythonCore)
+		$(cmake-utils_use python Module_vtkPVPythonSupport)
+		$(cmake-utils_use python Module_AutobahnPython)
+		$(cmake-utils_use python Module_Twisted)
+		$(cmake-utils_use python Module_ZopeInterface)
+		$(cmake-utils_use python Module_vtkmpi4py)
+		$(usex qt4 "$(cmake-utils_use python Module_pqPython)" "-DModule_pqPython=OFF")
+		$(cmake-utils_use doc BUILD_DOCUMENTATION)
+		$(cmake-utils_use doc PARAVIEW_BUILD_WEB_DOCUMENTATION)
+		$(cmake-utils_use examples BUILD_EXAMPLES)
+		$(cmake-utils_use cg VTK_USE_CG_SHADERS)
+		$(cmake-utils_use mysql Module_vtkIOMySQL)
+		$(cmake-utils_use sqlite Module_vtksqlite)
+		$(cmake-utils_use coprocessing PARAVIEW_ENABLE_CATALYST)
+		$(cmake-utils_use ffmpeg PARAVIEW_ENABLE_FFMPEG)
+		$(cmake-utils_use ffmpeg VTK_USE_FFMPEG_ENCODER)
+		$(cmake-utils_use ffmpeg Module_vtkIOFFMPEG)
+		$(cmake-utils_use tk VTK_Group_Tk)
+		$(cmake-utils_use tk VTK_USE_TK)
+		$(cmake-utils_use tk Module_vtkRenderingTk)
+		$(cmake-utils_use tcl Module_vtkTclTk)
+		$(cmake-utils_use tcl Module_vtkWrappingTcl)
+		$(cmake-utils_use test BUILD_TESTING)
+		)
+
+	if use qt4 ; then
+		mycmakeargs+=( -DVTK_INSTALL_QT_DIR=/${PVLIBDIR}/plugins/designer )
+		if use python ; then
+			# paraview cannot guess sip directory properly
+			mycmakeargs+=( -DSIP_INCLUDE_DIR="${EPREFIX}$(python_get_includedir)" )
+		fi
+	fi
+
+	# TODO: MantaView VaporPlugin VRPlugin
+	mycmakeargs+=(
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_AdiosReader)
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_AnalyzeNIfTIIO)
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_ArrowGlyph)
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_EyeDomeLighting)
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_ForceTime)
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_GMVReader)
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_H5PartReader)
+		$(cmake-utils_use plugins RAVIEW_BUILD_PLUGIN_MobileRemoteControl)
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_Moments)
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_NonOrthogonalSource)
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_PacMan)
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_PointSprite)
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_PrismPlugin)
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_QuadView)
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_SLACTools)
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_SciberQuestToolKit)
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_SierraPlotTools)
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_StreamingParticles)
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_SurfaceLIC)
+		$(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_UncertaintyRendering)
+		# these are always needed for plugins
+		$(cmake-utils_use plugins Module_vtkFiltersFlowPaths)
+		$(cmake-utils_use plugins Module_vtkPVServerManagerApplication)
+		)
+
+	cmake-utils_src_configure
+}
+
+src_compile() {
+	cmake-utils_src_compile
+}
+
+src_install() {
+	cmake-utils_src_install
+
+	# set up the environment
+	echo "LDPATH=${EPREFIX}/usr/${PVLIBDIR}" > "${T}"/40${PN}
+
+	newicon "${S}"/Applications/ParaView/pvIcon.png paraview.png
+	make_desktop_entry paraview "Paraview" paraview
+
+	use python && python_optimize "${D}"/usr/$(get_libdir)/${PN}-${MAJOR_PV}
+}
+
+pkg_postinst() {
+	# with Qt4.5 there seem to be issues reading data files
+	# under certain locales. Setting LC_ALL=C should fix these.
+	elog ""
+	elog "If you experience data corruption during parsing of"
+	elog "data files with paraview please try setting your"
+	elog "locale to LC_ALL=C."
+	elog "If you plan to use paraview component from an existing shell"
+	elog "you should run env-update and . /etc/profile first"
+	elog ""
+	elog "paraview no longer exports bundled python modules in PYTHONPATH"
+	elog "globally due to clashes of bundled packages with system-wide"
+	elog "site-packages. If you want to use paraview's python modules"
+	elog "export"
+	elog "  PYTHONPATH=${EPREFIX}/usr/${PVLIBDIR}:${EPREFIX}/usr/${PVLIBDIR}/site-packages"
+	elog "as needed."
+}


             reply	other threads:[~2016-07-09 20:04 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-07-09 20:04 Matthias Maier [this message]
  -- strict thread matches above, loose matches on Subject: below --
2025-07-31 18:23 [gentoo-commits] repo/gentoo:master commit in: sci-visualization/paraview/, sci-visualization/paraview/files/ Matthias Maier
2025-01-07  4:30 Matthias Maier
2024-11-25 15:32 Andreas Sturmlechner
2021-05-11 18:26 Sam James
2020-07-02  0:03 Andreas Sturmlechner
2018-04-01 20:42 Matthias Maier
2017-05-31 21:14 Matthias Maier
2016-09-22 12:59 Matthias Maier
2016-07-11 10:37 Matthias Maier
2015-09-20  3:04 Matthias Maier
2015-09-20  3:04 Matthias Maier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1468094633.90bf5122ad89011806338beb9817d5f3ed2574e8.tamiko@gentoo \
    --to=tamiko@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox