Skip to content
Snippets Groups Projects
Commit e1481ebf authored by Ned Coltman's avatar Ned Coltman
Browse files

[install][configure] Fix problems with installation and build

parent 99b446db
No related branches found
No related tags found
No related merge requests found
# We require CMake version 3.1 to prevent issues
# with dune_enable_all_packages and older CMake versions.
cmake_minimum_required(VERSION 3.1)
project(SummerSchool2021-PAA CXX)
project(summerschool2021-paa CXX)
if(NOT (dune-common_DIR OR dune-common_ROOT OR
"${CMAKE_PREFIX_PATH}" MATCHES ".*dune-common.*"))
......
/* begin SummerSchool2021-PAA
/* begin summerschool2021-paa
put the definitions for config.h specific to
your project here. Everything above will be
overwritten
......@@ -28,18 +28,18 @@
/* end private */
/* Define to the version of SummerSchool2021-PAA */
/* Define to the version of summerschool2021-paa */
#define SUMMERSCHOOL2021_PAA_VERSION "@SUMMERSCHOOL2021_PAA_VERSION@"
/* Define to the major version of SummerSchool2021-PAA */
/* Define to the major version of summerschool2021-paa */
#define SUMMERSCHOOL2021_PAA_VERSION_MAJOR @SUMMERSCHOOL2021_PAA_VERSION_MAJOR@
/* Define to the minor version of SummerSchool2021-PAA */
/* Define to the minor version of summerschool2021-paa */
#define SUMMERSCHOOL2021_PAA_VERSION_MINOR @SUMMERSCHOOL2021_PAA_VERSION_MINOR@
/* Define to the revision of SummerSchool2021-PAA */
/* Define to the revision of summerschool2021-paa */
#define SUMMERSCHOOL2021_PAA_VERSION_REVISION @SUMMERSCHOOL2021_PAA_VERSION_REVISION@
/* end SummerSchool2021-PAA
/* end summerschool2021-paa
Everything below here will be overwritten
*/
......@@ -15,7 +15,7 @@ INPUT += @top_srcdir@/dune/
# be excluded from the INPUT source files. This way you can easily exclude a
# subdirectory from a directory tree whose root is specified with the INPUT tag.
# EXCLUDE += @top_srcdir@/dune/SummerSchool2021-PAA/test
# EXCLUDE += @top_srcdir@/dune/summerschool2021-paa/test
# The EXAMPLE_PATH tag can be used to specify one or more files or
# directories that contain example code fragments that are included (see
......@@ -27,4 +27,4 @@ INPUT += @top_srcdir@/dune/
# directories that contain image that are included in the documentation (see
# the \image command).
# IMAGE_PATH += @top_srcdir@/dune/SummerSchool2021-PAA/pics
# IMAGE_PATH += @top_srcdir@/dune/summerschool2021-paa/pics
......@@ -3,10 +3,10 @@
################################
# Name of the module
Module: SummerSchool2021-PAA
Module: summerschool2021-paa
Version: 1.0
Maintainer: Edward.Coltman@iws.uni-stuttgart.de
# Required build dependencies
Depends: dune-common dune-geometry dune-localfunctions dune-uggrid dune-grid dune-alugrid dune-subgrid dune-istl dune-foamgrid dumux dumux-course
Depends: dune-common dune-geometry dune-localfunctions dune-grid dune-subgrid dune-istl dune-foamgrid dumux dumux-course
# Optional build dependencies
#Suggests:
......@@ -11,25 +11,22 @@
# |------------------------|-----------------------|--------------------------------------------|-----------------------------|
# | dune-common | origin/releases/2.7 | aa689abba532f40db8f5663fa379ea77211c1953 | 2020-11-10 13:36:21 +0000 |
# | dune-localfunctions | origin/releases/2.7 | 68f1bcf32d9068c258707d241624a08b771b6fde | 2020-11-26 23:45:36 +0000 |
# | dune-alugrid | origin/releases/2.7 | 51bde29a2dfa7cfac4fb73d40ffd42b9c1eb1d3d | 2021-04-22 15:10:17 +0200 |
# | dune-geometry | origin/releases/2.7 | 9d56be3e286bc761dd5d453332a8d793eff00cbe | 2020-11-26 23:26:48 +0000 |
# | dune-istl | origin/releases/2.7 | 761b28aa1deaa786ec55584ace99667545f1b493 | 2020-11-26 23:29:21 +0000 |
# | dune-uggrid | origin/releases/2.7 | 1fe87a92c3f7024dd8fb4f3e7764f7a74b794633 | 2021-06-01 20:53:44 +0000 |
# | dune-grid | origin/releases/2.7 | b7741c6599528bc42017e25f70eb6dd3b5780277 | 2020-11-26 23:30:08 +0000 |
# | dune-subgrid | origin/master | c0f298d09cd66d5647951d6797cdb1524683abae | 2021-04-20 06:54:40 +0000 |
# | dune-foamgrid | origin/master | d49187be4940227c945ced02f8457ccc9d47536a | 2020-01-06 15:36:03 +0000 |
# | dumux-course | origin/master | 0a53b97b21a725f63cc06502dbd03f814af17ee5 | 2021-05-18 21:30:51 +0000 |
# | dumux | origin/master | 4455a367f42bc2ea985045737073c4f3e8c3f76d | 2021-08-03 07:01:17 +0000 |
# | SummerSchool2021-PAA | origin/master | dc0bbbdc81e701c5f96238e247874655713dfab7 | 2021-08-03 09:52:49 +0200 |
# | summerschool2021-paa | origin/master | dc0bbbdc81e701c5f96238e247874655713dfab7 | 2021-08-03 09:52:49 +0200 |
import os
import sys
import subprocess
top = "DUMUX"
top = "DUMUX_summerschool"
os.makedirs(top, exist_ok=True)
def runFromSubFolder(cmd, subFolder):
folder = os.path.join(top, subFolder)
try:
......@@ -41,13 +38,11 @@ def runFromSubFolder(cmd, subFolder):
.format(cmdString, folder, str(e))
)
def installModule(subFolder, url, branch, revision):
def installModule(subFolder, url, branch):
targetFolder = url.rstrip(".git").split("/")[-1]
if not os.path.exists(targetFolder):
runFromSubFolder(['git', 'clone', url, targetFolder], '.')
runFromSubFolder(['git', 'checkout', branch], subFolder)
runFromSubFolder(['git', 'reset', '--hard', revision], subFolder)
else:
print(f'Skip cloning {url} since target folder "{targetFolder}" already exists.')
......@@ -60,41 +55,35 @@ def applyPatch(subFolder, patch):
runFromSubFolder(['git', 'apply', 'tmp.patch'], subFolder)
os.remove(patchPath)
print("Installing dune-localfunctions")
installModule("dune-localfunctions", "https://gitlab.dune-project.org/core/dune-localfunctions.git", "origin/releases/2.7", "68f1bcf32d9068c258707d241624a08b771b6fde")
print("Installing summerschool2021-paa")
installModule("summerschool2021-paa", "https://git.iws.uni-stuttgart.de/dumux-pub/summerschool2021-paa.git", "origin/master")
print("Installing dune-alugrid")
installModule("dune-alugrid", "https://gitlab.dune-project.org/extensions/dune-alugrid.git", "origin/releases/2.7", "51bde29a2dfa7cfac4fb73d40ffd42b9c1eb1d3d")
print("Installing dumux")
installModule("dumux", "https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git", "origin/master")
print("Installing summerschool2021-paa")
installModule("summerschool2021-paa", "https://git.iws.uni-stuttgart.de/dumux-pub/summerschool2021-paa.git", "origin/master", "dc0bbbdc81e701c5f96238e247874655713dfab7")
print("Installing dumux-course")
installModule("dumux-course", "https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-course.git", "origin/master")
print("Installing dune-subgrid")
installModule("dune-subgrid", "https://git.imp.fu-berlin.de/agnumpde/dune-subgrid.git", "origin/master", "c0f298d09cd66d5647951d6797cdb1524683abae")
installModule("dune-subgrid", "https://git.imp.fu-berlin.de/agnumpde/dune-subgrid.git", "origin/master")
print("Installing dune-localfunctions")
installModule("dune-localfunctions", "https://gitlab.dune-project.org/core/dune-localfunctions.git", "origin/releases/2.7")
print("Installing dune-foamgrid")
installModule("dune-foamgrid", "https://gitlab.dune-project.org/extensions/dune-foamgrid.git", "origin/master", "d49187be4940227c945ced02f8457ccc9d47536a")
installModule("dune-foamgrid", "https://gitlab.dune-project.org/extensions/dune-foamgrid.git", "origin/master")
print("Installing dune-istl")
installModule("dune-istl", "https://gitlab.dune-project.org/core/dune-istl.git", "origin/releases/2.7", "761b28aa1deaa786ec55584ace99667545f1b493")
installModule("dune-istl", "https://gitlab.dune-project.org/core/dune-istl.git", "origin/releases/2.7")
print("Installing dune-geometry")
installModule("dune-geometry", "https://gitlab.dune-project.org/core/dune-geometry.git", "origin/releases/2.7", "9d56be3e286bc761dd5d453332a8d793eff00cbe")
print("Installing dumux-course")
installModule("dumux-course", "https://git.iws.uni-stuttgart.de/dumux-repositories/dumux-course.git", "origin/master", "0a53b97b21a725f63cc06502dbd03f814af17ee5")
print("Installing dumux")
installModule("dumux", "https://git.iws.uni-stuttgart.de/dumux-repositories/dumux.git", "origin/master", "4455a367f42bc2ea985045737073c4f3e8c3f76d")
print("Installing dune-uggrid")
installModule("dune-uggrid", "https://gitlab.dune-project.org//staging/dune-uggrid.git", "origin/releases/2.7", "1fe87a92c3f7024dd8fb4f3e7764f7a74b794633")
installModule("dune-geometry", "https://gitlab.dune-project.org/core/dune-geometry.git", "origin/releases/2.7")
print("Installing dune-grid")
installModule("dune-grid", "https://gitlab.dune-project.org/core/dune-grid.git", "origin/releases/2.7", "b7741c6599528bc42017e25f70eb6dd3b5780277")
installModule("dune-grid", "https://gitlab.dune-project.org/core/dune-grid.git", "origin/releases/2.7")
print("Installing dune-common")
installModule("dune-common", "https://gitlab.dune-project.org/core/dune-common.git", "origin/releases/2.7", "aa689abba532f40db8f5663fa379ea77211c1953")
installModule("dune-common", "https://gitlab.dune-project.org/core/dune-common.git", "origin/releases/2.7")
print("Applying patch for dune-subgrid for load balance requirement")
patch = """
......@@ -124,6 +113,6 @@ applyPatch("dune-subgrid", patch)
print("Configuring project")
runFromSubFolder(
['./dune-common/bin/dunecontrol', '--opts=SummerSchool2021-PAA/cmake.opts', 'all'],
['./dune-common/bin/dunecontrol', '--opts=summerschool2021-paa/cmake.opts', 'all'],
'.'
)
......@@ -8,8 +8,8 @@ DEPENDENCIES=@REQUIRES@
Name: @PACKAGE_NAME@
Version: @VERSION@
Description: SummerSchool2021-PAA module
Description: summerschool2021-paa module
URL: http://dune-project.org/
Requires: dune-common dune-geometry dune-localfunctions dune-uggrid dune-grid dune-alugrid dune-subgrid dune-istl dune-foamgrid dumux dumux-course
Requires: dune-common dune-geometry dune-localfunctions dune-grid dune-subgrid dune-istl dune-foamgrid dumux dumux-course
Libs: -L${libdir}
Cflags: -I${includedir}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment