added: debian (ubuntu) packaging

This commit is contained in:
Arne Morten Kvarving 2013-04-10 11:01:51 +02:00
parent 00db8ea130
commit 61614b9c3c
14 changed files with 454 additions and 0 deletions

5
debian/changelog vendored Normal file
View File

@ -0,0 +1,5 @@
resinsight (0.9.2-1) precise; urgency=low
* Initial release
-- Arne Morten Kvarving <arne.morten.kvarving@sintef.no> Tue, 15 Jan 2013 18:22:16 +0100

1
debian/compat vendored Normal file
View File

@ -0,0 +1 @@
8

38
debian/control vendored Normal file
View File

@ -0,0 +1,38 @@
Source: resinsight
Section: science
Priority: extra
Maintainer: Arne Morten Kvarving <arne.morten.kvarving@sintef.no>
Build-Depends: debhelper (>= 8.0.0), cmake, octave-headers, qt4-dev-tools,
libqt4-dev, libqt4-opengl-dev, libert.ecl-dev
Standards-Version: 3.9.2
Homepage: http://opm-project.org
Vcs-Git: git://github.com/akva2/ResInsight.git
Vcs-Browser: https://github.com/akva2/ResInsight
Package: resinsight
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: ResInsight - the 3D reservoir viewer and post processor
ResInsight is a 3D viewer and post processing tool for reservoir models.
It has been co-developed by Statoil and Ceetron with the aim to provide
a versatile tool for professionals who need to visualize and process
reservoir models.
Package: resinsight-dbg
Architecture: any
Section: debug
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: ResInsight - the 3D reservoir viewer and post processor -- debug symbols
ResInsight is a 3D viewer and post processing tool for reservoir models.
It has been co-developed by Statoil and Ceetron with the aim to provide
a versatile tool for professionals who need to visualize and process
reservoir models.
Package: octave-resinsight
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: ResInsight - the 3D reservoir viewer and post processor - octave support
ResInsight is a 3D viewer and post processing tool for reservoir models.
It has been co-developed by Statoil and Ceetron with the aim to provide
a versatile tool for professionals who need to visualize and process
reservoir models.

13
debian/copyright vendored Normal file
View File

@ -0,0 +1,13 @@
License: GPL-3+
This package is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>

1
debian/docs vendored Normal file
View File

@ -0,0 +1 @@
README

1
debian/octave-resinsight.install vendored Normal file
View File

