milsko/Jenkinsfile

89 lines
2 KiB
Text
Raw Normal View History

2026-02-03 23:24:34 +09:00
pipeline {
agent {
label "built-in"
}
stages {
stage("Build document") {
2026-03-14 05:09:53 +09:00
when {
branch "master"
}
2026-04-12 00:27:04 +09:00
agent {
label "built-in"
}
2026-02-03 23:24:34 +09:00
steps {
2026-04-12 00:27:04 +09:00
sh("rm -rf include/Mw/LowLevel/Wayland")
2026-02-03 23:43:08 +09:00
sh("doxygen")
sh("rm -rf /var/www/milsko-doxygen")
sh("mv doxygen/html /var/www/milsko-doxygen")
2026-02-03 23:24:34 +09:00
}
2026-02-04 00:02:21 +09:00
post {
always {
notifyDiscord()
}
}
2026-02-03 23:24:34 +09:00
}
2026-02-03 23:46:24 +09:00
stage("Build") {
parallel {
stage("Build for Linux 64-bit") {
2026-02-04 00:21:31 +09:00
agent {
label "built-in"
}
2026-02-03 23:46:24 +09:00
steps {
2026-04-22 13:45:55 +09:00
sh("rm -f *.so")
2026-03-05 04:09:01 +09:00
sh("./configure --enable-opengl --enable-vulkan --without-vulkan-string-helper")
2026-02-03 23:46:24 +09:00
sh("make clean")
sh("make -j4")
2026-04-22 13:41:18 +09:00
sh("mv src/libMw.so libMw64.so")
archiveArtifacts("libMw64.so")
2026-02-03 23:46:24 +09:00
}
}
stage("Build for Windows 32-bit") {
2026-02-04 00:21:31 +09:00
agent {
label "built-in"
}
2026-02-03 23:46:24 +09:00
steps {
2026-04-22 13:45:55 +09:00
sh("rm -f *.dll *.dll.a")
2026-03-05 04:09:01 +09:00
sh("./configure --enable-opengl --enable-stb-truetype --disable-freetype2 --cross --target=Windows --host=i686-w64-mingw32")
2026-02-03 23:46:24 +09:00
sh("make clean")
sh("make -j4")
2026-04-22 12:13:43 +09:00
sh("mv src/Mw.dll Mw32.dll")
2026-04-22 13:41:18 +09:00
sh("mv src/libMw.dll.a libMw32.dll.a")
archiveArtifacts("Mw32.dll,libMw32.dll.a")
2026-02-03 23:46:24 +09:00
}
}
stage("Build for Windows 64-bit") {
2026-02-04 00:21:31 +09:00
agent {
label "built-in"
}
2026-02-03 23:46:24 +09:00
steps {
2026-04-22 13:45:55 +09:00
sh("rm -f *.dll *.dll.a")
2026-03-05 04:09:01 +09:00
sh("./configure --enable-opengl --enable-stb-truetype --disable-freetype2 --cross --target=Windows --host=x86_64-w64-mingw32")
2026-02-03 23:46:24 +09:00
sh("make clean")
sh("make -j4")
2026-04-22 12:13:43 +09:00
sh("mv src/Mw.dll Mw64.dll")
2026-04-22 13:41:18 +09:00
sh("mv src/libMw.dll.a libMw64.dll.a")
archiveArtifacts("Mw64.dll,libMw64.dll.a")
2026-02-03 23:46:24 +09:00
}
}
2026-04-06 17:37:19 +09:00
stage("Build for Windows 32-bit (MSVC)") {
2026-02-04 00:25:49 +09:00
agent {
label "2012r2"
}
steps {
2026-04-22 13:45:55 +09:00
bat("del /s *.dll *.lib")
2026-02-04 00:30:22 +09:00
bat("nmake -f NTMakefile clean")
bat("nmake -f NTMakefile")
2026-04-22 13:45:55 +09:00
bat("move /y src\\Mw.dll MwMSVC32.dll")
bat("move /y src\\Mw.lib MwMSVC32.lib")
archiveArtifacts("MwMSVC32.dll,MwMSVC32.lib")
2026-02-04 00:25:49 +09:00
}
}
2026-02-03 23:46:24 +09:00
}
2026-02-04 00:02:21 +09:00
post {
always {
notifyDiscord()
}
}
2026-02-03 23:46:24 +09:00
}
2026-02-03 23:24:34 +09:00
}
}