From cc9f35d783733f594a44530d002b6c877fdd411a Mon Sep 17 00:00:00 2001 From: Juraj Michalek Date: Sat, 19 Apr 2014 12:01:24 +0200 Subject: [PATCH] use gradle to build example --- sdl/01-sdl2-init/01-sdl2-init.cpp | 13 ----------- sdl/01-sdl2-init/build.gradle | 28 +++++++++++++++++++++++ sdl/01-sdl2-init/src/main/c/sdl-init.c | 11 +++++++++ sdl/DownloadLibrary.ps1 | 14 ------------ sdl/build.gradle | 31 ++++++++++++++++++++++++++ 5 files changed, 70 insertions(+), 27 deletions(-) delete mode 100644 sdl/01-sdl2-init/01-sdl2-init.cpp create mode 100644 sdl/01-sdl2-init/build.gradle create mode 100644 sdl/01-sdl2-init/src/main/c/sdl-init.c delete mode 100644 sdl/DownloadLibrary.ps1 create mode 100644 sdl/build.gradle diff --git a/sdl/01-sdl2-init/01-sdl2-init.cpp b/sdl/01-sdl2-init/01-sdl2-init.cpp deleted file mode 100644 index 73b8a1c..0000000 --- a/sdl/01-sdl2-init/01-sdl2-init.cpp +++ /dev/null @@ -1,13 +0,0 @@ -// sdl2-sample.cpp : SDL2 example - initialize and quit -// - -#include -#include "SDL.h" - -int _tmain(int argc, _TCHAR* argv[]) -{ - SDL_Init(SDL_INIT_EVERYTHING); - SDL_Quit(); - return 0; -} - diff --git a/sdl/01-sdl2-init/build.gradle b/sdl/01-sdl2-init/build.gradle new file mode 100644 index 0000000..87fff9e --- /dev/null +++ b/sdl/01-sdl2-init/build.gradle @@ -0,0 +1,28 @@ +apply plugin: 'c' +apply plugin: 'visual-studio' + +sources { + main { + c { + source { + // Include just source, avoid including *.swp and other helper files + include "**/*.c" + } + exportedHeaders { + srcDir "../build/SDL2-2.0.3/include" + } + } + } +} + +executables { + main { + binaries.all { + if (toolChain in VisualCpp) { + linker.args "/machine:X86", "/SUBSYSTEM:WINDOWS", "../build/SDL2-2.0.3/lib/x86/SDL2.lib" + //linker.args "/SUBSYSTEM:WINDOWS", "/LIBPATH:../build/SDL2-2.0.3/lib/x86/", "SDL2.lib" + } + } + } +} + diff --git a/sdl/01-sdl2-init/src/main/c/sdl-init.c b/sdl/01-sdl2-init/src/main/c/sdl-init.c new file mode 100644 index 0000000..f2db19a --- /dev/null +++ b/sdl/01-sdl2-init/src/main/c/sdl-init.c @@ -0,0 +1,11 @@ +// sdl2-sample.cpp : SDL2 example - initialize and quit +// + +#include "SDL.h" + +int main(int argc, char* argv[]) { + SDL_Init(SDL_INIT_EVERYTHING); + SDL_Quit(); + return 0; +} + diff --git a/sdl/DownloadLibrary.ps1 b/sdl/DownloadLibrary.ps1 deleted file mode 100644 index 6f7d044..0000000 --- a/sdl/DownloadLibrary.ps1 +++ /dev/null @@ -1,14 +0,0 @@ -Write-Host("Downloading library") -$workingPath = (Get-Location).path -$clnt = new-object System.Net.WebClient -$url = "http://libsdl.org/release/SDL2-devel-2.0.1-VC.zip" -$file = $workingPath + "\SDL2-devel-2.0.1-VC.zip" -$clnt.DownloadFile($url,$file) - -Write-Host("Unzip the file to local directory") -$shell_app=new-object -com shell.application -$zip_file = $shell_app.namespace($file) -$destination = $shell_app.namespace($workingPath) -$destination.Copyhere($zip_file.items()) - -Write-Host("Done") diff --git a/sdl/build.gradle b/sdl/build.gradle new file mode 100644 index 0000000..9a6abd3 --- /dev/null +++ b/sdl/build.gradle @@ -0,0 +1,31 @@ +buildscript { + repositories { + mavenCentral() + } + dependencies { + classpath 'de.undercouch:gradle-download-task:1.0' + } +} + +import de.undercouch.gradle.tasks.download.Download + + +task downloadSdl(type: Download) { + description = "Download SDL2 library ZIP file." + src 'http://libsdl.org/release/SDL2-devel-2.0.3-VC.zip' + dest 'build/sdl2.zip' +} + +task extractSdl(type: Copy) { + description = "Unpack SDL2 library" + from zipTree('build/sdl2.zip') + into 'build/' +} + +task prepare { + description = "Prepare build environment for SDL2" +} + + +extractSdl.dependsOn downloadSdl +prepare.dependsOn extractSdl