@ -0,0 +1 @@
usr/lib/*

278
debian/patches/01_use_system_ert.patch vendored Normal file
View File

@ -0,0 +1,278 @@
commit 8f1291094f04563cefc93085b9b61c2bf3d914b8
Author: Arne Morten Kvarving <arne.morten.kvarving@sintef.no>
Date: Tue Apr 9 17:10:58 2013 +0200
Use system ERT
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e09c591..349ecf5 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -4,6 +4,8 @@ project (ResInsight)
set (VIZ_MODULES_FOLDER_NAME VisualizationModules)
+set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH}
+ ${CMAKE_SOURCE_DIR}/cmake/Modules)
# Setup the main platform defines
#-----------------------------------------------------
@@ -37,22 +39,28 @@ include (ResInsightVersion.cmake)
################################################################################
# ERT
################################################################################
-add_subdirectory(ThirdParty/Ert/devel)
-
-include_directories(
- ${CMAKE_SOURCE_DIR}/ThirdParty/Ert/devel/libecl/include/ert/ecl
- ${CMAKE_SOURCE_DIR}/ThirdParty/Ert/devel/libert_util/include/ert/util
- ${CMAKE_SOURCE_DIR}/ThirdParty/Ert/devel/libgeometry/include/ert/geometry
- ${CMAKE_SOURCE_DIR}/ThirdParty/Ert/devel/libecl_well/include/ert/ecl_well
- ${CMAKE_SOURCE_DIR}/ThirdParty/Ert/devel/libecl/include
- ${CMAKE_SOURCE_DIR}/ThirdParty/Ert/devel/libert_util/include
- ${CMAKE_SOURCE_DIR}/ThirdParty/Ert/devel/libgeometry/include
- ${CMAKE_SOURCE_DIR}/ThirdParty/Ert/devel/libecl_well/include
-
- ${CMAKE_BINARY_DIR}/ThirdParty/Ert/devel/libert_util/include/ert/util
- ${CMAKE_BINARY_DIR}/ThirdParty/Ert/devel/libert_util/include
-)
-
+find_package(ERT)
+IF(ERT_FOUND)
+ include_directories(${ERT_INCLUDE_DIR}/ert/ecl
+ ${ERT_INCLUDE_DIR}/ert/geometry
+ ${ERT_INCLUDE_DIR}/ert/ecl_well
+ ${ERT_INCLUDE_DIR}/ert/util)
+else(ERT_FOUND)
+ add_subdirectory(ThirdParty/Ert/devel)
+ include_directories(
+ ${CMAKE_SOURCE_DIR}/ThirdParty/Ert/devel/libecl/include/ert/ecl
+ ${CMAKE_SOURCE_DIR}/ThirdParty/Ert/devel/libert_util/include/ert/util
+ ${CMAKE_SOURCE_DIR}/ThirdParty/Ert/devel/libgeometry/include/ert/geometry
+ ${CMAKE_SOURCE_DIR}/ThirdParty/Ert/devel/libecl_well/include/ert/ecl_well
+ ${CMAKE_SOURCE_DIR}/ThirdParty/Ert/devel/libecl/include
+ ${CMAKE_SOURCE_DIR}/ThirdParty/Ert/devel/libert_util/include
+ ${CMAKE_SOURCE_DIR}/ThirdParty/Ert/devel/libgeometry/include
+ ${CMAKE_SOURCE_DIR}/ThirdParty/Ert/devel/libecl_well/include
+
+ ${CMAKE_BINARY_DIR}/ThirdParty/Ert/devel/libert_util/include/ert/util
+ ${CMAKE_BINARY_DIR}/ThirdParty/Ert/devel/libert_util/include
+ )
+endif(ERT_FOUND)
################################################################################
# Qt
diff --git a/cmake/Modules/FindERT.cmake b/cmake/Modules/FindERT.cmake
new file mode 100644
index 0000000..8067421
--- /dev/null
+++ b/cmake/Modules/FindERT.cmake
@@ -0,0 +1,208 @@
+# - Find the Ensemble-based Reservoir Tool (ERT)
+#
+# Set the cache variable ERT_ROOT to the install location of the ERT
+# libraries and header files.
+#
+# If found, it sets these variables:
+#
+# ERT_INCLUDE_DIRS Header file directories
+# ERT_LIBRARIES Archives and shared objects
+# ERT_CONFIG_VARS Definitions that goes in config.h
+# ERT_LINKER_FLAGS Options that must be passed to linker
+#
+# It will also add to CMAKE_C_FLAGS and CMAKE_CXX_FLAGS if necessary to
+# link with the ERT libraries.
+
+# variables to pass on to other packages
+if (FIND_QUIETLY)
+ set (ERT_QUIET "QUIET")
+else (FIND_QUIETLY)
+ set (ERT_QUIET "")
+endif (FIND_QUIETLY)
+
+# if a directory has been specified by the user, then don't go look
+# in the system directories as well
+if (ERT_ROOT)
+ set (_no_default_path "NO_DEFAULT_PATH")
+else (ERT_ROOT)
+ set (_no_default_path "")
+endif (ERT_ROOT)
+
+# ERT doesn't have any config-mode file, so we need to specify the root
+# directory in its own variable
+find_path (ERT_ECL_INCLUDE_DIR
+ NAMES "ert/ecl/ecl_util.h"
+ HINTS "${ERT_ROOT}"
+ PATHS "../ert"
+ PATH_SUFFIXES "devel/libecl/include/" "include"
+ DOC "Path to ERT Eclipse library header files"
+ ${_no_default_path}
+ )
+find_path (ERT_UTIL_INCLUDE_DIR
+ NAMES "ert/util/stringlist.h"
+ HINTS "${ERT_ROOT}"
+ PATHS "../ert"
+ PATH_SUFFIXES "devel/libert_util/include/" "include"
+ DOC "Path to ERT Eclipse library header files"
+ ${_no_default_path}
+ )
+find_path (ERT_GEN_INCLUDE_DIR
+ NAMES "ert/util/int_vector.h"
+ HINTS "${ERT_ROOT}"
+ PATHS "${PROJECT_BINARY_DIR}/../ert" "${PROJECT_BINARY_DIR}/../ert-build"
+ "${PROJECT_BINARY_DIR}/../ert/devel"
+ PATH_SUFFIXES "libert_util/include/" "include"
+ DOC "Path to ERT generated library header files"
+ ${_no_default_path}
+ )
+
+# need all of these libraries
+if (CMAKE_SIZEOF_VOID_P)
+ math (EXPR _BITS "8 * ${CMAKE_SIZEOF_VOID_P}")
+endif (CMAKE_SIZEOF_VOID_P)
+find_library (ERT_LIBRARY_ECL
+ NAMES "ecl"
+ HINTS "${ERT_ROOT}"
+ PATHS "${PROJECT_BINARY_DIR}/../ert" "${PROJECT_BINARY_DIR}/../ert-build"
+ "${PROJECT_BINARY_DIR}/../ert/devel"
+ PATH_SUFFIXES "lib" "lib${_BITS}" "lib/${CMAKE_LIBRARY_ARCHITECTURE}"
+ DOC "Path to ERT Eclipse library archive/shared object files"
+ ${_no_default_path}
+ )
+find_library (ERT_LIBRARY_GEOMETRY
+ NAMES "ert_geometry"
+ HINTS "${ERT_ROOT}"
+ PATHS "${PROJECT_BINARY_DIR}/../ert" "${PROJECT_BINARY_DIR}/../ert-build"
+ "${PROJECT_BINARY_DIR}/../ert/devel"
+ PATH_SUFFIXES "lib" "lib${_BITS}" "lib/${CMAKE_LIBRARY_ARCHITECTURE}"
+ DOC "Path to ERT Geometry library archive/shared object files"
+ ${_no_default_path}
+ )
+find_library (ERT_LIBRARY_UTIL
+ NAMES "ert_util"
+ HINTS "${ERT_ROOT}"
+ PATHS "${PROJECT_BINARY_DIR}/../ert" "${PROJECT_BINARY_DIR}/../ert-build"
+ "${PROJECT_BINARY_DIR}/../ert/devel"
+ PATH_SUFFIXES "lib" "lib${_BITS}" "lib/${CMAKE_LIBRARY_ARCHITECTURE}"
+ DOC "Path to ERT Utilities library archive/shared object files"
+ ${_no_default_path}
+ )
+# the "library" found here is actually a list of several files
+list (APPEND ERT_INCLUDE_DIR
+ ${ERT_ECL_INCLUDE_DIR}
+ ${ERT_UTIL_INCLUDE_DIR}
+ ${ERT_GEN_INCLUDE_DIR}
+ )
+list (APPEND ERT_LIBRARY
+ ${ERT_LIBRARY_ECL}
+ ${ERT_LIBRARY_GEOMETRY}
+ ${ERT_LIBRARY_UTIL}
+ )
+list (APPEND ERT_LIBRARIES ${ERT_LIBRARY})
+list (APPEND ERT_INCLUDE_DIRS ${ERT_INCLUDE_DIR})
+
+# if we didn't find any files, then don't proceed through the entire dependency list
+include (FindPackageHandleStandardArgs)
+if (ERT_INCLUDE_DIR MATCHES "-NOTFOUND" OR ERT_LIBRARIES MATCHES "-NOTFOUND")
+ find_package_handle_standard_args (ERT
+ DEFAULT_MSG
+ ERT_INCLUDE_DIR ERT_LIBRARY
+ )
+ # write unsuccessful result to the cache, as the check_c_source_compiles
+ # would do if it failed
+ set (HAVE_ERT)
+ set (HAVE_ERT "${HAVE_ERT}" CACHE INTERNAL "Did an ERT sample program compile?")
+ return ()
+endif (ERT_INCLUDE_DIR MATCHES "-NOTFOUND" OR ERT_LIBRARIES MATCHES "-NOTFOUND")
+
+# these system variables are probed for, and used in HEADER files (sic)
+list (APPEND ERT_CONFIG_VARS
+ HAVE_ISFINITE
+ HAVE_GLOB
+ HAVE_FORK
+ HAVE_GETUID
+ HAVE_LOCKF
+ HAVE_OPENDIR
+ HAVE_PROC
+ HAVE_READLINKAT
+ HAVE_SYMLINK
+ HAVE_VA_COPY
+ )
+include (CheckSymbolExists)
+include (CheckFunctionExists)
+check_symbol_exists (isfinite math.h HAVE_ISFINITE)
+check_function_exists (glob HAVE_GLOB)
+check_function_exists (fork HAVE_FORK)
+check_function_exists (getuid HAVE_GETUID)
+check_function_exists (lockf HAVE_LOCKF)
+check_function_exists (opendir HAVE_OPENDIR)
+check_function_exists (readlinkat HAVE_READLINKAT)
+check_function_exists (symlink HAVE_SYMLINK)
+check_symbol_exists (va_copy stdarg.h HAVE_VA_COPY)
+
+if (UNIX)
+ set (HAVE_PROC 1)
+else (UNIX)
+ set (HAVE_PROC)
+endif (UNIX)
+
+# dependencies
+
+# compression library
+find_package (ZLIB ${ERT_QUIET})
+if (ZLIB_FOUND)
+ list (APPEND ERT_INCLUDE_DIRS ${ZLIB_INCLUDE_DIRS})
+ list (APPEND ERT_LIBRARIES ${ZLIB_LIBRARIES})
+endif (ZLIB_FOUND)
+
+# numerics
+find_package (BLAS ${ERT_QUIET})
+if (BLAS_FOUND)
+ list (APPEND ERT_INCLUDE_DIRS ${BLAS_INCLUDE_DIRS})
+ list (APPEND ERT_LIBRARIES ${BLAS_LIBRARIES})
+ list (APPEND ERT_LINKER_FLAGS ${BLAS_LINKER_FLAGS})
+endif (BLAS_FOUND)
+find_package (LAPACK ${ERT_QUIET})
+if (LAPACK_FOUND)
+ list (APPEND ERT_INCLUDE_DIRS ${LAPACK_INCLUDE_DIRS})
+ list (APPEND ERT_LIBRARIES ${LAPACK_LIBRARIES})
+ list (APPEND ERT_LINKER_FLAGS ${LAPACK_LINKER_FLAGS})
+endif (LAPACK_FOUND)
+
+# math library (should exist on all unices; automatically linked on Windows)
+if (UNIX)
+ find_library (MATH_LIBRARY
+ NAMES "m"
+ )
+ list (APPEND ERT_LIBRARIES ${MATH_LIBRARY})
+endif (UNIX)
+
+# see if we can compile a minimum example
+# CMake logical test doesn't handle lists (sic)
+if (NOT (ERT_INCLUDE_DIR MATCHES "-NOTFOUND" OR ERT_LIBRARIES MATCHES "-NOTFOUND"))
+ include (CMakePushCheckState)
+ include (CheckCSourceCompiles)
+ cmake_push_check_state ()
+ set (CMAKE_REQUIRED_INCLUDES ${ERT_INCLUDE_DIR})
+ set (CMAKE_REQUIRED_LIBRARIES ${ERT_LIBRARIES})
+ check_c_source_compiles (
+ "#include <ert/ecl/ecl_util.h>
+int main (void) {
+ int sz;
+ sz = ecl_util_get_sizeof_ctype (ECL_INT_TYPE);
+ return 0;
+}" HAVE_ERT)
+ cmake_pop_check_state ()
+else (NOT (ERT_INCLUDE_DIR MATCHES "-NOTFOUND" OR ERT_LIBRARIES MATCHES "-NOTFOUND"))
+ # write unsuccessful result to the cache, as the check_c_source_compiles
+ # would do if it failed
+ set (HAVE_ERT)
+ set (HAVE_ERT "${HAVE_ERT}" CACHE INTERNAL "Did an ERT sample program compile?")
+endif (NOT (ERT_INCLUDE_DIR MATCHES "-NOTFOUND" OR ERT_LIBRARIES MATCHES "-NOTFOUND"))
+
+# if the test program didn't compile, but was required to do so, bail
+# out now and display an error; otherwise limp on
+find_package_handle_standard_args (ERT
+ DEFAULT_MSG
+ ERT_INCLUDE_DIR ERT_LIBRARY HAVE_ERT
+ )

24
debian/patches/02_install_docdir.patch vendored Normal file
View File

@ -0,0 +1,24 @@
diff --git a/ApplicationCode/CMakeLists.txt b/ApplicationCode/CMakeLists.txt
index 7995ceb..4930b98 100644
--- a/ApplicationCode/CMakeLists.txt
+++ b/ApplicationCode/CMakeLists.txt
@@ -8,6 +8,10 @@ CONFIGURE_FILE( ${CMAKE_SOURCE_DIR}/ApplicationCode/Adm/RIVersionInfo.h.cmake
${CMAKE_BINARY_DIR}/Generated/RIVersionInfo.h
)
+if(NOT CMAKE_INSTALL_DOCDIR)
+ set(CMAKE_INSTALL_DOCDIR share/doc/resinsight)
+endif(NOT CMAKE_INSTALL_DOCDIR)
+
include_directories(
${CMAKE_CURRENT_SOURCE_DIR}
@@ -313,7 +317,7 @@ else (PRIVATE_INSTALL)
)
# license go in /usr/share/doc
install (FILES ${RESINSIGHT_LICENSE_FILES}
- DESTINATION share/doc/ResInsight
+ DESTINATION ${CMAKE_INSTALL_DOCDIR}
)
# no bundled libraries for system install
# application icon

View File

@ -0,0 +1,24 @@
diff --git a/ApplicationCode/FileInterface/FileInterface_UnitTests/Ert-Test.cpp b/ApplicationCode/FileInterface/FileInterface_UnitTests/Ert-Test.cpp
index 7a2aef0..c552574 100644
--- a/ApplicationCode/FileInterface/FileInterface_UnitTests/Ert-Test.cpp
+++ b/ApplicationCode/FileInterface/FileInterface_UnitTests/Ert-Test.cpp
@@ -23,7 +23,6 @@
#include <util.h>
#include <int_vector.h>
-#include <ecl_intehead.h>
#include <ecl_file.h>
#include <ecl_kw.h>
#include <ecl_kw_magic.h>
diff --git a/ApplicationCode/FileInterface/RifEclipseOutputFileTools.cpp b/ApplicationCode/FileInterface/RifEclipseOutputFileTools.cpp
index 2c77fd6..b6eeba7 100644
--- a/ApplicationCode/FileInterface/RifEclipseOutputFileTools.cpp
+++ b/ApplicationCode/FileInterface/RifEclipseOutputFileTools.cpp
@@ -20,7 +20,6 @@
#include "util.h"
#include "ecl_file.h"
-#include "ecl_intehead.h"
#include "ecl_kw_magic.h"
#include <QFileInfo>

39
debian/patches/04_ert_api_changes.patch vendored Normal file
View File

@ -0,0 +1,39 @@
diff --git a/ApplicationCode/FileInterface/RifEclipseRestartFilesetAccess.cpp b/ApplicationCode/FileInterface/RifEclipseRestartFilesetAccess.cpp
index 40b3e7a..27bb973 100644
--- a/ApplicationCode/FileInterface/RifEclipseRestartFilesetAccess.cpp
+++ b/ApplicationCode/FileInterface/RifEclipseRestartFilesetAccess.cpp
@@ -53,7 +53,7 @@ bool RifEclipseRestartFilesetAccess::open(const QStringList& fileSet)
{
progInfo.setProgressDescription(fileSet[i]);
- ecl_file_type* ecl_file = ecl_file_open(fileSet[i].toAscii().data());
+ ecl_file_type* ecl_file = ecl_file_open(fileSet[i].toAscii().data(), 0);
if (!ecl_file) return false;
m_ecl_files.push_back(ecl_file);
diff --git a/ApplicationCode/FileInterface/RifEclipseUnifiedRestartFileAccess.cpp b/ApplicationCode/FileInterface/RifEclipseUnifiedRestartFileAccess.cpp
index 8fecb28..73be912 100644
--- a/ApplicationCode/FileInterface/RifEclipseUnifiedRestartFileAccess.cpp
+++ b/ApplicationCode/FileInterface/RifEclipseUnifiedRestartFileAccess.cpp
@@ -53,7 +53,7 @@ bool RifEclipseUnifiedRestartFileAccess::open(const QStringList& fileSet)
{
QString fileName = fileSet[0];
- m_ecl_file = ecl_file_open(fileName.toAscii().data());
+ m_ecl_file = ecl_file_open(fileName.toAscii().data(), 0);
if (!m_ecl_file) return false;
return true;
diff --git a/ApplicationCode/FileInterface/RifReaderEclipseOutput.cpp b/ApplicationCode/FileInterface/RifReaderEclipseOutput.cpp
index bd2ec9b..e9d0afe 100644
--- a/ApplicationCode/FileInterface/RifReaderEclipseOutput.cpp
+++ b/ApplicationCode/FileInterface/RifReaderEclipseOutput.cpp
@@ -439,7 +439,7 @@ bool RifReaderEclipseOutput::buildMetaData(RigReservoir* reservoir)
QString initFileName = RifEclipseOutputFileTools::fileNameByType(m_fileSet, ECL_INIT_FILE);
if (initFileName.size() > 0)
{
- ecl_file_type* ecl_file = ecl_file_open(initFileName.toAscii().data());
+ ecl_file_type* ecl_file = ecl_file_open(initFileName.toAscii().data(), 0);
if (!ecl_file) return false;
progInfo.incrementProgress();

4
debian/patches/series vendored Normal file
View File

@ -0,0 +1,4 @@
01_use_system_ert.patch
02_install_docdir.patch
03_remove_internal_header_include.patch
04_ert_api_changes.patch

2
debian/resinsight.install vendored Normal file
View File

@ -0,0 +1,2 @@
usr/bin/*
usr/share/*

23
debian/rules vendored Executable file
View File

@ -0,0 +1,23 @@
#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
%:
dh $@
override_dh_auto_configure:
dh_auto_configure --buildsystem=cmake -- -DCMAKE_BUILD_TYPE=Release -DPRIVATE_INSTALL=0 -DCMAKE_INSTALL_DOCDIR=share/doc/resinsight
.PHONY: override_dh_strip
override_dh_strip:
dh_strip --dbg-package=resinsight-dbg
override_dh_installdocs:
dh_installdocs --link-doc=resinsight

1
debian/source/format vendored Normal file
View File

@ -0,0 +1 @@
3.0 (quilt)