Add some Docker-based build environments

feature/quick-start-py
kaetemi 3 years ago
parent 730d174f39
commit a73a86e2ad
No known key found for this signature in database
GPG Key ID: 9873C4D40BB479BC

@ -7,7 +7,8 @@ NeLCodeDir = os.path.join(NeLRootDir, "code")
NeLLeveldesignDir = os.path.join(NeLRootDir, "leveldesign")
NeLGraphicsDir = os.path.join(NeLRootDir, "graphics")
NeLSoundDir = os.path.join(NeLRootDir, "sound")
NeLBuildDir = os.path.join(NeLRootDir, "build_" + NeLHostId)
NeLBuildDirName = "build_" + NeLHostId
NeLBuildDir = os.path.join(NeLRootDir, NeLBuildDirName)
NeLPipelineDir = os.path.join(NeLRootDir, "pipeline")
NeLDistributionDir = os.path.join(NeLRootDir, "distribution")

@ -22,14 +22,10 @@ def MergeConfig(file):
config = json.load(fi)
if not "Paths" in config:
config["Paths"] = {}
if not "Win64" in config["Paths"]:
config["Paths"]["Win64"] = {}
if not "Toolchain" in config:
config["Toolchain"] = {}
if not "Client" in config["Toolchain"]:
config["Toolchain"]["Client"] = {}
NeLConfig["Paths"]["Win64"].update(config["Paths"]["Win64"])
config["Paths"]["Win64"] = NeLConfig["Paths"]["Win64"]
NeLConfig["Paths"].update(config["Paths"])
config["Paths"] = NeLConfig["Paths"]
NeLConfig["Toolchain"]["Client"].update(config["Toolchain"]["Client"])
@ -48,27 +44,6 @@ if "HostId" in NeLConfig:
MergeConfig("config_" + NeLHostId + "_default.json")
MergeConfig("config_" + NeLHostId + ".json")
fi = open(os.path.join(NeLConfigDir, "config.json"), "r")
NeLUserConfig = json.load(fi)
if not "Paths" in NeLUserConfig:
NeLUserConfig["Paths"] = {}
if not "Win64" in NeLUserConfig["Paths"]:
NeLUserConfig["Paths"]["Win64"] = {}
if not "Toolchain" in NeLUserConfig:
NeLUserConfig["Toolchain"] = {}
if not "Client" in NeLUserConfig["Toolchain"]:
NeLUserConfig["Toolchain"]["Client"] = {}
NeLConfig["Paths"]["Win64"].update(NeLUserConfig["Paths"]["Win64"])
NeLUserConfig["Paths"]["Win64"] = NeLConfig["Paths"]["Win64"]
NeLConfig["Paths"].update(NeLUserConfig["Paths"])
NeLUserConfig["Paths"] = NeLConfig["Paths"]
NeLConfig["Toolchain"]["Client"].update(NeLUserConfig["Toolchain"]["Client"])
NeLUserConfig["Toolchain"]["Client"] = NeLConfig["Toolchain"]["Client"]
NeLConfig["Toolchain"].update(NeLUserConfig["Toolchain"])
NeLUserConfig["Toolchain"] = NeLConfig["Toolchain"]
NeLConfig.update(NeLUserConfig)
fi.close()
if os.path.isfile(os.path.join(NeLConfigDir, "toolchains_" + NeLHostId + "_default.json")):
fi = open(os.path.join(NeLConfigDir, "toolchains_" + NeLHostId + "_default.json"), "r")
NeLToolchains = json.load(fi)

