mirror of
https://github.com/ivabus/pantry
synced 2024-11-22 08:25:07 +03:00
+mariadb.com/server (#1291)
* +mariadb.com/server (error building) * this build system feels like 2001 * Needs make * libs and perms * try to fix lib issues * try to fix linux --------- Co-authored-by: James Reynolds <magnsuviri@me.com> Co-authored-by: Jacob Heider <jacob@tea.xyz>
This commit is contained in:
parent
8c98285946
commit
1263ec26a4
1 changed files with 199 additions and 0 deletions
199
projects/mariadb.com/server/package.yml
Normal file
199
projects/mariadb.com/server/package.yml
Normal file
|
@ -0,0 +1,199 @@
|
|||
distributable:
|
||||
url: git+https://github.com/MariaDB/server
|
||||
ref: mariadb-{{version.raw}}
|
||||
|
||||
versions:
|
||||
github: MariaDB/server/tags
|
||||
strip: /^mariadb-/
|
||||
|
||||
platforms:
|
||||
- darwin
|
||||
- linux/x86-64 # should work on aarch64, but it's complaining about one of its atomic macros
|
||||
|
||||
dependencies:
|
||||
sourceware.org/bzip2: '*'
|
||||
github.com/besser82/libxcrypt: '*'
|
||||
gnome.org/libxml2: '*'
|
||||
invisible-island.net/ncurses: '*'
|
||||
zlib.net: ^1
|
||||
openssl.org: ^1.1
|
||||
pcre.org/v2: '*'
|
||||
facebook.com/zstd: '*'
|
||||
|
||||
build:
|
||||
dependencies:
|
||||
tea.xyz/gx/cc: c99
|
||||
tea.xyz/gx/make: '*'
|
||||
cmake.org: '*'
|
||||
freedesktop.org/pkg-config: '*'
|
||||
gnu.org/bison: '*'
|
||||
gnu.org/coreutils: '*'
|
||||
git-scm.org: '*'
|
||||
groonga.org: '*'
|
||||
|
||||
script:
|
||||
- git submodule update --init --recursive
|
||||
# Use our groonga
|
||||
- rm -rf storage/mroonga/vendor/groonga
|
||||
# -DINSTALL_* are relative to prefix
|
||||
- cmake -S . -B build
|
||||
-DCMAKE_INSTALL_PREFIX={{ prefix }}
|
||||
-DMYSQL_DATADIR={{ prefix }}/var/mysql
|
||||
-DINSTALL_SYSCONFDIR=etc
|
||||
-DINSTALL_INCLUDEDIR=include/mysql
|
||||
-DINSTALL_MANDIR=share/man
|
||||
-DINSTALL_DOCDIR=share/doc/mariadb
|
||||
-DINSTALL_INFODIR=share/info
|
||||
-DINSTALL_MYSQLSHAREDIR=share/mysql
|
||||
-DWITH_LIBFMT=bundled
|
||||
-DWITH_SSL=system
|
||||
-DWITH_UNIT_TESTS=OFF
|
||||
-DDEFAULT_CHARSET=utf8mb4
|
||||
-DDEFAULT_COLLATION=utf8mb4_general_ci
|
||||
-DCOMPILATION_COMMENT=made_by_tea
|
||||
-DPLUGIN_ROCKSDB=NO
|
||||
|
||||
- cmake --build build
|
||||
- cmake --install build
|
||||
|
||||
# Fix my.cnf to point to {{ prefix }}/etc instead of /etc
|
||||
- run: |
|
||||
mkdir my.cnf.d
|
||||
sed -i.bak 's|!includedir /etc/my.cnf.d|!includedir {{ prefix }}/etc/my.cnf.d|' my.cnf
|
||||
rm my.cnf.bak
|
||||
working-directory: ${{ prefix }}/etc
|
||||
|
||||
# Link the setup script into bin
|
||||
- run: ln -s ../scripts/mysql_install_db .
|
||||
working-directory: ${{ prefix }}/bin
|
||||
|
||||
# Fix up the control script and link into {{ bin }}
|
||||
- run: |
|
||||
sed -i.bak 's|\(PATH="\)|\1{{ prefix }}/bin:|' mysql.server
|
||||
rm mysql.server.bak
|
||||
ln -s ../support-files/mysql.server ../bin/
|
||||
working-directory: ${{ prefix }}/support-files
|
||||
|
||||
# Move sourced non-executable out of bin into libexec
|
||||
- run: mv ../bin/wsrep_sst_common .
|
||||
working-directory: ${{ prefix }}/libexec
|
||||
|
||||
# Fix up references to wsrep_sst_common
|
||||
- run: |
|
||||
sed -i.bak 's|$(dirname "$0")/wsrep_sst_common|$(dirname "$0")/../libexec/wsrep_sst_common|g' \
|
||||
wsrep_sst_mysqldump \
|
||||
wsrep_sst_rsync \
|
||||
wsrep_sst_mariabackup
|
||||
rm wsrep_sst_*.bak
|
||||
working-directory: ${{ prefix }}/bin
|
||||
env:
|
||||
linux/aarch64:
|
||||
CFLAGS: $CFLAGS -Wno-implicit-function-declaration
|
||||
|
||||
provides:
|
||||
- bin/aria_chk
|
||||
- bin/aria_dump_log
|
||||
- bin/aria_ftdump
|
||||
- bin/aria_pack
|
||||
- bin/aria_read_log
|
||||
- bin/aria_s3_copy
|
||||
- bin/innochecksum
|
||||
- bin/mariabackup
|
||||
- bin/mariadb
|
||||
- bin/mariadb-access
|
||||
- bin/mariadb-admin
|
||||
- bin/mariadb-backup
|
||||
- bin/mariadb-binlog
|
||||
- bin/mariadb-check
|
||||
- bin/mariadb-client-test
|
||||
- bin/mariadb-config
|
||||
- bin/mariadb-conv
|
||||
- bin/mariadb-convert-table-format
|
||||
- bin/mariadb-dump
|
||||
- bin/mariadb-dumpslow
|
||||
- bin/mariadb-find-rows
|
||||
- bin/mariadb-fix-extensions
|
||||
- bin/mariadb-hotcopy
|
||||
- bin/mariadb-import
|
||||
- bin/mariadb-plugin
|
||||
- bin/mariadb-secure-installation
|
||||
- bin/mariadb-setpermission
|
||||
- bin/mariadb-show
|
||||
- bin/mariadb-slap
|
||||
- bin/mariadb-test
|
||||
- bin/mariadb-tzinfo-to-sql
|
||||
- bin/mariadb-upgrade
|
||||
- bin/mariadb-waitpid
|
||||
- bin/mariadb_config
|
||||
- bin/mariadbd
|
||||
- bin/mariadbd-multi
|
||||
- bin/mariadbd-safe
|
||||
- bin/mariadbd-safe-helper
|
||||
- bin/mbstream
|
||||
- bin/msql2mysql
|
||||
- bin/my_print_defaults
|
||||
- bin/myisam_ftdump
|
||||
- bin/myisamchk
|
||||
- bin/myisamlog
|
||||
- bin/myisampack
|
||||
- bin/mysql
|
||||
- bin/mysql.server
|
||||
- bin/mysql_client_test
|
||||
- bin/mysql_config
|
||||
- bin/mysql_convert_table_format
|
||||
- bin/mysql_find_rows
|
||||
- bin/mysql_fix_extensions
|
||||
- bin/mysql_install_db
|
||||
- bin/mysql_plugin
|
||||
- bin/mysql_secure_installation
|
||||
- bin/mysql_setpermission
|
||||
- bin/mysql_tzinfo_to_sql
|
||||
- bin/mysql_upgrade
|
||||
- bin/mysql_waitpid
|
||||
- bin/mysqlaccess
|
||||
- bin/mysqladmin
|
||||
- bin/mysqlbinlog
|
||||
- bin/mysqlcheck
|
||||
- bin/mysqld
|
||||
- bin/mysqld_multi
|
||||
- bin/mysqld_safe
|
||||
- bin/mysqld_safe_helper
|
||||
- bin/mysqldump
|
||||
- bin/mysqldumpslow
|
||||
- bin/mysqlhotcopy
|
||||
- bin/mysqlimport
|
||||
- bin/mysqlshow
|
||||
- bin/mysqlslap
|
||||
- bin/mysqltest
|
||||
- bin/mytop
|
||||
- bin/perror
|
||||
- bin/replace
|
||||
- bin/resolve_stack_dump
|
||||
- bin/resolveip
|
||||
- bin/wsrep_sst_backup
|
||||
- bin/wsrep_sst_mariabackup
|
||||
- bin/wsrep_sst_mysqldump
|
||||
- bin/wsrep_sst_rsync
|
||||
- bin/wsrep_sst_rsync_wan
|
||||
|
||||
test:
|
||||
script:
|
||||
- killall mysqld || true
|
||||
- mkdir -p mysql tmp
|
||||
# GHA runs as root
|
||||
- run: |
|
||||
if test "$(id -u)" = "0"; then
|
||||
USER_ARG="--user=root"
|
||||
fi
|
||||
- mysql_install_db --no-defaults
|
||||
$USER_ARG
|
||||
--basedir={{ prefix }}
|
||||
--datadir=$(pwd)/mysql
|
||||
--tmpdir=$(pwd)/tmp
|
||||
--auth-root-authentication-method=normal
|
||||
- mysqld --no-defaults $USER_ARG --datadir=$(pwd)/mysql --port=3306 --tmpdir=$(pwd)/tmp &
|
||||
- sleep 5
|
||||
- mysql --port=3306 --user=root --password= --execute='show databases;'
|
||||
- mysqladmin --port=3306 --user=root --password= shutdown
|
||||
- sleep 5
|
||||
- (ps aux | grep mysqld | grep -v grep) && exit 1 || exit 0
|
Loading…
Reference in a new issue