Skip to content

Commit bc17807

Browse files
committed
Update python to 3.7, ruby to 2.5 and debian to buster. Disabled V8 from build step, it needs to be compiled like NodeJS (possibly in a different dockerfile or migrating all docker dependency management to Guix). Update swig to 4.0. Improve node port for handling already installed metacall (Guix).
1 parent 00d0405 commit bc17807

File tree

30 files changed

+110
-97
lines changed

30 files changed

+110
-97
lines changed

.env

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,4 +24,4 @@ COMPOSE_PROJECT_NAME='metacall'
2424
METACALL_PATH=/usr/local/metacall
2525
METACALL_NODE_BUILD_TYPE=Release
2626
METACALL_CORE_BUILD_TYPE=release
27-
METACALL_BASE_IMAGE=debian:stretch-slim
27+
METACALL_BASE_IMAGE=debian:buster-slim

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ This section describes all programming languages that **METACALL** supports, if
9494
| [NodeJS](https://nodejs.org/) | [N API](https://nodejs.org/api/n-api.html) | **>= 8.11.1<sup>†</sup> <= 10.16.3** | node |
9595
| [JavaScript](https://developer.mozilla.org/bm/docs/Web/JavaScript) | [V8](https://v8.dev/) | **5.1.117** | js |
9696
| [C#](https://dotnet.microsoft.com/) | [NetCore](https://github.com/dotnet/docs/blob/master/docs/core/tutorials/netcore-hosting.md) | **>= 1.0.0-preview2 <= 2.2.8** | cs |
97-
| [Ruby](https://ruby-lang.org/) | [Ruby C API](https://silverhammermba.github.io/emberb/c/) | **>= 2.1 <= 2.3** | rb |
97+
| [Ruby](https://ruby-lang.org/) | [Ruby C API](https://silverhammermba.github.io/emberb/c/) | **>= 2.1 <= 2.5** | rb |
9898
| [File](/source/loaders/file_loader) | **** | **0.1.0** | file |
9999
| [Mock](/source/loaders/mock_loader) | **** | **0.1.0** | mock |
100100

@@ -591,13 +591,13 @@ The following platforms and architectures have been tested an work correctly wit
591591
| Operative System | Architecture | Compiler | Build Status |
592592
|:-------------------------:|:-------------------:|:---------------:|:------------------------------------------------------------------------------------------------------:|
593593
| **`ubuntu:xenial`** | **`amd64`** | **`gcc`** | |
594-
| **`debian:stretch-slim`** | **`amd64`** | **`gcc:6.3.0`** | [![build](https://gitlab.com/metacall/core/badges/master/build.svg)](https://gitlab.com/metacall/core) |
594+
| **`debian:buster-slim`** | **`amd64`** | **`gcc:6.3.0`** | [![build](https://gitlab.com/metacall/core/badges/master/build.svg)](https://gitlab.com/metacall/core) |
595595
| **`debian:buster-slim`** | **`amd64`** | **`gcc:8.2.0`** | |
596596
| **`windows`** | **`x86`** **`x64`** | **`msvc`** | |
597597

598598
### 7.1 Docker Support
599599

600-
To provide a reproducible environment **METACALL** is also distributed under Docker on [DockerHub](https://hub.docker.com/r/metacall/core). Current images are based on `debian:stretch-slim` for `amd64` architecture.
600+
To provide a reproducible environment **METACALL** is also distributed under Docker on [DockerHub](https://hub.docker.com/r/metacall/core). Current images are based on `debian:buster-slim` for `amd64` architecture.
601601

602602
For pulling the **METACALL** `latest` image containing the runtime, use:
603603

cmake/CompileOptions.cmake

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -106,17 +106,17 @@ if(WIN32)
106106
if(CMAKE_BUILD_TYPE STREQUAL "Debug" OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo")
107107
# Disable optimizations
108108
add_compile_options(/Od)
109-
else()
109+
else()
110110
# Enable read-only string pooling
111-
add_compile_options(/GF)
112-
113-
# Buffer Security Check
111+
add_compile_options(/GF)
112+
113+
# Buffer Security Check
114114
add_compile_options(/GS)
115115

116116
# Enable optimizations
117117
add_compile_options(/O2)
118118
add_compile_options(/Oi)
119-
add_compile_options(/Oy)
119+
add_compile_options(/Oy)
120120
endif()
121121
endif()
122122

deploy/packages/descriptor-metacall.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
"files": [{
2727
"includePattern": "artifacts/packages/(.*\\.deb)", "uploadPattern": "$1",
2828
"matrixParams": {
29-
"deb_distribution": "stretch",
29+
"deb_distribution": "buster",
3030
"deb_component": "main",
3131
"deb_architecture": "amd64"
3232
}

deploy/packages/descriptor-metacall.json.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
"files": [{
2828
"includePattern": "@DEPLOY_ARTIFACTS_PATH@/(.*\\.deb)", "uploadPattern": "$1",
2929
"matrixParams": {
30-
"deb_distribution": "stretch",
30+
"deb_distribution": "buster",
3131
"deb_component": "main",
3232
"deb_architecture": "amd64"
3333
}

deploy/packages/pack-metacall.cmake

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,7 @@ endif()
184184
set(CPACK_DEBIAN_PACKAGE_NAME "${package_name}")
185185
set(CPACK_DEBIAN_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION}")
186186
set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "all")
187-
set(CPACK_DEBIAN_RUNTIME_PACKAGE_DEPENDS "bash (>= 4.4-5), curl (>= 7.52.1-5), libc6 (>= 2.24-11), libgcc1 (>= 1:6.3.0-18), libpython3.5 (>= 3.5.3-1), libruby (>= 1:2.3.3), libicu57 (>= 57.1-6), libunwind8 (>= 1.1-4.1)")
187+
set(CPACK_DEBIAN_RUNTIME_PACKAGE_DEPENDS "bash (>= 4.4-5), curl (>= 7.52.1-5), libc6 (>= 2.24-11), libgcc1 (>= 1:6.3.0-18), libpython3.7 (>= 3.7.3-2), libruby (>= 1:2.5.5), libicu57 (>= 57.1-6), libunwind8 (>= 1.1-4.1)")
188188
set(CPACK_DEBIAN_PACKAGE_MAINTAINER "${package_maintainer}")
189189
set(CPACK_DEBIAN_PACKAGE_DESCRIPTION "${CPACK_PACKAGE_DESCRIPTION_SUMMARY}")
190190
set(CPACK_DEBIAN_PACKAGE_SECTION "devel")
@@ -203,7 +203,7 @@ set(CPACK_RPM_PACKAGE_NAME "${package_name}")
203203
set(CPACK_RPM_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION}")
204204
set(CPACK_RPM_PACKAGE_RELEASE 1)
205205
set(CPACK_RPM_PACKAGE_ARCHITECTURE "x86_64")
206-
set(CPACK_RPM_PACKAGE_REQUIRES "bash >= 4.4, curl >= 7.52.1, libc6 >= 2.24, libgcc1 >= 6.3.0, libpython3.5 >= 3.5.3, libruby >= 2.3.3, libicu57 >= 57.1, libunwind8 >= 1.1-4.1")
206+
set(CPACK_RPM_PACKAGE_REQUIRES "bash >= 4.4, curl >= 7.52.1, libc6 >= 2.24, libgcc1 >= 6.3.0, libpython3.7 >= 3.7.3, libruby >= 2.5.5, libicu57 >= 57.1, libunwind8 >= 1.1-4.1")
207207
set(CPACK_RPM_PACKAGE_PROVIDES "")
208208
set(CPACK_RPM_PACKAGE_VENDOR "${package_vendor}")
209209
set(CPACK_RPM_PACKAGE_LICENSE "Apache License Version 2.0")

docker-compose.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ services:
4343
METACALL_BASE_IMAGE: $METACALL_BASE_IMAGE
4444
METACALL_PATH: $METACALL_PATH
4545
METACALL_TOOLS_PATH: $METACALL_PATH/tools
46-
METACALL_INSTALL_OPTIONS: root base python ruby netcore2 v8rep51 nodejs file rapidjson funchook swig pack # coverage
46+
METACALL_INSTALL_OPTIONS: root base python ruby netcore2 nodejs file rapidjson funchook swig pack # v8rep51 coverage
4747
environment:
4848
DEBIAN_FRONTEND: noninteractive
4949
LTTNG_UST_REGISTER_TIMEOUT: 0
@@ -60,7 +60,7 @@ services:
6060
args:
6161
METACALL_PATH: $METACALL_PATH
6262
METACALL_BUILD_TYPE: $METACALL_CORE_BUILD_TYPE
63-
METACALL_BUILD_OPTIONS: root python ruby netcore2 v8 nodejs file examples distributable tests scripts ports dynamic install pack # coverage
63+
METACALL_BUILD_OPTIONS: root python ruby netcore2 nodejs file examples distributable tests scripts ports dynamic install pack # v8 coverage
6464
environment:
6565
DEBIAN_FRONTEND: noninteractive
6666
LTTNG_UST_REGISTER_TIMEOUT: 0
@@ -83,7 +83,7 @@ services:
8383
args:
8484
METACALL_PATH: $METACALL_PATH
8585
METACALL_BASE_IMAGE: $METACALL_BASE_IMAGE
86-
METACALL_RUNTIME_OPTIONS: root base python ruby netcore2 v8 nodejs file ports clean
86+
METACALL_RUNTIME_OPTIONS: root base python ruby netcore2 nodejs file ports clean # v8
8787
environment:
8888
DEBIAN_FRONTEND: noninteractive
8989
LTTNG_UST_REGISTER_TIMEOUT: 0

source/ports/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ list(APPEND CMAKE_SWIG_FLAGS
100100

101101
add_subdirectory(cs_port)
102102
add_subdirectory(d_port)
103-
add_subdirectory(go_port)
103+
# add_subdirectory(go_port) # TODO: Integrate it with CMake properly and with Docker
104104
add_subdirectory(java_port)
105105
add_subdirectory(js_port)
106106
add_subdirectory(lua_port)

source/ports/java_port/CMakeLists.txt

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -101,11 +101,9 @@ foreach(file ${interfaces} ${headers} ${sources})
101101
)
102102
endforeach()
103103

104-
swig_add_module(${target}
105-
java
106-
${interfaces}
107-
${headers}
108-
${sources}
104+
swig_add_library(${target}
105+
LANGUAGE java
106+
SOURCES ${interfaces} ${headers} ${sources}
109107
)
110108

111109
#

source/ports/js_port/CMakeLists.txt

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -100,11 +100,9 @@ foreach(file ${interfaces} ${headers} ${sources})
100100
)
101101
endforeach()
102102

103-
swig_add_module(${target}
104-
javascript
105-
${interfaces}
106-
${headers}
107-
${sources}
103+
swig_add_library(${target}
104+
LANGUAGE javascript
105+
SOURCES ${interfaces} ${headers} ${sources}
108106
)
109107

110108
set_property(TARGET ${target} PROPERTY SWIG_USE_LIBRARY_INCLUDE_DIRECTORIES TRUE)

0 commit comments

Comments
 (0)