diff --git a/vtm-android-gdx/build.gradle b/vtm-android-gdx/build.gradle index 4437d478..88d2b5b6 100644 --- a/vtm-android-gdx/build.gradle +++ b/vtm-android-gdx/build.gradle @@ -51,30 +51,30 @@ android.applicationVariants.all { variant -> return; // Skip debug builds. } - def taskJar = project.tasks.create "jar${name.capitalize()}", Jar - taskJar.dependsOn variant.javaCompile - taskJar.from variant.javaCompile.destinationDir - taskJar.exclude 'android-logger.properties' - artifacts.add('archives', taskJar); + def jar = project.tasks.create "jar${name.capitalize()}", Jar + jar.dependsOn variant.javaCompile + jar.from variant.javaCompile.destinationDir + jar.exclude 'android-logger.properties' + artifacts.add('archives', jar); file('natives').eachDir() { dir -> - def taskNatives = project.tasks.create "natives_${dir.name}_Jar${name.capitalize()}", Jar - taskNatives.classifier = "natives-${dir.name}" - taskNatives.from(dir.path) - artifacts.add('archives', taskNatives); + def nativesJar = project.tasks.create "nativesJar${name.capitalize()}-${dir.name}", Jar + nativesJar.classifier = "natives-${dir.name}" + nativesJar.from(dir.path) + artifacts.add('archives', nativesJar); } - def taskFat = project.tasks.create "fatJar${name.capitalize()}", Jar - taskFat.classifier = 'jar-with-dependencies' - taskFat.dependsOn variant.javaCompile - taskFat.from variant.javaCompile.destinationDir - taskFat.from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } } + def fatJar = project.tasks.create "fatJar${name.capitalize()}", Jar + fatJar.classifier = 'jar-with-dependencies' + fatJar.dependsOn variant.javaCompile + fatJar.from variant.javaCompile.destinationDir + fatJar.from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } } file('natives').eachDir() { dir -> - taskFat.from(dir.path) - taskFat.from("${rootProject.projectDir}/vtm-android/natives/${dir.name}") + fatJar.from(dir.path) + fatJar.from("${rootProject.projectDir}/vtm-android/natives/${dir.name}") } - taskFat.exclude 'android-logger.properties' - artifacts.add('archives', taskFat); + fatJar.exclude 'android-logger.properties' + artifacts.add('archives', fatJar); } afterEvaluate { diff --git a/vtm-android/build.gradle b/vtm-android/build.gradle index 599eae5f..f39e5cc3 100644 --- a/vtm-android/build.gradle +++ b/vtm-android/build.gradle @@ -43,27 +43,27 @@ android.libraryVariants.all { variant -> return; // Skip debug builds. } - def taskJar = project.tasks.create "jar${name.capitalize()}", Jar - taskJar.dependsOn variant.javaCompile - taskJar.from variant.javaCompile.destinationDir - artifacts.add('archives', taskJar); + def jar = project.tasks.create "jar${name.capitalize()}", Jar + jar.dependsOn variant.javaCompile + jar.from variant.javaCompile.destinationDir + artifacts.add('archives', jar); file('natives').eachDir() { dir -> - def taskNatives = project.tasks.create "natives_${dir.name}_Jar${name.capitalize()}", Jar - taskNatives.classifier = "natives-${dir.name}" - taskNatives.from(dir.path) - artifacts.add('archives', taskNatives); + def nativesJar = project.tasks.create "nativesJar${name.capitalize()}-${dir.name}", Jar + nativesJar.classifier = "natives-${dir.name}" + nativesJar.from(dir.path) + artifacts.add('archives', nativesJar); } - def taskFat = project.tasks.create "fatJar${name.capitalize()}", Jar - taskFat.classifier = 'jar-with-dependencies' - taskFat.dependsOn variant.javaCompile - taskFat.from variant.javaCompile.destinationDir - taskFat.from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } } + def fatJar = project.tasks.create "fatJar${name.capitalize()}", Jar + fatJar.classifier = 'jar-with-dependencies' + fatJar.dependsOn variant.javaCompile + fatJar.from variant.javaCompile.destinationDir + fatJar.from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } } file('natives').eachDir() { dir -> - taskFat.from(dir.path) + fatJar.from(dir.path) } - artifacts.add('archives', taskFat); + artifacts.add('archives', fatJar); } // Automated Gradle project deployment to Sonatype OSSRH diff --git a/vtm-desktop/build.gradle b/vtm-desktop/build.gradle index ec35f04e..350f8876 100644 --- a/vtm-desktop/build.gradle +++ b/vtm-desktop/build.gradle @@ -4,7 +4,9 @@ apply plugin: 'application' dependencies { compile project(':vtm-gdx') - compile files('natives') + file('natives').eachDir() { dir -> + compile files(dir.path) + } compile "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop" compile "com.badlogicgames.gdx:gdx-backend-jglfw:$gdxVersion" compile 'com.kitfox.svg:svg-salamander:1.0' @@ -16,21 +18,29 @@ sourceSets { } } -task nativesJar(type: Jar) { - classifier = 'natives' - from('natives') +file('natives').eachDir() { dir -> + task("nativesJar-${dir.name}", type: Jar) { + classifier = "natives-${dir.name}" + from(dir.path) + } + + artifacts { + archives tasks["nativesJar-${dir.name}"] + } } task fatJar(type: Jar, dependsOn: classes) { classifier = 'jar-with-dependencies' from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } } - from('natives') + // Natives come from compile configuration + /*file('natives').eachDir() { dir -> + fatJar.from(dir.path) + }*/ exclude 'META-INF/*.DSA', 'META-INF/*.RSA', 'META-INF/*.SF' with jar } artifacts { - archives nativesJar archives fatJar } diff --git a/vtm-desktop/natives/libvtm-jni.so b/vtm-desktop/natives/linux/libvtm-jni.so similarity index 100% rename from vtm-desktop/natives/libvtm-jni.so rename to vtm-desktop/natives/linux/libvtm-jni.so diff --git a/vtm-desktop/natives/libvtm-jni64.so b/vtm-desktop/natives/linux/libvtm-jni64.so similarity index 100% rename from vtm-desktop/natives/libvtm-jni64.so rename to vtm-desktop/natives/linux/libvtm-jni64.so diff --git a/vtm-desktop/natives/libvtm-jni.dylib b/vtm-desktop/natives/osx/libvtm-jni.dylib similarity index 100% rename from vtm-desktop/natives/libvtm-jni.dylib rename to vtm-desktop/natives/osx/libvtm-jni.dylib diff --git a/vtm-desktop/natives/libvtm-jni64.dylib b/vtm-desktop/natives/osx/libvtm-jni64.dylib similarity index 100% rename from vtm-desktop/natives/libvtm-jni64.dylib rename to vtm-desktop/natives/osx/libvtm-jni64.dylib diff --git a/vtm-desktop/natives/vtm-jni.dll b/vtm-desktop/natives/windows/vtm-jni.dll similarity index 100% rename from vtm-desktop/natives/vtm-jni.dll rename to vtm-desktop/natives/windows/vtm-jni.dll diff --git a/vtm-desktop/natives/vtm-jni64.dll b/vtm-desktop/natives/windows/vtm-jni64.dll similarity index 100% rename from vtm-desktop/natives/vtm-jni64.dll rename to vtm-desktop/natives/windows/vtm-jni64.dll