Skip to content
Snippets Groups Projects
Commit bd49ef62 authored by DarkGod's avatar DarkGod
Browse files

Added BSD support

parent 989f03fe
No related branches found
No related tags found
No related merge requests found
......@@ -28,6 +28,10 @@ project "TEngineRunner"
links { "dl", "SDL", "SDL_ttf", "SDL_image", "SDL_mixer", "GL", "GLU", "m", "pthread" }
defines { [[TENGINE_HOME_PATH='".t-engine"']], 'SELFEXE_LINUX' }
configuration "bsd"
links { "SDL", "SDL_ttf", "SDL_image", "SDL_mixer", "GL", "GLU", "m", "pthread" }
defines { [[TENGINE_HOME_PATH='".t-engine"']], 'SELFEXE_BSD' }
configuration "windows"
links { "mingw32", "SDLmain", "SDL", "SDL_ttf", "SDL_image", "SDL_mixer", "OPENGL32", "GLU32", "wsock32" }
defines { [[TENGINE_HOME_PATH='"T-Engine"']], 'SELFEXE_WINDOWS' }
......@@ -56,6 +60,9 @@ project "te4runner"
configuration "linux"
defines { [[TENGINE_HOME_PATH='".t-engine"']], 'SELFEXE_LINUX' }
configuration "bsd"
defines { [[TENGINE_HOME_PATH='".t-engine"']], 'SELFEXE_BSD' }
configuration "windows"
defines { [[TENGINE_HOME_PATH='"T-Engine"']], 'SELFEXE_WINDOWS' }
configuration "macosx"
......@@ -78,6 +85,8 @@ project "runner-physfs"
configuration "linux"
files { "../src/physfs/platform/unix.c", "../src/physfs/platform/posix.c", }
configuration "bsd"
files { "../src/physfs/platform/unix.c", "../src/physfs/platform/posix.c", }
configuration "windows"
files { "../src/physfs/platform/windows.c", }
configuration "macosx"
......
......@@ -107,6 +107,11 @@ project "TEngine"
defines { [[TENGINE_HOME_PATH='".t-engine"']], 'SELFEXE_LINUX' }
if steamlin64 then steamlin64() end
configuration "bsd"
libdirs {"/usr/local/lib/"}
links { "SDL2", "SDL2_ttf", "SDL2_image", "png", "openal", "vorbisfile", "GL", "GLU", "m", "pthread" }
defines { [[TENGINE_HOME_PATH='".t-engine"']], 'SELFEXE_BSD' }
configuration {"Debug"}
postbuildcommands { "cp ../bin/Debug/t-engine ../", }
configuration {"Release"}
......@@ -130,6 +135,8 @@ project "physfs"
configuration "linux"
files { "../src/physfs/platform/unix.c", "../src/physfs/platform/posix.c", }
configuration "bsd"
files { "../src/physfs/platform/unix.c", "../src/physfs/platform/posix.c", }
configuration "windows"
files { "../src/physfs/platform/windows.c", }
configuration "macosx"
......@@ -295,6 +302,20 @@ elseif _OPTIONS.lua == "jit2" then
}
end
configuration "bsd"
if not _OPTIONS["no-cleanup-jit2"] then
local list = "../src/luajit2/src/lib_base.c ../src/luajit2/src/lib_math.c ../src/luajit2/src/lib_bit.c ../src/luajit2/src/lib_string.c ../src/luajit2/src/lib_table.c ../src/luajit2/src/lib_io.c ../src/luajit2/src/lib_os.c ../src/luajit2/src/lib_package.c ../src/luajit2/src/lib_debug.c ../src/luajit2/src/lib_jit.c ../src/luajit2/src/lib_ffi.c"
prebuildcommands{
"../src/luajit2/src/buildvm -m elfasm -o ../src/luajit2/src/lj_vm.s",
"../src/luajit2/src/buildvm -m bcdef -o ../src/luajit2/src/lj_bcdef.h "..list,
"../src/luajit2/src/buildvm -m ffdef -o ../src/luajit2/src/lj_ffdef.h "..list,
"../src/luajit2/src/buildvm -m libdef -o ../src/luajit2/src/lj_libdef.h "..list,
"../src/luajit2/src/buildvm -m recdef -o ../src/luajit2/src/lj_recdef.h "..list,
"../src/luajit2/src/buildvm -m vmdef -o ../src/luajit2/vmdef.lua "..list,
"../src/luajit2/src/buildvm -m folddef -o ../src/luajit2/src/lj_folddef.h ../src/luajit2/src/lj_opt_fold.c",
}
end
configuration "macosx"
local list = "../src/luajit2/src/lib_base.c ../src/luajit2/src/lib_math.c ../src/luajit2/src/lib_bit.c ../src/luajit2/src/lib_string.c ../src/luajit2/src/lib_table.c ../src/luajit2/src/lib_io.c ../src/luajit2/src/lib_os.c ../src/luajit2/src/lib_package.c ../src/luajit2/src/lib_debug.c ../src/luajit2/src/lib_jit.c ../src/luajit2/src/lib_ffi.c"
prebuildcommands{
......
......@@ -28,6 +28,14 @@ if _OPTIONS.steam then
dofile("steamworks/build/steam-def.lua")
end
configuration "bsd"
libdirs {
"/usr/local/lib",
}
includedirs {
"/usr/local/include",
}
configuration "windows"
libdirs {
"/c/code/SDL/lib",
......
......@@ -39,6 +39,29 @@ int get_number_cpus()
// return 1;
}
#elif defined(SELFEXE_BSD)
#include <limits.h>
#include <stdlib.h>
const char *get_self_executable(int argc, char **argv)
{
static char res[PATH_MAX];
// Like linux, but /proc is not always mounted
// return 0 if it's not
if (realpath("/proc/curproc/file", res)) return NULL;
return res;
}
#import <sys/sysctl.h>
int get_number_cpus()
{
int count;
size_t size=sizeof(count);
if (sysctlbyname("hw.ncpu",&count,&size,NULL,0)) return 1;
return count;
}
#elif defined(SELFEXE_WINDOWS)
#include <stdlib.h>
#include <windows.h>
......
......@@ -27,6 +27,12 @@
#include <vorbis/vorbisfile.h>
#include <SDL2/SDL.h>
#include <SDL2/SDL_thread.h>
#elif defined(__FreeBSD__)
#include <AL/al.h>
#include <AL/alc.h>
#include <vorbis/vorbisfile.h>
#include <SDL2/SDL.h>
#include <SDL2/SDL_thread.h>
#elif defined(WIN32)
#include <AL/al.h>
#include <AL/alc.h>
......
......@@ -3,6 +3,11 @@
#include <SDL2_ttf/SDL_ttf.h>
//#include <SDL2_mixer/SDL_mixer.h>
#include <SDL2_image/SDL_image.h>
#elif defined(__FreeBSD__)
#include <SDL2/SDL.h>
#include <SDL2/SDL_ttf.h>
//#include <SDL2/SDL_mixer.h>
#include <SDL2/SDL_image.h>
#else
#include <SDL.h>
#include <SDL_ttf.h>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment