diff src/liblo-0.26/build/premake4.lua @ 89:8a15ff55d9af

Add bzip2, zlib, liblo, portaudio sources
author Chris Cannam <cannam@all-day-breakfast.com>
date Wed, 20 Mar 2013 13:59:52 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/liblo-0.26/build/premake4.lua	Wed Mar 20 13:59:52 2013 +0000
@@ -0,0 +1,210 @@
+----------------------------------------------------------------------
+-- Premake4 configuration script for LibLo
+-- Adapted from ODE's build script by Jason Perkins.
+-- For more information on Premake: http://industriousone.com/premake
+----------------------------------------------------------------------
+
+----------------------------------------------------------------------
+-- Configuration options
+----------------------------------------------------------------------
+
+  -- always clean all of the optional components and toolsets
+  if _ACTION == "clean" then
+    for action in pairs(premake.actions) do
+      os.rmdir(action)
+    end
+  end
+  
+  
+
+----------------------------------------------------------------------
+-- The solution, and solution-wide settings
+----------------------------------------------------------------------
+
+  solution "liblo"
+
+    language "C"
+    location ( _OPTIONS["to"] or _ACTION )
+
+    includedirs {
+      "../lo",
+      "../src"
+    }
+      
+    -- define all the possible build configurations
+    configurations {
+      "DebugDLL", "ReleaseDLL", 
+      "DebugLib", "ReleaseLib", 
+    }
+    
+    configuration { "Debug*" }
+      defines { "_DEBUG" }
+      flags   { "Symbols" }
+      
+    configuration { "Release*" }
+      flags   { "OptimizeSpeed", "NoFramePointer" }
+
+    configuration { "Windows" }
+      defines { "WIN32" }
+
+    -- give each configuration a unique output directory
+    for _, name in ipairs(configurations()) do
+      configuration { name }
+        targetdir ( "../lib/" .. name )
+    end
+      
+    -- disable Visual Studio security warnings
+    configuration { "vs*" }
+      defines { "_CRT_SECURE_NO_DEPRECATE" }
+
+    -- tell source to use config.h
+    configuration { "vs*" }
+      defines { "HAVE_CONFIG_H" }
+
+    -- don't remember why we had to do this	(from ODE)
+    configuration { "vs2002 or vs2003", "*Lib" }
+      flags  { "StaticRuntime" }
+
+----------------------------------------------------------------------
+-- Write a custom <config.h> to .., based on the supplied flags
+----------------------------------------------------------------------
+
+-- First get the version number from "configure.ac" --
+
+  io.input("../configure.ac")
+  text = io.read("*all")
+  io.close()
+  text = string.sub(text,string.find(text, "AC_INIT.+"))
+  version = string.sub(text,string.find(text, "%d+%.%d+"))
+
+-- Replace it in "config.h" --
+
+  io.input("config-msvc.h")
+  local text = io.read("*all")
+
+  text = string.gsub(text, '/%*VERSION%*/', '"'..version..'"')
+
+  io.output("../config.h")
+  io.write(text)
+  io.close()
+
+----------------------------------------------------------------------
+-- Copy <lo_endian.h> to ../lo
+----------------------------------------------------------------------
+
+  io.input("lo_endian-msvc.h")
+  io.output("../lo/lo_endian.h")
+  local text = io.read("*all")
+  io.write(text)
+  io.close()
+
+----------------------------------------------------------------------
+-- The LibLo library project
+----------------------------------------------------------------------
+
+  project "liblo"
+
+    kind     "StaticLib"
+    location ( _OPTIONS["to"] or _ACTION )
+
+    includedirs {
+      "..",
+    }
+
+    files {
+      "../src/*.c",
+      "../src/*.h",
+      "../lo/*.h",
+      "../src/liblo.def",
+    }
+
+    excludes {
+      "../src/testlo.c",
+      "../src/subtest.c",
+      "../src/tools",
+    }
+
+    configuration { "windows" }
+      links   { "user32",
+                "wsock32",
+                "ws2_32",
+                "pthreadVC2",
+              }
+            
+    configuration { "*Lib" }
+      kind    "StaticLib"
+      defines "LIBLO_LIB"
+      
+    configuration { "*DLL" }
+      kind    "SharedLib"
+      defines "LIBLO_DLL"
+
+    configuration { "Debug*" }
+      targetname "liblo_d"
+      
+    configuration { "Release*" }
+      targetname "liblo"
+
+
+----------------------------------------------------------------------
+-- The automated test application
+----------------------------------------------------------------------
+
+
+  project "testlo"
+  
+    kind     "ConsoleApp"
+    location ( _OPTIONS["to"] or _ACTION )
+    links   { "user32",
+              "wsock32",
+              "ws2_32",
+              "pthreadVC2",
+            }
+
+    includedirs { 
+      "..",
+    }
+    
+    files { 
+      "../src/testlo.c",
+    }
+
+    configuration { "DebugDLL" }
+      links { "liblo_d" }
+      libdirs { "../lib/debugdll" }
+
+    configuration { "DebugLib" }
+      links { "liblo_d" }
+      libdirs { "../lib/debuglib" }
+      
+    configuration { "Release*" }
+      links { "liblo" }
+
+  project "subtest"
+  
+    kind     "ConsoleApp"
+    location ( _OPTIONS["to"] or _ACTION )
+    links   { "user32",
+              "wsock32",
+              "ws2_32",
+              "pthreadVC2",
+            }
+
+    includedirs { 
+      "..",
+    }
+
+    files { 
+      "../src/subtest.c",
+    }
+
+    configuration { "DebugDLL" }
+      links { "liblo_d" }
+      libdirs { "../lib/debugdll" }
+
+    configuration { "DebugLib" }
+      links { "liblo_d" }
+      libdirs { "../lib/debuglib" }
+      
+    configuration { "Release*" }
+      links { "liblo" }