Restructure files and migrate to Gradle-based build
|
@ -1,28 +0,0 @@
|
|||
image: Visual Studio 2015
|
||||
environment:
|
||||
BOOST_ROOT: C:\Libraries\boost_1_66_0
|
||||
# If the Gradle Daemon is used, AppVeyor waits forever for it to terminate
|
||||
GRADLE_OPTS: -Dorg.gradle.daemon=false
|
||||
init:
|
||||
# Print Remote Desktop information for debugging porposes
|
||||
- ps: iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
|
||||
build_script:
|
||||
- mkdir build
|
||||
- cd build
|
||||
- cmake .. -G "Visual Studio 14 2015"
|
||||
- cmake --build . --config Release --target package
|
||||
- cd %APPVEYOR_BUILD_FOLDER%
|
||||
test_script:
|
||||
- build\rhubarb\Release\runTests.exe
|
||||
artifacts:
|
||||
- path: build\rhubarb-lip-sync-*.zip
|
||||
deploy:
|
||||
provider: GitHub
|
||||
release: $(APPVEYOR_REPO_TAG_NAME)
|
||||
description: ''
|
||||
auth_token:
|
||||
secure: Gk7y8Cb9ImDBthgL56W1QMWDEp4oIcbUeKgXnkiBsy7G+V6H59MPXv0ZC7Zht8+3
|
||||
artifact: /.*\.zip/
|
||||
draft: true
|
||||
on:
|
||||
appveyor_repo_tag: true
|
|
@ -1,3 +1,6 @@
|
|||
.vs/
|
||||
.idea/
|
||||
.gradle/
|
||||
.vscode/
|
||||
build/
|
||||
out/
|
||||
*.user
|
|
@ -1,42 +0,0 @@
|
|||
cmake_minimum_required(VERSION 3.2)
|
||||
|
||||
include(appInfo.cmake)
|
||||
|
||||
# Build and install main executable
|
||||
add_subdirectory(rhubarb)
|
||||
|
||||
# Build and install extras
|
||||
add_subdirectory("extras/AdobeAfterEffects")
|
||||
add_subdirectory("extras/MagixVegas")
|
||||
add_subdirectory("extras/EsotericSoftwareSpine")
|
||||
|
||||
# Install misc. files
|
||||
install(
|
||||
FILES README.adoc LICENSE.md CHANGELOG.md
|
||||
DESTINATION .
|
||||
)
|
||||
|
||||
# Configure CPack
|
||||
function(get_short_system_name variable)
|
||||
if ("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
|
||||
set(${variable} "OSX" PARENT_SCOPE)
|
||||
elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Windows")
|
||||
set(${variable} "Win32" PARENT_SCOPE)
|
||||
else()
|
||||
set(${variable} "${CMAKE_SYSTEM_NAME}" PARENT_SCOPE)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
set(CPACK_PACKAGE_NAME ${appName})
|
||||
string(REPLACE " " "-" CPACK_PACKAGE_NAME "${CPACK_PACKAGE_NAME}")
|
||||
get_short_system_name(CPACK_SYSTEM_NAME)
|
||||
set(CPACK_PACKAGE_VERSION_MAJOR ${appVersionMajor})
|
||||
set(CPACK_PACKAGE_VERSION_MINOR ${appVersionMinor})
|
||||
set(CPACK_PACKAGE_VERSION_PATCH ${appVersionPatch})
|
||||
set(CPACK_PACKAGE_VERSION ${appVersion})
|
||||
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${CPACK_SYSTEM_NAME}")
|
||||
string(TOLOWER "${CPACK_PACKAGE_FILE_NAME}" CPACK_PACKAGE_FILE_NAME)
|
||||
set(CPACK_GENERATOR ZIP)
|
||||
|
||||
# Run CPack
|
||||
include(CPack)
|
|
@ -1,8 +0,0 @@
|
|||
cmake_minimum_required(VERSION 3.2)
|
||||
|
||||
set(appName "Rhubarb Lip Sync")
|
||||
set(appVersionMajor 1)
|
||||
set(appVersionMinor 10)
|
||||
set(appVersionPatch 0)
|
||||
set(appVersionSuffix "")
|
||||
set(appVersion "${appVersionMajor}.${appVersionMinor}.${appVersionPatch}${appVersionSuffix}")
|
|
@ -0,0 +1,24 @@
|
|||
plugins {
|
||||
// Sets up standard lifecycle tasks like `build` and `assemble`.
|
||||
// Also required for the Zip task to compute its archive file name.
|
||||
base
|
||||
}
|
||||
|
||||
group = "com.rhubarb_lip_sync"
|
||||
version = "2.0.0-pre-alpha"
|
||||
|
||||
tasks {
|
||||
val zip by creating(Zip::class) {
|
||||
subprojects.forEach { dependsOn("${it.name}:assemble") }
|
||||
|
||||
for (subproject in subprojects) {
|
||||
from(File(subproject.buildDir, "distributions")) {
|
||||
into(if (subproject.name == "rhubarb") "" else subproject.name)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
assemble {
|
||||
dependsOn(zip)
|
||||
}
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
cmake_minimum_required(VERSION 3.2)
|
||||
|
||||
set(afterEffectsFiles
|
||||
"Rhubarb Lip Sync.jsx"
|
||||
"README.adoc"
|
||||
)
|
||||
|
||||
install(
|
||||
FILES ${afterEffectsFiles}
|
||||
DESTINATION "extras/AdobeAfterEffects"
|
||||
)
|
|
@ -1,8 +0,0 @@
|
|||
# Directory is generated when importing Gradle project
|
||||
/.idea/
|
||||
|
||||
*.iml
|
||||
/.gradle/
|
||||
/build/
|
||||
/out/
|
||||
/tmp/
|
|
@ -1,18 +0,0 @@
|
|||
cmake_minimum_required(VERSION 3.2)
|
||||
|
||||
add_custom_target(
|
||||
rhubarbForSpine ALL
|
||||
"./gradlew" "build"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
COMMENT "Building Rhubarb for Spine through Gradle."
|
||||
)
|
||||
|
||||
install(
|
||||
DIRECTORY "build/libs/"
|
||||
DESTINATION "extras/EsotericSoftwareSpine"
|
||||
)
|
||||
|
||||
install(
|
||||
FILES README.adoc
|
||||
DESTINATION "extras/EsotericSoftwareSpine"
|
||||
)
|
|
@ -1,50 +0,0 @@
|
|||
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
||||
import java.io.File
|
||||
|
||||
plugins {
|
||||
kotlin("jvm") version "1.3.41"
|
||||
}
|
||||
|
||||
fun getVersion(): String {
|
||||
// Dynamically read version from CMake file
|
||||
val file = File(rootDir.parentFile.parentFile, "appInfo.cmake")
|
||||
val text = file.readText()
|
||||
val major = Regex("""appVersionMajor\s+(\d+)""").find(text)!!.groupValues[1]
|
||||
val minor = Regex("""appVersionMinor\s+(\d+)""").find(text)!!.groupValues[1]
|
||||
val patch = Regex("""appVersionPatch\s+(\d+)""").find(text)!!.groupValues[1]
|
||||
val suffix = Regex("""appVersionSuffix\s+"(.*?)"""").find(text)!!.groupValues[1]
|
||||
return "$major.$minor.$patch$suffix"
|
||||
}
|
||||
|
||||
group = "com.rhubarb_lip_sync"
|
||||
version = getVersion()
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
jcenter()
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation(kotlin("stdlib-jdk8"))
|
||||
implementation("com.beust:klaxon:5.0.1")
|
||||
implementation("org.apache.commons:commons-lang3:3.9")
|
||||
implementation("no.tornado:tornadofx:1.7.19")
|
||||
testImplementation("org.junit.jupiter:junit-jupiter:5.5.0")
|
||||
testCompile("org.assertj:assertj-core:3.11.1")
|
||||
}
|
||||
|
||||
tasks.withType<KotlinCompile> {
|
||||
kotlinOptions.jvmTarget = "1.8"
|
||||
}
|
||||
|
||||
tasks.test {
|
||||
useJUnitPlatform()
|
||||
}
|
||||
|
||||
tasks.withType<Jar> {
|
||||
manifest {
|
||||
attributes("Main-Class" to "com.rhubarb_lip_sync.rhubarb_for_spine.MainKt")
|
||||
}
|
||||
|
||||
from(configurations.compileClasspath.get().map { if (it.isDirectory) it else zipTree(it) })
|
||||
}
|
|
@ -1 +0,0 @@
|
|||
rootProject.name = "rhubarb-for-spine"
|
|
@ -1,14 +0,0 @@
|
|||
cmake_minimum_required(VERSION 3.2)
|
||||
|
||||
set(vegasFiles
|
||||
"Debug Rhubarb.cs"
|
||||
"Debug Rhubarb.cs.config"
|
||||
"Import Rhubarb.cs"
|
||||
"Import Rhubarb.cs.config"
|
||||
"README.adoc"
|
||||
)
|
||||
|
||||
install(
|
||||
FILES ${vegasFiles}
|
||||
DESTINATION "extras/MagixVegas"
|
||||
)
|
|
@ -1,6 +0,0 @@
|
|||
#!/bin/sh
|
||||
rm -rf build
|
||||
mkdir build
|
||||
cd build
|
||||
cmake .. -G Xcode
|
||||
cmake --build . --config Release --target package
|
|
@ -1,5 +0,0 @@
|
|||
rmdir /s /q build
|
||||
mkdir build
|
||||
cd build
|
||||
cmake .. -G "Visual Studio 14 2015"
|
||||
cmake --build . --config Release --target package
|
|
@ -0,0 +1,12 @@
|
|||
tasks {
|
||||
var distDirectory = File(project.buildDir, "distributions")
|
||||
|
||||
val assemble by creating(Copy::class) {
|
||||
from(listOf("Rhubarb Lip Sync.jsx", "README.adoc"))
|
||||
into(distDirectory)
|
||||
}
|
||||
|
||||
val build by creating {
|
||||
dependsOn(assemble)
|
||||
}
|
||||
}
|
|
@ -0,0 +1,50 @@
|
|||
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
||||
|
||||
plugins {
|
||||
kotlin("jvm") version "1.3.41"
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
jcenter()
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation(kotlin("stdlib-jdk8"))
|
||||
implementation("com.beust:klaxon:5.0.1")
|
||||
implementation("org.apache.commons:commons-lang3:3.9")
|
||||
implementation("no.tornado:tornadofx:1.7.19")
|
||||
testImplementation("org.junit.jupiter:junit-jupiter:5.5.0")
|
||||
testCompile("org.assertj:assertj-core:3.11.1")
|
||||
}
|
||||
|
||||
tasks {
|
||||
var distDirectory = File(project.buildDir, "distributions")
|
||||
|
||||
withType<KotlinCompile> {
|
||||
kotlinOptions.jvmTarget = "1.8"
|
||||
}
|
||||
|
||||
test {
|
||||
useJUnitPlatform()
|
||||
}
|
||||
|
||||
val copyDoc by creating(Copy::class) {
|
||||
from("README.adoc")
|
||||
into(distDirectory)
|
||||
}
|
||||
|
||||
assemble {
|
||||
dependsOn(copyDoc)
|
||||
}
|
||||
|
||||
jar {
|
||||
destinationDirectory.set(distDirectory)
|
||||
|
||||
manifest {
|
||||
attributes("Main-Class" to "com.rhubarb_lip_sync.rhubarb_for_spine.MainKt")
|
||||
}
|
||||
|
||||
from(configurations.compileClasspath.get().map { if (it.isDirectory) it else zipTree(it) })
|
||||
}
|
||||
}
|
Before Width: | Height: | Size: 386 B After Width: | Height: | Size: 386 B |
Before Width: | Height: | Size: 6.9 KiB After Width: | Height: | Size: 6.9 KiB |
Before Width: | Height: | Size: 942 B After Width: | Height: | Size: 942 B |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
|
@ -0,0 +1,18 @@
|
|||
tasks {
|
||||
var distDirectory = File(project.buildDir, "distributions")
|
||||
|
||||
val assemble by creating(Copy::class) {
|
||||
from(listOf(
|
||||
"Debug Rhubarb.cs",
|
||||
"Debug Rhubarb.cs.config",
|
||||
"Import Rhubarb.cs",
|
||||
"Import Rhubarb.cs.config",
|
||||
"README.adoc"
|
||||
))
|
||||
into(distDirectory)
|
||||
}
|
||||
|
||||
create("build") {
|
||||
dependsOn(assemble)
|
||||
}
|
||||
}
|
|
@ -0,0 +1,5 @@
|
|||
rootProject.name = "rhubarb-lip-sync"
|
||||
|
||||
include("rhubarb-for-after-effects")
|
||||
include("rhubarb-for-spine")
|
||||
include("rhubarb-for-vegas")
|