diff --git a/config/ext.json b/config/ext.json index 8a75b502..2d94cb32 100644 --- a/config/ext.json +++ b/config/ext.json @@ -16,6 +16,14 @@ "calendar": { "type": "builtin" }, + "crypto": { + "type": "external", + "arg-type": "with", + "source": "ext-crypto", + "lib-depends": [ + "openssl" + ] + }, "ctype": { "type": "builtin" }, @@ -122,6 +130,10 @@ "libiconv" ] }, + "igbinary": { + "type": "external", + "source": "igbinary" + }, "imagick": { "type": "external", "source": "ext-imagick", @@ -164,6 +176,14 @@ "openssl" ] }, + "leveldb": { + "type": "external", + "arg-type": "with-prefix", + "source": "pmmp-leveldb", + "lib-depends": [ + "leveldb" + ] + }, "mbregex": { "type": "builtin", "arg-type": "custom", @@ -213,6 +233,10 @@ "zlib" ] }, + "morton": { + "type": "external", + "source": "ext-morton" + }, "mysqli": { "type": "builtin", "arg-type": "with", @@ -299,6 +323,16 @@ "zlib" ] }, + "pmmp-chunkutils2": { + "type": "external", + "source": "pmmp-chunkutils2", + "arg-type": "custom", + "cpp-extension": true + }, + "pmmpthread": { + "type": "external", + "source": "pmmpthread" + }, "posix": { "type": "builtin", "unix-only": true diff --git a/config/lib.json b/config/lib.json index 14d66130..404ea5b1 100644 --- a/config/lib.json +++ b/config/lib.json @@ -163,6 +163,13 @@ "libsodium" ] }, + "leveldb": { + "source": "leveldb", + "static-libs-unix": [ + "libleveldb.a" + ], + "cpp-library": true + }, "libargon2": { "source": "libargon2", "static-libs-unix": [ diff --git a/config/source.json b/config/source.json index 09cd2064..7e3b1fb1 100644 --- a/config/source.json +++ b/config/source.json @@ -42,6 +42,16 @@ "path": "COPYING" } }, + "ext-crypto": { + "type": "git", + "path": "php-src/ext/crypto", + "rev": "master", + "url": "https://github.com/bukka/php-crypto.git", + "license": { + "type": "file", + "path": "LICENSE" + } + }, "ext-event": { "type": "url", "url": "https://bitbucket.org/osmanov/pecl-event/get/3.0.8.tar.gz", @@ -80,6 +90,16 @@ "path": "LICENSE" } }, + "ext-morton": { + "type": "git", + "path": "php-src/ext/morton", + "rev": "master", + "url": "https://github.com/pmmp/ext-morton.git", + "license": { + "type": "file", + "path": "LICENSE" + } + }, "ext-snappy": { "type": "git", "path": "php-src/ext/snappy", @@ -136,6 +156,15 @@ "path": "LICENSE" } }, + "igbinary": { + "type": "ghtar", + "path": "php-src/ext/igbinary", + "repo": "igbinary/igbinary", + "license": { + "type": "file", + "path": "COPYING" + } + }, "imagemagick": { "type": "ghtar", "repo": "ImageMagick/ImageMagick", @@ -172,6 +201,15 @@ "path": "LICENSE" } }, + "leveldb": { + "type": "git", + "rev": "mojang-compatible", + "url": "https://github.com/pmmp/leveldb.git", + "license": { + "type": "file", + "path": "LICENSE" + } + }, "libargon2": { "type": "git", "rev": "master", @@ -392,6 +430,34 @@ "path": "COPYING" } }, + "pmmp-chunkutils2": { + "type": "ghtar", + "path": "php-src/ext/chunkutils2", + "repo": "pmmp/ext-chunkutils2", + "license": { + "type": "file", + "path": "LICENSE" + } + }, + "pmmp-leveldb": { + "type": "git", + "path": "php-src/ext/leveldb", + "rev": "pmmp-mojang-compatible", + "url": "https://github.com/pmmp/php-leveldb.git", + "license": { + "type": "file", + "path": "LICENSE" + } + }, + "pmmpthread": { + "type": "ghtar", + "path": "php-src/ext/pmmpthread", + "repo": "pmmp/ext-pmmpthread", + "license": { + "type": "file", + "path": "LICENSE" + } + }, "postgresql": { "type": "url", "url": "https://ftp.postgresql.org/pub/source/v16.1/postgresql-16.1.tar.gz", diff --git a/src/SPC/builder/extension/pmmp_chunkutils2.php b/src/SPC/builder/extension/pmmp_chunkutils2.php new file mode 100644 index 00000000..d6b7152d --- /dev/null +++ b/src/SPC/builder/extension/pmmp_chunkutils2.php @@ -0,0 +1,22 @@ +source_dir . '/build'); + // Start build + shell()->cd($this->source_dir . '/build') + ->exec( + "cmake {$this->builder->makeCmakeArgs()} " . + '-DBUILD_SHARED_LIBS=OFF ' . + '-DLEVELDB_BUILD_TESTS=OFF ' . + '-DLEVELDB_BUILD_BENCHMARKS=OFF ' . + '..' + ) + ->exec("cmake --build . -j {$this->builder->concurrency}") + ->exec('make install DESTDIR=' . BUILD_ROOT_PATH); + } +}