@ -1,14 +1,13 @@
{
"Domains": [ "default" ],
"Paths": {
"Win64": {
"Python27": "external/python27",
"Python3": "external/python3",
"RRDtool": "external/rrdtool",
"MariaDB": "external/mariadb",
"Nginx": "external/nginx",
"PHP": "external/php",
"phpMyAdmin": "external/phpmyadmin"
},
"phpMyAdmin": "external/phpmyadmin",
"3dsMax": "",
"3dsMaxLocal": ""
},
@ -34,9 +33,9 @@
"WinXP/VS/v100/x86",
"Win98/VS/v80/x86"
],
"Server": [{ "OS": "Ubuntu20", "Hunter": false }],
"Server": [{ "OS": "Ubuntu-20.04", "Hunter": false }],
"Client": {
"exedll_32": [
"exedll_win32": [
{ "OS": "Win98", "Platform": "x86", "Hunter": false },
{ "OS": "Win2k", "Platform": "x86", "Hunter": false },
{ "OS": "WinXP", "Platform": "x86", "Hunter": false },
@ -44,10 +43,19 @@
{ "OS": "WinXP", "Platform": "x86" },
{ "OS": "Win7", "Platform": "x86" }
],
"exedll_64": [
"exedll_win64": [
{ "OS": "WinXP", "Platform": "x64", "Hunter": false },
{ "OS": "Win7", "Platform": "x64", "Hunter": false },
{ "OS": "Win7", "Platform": "x64" }
],
"exedll_focal_x86_64": [
{ "OS": "Ubuntu-20.04", "Platform": "x86_64", "Hunter": false }
],
"exedll_bionic_x86_64": [
{ "OS": "Ubuntu-18.04", "Platform": "x86_64", "Hunter": false }
],
"exedll_glibc2_27_x86_64": [
{ "Toolset": "GLIBC 2.27", "Platform": "x86_64", "Hunter": true }
]
},
"Options": [

@ -0,0 +1,37 @@
FROM --platform=linux/amd64 ubuntu:bionic
MAINTAINER Ryzom Core <https://wiki.ryzom.dev/>
RUN apt-get update && apt-get install -y \
software-properties-common \
&& rm -rf /var/lib/apt/lists/*
# RUN add-apt-repository ppa:ubuntu-toolchain-r/test
RUN apt-get update && apt-get install -y \
cmake build-essential \
gcc-8 g++-8 \
&& update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 60 \
&& update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 60 \
&& rm -rf /var/lib/apt/lists/*
RUN apt-get update && apt-get install -y \
bison autoconf automake \
libpng-dev \
libjpeg-dev \
libgif-dev libfreetype6-dev \
freeglut3-dev \
liblua5.2-dev libluabind-dev libcpptest-dev \
libogg-dev libvorbis-dev libopenal-dev \
libavcodec-dev libavformat-dev libavdevice-dev libswscale-dev libpostproc-dev \
libmysqlclient-dev \
libxml2-dev \
libcurl4-openssl-dev libssl-dev \
libsquish-dev \
liblzma-dev \
libgsf-1-dev \
qtbase5-dev qttools5-dev qttools5-dev-tools \
&& rm -rf /var/lib/apt/lists/*
RUN mkdir -p /mnt/nel
WORKDIR /mnt/nel

@ -0,0 +1,39 @@
FROM --platform=linux/amd64 ubuntu:focal
MAINTAINER Ryzom Core <https://wiki.ryzom.dev/>
RUN apt-get update && apt-get install -y \
software-properties-common \
&& rm -rf /var/lib/apt/lists/*
# RUN add-apt-repository ppa:ubuntu-toolchain-r/test
RUN apt-get update && apt-get install -y \
cmake build-essential \
&& rm -rf /var/lib/apt/lists/*
# Ubuntu 16.04 LTS and Ubuntu 18.04 LTS:
# sudo apt install gcc-8 g++-8 -y
# sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 60
# sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 60
RUN apt-get update && apt-get install -y \
bison autoconf automake \
libpng-dev \
libjpeg-dev \
libgif-dev libfreetype6-dev \
freeglut3-dev \
liblua5.2-dev libluabind-dev libcpptest-dev \
libogg-dev libvorbis-dev libopenal-dev \
libavcodec-dev libavformat-dev libavdevice-dev libswscale-dev libpostproc-dev \
libmysqlclient-dev \
libxml2-dev \
libcurl4-openssl-dev libssl-dev \
libsquish-dev \
liblzma-dev \
libgsf-1-dev \
qtbase5-dev qttools5-dev qttools5-dev-tools \
&& rm -rf /var/lib/apt/lists/*
RUN mkdir -p /mnt/nel
WORKDIR /mnt/nel

@ -1,4 +1,4 @@
rem ..\..\..\external\python3\python.exe configure_toolchains.py
..\..\..\external\python3\python.exe configure_toolchains.py
rem ..\..\..\external\python3\python.exe find_toolchain.py
rem ..\..\..\external\python3\python.exe find_max.py
..\..\..\external\python3\python.exe print_summary.py

Loading…
Cancel
Save