mirror of
https://github.com/love2d/love-android.git
synced 2026-08-13 09:01:07 +02:00
Compare commits
14 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 0ac43aa717 | |||
| 7fbf155d82 | |||
| 3df1807c6f | |||
| c979f65152 | |||
| 1dba069683 | |||
| 408778fb8f | |||
| f8241c1b65 | |||
| 4d8f4f70ce | |||
| f40577c9cb | |||
| fd60978b7b | |||
| fb34e99d9a | |||
| ad5db40a9d | |||
| a22628bc1b | |||
| 1fe6d7b640 |
+6
-6
@@ -1,14 +1,14 @@
|
||||
apply plugin: 'com.android.application'
|
||||
|
||||
android {
|
||||
compileSdkVersion 25
|
||||
compileSdkVersion 22
|
||||
buildToolsVersion "26.0.2"
|
||||
defaultConfig {
|
||||
applicationId "org.love2d.android"
|
||||
versionCode 22
|
||||
versionName "0.10.2"
|
||||
minSdkVersion 10
|
||||
targetSdkVersion 25
|
||||
versionCode 26
|
||||
versionName "11.1"
|
||||
minSdkVersion 14
|
||||
targetSdkVersion 22
|
||||
}
|
||||
buildTypes {
|
||||
release {
|
||||
@@ -24,6 +24,6 @@ android {
|
||||
dependencies {
|
||||
compile 'com.android.support:multidex:1.0.1'
|
||||
compile fileTree(dir: 'libs', include: ['*.jar'])
|
||||
compile 'com.android.support:appcompat-v7:25.1.0'
|
||||
compile 'com.android.support:appcompat-v7:22.2.0'
|
||||
compile project(':love')
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
<service android:name="org.love2d.android.DownloadService" />
|
||||
<activity
|
||||
android:name="org.love2d.android.GameActivity"
|
||||
android:configChanges="orientation|screenSize"
|
||||
android:configChanges="orientation|screenSize|keyboard|keyboardHidden|navigation"
|
||||
android:label="LÖVE for Android"
|
||||
android:launchMode="singleTop"
|
||||
android:screenOrientation="landscape" >
|
||||
@@ -30,13 +30,7 @@
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.VIEW" />
|
||||
<category android:name="android.intent.category.DEFAULT" />
|
||||
<data android:scheme="file" />
|
||||
<data android:scheme="content" />
|
||||
<data android:mimeType="application/x-love-game" />
|
||||
</intent-filter>
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.VIEW" />
|
||||
<category android:name="android.intent.category.DEFAULT" />
|
||||
<category android:name="android.intent.category.BROWSABLE" />
|
||||
<data android:scheme="file" />
|
||||
<data android:mimeType="*/*" />
|
||||
<data android:pathPattern=".*\\.love" />
|
||||
@@ -52,12 +46,10 @@
|
||||
<category android:name="android.intent.category.BROWSABLE" />
|
||||
<data android:scheme="http"
|
||||
android:host="*"
|
||||
android:pathPrefix="*"
|
||||
android:mimeType="*/*"
|
||||
android:pathPattern=".*\\.love" />
|
||||
<data android:scheme="https"
|
||||
android:host="*"
|
||||
android:pathPrefix="*"
|
||||
android:mimeType="*/*"
|
||||
android:pathPattern=".*\\.love" />
|
||||
</intent-filter>
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
buildscript {
|
||||
repositories {
|
||||
jcenter()
|
||||
google()
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:3.0.1'
|
||||
@@ -15,3 +16,7 @@ buildscript {
|
||||
task clean(type: Delete) {
|
||||
delete rootProject.buildDir
|
||||
}
|
||||
|
||||
repositories {
|
||||
google()
|
||||
}
|
||||
+5
-5
@@ -6,13 +6,13 @@ android {
|
||||
// See https://code.google.com/p/android/issues/detail?id=52962
|
||||
// and http://stackoverflow.com/questions/27277433/why-does-gradle-build-my-module-in-release-mode-when-the-app-is-in-debug
|
||||
// defaultPublishConfig "debug"
|
||||
compileSdkVersion 25
|
||||
compileSdkVersion 22
|
||||
buildToolsVersion "26.0.2"
|
||||
|
||||
defaultConfig {
|
||||
compileSdkVersion 25
|
||||
compileSdkVersion 22
|
||||
buildToolsVersion "26.0.2"
|
||||
minSdkVersion 10
|
||||
minSdkVersion 14
|
||||
externalNativeBuild {
|
||||
ndkBuild {
|
||||
arguments "-j4"
|
||||
@@ -21,7 +21,7 @@ android {
|
||||
ndk {
|
||||
// Specifies the ABI configurations of your native
|
||||
// libraries Gradle should build and package with your APK.
|
||||
abiFilters 'armeabi-v7a', 'armeabi'
|
||||
abiFilters 'armeabi-v7a'
|
||||
}
|
||||
}
|
||||
buildTypes {
|
||||
@@ -49,5 +49,5 @@ android {
|
||||
|
||||
dependencies {
|
||||
compile fileTree(dir: 'libs', include: ['*.jar'])
|
||||
compile 'com.android.support:appcompat-v7:25.1.0'
|
||||
compile 'com.android.support:appcompat-v7:22.2.0'
|
||||
}
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Uncomment this if you're using STL in your project
|
||||
# See CPLUSPLUS-SUPPORT.html in the NDK documentation for more information
|
||||
# APP_STL := stlport_static
|
||||
APP_STL := gnustl_shared
|
||||
APP_ABI := armeabi armeabi-v7a
|
||||
APP_STL := c++_shared
|
||||
APP_ABI := armeabi-v7a
|
||||
APP_CPPFLAGS := -frtti
|
||||
APP_LDFLAGS := -llog -landroid -lz
|
||||
APP_PLATFORM := 10
|
||||
NDK_TOOLCHAIN_VERSION := 4.9
|
||||
NDK_TOOLCHAIN_VERSION := clang
|
||||
|
||||
# Fix for building on Windows
|
||||
# http://stackoverflow.com/questions/12598933/ndk-build-createprocess-make-e-87-the-parameter-is-incorrect
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
repo: d362ae6ab7f5005b8dbc7cba9ce592637de60f99
|
||||
node: 228a26ab99bbb41e47d7ff792c670dba220fca88
|
||||
branch: android
|
||||
latesttag: 0.9.1
|
||||
latesttagdistance: 105
|
||||
node: 0ab246b5045d2e697a516fcc0f8b12496a2d5c78
|
||||
branch: default
|
||||
tag: 11.1
|
||||
|
||||
+57
-45
@@ -1,45 +1,57 @@
|
||||
relre:platform/msvc2008/include/
|
||||
glob:platform/msvc2008/lib/
|
||||
relre:platform/msvc2008/(.*)txt
|
||||
relre:platform/msvc2008/(.*)suo
|
||||
glob:extra/reshax/Release/
|
||||
glob:extra/reshax/Debug/
|
||||
glob:extra/reshax/resources.h
|
||||
glob:extra/reshax/resources.cpp
|
||||
glob:*.obj
|
||||
glob:*.o
|
||||
glob:*.dirstamp
|
||||
glob:*.m4
|
||||
glob:*.Po
|
||||
glob:*.lo
|
||||
glob:*.Plo
|
||||
glob:*.dll
|
||||
glob:*.user
|
||||
glob:*.suo
|
||||
glob:*/Release*
|
||||
glob:*/Debug*
|
||||
glob:*.lib
|
||||
glob:*.ncb
|
||||
glob:*.exe
|
||||
glob:*.bat
|
||||
glob:platform/macosx/build
|
||||
glob:platform/macosx/Build
|
||||
glob:platform/macosx/DerivedData
|
||||
glob:platform/macosx/*.xcodeproj/bill*
|
||||
glob:platform/macosx/*.xcodeproj/xcuserdata
|
||||
glob:platform/macosx/*.xcodeproj/project.xcworkspace
|
||||
glob:*.DS_Store
|
||||
glob:*.dylib
|
||||
glob:*.dmg*
|
||||
glob:demos
|
||||
glob:*.orig
|
||||
relre:platform/msvc2010/include/
|
||||
glob:platform/msvc2010/lib/
|
||||
relre:platform/msvc2010/(.*)txt
|
||||
relre:platform/msvc2010/(.*)suo
|
||||
relre:platform/msvc2010/(.*)sdf
|
||||
relre:platform/msvc2010/(.*)ipch
|
||||
glob:.*.swp
|
||||
glob:autom4te.cache/
|
||||
glob:src/.libs/
|
||||
glob:*~
|
||||
glob:extra/reshax/Release/
|
||||
glob:extra/reshax/Debug/
|
||||
glob:extra/reshax/resources.h
|
||||
glob:extra/reshax/resources.cpp
|
||||
glob:*.obj
|
||||
glob:*.o
|
||||
glob:*.dirstamp
|
||||
glob:*.m4
|
||||
glob:*.Po
|
||||
glob:*.lo
|
||||
glob:*.Plo
|
||||
glob:*.dll
|
||||
glob:*.user
|
||||
glob:*.suo
|
||||
glob:*/Release*
|
||||
glob:*/Debug*
|
||||
glob:*.lib
|
||||
glob:*.ncb
|
||||
glob:*.exe
|
||||
glob:*.bat
|
||||
glob:platform/xcode/Build
|
||||
glob:platform/xcode/DerivedData
|
||||
glob:platform/xcode/ios/include
|
||||
glob:platform/xcode/ios/libraries
|
||||
glob:*xcuserdata*
|
||||
glob:*.DS_Store
|
||||
glob:*.dylib
|
||||
glob:*.dmg*
|
||||
glob:demos
|
||||
glob:*.orig
|
||||
glob:.*.swp
|
||||
glob:autom4te.cache/
|
||||
glob:src/.libs/
|
||||
glob:*~
|
||||
glob:Makefile*
|
||||
glob:config*
|
||||
glob:libtool
|
||||
glob:platform/unix/ar-lib
|
||||
glob:platform/unix/compile
|
||||
glob:platform/unix/config.guess
|
||||
glob:platform/unix/config.sub
|
||||
glob:platform/unix/debian/changelog
|
||||
glob:platform/unix/debian/control
|
||||
glob:platform/unix/debian/rules
|
||||
glob:platform/unix/depcomp
|
||||
glob:platform/unix/install-sh
|
||||
glob:platform/unix/love.desktop
|
||||
glob:platform/unix/ltmain.sh
|
||||
glob:platform/unix/missing
|
||||
glob:.lineno
|
||||
glob:*.la
|
||||
glob:*.Tpo
|
||||
glob:*.rej
|
||||
glob:*/.deps
|
||||
glob:stamp-h1
|
||||
glob:src/love
|
||||
glob:src/tags
|
||||
|
||||
@@ -7,3 +7,8 @@ bcca82b60d0f5cd724edbe4ed65db18ab95d4691 0.7.2
|
||||
e0f98d53debb62347c6433ca0534a0f77f15f76f 0.8.0
|
||||
38c00c788bcb03bda2ad40efebcdfe7a6be85b4a 0.9.0
|
||||
8b113c345e97e7bb7e963e5d67451abdfb05cfde 0.9.1
|
||||
a5e405cdf14d030b71d09a105086797942ae91a9 0.9.2
|
||||
14717f0fb5d96d380c10fe6f41b74b7652c7d836 0.10.0
|
||||
3cb3559eebb89803c0b7fa83d51d8e48a2b20b7a 0.10.1
|
||||
afc69c4f714534c64e6f8c8660b724b5b736d7f3 0.10.2
|
||||
bf8892ecbd07a10453c4bb36aa538b90a2830d2b 11.0
|
||||
|
||||
@@ -16,16 +16,17 @@ LOCAL_C_INCLUDES := \
|
||||
${LOCAL_PATH}/src/modules \
|
||||
${LOCAL_PATH}/src/libraries/ \
|
||||
${LOCAL_PATH}/src/libraries/enet/libenet/include \
|
||||
${LOCAL_PATH}/src/libraries/physfs \
|
||||
${LOCAL_PATH}/src/libraries/glslang/glslang/Include \
|
||||
${LOCAL_PATH}/../SDL2-2.0.7/include \
|
||||
${LOCAL_PATH}/../jasper-1.900.1/src/libjasper/include \
|
||||
${LOCAL_PATH}/../libmng-1.0.10/ \
|
||||
${LOCAL_PATH}/../lcms2-2.5/include \
|
||||
${LOCAL_PATH}/../tiff-3.9.5/libtiff \
|
||||
${LOCAL_PATH}/../openal-soft-1.17.0/include \
|
||||
${LOCAL_PATH}/../openal-soft-1.17.0/OpenAL32/Include \
|
||||
${LOCAL_PATH}/../openal-soft-1.18.2/include \
|
||||
${LOCAL_PATH}/../openal-soft-1.18.2/OpenAL32/Include \
|
||||
${LOCAL_PATH}/../freetype2-android/include \
|
||||
${LOCAL_PATH}/../freetype2-android/src \
|
||||
${LOCAL_PATH}/../physfs-3.0.1/src \
|
||||
${LOCAL_PATH}/../mpg123-1.17.0/src/libmpg123 \
|
||||
${LOCAL_PATH}/../libmodplug-0.8.8.4/src \
|
||||
${LOCAL_PATH}/../libvorbis-1.3.5/include \
|
||||
@@ -43,6 +44,7 @@ LOCAL_SRC_FILES := \
|
||||
$(wildcard ${LOCAL_PATH}/src/modules/audio/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/modules/audio/null/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/modules/audio/openal/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/modules/data/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/modules/event/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/modules/event/sdl/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/modules/filesystem/*.cpp) \
|
||||
@@ -87,22 +89,31 @@ LOCAL_SRC_FILES := \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/Box2D/Dynamics/Joints/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/Box2D/Rope/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/glad/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/glslang/glslang/GenericCodeGen/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/glslang/glslang/MachineIndependent/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/glslang/glslang/MachineIndependent/preprocessor/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/glslang/glslang/OSDependent/Unix/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/glslang/OGLCompilersDLL/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/glslang/glslang//*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/enet/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/enet/libenet/*.c) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/lua53/*.c) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/luasocket/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/luautf8/*.c) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/luasocket/libluasocket/*.c) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/noise1234/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/Wuff/*.c) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/lodepng/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/lz4/*.c) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/noise1234/*.cpp) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/physfs/*.c) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/Wuff/*.c) \
|
||||
$(wildcard ${LOCAL_PATH}/src/libraries/xxHash/*.c) \
|
||||
))
|
||||
|
||||
LOCAL_CXXFLAGS := -std=c++0x
|
||||
|
||||
LOCAL_SHARED_LIBRARIES := libopenal libmpg123
|
||||
|
||||
LOCAL_STATIC_LIBRARIES := libphysfs libvorbis libogg libtheora libmodplug libfreetype libluajit SDL2_static
|
||||
LOCAL_STATIC_LIBRARIES := libvorbis libogg libtheora libmodplug libfreetype libluajit SDL2_static
|
||||
|
||||
# $(info liblove: include dirs $(LOCAL_C_INCLUDES))
|
||||
# $(info liblove: src files $(LOCAL_SRC_FILES))
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (c) 2006-2016 LOVE Development Team
|
||||
# Copyright (c) 2006-2018 LOVE Development Team
|
||||
#
|
||||
# This software is provided 'as-is', without any express or implied
|
||||
# warranty. In no event will the authors be held liable for any damages
|
||||
@@ -97,7 +97,6 @@ if(MEGA)
|
||||
${MEGA_LIBTHEORA}
|
||||
${MEGA_MODPLUG}
|
||||
${MEGA_OPENAL}
|
||||
${MEGA_PHYSFS}
|
||||
${MEGA_SDL2MAIN}
|
||||
${MEGA_SDL2}
|
||||
${MEGA_ZLIB}
|
||||
@@ -172,7 +171,6 @@ Please see http://bitbucket.org/rude/megasource
|
||||
find_package(ModPlug REQUIRED)
|
||||
find_package(OpenAL REQUIRED)
|
||||
find_package(OpenGL REQUIRED)
|
||||
find_package(PhysFS REQUIRED)
|
||||
find_package(SDL2 REQUIRED)
|
||||
find_package(Theora REQUIRED)
|
||||
find_package(Vorbis REQUIRED)
|
||||
@@ -182,7 +180,6 @@ Please see http://bitbucket.org/rude/megasource
|
||||
|
||||
set(LOVE_INCLUDE_DIRS
|
||||
${SDL2_INCLUDE_DIR}
|
||||
${PHYSFS_INCLUDE_DIR}
|
||||
${FREETYPE_INCLUDE_DIRS}
|
||||
${VORBIS_INCLUDE_DIR}
|
||||
)
|
||||
@@ -193,7 +190,6 @@ Please see http://bitbucket.org/rude/megasource
|
||||
${FREETYPE_LIBRARY}
|
||||
${OPENAL_LIBRARY}
|
||||
${MODPLUG_LIBRARY}
|
||||
${PHYSFS_LIBRARY}
|
||||
${THEORA_LIBRARY}
|
||||
${THEORADEC_LIBRARY}
|
||||
${VORBISFILE_LIBRARY}
|
||||
@@ -255,27 +251,41 @@ endfunction()
|
||||
set(LOVE_SRC_COMMON
|
||||
src/common/b64.cpp
|
||||
src/common/b64.h
|
||||
src/common/Color.h
|
||||
src/common/config.h
|
||||
src/common/Data.cpp
|
||||
src/common/Data.h
|
||||
src/common/delay.cpp
|
||||
src/common/delay.h
|
||||
src/common/deprecation.cpp
|
||||
src/common/deprecation.h
|
||||
src/common/EnumMap.h
|
||||
src/common/Exception.cpp
|
||||
src/common/Exception.h
|
||||
src/common/halffloat.cpp
|
||||
src/common/halffloat.h
|
||||
src/common/int.h
|
||||
src/common/math.h
|
||||
src/common/Matrix.cpp
|
||||
src/common/Matrix.h
|
||||
src/common/Memoizer.cpp
|
||||
src/common/Memoizer.h
|
||||
src/common/memory.cpp
|
||||
src/common/memory.h
|
||||
src/common/Module.cpp
|
||||
src/common/Module.h
|
||||
src/common/Object.cpp
|
||||
src/common/Object.h
|
||||
src/common/Optional.h
|
||||
src/common/pixelformat.cpp
|
||||
src/common/pixelformat.h
|
||||
src/common/Reference.cpp
|
||||
src/common/Reference.h
|
||||
src/common/runtime.cpp
|
||||
src/common/runtime.h
|
||||
src/common/Stream.cpp
|
||||
src/common/Stream.h
|
||||
src/common/StringMap.cpp
|
||||
src/common/StringMap.h
|
||||
src/common/types.cpp
|
||||
src/common/types.h
|
||||
@@ -286,8 +296,6 @@ set(LOVE_SRC_COMMON
|
||||
#src/common/Vector.cpp # Vector.cpp is empty.
|
||||
src/common/Vector.h
|
||||
src/common/version.h
|
||||
src/common/wrap_Data.cpp
|
||||
src/common/wrap_Data.h
|
||||
)
|
||||
|
||||
if (APPLE)
|
||||
@@ -307,10 +315,18 @@ set(LOVE_SRC_MODULE_AUDIO_ROOT
|
||||
src/modules/audio/Audio.h
|
||||
src/modules/audio/Source.cpp
|
||||
src/modules/audio/Source.h
|
||||
src/modules/audio/RecordingDevice.cpp
|
||||
src/modules/audio/RecordingDevice.h
|
||||
src/modules/audio/Filter.cpp
|
||||
src/modules/audio/Filter.h
|
||||
src/modules/audio/Effect.cpp
|
||||
src/modules/audio/Effect.h
|
||||
src/modules/audio/wrap_Audio.cpp
|
||||
src/modules/audio/wrap_Audio.h
|
||||
src/modules/audio/wrap_Source.cpp
|
||||
src/modules/audio/wrap_Source.h
|
||||
src/modules/audio/wrap_RecordingDevice.cpp
|
||||
src/modules/audio/wrap_RecordingDevice.h
|
||||
)
|
||||
|
||||
set(LOVE_SRC_MODULE_AUDIO_NULL
|
||||
@@ -318,6 +334,8 @@ set(LOVE_SRC_MODULE_AUDIO_NULL
|
||||
src/modules/audio/null/Audio.h
|
||||
src/modules/audio/null/Source.cpp
|
||||
src/modules/audio/null/Source.h
|
||||
src/modules/audio/null/RecordingDevice.cpp
|
||||
src/modules/audio/null/RecordingDevice.h
|
||||
)
|
||||
|
||||
set(LOVE_SRC_MODULE_AUDIO_OPENAL
|
||||
@@ -327,6 +345,12 @@ set(LOVE_SRC_MODULE_AUDIO_OPENAL
|
||||
src/modules/audio/openal/Pool.h
|
||||
src/modules/audio/openal/Source.cpp
|
||||
src/modules/audio/openal/Source.h
|
||||
src/modules/audio/openal/RecordingDevice.cpp
|
||||
src/modules/audio/openal/RecordingDevice.h
|
||||
src/modules/audio/openal/Filter.cpp
|
||||
src/modules/audio/openal/Filter.h
|
||||
src/modules/audio/openal/Effect.cpp
|
||||
src/modules/audio/openal/Effect.h
|
||||
)
|
||||
|
||||
set(LOVE_SRC_MODULE_AUDIO
|
||||
@@ -339,6 +363,37 @@ source_group("modules\\audio" FILES ${LOVE_SRC_MODULE_AUDIO_ROOT})
|
||||
source_group("modules\\audio\\null" FILES ${LOVE_SRC_MODULE_AUDIO_NULL})
|
||||
source_group("modules\\audio\\openal" FILES ${LOVE_SRC_MODULE_AUDIO_OPENAL})
|
||||
|
||||
#
|
||||
# love.data
|
||||
#
|
||||
|
||||
set(LOVE_SRC_MODULE_DATA
|
||||
src/modules/data/ByteData.cpp
|
||||
src/modules/data/ByteData.h
|
||||
src/modules/data/CompressedData.cpp
|
||||
src/modules/data/CompressedData.h
|
||||
src/modules/data/Compressor.cpp
|
||||
src/modules/data/Compressor.h
|
||||
src/modules/data/DataModule.cpp
|
||||
src/modules/data/DataModule.h
|
||||
src/modules/data/DataView.cpp
|
||||
src/modules/data/DataView.h
|
||||
src/modules/data/HashFunction.cpp
|
||||
src/modules/data/HashFunction.h
|
||||
src/modules/data/wrap_ByteData.cpp
|
||||
src/modules/data/wrap_ByteData.h
|
||||
src/modules/data/wrap_CompressedData.cpp
|
||||
src/modules/data/wrap_CompressedData.h
|
||||
src/modules/data/wrap_Data.cpp
|
||||
src/modules/data/wrap_Data.h
|
||||
src/modules/data/wrap_DataModule.cpp
|
||||
src/modules/data/wrap_DataModule.h
|
||||
src/modules/data/wrap_DataView.cpp
|
||||
src/modules/data/wrap_DataView.h
|
||||
)
|
||||
|
||||
source_group("modules\\data" FILES ${LOVE_SRC_MODULE_DATA})
|
||||
|
||||
#
|
||||
# love.event
|
||||
#
|
||||
@@ -446,71 +501,94 @@ source_group("modules\\font\\freetype" FILES ${LOVE_SRC_MODULE_FONT_FREETYPE})
|
||||
#
|
||||
|
||||
set(LOVE_SRC_MODULE_GRAPHICS_ROOT
|
||||
src/modules/graphics/Color.h
|
||||
src/modules/graphics/Buffer.cpp
|
||||
src/modules/graphics/Buffer.h
|
||||
src/modules/graphics/Canvas.cpp
|
||||
src/modules/graphics/Canvas.h
|
||||
src/modules/graphics/depthstencil.cpp
|
||||
src/modules/graphics/depthstencil.h
|
||||
src/modules/graphics/Deprecations.cpp
|
||||
src/modules/graphics/Deprecations.h
|
||||
src/modules/graphics/Drawable.cpp
|
||||
src/modules/graphics/Drawable.h
|
||||
src/modules/graphics/Font.cpp
|
||||
src/modules/graphics/Font.h
|
||||
src/modules/graphics/Graphics.cpp
|
||||
src/modules/graphics/Graphics.h
|
||||
src/modules/graphics/Image.cpp
|
||||
src/modules/graphics/Image.h
|
||||
src/modules/graphics/Mesh.cpp
|
||||
src/modules/graphics/Mesh.h
|
||||
src/modules/graphics/ParticleSystem.cpp
|
||||
src/modules/graphics/ParticleSystem.h
|
||||
src/modules/graphics/Polyline.cpp
|
||||
src/modules/graphics/Polyline.h
|
||||
src/modules/graphics/Quad.cpp
|
||||
src/modules/graphics/Quad.h
|
||||
src/modules/graphics/Resource.h
|
||||
src/modules/graphics/Shader.cpp
|
||||
src/modules/graphics/Shader.h
|
||||
src/modules/graphics/ShaderStage.cpp
|
||||
src/modules/graphics/ShaderStage.h
|
||||
src/modules/graphics/SpriteBatch.cpp
|
||||
src/modules/graphics/SpriteBatch.h
|
||||
src/modules/graphics/StreamBuffer.cpp
|
||||
src/modules/graphics/StreamBuffer.h
|
||||
src/modules/graphics/Text.cpp
|
||||
src/modules/graphics/Text.h
|
||||
src/modules/graphics/Texture.cpp
|
||||
src/modules/graphics/Texture.h
|
||||
src/modules/graphics/vertex.cpp
|
||||
src/modules/graphics/vertex.h
|
||||
src/modules/graphics/Video.cpp
|
||||
src/modules/graphics/Video.h
|
||||
src/modules/graphics/Volatile.cpp
|
||||
src/modules/graphics/Volatile.h
|
||||
src/modules/graphics/wrap_Canvas.cpp
|
||||
src/modules/graphics/wrap_Canvas.h
|
||||
src/modules/graphics/wrap_Font.cpp
|
||||
src/modules/graphics/wrap_Font.h
|
||||
src/modules/graphics/wrap_Graphics.cpp
|
||||
src/modules/graphics/wrap_Graphics.h
|
||||
src/modules/graphics/wrap_Image.cpp
|
||||
src/modules/graphics/wrap_Image.h
|
||||
src/modules/graphics/wrap_Mesh.cpp
|
||||
src/modules/graphics/wrap_Mesh.h
|
||||
src/modules/graphics/wrap_ParticleSystem.cpp
|
||||
src/modules/graphics/wrap_ParticleSystem.h
|
||||
src/modules/graphics/wrap_Quad.cpp
|
||||
src/modules/graphics/wrap_Quad.h
|
||||
src/modules/graphics/wrap_Shader.cpp
|
||||
src/modules/graphics/wrap_Shader.h
|
||||
src/modules/graphics/wrap_SpriteBatch.cpp
|
||||
src/modules/graphics/wrap_SpriteBatch.h
|
||||
src/modules/graphics/wrap_Texture.cpp
|
||||
src/modules/graphics/wrap_Texture.h
|
||||
src/modules/graphics/wrap_Text.cpp
|
||||
src/modules/graphics/wrap_Text.h
|
||||
src/modules/graphics/wrap_Video.cpp
|
||||
src/modules/graphics/wrap_Video.h
|
||||
)
|
||||
|
||||
set(LOVE_SRC_MODULE_GRAPHICS_OPENGL
|
||||
src/modules/graphics/opengl/Buffer.cpp
|
||||
src/modules/graphics/opengl/Buffer.h
|
||||
src/modules/graphics/opengl/Canvas.cpp
|
||||
src/modules/graphics/opengl/Canvas.h
|
||||
src/modules/graphics/opengl/Font.cpp
|
||||
src/modules/graphics/opengl/Font.h
|
||||
src/modules/graphics/opengl/GLBuffer.cpp
|
||||
src/modules/graphics/opengl/GLBuffer.h
|
||||
src/modules/graphics/opengl/FenceSync.cpp
|
||||
src/modules/graphics/opengl/FenceSync.h
|
||||
src/modules/graphics/opengl/Graphics.cpp
|
||||
src/modules/graphics/opengl/Graphics.h
|
||||
src/modules/graphics/opengl/Image.cpp
|
||||
src/modules/graphics/opengl/Image.h
|
||||
src/modules/graphics/opengl/Mesh.cpp
|
||||
src/modules/graphics/opengl/Mesh.h
|
||||
src/modules/graphics/opengl/OpenGL.cpp
|
||||
src/modules/graphics/opengl/OpenGL.h
|
||||
src/modules/graphics/opengl/ParticleSystem.cpp
|
||||
src/modules/graphics/opengl/ParticleSystem.h
|
||||
src/modules/graphics/opengl/Polyline.cpp
|
||||
src/modules/graphics/opengl/Polyline.h
|
||||
src/modules/graphics/opengl/Shader.cpp
|
||||
src/modules/graphics/opengl/Shader.h
|
||||
src/modules/graphics/opengl/SpriteBatch.cpp
|
||||
src/modules/graphics/opengl/SpriteBatch.h
|
||||
src/modules/graphics/opengl/Text.cpp
|
||||
src/modules/graphics/opengl/Text.h
|
||||
src/modules/graphics/opengl/Video.cpp
|
||||
src/modules/graphics/opengl/Video.h
|
||||
src/modules/graphics/opengl/wrap_Canvas.cpp
|
||||
src/modules/graphics/opengl/wrap_Canvas.h
|
||||
src/modules/graphics/opengl/wrap_Font.cpp
|
||||
src/modules/graphics/opengl/wrap_Font.h
|
||||
src/modules/graphics/opengl/wrap_Graphics.cpp
|
||||
src/modules/graphics/opengl/wrap_Graphics.h
|
||||
src/modules/graphics/opengl/wrap_Image.cpp
|
||||
src/modules/graphics/opengl/wrap_Image.h
|
||||
src/modules/graphics/opengl/wrap_Mesh.cpp
|
||||
src/modules/graphics/opengl/wrap_Mesh.h
|
||||
src/modules/graphics/opengl/wrap_ParticleSystem.cpp
|
||||
src/modules/graphics/opengl/wrap_ParticleSystem.h
|
||||
src/modules/graphics/opengl/wrap_Shader.cpp
|
||||
src/modules/graphics/opengl/wrap_Shader.h
|
||||
src/modules/graphics/opengl/wrap_SpriteBatch.cpp
|
||||
src/modules/graphics/opengl/wrap_SpriteBatch.h
|
||||
src/modules/graphics/opengl/wrap_Text.cpp
|
||||
src/modules/graphics/opengl/wrap_Text.h
|
||||
src/modules/graphics/opengl/wrap_Video.cpp
|
||||
src/modules/graphics/opengl/wrap_Video.h
|
||||
src/modules/graphics/opengl/ShaderStage.cpp
|
||||
src/modules/graphics/opengl/ShaderStage.h
|
||||
src/modules/graphics/opengl/StreamBuffer.cpp
|
||||
src/modules/graphics/opengl/StreamBuffer.h
|
||||
)
|
||||
|
||||
set(LOVE_SRC_MODULE_GRAPHICS
|
||||
@@ -528,9 +606,16 @@ source_group("modules\\graphics\\opengl" FILES ${LOVE_SRC_MODULE_GRAPHICS_OPENGL
|
||||
set(LOVE_SRC_MODULE_IMAGE_ROOT
|
||||
src/modules/image/CompressedImageData.cpp
|
||||
src/modules/image/CompressedImageData.h
|
||||
src/modules/image/CompressedSlice.cpp
|
||||
src/modules/image/CompressedSlice.h
|
||||
src/modules/image/FormatHandler.cpp
|
||||
src/modules/image/FormatHandler.h
|
||||
src/modules/image/Image.cpp
|
||||
src/modules/image/Image.h
|
||||
src/modules/image/ImageData.cpp
|
||||
src/modules/image/ImageData.h
|
||||
src/modules/image/ImageDataBase.cpp
|
||||
src/modules/image/ImageDataBase.h
|
||||
src/modules/image/wrap_CompressedImageData.cpp
|
||||
src/modules/image/wrap_CompressedImageData.h
|
||||
src/modules/image/wrap_Image.cpp
|
||||
@@ -542,17 +627,10 @@ set(LOVE_SRC_MODULE_IMAGE_ROOT
|
||||
set(LOVE_SRC_MODULE_IMAGE_MAGPIE
|
||||
src/modules/image/magpie/ASTCHandler.cpp
|
||||
src/modules/image/magpie/ASTCHandler.h
|
||||
src/modules/image/magpie/CompressedImageData.cpp
|
||||
src/modules/image/magpie/CompressedImageData.h
|
||||
src/modules/image/magpie/CompressedFormatHandler.h
|
||||
src/modules/image/magpie/ddsHandler.cpp
|
||||
src/modules/image/magpie/ddsHandler.h
|
||||
src/modules/image/magpie/FormatHandler.cpp
|
||||
src/modules/image/magpie/FormatHandler.h
|
||||
src/modules/image/magpie/Image.cpp
|
||||
src/modules/image/magpie/Image.h
|
||||
src/modules/image/magpie/ImageData.cpp
|
||||
src/modules/image/magpie/ImageData.h
|
||||
src/modules/image/magpie/EXRHandler.cpp
|
||||
src/modules/image/magpie/EXRHandler.h
|
||||
src/modules/image/magpie/KTXHandler.cpp
|
||||
src/modules/image/magpie/KTXHandler.h
|
||||
src/modules/image/magpie/PKMHandler.cpp
|
||||
@@ -633,22 +711,20 @@ source_group("modules\\keyboard\\sdl" FILES ${LOVE_SRC_MODULE_KEYBOARD_SDL})
|
||||
set(LOVE_SRC_MODULE_MATH
|
||||
src/modules/math/BezierCurve.cpp
|
||||
src/modules/math/BezierCurve.h
|
||||
src/modules/math/CompressedData.cpp
|
||||
src/modules/math/CompressedData.h
|
||||
src/modules/math/Compressor.cpp
|
||||
src/modules/math/Compressor.h
|
||||
src/modules/math/MathModule.cpp
|
||||
src/modules/math/MathModule.h
|
||||
src/modules/math/RandomGenerator.cpp
|
||||
src/modules/math/RandomGenerator.h
|
||||
src/modules/math/Transform.cpp
|
||||
src/modules/math/Transform.h
|
||||
src/modules/math/wrap_BezierCurve.cpp
|
||||
src/modules/math/wrap_BezierCurve.h
|
||||
src/modules/math/wrap_CompressedData.cpp
|
||||
src/modules/math/wrap_CompressedData.h
|
||||
src/modules/math/wrap_Math.cpp
|
||||
src/modules/math/wrap_Math.h
|
||||
src/modules/math/wrap_RandomGenerator.cpp
|
||||
src/modules/math/wrap_RandomGenerator.h
|
||||
src/modules/math/wrap_Transform.cpp
|
||||
src/modules/math/wrap_Transform.h
|
||||
)
|
||||
|
||||
source_group("modules\\math" FILES ${LOVE_SRC_MODULE_MATH})
|
||||
@@ -809,6 +885,7 @@ source_group("modules\\physics\\box2d" FILES ${LOVE_SRC_MODULE_PHYSICS_BOX2D})
|
||||
#
|
||||
|
||||
set(LOVE_SRC_MODULE_SOUND_ROOT
|
||||
src/modules/sound/Decoder.cpp
|
||||
src/modules/sound/Decoder.h
|
||||
src/modules/sound/Sound.cpp
|
||||
src/modules/sound/Sound.h
|
||||
@@ -823,8 +900,6 @@ set(LOVE_SRC_MODULE_SOUND_ROOT
|
||||
)
|
||||
|
||||
set(LOVE_SRC_MODULE_SOUND_LULLABY
|
||||
src/modules/sound/lullaby/Decoder.cpp
|
||||
src/modules/sound/lullaby/Decoder.h
|
||||
src/modules/sound/lullaby/FLACDecoder.cpp
|
||||
src/modules/sound/lullaby/FLACDecoder.h
|
||||
src/modules/sound/lullaby/GmeDecoder.cpp
|
||||
@@ -920,25 +995,14 @@ source_group("modules\\thread\\sdl" FILES ${LOVE_SRC_MODULE_THREAD_SDL})
|
||||
# love.timer
|
||||
#
|
||||
|
||||
set(LOVE_SRC_MODULE_TIMER_ROOT
|
||||
set(LOVE_SRC_MODULE_TIMER
|
||||
src/modules/timer/Timer.cpp
|
||||
src/modules/timer/Timer.h
|
||||
src/modules/timer/wrap_Timer.cpp
|
||||
src/modules/timer/wrap_Timer.h
|
||||
)
|
||||
|
||||
set(LOVE_SRC_MODULE_TIMER_SDL
|
||||
src/modules/timer/sdl/Timer.cpp
|
||||
src/modules/timer/sdl/Timer.h
|
||||
)
|
||||
|
||||
set(LOVE_SRC_MODULE_TIMER
|
||||
${LOVE_SRC_MODULE_TIMER_ROOT}
|
||||
${LOVE_SRC_MODULE_TIMER_SDL}
|
||||
)
|
||||
|
||||
source_group("modules\\timer" FILES ${LOVE_SRC_MODULE_TIMER_ROOT})
|
||||
source_group("modules\\timer\\sdl" FILES ${LOVE_SRC_MODULE_TIMER_SDL})
|
||||
source_group("modules\\timer" FILES ${LOVE_SRC_MODULE_TIMER})
|
||||
|
||||
#
|
||||
# love.touch
|
||||
@@ -980,8 +1044,10 @@ set(LOVE_SRC_MODULE_VIDEO_ROOT
|
||||
set(LOVE_SRC_MODULE_VIDEO_THEORA
|
||||
src/modules/video/theora/Video.cpp
|
||||
src/modules/video/theora/Video.h
|
||||
src/modules/video/theora/VideoStream.cpp
|
||||
src/modules/video/theora/VideoStream.h
|
||||
src/modules/video/theora/OggDemuxer.cpp
|
||||
src/modules/video/theora/OggDemuxer.h
|
||||
src/modules/video/theora/TheoraVideoStream.cpp
|
||||
src/modules/video/theora/TheoraVideoStream.h
|
||||
)
|
||||
|
||||
set(LOVE_SRC_MODULE_VIDEO
|
||||
@@ -1220,6 +1286,121 @@ set(LOVE_SRC_3P_GLAD
|
||||
|
||||
add_library(love_3p_glad ${LOVE_SRC_3P_GLAD})
|
||||
|
||||
#
|
||||
# glslang
|
||||
#
|
||||
|
||||
set(LOVE_SRC_3P_GLSLANG_GLSLANG_GENERICCODEGEN
|
||||
src/libraries/glslang/glslang/GenericCodeGen/CodeGen.cpp
|
||||
src/libraries/glslang/glslang/GenericCodeGen/Link.cpp
|
||||
)
|
||||
|
||||
set(LOVE_SRC_3P_GLSLANG_GLSLANG_INCLUDE
|
||||
src/libraries/glslang/glslang/Include/arrays.h
|
||||
src/libraries/glslang/glslang/Include/BaseTypes.h
|
||||
src/libraries/glslang/glslang/Include/Common.h
|
||||
src/libraries/glslang/glslang/Include/ConstantUnion.h
|
||||
src/libraries/glslang/glslang/Include/InfoSink.h
|
||||
src/libraries/glslang/glslang/Include/InitializeGlobals.h
|
||||
src/libraries/glslang/glslang/Include/intermediate.h
|
||||
src/libraries/glslang/glslang/Include/PoolAlloc.h
|
||||
src/libraries/glslang/glslang/Include/ResourceLimits.h
|
||||
src/libraries/glslang/glslang/Include/revision.h
|
||||
src/libraries/glslang/glslang/Include/ShHandle.h
|
||||
src/libraries/glslang/glslang/Include/Types.h
|
||||
)
|
||||
|
||||
set(LOVE_SRC_3P_GLSLANG_GLSLANG_MACHINEINDEPENDENT_PREPROCESSOR
|
||||
src/libraries/glslang/glslang/MachineIndependent/preprocessor/Pp.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/preprocessor/PpAtom.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/preprocessor/PpContext.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/preprocessor/PpContext.h
|
||||
src/libraries/glslang/glslang/MachineIndependent/preprocessor/PpScanner.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/preprocessor/PpTokens.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/preprocessor/PpTokens.h
|
||||
)
|
||||
|
||||
set(LOVE_SRC_3P_GLSLANG_GLSLANG_MACHINEINDEPENDENT
|
||||
${LOVE_SRC_3P_GLSLANG_GLSLANG_MACHINEINDEPENDENT_PREPROCESSOR}
|
||||
src/libraries/glslang/glslang/MachineIndependent/Constant.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/gl_types.h
|
||||
src/libraries/glslang/glslang/MachineIndependent/glslang_tab.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/glslang_tab.cpp.h
|
||||
src/libraries/glslang/glslang/MachineIndependent/InfoSink.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/Initialize.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/Initialize.h
|
||||
src/libraries/glslang/glslang/MachineIndependent/Intermediate.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/intermOut.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/IntermTraverse.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/iomapper.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/iomapper.h
|
||||
src/libraries/glslang/glslang/MachineIndependent/limits.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/linkValidate.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/LiveTraverser.h
|
||||
src/libraries/glslang/glslang/MachineIndependent/localintermediate.h
|
||||
src/libraries/glslang/glslang/MachineIndependent/parseConst.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/ParseContextBase.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/ParseHelper.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/ParseHelper.h
|
||||
src/libraries/glslang/glslang/MachineIndependent/parseVersions.h
|
||||
src/libraries/glslang/glslang/MachineIndependent/PoolAlloc.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/propagateNoContraction.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/propagateNoContraction.h
|
||||
src/libraries/glslang/glslang/MachineIndependent/reflection.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/reflection.h
|
||||
src/libraries/glslang/glslang/MachineIndependent/RemoveTree.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/RemoveTree.h
|
||||
src/libraries/glslang/glslang/MachineIndependent/Scan.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/Scan.h
|
||||
src/libraries/glslang/glslang/MachineIndependent/ScanContext.h
|
||||
src/libraries/glslang/glslang/MachineIndependent/ShaderLang.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/SymbolTable.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/SymbolTable.h
|
||||
src/libraries/glslang/glslang/MachineIndependent/Versions.cpp
|
||||
src/libraries/glslang/glslang/MachineIndependent/Versions.h
|
||||
)
|
||||
|
||||
set(LOVE_SRC_3P_GLSLANG_GLSLANG_OSDEPENDENT
|
||||
src/libraries/glslang/glslang/OSDependent/osinclude.h
|
||||
)
|
||||
|
||||
if(MSVC)
|
||||
set(LOVE_SRC_3P_GLSLANG_GLSLANG_OSDEPENDENT
|
||||
${LOVE_SRC_3P_GLSLANG_GLSLANG_OSDEPENDENT}
|
||||
src/libraries/glslang/glslang/OSDependent/Windows/main.cpp
|
||||
src/libraries/glslang/glslang/OSDependent/Windows/ossource.cpp
|
||||
)
|
||||
else()
|
||||
set(LOVE_SRC_3P_GLSLANG_GLSLANG_OSDEPENDENT
|
||||
${LOVE_SRC_3P_GLSLANG_GLSLANG_OSDEPENDENT}
|
||||
src/libraries/glslang/glslang/OSDependent/Unix/ossource.cpp
|
||||
)
|
||||
endif()
|
||||
|
||||
set(LOVE_SRC_3P_GLSLANG_GLSLANG_PUBLIC
|
||||
src/libraries/glslang/glslang/Public/ShaderLang.h
|
||||
)
|
||||
|
||||
set(LOVE_SRC_3P_GLSLANG_GLSLANG
|
||||
${LOVE_SRC_3P_GLSLANG_GLSLANG_GENERICCODEGEN}
|
||||
${LOVE_SRC_3P_GLSLANG_GLSLANG_INCLUDE}
|
||||
${LOVE_SRC_3P_GLSLANG_GLSLANG_MACHINEINDEPENDENT}
|
||||
${LOVE_SRC_3P_GLSLANG_GLSLANG_OSDEPENDENT}
|
||||
${LOVE_SRC_3P_GLSLANG_GLSLANG_PUBLIC}
|
||||
)
|
||||
|
||||
set(LOVE_SRC_3P_GLSLANG_OGLCOMPILERSDLL
|
||||
src/libraries/glslang/OGLCompilersDLL/InitializeDll.cpp
|
||||
src/libraries/glslang/OGLCompilersDLL/InitializeDll.h
|
||||
)
|
||||
|
||||
set(LOVE_SRC_3P_GLSLANG
|
||||
${LOVE_SRC_3P_GLSLANG_GLSLANG}
|
||||
${LOVE_SRC_3P_GLSLANG_OGLCOMPILERSDLL}
|
||||
)
|
||||
|
||||
add_library(love_3p_glslang ${LOVE_SRC_3P_GLSLANG})
|
||||
|
||||
#
|
||||
# LodePNG
|
||||
#
|
||||
@@ -1245,23 +1426,27 @@ set(LOVE_SRC_3P_LUASOCKET_LIBLUASOCKET
|
||||
src/libraries/luasocket/libluasocket/auxiliar.h
|
||||
src/libraries/luasocket/libluasocket/buffer.c
|
||||
src/libraries/luasocket/libluasocket/buffer.h
|
||||
src/libraries/luasocket/libluasocket/compat.c
|
||||
src/libraries/luasocket/libluasocket/compat.h
|
||||
src/libraries/luasocket/libluasocket/except.c
|
||||
src/libraries/luasocket/libluasocket/except.h
|
||||
src/libraries/luasocket/libluasocket/ftp.lua.h
|
||||
src/libraries/luasocket/libluasocket/headers.lua.h
|
||||
src/libraries/luasocket/libluasocket/http.lua.h
|
||||
src/libraries/luasocket/libluasocket/inet.c
|
||||
src/libraries/luasocket/libluasocket/inet.h
|
||||
src/libraries/luasocket/libluasocket/io.c
|
||||
src/libraries/luasocket/libluasocket/io.h
|
||||
src/libraries/luasocket/libluasocket/ltn12.lua.h
|
||||
src/libraries/luasocket/libluasocket/lua.h
|
||||
src/libraries/luasocket/libluasocket/luasocket.c
|
||||
src/libraries/luasocket/libluasocket/luasocket.h
|
||||
src/libraries/luasocket/libluasocket/mbox.lua.h
|
||||
src/libraries/luasocket/libluasocket/mime.c
|
||||
src/libraries/luasocket/libluasocket/mime.h
|
||||
src/libraries/luasocket/libluasocket/mime.lua.h
|
||||
src/libraries/luasocket/libluasocket/options.c
|
||||
src/libraries/luasocket/libluasocket/options.h
|
||||
src/libraries/luasocket/libluasocket/pierror.h
|
||||
src/libraries/luasocket/libluasocket/select.c
|
||||
src/libraries/luasocket/libluasocket/select.h
|
||||
src/libraries/luasocket/libluasocket/smtp.lua.h
|
||||
@@ -1277,15 +1462,29 @@ set(LOVE_SRC_3P_LUASOCKET_LIBLUASOCKET
|
||||
src/libraries/luasocket/libluasocket/url.lua.h
|
||||
)
|
||||
|
||||
set(LOVE_LINK_L3P_LUASOCKET_LIBLUASOCKET)
|
||||
|
||||
if(MSVC)
|
||||
set(LOVE_SRC_3P_LUASOCKET_LIBLUASOCKET
|
||||
${LOVE_SRC_3P_LUASOCKET_LIBLUASOCKET}
|
||||
src/libraries/luasocket/libluasocket/wsocket.c
|
||||
src/libraries/luasocket/libluasocket/wsocket.h
|
||||
)
|
||||
|
||||
set(LOVE_LINK_L3P_LUASOCKET_LIBLUASOCKET
|
||||
${LOVE_LINK_L3P_LUASOCKET_LIBLUASOCKET}
|
||||
ws2_32.lib
|
||||
)
|
||||
else()
|
||||
set(LOVE_SRC_3P_LUASOCKET_LIBLUASOCKET
|
||||
${LOVE_SRC_3P_LUASOCKET_LIBLUASOCKET}
|
||||
src/libraries/luasocket/libluasocket/serial.c
|
||||
src/libraries/luasocket/libluasocket/unix.c
|
||||
src/libraries/luasocket/libluasocket/unix.h
|
||||
src/libraries/luasocket/libluasocket/unixtcp.c
|
||||
src/libraries/luasocket/libluasocket/unixtcp.h
|
||||
src/libraries/luasocket/libluasocket/unixudp.c
|
||||
src/libraries/luasocket/libluasocket/unixudp.h
|
||||
src/libraries/luasocket/libluasocket/usocket.c
|
||||
src/libraries/luasocket/libluasocket/usocket.h
|
||||
)
|
||||
@@ -1297,20 +1496,22 @@ set(LOVE_SRC_3P_LUASOCKET
|
||||
)
|
||||
|
||||
add_library(love_3p_luasocket ${LOVE_SRC_3P_LUASOCKET})
|
||||
target_link_libraries(love_3p_luasocket ${LOVE_LUA_LIBRARY})
|
||||
target_link_libraries(love_3p_luasocket ${LOVE_LUA_LIBRARY} ${LOVE_LINK_L3P_LUASOCKET_LIBLUASOCKET})
|
||||
|
||||
#
|
||||
# Lua 5.3's UTF-8 library
|
||||
# APIs from Lua 5.3
|
||||
#
|
||||
|
||||
set(LOVE_SRC_3P_LUAUTF8
|
||||
src/libraries/luautf8/lprefix.h
|
||||
src/libraries/luautf8/lutf8lib.c
|
||||
src/libraries/luautf8/lutf8lib.h
|
||||
set(LOVE_SRC_3P_LUA53
|
||||
src/libraries/lua53/lprefix.h
|
||||
src/libraries/lua53/lstrlib.c
|
||||
src/libraries/lua53/lstrlib.h
|
||||
src/libraries/lua53/lutf8lib.c
|
||||
src/libraries/lua53/lutf8lib.h
|
||||
)
|
||||
|
||||
add_library(love_3p_luautf8 ${LOVE_SRC_3P_LUAUTF8})
|
||||
target_link_libraries(love_3p_luautf8 ${LOVE_LUA_LIBRARY})
|
||||
add_library(love_3p_lua53 ${LOVE_SRC_3P_LUA53})
|
||||
target_link_libraries(love_3p_lua53 ${LOVE_LUA_LIBRARY})
|
||||
|
||||
#
|
||||
# lz4
|
||||
@@ -1321,6 +1522,7 @@ set(LOVE_SRC_3P_LZ4
|
||||
src/libraries/lz4/lz4.h
|
||||
src/libraries/lz4/lz4hc.c
|
||||
src/libraries/lz4/lz4hc.h
|
||||
src/libraries/lz4/lz4opt.h
|
||||
)
|
||||
|
||||
add_library(love_3p_lz4 ${LOVE_SRC_3P_LZ4})
|
||||
@@ -1338,6 +1540,49 @@ set(LOVE_SRC_3P_NOISE1234
|
||||
|
||||
add_library(love_3p_noise1234 ${LOVE_SRC_3P_NOISE1234})
|
||||
|
||||
#
|
||||
# physfs
|
||||
#
|
||||
|
||||
set(LOVE_SRC_3P_PHYSFS
|
||||
src/libraries/physfs/physfs_archiver_7z.c
|
||||
src/libraries/physfs/physfs_archiver_dir.c
|
||||
src/libraries/physfs/physfs_archiver_grp.c
|
||||
src/libraries/physfs/physfs_archiver_hog.c
|
||||
src/libraries/physfs/physfs_archiver_iso9660.c
|
||||
src/libraries/physfs/physfs_archiver_mvl.c
|
||||
src/libraries/physfs/physfs_archiver_qpak.c
|
||||
src/libraries/physfs/physfs_archiver_slb.c
|
||||
src/libraries/physfs/physfs_archiver_unpacked.c
|
||||
src/libraries/physfs/physfs_archiver_vdf.c
|
||||
src/libraries/physfs/physfs_archiver_wad.c
|
||||
src/libraries/physfs/physfs_archiver_zip.c
|
||||
src/libraries/physfs/physfs_byteorder.c
|
||||
src/libraries/physfs/physfs_casefolding.h
|
||||
src/libraries/physfs/physfs_internal.h
|
||||
src/libraries/physfs/physfs_lzmasdk.h
|
||||
src/libraries/physfs/physfs_miniz.h
|
||||
src/libraries/physfs/physfs_platform_haiku.cpp
|
||||
src/libraries/physfs/physfs_platform_os2.c
|
||||
src/libraries/physfs/physfs_platform_posix.c
|
||||
src/libraries/physfs/physfs_platform_qnx.c
|
||||
src/libraries/physfs/physfs_platform_unix.c
|
||||
src/libraries/physfs/physfs_platform_windows.c
|
||||
src/libraries/physfs/physfs_platform_winrt.cpp
|
||||
src/libraries/physfs/physfs_platforms.h
|
||||
src/libraries/physfs/physfs_unicode.c
|
||||
src/libraries/physfs/physfs.c
|
||||
src/libraries/physfs/physfs.h
|
||||
)
|
||||
|
||||
if(APPLE)
|
||||
set(LOVE_SRC_3P_PHYSFS ${LOVE_SRC_3P_PHYSFS}
|
||||
src/libraries/physfs/physfs_platform_apple.m
|
||||
)
|
||||
endif()
|
||||
|
||||
add_library(love_3p_physfs ${LOVE_SRC_3P_PHYSFS})
|
||||
|
||||
#
|
||||
# stb_image
|
||||
#
|
||||
@@ -1348,6 +1593,16 @@ set(LOVE_SRC_3P_STB
|
||||
|
||||
# stb_image has no implementation files of its own.
|
||||
|
||||
#
|
||||
# tiny exr
|
||||
#
|
||||
|
||||
set(LOVE_SRC_3P_TINYEXR
|
||||
src/libraries/tinyexr/tinyexr.h
|
||||
)
|
||||
|
||||
# tinyexr has no implementation files of its own.
|
||||
|
||||
#
|
||||
# utf8
|
||||
#
|
||||
@@ -1385,20 +1640,34 @@ set(LOVE_SRC_3P_WUFF
|
||||
|
||||
add_library(love_3p_wuff ${LOVE_SRC_3P_WUFF})
|
||||
|
||||
#
|
||||
# xxHash
|
||||
#
|
||||
|
||||
set(LOVE_SRC_3P_XXHASH
|
||||
src/libraries/xxHash/xxhash.c
|
||||
src/libraries/xxHash/xxhash.h
|
||||
)
|
||||
|
||||
add_library(love_3p_xxhash ${LOVE_SRC_3P_XXHASH})
|
||||
|
||||
set(LOVE_3P
|
||||
love_3p_box2d
|
||||
love_3p_ddsparse
|
||||
love_3p_enet
|
||||
love_3p_glad
|
||||
love_3p_glslang
|
||||
love_3p_lodepng
|
||||
love_3p_luasocket
|
||||
love_3p_luautf8
|
||||
love_3p_lua53
|
||||
love_3p_lz4
|
||||
love_3p_noise1234
|
||||
love_3p_physfs
|
||||
love_3p_wuff
|
||||
love_3p_xxhash
|
||||
)
|
||||
|
||||
love_disable_warnings(love_3p_box2d love_3p_enet love_3p_luasocket)
|
||||
love_disable_warnings(love_3p_box2d love_3p_enet love_3p_luasocket love_3p_physfs)
|
||||
|
||||
#
|
||||
# liblove
|
||||
@@ -1407,6 +1676,7 @@ set(LOVE_LIB_SRC
|
||||
${LOVE_SRC_COMMON}
|
||||
# Modules
|
||||
${LOVE_SRC_MODULE_AUDIO}
|
||||
${LOVE_SRC_MODULE_DATA}
|
||||
${LOVE_SRC_MODULE_EVENT}
|
||||
${LOVE_SRC_MODULE_FILESYSTEM}
|
||||
${LOVE_SRC_MODULE_FONT}
|
||||
@@ -1583,7 +1853,7 @@ set(CPACK_RESOURCE_FILE_README "${CMAKE_CURRENT_SOURCE_DIR}/readme.md")
|
||||
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/license.txt")
|
||||
|
||||
set(CPACK_NSIS_EXECUTABLES_DIRECTORY .)
|
||||
set(CPACK_NSIS_PACKAGE_NAME "LÖVE")
|
||||
set(CPACK_NSIS_PACKAGE_NAME "LOVE")
|
||||
set(CPACK_NSIS_DISPLAY_NAME "LOVE ${LOVE_VERSION_STR}")
|
||||
set(CPACK_NSIS_MODIFY_PATH OFF)
|
||||
|
||||
@@ -1604,7 +1874,7 @@ set(NSIS_MUI_ICON "${CMAKE_CURRENT_SOURCE_DIR}/extra/nsis\\\\love.ico")
|
||||
set(NSIS_MUI_UNICON "${CMAKE_CURRENT_SOURCE_DIR}/extra/nsis\\\\love.ico")
|
||||
|
||||
set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "
|
||||
!define MUI_WELCOMEPAGE_TITLE \\\"LÖVE ${LOVE_VERSION_STR} Setup\\\"
|
||||
!define MUI_WELCOMEPAGE_TITLE \\\"LOVE ${LOVE_VERSION_STR} Setup\\\"
|
||||
!define MUI_WELCOMEFINISHPAGE_BITMAP \\\"${NSIS_LEFT_BMP}\\\"
|
||||
!define MUI_HEADERIMAGE_BITMAP \\\"${NSIS_TOP_BMP}\\\"
|
||||
!define MUI_ICON \\\"${NSIS_MUI_ICON}\\\"
|
||||
|
||||
@@ -1,3 +1,187 @@
|
||||
LOVE 11.1 [Mysterious Mysteries]
|
||||
--------------------------------
|
||||
|
||||
Released: 2018-04-15
|
||||
|
||||
* Fixed love.graphics.setCanvas failing randomly.
|
||||
* Fixed love.graphics.clear(colortable) when no Canvas is active.
|
||||
* Fixed stencil and depth support on older phones.
|
||||
* Fixed love.event.quit causing crashes and other unexpected behaviour if a Canvas is active.
|
||||
* Fixed Fixture:getShape crashing when returning a ChainShape.
|
||||
* Fixed love.joystick.loadJoystickMappings outputting a deprecation warning about love.filesystem.isFile.
|
||||
* Fixed Source:queue to show the correct argument name in the error message when an invalid data parameter is given.
|
||||
* Fixed t.console=true causing an error on Windows if lovec.exe is used.
|
||||
|
||||
LOVE 11.0 [Mysterious Mysteries]
|
||||
--------------------------------
|
||||
|
||||
Released: 2018-04-01
|
||||
|
||||
* Added Object:release.
|
||||
* Added Data:clone.
|
||||
* Added queueable audio sources.
|
||||
* Added audio input support.
|
||||
* Added Source filters: low gain, high gain and band pass.
|
||||
* Added audio effect APIs (reverb, echo, etc.)
|
||||
* Added variants of SoundData:getSample/setSample which take a channel parameter.
|
||||
* Added variants of all table-with-fields-returning get* functions, the new variants take an existing table to fill in.
|
||||
* Added a variant to World:update, which accepts the number of iterations to run. The defaults are now 8 and 3.
|
||||
* Added Body:isTouching.
|
||||
* Added RopeJoint:setMaxLength.
|
||||
* Added a click count argument to love.mousepressed and love.mousereleased.
|
||||
* Added variants of love.filesystem.mount which accept a Data or FileData object containing zipped data.
|
||||
* Added love.filesystem.get/setCRequirePath, and use that to find c libraries for require.
|
||||
* Added variants of File:read and love.filesystem.read which take an enum to determine whether they return a FileData or a string.
|
||||
* Added love.data module. It includes hex/base64 encoding functions, MD5 and SHA hashing, string packing, compression APIs, and more.
|
||||
* Added Channel:hasRead, which checks if a message has been read. Takes an id, which Channel:push will now return.
|
||||
* Added variants of Channel:demand and Channel:supply which take a timeout argument.
|
||||
* Added Transform objects to love.math.
|
||||
* Added support for different ImageData formats, including RGBA8 (the default), RGBA16, RGBA16F, and RGBA32F.
|
||||
* Added the ability to load Radiance HDR, OpenEXR, and 16 bit PNG images.
|
||||
* Added love.graphics.getImageFormats (replaces love.graphics.getCompressedImageFormats).
|
||||
* Added the ability to specify a per-object pixel density scale factor when creating Images, Canvases, Fonts, and Videos. Affects drawing.
|
||||
* Added Texture:getPixelWidth/Height and love.graphics.getPixelWidth/Height.
|
||||
* Added Texture:getPixelDensity, love.graphics.getPixelDensity, and Font:getPixelDensity.
|
||||
* Added Texture:getMipmapCount, getFormat, getLayerCount, getDepth, and getTextureType.
|
||||
* Added Array, Cubemap, and Volume texture types and corresponding Image and Canvas APIs.
|
||||
* Added love.graphics.getTextureTypes, returns a table with fields indicating support for each texture type.
|
||||
* Added mipmapping support to Canvases, including both auto-generated mipmaps and manually rendering to a specific mipmap level.
|
||||
* Added 'stencil8', 'depth24stencil8', 'depth32fstencil8', 'depth16', 'depth24', and 'depth32f' pixel formats for Canvases.
|
||||
* Added variant of love.graphics.newCanvas which accepts a table of settings.
|
||||
* Added optional 'readable' boolean field to the table passed into love.graphics.newCanvas.
|
||||
* Added optional 'depthstencil' field to the table passed into love.graphics.setCanvas, for using a depth/stencil Canvas.
|
||||
* Added optional 'depth' and 'stencil' boolean fields to the table passed into setCanvas, for enabling depth and stencil buffers if 'depthstencil' isn't used.
|
||||
* Added shadow sampler support for Canvases.
|
||||
* Added love.graphics.setDepthMode for using the depth buffer for depth testing/writes. Depth values of rendered objects can only be set via shaders.
|
||||
* Added love.graphics.setMeshCullMode, for culling back- or front-facing triangles when drawing a Mesh.
|
||||
* Added love.graphics.setFrontFaceWinding.
|
||||
* Added variant of love.graphics.getCanvasFormats which takes a 'readable' boolean.
|
||||
* Added love.graphics.drawLayer and SpriteBatch:add/setLayer for easily drawing layers of Array Textures.
|
||||
* Added variants of love.graphics.print and printf which take a Font argument.
|
||||
* Added variants of love.graphics.clear to control how the active depth and stencil buffers are cleared.
|
||||
* Added love.graphics.applyTransform and love.graphics.replaceTransform.
|
||||
* Added love.graphics.transformPoint and love.graphics.inverseTransformPoint.
|
||||
* Added love.graphics.getStackDepth.
|
||||
* Added love.graphics.flushBatch for manually flushing automatically batched draws.
|
||||
* Added SpriteBatch:setDrawRange.
|
||||
* Added per-shader opt in support for the GLSL 3.30 and GLSL ES 3.00 shading languages.
|
||||
* Added 'void effect()' pixel shader entry point.
|
||||
* Added love.graphics.validateShader.
|
||||
* Added Shader:hasUniform.
|
||||
* Added support for non-square shader uniform matrices on desktop platforms and on mobile GLSL 3.
|
||||
* Added Shader:send(matrixname, is_column_major, matrix, ...) which specifies how to interpret the matrix table arguments.
|
||||
* Added Shader:send variants which accept a Data object.
|
||||
* Added 'borderellipse' and 'borderrectangle' ParticleSystem distributions.
|
||||
* Added variant of ParticleSystem:setEmissionArea which accepts an area angle and a flag for whether particle directions are relative to the center of the area.
|
||||
* Added ParticleSystem:set/getAreaSpreadAngle and set/getAreaSpreadIsRelativeDirection.
|
||||
* Added love.graphics.captureScreenshot (replaces love.graphics.newScreenshot).
|
||||
* Added 'glsl3', 'instancing', 'fullnpot','pixelshaderhighp', and 'shaderderivatives' graphics features.
|
||||
* Added 'anisotropy' graphics limit.
|
||||
* Added Mesh instancing support via love.graphics.drawInstanced and Mesh:attachAttribute.
|
||||
* Added a Mesh:attachAttribute variant that takes a different target attribute name.
|
||||
* Added Mesh:detachAttribute.
|
||||
* Added a variant of Mesh:setVertexMap which accepts a Data object.
|
||||
* Added love.window.updateMode.
|
||||
* Added love.window.isMinimized.
|
||||
* Added love.window.restore.
|
||||
* Added the ability to prevent love from creating a stencil buffer for the window.
|
||||
* Added cycle detection to Variant's table serialization, cycles now cause an error, rather than a stack overflow.
|
||||
* Added love.graphics.newShader File and FileData variants.
|
||||
* Added a default love.threaderror callback, which raises the error in the main thread.
|
||||
* Added checks for invalid constants passed to love.keyboard.isDown/isScancodeDown.
|
||||
* Added deprecation warnings, on by default for non-fused games.
|
||||
* Added love.filesystem.getInfo.
|
||||
* Added 'drawcallsbatched' to love.graphics.getStats.
|
||||
* Added support for header-less DEFLATE to love.data.compress/decompress.
|
||||
|
||||
* Deprecated love.filesystem.exists / isFile / isDirectory / isSymlink / getLastModified / getSize (use getInfo instead).
|
||||
* Deprecated love.math.compress / decompress (use love.data.compress / decompress instead).
|
||||
|
||||
* - All renamed APIs are formally deprecated rather than completely removed.
|
||||
* Renamed love.window.getPixelScale to love.window.getDPIScale.
|
||||
* Renamed love.mouse.hasCursor to love.mouse.isCursorSupported.
|
||||
* Renamed ParticleSystem:setAreaSpread to ParticleSystem:setEmissionArea.
|
||||
* Renamed love.errhand to love.errorhandler.
|
||||
* Renamed Source/SoundData/Decoder:getChannels to getChannelCount.
|
||||
* Renamed PrismaticJoint/RevoluteJoint:hasLimitsEnabled to areLimitsEnabled.
|
||||
* Renamed love.audio.getSourceCount to love.audio.getActiveSourceCount.
|
||||
* Renamed all get[Object]List functions to get[Object]s.
|
||||
|
||||
* Removed the default source type for love.audio.newSource.
|
||||
* Removed variant of love.filesystem.newFileData which takes base64 data, use love.data.decode instead.
|
||||
* Removed the no-argument variant of Text:set, use Text:clear instead.
|
||||
* Removed love.graphics.getCompressedImageFormats, use love.graphics.getImageFormats instead.
|
||||
* Removed the 'void effects(...)' pixel shader entry point. Use the new 'void effect()' instead.
|
||||
* Removed Shader:getExternVariable, use Shader:hasUniform instead.
|
||||
* Removed love.graphics.newScreenshot, use love.graphics.captureScreenshot instead.
|
||||
* Removed deprecated enet function host:socket_get_address.
|
||||
* Removed functions deprecated in LÖVE 0.10.2:
|
||||
* Removed Shader:sendInt, Shader:sendBoolean, Shader:sentFloat, Shader:sendMatrix, and Shader:sendTexture (use Shader:send instead).
|
||||
* Removed love.window.isCreated (use love.window.isOpen instead).
|
||||
|
||||
* Improved performance when drawing textures, shapes, lines, and points by automatically batching their draw calls together when possible.
|
||||
* Improved performance of Shader:send when the Shader is not active.
|
||||
* Improved performance of love.math.randomNormal when LuaJIT's JIT compiler is enabled.
|
||||
* Improved performance of love.filesystem.lines and File:lines, especially when reading from a file inside a zip/.love.
|
||||
|
||||
* Changed all color values to be in the range 0-1, rather than 0-255.
|
||||
* Changed high-dpi functionality to require much less code (often none at all) for graphics to appear at the correct sizes and positions.
|
||||
* Changed love.graphics.print and friends to ignore carriage returns.
|
||||
* Changed the 'multiply' blend mode to error if not used with the 'premultiplied' blend alpha mode, since the formula only works with that anyway.
|
||||
* Changed some love.graphics, love.window, and love.event APIs to cause an error if a Canvas is active.
|
||||
* Changed stenciling functionality with a Canvas active to require stencil=true (or a custom stencil-formatted Canvas) to be set in setCanvas.
|
||||
* Changed Mesh:setDrawRange to take 'start' and 'count' parameters instead of 'min' and 'max'.
|
||||
* Changed the 'vsync' field of love.window.setMode and t.window in love.conf. It's now an integer with 0 disabling vsync.
|
||||
* Changed the audio playback APIs drastically.
|
||||
* Changed enet to no longer set the 'enet' global, again matching luasocket.
|
||||
* Changed Source seeking behaviour, all kinds of Sources now behave similarly when seeking past the boundaries.
|
||||
* Changed love.timer.step, it now returns dt.
|
||||
* Changed love.run and love.errhand to return a function for their main loop, which gets called until love quits.
|
||||
|
||||
* Updated and improved command line argument handling.
|
||||
* Updated the boot sequence to show an error instead of the no-game screen, if a nonexistant folder is passed in as the source game directory.
|
||||
* Updated 'love.exe --version' on Windows to print to the parent console.
|
||||
* Updated Android print rerouting and JIT compilation disabling to apply inside threads.
|
||||
* Updated invalid enum value error messages to show a list of the valid enum values.
|
||||
* Updated Source:seek to work if the Source isn't playing.
|
||||
* Updated love.event.poll to stop allocating memory unnecessarily.
|
||||
* Updated love.math.random to have improved numeric distribution.
|
||||
* Updated love.graphics to support Core Profile OpenGL 3.3+ when available.
|
||||
* Updated shaders to always expose derivative functions (dFdx, dFdy, fwidth) when available in OpenGL ES.
|
||||
* Updated shaders to allow using VERTEX and PIXEL in shader code.
|
||||
* Updated love.graphics.circle/ellipse/arc/rectangle to take transformation scale into account when determining the number of segments to use.
|
||||
* Updated Font glyph generation to improve antialiasing.
|
||||
* Updated Canvas:newImageData to return an ImageData with a format that matches the Canvas' as closely as possible.
|
||||
* Updated love.graphics.newImage to treat file names ending with "@2x", "@3x", etc. as a pixel density scale factor if none is explicitly supplied.
|
||||
* Updated the error message when bad values are given to love.graphics.line.
|
||||
* Updated the maximum love.graphics transformation/state stack depth from 64 to 128.
|
||||
* Updated the default error handler to allow copying the error to the clipboard when the user decides to do so.
|
||||
* Updated love.filesystem.setRequirePath to support multiple template '?' characters in each path.
|
||||
* Updated luasocket to version 3.0rc1.
|
||||
* Updated love.joystick.loadGamepadMappings so it doesn't error when given an empty string.
|
||||
* Updated love.joystick.setGamepadMapping to use the controller's name for the new mapping when possible.
|
||||
|
||||
* Fixed error in default error handler when the error message contains non UTF-8 bytes.
|
||||
* Fixed a memory leak when sending love objects to threads which never load that object's module.
|
||||
* Fixed a memory leak in enet when peer:send fails.
|
||||
* Fixed os.execute always returning -1 in Linux.
|
||||
* Fixed the default reference angle for WeldJoint, PrismaticJoint, and RevoluteJoint.
|
||||
* Fixed Fixture:getShape to reuse the existing internal Fixture-owned shape.
|
||||
* Fixed MouseJoint:setFrequency to error instead of crashing if a frequency of 0 is set.
|
||||
* Fixed love.system.set/getClipboardText to error instead of crashing, when a window hasn't been created.
|
||||
* Fixed Joystick:getGamepadMapping to work with xinput controllers.
|
||||
* Fixed love.joystick.setGamepadMapping's replacement code.
|
||||
* Fixed baseline calculation when rendering text.
|
||||
* Fixed VaryingTexCoords and love_ScreenSize in shaders to be 'highp' in OpenGL ES, when supported.
|
||||
* Fixed ParticleSystem:setParticleLifetime to error if a negative value is given.
|
||||
* Fixed Shader:send and Shader:sendColor ignoring the last argument for an array.
|
||||
* Fixed a crash when love.graphics.pop is called after a love.window.setMode while the transformation stack was not empty.
|
||||
* Fixed love.window.isMaximized.
|
||||
* Fixed video playback to work with a wider range of Ogg Theora files.
|
||||
* Fixed video seeking to be faster.
|
||||
* Fixed BezierCurves to error instead of hanging in some situations.
|
||||
* Fixed compilation of luasocket with newer luajit 2.1.0 beta versions.
|
||||
|
||||
LOVE 0.10.2 [Super Toast]
|
||||
-------------------------
|
||||
|
||||
|
||||
@@ -1,12 +1,21 @@
|
||||
version: 0.10.2.{build}
|
||||
version: 11.1.{build}
|
||||
|
||||
image: Visual Studio 2013
|
||||
|
||||
shallow_clone: true
|
||||
|
||||
environment:
|
||||
matrix:
|
||||
- PLATFORM: x86
|
||||
VCVARSALL_PLATFORM: x86
|
||||
GENERATOR: "Visual Studio 12"
|
||||
- PLATFORM: x64
|
||||
VCVARSALL_PLATFORM: x86_amd64
|
||||
GENERATOR: "Visual Studio 12 Win64"
|
||||
|
||||
init:
|
||||
# Make VS 2013 command line tools available
|
||||
- call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" %platform%
|
||||
- call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" %VCVARSALL_PLATFORM%
|
||||
|
||||
install:
|
||||
# We need to install NSIS to create the packaged installer executable.
|
||||
@@ -26,7 +35,7 @@ install:
|
||||
- move love libs\love
|
||||
|
||||
before_build:
|
||||
- cmake -G "Visual Studio 12" -H. -Bbuild
|
||||
- cmake -G "%GENERATOR%" -H. -Bbuild
|
||||
|
||||
build_script:
|
||||
- cmake --build build --target PACKAGE --config Release
|
||||
|
||||
Binary file not shown.
+1131
-942
File diff suppressed because it is too large
Load Diff
@@ -1,28 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>love2d.${PRODUCT_NAME:rfc1034identifier}</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>LÖVE</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>0.9.2</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>LoVe</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>0.9.2</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string></string>
|
||||
</dict>
|
||||
</plist>
|
||||
@@ -1,75 +0,0 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2014 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
* arising from the use of this software.
|
||||
*
|
||||
* Permission is granted to anyone to use this software for any purpose,
|
||||
* including commercial applications, and to alter it and redistribute it
|
||||
* freely, subject to the following restrictions:
|
||||
*
|
||||
* 1. The origin of this software must not be misrepresented; you must not
|
||||
* claim that you wrote the original software. If you use this software
|
||||
* in a product, an acknowledgment in the product documentation would be
|
||||
* appreciated but is not required.
|
||||
* 2. Altered source versions must be plainly marked as such, and must not be
|
||||
* misrepresented as being the original software.
|
||||
* 3. This notice may not be removed or altered from any source distribution.
|
||||
**/
|
||||
|
||||
#import "OSX.h"
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
#include <SDL2/SDL.h>
|
||||
|
||||
namespace love
|
||||
{
|
||||
namespace osx
|
||||
{
|
||||
|
||||
std::string getLoveInResources()
|
||||
{
|
||||
std::string path;
|
||||
|
||||
@autoreleasepool
|
||||
{
|
||||
// check to see if there are any .love files in Resources - props to stevejohnson/diordna
|
||||
NSArray *lovePaths = [[NSBundle mainBundle] pathsForResourcesOfType:@"love" inDirectory:nil];
|
||||
if ([lovePaths count] > 0)
|
||||
{
|
||||
NSString *firstLovePath = [lovePaths objectAtIndex:0];
|
||||
path = std::string([firstLovePath UTF8String]);
|
||||
}
|
||||
}
|
||||
|
||||
return path;
|
||||
}
|
||||
|
||||
std::string checkDropEvents()
|
||||
{
|
||||
std::string dropstr;
|
||||
SDL_Event event;
|
||||
|
||||
bool initvideo = SDL_WasInit(SDL_INIT_VIDEO) != 0;
|
||||
if (!initvideo)
|
||||
SDL_InitSubSystem(SDL_INIT_VIDEO);
|
||||
|
||||
SDL_PumpEvents();
|
||||
if (SDL_PeepEvents(&event, 1, SDL_GETEVENT, SDL_DROPFILE, SDL_DROPFILE) > 0)
|
||||
{
|
||||
if (event.type == SDL_DROPFILE)
|
||||
{
|
||||
dropstr = std::string(event.drop.file);
|
||||
SDL_free(event.drop.file);
|
||||
}
|
||||
}
|
||||
|
||||
if (!initvideo)
|
||||
SDL_QuitSubSystem(SDL_INIT_VIDEO);
|
||||
|
||||
return dropstr;
|
||||
}
|
||||
|
||||
} // osx
|
||||
} // love
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,87 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleDocumentTypes</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>CFBundleTypeIconFile</key>
|
||||
<string>LoveDocument.icns</string>
|
||||
<key>CFBundleTypeName</key>
|
||||
<string>LÖVE Project</string>
|
||||
<key>CFBundleTypeRole</key>
|
||||
<string>Viewer</string>
|
||||
<key>LSHandlerRank</key>
|
||||
<string>Owner</string>
|
||||
<key>LSItemContentTypes</key>
|
||||
<array>
|
||||
<string>org.love2d.love-game</string>
|
||||
</array>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>CFBundleTypeName</key>
|
||||
<string>Folder</string>
|
||||
<key>CFBundleTypeOSTypes</key>
|
||||
<array>
|
||||
<string>fold</string>
|
||||
</array>
|
||||
<key>CFBundleTypeRole</key>
|
||||
<string>Viewer</string>
|
||||
<key>LSHandlerRank</key>
|
||||
<string>None</string>
|
||||
</dict>
|
||||
</array>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>love</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string>Love.icns</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>org.love2d.love</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>LÖVE</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>0.9.2</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>LoVe</string>
|
||||
<key>LSApplicationCategoryType</key>
|
||||
<string>public.app-category.games</string>
|
||||
<key>NSHumanReadableCopyright</key>
|
||||
<string>© 2006-2014 LÖVE Development Team</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string>NSApplication</string>
|
||||
<key>UTExportedTypeDeclarations</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>UTTypeConformsTo</key>
|
||||
<array>
|
||||
<string>com.pkware.zip-archive</string>
|
||||
</array>
|
||||
<key>UTTypeDescription</key>
|
||||
<string>LÖVE Project</string>
|
||||
<key>UTTypeIconFile</key>
|
||||
<string>LoveDocument.icns</string>
|
||||
<key>UTTypeIdentifier</key>
|
||||
<string>org.love2d.love-game</string>
|
||||
<key>UTTypeReferenceURL</key>
|
||||
<string>http://love2d.org/wiki/Game_Distribution</string>
|
||||
<key>UTTypeTagSpecification</key>
|
||||
<dict>
|
||||
<key>com.apple.ostype</key>
|
||||
<string>LOVE</string>
|
||||
<key>public.filename-extension</key>
|
||||
<array>
|
||||
<string>love</string>
|
||||
</array>
|
||||
<key>public.mime-type</key>
|
||||
<string>application/x-love-game</string>
|
||||
</dict>
|
||||
</dict>
|
||||
</array>
|
||||
</dict>
|
||||
</plist>
|
||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@@ -1,508 +0,0 @@
|
||||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 46;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; };
|
||||
A9255DD11043183600BA1496 /* FreeType.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = A93E6E4810420B4A007D418B /* FreeType.framework */; };
|
||||
A9255DD31043183600BA1496 /* Lua.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = A93E6E5310420B57007D418B /* Lua.framework */; };
|
||||
A9255E031043195A00BA1496 /* Vorbis.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = A9255E021043195A00BA1496 /* Vorbis.framework */; };
|
||||
A9255F431043240F00BA1496 /* IL.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = A9255F421043240F00BA1496 /* IL.framework */; };
|
||||
A9255F58104324E100BA1496 /* Ogg.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = A9255F51104324D700BA1496 /* Ogg.framework */; };
|
||||
A93E6E5510420B57007D418B /* Lua.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A93E6E5310420B57007D418B /* Lua.framework */; };
|
||||
A93E6EED10420BA8007D418B /* love.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A93E6A3410420AC0007D418B /* love.cpp */; };
|
||||
A9D307F2106635D3004FEDF8 /* physfs.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = A9D307E9106635C3004FEDF8 /* physfs.framework */; };
|
||||
A9DEC1C11046EFA70049C70C /* Love.icns in Resources */ = {isa = PBXBuildFile; fileRef = A9DEC1BF1046EFA60049C70C /* Love.icns */; };
|
||||
A9DEC1C21046EFA70049C70C /* LoveDocument.icns in Resources */ = {isa = PBXBuildFile; fileRef = A9DEC1C01046EFA70049C70C /* LoveDocument.icns */; };
|
||||
A9F169AC109E825000FC83D1 /* mpg123.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = A9F169A6109E824900FC83D1 /* mpg123.framework */; };
|
||||
A9F169AD109E825000FC83D1 /* libmodplug.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = A9F16926109E7BAD00FC83D1 /* libmodplug.framework */; };
|
||||
FA08F69616C766E000F007B5 /* love.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA08F69116C765A200F007B5 /* love.framework */; };
|
||||
FA08F69716C766E700F007B5 /* love.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = FA08F69116C765A200F007B5 /* love.framework */; };
|
||||
FA9B4A0A16E1579F00074F42 /* SDL2.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA9B4A0916E1579F00074F42 /* SDL2.framework */; };
|
||||
FA9B4A0B16E157B500074F42 /* SDL2.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = FA9B4A0916E1579F00074F42 /* SDL2.framework */; };
|
||||
FAAFF04716CB120000CCDE45 /* OpenAL-Soft.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = FAAFF04616CB120000CCDE45 /* OpenAL-Soft.framework */; };
|
||||
FAC1A449196F5DC600125284 /* license.txt in Resources */ = {isa = PBXBuildFile; fileRef = FAC1A448196F5DC600125284 /* license.txt */; };
|
||||
FAC8E8D416F3C468004DADF3 /* OSX.mm in Sources */ = {isa = PBXBuildFile; fileRef = FAC8E8D316F3C468004DADF3 /* OSX.mm */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXContainerItemProxy section */
|
||||
FA08F6A616C77A4300F007B5 /* PBXContainerItemProxy */ = {
|
||||
isa = PBXContainerItemProxy;
|
||||
containerPortal = FA577A9316C7217800860150 /* love-framework.xcodeproj */;
|
||||
proxyType = 2;
|
||||
remoteGlobalIDString = FA577AAF16C7507900860150;
|
||||
remoteInfo = "love framework";
|
||||
};
|
||||
/* End PBXContainerItemProxy section */
|
||||
|
||||
/* Begin PBXCopyFilesBuildPhase section */
|
||||
A9255DDE1043185300BA1496 /* Copy Frameworks */ = {
|
||||
isa = PBXCopyFilesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
dstPath = "";
|
||||
dstSubfolderSpec = 10;
|
||||
files = (
|
||||
FA08F69716C766E700F007B5 /* love.framework in Copy Frameworks */,
|
||||
FA9B4A0B16E157B500074F42 /* SDL2.framework in Copy Frameworks */,
|
||||
FAAFF04716CB120000CCDE45 /* OpenAL-Soft.framework in Copy Frameworks */,
|
||||
A9F169AC109E825000FC83D1 /* mpg123.framework in Copy Frameworks */,
|
||||
A9F169AD109E825000FC83D1 /* libmodplug.framework in Copy Frameworks */,
|
||||
A9D307F2106635D3004FEDF8 /* physfs.framework in Copy Frameworks */,
|
||||
A9255F58104324E100BA1496 /* Ogg.framework in Copy Frameworks */,
|
||||
A9255F431043240F00BA1496 /* IL.framework in Copy Frameworks */,
|
||||
A9255E031043195A00BA1496 /* Vorbis.framework in Copy Frameworks */,
|
||||
A9255DD11043183600BA1496 /* FreeType.framework in Copy Frameworks */,
|
||||
A9255DD31043183600BA1496 /* Lua.framework in Copy Frameworks */,
|
||||
);
|
||||
name = "Copy Frameworks";
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXCopyFilesBuildPhase section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
|
||||
8D1107320486CEB800E47090 /* love.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = love.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
A9255E021043195A00BA1496 /* Vorbis.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Vorbis.framework; path = /Library/Frameworks/Vorbis.framework; sourceTree = "<absolute>"; };
|
||||
A9255F421043240F00BA1496 /* IL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IL.framework; path = /Library/Frameworks/IL.framework; sourceTree = "<absolute>"; };
|
||||
A9255F51104324D700BA1496 /* Ogg.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Ogg.framework; path = /Library/Frameworks/Ogg.framework; sourceTree = "<absolute>"; };
|
||||
A93E6A3410420AC0007D418B /* love.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = love.cpp; path = ../../src/love.cpp; sourceTree = "<group>"; };
|
||||
A93E6E4710420B4A007D418B /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = "<absolute>"; };
|
||||
A93E6E4810420B4A007D418B /* FreeType.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = FreeType.framework; path = /Library/Frameworks/FreeType.framework; sourceTree = "<absolute>"; };
|
||||
A93E6E5310420B57007D418B /* Lua.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Lua.framework; path = /Library/Frameworks/Lua.framework; sourceTree = "<absolute>"; };
|
||||
A97E3842132A9EDE00198A2F /* love-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "love-Info.plist"; sourceTree = "<group>"; };
|
||||
A9D307E9106635C3004FEDF8 /* physfs.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = physfs.framework; path = /Library/Frameworks/physfs.framework; sourceTree = "<absolute>"; };
|
||||
A9DEC1BF1046EFA60049C70C /* Love.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = Love.icns; path = icons/Love.icns; sourceTree = "<group>"; };
|
||||
A9DEC1C01046EFA70049C70C /* LoveDocument.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = LoveDocument.icns; path = icons/LoveDocument.icns; sourceTree = "<group>"; };
|
||||
A9F16926109E7BAD00FC83D1 /* libmodplug.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = libmodplug.framework; path = /Library/Frameworks/libmodplug.framework; sourceTree = "<absolute>"; };
|
||||
A9F169A6109E824900FC83D1 /* mpg123.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = mpg123.framework; path = /Library/Frameworks/mpg123.framework; sourceTree = "<absolute>"; };
|
||||
FA08F69116C765A200F007B5 /* love.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = love.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
FA577A9316C7217800860150 /* love-framework.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; path = "love-framework.xcodeproj"; sourceTree = "<group>"; };
|
||||
FA9B4A0916E1579F00074F42 /* SDL2.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SDL2.framework; path = /Library/Frameworks/SDL2.framework; sourceTree = "<absolute>"; };
|
||||
FAAFF04616CB120000CCDE45 /* OpenAL-Soft.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = "OpenAL-Soft.framework"; path = "/Library/Frameworks/OpenAL-Soft.framework"; sourceTree = "<absolute>"; };
|
||||
FAC1A448196F5DC600125284 /* license.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = license.txt; path = ../../license.txt; sourceTree = "<group>"; };
|
||||
FAC8E8D316F3C468004DADF3 /* OSX.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = OSX.mm; sourceTree = "<group>"; };
|
||||
FAC8E8D616F3C46E004DADF3 /* OSX.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = OSX.h; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
8D11072E0486CEB800E47090 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
FA08F69616C766E000F007B5 /* love.framework in Frameworks */,
|
||||
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */,
|
||||
A93E6E5510420B57007D418B /* Lua.framework in Frameworks */,
|
||||
FA9B4A0A16E1579F00074F42 /* SDL2.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
1058C7A0FEA54F0111CA2CBB /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
FA9B4A0916E1579F00074F42 /* SDL2.framework */,
|
||||
1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */,
|
||||
A93E6E4810420B4A007D418B /* FreeType.framework */,
|
||||
A9255F421043240F00BA1496 /* IL.framework */,
|
||||
A9F16926109E7BAD00FC83D1 /* libmodplug.framework */,
|
||||
FA08F69116C765A200F007B5 /* love.framework */,
|
||||
A93E6E5310420B57007D418B /* Lua.framework */,
|
||||
A9F169A6109E824900FC83D1 /* mpg123.framework */,
|
||||
A9255F51104324D700BA1496 /* Ogg.framework */,
|
||||
FAAFF04616CB120000CCDE45 /* OpenAL-Soft.framework */,
|
||||
A93E6E4710420B4A007D418B /* OpenGL.framework */,
|
||||
A9D307E9106635C3004FEDF8 /* physfs.framework */,
|
||||
A9255E021043195A00BA1496 /* Vorbis.framework */,
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
19C28FACFE9D520D11CA2CBB /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8D1107320486CEB800E47090 /* love.app */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
29B97314FDCFA39411CA2CEA /* love */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
FA577A9D16C7262E00860150 /* Source */,
|
||||
1058C7A0FEA54F0111CA2CBB /* Frameworks */,
|
||||
29B97317FDCFA39411CA2CEA /* Resources */,
|
||||
19C28FACFE9D520D11CA2CBB /* Products */,
|
||||
FA577A9316C7217800860150 /* love-framework.xcodeproj */,
|
||||
);
|
||||
name = love;
|
||||
sourceTree = "<group>";
|
||||
usesTabs = 1;
|
||||
};
|
||||
29B97317FDCFA39411CA2CEA /* Resources */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
FAC1A448196F5DC600125284 /* license.txt */,
|
||||
A97E3842132A9EDE00198A2F /* love-Info.plist */,
|
||||
A9DEC1BF1046EFA60049C70C /* Love.icns */,
|
||||
A9DEC1C01046EFA70049C70C /* LoveDocument.icns */,
|
||||
);
|
||||
name = Resources;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
FA08F6A316C77A4300F007B5 /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
FA08F6A716C77A4300F007B5 /* love.framework */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
FA577A9D16C7262E00860150 /* Source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
A93E6A3410420AC0007D418B /* love.cpp */,
|
||||
FAC8E8D616F3C46E004DADF3 /* OSX.h */,
|
||||
FAC8E8D316F3C468004DADF3 /* OSX.mm */,
|
||||
);
|
||||
name = Source;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
8D1107260486CEB800E47090 /* love */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "love" */;
|
||||
buildPhases = (
|
||||
8D1107290486CEB800E47090 /* Resources */,
|
||||
8D11072C0486CEB800E47090 /* Sources */,
|
||||
A9255DDE1043185300BA1496 /* Copy Frameworks */,
|
||||
8D11072E0486CEB800E47090 /* Frameworks */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = love;
|
||||
productInstallPath = "$(HOME)/Applications";
|
||||
productName = love;
|
||||
productReference = 8D1107320486CEB800E47090 /* love.app */;
|
||||
productType = "com.apple.product-type.application";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
29B97313FDCFA39411CA2CEA /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0510;
|
||||
};
|
||||
buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "love" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
developmentRegion = English;
|
||||
hasScannedForEncodings = 1;
|
||||
knownRegions = (
|
||||
English,
|
||||
Japanese,
|
||||
French,
|
||||
German,
|
||||
);
|
||||
mainGroup = 29B97314FDCFA39411CA2CEA /* love */;
|
||||
projectDirPath = "";
|
||||
projectReferences = (
|
||||
{
|
||||
ProductGroup = FA08F6A316C77A4300F007B5 /* Products */;
|
||||
ProjectRef = FA577A9316C7217800860150 /* love-framework.xcodeproj */;
|
||||
},
|
||||
);
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
8D1107260486CEB800E47090 /* love */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXReferenceProxy section */
|
||||
FA08F6A716C77A4300F007B5 /* love.framework */ = {
|
||||
isa = PBXReferenceProxy;
|
||||
fileType = wrapper.framework;
|
||||
path = love.framework;
|
||||
remoteRef = FA08F6A616C77A4300F007B5 /* PBXContainerItemProxy */;
|
||||
sourceTree = BUILT_PRODUCTS_DIR;
|
||||
};
|
||||
/* End PBXReferenceProxy section */
|
||||
|
||||
/* Begin PBXResourcesBuildPhase section */
|
||||
8D1107290486CEB800E47090 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
FAC1A449196F5DC600125284 /* license.txt in Resources */,
|
||||
A9DEC1C11046EFA70049C70C /* Love.icns in Resources */,
|
||||
A9DEC1C21046EFA70049C70C /* LoveDocument.icns in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
8D11072C0486CEB800E47090 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
A93E6EED10420BA8007D418B /* love.cpp in Sources */,
|
||||
FAC8E8D416F3C468004DADF3 /* OSX.mm in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
C01FCF4B08A954540054247B /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
COMBINE_HIDPI_IMAGES = YES;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"\"$(SRCROOT)/build/Release\"",
|
||||
"\"$(SRCROOT)/build/Debug\"",
|
||||
);
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
INSTALL_PATH = /Applications;
|
||||
PRODUCT_NAME = love;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
C01FCF4C08A954540054247B /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
COMBINE_HIDPI_IMAGES = YES;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"\"$(SRCROOT)/build/Release\"",
|
||||
"\"$(SRCROOT)/build/Debug\"",
|
||||
);
|
||||
INSTALL_PATH = /Applications;
|
||||
PRODUCT_NAME = love;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
C01FCF4F08A954540054247B /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "c++0x";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
FRAMEWORK_SEARCH_PATHS = /Library/Frameworks;
|
||||
GCC_INCREASE_PRECOMPILED_HEADER_SHARING = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = LOVE_MACOSX_USE_FRAMEWORKS;
|
||||
GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = NO;
|
||||
GCC_WARN_ABOUT_MISSING_NEWLINE = NO;
|
||||
GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
|
||||
GCC_WARN_ABOUT_POINTER_SIGNEDNESS = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = NO;
|
||||
GCC_WARN_CHECK_SWITCH_STATEMENTS = YES;
|
||||
GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO;
|
||||
GCC_WARN_HIDDEN_VIRTUAL_FUNCTIONS = NO;
|
||||
GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = NO;
|
||||
GCC_WARN_MISSING_PARENTHESES = NO;
|
||||
GCC_WARN_NON_VIRTUAL_DESTRUCTOR = NO;
|
||||
GCC_WARN_PEDANTIC = NO;
|
||||
GCC_WARN_SHADOW = NO;
|
||||
GCC_WARN_SIGN_COMPARE = YES;
|
||||
GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"\"$(SRCROOT)/../../src\"",
|
||||
"\"$(SRCROOT)/../../src/libraries\"",
|
||||
"\"$(SRCROOT)/../../src/modules\"",
|
||||
/Library/Frameworks/Lua.framework/Headers,
|
||||
/Library/Frameworks/SDL2.framework/Headers,
|
||||
);
|
||||
INFOPLIST_FILE = "love-Info.plist";
|
||||
LD_RUNPATH_SEARCH_PATHS = "@loader_path/../Frameworks";
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.6;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
OTHER_LDFLAGS = "";
|
||||
"OTHER_LDFLAGS[arch=x86_64]" = (
|
||||
"-pagezero_size",
|
||||
10000,
|
||||
"-image_base",
|
||||
100000000,
|
||||
);
|
||||
PRODUCT_NAME = love;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wall",
|
||||
"-W",
|
||||
);
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
C01FCF5008A954540054247B /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "c++0x";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
DEPLOYMENT_POSTPROCESSING = NO;
|
||||
FRAMEWORK_SEARCH_PATHS = /Library/Frameworks;
|
||||
GCC_INPUT_FILETYPE = automatic;
|
||||
GCC_OPTIMIZATION_LEVEL = 3;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = LOVE_MACOSX_USE_FRAMEWORKS;
|
||||
GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = NO;
|
||||
GCC_WARN_ABOUT_MISSING_NEWLINE = NO;
|
||||
GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
|
||||
GCC_WARN_ABOUT_POINTER_SIGNEDNESS = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = NO;
|
||||
GCC_WARN_CHECK_SWITCH_STATEMENTS = YES;
|
||||
GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO;
|
||||
GCC_WARN_HIDDEN_VIRTUAL_FUNCTIONS = NO;
|
||||
GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = NO;
|
||||
GCC_WARN_MISSING_PARENTHESES = NO;
|
||||
GCC_WARN_NON_VIRTUAL_DESTRUCTOR = NO;
|
||||
GCC_WARN_PEDANTIC = NO;
|
||||
GCC_WARN_SHADOW = NO;
|
||||
GCC_WARN_SIGN_COMPARE = YES;
|
||||
GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO;
|
||||
GCC_WARN_UNUSED_PARAMETER = NO;
|
||||
GCC_WARN_UNUSED_VALUE = NO;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"\"$(SRCROOT)/../../src\"",
|
||||
"\"$(SRCROOT)/../../src/libraries\"",
|
||||
"\"$(SRCROOT)/../../src/modules\"",
|
||||
/Library/Frameworks/Lua.framework/Headers,
|
||||
/Library/Frameworks/SDL2.framework/Headers,
|
||||
);
|
||||
INFOPLIST_FILE = "love-Info.plist";
|
||||
LD_RUNPATH_SEARCH_PATHS = "@loader_path/../Frameworks";
|
||||
LLVM_LTO = YES;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.6;
|
||||
ONLY_ACTIVE_ARCH = NO;
|
||||
OTHER_LDFLAGS = "";
|
||||
"OTHER_LDFLAGS[arch=x86_64]" = (
|
||||
"-pagezero_size",
|
||||
10000,
|
||||
"-image_base",
|
||||
100000000,
|
||||
);
|
||||
PRODUCT_NAME = love;
|
||||
SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = YES;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wall",
|
||||
"-W",
|
||||
);
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
FA5326C618971A0900F7BBF4 /* Distribution */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "c++0x";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
DEPLOYMENT_POSTPROCESSING = NO;
|
||||
FRAMEWORK_SEARCH_PATHS = /Library/Frameworks;
|
||||
GCC_INPUT_FILETYPE = automatic;
|
||||
GCC_OPTIMIZATION_LEVEL = 3;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = LOVE_MACOSX_USE_FRAMEWORKS;
|
||||
GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = NO;
|
||||
GCC_WARN_ABOUT_MISSING_NEWLINE = NO;
|
||||
GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
|
||||
GCC_WARN_ABOUT_POINTER_SIGNEDNESS = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = NO;
|
||||
GCC_WARN_CHECK_SWITCH_STATEMENTS = YES;
|
||||
GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO;
|
||||
GCC_WARN_HIDDEN_VIRTUAL_FUNCTIONS = NO;
|
||||
GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = NO;
|
||||
GCC_WARN_MISSING_PARENTHESES = NO;
|
||||
GCC_WARN_NON_VIRTUAL_DESTRUCTOR = NO;
|
||||
GCC_WARN_PEDANTIC = NO;
|
||||
GCC_WARN_SHADOW = NO;
|
||||
GCC_WARN_SIGN_COMPARE = YES;
|
||||
GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO;
|
||||
GCC_WARN_UNUSED_PARAMETER = NO;
|
||||
GCC_WARN_UNUSED_VALUE = NO;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"\"$(SRCROOT)/../../src\"",
|
||||
"\"$(SRCROOT)/../../src/libraries\"",
|
||||
"\"$(SRCROOT)/../../src/modules\"",
|
||||
/Library/Frameworks/Lua.framework/Headers,
|
||||
/Library/Frameworks/SDL2.framework/Headers,
|
||||
);
|
||||
INFOPLIST_FILE = "love-Info.plist";
|
||||
LD_RUNPATH_SEARCH_PATHS = "@loader_path/../Frameworks";
|
||||
LLVM_LTO = YES;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.6;
|
||||
ONLY_ACTIVE_ARCH = NO;
|
||||
OTHER_LDFLAGS = "";
|
||||
"OTHER_LDFLAGS[arch=x86_64]" = (
|
||||
"-pagezero_size",
|
||||
10000,
|
||||
"-image_base",
|
||||
100000000,
|
||||
);
|
||||
PRODUCT_NAME = love;
|
||||
SCAN_ALL_SOURCE_FILES_FOR_INCLUDES = YES;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wall",
|
||||
"-W",
|
||||
);
|
||||
};
|
||||
name = Distribution;
|
||||
};
|
||||
FA5326C718971A0900F7BBF4 /* Distribution */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
COMBINE_HIDPI_IMAGES = YES;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"\"$(SRCROOT)/build/Release\"",
|
||||
"\"$(SRCROOT)/build/Debug\"",
|
||||
);
|
||||
INSTALL_PATH = /Applications;
|
||||
PRODUCT_NAME = love;
|
||||
};
|
||||
name = Distribution;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "love" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
C01FCF4B08A954540054247B /* Debug */,
|
||||
C01FCF4C08A954540054247B /* Release */,
|
||||
FA5326C718971A0900F7BBF4 /* Distribution */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
C01FCF4E08A954540054247B /* Build configuration list for PBXProject "love" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
C01FCF4F08A954540054247B /* Debug */,
|
||||
C01FCF5008A954540054247B /* Release */,
|
||||
FA5326C618971A0900F7BBF4 /* Distribution */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = 29B97313FDCFA39411CA2CEA /* Project object */;
|
||||
}
|
||||
@@ -1,847 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug Dynamic|Win32">
|
||||
<Configuration>Debug Dynamic</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug Dynamic|x64">
|
||||
<Configuration>Debug Dynamic</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release Dynamic|Win32">
|
||||
<Configuration>Release Dynamic</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release Dynamic|x64">
|
||||
<Configuration>Release Dynamic</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release Static|Win32">
|
||||
<Configuration>Release Static</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release Static|x64">
|
||||
<Configuration>Release Static</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{A3FCC735-3E18-4D6B-9DA9-01D9E910B7F8}</ProjectGuid>
|
||||
<RootNamespace>liblove</RootNamespace>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug Dynamic|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug Dynamic|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Static|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Static|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Dynamic|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Dynamic|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>Windows7.1SDK</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug Dynamic|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug Dynamic|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release Static|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release Static|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release Dynamic|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release Dynamic|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<OutDir>$(SolutionDir)\$(PlatformShortName)\$(Configuration)</OutDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<OutDir>$(SolutionDir)\$(PlatformShortName)\$(Configuration)</OutDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<IntDir>$(ProjectName)\$(Configuration)\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<IntDir>$(ProjectName)\$(Configuration)\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug Dynamic|Win32'">
|
||||
<OutDir>$(SolutionDir)\bin\$(PlatformShortName)\Debug\MD\</OutDir>
|
||||
<IntDir>$(ProjectName)\$(PlatformShortName)\Debug\</IntDir>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
<TargetName>love</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug Dynamic|x64'">
|
||||
<OutDir>$(SolutionDir)\bin\$(PlatformShortName)\Debug\MD\</OutDir>
|
||||
<IntDir>$(ProjectName)\$(PlatformShortName)\Debug\</IntDir>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
<TargetName>love</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Static|Win32'">
|
||||
<OutDir>$(SolutionDir)\bin\$(PlatformShortName)\Release\MT\</OutDir>
|
||||
<IntDir>$(ProjectName)\$(PlatformShortName)\Release\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Static|x64'">
|
||||
<OutDir>$(SolutionDir)\bin\$(PlatformShortName)\Release\MT\</OutDir>
|
||||
<IntDir>$(ProjectName)\$(PlatformShortName)\Release\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Dynamic|Win32'">
|
||||
<OutDir>$(SolutionDir)\bin\$(PlatformShortName)\Release\MD\</OutDir>
|
||||
<IntDir>$(ProjectName)\$(PlatformShortName)\Release\</IntDir>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
<TargetName>love</TargetName>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Dynamic|x64'">
|
||||
<OutDir>$(SolutionDir)\bin\$(PlatformShortName)\Release\MD\</OutDir>
|
||||
<IntDir>$(ProjectName)\$(PlatformShortName)\Release\</IntDir>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
<TargetName>love</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug Dynamic|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>include;include\SDL;include\AL;..\..\src;..\..\src\libraries;..\..\src\modules;..\..\src\libraries\enet\libenet\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<PreprocessorDefinitions>_DEBUG;DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>false</MinimalRebuild>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<ObjectFileName>$(IntDir)obj\obj\obj\%(RelativeDir)</ObjectFileName>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<AdditionalDependencies>msvcrtd.lib;msvcprtd.lib;kernel32.lib;user32.lib;shell32.lib;uuid.lib;advapi32.lib;ws2_32.lib;winmm.lib;opengl32.lib;oldnames.lib;DevIL.lib;freetype.lib;libmodplug.lib;libogg.lib;libvorbis.lib;libvorbisfile.lib;lua51.lib;mpg123.lib;physfs.lib;OpenAL.lib;zlib.lib;SDL2.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
|
||||
<AdditionalLibraryDirectories>lib\$(PlatformShortName)\Debug\MD\</AdditionalLibraryDirectories>
|
||||
<ProgramDatabaseFile>$(TargetDir)lib$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<ProfileGuidedDatabase>$(TargetDir)lib$(TargetName).pgd</ProfileGuidedDatabase>
|
||||
</Link>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>LOVE_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug Dynamic|x64'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>include;include\SDL;include\AL;..\..\src;..\..\src\libraries;..\..\src\modules;..\..\src\libraries\enet\libenet\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<PreprocessorDefinitions>_DEBUG;DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>false</MinimalRebuild>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<ObjectFileName>$(IntDir)obj\obj\obj\%(RelativeDir)</ObjectFileName>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<AdditionalDependencies>msvcrtd.lib;msvcprtd.lib;kernel32.lib;user32.lib;shell32.lib;uuid.lib;advapi32.lib;ws2_32.lib;winmm.lib;opengl32.lib;oldnames.lib;DevIL.lib;freetype.lib;libmodplug.lib;libogg.lib;libvorbis.lib;libvorbisfile.lib;lua51.lib;mpg123.lib;physfs.lib;OpenAL.lib;zlib.lib;SDL2.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
|
||||
<AdditionalLibraryDirectories>lib\$(PlatformShortName)\Debug\MD\</AdditionalLibraryDirectories>
|
||||
<ProgramDatabaseFile>$(TargetDir)lib$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<ProfileGuidedDatabase>$(TargetDir)lib$(TargetName).pgd</ProfileGuidedDatabase>
|
||||
</Link>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>LOVE_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release Static|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<AdditionalIncludeDirectories>include;include\SDL;include\AL;..\..\src;..\..\src\libraries;..\..\src\modules;..\..\src\libraries\enet\libenet\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<ObjectFileName>$(IntDir)obj\obj\obj\%(RelativeDir)</ObjectFileName>
|
||||
<StringPooling>true</StringPooling>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
</Link>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>LOVE_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
<Lib>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<AdditionalDependencies>
|
||||
</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>
|
||||
</AdditionalLibraryDirectories>
|
||||
<IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Lib>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release Static|x64'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<AdditionalIncludeDirectories>include;include\SDL;include\AL;..\..\src;..\..\src\libraries;..\..\src\modules;..\..\src\libraries\enet\libenet\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<ObjectFileName>$(IntDir)obj\obj\obj\%(RelativeDir)</ObjectFileName>
|
||||
<StringPooling>true</StringPooling>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
</Link>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>LOVE_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
<Lib>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
<AdditionalDependencies>
|
||||
</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>
|
||||
</AdditionalLibraryDirectories>
|
||||
<IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Lib>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release Dynamic|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<AdditionalIncludeDirectories>include;include\SDL;include\AL;..\..\src;..\..\src\libraries;..\..\src\modules;..\..\src\libraries\enet\libenet\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<ObjectFileName>$(IntDir)obj\obj\obj\%(RelativeDir)</ObjectFileName>
|
||||
<StringPooling>true</StringPooling>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<AdditionalDependencies>msvcrt.lib;msvcprt.lib;kernel32.lib;user32.lib;shell32.lib;uuid.lib;advapi32.lib;ws2_32.lib;winmm.lib;opengl32.lib;oldnames.lib;DevIL.lib;freetype.lib;libmodplug.lib;libogg.lib;libvorbis.lib;libvorbisfile.lib;lua51.lib;mpg123.lib;physfs.lib;OpenAL.lib;zlib.lib;SDL2.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
|
||||
<AdditionalLibraryDirectories>lib\$(PlatformShortName)\Release\MD\</AdditionalLibraryDirectories>
|
||||
<ProgramDatabaseFile>$(TargetDir)lib$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<ProfileGuidedDatabase>$(TargetDir)lib$(TargetName).pgd</ProfileGuidedDatabase>
|
||||
</Link>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>LOVE_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release Dynamic|x64'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<AdditionalIncludeDirectories>include;include\SDL;include\AL;..\..\src;..\..\src\libraries;..\..\src\modules;..\..\src\libraries\enet\libenet\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<ObjectFileName>$(IntDir)obj\obj\obj\%(RelativeDir)</ObjectFileName>
|
||||
<StringPooling>true</StringPooling>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<AdditionalDependencies>msvcrt.lib;msvcprt.lib;kernel32.lib;user32.lib;shell32.lib;uuid.lib;advapi32.lib;ws2_32.lib;winmm.lib;opengl32.lib;oldnames.lib;DevIL.lib;freetype.lib;libmodplug.lib;libogg.lib;libvorbis.lib;libvorbisfile.lib;lua51.lib;mpg123.lib;physfs.lib;OpenAL.lib;zlib.lib;SDL2.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
|
||||
<AdditionalLibraryDirectories>lib\$(PlatformShortName)\Release\MD\</AdditionalLibraryDirectories>
|
||||
<ProgramDatabaseFile>$(TargetDir)lib$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<ProfileGuidedDatabase>$(TargetDir)lib$(TargetName).pgd</ProfileGuidedDatabase>
|
||||
</Link>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>LOVE_LIB;_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\src\common\b64.cpp" />
|
||||
<ClCompile Include="..\..\src\common\delay.cpp" />
|
||||
<ClCompile Include="..\..\src\common\Exception.cpp" />
|
||||
<ClCompile Include="..\..\src\common\Matrix.cpp" />
|
||||
<ClCompile Include="..\..\src\common\Memoizer.cpp" />
|
||||
<ClCompile Include="..\..\src\common\Module.cpp" />
|
||||
<ClCompile Include="..\..\src\common\Object.cpp" />
|
||||
<ClCompile Include="..\..\src\common\Reference.cpp" />
|
||||
<ClCompile Include="..\..\src\common\runtime.cpp" />
|
||||
<ClCompile Include="..\..\src\common\utf8.cpp" />
|
||||
<ClCompile Include="..\..\src\common\Variant.cpp" />
|
||||
<ClCompile Include="..\..\src\common\Vector.cpp" />
|
||||
<ClCompile Include="..\..\src\common\wrap_Data.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Collision\b2BroadPhase.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Collision\b2CollideCircle.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Collision\b2CollideEdge.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Collision\b2CollidePolygon.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Collision\b2Collision.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Collision\b2Distance.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Collision\b2DynamicTree.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Collision\b2TimeOfImpact.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Collision\Shapes\b2ChainShape.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Collision\Shapes\b2CircleShape.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Collision\Shapes\b2EdgeShape.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Collision\Shapes\b2PolygonShape.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Common\b2BlockAllocator.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Common\b2Draw.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Common\b2Math.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Common\b2Settings.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Common\b2StackAllocator.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Common\b2Timer.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\b2Body.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\b2ContactManager.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\b2Fixture.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\b2Island.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\b2World.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\b2WorldCallbacks.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Contacts\b2ChainAndCircleContact.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Contacts\b2ChainAndPolygonContact.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Contacts\b2CircleContact.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Contacts\b2Contact.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Contacts\b2ContactSolver.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Contacts\b2EdgeAndCircleContact.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Contacts\b2EdgeAndPolygonContact.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Contacts\b2PolygonAndCircleContact.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Contacts\b2PolygonContact.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2DistanceJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2FrictionJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2GearJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2Joint.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2MouseJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2PrismaticJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2PulleyJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2RevoluteJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2RopeJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2WeldJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2WheelJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Box2D\Rope\b2Rope.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\ddsparse\ddsparse.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\enet\enet.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\enet\libenet\callbacks.c" />
|
||||
<ClCompile Include="..\..\src\libraries\enet\libenet\compress.c" />
|
||||
<ClCompile Include="..\..\src\libraries\enet\libenet\host.c" />
|
||||
<ClCompile Include="..\..\src\libraries\enet\libenet\list.c" />
|
||||
<ClCompile Include="..\..\src\libraries\enet\libenet\packet.c" />
|
||||
<ClCompile Include="..\..\src\libraries\enet\libenet\peer.c" />
|
||||
<ClCompile Include="..\..\src\libraries\enet\libenet\protocol.c" />
|
||||
<ClCompile Include="..\..\src\libraries\enet\libenet\win32.c" />
|
||||
<ClCompile Include="..\..\src\libraries\luasocket\libluasocket\auxiliar.c" />
|
||||
<ClCompile Include="..\..\src\libraries\luasocket\libluasocket\buffer.c" />
|
||||
<ClCompile Include="..\..\src\libraries\luasocket\libluasocket\except.c" />
|
||||
<ClCompile Include="..\..\src\libraries\luasocket\libluasocket\inet.c" />
|
||||
<ClCompile Include="..\..\src\libraries\luasocket\libluasocket\io.c" />
|
||||
<ClCompile Include="..\..\src\libraries\luasocket\libluasocket\luasocket.c" />
|
||||
<ClCompile Include="..\..\src\libraries\luasocket\libluasocket\mime.c" />
|
||||
<ClCompile Include="..\..\src\libraries\luasocket\libluasocket\options.c" />
|
||||
<ClCompile Include="..\..\src\libraries\luasocket\libluasocket\select.c" />
|
||||
<ClCompile Include="..\..\src\libraries\luasocket\libluasocket\tcp.c" />
|
||||
<ClCompile Include="..\..\src\libraries\luasocket\libluasocket\timeout.c" />
|
||||
<ClCompile Include="..\..\src\libraries\luasocket\libluasocket\udp.c" />
|
||||
<ClCompile Include="..\..\src\libraries\luasocket\libluasocket\wsocket.c" />
|
||||
<ClCompile Include="..\..\src\libraries\luasocket\luasocket.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\noise1234\simplexnoise1234.cpp" />
|
||||
<ClCompile Include="..\..\src\libraries\Wuff\wuff.c" />
|
||||
<ClCompile Include="..\..\src\libraries\Wuff\wuff_convert.c" />
|
||||
<ClCompile Include="..\..\src\libraries\Wuff\wuff_internal.c" />
|
||||
<ClCompile Include="..\..\src\libraries\Wuff\wuff_memory.c" />
|
||||
<ClCompile Include="..\..\src\modules\audio\Audio.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\audio\null\Audio.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\audio\null\Source.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\audio\openal\Audio.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\audio\openal\Pool.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\audio\openal\Source.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\audio\Source.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\audio\wrap_Audio.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\audio\wrap_Source.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\event\Event.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\event\sdl\Event.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\event\sdl\wrap_Event.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\filesystem\File.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\filesystem\FileData.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\filesystem\physfs\File.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\filesystem\physfs\Filesystem.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\filesystem\physfs\wrap_File.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\filesystem\physfs\wrap_FileData.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\filesystem\physfs\wrap_Filesystem.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\font\freetype\Font.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\font\freetype\TrueTypeRasterizer.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\font\freetype\wrap_Font.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\font\GlyphData.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\font\ImageRasterizer.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\font\Rasterizer.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\font\wrap_GlyphData.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\font\wrap_Rasterizer.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\Drawable.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\Graphics.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\Image.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\Canvas.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\Font.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\GLee.c" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\Graphics.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\Image.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\Mesh.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\OpenGL.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\ParticleSystem.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\Polyline.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\Shader.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\SpriteBatch.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\VertexBuffer.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\wrap_Canvas.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\wrap_Font.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\wrap_Graphics.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\wrap_Image.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\wrap_Mesh.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\wrap_ParticleSystem.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\wrap_Quad.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\wrap_Shader.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\opengl\wrap_SpriteBatch.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\Quad.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\graphics\Volatile.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\image\CompressedData.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\image\ImageData.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\image\magpie\CompressedData.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\image\magpie\ddsHandler.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\image\magpie\DevilHandler.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\image\magpie\Image.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\image\magpie\ImageData.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\image\wrap_CompressedData.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\image\wrap_Image.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\image\wrap_ImageData.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\joystick\Joystick.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\joystick\sdl\Joystick.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\joystick\sdl\JoystickModule.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\joystick\sdl\wrap_Joystick.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\joystick\sdl\wrap_JoystickModule.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\keyboard\Keyboard.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\keyboard\sdl\Keyboard.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\keyboard\wrap_Keyboard.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\love\love.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\math\BezierCurve.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\math\MathModule.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\math\RandomGenerator.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\math\wrap_BezierCurve.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\math\wrap_Math.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\math\wrap_RandomGenerator.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\mouse\Cursor.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\mouse\Mouse.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\mouse\sdl\Cursor.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\mouse\sdl\Mouse.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\mouse\wrap_Cursor.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\mouse\wrap_Mouse.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\Body.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\Body.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\ChainShape.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\CircleShape.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\Contact.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\DistanceJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\EdgeShape.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\Fixture.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\FrictionJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\GearJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\Joint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\MouseJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\Physics.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\PolygonShape.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\PrismaticJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\PulleyJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\RevoluteJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\RopeJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\Shape.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\WeldJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\WheelJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\World.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_Body.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_ChainShape.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_CircleShape.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_Contact.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_DistanceJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_EdgeShape.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_Fixture.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_FrictionJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_GearJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_Joint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_MouseJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_Physics.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_PolygonShape.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_PrismaticJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_PulleyJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_RevoluteJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_RopeJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_Shape.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_WeldJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_WheelJoint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\box2d\wrap_World.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\Joint.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\physics\Shape.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\sound\lullaby\Decoder.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\sound\lullaby\FLACDecoder.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\sound\lullaby\ModPlugDecoder.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\sound\lullaby\Mpg123Decoder.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\sound\lullaby\Sound.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\sound\lullaby\VorbisDecoder.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\sound\lullaby\WaveDecoder.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\sound\Sound.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\sound\SoundData.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\sound\wrap_Decoder.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\sound\wrap_Sound.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\sound\wrap_SoundData.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\system\sdl\System.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\system\System.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\system\wrap_System.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\thread\Channel.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\thread\LuaThread.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\thread\sdl\Thread.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\thread\sdl\threads.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\thread\ThreadModule.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\thread\threads.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\thread\wrap_Channel.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\thread\wrap_LuaThread.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\thread\wrap_ThreadModule.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\timer\sdl\Timer.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\timer\wrap_Timer.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\window\sdl\Window.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\window\Window.cpp" />
|
||||
<ClCompile Include="..\..\src\modules\window\wrap_Window.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="..\..\src\scripts\auto.lua" />
|
||||
<None Include="..\..\src\scripts\boot.lua" />
|
||||
<None Include="..\..\src\scripts\graphics.lua" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\..\src\common\b64.h" />
|
||||
<ClInclude Include="..\..\src\common\config.h" />
|
||||
<ClInclude Include="..\..\src\common\Data.h" />
|
||||
<ClInclude Include="..\..\src\common\delay.h" />
|
||||
<ClInclude Include="..\..\src\common\EnumMap.h" />
|
||||
<ClInclude Include="..\..\src\common\Exception.h" />
|
||||
<ClInclude Include="..\..\src\common\int.h" />
|
||||
<ClInclude Include="..\..\src\common\math.h" />
|
||||
<ClInclude Include="..\..\src\common\Matrix.h" />
|
||||
<ClInclude Include="..\..\src\common\Memoizer.h" />
|
||||
<ClInclude Include="..\..\src\common\Module.h" />
|
||||
<ClInclude Include="..\..\src\common\Object.h" />
|
||||
<ClInclude Include="..\..\src\common\Reference.h" />
|
||||
<ClInclude Include="..\..\src\common\runtime.h" />
|
||||
<ClInclude Include="..\..\src\common\StringMap.h" />
|
||||
<ClInclude Include="..\..\src\common\types.h" />
|
||||
<ClInclude Include="..\..\src\common\utf8.h" />
|
||||
<ClInclude Include="..\..\src\common\Variant.h" />
|
||||
<ClInclude Include="..\..\src\common\Vector.h" />
|
||||
<ClInclude Include="..\..\src\common\version.h" />
|
||||
<ClInclude Include="..\..\src\common\wrap_Data.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Box2D.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Collision\b2BroadPhase.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Collision\b2Collision.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Collision\b2Distance.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Collision\b2DynamicTree.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Collision\b2TimeOfImpact.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Collision\Shapes\b2ChainShape.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Collision\Shapes\b2CircleShape.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Collision\Shapes\b2EdgeShape.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Collision\Shapes\b2PolygonShape.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Collision\Shapes\b2Shape.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Common\b2BlockAllocator.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Common\b2Draw.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Common\b2GrowableStack.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Common\b2Math.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Common\b2Settings.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Common\b2StackAllocator.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Common\b2Timer.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\b2Body.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\b2ContactManager.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\b2Fixture.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\b2Island.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\b2TimeStep.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\b2World.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\b2WorldCallbacks.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Contacts\b2ChainAndCircleContact.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Contacts\b2ChainAndPolygonContact.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Contacts\b2CircleContact.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Contacts\b2Contact.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Contacts\b2ContactSolver.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Contacts\b2EdgeAndCircleContact.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Contacts\b2EdgeAndPolygonContact.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Contacts\b2PolygonAndCircleContact.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Contacts\b2PolygonContact.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2DistanceJoint.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2FrictionJoint.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2GearJoint.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2Joint.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2MouseJoint.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2PrismaticJoint.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2PulleyJoint.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2RevoluteJoint.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2RopeJoint.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2WeldJoint.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Dynamics\Joints\b2WheelJoint.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Box2D\Rope\b2Rope.h" />
|
||||
<ClInclude Include="..\..\src\libraries\ddsparse\ddsinfo.h" />
|
||||
<ClInclude Include="..\..\src\libraries\ddsparse\ddsparse.h" />
|
||||
<ClInclude Include="..\..\src\libraries\enet\libenet\include\enet\callbacks.h" />
|
||||
<ClInclude Include="..\..\src\libraries\enet\libenet\include\enet\enet.h" />
|
||||
<ClInclude Include="..\..\src\libraries\enet\libenet\include\enet\list.h" />
|
||||
<ClInclude Include="..\..\src\libraries\enet\libenet\include\enet\protocol.h" />
|
||||
<ClInclude Include="..\..\src\libraries\enet\libenet\include\enet\time.h" />
|
||||
<ClInclude Include="..\..\src\libraries\enet\libenet\include\enet\types.h" />
|
||||
<ClInclude Include="..\..\src\libraries\enet\libenet\include\enet\unix.h" />
|
||||
<ClInclude Include="..\..\src\libraries\enet\libenet\include\enet\utility.h" />
|
||||
<ClInclude Include="..\..\src\libraries\enet\libenet\include\enet\win32.h" />
|
||||
<ClInclude Include="..\..\src\libraries\enet\lua-enet.h" />
|
||||
<ClInclude Include="..\..\src\libraries\luasocket\libluasocket\auxiliar.h" />
|
||||
<ClInclude Include="..\..\src\libraries\luasocket\libluasocket\buffer.h" />
|
||||
<ClInclude Include="..\..\src\libraries\luasocket\libluasocket\except.h" />
|
||||
<ClInclude Include="..\..\src\libraries\luasocket\libluasocket\inet.h" />
|
||||
<ClInclude Include="..\..\src\libraries\luasocket\libluasocket\io.h" />
|
||||
<ClInclude Include="..\..\src\libraries\luasocket\libluasocket\luasocket.h" />
|
||||
<ClInclude Include="..\..\src\libraries\luasocket\libluasocket\mime.h" />
|
||||
<ClInclude Include="..\..\src\libraries\luasocket\libluasocket\options.h" />
|
||||
<ClInclude Include="..\..\src\libraries\luasocket\libluasocket\select.h" />
|
||||
<ClInclude Include="..\..\src\libraries\luasocket\libluasocket\socket.h" />
|
||||
<ClInclude Include="..\..\src\libraries\luasocket\libluasocket\tcp.h" />
|
||||
<ClInclude Include="..\..\src\libraries\luasocket\libluasocket\timeout.h" />
|
||||
<ClInclude Include="..\..\src\libraries\luasocket\libluasocket\tp.lua.h" />
|
||||
<ClInclude Include="..\..\src\libraries\luasocket\libluasocket\udp.h" />
|
||||
<ClInclude Include="..\..\src\libraries\luasocket\libluasocket\url.lua.h" />
|
||||
<ClInclude Include="..\..\src\libraries\luasocket\libluasocket\wsocket.h" />
|
||||
<ClInclude Include="..\..\src\libraries\luasocket\luasocket.h" />
|
||||
<ClInclude Include="..\..\src\libraries\noise1234\simplexnoise1234.h" />
|
||||
<ClInclude Include="..\..\src\libraries\utf8\utf8.h" />
|
||||
<ClInclude Include="..\..\src\libraries\utf8\utf8\checked.h" />
|
||||
<ClInclude Include="..\..\src\libraries\utf8\utf8\core.h" />
|
||||
<ClInclude Include="..\..\src\libraries\utf8\utf8\unchecked.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Wuff\wuff.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Wuff\wuff_config.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Wuff\wuff_convert.h" />
|
||||
<ClInclude Include="..\..\src\libraries\Wuff\wuff_internal.h" />
|
||||
<ClInclude Include="..\..\src\modules\audio\Audio.h" />
|
||||
<ClInclude Include="..\..\src\modules\audio\null\Audio.h" />
|
||||
<ClInclude Include="..\..\src\modules\audio\null\Source.h" />
|
||||
<ClInclude Include="..\..\src\modules\audio\openal\Audio.h" />
|
||||
<ClInclude Include="..\..\src\modules\audio\openal\Pool.h" />
|
||||
<ClInclude Include="..\..\src\modules\audio\openal\Source.h" />
|
||||
<ClInclude Include="..\..\src\modules\audio\Source.h" />
|
||||
<ClInclude Include="..\..\src\modules\audio\wrap_Audio.h" />
|
||||
<ClInclude Include="..\..\src\modules\audio\wrap_Source.h" />
|
||||
<ClInclude Include="..\..\src\modules\event\Event.h" />
|
||||
<ClInclude Include="..\..\src\modules\event\sdl\Event.h" />
|
||||
<ClInclude Include="..\..\src\modules\event\sdl\wrap_Event.h" />
|
||||
<ClInclude Include="..\..\src\modules\filesystem\File.h" />
|
||||
<ClInclude Include="..\..\src\modules\filesystem\FileData.h" />
|
||||
<ClInclude Include="..\..\src\modules\filesystem\physfs\File.h" />
|
||||
<ClInclude Include="..\..\src\modules\filesystem\physfs\Filesystem.h" />
|
||||
<ClInclude Include="..\..\src\modules\filesystem\physfs\wrap_File.h" />
|
||||
<ClInclude Include="..\..\src\modules\filesystem\physfs\wrap_FileData.h" />
|
||||
<ClInclude Include="..\..\src\modules\filesystem\physfs\wrap_Filesystem.h" />
|
||||
<ClInclude Include="..\..\src\modules\font\Font.h" />
|
||||
<ClInclude Include="..\..\src\modules\font\freetype\Font.h" />
|
||||
<ClInclude Include="..\..\src\modules\font\freetype\TrueTypeRasterizer.h" />
|
||||
<ClInclude Include="..\..\src\modules\font\freetype\wrap_Font.h" />
|
||||
<ClInclude Include="..\..\src\modules\font\GlyphData.h" />
|
||||
<ClInclude Include="..\..\src\modules\font\ImageRasterizer.h" />
|
||||
<ClInclude Include="..\..\src\modules\font\Rasterizer.h" />
|
||||
<ClInclude Include="..\..\src\modules\font\wrap_GlyphData.h" />
|
||||
<ClInclude Include="..\..\src\modules\font\wrap_Rasterizer.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\Color.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\Drawable.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\DrawQable.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\Graphics.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\Image.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\Canvas.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\Font.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\GLee.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\Graphics.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\Image.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\Mesh.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\OpenGL.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\ParticleSystem.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\Polyline.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\Shader.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\SpriteBatch.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\VertexBuffer.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\wrap_Canvas.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\wrap_Font.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\wrap_Graphics.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\wrap_Image.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\wrap_Mesh.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\wrap_ParticleSystem.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\wrap_Quad.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\wrap_Shader.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\opengl\wrap_SpriteBatch.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\Quad.h" />
|
||||
<ClInclude Include="..\..\src\modules\graphics\Volatile.h" />
|
||||
<ClInclude Include="..\..\src\modules\image\CompressedData.h" />
|
||||
<ClInclude Include="..\..\src\modules\image\Image.h" />
|
||||
<ClInclude Include="..\..\src\modules\image\ImageData.h" />
|
||||
<ClInclude Include="..\..\src\modules\image\magpie\CompressedData.h" />
|
||||
<ClInclude Include="..\..\src\modules\image\magpie\ddsHandler.h" />
|
||||
<ClInclude Include="..\..\src\modules\image\magpie\DevilHandler.h" />
|
||||
<ClInclude Include="..\..\src\modules\image\magpie\FormatHandler.h" />
|
||||
<ClInclude Include="..\..\src\modules\image\magpie\Image.h" />
|
||||
<ClInclude Include="..\..\src\modules\image\magpie\ImageData.h" />
|
||||
<ClInclude Include="..\..\src\modules\image\wrap_CompressedData.h" />
|
||||
<ClInclude Include="..\..\src\modules\image\wrap_Image.h" />
|
||||
<ClInclude Include="..\..\src\modules\image\wrap_ImageData.h" />
|
||||
<ClInclude Include="..\..\src\modules\joystick\Joystick.h" />
|
||||
<ClInclude Include="..\..\src\modules\joystick\JoystickModule.h" />
|
||||
<ClInclude Include="..\..\src\modules\joystick\sdl\Joystick.h" />
|
||||
<ClInclude Include="..\..\src\modules\joystick\sdl\JoystickModule.h" />
|
||||
<ClInclude Include="..\..\src\modules\joystick\sdl\wrap_Joystick.h" />
|
||||
<ClInclude Include="..\..\src\modules\joystick\sdl\wrap_JoystickModule.h" />
|
||||
<ClInclude Include="..\..\src\modules\keyboard\Keyboard.h" />
|
||||
<ClInclude Include="..\..\src\modules\keyboard\sdl\Keyboard.h" />
|
||||
<ClInclude Include="..\..\src\modules\keyboard\wrap_Keyboard.h" />
|
||||
<ClInclude Include="..\..\src\modules\love\love.h" />
|
||||
<ClInclude Include="..\..\src\modules\math\BezierCurve.h" />
|
||||
<ClInclude Include="..\..\src\modules\math\MathModule.h" />
|
||||
<ClInclude Include="..\..\src\modules\math\RandomGenerator.h" />
|
||||
<ClInclude Include="..\..\src\modules\math\wrap_BezierCurve.h" />
|
||||
<ClInclude Include="..\..\src\modules\math\wrap_Math.h" />
|
||||
<ClInclude Include="..\..\src\modules\math\wrap_RandomGenerator.h" />
|
||||
<ClInclude Include="..\..\src\modules\mouse\Cursor.h" />
|
||||
<ClInclude Include="..\..\src\modules\mouse\Mouse.h" />
|
||||
<ClInclude Include="..\..\src\modules\mouse\sdl\Cursor.h" />
|
||||
<ClInclude Include="..\..\src\modules\mouse\sdl\Mouse.h" />
|
||||
<ClInclude Include="..\..\src\modules\mouse\wrap_Cursor.h" />
|
||||
<ClInclude Include="..\..\src\modules\mouse\wrap_Mouse.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\Body.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\Body.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\ChainShape.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\CircleShape.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\Contact.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\DistanceJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\EdgeShape.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\Fixture.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\FrictionJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\GearJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\Joint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\MouseJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\Physics.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\PolygonShape.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\PrismaticJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\PulleyJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\RevoluteJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\RopeJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\Shape.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\WeldJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\WheelJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\World.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_Body.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_ChainShape.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_CircleShape.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_Contact.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_DistanceJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_EdgeShape.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_Fixture.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_FrictionJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_GearJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_Joint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_MouseJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_Physics.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_PolygonShape.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_PrismaticJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_PulleyJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_RevoluteJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_RopeJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_Shape.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_WeldJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_WheelJoint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\box2d\wrap_World.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\Joint.h" />
|
||||
<ClInclude Include="..\..\src\modules\physics\Shape.h" />
|
||||
<ClInclude Include="..\..\src\modules\sound\Decoder.h" />
|
||||
<ClInclude Include="..\..\src\modules\sound\lullaby\Decoder.h" />
|
||||
<ClInclude Include="..\..\src\modules\sound\lullaby\FLACDecoder.h" />
|
||||
<ClInclude Include="..\..\src\modules\sound\lullaby\ModPlugDecoder.h" />
|
||||
<ClInclude Include="..\..\src\modules\sound\lullaby\Mpg123Decoder.h" />
|
||||
<ClInclude Include="..\..\src\modules\sound\lullaby\Sound.h" />
|
||||
<ClInclude Include="..\..\src\modules\sound\lullaby\VorbisDecoder.h" />
|
||||
<ClInclude Include="..\..\src\modules\sound\lullaby\WaveDecoder.h" />
|
||||
<ClInclude Include="..\..\src\modules\sound\Sound.h" />
|
||||
<ClInclude Include="..\..\src\modules\sound\SoundData.h" />
|
||||
<ClInclude Include="..\..\src\modules\sound\wrap_Decoder.h" />
|
||||
<ClInclude Include="..\..\src\modules\sound\wrap_Sound.h" />
|
||||
<ClInclude Include="..\..\src\modules\sound\wrap_SoundData.h" />
|
||||
<ClInclude Include="..\..\src\modules\system\sdl\System.h" />
|
||||
<ClInclude Include="..\..\src\modules\system\System.h" />
|
||||
<ClInclude Include="..\..\src\modules\system\wrap_System.h" />
|
||||
<ClInclude Include="..\..\src\modules\thread\Channel.h" />
|
||||
<ClInclude Include="..\..\src\modules\thread\LuaThread.h" />
|
||||
<ClInclude Include="..\..\src\modules\thread\sdl\Thread.h" />
|
||||
<ClInclude Include="..\..\src\modules\thread\sdl\threads.h" />
|
||||
<ClInclude Include="..\..\src\modules\thread\Thread.h" />
|
||||
<ClInclude Include="..\..\src\modules\thread\ThreadModule.h" />
|
||||
<ClInclude Include="..\..\src\modules\thread\threads.h" />
|
||||
<ClInclude Include="..\..\src\modules\thread\wrap_Channel.h" />
|
||||
<ClInclude Include="..\..\src\modules\thread\wrap_LuaThread.h" />
|
||||
<ClInclude Include="..\..\src\modules\thread\wrap_ThreadModule.h" />
|
||||
<ClInclude Include="..\..\src\modules\timer\sdl\Timer.h" />
|
||||
<ClInclude Include="..\..\src\modules\timer\Timer.h" />
|
||||
<ClInclude Include="..\..\src\modules\timer\wrap_Timer.h" />
|
||||
<ClInclude Include="..\..\src\modules\window\sdl\Window.h" />
|
||||
<ClInclude Include="..\..\src\modules\window\Window.h" />
|
||||
<ClInclude Include="..\..\src\modules\window\wrap_Window.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="love.rc" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
|
Before Width: | Height: | Size: 35 KiB |
Binary file not shown.
@@ -1,47 +0,0 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual C++ Express 2010
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "love", "love.vcxproj", "{B496CCF6-9B6D-0794-8F41-67A6EC86B4AA}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{A3FCC735-3E18-4D6B-9DA9-01D9E910B7F8} = {A3FCC735-3E18-4D6B-9DA9-01D9E910B7F8}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "liblove", "liblove.vcxproj", "{A3FCC735-3E18-4D6B-9DA9-01D9E910B7F8}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug MD|Win32 = Debug MD|Win32
|
||||
Debug MD|x64 = Debug MD|x64
|
||||
Release MD|Win32 = Release MD|Win32
|
||||
Release MD|x64 = Release MD|x64
|
||||
Release MT|Win32 = Release MT|Win32
|
||||
Release MT|x64 = Release MT|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{B496CCF6-9B6D-0794-8F41-67A6EC86B4AA}.Debug MD|Win32.ActiveCfg = Debug Dynamic|Win32
|
||||
{B496CCF6-9B6D-0794-8F41-67A6EC86B4AA}.Debug MD|Win32.Build.0 = Debug Dynamic|Win32
|
||||
{B496CCF6-9B6D-0794-8F41-67A6EC86B4AA}.Debug MD|x64.ActiveCfg = Debug Dynamic|x64
|
||||
{B496CCF6-9B6D-0794-8F41-67A6EC86B4AA}.Release MD|Win32.ActiveCfg = Release Dynamic|Win32
|
||||
{B496CCF6-9B6D-0794-8F41-67A6EC86B4AA}.Release MD|Win32.Build.0 = Release Dynamic|Win32
|
||||
{B496CCF6-9B6D-0794-8F41-67A6EC86B4AA}.Release MD|x64.ActiveCfg = Release Dynamic|x64
|
||||
{B496CCF6-9B6D-0794-8F41-67A6EC86B4AA}.Release MD|x64.Build.0 = Release Dynamic|x64
|
||||
{B496CCF6-9B6D-0794-8F41-67A6EC86B4AA}.Release MT|Win32.ActiveCfg = Release Static|Win32
|
||||
{B496CCF6-9B6D-0794-8F41-67A6EC86B4AA}.Release MT|Win32.Build.0 = Release Static|Win32
|
||||
{B496CCF6-9B6D-0794-8F41-67A6EC86B4AA}.Release MT|x64.ActiveCfg = Release Static|x64
|
||||
{B496CCF6-9B6D-0794-8F41-67A6EC86B4AA}.Release MT|x64.Build.0 = Release Static|x64
|
||||
{A3FCC735-3E18-4D6B-9DA9-01D9E910B7F8}.Debug MD|Win32.ActiveCfg = Debug Dynamic|Win32
|
||||
{A3FCC735-3E18-4D6B-9DA9-01D9E910B7F8}.Debug MD|Win32.Build.0 = Debug Dynamic|Win32
|
||||
{A3FCC735-3E18-4D6B-9DA9-01D9E910B7F8}.Debug MD|x64.ActiveCfg = Debug Dynamic|x64
|
||||
{A3FCC735-3E18-4D6B-9DA9-01D9E910B7F8}.Release MD|Win32.ActiveCfg = Release Dynamic|Win32
|
||||
{A3FCC735-3E18-4D6B-9DA9-01D9E910B7F8}.Release MD|Win32.Build.0 = Release Dynamic|Win32
|
||||
{A3FCC735-3E18-4D6B-9DA9-01D9E910B7F8}.Release MD|x64.ActiveCfg = Release Dynamic|x64
|
||||
{A3FCC735-3E18-4D6B-9DA9-01D9E910B7F8}.Release MD|x64.Build.0 = Release Dynamic|x64
|
||||
{A3FCC735-3E18-4D6B-9DA9-01D9E910B7F8}.Release MT|Win32.ActiveCfg = Release Static|Win32
|
||||
{A3FCC735-3E18-4D6B-9DA9-01D9E910B7F8}.Release MT|Win32.Build.0 = Release Static|Win32
|
||||
{A3FCC735-3E18-4D6B-9DA9-01D9E910B7F8}.Release MT|x64.ActiveCfg = Release Static|x64
|
||||
{A3FCC735-3E18-4D6B-9DA9-01D9E910B7F8}.Release MT|x64.Build.0 = Release Static|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
@@ -1,273 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug Dynamic|Win32">
|
||||
<Configuration>Debug Dynamic</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug Dynamic|x64">
|
||||
<Configuration>Debug Dynamic</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release Dynamic|Win32">
|
||||
<Configuration>Release Dynamic</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release Dynamic|x64">
|
||||
<Configuration>Release Dynamic</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release Static|Win32">
|
||||
<Configuration>Release Static</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release Static|x64">
|
||||
<Configuration>Release Static</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug Dynamic|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug Dynamic|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Dynamic|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Dynamic|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>Windows7.1SDK</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Release Static|Win32'">
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Static|x64'" Label="Configuration">
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Release Static|Win32'">
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Static|x64'" Label="Configuration">
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>Windows7.1SDK</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug Dynamic|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug Dynamic|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release Dynamic|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release Dynamic|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug Dynamic|Win32'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
<OutDir>$(SolutionDir)\bin\$(PlatformShortName)\Debug\MD\</OutDir>
|
||||
<IntDir>$(ProjectName)\$(PlatformShortName)\Debug\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug Dynamic|x64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
<OutDir>$(SolutionDir)\bin\$(PlatformShortName)\Debug\MD\</OutDir>
|
||||
<IntDir>$(ProjectName)\$(PlatformShortName)\Debug\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Dynamic|Win32'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)\bin\$(PlatformShortName)\Release\MD\</OutDir>
|
||||
<IntDir>$(ProjectName)\$(PlatformShortName)\Release\</IntDir>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Dynamic|x64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OutDir>$(SolutionDir)\bin\$(PlatformShortName)\Release\MD\</OutDir>
|
||||
<IntDir>$(ProjectName)\$(PlatformShortName)\Release\</IntDir>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Static|Win32'">
|
||||
<OutDir>$(SolutionDir)\bin\$(PlatformShortName)\Release\MT\</OutDir>
|
||||
<IntDir>$(ProjectName)\$(PlatformShortName)\Release\</IntDir>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Static|x64'">
|
||||
<OutDir>$(SolutionDir)\bin\$(PlatformShortName)\Release\MT\</OutDir>
|
||||
<IntDir>$(ProjectName)\$(PlatformShortName)\Release\</IntDir>
|
||||
<GenerateManifest>false</GenerateManifest>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug Dynamic|Win32'">
|
||||
<ClCompile>
|
||||
<PreprocessorDefinitions>DEBUG;_DEBUG%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>include;include\SDL;..\..\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<MultiProcessorCompilation>
|
||||
</MultiProcessorCompilation>
|
||||
<MinimalRebuild>false</MinimalRebuild>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<AdditionalLibraryDirectories>lib\$(PlatformShortName)\Debug\MD\</AdditionalLibraryDirectories>
|
||||
<AdditionalDependencies>msvcrtd.lib;msvcprtd.lib;kernel32.lib;lua51.lib;SDL2main.lib;SDL2.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
|
||||
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
<ProfileGuidedDatabase>$(TargetDir)$(TargetName).pgd</ProfileGuidedDatabase>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug Dynamic|x64'">
|
||||
<ClCompile>
|
||||
<PreprocessorDefinitions>DEBUG;_DEBUG%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>include;include\SDL;..\..\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<MultiProcessorCompilation>
|
||||
</MultiProcessorCompilation>
|
||||
<MinimalRebuild>false</MinimalRebuild>
|
||||
<OmitFramePointers>false</OmitFramePointers>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<AdditionalLibraryDirectories>lib\$(PlatformShortName)\Debug\MD\</AdditionalLibraryDirectories>
|
||||
<AdditionalDependencies>msvcrtd.lib;msvcprtd.lib;kernel32.lib;lua51.lib;SDL2main.lib;SDL2.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
|
||||
<ProfileGuidedDatabase>$(TargetDir)$(TargetName).pgd</ProfileGuidedDatabase>
|
||||
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release Dynamic|Win32'">
|
||||
<ClCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<WarningLevel>Level1</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<AdditionalIncludeDirectories>include;include\SDL;..\..\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<StringPooling>true</StringPooling>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<AdditionalLibraryDirectories>lib\$(PlatformShortName)\Release\MD\</AdditionalLibraryDirectories>
|
||||
<AdditionalDependencies>msvcrt.lib;msvcprt.lib;kernel32.lib;lua51.lib;SDL2main.lib;SDL2.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release Dynamic|x64'">
|
||||
<ClCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<WarningLevel>Level1</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<AdditionalIncludeDirectories>include;include\SDL;..\..\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<StringPooling>true</StringPooling>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<AdditionalLibraryDirectories>lib\$(PlatformShortName)\Release\MD\</AdditionalLibraryDirectories>
|
||||
<AdditionalDependencies>msvcrt.lib;msvcprt.lib;kernel32.lib;lua51.lib;SDL2main.lib;SDL2.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release Static|Win32'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>include;include\SDL;..\..\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<AdditionalDependencies>libcmt.lib;libcpmt.lib;kernel32.lib;user32.lib;shell32.lib;uuid.lib;advapi32.lib;ws2_32.lib;winmm.lib;opengl32.lib;oldnames.lib;DevIL.lib;freetype.lib;libmodplug.lib;libogg.lib;libvorbis.lib;libvorbisfile.lib;lua51.lib;mpg123.lib;physfs.lib;OpenAL.lib;zlib.lib;SDL2main.lib;SDL2.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>lib\$(PlatformShortName)\Release\MT\</AdditionalLibraryDirectories>
|
||||
<IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
|
||||
<ShowProgress>NotSet</ShowProgress>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release Static|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>include;include\SDL;..\..\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<OmitFramePointers>true</OmitFramePointers>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<AdditionalDependencies>libcmt.lib;libcpmt.lib;kernel32.lib;user32.lib;shell32.lib;uuid.lib;advapi32.lib;ws2_32.lib;winmm.lib;opengl32.lib;oldnames.lib;DevIL.lib;freetype.lib;libmodplug.lib;libogg.lib;libvorbis.lib;libvorbisfile.lib;lua51.lib;mpg123.lib;physfs.lib;OpenAL.lib;zlib.lib;SDL2main.lib;SDL2.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>lib\$(PlatformShortName)\Release\MT\</AdditionalLibraryDirectories>
|
||||
<IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="love.rc" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="liblove.vcxproj">
|
||||
<Project>{a3fcc735-3e18-4d6b-9da9-01d9e910b7f8}</Project>
|
||||
<Private>false</Private>
|
||||
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
|
||||
<CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>
|
||||
<LinkLibraryDependencies>true</LinkLibraryDependencies>
|
||||
<UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\src\love.cpp" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
@@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="love.rc" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\src\love.cpp" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
@@ -26,42 +26,44 @@ AUTOMAKE=${AUTOMAKE:-$(which automake)}
|
||||
[[ -x ${ACLOCAL} ]] || die "Could not find aclocal. Install automake."
|
||||
[[ -x ${AUTOMAKE} ]] || die "Could not find automake."
|
||||
|
||||
print_errors() {
|
||||
local output
|
||||
output="$("$@" 2>&1)" && return 0
|
||||
printf "%s\n" "$output"
|
||||
return 1
|
||||
}
|
||||
|
||||
automagic() {
|
||||
log "Copying files..." >&2
|
||||
log "Copying files..."
|
||||
cp platform/unix/configure.ac .
|
||||
cp platform/unix/Makefile.am .
|
||||
|
||||
log "Running genmodules..." >&2
|
||||
if ! bash platform/unix/genmodules "$1"; then
|
||||
log "Running genmodules..."
|
||||
if ! print_errors bash platform/unix/genmodules "$1"; then
|
||||
echo "You should be doing this from the root directory of the project."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
log "Running autoheader..." >&2
|
||||
${AUTOHEADER} 2>&1 || return 1 # Gimmie config.h.in
|
||||
log "Running autoheader..."
|
||||
print_errors ${AUTOHEADER} || return 1 # Gimmie config.h.in
|
||||
|
||||
log "Running libtoolize..." >&2
|
||||
${LIBTOOLIZE} --force 2>&1 || return 1
|
||||
log "Running libtoolize..."
|
||||
print_errors ${LIBTOOLIZE} --force || return 1
|
||||
|
||||
log "Running aclocal..." >&2
|
||||
${ACLOCAL} 2>&1 || return 1
|
||||
log "Running aclocal..."
|
||||
print_errors ${ACLOCAL} || return 1
|
||||
|
||||
log "Running autoconf..." >&2
|
||||
${AUTOCONF} 2>&1 || return 1
|
||||
log "Running autoconf..."
|
||||
print_errors ${AUTOCONF} || return 1
|
||||
|
||||
log "Running automake..." >&2
|
||||
${AUTOMAKE} -a 2>&1 || return 1
|
||||
log "Running automake..."
|
||||
print_errors ${AUTOMAKE} -a || return 1
|
||||
}
|
||||
|
||||
if [[ $1 == "-d" ]]; then
|
||||
shift 1
|
||||
automagic "$@" 2>&1
|
||||
else
|
||||
(automagic "$@" > /dev/null) 2>&1
|
||||
fi
|
||||
automagic "$@"
|
||||
|
||||
if [[ $? -eq 1 ]]; then
|
||||
log "Failed, sadface."
|
||||
log "You can make this script more verbose running it in debug mode (-d)"
|
||||
log "This is generally a configuration error (I'm looking at you aclocal)"
|
||||
exit 1
|
||||
else
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
AC_INIT([love], [HEAD])
|
||||
AC_INIT([love], [11.1])
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
AC_CONFIG_AUX_DIR([platform/unix])
|
||||
AC_CONFIG_MACRO_DIR([platform/unix/m4])
|
||||
@@ -19,6 +19,7 @@ AC_LANG([C++])
|
||||
|
||||
dnl Workaround for old aclocal versions
|
||||
m4_include([platform/unix/cpp11.m4])
|
||||
m4_include([platform/unix/deps.m4])
|
||||
|
||||
includes=
|
||||
|
||||
@@ -44,70 +45,68 @@ AS_VAR_IF([enable_stbi_sse2_override], [no], [], #else
|
||||
|
||||
# --with-lua and --with-luaversion
|
||||
AC_ARG_WITH([lua], [AS_HELP_STRING([--with-lua], [Select the lua implementation])],
|
||||
[], [with_lua=luajit])
|
||||
[], [with_lua=luajit])
|
||||
AC_ARG_WITH([luaversion], [AS_HELP_STRING([--with-luaversion], [Select the lua version])],
|
||||
[], [with_luaversion=5.1])
|
||||
[], [with_luaversion=5.1])
|
||||
|
||||
# pkg-config libraries
|
||||
AM_PATH_SDL2([], [], [LOVE_MSG_ERROR([SDL 2])])
|
||||
with_clean_luaversion=`printf ${with_luaversion} | sed 's/\.//g'`
|
||||
PKG_CHECK_MODULES([lua], [${with_lua}${with_luaversion}], [lua_found=yes],
|
||||
[PKG_CHECK_MODULES([lua], [${with_lua}${with_clean_luaversion}], [lua_found=yes],
|
||||
[PKG_CHECK_MODULES([lua], [${with_lua}], [lua_found=yes], [lua_found=no])])])
|
||||
PKG_CHECK_MODULES([freetype2], [freetype2], [], [LOVE_MSG_ERROR([FreeType2])])
|
||||
PKG_CHECK_MODULES([openal], [openal], [], [LOVE_MSG_ERROR([OpenAL])])
|
||||
PKG_CHECK_MODULES([libmodplug], [libmodplug], [], [LOVE_MSG_ERROR([libmodplug])])
|
||||
PKG_CHECK_MODULES([vorbisfile], [vorbisfile], [], [LOVE_MSG_ERROR([libvorbis and libvorbisfile])])
|
||||
PKG_CHECK_MODULES([zlib], [zlib], [], [LOVE_MSG_ERROR([zlib])])
|
||||
PKG_CHECK_MODULES([theora], [theoradec], [], [LOVE_MSG_ERROR([libtheora])])
|
||||
|
||||
# Other libraries
|
||||
AC_SEARCH_LIBS([sqrt], [m], [], [LOVE_MSG_ERROR([the C math library])])
|
||||
AC_SEARCH_LIBS([PHYSFS_init], [physfs], [], [LOVE_MSG_ERROR([PhysicsFS])])
|
||||
# Generated sources for enabling/disabling modules
|
||||
m4_include([configure-modules-pre.ac])
|
||||
|
||||
# Lua, treated seperately because of --with-lua
|
||||
AS_VAR_IF([lua_found], [yes],
|
||||
#if
|
||||
[
|
||||
luaheaders_found=yes
|
||||
AC_MSG_CHECKING([for library containing lua_call])
|
||||
AC_MSG_RESULT([${lua_LIBS}])],
|
||||
#else
|
||||
[
|
||||
AC_MSG_WARN([Could not find pkg-config definition for ${with_lua}${with_luaversion} or ${with_lua}${with_clean_luaversion}${with_lua}, falling back to manual detection])
|
||||
AC_SEARCH_LIBS([lua_call], ["${with_lua}${with_luaversion}" "${with_lua}"], [],
|
||||
[LOVE_MSG_ERROR([$with_lua])])
|
||||
luaheaders_found=no
|
||||
AC_CHECK_HEADER(["${with_lua}${with_luaversion}/lua.h"], [luaheaders_found=yes includes="$includes -I/usr/include/${with_lua}${with_luaversion}"], [])
|
||||
AC_CHECK_HEADER(["${with_lua}/lua.h"], [luaheaders_found=yes includes="$includes -I/usr/include/${with_lua}"], [])])
|
||||
AS_VAR_IF([luaheaders_found], [yes], [], #else
|
||||
[
|
||||
AC_MSG_WARN([Could not locate lua headers for ${with_lua}${with_luaversion} or ${with_lua}, you probably need to specify them with CPPFLAGS])])
|
||||
|
||||
# mpg123, treated seperately because it can be disabled (default on)
|
||||
# also not pkg-config because of the FILE_OFFSET_BITS.. bit
|
||||
# Other features that can be enabled/disabled
|
||||
AC_ARG_ENABLE([mpg123], AC_HELP_STRING([--disable-mpg123], [Disable mp3 support, for patent-free builds]), [], [enable_mpg123=yes])
|
||||
AC_ARG_ENABLE([gme], AC_HELP_STRING([--enable-gme], [Enable GME support, for more chiptuney goodness]), [], [enable_gme=no])
|
||||
|
||||
# Dependencies we always use
|
||||
ACLOVE_DEP_LUA
|
||||
ACLOVE_DEP_SDL2
|
||||
ACLOVE_DEP_LIBM
|
||||
ACLOVE_DEP_ZLIB
|
||||
|
||||
# Conditional dependencies
|
||||
AS_VAR_IF([enable_module_audio], [yes], [ACLOVE_DEP_OPENAL], [])
|
||||
AS_VAR_IF([enable_module_font], [yes], [ACLOVE_DEP_FREETYPE2], [])
|
||||
AS_VAR_IF([enable_module_sound], [yes], [
|
||||
ACLOVE_DEP_LIBMODPLUG
|
||||
ACLOVE_DEP_VORBISFILE
|
||||
], [enable_mpg123=no])
|
||||
AS_VAR_IF([enable_module_video], [yes], [ACLOVE_DEP_THEORA], [])
|
||||
AS_VAR_IF([enable_gme], [yes], [ACLOVE_DEP_GME], [])
|
||||
AS_VAR_IF([enable_mpg123], [no],
|
||||
AC_DEFINE([LOVE_NOMPG123], [], [Build without mpg123]),
|
||||
# else
|
||||
AC_SEARCH_LIBS([mpg123_open_feed], [mpg123], [],
|
||||
[LOVE_MSG_ERROR([libmpg123])])
|
||||
AC_SEARCH_LIBS([mpg123_seek_64], [mpg123],
|
||||
AC_SUBST([FILE_OFFSET],[-D_FILE_OFFSET_BITS=64]),
|
||||
AC_SUBST([FILE_OFFSET],[])))
|
||||
[ACLOVE_DEP_MPG123])
|
||||
|
||||
# GME, treated seperately because it can be enabled (default off)
|
||||
AC_ARG_ENABLE([gme], AC_HELP_STRING([--enable-gme], [Enable GME support, for more chiptuney goodness]), [], [enable_gme=no])
|
||||
AS_VAR_IF([enable_gme], [yes],
|
||||
AC_SEARCH_LIBS([gme_open_data], [gme], [], [LOVE_MSG_ERROR([gme])])
|
||||
AC_DEFINE([LOVE_SUPPORT_GME], [], [Enable gme])
|
||||
AC_CHECK_HEADER([gme/gme.h], [includes="$includes -I/usr/include/gme"], []))
|
||||
# Add flags for optional libraries
|
||||
AC_ARG_ENABLE([library-enet], [ --disable-library-enet Turn off library enet], [], [enable_library_enet=yes])
|
||||
AC_ARG_ENABLE([library-luasocket], [ --disable-library-luasocket Turn off library luasocket], [], [enable_library_luasocket=yes])
|
||||
AC_ARG_ENABLE([library-lua53], [ --disable-library-lua53 Turn off library lua53 (lua 5.3 backports, required by love.data)], [], [enable_library_lua53=yes])
|
||||
|
||||
# Select the libraries we need to build, based on the selected modules
|
||||
AS_VAR_IF([enable_module_filesystem], [yes], [enable_library_physfs=yes], [enable_library_physfs=no])
|
||||
AS_VAR_IF([enable_module_physics], [yes], [enable_library_Box2D=yes], [enable_library_Box2D=no])
|
||||
AS_VAR_IF([enable_module_image], [yes], [enable_library_ddsparse=yes], [enable_library_ddsparse=no])
|
||||
AS_VAR_IF([enable_module_graphics], [yes], [enable_library_glad=yes], [enable_library_glad=no])
|
||||
AS_VAR_IF([enable_module_graphics], [yes], [enable_library_glslang=yes], [enable_library_glslang=no])
|
||||
AS_VAR_IF([enable_module_image], [yes], [enable_library_lodepng=yes], [enable_library_lodepng=no])
|
||||
AS_VAR_IF([enable_module_data], [yes], [enable_library_lua53=yes], [])
|
||||
AS_VAR_IF([enable_module_math], [yes], [enable_library_lz4=yes], [enable_library_lz4=no])
|
||||
AS_VAR_IF([enable_module_math], [yes], [enable_library_noise1234=yes], [enable_library_noise1234=no])
|
||||
AS_VAR_IF([enable_module_image], [yes], [enable_library_stb=yes], [enable_library_stb=no])
|
||||
AS_VAR_IF([enable_module_image], [yes], [enable_library_tinyexr=yes], [enable_library_tinyexr=no])
|
||||
AS_VAR_IF([enable_module_sound], [yes], [enable_library_Wuff=yes], [enable_library_Wuff=no])
|
||||
AS_VAR_IF([enable_module_graphics], [yes], [enable_library_xxHash=yes], [enable_library_xxHash=no])
|
||||
|
||||
# Utf8 is required by both graphics and font, so enable if either is enabled
|
||||
enable_library_utf8=no
|
||||
AS_VAR_IF([enable_module_graphics], [yes], [enable_library_utf8=yes], [])
|
||||
AS_VAR_IF([enable_module_font], [yes], [enable_library_utf8=yes], [])
|
||||
|
||||
# libenet check for socklen_t
|
||||
AC_CHECK_TYPE([socklen_t], [AC_DEFINE([HAS_SOCKLEN_T], [1], [Define if socklen_t exists.] )], ,
|
||||
#include <sys/types.h>
|
||||
#include <sys/socket.h>
|
||||
)
|
||||
ACLOVE_SOCKLEN_T
|
||||
|
||||
# Generated sources for enabling/disabling modules
|
||||
m4_include([configure-modules-post.ac])
|
||||
|
||||
# Optionally build the executable (default on)
|
||||
AC_ARG_ENABLE([exe],
|
||||
@@ -128,8 +127,6 @@ AS_VAR_IF([LUA_EXECUTABLE], [:],
|
||||
# Set our includes as automake variable
|
||||
AC_SUBST([LOVE_INCLUDES], ["$includes"])
|
||||
|
||||
m4_include([configure-modules.ac])
|
||||
|
||||
AC_CONFIG_FILES([
|
||||
Makefile
|
||||
src/Makefile
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
love (0.9.0~ppatest5) precise; urgency=medium
|
||||
|
||||
* Upstream testing release
|
||||
|
||||
-- Bart van Strien <bart.bes@gmail.com> Sat, 2 Nov 2013 16:23:40 +0100
|
||||
@@ -1,5 +1,5 @@
|
||||
love@LOVE_SUFFIX@ (0.10.0~pre2657ppa2) trusty; urgency=medium
|
||||
love@LOVE_SUFFIX@ (0.11.0~pre3420ppa3) trusty; urgency=medium
|
||||
|
||||
* Upstream testing release
|
||||
|
||||
-- Bart van Strien <bart.bes@gmail.com> Sat, 2 Nov 2013 16:23:40 +0100
|
||||
-- Bart van Strien <bart.bes@gmail.com> Sat, 31 Mar 2018 13:50:30 +0200
|
||||
|
||||
@@ -1,58 +0,0 @@
|
||||
Source: love
|
||||
Section: games
|
||||
Priority: extra
|
||||
Maintainer: Bart van Strien <bart.bes@gmail.com>
|
||||
Build-Depends: debhelper (>= 9),
|
||||
autotools-dev,
|
||||
libdevil-dev,
|
||||
libfreetype6-dev,
|
||||
libluajit-5.1-dev,
|
||||
libphysfs-dev,
|
||||
libsdl2-dev (>= 2.0.1),
|
||||
libopenal-dev,
|
||||
libogg-dev,
|
||||
libvorbis-dev,
|
||||
libflac-dev,
|
||||
libflac++-dev,
|
||||
libmodplug-dev,
|
||||
libmpg123-dev,
|
||||
libmng-dev
|
||||
Standards-Version: 3.9.3
|
||||
Homepage: http://love2d.org
|
||||
|
||||
Package: liblove
|
||||
Architecture: any
|
||||
Multi-Arch: same
|
||||
Pre-Depends: ${misc:Pre-Depends}
|
||||
Depends: ${misc:Depends},
|
||||
${shlibs:Depends},
|
||||
libdevil1c2,
|
||||
libmng1,
|
||||
libfreetype6,
|
||||
libgl1-mesa-glx,
|
||||
libluajit-5.1-2,
|
||||
libphysfs-1.0-0,
|
||||
libsdl2 (>= 2.0.1),
|
||||
libopenal1,
|
||||
libogg0,
|
||||
libvorbis0a,
|
||||
libvorbisfile3,
|
||||
libmodplug1,
|
||||
libmpg123-0
|
||||
Description: LOVE is a free 2D game engine which enables easy game creation in Lua.
|
||||
|
||||
Package: love
|
||||
Architecture: any
|
||||
Multi-Arch: same
|
||||
Depends: ${misc:Depends},
|
||||
liblove (= ${binary:Version})
|
||||
Description: LOVE is a free 2D game engine which enables easy game creation in Lua.
|
||||
|
||||
Package: love-dbg
|
||||
Priority: extra
|
||||
Section: debug
|
||||
Architecture: any
|
||||
Multi-Arch: same
|
||||
Depends: ${misc:Depends},
|
||||
love (= ${binary:Version}),
|
||||
Description: LOVE is a free 2D game engine which enables easy game creation in Lua.
|
||||
@@ -4,7 +4,7 @@ Upstream-Contact: Bart van Strien <bart.bes@gmail.com>
|
||||
Source: http://www.love2d.org/
|
||||
|
||||
Files: *
|
||||
Copyright: 2006-2015 LOVE Development Team
|
||||
Copyright: 2006-2018 LOVE Development Team
|
||||
License: zlib
|
||||
This software is provided 'as-is', without any express or implied
|
||||
warranty. In no event will the authors be held liable for any damages
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
usr/lib/*/liblove-unstable.so.*
|
||||
@@ -1 +1 @@
|
||||
usr/lib/*/liblove-unstable.so.*
|
||||
usr/lib/*/liblove-unstable-*.so
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
usr/lib/*/liblove.so.*
|
||||
@@ -1 +1 @@
|
||||
usr/lib/*/liblove.so.*
|
||||
usr/lib/*/liblove-*.so
|
||||
|
||||
@@ -1,16 +0,0 @@
|
||||
#!/usr/bin/make -f
|
||||
|
||||
DEB_HOST_ARCH_CPU ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU)
|
||||
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
|
||||
|
||||
override_dh_auto_configure:
|
||||
dh_auto_configure -- CPPFLAGS=-I/usr/include/luajit-2.0 --with-lua=luajit-5.1
|
||||
|
||||
override_dh_link:
|
||||
dh_link -plove-dev usr/lib/$(DEB_HOST_MULTIARCH)/liblove.so.0.0.0 usr/lib/$(DEB_HOST_MULTIARCH)/liblove.so
|
||||
|
||||
override_dh_strip:
|
||||
dh_strip --dbg-package=love-dbg
|
||||
|
||||
%:
|
||||
dh $@ --parallel
|
||||
@@ -0,0 +1,74 @@
|
||||
AC_DEFUN([ACLOVE_DEP_FREETYPE2], [
|
||||
PKG_CHECK_MODULES([freetype2], [freetype2], [], [LOVE_MSG_ERROR([FreeType2])])])
|
||||
|
||||
AC_DEFUN([ACLOVE_DEP_OPENAL], [
|
||||
PKG_CHECK_MODULES([openal], [openal], [], [LOVE_MSG_ERROR([OpenAL])])])
|
||||
|
||||
AC_DEFUN([ACLOVE_DEP_LIBMODPLUG], [
|
||||
PKG_CHECK_MODULES([libmodplug], [libmodplug], [], [LOVE_MSG_ERROR([libmodplug])])])
|
||||
|
||||
AC_DEFUN([ACLOVE_DEP_VORBISFILE], [
|
||||
PKG_CHECK_MODULES([vorbisfile], [vorbisfile], [], [LOVE_MSG_ERROR([libvorbis and libvorbisfile])])])
|
||||
|
||||
AC_DEFUN([ACLOVE_DEP_ZLIB], [
|
||||
PKG_CHECK_MODULES([zlib], [zlib], [], [LOVE_MSG_ERROR([zlib])])])
|
||||
|
||||
AC_DEFUN([ACLOVE_DEP_THEORA], [
|
||||
PKG_CHECK_MODULES([theora], [theoradec], [], [LOVE_MSG_ERROR([libtheora])])])
|
||||
|
||||
AC_DEFUN([ACLOVE_DEP_LIBM], [
|
||||
AC_SEARCH_LIBS([sqrt], [m], [], [LOVE_MSG_ERROR([the C math library])])])
|
||||
|
||||
AC_DEFUN([ACLOVE_DEP_SDL2], [
|
||||
AM_PATH_SDL2([], [], [LOVE_MSG_ERROR([SDL 2])])])
|
||||
|
||||
# does not use pkg-config because of the FILE_OFFSET_BITS.. bit
|
||||
AC_DEFUN([ACLOVE_DEP_MPG123], [
|
||||
AC_SEARCH_LIBS([mpg123_open_feed], [mpg123], [],
|
||||
[LOVE_MSG_ERROR([libmpg123])])
|
||||
AC_SEARCH_LIBS([mpg123_seek_64], [mpg123],
|
||||
AC_SUBST([FILE_OFFSET],[-D_FILE_OFFSET_BITS=64]),
|
||||
AC_SUBST([FILE_OFFSET],[]))])
|
||||
|
||||
AC_DEFUN([ACLOVE_DEP_GME], [
|
||||
AC_SEARCH_LIBS([gme_open_data], [gme], [], [LOVE_MSG_ERROR([gme])])
|
||||
AC_DEFINE([LOVE_SUPPORT_GME], [], [Enable gme])
|
||||
AC_CHECK_HEADER([gme/gme.h], [includes="$includes -I/usr/include/gme"], [])])
|
||||
|
||||
# For enet
|
||||
AC_DEFUN([ACLOVE_SOCKLEN_T], [
|
||||
AC_CHECK_TYPE([socklen_t], [AC_DEFINE([HAS_SOCKLEN_T], [1], [Define if socklen_t exists.] )], ,
|
||||
#include <sys/types.h>
|
||||
#include <sys/socket.h>
|
||||
)])
|
||||
|
||||
# The lua detection is quite annoying because of distro differences and our version selection code
|
||||
AC_DEFUN([ACLOVE_DEP_LUA_PKGCONFIG], [
|
||||
PKG_CHECK_MODULES([lua], [${with_lua}${with_luaversion}], [aclove_lua_found=yes],
|
||||
[PKG_CHECK_MODULES([lua], [${with_lua}${with_clean_luaversion}], [aclove_lua_found=yes],
|
||||
[PKG_CHECK_MODULES([lua], [${with_lua}], [aclove_lua_found=yes], [])])])
|
||||
|
||||
AS_VAR_IF([aclove_lua_found], [yes],
|
||||
[
|
||||
aclove_luaheaders_found=yes
|
||||
AC_MSG_CHECKING([for library containing lua_call])
|
||||
AC_MSG_RESULT([${lua_LIBS}])
|
||||
], [])])
|
||||
|
||||
AC_DEFUN([ACLOVE_DEP_LUA_FALLBACK], [
|
||||
AC_MSG_WARN([Could not find pkg-config definition for ${with_lua}${with_luaversion} or ${with_lua}${with_clean_luaversion}${with_lua}, falling back to manual detection])
|
||||
AC_SEARCH_LIBS([lua_call], ["${with_lua}${with_luaversion}" "${with_lua}"], [aclove_lua_found=yes],
|
||||
[LOVE_MSG_ERROR([$with_lua])])
|
||||
|
||||
AC_CHECK_HEADER(["${with_lua}${with_luaversion}/lua.h"], [aclove_luaheaders_found=yes includes="$includes -I/usr/include/${with_lua}${with_luaversion}"], [])
|
||||
AC_CHECK_HEADER(["${with_lua}/lua.h"], [aclove_luaheaders_found=yes includes="$includes -I/usr/include/${with_lua}"], [])])
|
||||
|
||||
# First, try pkg-config, then fall back to manual detection if not available.
|
||||
AC_DEFUN([ACLOVE_DEP_LUA], [ dnl Requires with-lua and with-luaversion
|
||||
aclove_lua_found=no
|
||||
aclove_luaheaders_found=no
|
||||
|
||||
ACLOVE_DEP_LUA_PKGCONFIG
|
||||
AS_VAR_IF([aclove_lua_found], [no], [ACLOVE_DEP_LUA_FALLBACK], [])
|
||||
AS_VAR_IF([aclove_luaheaders_found], [no],
|
||||
[AC_MSG_WARN([Could not locate lua headers for ${with_lua}${with_luaversion} or ${with_lua}, you probably need to specify them with CPPFLAGS])], [])])
|
||||
@@ -1,5 +1,6 @@
|
||||
\./libraries/luasocket/libluasocket/wsocket\.*
|
||||
\./modules/sound/lullaby/FLACDecoder\.*
|
||||
\./libraries/luasocket/libluasocket/wsocket.*
|
||||
\./modules/sound/lullaby/FLACDecoder\..*
|
||||
\./love\.cpp
|
||||
\./modules/sound/lullaby/Mpg123Decoder\.cpp
|
||||
\./modules/sound/lullaby/Mpg123Decoder\.h
|
||||
\./libraries/glslang/glslang/OSDependent/Windows
|
||||
|
||||
@@ -1,38 +0,0 @@
|
||||
#!/bin/bash
|
||||
echo Generating src/Makefile.am ...
|
||||
inc_current='$(srcdir)'
|
||||
inc_modules="$inc_current/modules"
|
||||
inc_libraries="$inc_current/libraries"
|
||||
|
||||
cat > src/Makefile.am << EOF
|
||||
AM_CPPFLAGS = -I$inc_current -I$inc_modules -I$inc_libraries -I$inc_libraries/enet/libenet/include \$(LOVE_INCLUDES) \$(FILE_OFFSET)
|
||||
AM_CXXFLAGS = \$(SDL_CFLAGS)
|
||||
AUTOMAKE_OPTIONS = subdir-objects
|
||||
SUBDIRS =
|
||||
|
||||
if LOVE_BUILD_EXE
|
||||
# LÖVE executable
|
||||
bin_PROGRAMS = love
|
||||
#love_LDFLAGS =
|
||||
love_LDADD = liblove.la
|
||||
love_SOURCES = love.cpp
|
||||
endif
|
||||
|
||||
# Compile scripts
|
||||
#scripts/%.lua.h: scripts/%.lua
|
||||
# cd scripts; \
|
||||
# lua auto.lua \$*
|
||||
#TODO: Figure out how to only do this on gnu make, and detect which lua
|
||||
# executable to run
|
||||
|
||||
# libLÖVE
|
||||
lib_LTLIBRARIES = liblove.la
|
||||
liblove_la_LDFLAGS = -module -export-dynamic \$(LDFLAGS) \$(SDL_LIBS)
|
||||
EOF
|
||||
|
||||
platform/unix/genmodules >> src/Makefile.am
|
||||
|
||||
printf "\n" >> src/Makefile.am
|
||||
|
||||
cd ..
|
||||
echo "src/Makefile.am is updated! ^.^"
|
||||
@@ -3,20 +3,15 @@
|
||||
love_suffix="$1"
|
||||
love_amsuffix="$(echo "$love_suffix" | sed 's/\-/_/g' | sed 's/\./_/g')"
|
||||
|
||||
flags=""
|
||||
flags=()
|
||||
upper()
|
||||
{
|
||||
echo "$@" | tr '[:lower:]' '[:upper:]'
|
||||
}
|
||||
|
||||
implfind()
|
||||
{
|
||||
find "$1" -maxdepth 1 -type d -exec basename '{}' \; | grep -v "^\." | tail -n +2
|
||||
}
|
||||
|
||||
sourcefind()
|
||||
{
|
||||
find "$1" $2 -type f \( -iname "*.c" -o -iname "*.cpp" -o -iname "*.h" -o -iname "*.hpp" -o -iname "*.lch" \) | awk "{print \"./$prefix\"\$0\" \\\\\"}" | grep -v -f"$LOVEROOT/platform/unix/exclude"
|
||||
find "$1" $2 -type f \( -iname "*.c" -o -iname "*.cpp" -o -iname "*.h" -o -iname "*.hpp" -o -iname "*.lch" -o -iname "*.lua" \) | awk "{print \"./$prefix\"\$0\" \\\\\"}" | grep -v -f"$LOVEROOT/platform/unix/exclude" | sort
|
||||
}
|
||||
|
||||
handlemodule()
|
||||
@@ -26,82 +21,90 @@ handlemodule()
|
||||
printf "$DEFINENAME"
|
||||
}
|
||||
|
||||
handleimpl()
|
||||
{
|
||||
module="$1"
|
||||
implementation="$2"
|
||||
name="$3"
|
||||
|
||||
printf "if $name\n"
|
||||
FILES="$(sourcefind "$module/$implementation" | sed "s/^/ /")"
|
||||
if [[ "x$FILES" != "x" ]]; then
|
||||
printf "liblove${love_amsuffix}_la_SOURCES += \\\\\n"
|
||||
printf "${FILES:0:${#FILES}-2}\n"
|
||||
fi
|
||||
printf "endif\n\n"
|
||||
}
|
||||
|
||||
genmodules()
|
||||
{
|
||||
LOVEROOT="$(pwd)"
|
||||
cd src
|
||||
cd ./src
|
||||
|
||||
printf "liblove${love_amsuffix}_la_SOURCES = \\\\\n"
|
||||
sourcefind "common" | sed "s/^/ /"
|
||||
FILES="$(sourcefind "scripts" | sed "s/^/ /")"
|
||||
printf "${FILES:0:${#FILES}-2}\n\n"
|
||||
|
||||
cd modules
|
||||
local -a modulelist=()
|
||||
local -a liblist=()
|
||||
|
||||
cd ./modules
|
||||
prefix="modules/"
|
||||
for module in *; do
|
||||
NAME=$(handlemodule "$module")
|
||||
flags="$flags module-$module"
|
||||
flags+=("module-$module")
|
||||
|
||||
printf "if $NAME\n"
|
||||
|
||||
for implementation in $(implfind "$module"); do
|
||||
flags="$flags implementation-$module-$implementation"
|
||||
handleimpl "$module" "$implementation" "LOVE_IMPLEMENTATION_$(upper "$module")_$(upper "$implementation")"
|
||||
done
|
||||
|
||||
FILES="$(sourcefind "$module" "-maxdepth 1" | sed "s/^/ /")"
|
||||
FILES="$(sourcefind "$module" | sed "s/^/ /")"
|
||||
if [[ "x$FILES" != "x" ]]; then
|
||||
printf "liblove${love_amsuffix}_la_SOURCES += \\\\\n"
|
||||
printf "${FILES:0:${#FILES}-2}\n"
|
||||
printf "liblove_module_$module = \\\\\n"
|
||||
printf "${FILES:0:${#FILES}-2}\n\n"
|
||||
modulelist+=("$module")
|
||||
fi
|
||||
|
||||
printf "endif\n\n"
|
||||
if [[ "$module" = "sound" ]]; then
|
||||
printf "if !LOVE_NOMPG123\n"
|
||||
printf "liblove_module_$module += \\\\\n"
|
||||
printf "\t./modules/sound/lullaby/Mpg123Decoder.cpp \\\\\n"
|
||||
printf "\t./modules/sound/lullaby/Mpg123Decoder.h\n"
|
||||
printf "endif\n\n"
|
||||
fi
|
||||
done
|
||||
|
||||
cd ../libraries
|
||||
prefix="libraries/"
|
||||
for library in *; do
|
||||
NAME="LOVE_LIBRARY_$(upper "$library")"
|
||||
flags="$flags library-$library"
|
||||
flags+=("library-$library")
|
||||
FILES="$(sourcefind "$library" | sed "s/^/ /")"
|
||||
|
||||
if [[ ${#FILES} -gt 2 ]]; then
|
||||
printf "if $NAME\n"
|
||||
printf "liblove${love_amsuffix}_la_SOURCES += \\\\\n"
|
||||
printf "${FILES:0:${#FILES}-2}\nendif\n\n"
|
||||
printf "liblove_library_$library = \\\\\n"
|
||||
printf "${FILES:0:${#FILES}-2}\n\n"
|
||||
liblist+=("$library")
|
||||
fi
|
||||
done
|
||||
|
||||
for module in "${modulelist[@]}"; do
|
||||
NAME=$(handlemodule "$module")
|
||||
printf "if $NAME\n"
|
||||
printf "liblove${love_amsuffix}_la_SOURCES += \$(liblove_module_$module)\n"
|
||||
printf "endif\n\n"
|
||||
done
|
||||
|
||||
for library in "${liblist[@]}"; do
|
||||
NAME="LOVE_LIBRARY_$(upper "$library")"
|
||||
printf "if $NAME\n"
|
||||
printf "liblove${love_amsuffix}_la_SOURCES += \$(liblove_library_$library)\n"
|
||||
printf "endif\n\n"
|
||||
done
|
||||
|
||||
cd ../..
|
||||
}
|
||||
|
||||
genflags()
|
||||
{
|
||||
for flag in $flags; do
|
||||
prettyflag="$(echo "$flag" | sed 's/-/ love./' | sed 's/-/./g')"
|
||||
varflag="enable_$(echo "$flag" | sed 's/^[^-]*-//' | sed 's/[^a-zA-Z0-9]/_/')"
|
||||
defineflag="LOVE_ENABLE_$(upper $(echo $flag | sed 's/^[^-]*-//' | sed 's/-/_/g'))"
|
||||
printf > configure-modules-pre.ac
|
||||
printf > configure-modules-post.ac
|
||||
for flag in "${flags[@]}"; do
|
||||
prettyflag="$(echo "$flag" | sed -e 's/-/ love./' -e 's/-/./g')"
|
||||
varflag="enable_$(echo "$flag" | sed -e 's/[^a-zA-Z0-9]/_/')"
|
||||
defineflag="LOVE_ENABLE_$(upper $(echo $flag | sed -e 's/^[^-]*-//' -e 's/-/_/g'))"
|
||||
amflag="$(upper $(echo love-$flag | sed 's/-/_/g'))"
|
||||
printf "AC_ARG_ENABLE([$flag], [ --disable-$flag Turn off $prettyflag], [], [$varflag=true])\n"
|
||||
printf "AH_TEMPLATE([$defineflag], [])\n"
|
||||
printf "if test x\"\$$varflag\" = xtrue; then\n"
|
||||
printf " AC_DEFINE([$defineflag], [])\n"
|
||||
printf "fi\n"
|
||||
printf "AM_CONDITIONAL([$amflag], [test x\$$varflag = xtrue])\n\n"
|
||||
|
||||
# Don't generate an --enable rule for libraries
|
||||
if [[ "$(echo $flag | sed -e '/^library-/d')" != "" ]]; then
|
||||
printf "AC_ARG_ENABLE([$flag], [ --disable-$flag Turn off $prettyflag], [], [$varflag=yes])\n" >> configure-modules-pre.ac
|
||||
fi
|
||||
|
||||
printf "AH_TEMPLATE([$defineflag], [])\n" >> configure-modules-post.ac
|
||||
printf "if test x\"\$$varflag\" = xyes; then\n" >> configure-modules-post.ac
|
||||
printf " AC_DEFINE([$defineflag], [])\n" >> configure-modules-post.ac
|
||||
printf "fi\n" >> configure-modules-post.ac
|
||||
printf "AM_CONDITIONAL([$amflag], [test x\$$varflag = xyes])\n\n" >> configure-modules-post.ac
|
||||
done
|
||||
}
|
||||
|
||||
@@ -137,33 +140,26 @@ endif
|
||||
|
||||
# Compile scripts
|
||||
.lua.lua.h:
|
||||
cd scripts; \
|
||||
cd ./scripts; \
|
||||
\$(LUA_EXECUTABLE) auto.lua \$<
|
||||
|
||||
# libLÖVE
|
||||
lib_LTLIBRARIES = liblove${love_suffix}.la
|
||||
liblove${love_amsuffix}_la_LDFLAGS = -module -export-dynamic \$(LDFLAGS)
|
||||
liblove${love_amsuffix}_la_LDFLAGS = -module -export-dynamic \$(LDFLAGS) -release \$(PACKAGE_VERSION)
|
||||
liblove${love_amsuffix}_la_LIBADD = \
|
||||
\$(SDL_LIBS) \$(freetype2_LIBS) \$(lua_LIBS)\
|
||||
\$(openal_LIBS) \$(zlib_LIBS) \$(libmodplug_LIBS)\
|
||||
\$(vorbisfile_LIBS) \$(theora_LIBS)
|
||||
|
||||
EOF
|
||||
|
||||
genmodules >> src/Makefile.am
|
||||
|
||||
cat >> src/Makefile.am << EOF
|
||||
if !LOVE_NOMPG123
|
||||
liblove${love_amsuffix}_la_SOURCES += \\
|
||||
./modules/sound/lullaby/Mpg123Decoder.cpp \\
|
||||
./modules/sound/lullaby/Mpg123Decoder.h
|
||||
endif
|
||||
EOF
|
||||
|
||||
echo "src/Makefile.am is updated! ^.^"
|
||||
|
||||
echo "Generating configure-modules.ac"
|
||||
genflags > configure-modules.ac
|
||||
cat >> configure-modules.ac << EOF
|
||||
genflags
|
||||
cat >> configure-modules-post.ac << EOF
|
||||
AC_SUBST([LOVE_SUFFIX], [${love_suffix}])
|
||||
EOF
|
||||
echo "configure-modules.ac is updated! ^.^"
|
||||
|
||||
@@ -1,36 +0,0 @@
|
||||
.\" (c) 2008-2011 Miriam Ruiz <little_miry@yahoo.es>
|
||||
.\" (c) 2013 Bart van Strien <bart.bes@gmail.com>
|
||||
.\"
|
||||
.\" This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damagesarising from the use of this software.
|
||||
.\"
|
||||
.\" Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:
|
||||
.\"
|
||||
.\" 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
|
||||
.\"
|
||||
.\" 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
|
||||
.\"
|
||||
.\" 3. This notice may not be removed or altered from any source distribution.
|
||||
.\"
|
||||
.\" Modifications:
|
||||
.\" - Update version to 0.9 and remove reference to doc dir
|
||||
.\" - Add fused and version flags
|
||||
|
||||
.TH "LÖVE" "1" "0.9" "" ""
|
||||
.SH "NAME"
|
||||
love \- 2D game development framework
|
||||
|
||||
.SH "SYNOPSIS"
|
||||
.B love
|
||||
[--fused] <\fIgame.love\fR>
|
||||
.PP
|
||||
.B love
|
||||
--version
|
||||
.PP
|
||||
|
||||
.SH "DESCRIPTION"
|
||||
LÖVE was created to be a user\-friendly engine in which simple (or complicated) games could be made without having extensive knowledge of system or graphics functions and without having to dedicate time towards developing the same engine features time and time again.
|
||||
.P
|
||||
Developed with cross\-platform implementation in mind, it utilizes the latest open source libraries to deliver a similar game experience, independent of operating system. By relying on the Lua scripting language for game\-specific programming, it allows even the novice game creator to quickly and efficiently develop an idea into a fully working game.
|
||||
|
||||
.SH "SEE ALSO"
|
||||
You can find more information at \fIhttp://love2d.org/\fR
|
||||
@@ -1,5 +1,5 @@
|
||||
.\" (c) 2008-2011 Miriam Ruiz <little_miry@yahoo.es>
|
||||
.\" (c) 2013 Bart van Strien <bart.bes@gmail.com>
|
||||
.\" (c) 2013-2018 Bart van Strien <bart.bes@gmail.com>
|
||||
.\"
|
||||
.\" This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damagesarising from the use of this software.
|
||||
.\"
|
||||
@@ -10,9 +10,9 @@
|
||||
.\" 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
|
||||
.\"
|
||||
.\" 3. This notice may not be removed or altered from any source distribution.
|
||||
.Dd December 23, 2015
|
||||
.Dd March 31, 2018
|
||||
.Dt LOVE 6
|
||||
.Os LÖVE 0.10.0
|
||||
.Os LÖVE 11.1
|
||||
.Sh NAME
|
||||
.Nm love
|
||||
.Nd 2D game development framework
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
update-mime-database /usr/share/mime
|
||||
gtk-update-icon-cache --force /usr/share/icons/gnome
|
||||
xdg-mime default love.desktop application/x-love-game
|
||||
@@ -1,4 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
update-mime-database /usr/share/mime
|
||||
gtk-update-icon-cache --force /usr/share/icons/gnome
|
||||
+27
-1
@@ -1,5 +1,15 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "20x20",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "iphone",
|
||||
"size" : "20x20",
|
||||
"scale" : "3x"
|
||||
},
|
||||
{
|
||||
"size" : "29x29",
|
||||
"idiom" : "iphone",
|
||||
@@ -54,6 +64,16 @@
|
||||
"filename" : "icon-60pt@3x.png",
|
||||
"scale" : "3x"
|
||||
},
|
||||
{
|
||||
"idiom" : "ipad",
|
||||
"size" : "20x20",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"idiom" : "ipad",
|
||||
"size" : "20x20",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"size" : "29x29",
|
||||
"idiom" : "ipad",
|
||||
@@ -119,10 +139,16 @@
|
||||
"idiom" : "ipad",
|
||||
"filename" : "icon-83.5pt@2x.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"idiom" : "ios-marketing",
|
||||
"size" : "1024x1024",
|
||||
"filename" : "icon-1024pt@1x.png",
|
||||
"scale" : "1x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"version" : 1,
|
||||
"author" : "xcode"
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
Binary file not shown.
|
After Width: | Height: | Size: 112 KiB |
@@ -40,7 +40,7 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>0.10.2</string>
|
||||
<string>11.1</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
|
||||
@@ -11,12 +11,12 @@ git checkout v2.1
|
||||
ISDKP=$(xcrun --sdk iphoneos --show-sdk-path)
|
||||
ICC=$(xcrun --sdk iphoneos --find clang)
|
||||
|
||||
ISDKF="-arch armv7 -isysroot $ISDKP -mios-version-min=6.0"
|
||||
ISDKF="-arch armv7 -isysroot $ISDKP -mios-version-min=8.0"
|
||||
make clean
|
||||
make -j8 HOST_CC="clang -m32 -arch i386" CROSS="$(dirname $ICC)/" TARGET_FLAGS="$ISDKF" TARGET_SYS=iOS
|
||||
cp src/libluajit.a ../libraries/luajit/libluajit_arm7.a
|
||||
|
||||
ISDKF="-arch arm64 -isysroot $ISDKP -mios-version-min=6.0"
|
||||
ISDKF="-arch arm64 -isysroot $ISDKP -mios-version-min=8.0"
|
||||
make clean
|
||||
make -j8 CROSS="$(dirname $ICC)/" TARGET_FLAGS="$ISDKF" TARGET_SYS=iOS
|
||||
cp src/libluajit.a ../libraries/luajit/libluajit_arm64.a
|
||||
@@ -27,12 +27,12 @@ cp src/libluajit.a ../libraries/luajit/libluajit_arm64.a
|
||||
ISDKP=$(xcrun --sdk iphonesimulator --show-sdk-path)
|
||||
ICC=$(xcrun --sdk iphonesimulator --find clang)
|
||||
|
||||
ISDKF="-arch i386 -isysroot $ISDKP -mios-simulator-version-min=6.0"
|
||||
ISDKF="-arch i386 -isysroot $ISDKP -mios-simulator-version-min=8.0"
|
||||
make clean
|
||||
make -j8 HOST_CC="clang -m32 -arch i386" CROSS="$(dirname $ICC)/" TARGET_FLAGS="$ISDKF" TARGET_SYS=iOS
|
||||
cp src/libluajit.a ../libraries/luajit/libluajit_x86.a
|
||||
|
||||
ISDKF="-arch x86_64 -isysroot $ISDKP -mios-simulator-version-min=6.0"
|
||||
ISDKF="-arch x86_64 -isysroot $ISDKP -mios-simulator-version-min=8.0"
|
||||
make clean
|
||||
make -j8 CROSS="$(dirname $ICC)/" TARGET_FLAGS="$ISDKF" TARGET_SYS=iOS
|
||||
cp src/libluajit.a ../libraries/luajit/libluajit_x86_64.a
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -8,20 +8,20 @@
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; };
|
||||
A9255DD11043183600BA1496 /* FreeType.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = A93E6E4810420B4A007D418B /* FreeType.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
|
||||
A9255DD31043183600BA1496 /* Lua.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = A93E6E5310420B57007D418B /* Lua.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
|
||||
A9255E031043195A00BA1496 /* Vorbis.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = A9255E021043195A00BA1496 /* Vorbis.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
|
||||
A9255F58104324E100BA1496 /* Ogg.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = A9255F51104324D700BA1496 /* Ogg.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
|
||||
A9255E031043195A00BA1496 /* vorbis.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = A9255E021043195A00BA1496 /* vorbis.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
|
||||
A9255F58104324E100BA1496 /* ogg.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = A9255F51104324D700BA1496 /* ogg.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
|
||||
A93E6E5510420B57007D418B /* Lua.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A93E6E5310420B57007D418B /* Lua.framework */; };
|
||||
A93E6EED10420BA8007D418B /* love.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A93E6A3410420AC0007D418B /* love.cpp */; };
|
||||
A9D307F2106635D3004FEDF8 /* physfs.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = A9D307E9106635C3004FEDF8 /* physfs.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
|
||||
A9F169AC109E825000FC83D1 /* mpg123.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = A9F169A6109E824900FC83D1 /* mpg123.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
|
||||
A9F169AD109E825000FC83D1 /* libmodplug.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = A9F16926109E7BAD00FC83D1 /* libmodplug.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
|
||||
CE73F8001EEB64150052DAB3 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CE73F7FF1EEB64150052DAB3 /* AVFoundation.framework */; };
|
||||
FA0797991BF480A200034B7C /* GameController.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA0797981BF480A200034B7C /* GameController.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
FA08F69616C766E000F007B5 /* love.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA08F69116C765A200F007B5 /* love.framework */; };
|
||||
FA08F69716C766E700F007B5 /* love.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = FA08F69116C765A200F007B5 /* love.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
|
||||
FA0B7F301A95AC7D000E1D17 /* love.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A93E6A3410420AC0007D418B /* love.cpp */; };
|
||||
FA27B3CB1B498696008A9DCE /* Theora.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA27B3CA1B498696008A9DCE /* Theora.framework */; };
|
||||
FA15DFB41F9B8D9E0042AB22 /* libbz2.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = FA15DFB31F9B8D9E0042AB22 /* libbz2.tbd */; };
|
||||
FA27B3CB1B498696008A9DCE /* theora.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA27B3CA1B498696008A9DCE /* theora.framework */; };
|
||||
FA5933751C6D625B000EC779 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FA5D249A1A96CF4300C6FC8F /* Images.xcassets */; };
|
||||
FA5D24821A96CA1800C6FC8F /* OpenAL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA5D24811A96CA1800C6FC8F /* OpenAL.framework */; };
|
||||
FA5D24841A96CA2700C6FC8F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FA5D24831A96CA2700C6FC8F /* OpenGLES.framework */; };
|
||||
@@ -39,7 +39,9 @@
|
||||
FA9B4A0B16E157B500074F42 /* SDL2.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = FA9B4A0916E1579F00074F42 /* SDL2.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
|
||||
FAAFF04716CB120000CCDE45 /* OpenAL-Soft.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = FAAFF04616CB120000CCDE45 /* OpenAL-Soft.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
|
||||
FAC1A449196F5DC600125284 /* license.txt in Resources */ = {isa = PBXBuildFile; fileRef = FAC1A448196F5DC600125284 /* license.txt */; };
|
||||
FAD4B1731C1F50A3004CF150 /* Theora.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = FA27B3CA1B498696008A9DCE /* Theora.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
|
||||
FAD43ED01FF3136500831BB8 /* freetype.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = FAD43ECF1FF3133700831BB8 /* freetype.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||
FAD4B1731C1F50A3004CF150 /* theora.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = FA27B3CA1B498696008A9DCE /* theora.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
|
||||
FAE64A9D2072738600BC7981 /* Metal.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FAE64A9C2072738600BC7981 /* Metal.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXContainerItemProxy section */
|
||||
@@ -82,14 +84,13 @@
|
||||
files = (
|
||||
FA08F69716C766E700F007B5 /* love.framework in Copy Frameworks */,
|
||||
FA9B4A0B16E157B500074F42 /* SDL2.framework in Copy Frameworks */,
|
||||
FAD4B1731C1F50A3004CF150 /* Theora.framework in Copy Frameworks */,
|
||||
FAD4B1731C1F50A3004CF150 /* theora.framework in Copy Frameworks */,
|
||||
FAAFF04716CB120000CCDE45 /* OpenAL-Soft.framework in Copy Frameworks */,
|
||||
FAD43ED01FF3136500831BB8 /* freetype.framework in Copy Frameworks */,
|
||||
A9F169AC109E825000FC83D1 /* mpg123.framework in Copy Frameworks */,
|
||||
A9F169AD109E825000FC83D1 /* libmodplug.framework in Copy Frameworks */,
|
||||
A9D307F2106635D3004FEDF8 /* physfs.framework in Copy Frameworks */,
|
||||
A9255F58104324E100BA1496 /* Ogg.framework in Copy Frameworks */,
|
||||
A9255E031043195A00BA1496 /* Vorbis.framework in Copy Frameworks */,
|
||||
A9255DD11043183600BA1496 /* FreeType.framework in Copy Frameworks */,
|
||||
A9255F58104324E100BA1496 /* ogg.framework in Copy Frameworks */,
|
||||
A9255E031043195A00BA1496 /* vorbis.framework in Copy Frameworks */,
|
||||
A9255DD31043183600BA1496 /* Lua.framework in Copy Frameworks */,
|
||||
);
|
||||
name = "Copy Frameworks";
|
||||
@@ -100,20 +101,20 @@
|
||||
/* Begin PBXFileReference section */
|
||||
1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
|
||||
8D1107320486CEB800E47090 /* love.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = love.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
A9255E021043195A00BA1496 /* Vorbis.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Vorbis.framework; path = /Library/Frameworks/Vorbis.framework; sourceTree = "<absolute>"; };
|
||||
A9255F51104324D700BA1496 /* Ogg.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Ogg.framework; path = /Library/Frameworks/Ogg.framework; sourceTree = "<absolute>"; };
|
||||
A9255E021043195A00BA1496 /* vorbis.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = vorbis.framework; path = /Library/Frameworks/vorbis.framework; sourceTree = "<absolute>"; };
|
||||
A9255F51104324D700BA1496 /* ogg.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ogg.framework; path = /Library/Frameworks/ogg.framework; sourceTree = "<absolute>"; };
|
||||
A93E6A3410420AC0007D418B /* love.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = love.cpp; path = ../../src/love.cpp; sourceTree = "<group>"; };
|
||||
A93E6E4710420B4A007D418B /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = "<absolute>"; };
|
||||
A93E6E4810420B4A007D418B /* FreeType.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = FreeType.framework; path = /Library/Frameworks/FreeType.framework; sourceTree = "<absolute>"; };
|
||||
A93E6E5310420B57007D418B /* Lua.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Lua.framework; path = /Library/Frameworks/Lua.framework; sourceTree = "<absolute>"; };
|
||||
A97E3842132A9EDE00198A2F /* love-macosx.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = "love-macosx.plist"; path = "macosx/love-macosx.plist"; sourceTree = "<group>"; };
|
||||
A9D307E9106635C3004FEDF8 /* physfs.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = physfs.framework; path = /Library/Frameworks/physfs.framework; sourceTree = "<absolute>"; };
|
||||
A9F16926109E7BAD00FC83D1 /* libmodplug.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = libmodplug.framework; path = /Library/Frameworks/libmodplug.framework; sourceTree = "<absolute>"; };
|
||||
A9F169A6109E824900FC83D1 /* mpg123.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = mpg123.framework; path = /Library/Frameworks/mpg123.framework; sourceTree = "<absolute>"; };
|
||||
CE73F7FF1EEB64150052DAB3 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.3.sdk/System/Library/Frameworks/AVFoundation.framework; sourceTree = DEVELOPER_DIR; };
|
||||
FA0797981BF480A200034B7C /* GameController.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GameController.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.1.sdk/System/Library/Frameworks/GameController.framework; sourceTree = DEVELOPER_DIR; };
|
||||
FA08F69116C765A200F007B5 /* love.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = love.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
FA0B7F061A95AAF3000E1D17 /* love.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = love.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
FA27B3CA1B498696008A9DCE /* Theora.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Theora.framework; path = /Library/Frameworks/Theora.framework; sourceTree = "<absolute>"; };
|
||||
FA15DFB31F9B8D9E0042AB22 /* libbz2.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libbz2.tbd; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.0.sdk/usr/lib/libbz2.tbd; sourceTree = DEVELOPER_DIR; };
|
||||
FA27B3CA1B498696008A9DCE /* theora.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = theora.framework; path = /Library/Frameworks/theora.framework; sourceTree = "<absolute>"; };
|
||||
FA577A9316C7217800860150 /* liblove.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; path = liblove.xcodeproj; sourceTree = "<group>"; };
|
||||
FA5D24811A96CA1800C6FC8F /* OpenAL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenAL.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.1.sdk/System/Library/Frameworks/OpenAL.framework; sourceTree = DEVELOPER_DIR; };
|
||||
FA5D24831A96CA2700C6FC8F /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.1.sdk/System/Library/Frameworks/OpenGLES.framework; sourceTree = DEVELOPER_DIR; };
|
||||
@@ -130,6 +131,8 @@
|
||||
FA9B4A0916E1579F00074F42 /* SDL2.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SDL2.framework; path = /Library/Frameworks/SDL2.framework; sourceTree = "<absolute>"; };
|
||||
FAAFF04616CB120000CCDE45 /* OpenAL-Soft.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = "OpenAL-Soft.framework"; path = "/Library/Frameworks/OpenAL-Soft.framework"; sourceTree = "<absolute>"; };
|
||||
FAC1A448196F5DC600125284 /* license.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = license.txt; path = ../../license.txt; sourceTree = "<group>"; };
|
||||
FAD43ECF1FF3133700831BB8 /* freetype.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = freetype.framework; path = /Library/Frameworks/freetype.framework; sourceTree = "<absolute>"; };
|
||||
FAE64A9C2072738600BC7981 /* Metal.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Metal.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.2.sdk/System/Library/Frameworks/Metal.framework; sourceTree = DEVELOPER_DIR; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
@@ -140,7 +143,7 @@
|
||||
FA08F69616C766E000F007B5 /* love.framework in Frameworks */,
|
||||
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */,
|
||||
A93E6E5510420B57007D418B /* Lua.framework in Frameworks */,
|
||||
FA27B3CB1B498696008A9DCE /* Theora.framework in Frameworks */,
|
||||
FA27B3CB1B498696008A9DCE /* theora.framework in Frameworks */,
|
||||
FA9B4A0A16E1579F00074F42 /* SDL2.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
@@ -149,6 +152,9 @@
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
FAE64A9D2072738600BC7981 /* Metal.framework in Frameworks */,
|
||||
FA15DFB41F9B8D9E0042AB22 /* libbz2.tbd in Frameworks */,
|
||||
CE73F8001EEB64150052DAB3 /* AVFoundation.framework in Frameworks */,
|
||||
FA5D24D11A96E73300C6FC8F /* liblove.a in Frameworks */,
|
||||
FA5D24C21A96D78000C6FC8F /* Foundation.framework in Frameworks */,
|
||||
FA5D24961A96CAC200C6FC8F /* CoreMotion.framework in Frameworks */,
|
||||
@@ -169,6 +175,9 @@
|
||||
1058C7A0FEA54F0111CA2CBB /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
FAE64A9C2072738600BC7981 /* Metal.framework */,
|
||||
FA15DFB31F9B8D9E0042AB22 /* libbz2.tbd */,
|
||||
CE73F7FF1EEB64150052DAB3 /* AVFoundation.framework */,
|
||||
FA5D24801A96C97900C6FC8F /* ios */,
|
||||
FA0B7EEC1A959249000E1D17 /* macosx */,
|
||||
);
|
||||
@@ -219,19 +228,18 @@
|
||||
FA0B7EEC1A959249000E1D17 /* macosx */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
FA27B3CA1B498696008A9DCE /* Theora.framework */,
|
||||
1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */,
|
||||
A93E6E4810420B4A007D418B /* FreeType.framework */,
|
||||
FAD43ECF1FF3133700831BB8 /* freetype.framework */,
|
||||
A9F16926109E7BAD00FC83D1 /* libmodplug.framework */,
|
||||
FA08F69116C765A200F007B5 /* love.framework */,
|
||||
A93E6E5310420B57007D418B /* Lua.framework */,
|
||||
A9F169A6109E824900FC83D1 /* mpg123.framework */,
|
||||
A9255F51104324D700BA1496 /* Ogg.framework */,
|
||||
A9255F51104324D700BA1496 /* ogg.framework */,
|
||||
FAAFF04616CB120000CCDE45 /* OpenAL-Soft.framework */,
|
||||
A93E6E4710420B4A007D418B /* OpenGL.framework */,
|
||||
A9D307E9106635C3004FEDF8 /* physfs.framework */,
|
||||
FA9B4A0916E1579F00074F42 /* SDL2.framework */,
|
||||
A9255E021043195A00BA1496 /* Vorbis.framework */,
|
||||
FA27B3CA1B498696008A9DCE /* theora.framework */,
|
||||
A9255E021043195A00BA1496 /* vorbis.framework */,
|
||||
);
|
||||
name = macosx;
|
||||
sourceTree = "<group>";
|
||||
@@ -318,7 +326,7 @@
|
||||
29B97313FDCFA39411CA2CEA /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0700;
|
||||
LastUpgradeCheck = 0920;
|
||||
TargetAttributes = {
|
||||
FA0B7F051A95AAF3000E1D17 = {
|
||||
CreatedOnToolsVersion = 6.1.1;
|
||||
@@ -430,6 +438,7 @@
|
||||
COMBINE_HIDPI_IMAGES = YES;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(PROJECT_DIR)/macosx/Frameworks",
|
||||
/Library/Frameworks,
|
||||
"\"$(SRCROOT)/build/Release\"",
|
||||
"\"$(SRCROOT)/build/Debug\"",
|
||||
@@ -439,6 +448,8 @@
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(PROJECT_DIR)/macosx/Frameworks/Lua.framework/Headers",
|
||||
"$(PROJECT_DIR)/macosx/Frameworks/SDL2.framework/Headers",
|
||||
/Library/Frameworks/Lua.framework/Headers,
|
||||
/Library/Frameworks/SDL2.framework/Headers,
|
||||
);
|
||||
@@ -458,6 +469,7 @@
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(PROJECT_DIR)/macosx/Frameworks",
|
||||
/Library/Frameworks,
|
||||
"\"$(SRCROOT)/build/Release\"",
|
||||
"\"$(SRCROOT)/build/Debug\"",
|
||||
@@ -465,6 +477,8 @@
|
||||
);
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(PROJECT_DIR)/macosx/Frameworks/Lua.framework/Headers",
|
||||
"$(PROJECT_DIR)/macosx/Frameworks/SDL2.framework/Headers",
|
||||
/Library/Frameworks/Lua.framework/Headers,
|
||||
/Library/Frameworks/SDL2.framework/Headers,
|
||||
);
|
||||
@@ -480,16 +494,35 @@
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "c++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
FRAMEWORK_SEARCH_PATHS = "";
|
||||
GCC_INCREASE_PRECOMPILED_HEADER_SHARING = YES;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = LOVE_APPLE_USE_FRAMEWORKS;
|
||||
GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = NO;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = NO;
|
||||
GCC_WARN_ABOUT_MISSING_NEWLINE = NO;
|
||||
GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
|
||||
GCC_WARN_ABOUT_POINTER_SIGNEDNESS = YES;
|
||||
@@ -504,6 +537,9 @@
|
||||
GCC_WARN_SHADOW = NO;
|
||||
GCC_WARN_SIGN_COMPARE = YES;
|
||||
GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"\"$(SRCROOT)/../../src\"",
|
||||
@@ -511,7 +547,7 @@
|
||||
"\"$(SRCROOT)/../../src/modules\"",
|
||||
);
|
||||
INFOPLIST_FILE = "love-Info.plist";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 6.0;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "@loader_path/../Frameworks";
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.7;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
@@ -535,16 +571,35 @@
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "c++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
DEPLOYMENT_POSTPROCESSING = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
FRAMEWORK_SEARCH_PATHS = "";
|
||||
GCC_INPUT_FILETYPE = automatic;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 3;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = LOVE_APPLE_USE_FRAMEWORKS;
|
||||
GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = NO;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = NO;
|
||||
GCC_WARN_ABOUT_MISSING_NEWLINE = NO;
|
||||
GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
|
||||
GCC_WARN_ABOUT_POINTER_SIGNEDNESS = YES;
|
||||
@@ -559,6 +614,9 @@
|
||||
GCC_WARN_SHADOW = NO;
|
||||
GCC_WARN_SIGN_COMPARE = YES;
|
||||
GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_PARAMETER = NO;
|
||||
GCC_WARN_UNUSED_VALUE = NO;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
@@ -568,7 +626,7 @@
|
||||
"\"$(SRCROOT)/../../src/modules\"",
|
||||
);
|
||||
INFOPLIST_FILE = "love-Info.plist";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 6.0;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "@loader_path/../Frameworks";
|
||||
LLVM_LTO = YES;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.7;
|
||||
@@ -609,6 +667,10 @@
|
||||
COPY_PHASE_STRIP = NO;
|
||||
ENABLE_BITCODE = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(PROJECT_DIR)",
|
||||
);
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
"DEBUG=1",
|
||||
@@ -627,7 +689,6 @@
|
||||
ios/include/SDL2,
|
||||
);
|
||||
INFOPLIST_FILE = "$(SRCROOT)/ios/love-ios.plist";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 6.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = org.love2d.love;
|
||||
@@ -658,6 +719,10 @@
|
||||
ENABLE_BITCODE = NO;
|
||||
ENABLE_NS_ASSERTIONS = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(PROJECT_DIR)",
|
||||
);
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
@@ -670,7 +735,6 @@
|
||||
ios/include/SDL2,
|
||||
);
|
||||
INFOPLIST_FILE = "$(SRCROOT)/ios/love-ios.plist";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 6.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = org.love2d.love;
|
||||
@@ -702,6 +766,10 @@
|
||||
ENABLE_BITCODE = NO;
|
||||
ENABLE_NS_ASSERTIONS = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(PROJECT_DIR)",
|
||||
);
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
@@ -714,7 +782,6 @@
|
||||
ios/include/SDL2,
|
||||
);
|
||||
INFOPLIST_FILE = "$(SRCROOT)/ios/love-ios.plist";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 6.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = org.love2d.love;
|
||||
@@ -730,16 +797,35 @@
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "c++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
DEPLOYMENT_POSTPROCESSING = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
FRAMEWORK_SEARCH_PATHS = "";
|
||||
GCC_INPUT_FILETYPE = automatic;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 3;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = LOVE_APPLE_USE_FRAMEWORKS;
|
||||
GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = NO;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = NO;
|
||||
GCC_WARN_ABOUT_MISSING_NEWLINE = NO;
|
||||
GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
|
||||
GCC_WARN_ABOUT_POINTER_SIGNEDNESS = YES;
|
||||
@@ -754,6 +840,9 @@
|
||||
GCC_WARN_SHADOW = NO;
|
||||
GCC_WARN_SIGN_COMPARE = YES;
|
||||
GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = NO;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_PARAMETER = NO;
|
||||
GCC_WARN_UNUSED_VALUE = NO;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
@@ -763,7 +852,7 @@
|
||||
"\"$(SRCROOT)/../../src/modules\"",
|
||||
);
|
||||
INFOPLIST_FILE = "love-Info.plist";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 6.0;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "@loader_path/../Frameworks";
|
||||
LLVM_LTO = YES;
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.7;
|
||||
@@ -793,6 +882,7 @@
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(PROJECT_DIR)/macosx/Frameworks",
|
||||
/Library/Frameworks,
|
||||
"\"$(SRCROOT)/build/Release\"",
|
||||
"\"$(SRCROOT)/build/Debug\"",
|
||||
@@ -800,6 +890,8 @@
|
||||
);
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(PROJECT_DIR)/macosx/Frameworks/Lua.framework/Headers",
|
||||
"$(PROJECT_DIR)/macosx/Frameworks/SDL2.framework/Headers",
|
||||
/Library/Frameworks/Lua.framework/Headers,
|
||||
/Library/Frameworks/SDL2.framework/Headers,
|
||||
);
|
||||
|
||||
+5
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict/>
|
||||
</plist>
|
||||
@@ -17,7 +17,7 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>0.10.1</string>
|
||||
<string>11.1</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>LoVe</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>0.10.2</string>
|
||||
<string>11.1</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>LoVe</string>
|
||||
<key>LSApplicationCategoryType</key>
|
||||
@@ -70,9 +70,11 @@
|
||||
<key>NSHighResolutionCapable</key>
|
||||
<true/>
|
||||
<key>NSHumanReadableCopyright</key>
|
||||
<string>© 2006-2016 LÖVE Development Team</string>
|
||||
<string>© 2006-2018 LÖVE Development Team</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string>NSApplication</string>
|
||||
<key>NSSupportsAutomaticGraphicsSwitching</key>
|
||||
<false/>
|
||||
<key>UTExportedTypeDeclarations</key>
|
||||
<array>
|
||||
<dict>
|
||||
|
||||
@@ -21,6 +21,8 @@ Run `platform/unix/automagic` from the repository root, then run ./configure and
|
||||
$ ./configure
|
||||
$ make
|
||||
|
||||
When using a source release, automagic has already been run, and the first step can be skipped.
|
||||
|
||||
###Mac OS X
|
||||
Download the required frameworks from [here][dependencies] and place them in `/Library/Frameworks/`.
|
||||
|
||||
|
||||
+39
-7
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2011 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -18,13 +18,11 @@
|
||||
* 3. This notice may not be removed or altered from any source distribution.
|
||||
**/
|
||||
|
||||
#ifndef LOVE_GRAPHICS_COLOR_H
|
||||
#define LOVE_GRAPHICS_COLOR_H
|
||||
#ifndef LOVE_COLOR_H
|
||||
#define LOVE_COLOR_H
|
||||
|
||||
namespace love
|
||||
{
|
||||
namespace graphics
|
||||
{
|
||||
|
||||
template <typename T>
|
||||
struct ColorT
|
||||
@@ -48,6 +46,7 @@ struct ColorT
|
||||
bool operator!=(const ColorT<T> &other) const;
|
||||
|
||||
ColorT<T> operator+=(const ColorT<T> &other);
|
||||
ColorT<T> operator*=(const ColorT<T> &other);
|
||||
ColorT<T> operator*=(T s);
|
||||
ColorT<T> operator/=(T s);
|
||||
};
|
||||
@@ -74,6 +73,16 @@ ColorT<T> ColorT<T>::operator+=(const ColorT<T> &other)
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
ColorT<T> ColorT<T>::operator*=(const ColorT<T> &other)
|
||||
{
|
||||
r *= other.r;
|
||||
g *= other.g;
|
||||
b *= other.b;
|
||||
a *= other.a;
|
||||
return *this;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
ColorT<T> ColorT<T>::operator*=(T s)
|
||||
{
|
||||
@@ -101,6 +110,17 @@ ColorT<T> operator+(const ColorT<T> &a, const ColorT<T> &b)
|
||||
return tmp += b;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
ColorT<T> operator*(const ColorT<T> &a, const ColorT<T> &b)
|
||||
{
|
||||
ColorT<T> res;
|
||||
res.r = a.r * b.r;
|
||||
res.g = a.g * b.g;
|
||||
res.b = a.b * b.b;
|
||||
res.a = a.a * b.a;
|
||||
return res;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
ColorT<T> operator*(const ColorT<T> &a, T s)
|
||||
{
|
||||
@@ -118,7 +138,19 @@ ColorT<T> operator/(const ColorT<T> &a, T s)
|
||||
typedef ColorT<unsigned char> Color;
|
||||
typedef ColorT<float> Colorf;
|
||||
|
||||
} // graphics
|
||||
inline Color toColor(Colorf cf)
|
||||
{
|
||||
return Color((unsigned char) (cf.r * 255.0f),
|
||||
(unsigned char) (cf.g * 255.0f),
|
||||
(unsigned char) (cf.b * 255.0f),
|
||||
(unsigned char) (cf.a * 255.0f));
|
||||
}
|
||||
|
||||
inline Colorf toColorf(Color c)
|
||||
{
|
||||
return Colorf(c.r / 255.0f, c.g / 255.0f, c.b / 255.0f, c.a / 255.0f);
|
||||
}
|
||||
|
||||
} // love
|
||||
|
||||
#endif // LOVE_GRAPHICS_COLOR_H
|
||||
#endif // LOVE_COLOR_H
|
||||
@@ -0,0 +1,29 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
* arising from the use of this software.
|
||||
*
|
||||
* Permission is granted to anyone to use this software for any purpose,
|
||||
* including commercial applications, and to alter it and redistribute it
|
||||
* freely, subject to the following restrictions:
|
||||
*
|
||||
* 1. The origin of this software must not be misrepresented; you must not
|
||||
* claim that you wrote the original software. If you use this software
|
||||
* in a product, an acknowledgment in the product documentation would be
|
||||
* appreciated but is not required.
|
||||
* 2. Altered source versions must be plainly marked as such, and must not be
|
||||
* misrepresented as being the original software.
|
||||
* 3. This notice may not be removed or altered from any source distribution.
|
||||
**/
|
||||
|
||||
// LOVE
|
||||
#include "Data.h"
|
||||
|
||||
namespace love
|
||||
{
|
||||
|
||||
love::Type Data::type("Data", &Object::type);
|
||||
|
||||
} // love
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -38,11 +38,17 @@ class Data : public Object
|
||||
{
|
||||
public:
|
||||
|
||||
static love::Type type;
|
||||
|
||||
/**
|
||||
* Destructor.
|
||||
**/
|
||||
virtual ~Data() {}
|
||||
|
||||
/**
|
||||
* Creates a duplicate of Data derived class instance.
|
||||
**/
|
||||
virtual Data *clone() const = 0;
|
||||
/**
|
||||
* Gets a pointer to the data. This pointer will obviously not
|
||||
* be valid if the Data object is destroyed.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -19,38 +19,19 @@
|
||||
**/
|
||||
|
||||
#include "Matrix.h"
|
||||
#include "common/config.h"
|
||||
|
||||
// STD
|
||||
#include <cstring> // memcpy
|
||||
#include <cmath>
|
||||
|
||||
#if defined(LOVE_SIMD_SSE)
|
||||
#include <xmmintrin.h>
|
||||
#endif
|
||||
|
||||
namespace love
|
||||
{
|
||||
|
||||
// | e0 e4 e8 e12 |
|
||||
// | e1 e5 e9 e13 |
|
||||
// | e2 e6 e10 e14 |
|
||||
// | e3 e7 e11 e15 |
|
||||
|
||||
Matrix4::Matrix4()
|
||||
{
|
||||
setIdentity();
|
||||
}
|
||||
|
||||
Matrix4::Matrix4(float t00, float t10, float t01, float t11, float x, float y)
|
||||
{
|
||||
setRawTransformation(t00, t10, t01, t11, x, y);
|
||||
}
|
||||
|
||||
Matrix4::Matrix4(float x, float y, float angle, float sx, float sy, float ox, float oy, float kx, float ky)
|
||||
{
|
||||
setTransformation(x, y, angle, sx, sy, ox, oy, kx, ky);
|
||||
}
|
||||
|
||||
Matrix4::~Matrix4()
|
||||
{
|
||||
}
|
||||
|
||||
// | e0 e4 e8 e12 |
|
||||
// | e1 e5 e9 e13 |
|
||||
// | e2 e6 e10 e14 |
|
||||
@@ -60,37 +41,106 @@ Matrix4::~Matrix4()
|
||||
// | e2 e6 e10 e14 |
|
||||
// | e3 e7 e11 e15 |
|
||||
|
||||
void Matrix4::multiply(const Matrix4 &a, const Matrix4 &b, float t[16])
|
||||
{
|
||||
// NOTE: in my testing with ARM NEON instructions (on an iPhone 6 with arm64)
|
||||
// it performed slightly worse than the regular add/multiply code. Further
|
||||
// investigation would be useful.
|
||||
#if defined(LOVE_SIMD_SSE)
|
||||
|
||||
// We can't guarantee 16-bit alignment (e.g. for heap-allocated Matrix4
|
||||
// objects) so we use unaligned loads and stores.
|
||||
__m128 col1 = _mm_loadu_ps(&a.e[0]);
|
||||
__m128 col2 = _mm_loadu_ps(&a.e[4]);
|
||||
__m128 col3 = _mm_loadu_ps(&a.e[8]);
|
||||
__m128 col4 = _mm_loadu_ps(&a.e[12]);
|
||||
|
||||
for (int i = 0; i < 4; i++)
|
||||
{
|
||||
__m128 brod1 = _mm_set1_ps(b.e[4*i + 0]);
|
||||
__m128 brod2 = _mm_set1_ps(b.e[4*i + 1]);
|
||||
__m128 brod3 = _mm_set1_ps(b.e[4*i + 2]);
|
||||
__m128 brod4 = _mm_set1_ps(b.e[4*i + 3]);
|
||||
|
||||
__m128 col = _mm_add_ps(
|
||||
_mm_add_ps(_mm_mul_ps(brod1, col1), _mm_mul_ps(brod2, col2)),
|
||||
_mm_add_ps(_mm_mul_ps(brod3, col3), _mm_mul_ps(brod4, col4))
|
||||
);
|
||||
|
||||
_mm_storeu_ps(&t[4*i], col);
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
t[0] = (a.e[0]*b.e[0]) + (a.e[4]*b.e[1]) + (a.e[8]*b.e[2]) + (a.e[12]*b.e[3]);
|
||||
t[4] = (a.e[0]*b.e[4]) + (a.e[4]*b.e[5]) + (a.e[8]*b.e[6]) + (a.e[12]*b.e[7]);
|
||||
t[8] = (a.e[0]*b.e[8]) + (a.e[4]*b.e[9]) + (a.e[8]*b.e[10]) + (a.e[12]*b.e[11]);
|
||||
t[12] = (a.e[0]*b.e[12]) + (a.e[4]*b.e[13]) + (a.e[8]*b.e[14]) + (a.e[12]*b.e[15]);
|
||||
|
||||
t[1] = (a.e[1]*b.e[0]) + (a.e[5]*b.e[1]) + (a.e[9]*b.e[2]) + (a.e[13]*b.e[3]);
|
||||
t[5] = (a.e[1]*b.e[4]) + (a.e[5]*b.e[5]) + (a.e[9]*b.e[6]) + (a.e[13]*b.e[7]);
|
||||
t[9] = (a.e[1]*b.e[8]) + (a.e[5]*b.e[9]) + (a.e[9]*b.e[10]) + (a.e[13]*b.e[11]);
|
||||
t[13] = (a.e[1]*b.e[12]) + (a.e[5]*b.e[13]) + (a.e[9]*b.e[14]) + (a.e[13]*b.e[15]);
|
||||
|
||||
t[2] = (a.e[2]*b.e[0]) + (a.e[6]*b.e[1]) + (a.e[10]*b.e[2]) + (a.e[14]*b.e[3]);
|
||||
t[6] = (a.e[2]*b.e[4]) + (a.e[6]*b.e[5]) + (a.e[10]*b.e[6]) + (a.e[14]*b.e[7]);
|
||||
t[10] = (a.e[2]*b.e[8]) + (a.e[6]*b.e[9]) + (a.e[10]*b.e[10]) + (a.e[14]*b.e[11]);
|
||||
t[14] = (a.e[2]*b.e[12]) + (a.e[6]*b.e[13]) + (a.e[10]*b.e[14]) + (a.e[14]*b.e[15]);
|
||||
|
||||
t[3] = (a.e[3]*b.e[0]) + (a.e[7]*b.e[1]) + (a.e[11]*b.e[2]) + (a.e[15]*b.e[3]);
|
||||
t[7] = (a.e[3]*b.e[4]) + (a.e[7]*b.e[5]) + (a.e[11]*b.e[6]) + (a.e[15]*b.e[7]);
|
||||
t[11] = (a.e[3]*b.e[8]) + (a.e[7]*b.e[9]) + (a.e[11]*b.e[10]) + (a.e[15]*b.e[11]);
|
||||
t[15] = (a.e[3]*b.e[12]) + (a.e[7]*b.e[13]) + (a.e[11]*b.e[14]) + (a.e[15]*b.e[15]);
|
||||
|
||||
#endif
|
||||
}
|
||||
|
||||
void Matrix4::multiply(const Matrix4 &a, const Matrix4 &b, Matrix4 &t)
|
||||
{
|
||||
multiply(a, b, t.e);
|
||||
}
|
||||
|
||||
// | e0 e4 e8 e12 |
|
||||
// | e1 e5 e9 e13 |
|
||||
// | e2 e6 e10 e14 |
|
||||
// | e3 e7 e11 e15 |
|
||||
|
||||
Matrix4::Matrix4()
|
||||
{
|
||||
setIdentity();
|
||||
}
|
||||
|
||||
|
||||
Matrix4::Matrix4(const float elements[16])
|
||||
{
|
||||
memcpy(e, elements, sizeof(float) * 16);
|
||||
}
|
||||
|
||||
Matrix4::Matrix4(float t00, float t10, float t01, float t11, float x, float y)
|
||||
{
|
||||
setRawTransformation(t00, t10, t01, t11, x, y);
|
||||
}
|
||||
|
||||
Matrix4::Matrix4(const Matrix4 &a, const Matrix4 &b)
|
||||
{
|
||||
multiply(a, b, e);
|
||||
}
|
||||
|
||||
Matrix4::Matrix4(float x, float y, float angle, float sx, float sy, float ox, float oy, float kx, float ky)
|
||||
{
|
||||
setTransformation(x, y, angle, sx, sy, ox, oy, kx, ky);
|
||||
}
|
||||
|
||||
Matrix4 Matrix4::operator * (const Matrix4 &m) const
|
||||
{
|
||||
Matrix4 t;
|
||||
|
||||
t.e[0] = (e[0]*m.e[0]) + (e[4]*m.e[1]) + (e[8]*m.e[2]) + (e[12]*m.e[3]);
|
||||
t.e[4] = (e[0]*m.e[4]) + (e[4]*m.e[5]) + (e[8]*m.e[6]) + (e[12]*m.e[7]);
|
||||
t.e[8] = (e[0]*m.e[8]) + (e[4]*m.e[9]) + (e[8]*m.e[10]) + (e[12]*m.e[11]);
|
||||
t.e[12] = (e[0]*m.e[12]) + (e[4]*m.e[13]) + (e[8]*m.e[14]) + (e[12]*m.e[15]);
|
||||
|
||||
t.e[1] = (e[1]*m.e[0]) + (e[5]*m.e[1]) + (e[9]*m.e[2]) + (e[13]*m.e[3]);
|
||||
t.e[5] = (e[1]*m.e[4]) + (e[5]*m.e[5]) + (e[9]*m.e[6]) + (e[13]*m.e[7]);
|
||||
t.e[9] = (e[1]*m.e[8]) + (e[5]*m.e[9]) + (e[9]*m.e[10]) + (e[13]*m.e[11]);
|
||||
t.e[13] = (e[1]*m.e[12]) + (e[5]*m.e[13]) + (e[9]*m.e[14]) + (e[13]*m.e[15]);
|
||||
|
||||
t.e[2] = (e[2]*m.e[0]) + (e[6]*m.e[1]) + (e[10]*m.e[2]) + (e[14]*m.e[3]);
|
||||
t.e[6] = (e[2]*m.e[4]) + (e[6]*m.e[5]) + (e[10]*m.e[6]) + (e[14]*m.e[7]);
|
||||
t.e[10] = (e[2]*m.e[8]) + (e[6]*m.e[9]) + (e[10]*m.e[10]) + (e[14]*m.e[11]);
|
||||
t.e[14] = (e[2]*m.e[12]) + (e[6]*m.e[13]) + (e[10]*m.e[14]) + (e[14]*m.e[15]);
|
||||
|
||||
t.e[3] = (e[3]*m.e[0]) + (e[7]*m.e[1]) + (e[11]*m.e[2]) + (e[15]*m.e[3]);
|
||||
t.e[7] = (e[3]*m.e[4]) + (e[7]*m.e[5]) + (e[11]*m.e[6]) + (e[15]*m.e[7]);
|
||||
t.e[11] = (e[3]*m.e[8]) + (e[7]*m.e[9]) + (e[11]*m.e[10]) + (e[15]*m.e[11]);
|
||||
t.e[15] = (e[3]*m.e[12]) + (e[7]*m.e[13]) + (e[11]*m.e[14]) + (e[15]*m.e[15]);
|
||||
|
||||
return t;
|
||||
return Matrix4(*this, m);
|
||||
}
|
||||
|
||||
void Matrix4::operator *= (const Matrix4 &m)
|
||||
{
|
||||
Matrix4 t = (*this) * m;
|
||||
memcpy(this->e, t.e, sizeof(float)*16);
|
||||
float t[16];
|
||||
multiply(*this, m, t);
|
||||
memcpy(this->e, t, sizeof(float)*16);
|
||||
}
|
||||
|
||||
const float *Matrix4::getElements() const
|
||||
@@ -101,7 +151,7 @@ const float *Matrix4::getElements() const
|
||||
void Matrix4::setIdentity()
|
||||
{
|
||||
memset(e, 0, sizeof(float)*16);
|
||||
e[0] = e[5] = e[10] = e[15] = 1;
|
||||
e[15] = e[10] = e[5] = e[0] = 1;
|
||||
}
|
||||
|
||||
void Matrix4::setTranslation(float x, float y)
|
||||
@@ -134,6 +184,12 @@ void Matrix4::setShear(float kx, float ky)
|
||||
e[1] = ky;
|
||||
e[4] = kx;
|
||||
}
|
||||
|
||||
void Matrix4::getApproximateScale(float &sx, float &sy) const
|
||||
{
|
||||
sx = sqrtf(e[0] * e[0] + e[4] * e[4]);
|
||||
sy = sqrtf(e[1] * e[1] + e[5] * e[5]);
|
||||
}
|
||||
|
||||
void Matrix4::setRawTransformation(float t00, float t10, float t01, float t11, float x, float y)
|
||||
{
|
||||
@@ -194,16 +250,149 @@ void Matrix4::shear(float kx, float ky)
|
||||
this->operator *=(t);
|
||||
}
|
||||
|
||||
Matrix4 Matrix4::ortho(float left, float right, float bottom, float top)
|
||||
bool Matrix4::isAffine2DTransform() const
|
||||
{
|
||||
return fabsf(e[2] + e[3] + e[6] + e[7] + e[8] + e[9] + e[11] + e[14]) < 0.00001f
|
||||
&& fabsf(e[10] + e[15] - 2.0f) < 0.00001f;
|
||||
}
|
||||
|
||||
Matrix4 Matrix4::inverse() const
|
||||
{
|
||||
Matrix4 inv;
|
||||
|
||||
inv.e[0] = e[5] * e[10] * e[15] -
|
||||
e[5] * e[11] * e[14] -
|
||||
e[9] * e[6] * e[15] +
|
||||
e[9] * e[7] * e[14] +
|
||||
e[13] * e[6] * e[11] -
|
||||
e[13] * e[7] * e[10];
|
||||
|
||||
inv.e[4] = -e[4] * e[10] * e[15] +
|
||||
e[4] * e[11] * e[14] +
|
||||
e[8] * e[6] * e[15] -
|
||||
e[8] * e[7] * e[14] -
|
||||
e[12] * e[6] * e[11] +
|
||||
e[12] * e[7] * e[10];
|
||||
|
||||
inv.e[8] = e[4] * e[9] * e[15] -
|
||||
e[4] * e[11] * e[13] -
|
||||
e[8] * e[5] * e[15] +
|
||||
e[8] * e[7] * e[13] +
|
||||
e[12] * e[5] * e[11] -
|
||||
e[12] * e[7] * e[9];
|
||||
|
||||
inv.e[12] = -e[4] * e[9] * e[14] +
|
||||
e[4] * e[10] * e[13] +
|
||||
e[8] * e[5] * e[14] -
|
||||
e[8] * e[6] * e[13] -
|
||||
e[12] * e[5] * e[10] +
|
||||
e[12] * e[6] * e[9];
|
||||
|
||||
inv.e[1] = -e[1] * e[10] * e[15] +
|
||||
e[1] * e[11] * e[14] +
|
||||
e[9] * e[2] * e[15] -
|
||||
e[9] * e[3] * e[14] -
|
||||
e[13] * e[2] * e[11] +
|
||||
e[13] * e[3] * e[10];
|
||||
|
||||
inv.e[5] = e[0] * e[10] * e[15] -
|
||||
e[0] * e[11] * e[14] -
|
||||
e[8] * e[2] * e[15] +
|
||||
e[8] * e[3] * e[14] +
|
||||
e[12] * e[2] * e[11] -
|
||||
e[12] * e[3] * e[10];
|
||||
|
||||
inv.e[9] = -e[0] * e[9] * e[15] +
|
||||
e[0] * e[11] * e[13] +
|
||||
e[8] * e[1] * e[15] -
|
||||
e[8] * e[3] * e[13] -
|
||||
e[12] * e[1] * e[11] +
|
||||
e[12] * e[3] * e[9];
|
||||
|
||||
inv.e[13] = e[0] * e[9] * e[14] -
|
||||
e[0] * e[10] * e[13] -
|
||||
e[8] * e[1] * e[14] +
|
||||
e[8] * e[2] * e[13] +
|
||||
e[12] * e[1] * e[10] -
|
||||
e[12] * e[2] * e[9];
|
||||
|
||||
inv.e[2] = e[1] * e[6] * e[15] -
|
||||
e[1] * e[7] * e[14] -
|
||||
e[5] * e[2] * e[15] +
|
||||
e[5] * e[3] * e[14] +
|
||||
e[13] * e[2] * e[7] -
|
||||
e[13] * e[3] * e[6];
|
||||
|
||||
inv.e[6] = -e[0] * e[6] * e[15] +
|
||||
e[0] * e[7] * e[14] +
|
||||
e[4] * e[2] * e[15] -
|
||||
e[4] * e[3] * e[14] -
|
||||
e[12] * e[2] * e[7] +
|
||||
e[12] * e[3] * e[6];
|
||||
|
||||
inv.e[10] = e[0] * e[5] * e[15] -
|
||||
e[0] * e[7] * e[13] -
|
||||
e[4] * e[1] * e[15] +
|
||||
e[4] * e[3] * e[13] +
|
||||
e[12] * e[1] * e[7] -
|
||||
e[12] * e[3] * e[5];
|
||||
|
||||
inv.e[14] = -e[0] * e[5] * e[14] +
|
||||
e[0] * e[6] * e[13] +
|
||||
e[4] * e[1] * e[14] -
|
||||
e[4] * e[2] * e[13] -
|
||||
e[12] * e[1] * e[6] +
|
||||
e[12] * e[2] * e[5];
|
||||
|
||||
inv.e[3] = -e[1] * e[6] * e[11] +
|
||||
e[1] * e[7] * e[10] +
|
||||
e[5] * e[2] * e[11] -
|
||||
e[5] * e[3] * e[10] -
|
||||
e[9] * e[2] * e[7] +
|
||||
e[9] * e[3] * e[6];
|
||||
|
||||
inv.e[7] = e[0] * e[6] * e[11] -
|
||||
e[0] * e[7] * e[10] -
|
||||
e[4] * e[2] * e[11] +
|
||||
e[4] * e[3] * e[10] +
|
||||
e[8] * e[2] * e[7] -
|
||||
e[8] * e[3] * e[6];
|
||||
|
||||
inv.e[11] = -e[0] * e[5] * e[11] +
|
||||
e[0] * e[7] * e[9] +
|
||||
e[4] * e[1] * e[11] -
|
||||
e[4] * e[3] * e[9] -
|
||||
e[8] * e[1] * e[7] +
|
||||
e[8] * e[3] * e[5];
|
||||
|
||||
inv.e[15] = e[0] * e[5] * e[10] -
|
||||
e[0] * e[6] * e[9] -
|
||||
e[4] * e[1] * e[10] +
|
||||
e[4] * e[2] * e[9] +
|
||||
e[8] * e[1] * e[6] -
|
||||
e[8] * e[2] * e[5];
|
||||
|
||||
float det = e[0] * inv.e[0] + e[1] * inv.e[4] + e[2] * inv.e[8] + e[3] * inv.e[12];
|
||||
|
||||
float invdet = 1.0f / det;
|
||||
|
||||
for (int i = 0; i < 16; i++)
|
||||
inv.e[i] *= invdet;
|
||||
|
||||
return inv;
|
||||
}
|
||||
|
||||
Matrix4 Matrix4::ortho(float left, float right, float bottom, float top, float near, float far)
|
||||
{
|
||||
Matrix4 m;
|
||||
|
||||
m.e[0] = 2.0f / (right - left);
|
||||
m.e[5] = 2.0f / (top - bottom);
|
||||
m.e[10] = -1.0;
|
||||
m.e[10] = -2.0f / (far - near);
|
||||
|
||||
m.e[12] = -(right + left) / (right - left);
|
||||
m.e[13] = -(top + bottom) / (top - bottom);
|
||||
m.e[14] = -(far + near) / (far - near);
|
||||
|
||||
return m;
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -34,8 +34,14 @@ namespace love
|
||||
**/
|
||||
class Matrix4
|
||||
{
|
||||
private:
|
||||
|
||||
static void multiply(const Matrix4 &a, const Matrix4 &b, float t[16]);
|
||||
|
||||
public:
|
||||
|
||||
static void multiply(const Matrix4 &a, const Matrix4 &b, Matrix4 &result);
|
||||
|
||||
/**
|
||||
* Creates a new identity matrix.
|
||||
**/
|
||||
@@ -46,16 +52,23 @@ public:
|
||||
**/
|
||||
Matrix4(float t00, float t10, float t01, float t11, float x, float y);
|
||||
|
||||
/**
|
||||
* Creates a new matrix from the specified elements. Be sure to pass
|
||||
* exactly 16 elements in!
|
||||
**/
|
||||
Matrix4(const float elements[16]);
|
||||
|
||||
/**
|
||||
* Creates a new matrix from the result of multiplying the two specified
|
||||
* matrices.
|
||||
**/
|
||||
Matrix4(const Matrix4 &a, const Matrix4 &b);
|
||||
|
||||
/**
|
||||
* Creates a new matrix set to a transformation.
|
||||
**/
|
||||
Matrix4(float x, float y, float angle, float sx, float sy, float ox, float oy, float kx, float ky);
|
||||
|
||||
/**
|
||||
* Destructor.
|
||||
**/
|
||||
~Matrix4();
|
||||
|
||||
/**
|
||||
* Multiplies this Matrix with another Matrix, changing neither.
|
||||
* @param m The Matrix to multiply with this Matrix.
|
||||
@@ -106,6 +119,12 @@ public:
|
||||
* @param ky Shear along y-axis.
|
||||
**/
|
||||
void setShear(float kx, float ky);
|
||||
|
||||
/**
|
||||
* Calculates the scale factors for a 2D affine transform. The output values
|
||||
* are absolute (not signed).
|
||||
**/
|
||||
void getApproximateScale(float &sx, float &sy) const;
|
||||
|
||||
/**
|
||||
* Sets a transformation's values directly. Useful if you want to modify them inplace,
|
||||
@@ -166,21 +185,42 @@ public:
|
||||
void shear(float kx, float ky);
|
||||
|
||||
/**
|
||||
* Transforms an array of vertices by this Matrix. The sources and
|
||||
* destination arrays may be the same.
|
||||
*
|
||||
* @param dst Storage for the transformed vertices.
|
||||
* @param src The source vertices.
|
||||
* @param size The number of vertices.
|
||||
* Transforms an array of 2-component vertices by this Matrix. The source
|
||||
* and destination arrays may be the same.
|
||||
**/
|
||||
template <typename V>
|
||||
void transform(V *dst, const V *src, int size) const;
|
||||
template <typename Vdst, typename Vsrc>
|
||||
void transformXY(Vdst *dst, const Vsrc *src, int size) const;
|
||||
|
||||
/**
|
||||
* Creates a new orthographic projection matrix with depth in the range of
|
||||
* [-1, 1].
|
||||
* Transforms an array of 2-component vertices by this Matrix, and stores
|
||||
* them in an array of 3-component vertices.
|
||||
**/
|
||||
static Matrix4 ortho(float left, float right, float bottom, float top);
|
||||
template <typename Vdst, typename Vsrc>
|
||||
void transformXY0(Vdst *dst, const Vsrc *src, int size) const;
|
||||
|
||||
/**
|
||||
* Transforms an array of 3-component vertices by this Matrix. The source
|
||||
* and destination arrays may be the same.
|
||||
**/
|
||||
template <typename Vdst, typename Vsrc>
|
||||
void transformXYZ(Vdst *dst, const Vsrc *src, int size) const;
|
||||
|
||||
/**
|
||||
* Gets whether this matrix is an affine 2D transform (if the only non-
|
||||
* identity elements are the upper-left 2x2 and 2 translation values in the
|
||||
* 4th column).
|
||||
**/
|
||||
bool isAffine2DTransform() const;
|
||||
|
||||
/**
|
||||
* Computes and returns the inverse of the matrix.
|
||||
**/
|
||||
Matrix4 inverse() const;
|
||||
|
||||
/**
|
||||
* Creates a new orthographic projection matrix.
|
||||
**/
|
||||
static Matrix4 ortho(float left, float right, float bottom, float top, float near, float far);
|
||||
|
||||
private:
|
||||
|
||||
@@ -249,8 +289,8 @@ public:
|
||||
/**
|
||||
* Transforms an array of vertices by this matrix.
|
||||
**/
|
||||
template <typename V>
|
||||
void transform(V *dst, const V *src, int size) const;
|
||||
template <typename Vdst, typename Vsrc>
|
||||
void transformXY(Vdst *dst, const Vsrc *src, int size) const;
|
||||
|
||||
private:
|
||||
|
||||
@@ -272,8 +312,8 @@ private:
|
||||
// | e2 e6 e10 e14 |
|
||||
// | e3 e7 e11 e15 |
|
||||
|
||||
template <typename V>
|
||||
void Matrix4::transform(V *dst, const V *src, int size) const
|
||||
template <typename Vdst, typename Vsrc>
|
||||
void Matrix4::transformXY(Vdst *dst, const Vsrc *src, int size) const
|
||||
{
|
||||
for (int i = 0; i < size; i++)
|
||||
{
|
||||
@@ -286,14 +326,55 @@ void Matrix4::transform(V *dst, const V *src, int size) const
|
||||
}
|
||||
}
|
||||
|
||||
template <typename Vdst, typename Vsrc>
|
||||
void Matrix4::transformXY0(Vdst *dst, const Vsrc *src, int size) const
|
||||
{
|
||||
for (int i = 0; i < size; i++)
|
||||
{
|
||||
// Store in temp variables in case src = dst
|
||||
float x = (e[0]*src[i].x) + (e[4]*src[i].y) + (0) + (e[12]);
|
||||
float y = (e[1]*src[i].x) + (e[5]*src[i].y) + (0) + (e[13]);
|
||||
float z = (e[2]*src[i].x) + (e[6]*src[i].y) + (0) + (e[14]);
|
||||
|
||||
dst[i].x = x;
|
||||
dst[i].y = y;
|
||||
dst[i].z = z;
|
||||
}
|
||||
}
|
||||
|
||||
// | x |
|
||||
// | y |
|
||||
// | z |
|
||||
// | 1 |
|
||||
// | e0 e4 e8 e12 |
|
||||
// | e1 e5 e9 e13 |
|
||||
// | e2 e6 e10 e14 |
|
||||
// | e3 e7 e11 e15 |
|
||||
|
||||
template <typename Vdst, typename Vsrc>
|
||||
void Matrix4::transformXYZ(Vdst *dst, const Vsrc *src, int size) const
|
||||
{
|
||||
for (int i = 0; i < size; i++)
|
||||
{
|
||||
// Store in temp variables in case src = dst
|
||||
float x = (e[0]*src[i].x) + (e[4]*src[i].y) + (e[ 8]*src[i].z) + (e[12]);
|
||||
float y = (e[1]*src[i].x) + (e[5]*src[i].y) + (e[ 9]*src[i].z) + (e[13]);
|
||||
float z = (e[2]*src[i].x) + (e[6]*src[i].y) + (e[10]*src[i].z) + (e[14]);
|
||||
|
||||
dst[i].x = x;
|
||||
dst[i].y = y;
|
||||
dst[i].z = z;
|
||||
}
|
||||
}
|
||||
|
||||
// | x |
|
||||
// | y |
|
||||
// | 1 |
|
||||
// | e0 e3 e6 |
|
||||
// | e1 e4 e7 |
|
||||
// | e2 e5 e8 |
|
||||
template <typename V>
|
||||
void Matrix3::transform(V *dst, const V *src, int size) const
|
||||
template <typename Vdst, typename Vsrc>
|
||||
void Matrix3::transformXY(Vdst *dst, const Vsrc *src, int size) const
|
||||
{
|
||||
for (int i = 0; i < size; i++)
|
||||
{
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -21,6 +21,7 @@
|
||||
// LOVE
|
||||
#include "Module.h"
|
||||
#include "Exception.h"
|
||||
#include "deprecation.h"
|
||||
|
||||
// std
|
||||
#include <map>
|
||||
@@ -58,8 +59,14 @@ namespace
|
||||
namespace love
|
||||
{
|
||||
|
||||
love::Type Module::type("Module", &Object::type);
|
||||
Module *Module::instances[] = {};
|
||||
|
||||
Module::Module()
|
||||
{
|
||||
initDeprecation();
|
||||
}
|
||||
|
||||
Module::~Module()
|
||||
{
|
||||
ModuleRegistry ®istry = registryInstance();
|
||||
@@ -82,6 +89,8 @@ Module::~Module()
|
||||
}
|
||||
|
||||
freeEmptyRegistry();
|
||||
|
||||
deinitDeprecation();
|
||||
}
|
||||
|
||||
void Module::registerInstance(Module *instance)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -34,9 +34,12 @@ class Module : public Object
|
||||
{
|
||||
public:
|
||||
|
||||
static love::Type type;
|
||||
|
||||
enum ModuleType
|
||||
{
|
||||
M_AUDIO,
|
||||
M_DATA,
|
||||
M_EVENT,
|
||||
M_FILESYSTEM,
|
||||
M_FONT,
|
||||
@@ -52,11 +55,12 @@ public:
|
||||
M_THREAD,
|
||||
M_TIMER,
|
||||
M_TOUCH,
|
||||
M_WINDOW,
|
||||
M_VIDEO,
|
||||
M_WINDOW,
|
||||
M_MAX_ENUM
|
||||
};
|
||||
|
||||
Module();
|
||||
virtual ~Module();
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -24,6 +24,8 @@
|
||||
namespace love
|
||||
{
|
||||
|
||||
love::Type Object::type("Object", nullptr);
|
||||
|
||||
Object::Object()
|
||||
: count(1)
|
||||
{
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -22,6 +22,7 @@
|
||||
#define LOVE_OBJECT_H
|
||||
|
||||
#include <atomic>
|
||||
#include "types.h"
|
||||
|
||||
namespace love
|
||||
{
|
||||
@@ -38,6 +39,8 @@ class Object
|
||||
{
|
||||
public:
|
||||
|
||||
static love::Type type;
|
||||
|
||||
/**
|
||||
* Constructor. Sets reference count to one.
|
||||
**/
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
* arising from the use of this software.
|
||||
*
|
||||
* Permission is granted to anyone to use this software for any purpose,
|
||||
* including commercial applications, and to alter it and redistribute it
|
||||
* freely, subject to the following restrictions:
|
||||
*
|
||||
* 1. The origin of this software must not be misrepresented; you must not
|
||||
* claim that you wrote the original software. If you use this software
|
||||
* in a product, an acknowledgment in the product documentation would be
|
||||
* appreciated but is not required.
|
||||
* 2. Altered source versions must be plainly marked as such, and must not be
|
||||
* misrepresented as being the original software.
|
||||
* 3. This notice may not be removed or altered from any source distribution.
|
||||
**/
|
||||
|
||||
#pragma once
|
||||
|
||||
namespace love
|
||||
{
|
||||
|
||||
// Currently only meant for simple and small types.
|
||||
template <typename T>
|
||||
struct Optional
|
||||
{
|
||||
bool hasValue;
|
||||
T value;
|
||||
|
||||
Optional()
|
||||
: hasValue(false)
|
||||
, value(T())
|
||||
{}
|
||||
|
||||
Optional(T val)
|
||||
: hasValue(true)
|
||||
, value(val)
|
||||
{}
|
||||
|
||||
void set(T val)
|
||||
{
|
||||
hasValue = true;
|
||||
value = val;
|
||||
}
|
||||
};
|
||||
|
||||
typedef Optional<bool> OptionalBool;
|
||||
typedef Optional<float> OptionalFloat;
|
||||
typedef Optional<double> OptionalDouble;
|
||||
typedef Optional<int> OptionalInt;
|
||||
|
||||
} // love
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -45,7 +45,7 @@ Reference::~Reference()
|
||||
|
||||
void Reference::ref(lua_State *L)
|
||||
{
|
||||
unref(); // Just to be safe.
|
||||
unref(); // Previously created reference needs to be cleared
|
||||
pinnedL = luax_getpinnedthread(L);
|
||||
luax_insist(L, LUA_REGISTRYINDEX, REFERENCE_TABLE_NAME);
|
||||
lua_insert(L, -2); // Move reference table behind value.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2015 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
* arising from the use of this software.
|
||||
*
|
||||
* Permission is granted to anyone to use this software for any purpose,
|
||||
* including commercial applications, and to alter it and redistribute it
|
||||
* freely, subject to the following restrictions:
|
||||
*
|
||||
* 1. The origin of this software must not be misrepresented; you must not
|
||||
* claim that you wrote the original software. If you use this software
|
||||
* in a product, an acknowledgment in the product documentation would be
|
||||
* appreciated but is not required.
|
||||
* 2. Altered source versions must be plainly marked as such, and must not be
|
||||
* misrepresented as being the original software.
|
||||
* 3. This notice may not be removed or altered from any source distribution.
|
||||
**/
|
||||
|
||||
// LOVE
|
||||
#include "Stream.h"
|
||||
|
||||
namespace love
|
||||
{
|
||||
|
||||
love::Type Stream::type("Stream", &Object::type);
|
||||
|
||||
} // love
|
||||
@@ -31,6 +31,8 @@ namespace love
|
||||
class Stream : public Object
|
||||
{
|
||||
public:
|
||||
static love::Type type;
|
||||
|
||||
virtual ~Stream() {}
|
||||
|
||||
// getData and getSize are assumed to talk about
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
* arising from the use of this software.
|
||||
*
|
||||
* Permission is granted to anyone to use this software for any purpose,
|
||||
* including commercial applications, and to alter it and redistribute it
|
||||
* freely, subject to the following restrictions:
|
||||
*
|
||||
* 1. The origin of this software must not be misrepresented; you must not
|
||||
* claim that you wrote the original software. If you use this software
|
||||
* in a product, an acknowledgment in the product documentation would be
|
||||
* appreciated but is not required.
|
||||
* 2. Altered source versions must be plainly marked as such, and must not be
|
||||
* misrepresented as being the original software.
|
||||
* 3. This notice may not be removed or altered from any source distribution.
|
||||
**/
|
||||
|
||||
#include "StringMap.h"
|
||||
|
||||
// See the header
|
||||
template class std::vector<std::string>;
|
||||
template decltype(std::vector<std::string>().emplace_back("")) std::vector<std::string>::emplace_back<const char *const&>(const char *const&);
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -23,6 +23,15 @@
|
||||
|
||||
#include "Exception.h"
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
// As StringMap instantiates std::vector<std::string> for instances that use
|
||||
// getNames(), we end up with multiple copies in the object files. This
|
||||
// declaration means we only emit it once (in StringMap.cpp).
|
||||
extern template class std::vector<std::string>;
|
||||
extern template decltype(std::vector<std::string>().emplace_back("")) std::vector<std::string>::emplace_back<const char *const&>(const char *const&);
|
||||
|
||||
namespace love
|
||||
{
|
||||
|
||||
@@ -145,6 +154,18 @@ public:
|
||||
return hash;
|
||||
}
|
||||
|
||||
std::vector<std::string> getNames() const
|
||||
{
|
||||
std::vector<std::string> names;
|
||||
names.reserve(SIZE);
|
||||
|
||||
for (unsigned int i = 0; i < SIZE; ++i)
|
||||
if (reverse[i] != nullptr)
|
||||
names.emplace_back(reverse[i]);
|
||||
|
||||
return names;
|
||||
}
|
||||
|
||||
private:
|
||||
|
||||
struct Record
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -18,25 +18,27 @@
|
||||
* 3. This notice may not be removed or altered from any source distribution.
|
||||
**/
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "Variant.h"
|
||||
#include "common/StringMap.h"
|
||||
|
||||
namespace love
|
||||
{
|
||||
|
||||
static love::Type extractudatatype(lua_State *L, int idx)
|
||||
static Proxy *tryextractproxy(lua_State *L, int idx)
|
||||
{
|
||||
Proxy *u = (Proxy *)lua_touserdata(L, idx);
|
||||
|
||||
if (u == nullptr || u->type <= INVALID_ID || u->type >= TYPE_MAX_ENUM)
|
||||
return INVALID_ID;
|
||||
if (u == nullptr || u->type == nullptr)
|
||||
return nullptr;
|
||||
|
||||
// We could get rid of the dynamic_cast for more performance, but it would
|
||||
// be less safe...
|
||||
if (dynamic_cast<Object *>(u->object) != nullptr)
|
||||
return u->type;
|
||||
return u;
|
||||
|
||||
return INVALID_ID;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
Variant::Variant()
|
||||
@@ -71,24 +73,20 @@ Variant::Variant(const char *string, size_t len)
|
||||
}
|
||||
}
|
||||
|
||||
Variant::Variant(void *userdata)
|
||||
Variant::Variant(void *lightuserdata)
|
||||
: type(LUSERDATA)
|
||||
{
|
||||
data.userdata = userdata;
|
||||
data.userdata = lightuserdata;
|
||||
}
|
||||
|
||||
Variant::Variant(love::Type udatatype, void *userdata)
|
||||
: type(FUSERDATA)
|
||||
, udatatype(udatatype)
|
||||
Variant::Variant(love::Type *lovetype, love::Object *object)
|
||||
: type(LOVEOBJECT)
|
||||
{
|
||||
if (udatatype != INVALID_ID)
|
||||
{
|
||||
Proxy *p = (Proxy *) userdata;
|
||||
data.userdata = p->object;
|
||||
p->object->retain();
|
||||
}
|
||||
else
|
||||
data.userdata = userdata;
|
||||
data.objectproxy.type = lovetype;
|
||||
data.objectproxy.object = object;
|
||||
|
||||
if (data.objectproxy.object != nullptr)
|
||||
data.objectproxy.object->retain();
|
||||
}
|
||||
|
||||
// Variant gets ownership of the vector.
|
||||
@@ -100,20 +98,18 @@ Variant::Variant(std::vector<std::pair<Variant, Variant>> *table)
|
||||
|
||||
Variant::Variant(const Variant &v)
|
||||
: type(v.type)
|
||||
, udatatype(v.udatatype)
|
||||
, data(v.data)
|
||||
{
|
||||
if (type == STRING)
|
||||
data.string->retain();
|
||||
else if (type == FUSERDATA)
|
||||
((love::Object *) data.userdata)->retain();
|
||||
else if (type == LOVEOBJECT && data.objectproxy.object != nullptr)
|
||||
data.objectproxy.object->retain();
|
||||
else if (type == TABLE)
|
||||
data.table->retain();
|
||||
}
|
||||
|
||||
Variant::Variant(Variant &&v)
|
||||
: type(std::move(v.type))
|
||||
, udatatype(std::move(v.udatatype))
|
||||
, data(std::move(v.data))
|
||||
{
|
||||
v.type = NIL;
|
||||
@@ -121,49 +117,41 @@ Variant::Variant(Variant &&v)
|
||||
|
||||
Variant::~Variant()
|
||||
{
|
||||
switch (type)
|
||||
{
|
||||
case STRING:
|
||||
if (type == STRING)
|
||||
data.string->release();
|
||||
break;
|
||||
case FUSERDATA:
|
||||
((love::Object *) data.userdata)->release();
|
||||
break;
|
||||
case TABLE:
|
||||
else if (type == LOVEOBJECT && data.objectproxy.object != nullptr)
|
||||
data.objectproxy.object->release();
|
||||
else if (type == TABLE)
|
||||
data.table->release();
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
Variant &Variant::operator = (const Variant &v)
|
||||
{
|
||||
if (v.type == STRING)
|
||||
v.data.string->retain();
|
||||
else if (v.type == FUSERDATA)
|
||||
((love::Object *) v.data.userdata)->retain();
|
||||
else if (v.type == LOVEOBJECT && v.data.objectproxy.object != nullptr)
|
||||
v.data.objectproxy.object->retain();
|
||||
else if (v.type == TABLE)
|
||||
v.data.table->retain();
|
||||
|
||||
if (type == STRING)
|
||||
data.string->release();
|
||||
else if (type == FUSERDATA)
|
||||
((love::Object *) v.data.userdata)->release();
|
||||
else if (type == LOVEOBJECT && data.objectproxy.object != nullptr)
|
||||
data.objectproxy.object->release();
|
||||
else if (type == TABLE)
|
||||
data.table->release();
|
||||
|
||||
type = v.type;
|
||||
data = v.data;
|
||||
udatatype = v.udatatype;
|
||||
|
||||
return *this;
|
||||
}
|
||||
|
||||
Variant Variant::fromLua(lua_State *L, int n, bool allowTables)
|
||||
Variant Variant::fromLua(lua_State *L, int n, std::set<const void*> *tableSet)
|
||||
{
|
||||
size_t len;
|
||||
const char *str;
|
||||
Proxy *p = nullptr;
|
||||
|
||||
if (n < 0) // Fix the stack position, we might modify it later
|
||||
n += lua_gettop(L) + 1;
|
||||
@@ -180,15 +168,34 @@ Variant Variant::fromLua(lua_State *L, int n, bool allowTables)
|
||||
case LUA_TLIGHTUSERDATA:
|
||||
return Variant(lua_touserdata(L, n));
|
||||
case LUA_TUSERDATA:
|
||||
return Variant(extractudatatype(L, n), lua_touserdata(L, n));
|
||||
p = tryextractproxy(L, n);
|
||||
if (p != nullptr)
|
||||
return Variant(p->type, p->object);
|
||||
else
|
||||
{
|
||||
luax_typerror(L, n, "love type");
|
||||
return Variant();
|
||||
}
|
||||
case LUA_TNIL:
|
||||
return Variant();
|
||||
case LUA_TTABLE:
|
||||
if (allowTables)
|
||||
{
|
||||
bool success = true;
|
||||
std::unique_ptr<std::set<const void*>> tableSetPtr;
|
||||
std::vector<std::pair<Variant, Variant>> *table = new std::vector<std::pair<Variant, Variant>>();
|
||||
|
||||
// If we had no tables argument, allocate one now, and store it in our unique_ptr
|
||||
if (tableSet == nullptr)
|
||||
tableSetPtr.reset(tableSet = new std::set<const void*>);
|
||||
|
||||
// Now make sure this table wasn't already serialised
|
||||
const void *tablePointer = lua_topointer(L, n);
|
||||
{
|
||||
auto result = tableSet->insert(tablePointer);
|
||||
if (!result.second) // insertion failed
|
||||
throw love::Exception("Cycle detected in table");
|
||||
}
|
||||
|
||||
size_t len = luax_objlen(L, -1);
|
||||
if (len > 0)
|
||||
table->reserve(len);
|
||||
@@ -197,7 +204,7 @@ Variant Variant::fromLua(lua_State *L, int n, bool allowTables)
|
||||
|
||||
while (lua_next(L, n))
|
||||
{
|
||||
table->emplace_back(fromLua(L, -2), fromLua(L, -1));
|
||||
table->emplace_back(fromLua(L, -2, tableSet), fromLua(L, -1, tableSet));
|
||||
lua_pop(L, 1);
|
||||
|
||||
const auto &p = table->back();
|
||||
@@ -208,6 +215,9 @@ Variant Variant::fromLua(lua_State *L, int n, bool allowTables)
|
||||
}
|
||||
}
|
||||
|
||||
// And remove the table from the set again
|
||||
tableSet->erase(tablePointer);
|
||||
|
||||
if (success)
|
||||
return Variant(table);
|
||||
else
|
||||
@@ -240,14 +250,8 @@ void Variant::toLua(lua_State *L) const
|
||||
case LUSERDATA:
|
||||
lua_pushlightuserdata(L, data.userdata);
|
||||
break;
|
||||
case FUSERDATA:
|
||||
if (udatatype != INVALID_ID)
|
||||
luax_pushtype(L, udatatype, (love::Object *) data.userdata);
|
||||
else
|
||||
lua_pushlightuserdata(L, data.userdata);
|
||||
// I know this is not the same
|
||||
// sadly, however, it's the most
|
||||
// I can do (at the moment).
|
||||
case LOVEOBJECT:
|
||||
luax_pushtype(L, *data.objectproxy.type, data.objectproxy.object);
|
||||
break;
|
||||
case TABLE:
|
||||
{
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -27,6 +27,7 @@
|
||||
|
||||
#include <cstring>
|
||||
#include <vector>
|
||||
#include <set>
|
||||
|
||||
namespace love
|
||||
{
|
||||
@@ -43,7 +44,7 @@ public:
|
||||
STRING,
|
||||
SMALLSTRING,
|
||||
LUSERDATA,
|
||||
FUSERDATA,
|
||||
LOVEOBJECT,
|
||||
NIL,
|
||||
TABLE
|
||||
};
|
||||
@@ -52,8 +53,8 @@ public:
|
||||
Variant(bool boolean);
|
||||
Variant(double number);
|
||||
Variant(const char *string, size_t len);
|
||||
Variant(void *userdata);
|
||||
Variant(love::Type udatatype, void *userdata);
|
||||
Variant(void *lightuserdata);
|
||||
Variant(love::Type *type, love::Object *object);
|
||||
Variant(std::vector<std::pair<Variant, Variant>> *table);
|
||||
Variant(const Variant &v);
|
||||
Variant(Variant &&v);
|
||||
@@ -63,7 +64,7 @@ public:
|
||||
|
||||
Type getType() const { return type; }
|
||||
|
||||
static Variant fromLua(lua_State *L, int n, bool allowTables = true);
|
||||
static Variant fromLua(lua_State *L, int n, std::set<const void*> *tableSet = nullptr);
|
||||
void toLua(lua_State *L) const;
|
||||
|
||||
private:
|
||||
@@ -101,7 +102,6 @@ private:
|
||||
static const int MAX_SMALL_STRING_LENGTH = 15;
|
||||
|
||||
Type type;
|
||||
love::Type udatatype;
|
||||
|
||||
union Data
|
||||
{
|
||||
@@ -109,6 +109,7 @@ private:
|
||||
double number;
|
||||
SharedString *string;
|
||||
void *userdata;
|
||||
Proxy objectproxy;
|
||||
SharedTable *table;
|
||||
struct
|
||||
{
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -24,45 +24,30 @@
|
||||
// STD
|
||||
#include <cmath>
|
||||
|
||||
// LOVE
|
||||
#include "Matrix.h"
|
||||
|
||||
namespace love
|
||||
{
|
||||
|
||||
/**
|
||||
* 2D Vector class.
|
||||
*
|
||||
* @author Anders Ruud
|
||||
* @date 2006-05-13
|
||||
**/
|
||||
class Vector
|
||||
struct Vector2
|
||||
{
|
||||
public:
|
||||
|
||||
// The components.
|
||||
float x, y;
|
||||
|
||||
/**
|
||||
* Creates a new (1,1) Vector.
|
||||
**/
|
||||
Vector();
|
||||
Vector2()
|
||||
: x(0.0f), y(0.0f)
|
||||
{}
|
||||
|
||||
/**
|
||||
* Creates a new Vector.
|
||||
* @param x The x position/dimension.
|
||||
* @param y The y position/dimension.
|
||||
**/
|
||||
Vector(float x, float y);
|
||||
Vector2(float x, float y)
|
||||
: x(x), y(y)
|
||||
{}
|
||||
|
||||
Vector2(const Vector2 &v)
|
||||
: x(v.x), y(v.y)
|
||||
{}
|
||||
|
||||
/**
|
||||
* Gets the length of the Vector.
|
||||
* @return The length of the Vector.
|
||||
*
|
||||
* This method requires sqrtf() and should be used
|
||||
* carefully.
|
||||
**/
|
||||
float getLength() const;
|
||||
float getLengthSquare() const;
|
||||
|
||||
/**
|
||||
* Normalizes the Vector.
|
||||
@@ -76,7 +61,7 @@ public:
|
||||
* To get the true (normalized) normal, use v.getNormal(1.0f / v.getLength())
|
||||
* @return A normal to the Vector.
|
||||
**/
|
||||
Vector getNormal() const;
|
||||
Vector2 getNormal() const;
|
||||
|
||||
/**
|
||||
* Gets a vector perpendicular to the Vector.
|
||||
@@ -84,125 +69,177 @@ public:
|
||||
* @param scale factor to apply.
|
||||
* @return A normal to the Vector.
|
||||
**/
|
||||
Vector getNormal(float scale) const;
|
||||
Vector2 getNormal(float scale) const;
|
||||
|
||||
static inline float dot(const Vector2 &a, const Vector2 &b);
|
||||
static inline float cross(const Vector2 &a, const Vector2 &b);
|
||||
|
||||
/**
|
||||
* Adds a Vector to this Vector.
|
||||
* @param v The Vector we want to add to this Vector.
|
||||
* @return The resulting Vector.
|
||||
**/
|
||||
Vector operator + (const Vector &v) const;
|
||||
Vector2 operator + (const Vector2 &v) const;
|
||||
|
||||
/**
|
||||
* Substracts a Vector to this Vector.
|
||||
* @param v The Vector we want to subtract to this Vector.
|
||||
* @return The resulting Vector.
|
||||
* Substracts a Vector from this Vector.
|
||||
**/
|
||||
Vector operator - (const Vector &v) const;
|
||||
Vector2 operator - (const Vector2 &v) const;
|
||||
|
||||
/**
|
||||
* Resizes a Vector by a scalar.
|
||||
* @param s The scalar with which to resize the Vector.
|
||||
* @return The resulting Vector.
|
||||
* Component-wise multiplies the Vector by a scalar.
|
||||
**/
|
||||
Vector operator * (float s) const;
|
||||
Vector2 operator * (float s) const;
|
||||
|
||||
/**
|
||||
* Resizes a Vector by a scalar.
|
||||
* @param s The scalar with which to resize the Vector.
|
||||
* @return The resulting Vector.
|
||||
* Component-wise divides the Vector by a scalar.
|
||||
**/
|
||||
Vector operator / (float s) const;
|
||||
Vector2 operator / (float s) const;
|
||||
|
||||
/**
|
||||
* Reverses the Vector.
|
||||
* @return The reversed Vector.
|
||||
* Component-wise negates the Vector.
|
||||
**/
|
||||
Vector operator - () const;
|
||||
Vector2 operator - () const;
|
||||
|
||||
/**
|
||||
* Adds a Vector to this Vector, and also saves changes in the first Vector.
|
||||
* @param v The Vector we want to add to this Vector.
|
||||
**/
|
||||
void operator += (const Vector &v);
|
||||
void operator += (const Vector2 &v);
|
||||
|
||||
/**
|
||||
* Subtracts a Vector to this Vector, and also saves changes in the first Vector.
|
||||
* @param v The Vector we want to subtract to this Vector.
|
||||
**/
|
||||
void operator -= (const Vector &v);
|
||||
void operator -= (const Vector2 &v);
|
||||
|
||||
/**
|
||||
* Resizes the Vector, and also saves changes in the first Vector.
|
||||
* @param s The scalar by which we want to resize the Vector.
|
||||
**/
|
||||
void operator *= (float s);
|
||||
|
||||
/**
|
||||
* Resizes the Vector, and also saves changes in the first Vector.
|
||||
* @param s The scalar by which we want to resize the Vector.
|
||||
**/
|
||||
void operator /= (float s);
|
||||
|
||||
/**
|
||||
* Calculates the dot product of two Vectors.
|
||||
* @return The dot product of the two Vectors.
|
||||
**/
|
||||
float operator * (const Vector &v) const;
|
||||
bool operator == (const Vector2 &v) const;
|
||||
bool operator != (const Vector2 &v) const;
|
||||
|
||||
}; // Vector2
|
||||
|
||||
|
||||
struct Vector3
|
||||
{
|
||||
float x, y, z;
|
||||
|
||||
Vector3()
|
||||
: x(0.0f), y(0.0f), z(0.0f)
|
||||
{}
|
||||
|
||||
Vector3(float x, float y, float z)
|
||||
: x(x), y(y), z(z)
|
||||
{}
|
||||
|
||||
Vector3(const Vector2 &v)
|
||||
: x(v.x), y(v.y), z(0.0f)
|
||||
{}
|
||||
|
||||
/**
|
||||
* Calculates the cross product of two Vectors.
|
||||
* @return The cross product of the two Vectors.
|
||||
* Gets the length of the Vector.
|
||||
**/
|
||||
float operator ^ (const Vector &v) const;
|
||||
|
||||
bool operator == (const Vector &v) const;
|
||||
|
||||
bool operator < (const Vector &v) const;
|
||||
/**
|
||||
* Gets the x value of the Vector.
|
||||
* @return The x value of the Vector.
|
||||
**/
|
||||
float getX() const;
|
||||
float getLength() const;
|
||||
float getLengthSquare() const;
|
||||
|
||||
/**
|
||||
* Gets the x value of the Vector.
|
||||
* @return The x value of the Vector.
|
||||
* Normalizes the Vector.
|
||||
* @param length Desired length of the vector.
|
||||
* @return The old length of the Vector.
|
||||
**/
|
||||
float getY() const;
|
||||
float normalize(float length = 1.0);
|
||||
|
||||
static inline float dot(const Vector3 &a, const Vector3 &b);
|
||||
static inline Vector3 cross(const Vector3 &a, const Vector3 &b);
|
||||
|
||||
/**
|
||||
* Sets the x value of the Vector.
|
||||
* @param x The x value of the Vector.
|
||||
* Adds a Vector to this Vector.
|
||||
**/
|
||||
void setX(float x);
|
||||
Vector3 operator + (const Vector3 &v) const;
|
||||
|
||||
/**
|
||||
* Sets the x value of the Vector.
|
||||
* @param y The x value of the Vector.
|
||||
* Substracts a Vector from this Vector.
|
||||
**/
|
||||
void setY(float y);
|
||||
Vector3 operator - (const Vector3 &v) const;
|
||||
|
||||
};
|
||||
/**
|
||||
* Component-wise multiplies the Vector by a scalar.
|
||||
**/
|
||||
Vector3 operator * (float s) const;
|
||||
|
||||
inline float Vector::getLength() const
|
||||
/**
|
||||
* Component-wise divides the Vector by a scalar.
|
||||
**/
|
||||
Vector3 operator / (float s) const;
|
||||
|
||||
/**
|
||||
* Component-wise negates the Vector.
|
||||
**/
|
||||
Vector3 operator - () const;
|
||||
|
||||
/**
|
||||
* Adds a Vector to this Vector, and also saves changes in the first Vector.
|
||||
**/
|
||||
void operator += (const Vector3 &v);
|
||||
|
||||
/**
|
||||
* Subtracts a Vector to this Vector, and also saves changes in the first Vector.
|
||||
**/
|
||||
void operator -= (const Vector3 &v);
|
||||
|
||||
/**
|
||||
* Resizes the Vector, and also saves changes in the first Vector.
|
||||
**/
|
||||
void operator *= (float s);
|
||||
|
||||
/**
|
||||
* Resizes the Vector, and also saves changes in the first Vector.
|
||||
**/
|
||||
void operator /= (float s);
|
||||
|
||||
bool operator == (const Vector3 &v) const;
|
||||
bool operator != (const Vector3 &v) const;
|
||||
|
||||
}; // Vector3
|
||||
|
||||
|
||||
inline float Vector2::getLength() const
|
||||
{
|
||||
return sqrtf(x*x + y*y);
|
||||
}
|
||||
|
||||
inline Vector Vector::getNormal() const
|
||||
inline float Vector2::getLengthSquare() const
|
||||
{
|
||||
return Vector(-y, x);
|
||||
return x*x + y*y;
|
||||
}
|
||||
|
||||
inline Vector Vector::getNormal(float scale) const
|
||||
inline Vector2 Vector2::getNormal() const
|
||||
{
|
||||
return Vector(-y * scale, x * scale);
|
||||
return Vector2(-y, x);
|
||||
}
|
||||
|
||||
inline float Vector::normalize(float length)
|
||||
inline Vector2 Vector2::getNormal(float scale) const
|
||||
{
|
||||
return Vector2(-y * scale, x * scale);
|
||||
}
|
||||
|
||||
inline float Vector2::dot(const Vector2 &a, const Vector2 &b)
|
||||
{
|
||||
return a.x * b.x + a.y * b.y;
|
||||
}
|
||||
|
||||
inline float Vector2::cross(const Vector2 &a, const Vector2 &b)
|
||||
{
|
||||
return a.x * b.y - a.y * b.x;
|
||||
}
|
||||
|
||||
inline float Vector2::normalize(float length)
|
||||
{
|
||||
float length_current = getLength();
|
||||
|
||||
if (length_current > 0)
|
||||
@@ -211,113 +248,161 @@ inline float Vector::normalize(float length)
|
||||
return length_current;
|
||||
}
|
||||
|
||||
/**
|
||||
* Inline methods must have body in header.
|
||||
**/
|
||||
|
||||
inline Vector::Vector()
|
||||
: x(0.0f)
|
||||
, y(0.0f)
|
||||
inline Vector2 Vector2::operator + (const Vector2 &v) const
|
||||
{
|
||||
return Vector2(x + v.x, y + v.y);
|
||||
}
|
||||
|
||||
inline Vector::Vector(float x, float y)
|
||||
: x(x)
|
||||
, y(y)
|
||||
inline Vector2 Vector2::operator - (const Vector2 &v) const
|
||||
{
|
||||
return Vector2(x - v.x, y - v.y);
|
||||
}
|
||||
|
||||
inline Vector Vector::operator + (const Vector &v) const
|
||||
inline Vector2 Vector2::operator * (float s) const
|
||||
{
|
||||
return Vector(x + v.x, y + v.y);
|
||||
return Vector2(x*s, y*s);
|
||||
}
|
||||
|
||||
inline Vector Vector::operator - (const Vector &v) const
|
||||
inline Vector2 Vector2::operator / (float s) const
|
||||
{
|
||||
return Vector(x - v.getX(), y - v.getY());
|
||||
float invs = 1.0f / s;
|
||||
return Vector2(x*invs, y*invs);
|
||||
}
|
||||
|
||||
inline Vector Vector::operator * (float s) const
|
||||
inline Vector2 Vector2::operator - () const
|
||||
{
|
||||
return Vector(x*s, y*s);
|
||||
return Vector2(-x, -y);
|
||||
}
|
||||
|
||||
inline Vector Vector::operator / (float s) const
|
||||
inline void Vector2::operator += (const Vector2 &v)
|
||||
{
|
||||
return Vector(x/s, y/s);
|
||||
x += v.x;
|
||||
y += v.y;
|
||||
}
|
||||
|
||||
inline Vector Vector::operator - () const
|
||||
inline void Vector2::operator -= (const Vector2 &v)
|
||||
{
|
||||
return Vector(-x, -y);
|
||||
x -= v.x;
|
||||
y -= v.y;
|
||||
}
|
||||
|
||||
inline void Vector::operator += (const Vector &v)
|
||||
{
|
||||
x += v.getX();
|
||||
y += v.getY();
|
||||
}
|
||||
|
||||
inline void Vector::operator -= (const Vector &v)
|
||||
{
|
||||
x -= v.getX();
|
||||
y -= v.getY();
|
||||
}
|
||||
|
||||
inline void Vector::operator *= (float s)
|
||||
inline void Vector2::operator *= (float s)
|
||||
{
|
||||
x *= s;
|
||||
y *= s;
|
||||
}
|
||||
|
||||
inline void Vector::operator /= (float s)
|
||||
inline void Vector2::operator /= (float s)
|
||||
{
|
||||
x /= s;
|
||||
y /= s;
|
||||
float invs = 1.0f / s;
|
||||
x *= invs;
|
||||
y *= invs;
|
||||
}
|
||||
|
||||
inline float Vector::operator * (const Vector &v) const
|
||||
inline bool Vector2::operator == (const Vector2 &v) const
|
||||
{
|
||||
return x * v.getX() + y * v.getY();
|
||||
return x == v.x && y == v.y;
|
||||
}
|
||||
|
||||
inline float Vector::operator ^ (const Vector &v) const
|
||||
inline bool Vector2::operator != (const Vector2 &v) const
|
||||
{
|
||||
return x * v.getY() - y * v.getX();
|
||||
return x != v.x || y != v.y;
|
||||
}
|
||||
|
||||
inline bool Vector::operator == (const Vector &v) const
|
||||
|
||||
inline float Vector3::getLength() const
|
||||
{
|
||||
return getLength() == v.getLength();
|
||||
return sqrtf(x*x + y*y + z*z);
|
||||
}
|
||||
|
||||
inline bool Vector::operator < (const Vector &v) const
|
||||
inline float Vector3::getLengthSquare() const
|
||||
{
|
||||
return getLength() < v.getLength();
|
||||
return x*x + y*y + z*z;
|
||||
}
|
||||
|
||||
/**
|
||||
* Accessor methods
|
||||
**/
|
||||
|
||||
inline float Vector::getX() const
|
||||
inline float Vector3::dot(const Vector3 &a, const Vector3 &b)
|
||||
{
|
||||
return x;
|
||||
return a.x * b.x + a.y * b.y + a.z * b.z;
|
||||
}
|
||||
|
||||
inline float Vector::getY() const
|
||||
inline Vector3 Vector3::cross(const Vector3 &a, const Vector3 &b)
|
||||
{
|
||||
return y;
|
||||
return Vector3(a.y*b.z - a.z*b.y, a.z*b.x - a.x*b.z, a.x*b.y - a.y*b.x);
|
||||
}
|
||||
|
||||
inline void Vector::setX(float x)
|
||||
inline float Vector3::normalize(float length)
|
||||
{
|
||||
this->x = x;
|
||||
float length_current = getLength();
|
||||
|
||||
if (length_current > 0)
|
||||
(*this) *= length / length_current;
|
||||
|
||||
return length_current;
|
||||
}
|
||||
|
||||
inline void Vector::setY(float y)
|
||||
inline Vector3 Vector3::operator + (const Vector3 &v) const
|
||||
{
|
||||
this->y = y;
|
||||
return Vector3(x + v.x, y + v.y, z + v.z);
|
||||
}
|
||||
|
||||
inline Vector3 Vector3::operator - (const Vector3 &v) const
|
||||
{
|
||||
return Vector3(x - v.x, y - v.y, z - v.z);
|
||||
}
|
||||
|
||||
inline Vector3 Vector3::operator * (float s) const
|
||||
{
|
||||
return Vector3(x*s, y*s, z*s);
|
||||
}
|
||||
|
||||
inline Vector3 Vector3::operator / (float s) const
|
||||
{
|
||||
float invs = 1.0f / s;
|
||||
return Vector3(x*invs, y*invs, z*invs);
|
||||
}
|
||||
|
||||
inline Vector3 Vector3::operator - () const
|
||||
{
|
||||
return Vector3(-x, -y, -z);
|
||||
}
|
||||
|
||||
inline void Vector3::operator += (const Vector3 &v)
|
||||
{
|
||||
x += v.x;
|
||||
y += v.y;
|
||||
z += v.z;
|
||||
}
|
||||
|
||||
inline void Vector3::operator -= (const Vector3 &v)
|
||||
{
|
||||
x -= v.x;
|
||||
y -= v.y;
|
||||
z -= v.z;
|
||||
}
|
||||
|
||||
inline void Vector3::operator *= (float s)
|
||||
{
|
||||
x *= s;
|
||||
y *= s;
|
||||
z *= s;
|
||||
}
|
||||
|
||||
inline void Vector3::operator /= (float s)
|
||||
{
|
||||
float invs = 1.0f / s;
|
||||
x *= invs;
|
||||
y *= invs;
|
||||
z *= invs;
|
||||
}
|
||||
|
||||
inline bool Vector3::operator == (const Vector3 &v) const
|
||||
{
|
||||
return x == v.x && y == v.y && z == v.z;
|
||||
}
|
||||
|
||||
inline bool Vector3::operator != (const Vector3 &v) const
|
||||
{
|
||||
return x != v.x || y != v.y || z != v.z;
|
||||
}
|
||||
|
||||
} //love
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -225,6 +225,22 @@ bool createStorageDirectories()
|
||||
return true;
|
||||
}
|
||||
|
||||
bool hasBackgroundMusic()
|
||||
{
|
||||
JNIEnv *env = (JNIEnv*) SDL_AndroidGetJNIEnv();
|
||||
jobject activity = (jobject) SDL_AndroidGetActivity();
|
||||
|
||||
jclass clazz(env->GetObjectClass(activity));
|
||||
jmethodID method_id = env->GetMethodID(clazz, "hasBackgroundMusic", "()Z");
|
||||
|
||||
jboolean result = env->CallBooleanMethod(activity, method_id);
|
||||
|
||||
env->DeleteLocalRef(activity);
|
||||
env->DeleteLocalRef(clazz);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
} // android
|
||||
} // love
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -66,6 +66,8 @@ bool mkdir(const char *path);
|
||||
|
||||
bool createStorageDirectories();
|
||||
|
||||
bool hasBackgroundMusic();
|
||||
|
||||
} // android
|
||||
} // love
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -19,12 +19,98 @@
|
||||
**/
|
||||
|
||||
#include "b64.h"
|
||||
#include "Exception.h"
|
||||
|
||||
#include <limits>
|
||||
#include <stdio.h>
|
||||
|
||||
namespace love
|
||||
{
|
||||
|
||||
// Translation table as described in RFC1113
|
||||
static const char cb64[]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
|
||||
|
||||
// Translation table to decode (created by Bob Trower)
|
||||
static const char cd64[]="|$$$}rstuvwxyz{$$$$$$$>?@ABCDEFGHIJKLMNOPQRSTUVW$$$$$$XYZ[\\]^_`abcdefghijklmnopq";
|
||||
|
||||
/**
|
||||
* encode 3 8-bit binary bytes as 4 '6-bit' characters
|
||||
**/
|
||||
static void b64_encode_block(char in[3], char out[4], int len)
|
||||
{
|
||||
out[0] = (char) cb64[(int)((in[0] & 0xfc) >> 2)];
|
||||
out[1] = (char) cb64[(int)(((in[0] & 0x03) << 4) | ((in[1] & 0xf0) >> 4))];
|
||||
out[2] = (char) (len > 1 ? cb64[(int)(((in[1] & 0x0f) << 2) | ((in[2] & 0xc0) >> 6))] : '=');
|
||||
out[3] = (char) (len > 2 ? cb64[(int)(in[2] & 0x3f)] : '=');
|
||||
}
|
||||
|
||||
char *b64_encode(const char *src, size_t srclen, size_t linelen, size_t &dstlen)
|
||||
{
|
||||
if (linelen == 0)
|
||||
linelen = std::numeric_limits<size_t>::max();
|
||||
|
||||
size_t blocksout = 0;
|
||||
size_t srcpos = 0;
|
||||
|
||||
size_t adjustment = (srclen % 3) ? (3 - (srclen % 3)) : 0;
|
||||
size_t paddedlen = ((srclen + adjustment) / 3) * 4;
|
||||
|
||||
dstlen = paddedlen + paddedlen / linelen;
|
||||
|
||||
if (dstlen == 0)
|
||||
return nullptr;
|
||||
|
||||
char *dst = nullptr;
|
||||
try
|
||||
{
|
||||
dst = new char[dstlen + 1];
|
||||
}
|
||||
catch (std::exception &)
|
||||
{
|
||||
throw love::Exception("Out of memory.");
|
||||
}
|
||||
|
||||
size_t dstpos = 0;
|
||||
|
||||
while (srcpos < srclen)
|
||||
{
|
||||
char in[3] = {0};
|
||||
char out[4] = {0};
|
||||
|
||||
int len = 0;
|
||||
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
if (srcpos >= srclen)
|
||||
break;
|
||||
|
||||
in[i] = src[srcpos++];
|
||||
len++;
|
||||
}
|
||||
|
||||
if (len > 0)
|
||||
{
|
||||
b64_encode_block(in, out, len);
|
||||
|
||||
for (int i = 0; i < 4 && dstpos < dstlen; i++, dstpos++)
|
||||
dst[dstpos] = out[i];
|
||||
|
||||
blocksout++;
|
||||
}
|
||||
|
||||
if (blocksout >= linelen / 4 || srcpos >= srclen)
|
||||
{
|
||||
if (blocksout > 0 && dstpos < dstlen)
|
||||
dst[dstpos++] = '\n';
|
||||
|
||||
blocksout = 0;
|
||||
}
|
||||
}
|
||||
|
||||
dst[dstpos] = '\0';
|
||||
return dst;
|
||||
}
|
||||
|
||||
static void b64_decode_block(char in[4], char out[3])
|
||||
{
|
||||
out[0] = (char)(in[0] << 2 | in[1] >> 4);
|
||||
@@ -32,36 +118,44 @@ static void b64_decode_block(char in[4], char out[3])
|
||||
out[2] = (char)(((in[2] << 6) & 0xc0) | in[3]);
|
||||
}
|
||||
|
||||
char *b64_decode(const char *src, int slen, int &size)
|
||||
char *b64_decode(const char *src, size_t srclen, size_t &size)
|
||||
{
|
||||
// Actual output may be smaller due to padding and/or whitespace in the
|
||||
// base64-encoded string.
|
||||
int max_size = (slen / 4) * 3;
|
||||
size_t paddedsize = (srclen / 4) * 3;
|
||||
|
||||
char *dst = nullptr;
|
||||
try
|
||||
{
|
||||
dst = new char[paddedsize];
|
||||
}
|
||||
catch (std::exception &)
|
||||
{
|
||||
throw love::Exception("Out of memory.");
|
||||
}
|
||||
|
||||
char *dst = new char[max_size];
|
||||
char *d = dst;
|
||||
|
||||
char in[4] = {0}, out[3], v;
|
||||
int i, len, pos = 0;
|
||||
char in[4] = {0};
|
||||
char out[3] = {0};
|
||||
size_t i, len, srcpos = 0;
|
||||
|
||||
while (pos <= slen)
|
||||
while (srcpos <= srclen)
|
||||
{
|
||||
for (len = 0, i = 0; i < 4 && pos <= slen; i++)
|
||||
for (len = 0, i = 0; i < 4 && srcpos <= srclen; i++)
|
||||
{
|
||||
v = 0;
|
||||
char v = 0;
|
||||
|
||||
while (pos <= slen && v == 0)
|
||||
while (srcpos <= srclen && v == 0)
|
||||
{
|
||||
v = src[pos++];
|
||||
v = src[srcpos++];
|
||||
v = (char)((v < 43 || v > 122) ? 0 : cd64[v - 43]);
|
||||
if (v)
|
||||
if (v != 0)
|
||||
v = (char)((v == '$') ? 0 : v - 61);
|
||||
}
|
||||
|
||||
if (pos <= slen)
|
||||
if (srcpos <= srclen)
|
||||
{
|
||||
len++;
|
||||
if (v)
|
||||
if (v != 0)
|
||||
in[i] = (char)(v - 1);
|
||||
}
|
||||
else
|
||||
@@ -72,12 +166,11 @@ char *b64_decode(const char *src, int slen, int &size)
|
||||
{
|
||||
b64_decode_block(in, out);
|
||||
for (i = 0; i < len - 1; i++)
|
||||
*(d++) = out[i];
|
||||
*(d++) = out[i];
|
||||
}
|
||||
}
|
||||
|
||||
size = int(d - dst);
|
||||
|
||||
size = (size_t)(ptrdiff_t) (d - dst);
|
||||
return dst;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -20,21 +20,35 @@
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stddef.h>
|
||||
|
||||
#ifndef LOVE_B64_H
|
||||
#define LOVE_B64_H
|
||||
|
||||
namespace love
|
||||
{
|
||||
|
||||
/**
|
||||
* Base64-encode data.
|
||||
*
|
||||
* @param src The data to encode.
|
||||
* @param srclen The size in bytes of the data.
|
||||
* @param linelen The maximum length of each line in the encoded string.
|
||||
* 0 indicates no maximum length.
|
||||
* @param dstlen The length of the encoded string is stored here.
|
||||
* @return A string containing the base64-encoded data (allocated with new[]).
|
||||
*/
|
||||
char *b64_encode(const char *src, size_t srclen, size_t linelen, size_t &dstlen);
|
||||
|
||||
/**
|
||||
* Decode base64 encoded data.
|
||||
*
|
||||
* @param src The string containing the base64 data.
|
||||
* @param slen The length of the string.
|
||||
* @param size The size of the binary data is stored here.
|
||||
* @param srclen The length of the string.
|
||||
* @param dstlen The size of the binary data is stored here.
|
||||
* @return A chunk of memory containing the binary data (allocated with new[]).
|
||||
*/
|
||||
char *b64_decode(const char *src, int slen, int &size);
|
||||
char *b64_decode(const char *src, size_t srclen, size_t &dstlen);
|
||||
|
||||
} // love
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -26,7 +26,7 @@
|
||||
# define LOVE_WINDOWS 1
|
||||
// If _USING_V110_SDK71_ is defined it means we are using the xp toolset.
|
||||
# if defined(_MSC_VER) && (_MSC_VER >= 1700) && !_USING_V110_SDK71_
|
||||
# include <winapifamily.h>
|
||||
# include <winapifamily.h>
|
||||
# if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) && !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
|
||||
# define LOVE_WINDOWS_UWP 1
|
||||
# define LOVE_NO_MODPLUG 1
|
||||
@@ -60,6 +60,22 @@
|
||||
# define LOVE_LITTLE_ENDIAN 1
|
||||
#endif
|
||||
|
||||
// SSE instructions.
|
||||
#if defined(__SSE__)
|
||||
# define LOVE_SIMD_SSE
|
||||
#elif defined(_MSC_VER)
|
||||
# if defined(_M_AMD64) || defined(_M_X64)
|
||||
# define LOVE_SIMD_SSE
|
||||
# elif _M_IX86_FP
|
||||
# define LOVE_SIMD_SSE
|
||||
# endif
|
||||
#endif
|
||||
|
||||
// NEON instructions.
|
||||
#if defined(__ARM_NEON)
|
||||
# define LOVE_SIMD_NEON
|
||||
#endif
|
||||
|
||||
// Warnings.
|
||||
#ifndef _CRT_SECURE_NO_WARNINGS
|
||||
# define _CRT_SECURE_NO_WARNINGS
|
||||
@@ -70,6 +86,16 @@
|
||||
# define LOVE_UNUSED(x) (void)sizeof(x)
|
||||
#endif
|
||||
|
||||
|
||||
// Warn on unused return values
|
||||
#ifdef __GNUC__
|
||||
# define LOVE_WARN_UNUSED __attribute__((warn_unused_result))
|
||||
#elif _MSC_VER
|
||||
# define LOVE_WARN_UNUSED _Check_return_
|
||||
#else
|
||||
# define LOVE_WARN_UNUSED
|
||||
#endif
|
||||
|
||||
#ifndef LOVE_BUILD
|
||||
# define LOVE_BUILD
|
||||
# define LOVE_BUILD_STANDALONE
|
||||
@@ -111,51 +137,30 @@
|
||||
# define LOVE_LITTLE_ENDIAN 1
|
||||
# endif
|
||||
#else
|
||||
# define LOVE_ENABLE_AUDIO
|
||||
# define LOVE_ENABLE_AUDIO_NULL
|
||||
# define LOVE_ENABLE_AUDIO_OPENAL
|
||||
# define LOVE_ENABLE_BOX2D
|
||||
# define LOVE_ENABLE_DDSPARSE
|
||||
# define LOVE_ENABLE_ENET
|
||||
# define LOVE_ENABLE_EVENT
|
||||
# define LOVE_ENABLE_EVENT_SDL
|
||||
# define LOVE_ENABLE_FILESYSTEM
|
||||
# define LOVE_ENABLE_FILESYSTEM_PHYSFS
|
||||
# define LOVE_ENABLE_FONT
|
||||
# define LOVE_ENABLE_FONT_FREETYPE
|
||||
# define LOVE_ENABLE_GRAPHICS
|
||||
# define LOVE_ENABLE_GRAPHICS_OPENGL
|
||||
# define LOVE_ENABLE_IMAGE
|
||||
# define LOVE_ENABLE_IMAGE_MAGPIE
|
||||
# define LOVE_ENABLE_JOYSTICK
|
||||
# define LOVE_ENABLE_JOYSTICK_SDL
|
||||
# define LOVE_ENABLE_KEYBOARD
|
||||
# define LOVE_ENABLE_KEYBOARD_SDL
|
||||
# define LOVE_ENABLE_LOVE
|
||||
# define LOVE_ENABLE_LUASOCKET
|
||||
# define LOVE_ENABLE_LUAUTF8
|
||||
# define LOVE_ENABLE_AUDIO
|
||||
# define LOVE_ENABLE_DATA
|
||||
# define LOVE_ENABLE_EVENT
|
||||
# define LOVE_ENABLE_FILESYSTEM
|
||||
# define LOVE_ENABLE_FONT
|
||||
# define LOVE_ENABLE_GRAPHICS
|
||||
# define LOVE_ENABLE_IMAGE
|
||||
# define LOVE_ENABLE_JOYSTICK
|
||||
# define LOVE_ENABLE_KEYBOARD
|
||||
# define LOVE_ENABLE_MATH
|
||||
# define LOVE_ENABLE_MOUSE
|
||||
# define LOVE_ENABLE_MOUSE_SDL
|
||||
# define LOVE_ENABLE_NOISE1234
|
||||
# define LOVE_ENABLE_PHYSICS
|
||||
# define LOVE_ENABLE_PHYSICS_BOX2D
|
||||
# define LOVE_ENABLE_SOUND
|
||||
# define LOVE_ENABLE_SOUND_LULLABY
|
||||
# define LOVE_ENABLE_SYSTEM
|
||||
# define LOVE_ENABLE_SYSTEM_SDL
|
||||
# define LOVE_ENABLE_THREAD
|
||||
# define LOVE_ENABLE_THREAD_SDL
|
||||
# define LOVE_ENABLE_TIMER
|
||||
# define LOVE_ENABLE_TIMER_SDL
|
||||
# define LOVE_ENABLE_TOUCH
|
||||
# define LOVE_ENABLE_TOUCH_SDL
|
||||
# define LOVE_ENABLE_UTF8
|
||||
# define LOVE_ENABLE_VIDEO
|
||||
# define LOVE_ENABLE_VIDEO_THEORA
|
||||
# define LOVE_ENABLE_WINDOW
|
||||
# define LOVE_ENABLE_WINDOW_SDL
|
||||
# define LOVE_ENABLE_WUFF
|
||||
|
||||
# define LOVE_ENABLE_ENET
|
||||
# define LOVE_ENABLE_LUASOCKET
|
||||
# define LOVE_ENABLE_LUA53
|
||||
#endif
|
||||
|
||||
// Check we have a sane configuration
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -27,6 +27,8 @@ namespace love
|
||||
|
||||
void sleep(unsigned int ms)
|
||||
{
|
||||
// We don't need to initialize the SDL timer subsystem for SDL_Delay to
|
||||
// function - and doing so causes SDL to create a worker thread.
|
||||
SDL_Delay(ms);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
|
||||
@@ -0,0 +1,187 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
* arising from the use of this software.
|
||||
*
|
||||
* Permission is granted to anyone to use this software for any purpose,
|
||||
* including commercial applications, and to alter it and redistribute it
|
||||
* freely, subject to the following restrictions:
|
||||
*
|
||||
* 1. The origin of this software must not be misrepresented; you must not
|
||||
* claim that you wrote the original software. If you use this software
|
||||
* in a product, an acknowledgment in the product documentation would be
|
||||
* appreciated but is not required.
|
||||
* 2. Altered source versions must be plainly marked as such, and must not be
|
||||
* misrepresented as being the original software.
|
||||
* 3. This notice may not be removed or altered from any source distribution.
|
||||
**/
|
||||
|
||||
#include "common/config.h"
|
||||
#include "deprecation.h"
|
||||
#include "thread/threads.h"
|
||||
|
||||
#include <atomic>
|
||||
#include <map>
|
||||
|
||||
namespace love
|
||||
{
|
||||
|
||||
static std::map<std::string, DeprecationInfo> *deprecated = nullptr;
|
||||
static std::vector<const DeprecationInfo *> *deprecatedList = nullptr;
|
||||
|
||||
static std::atomic<int> initCount;
|
||||
|
||||
static thread::Mutex *mutex = nullptr;
|
||||
static bool outputEnabled = false;
|
||||
|
||||
void initDeprecation()
|
||||
{
|
||||
if (initCount.fetch_add(1) == 0)
|
||||
{
|
||||
mutex = thread::newMutex();
|
||||
|
||||
// These are heap-allocated because we want to clear them on deinit,
|
||||
// and deinit may be called when the program is shutting down in the
|
||||
// middle of static variable cleanup (eg in the Math module destructor).
|
||||
// Calling std::map::clear() in that case was causing segfaults.
|
||||
deprecated = new std::map<std::string, DeprecationInfo>();
|
||||
deprecatedList = new std::vector<const DeprecationInfo *>();
|
||||
}
|
||||
}
|
||||
|
||||
void deinitDeprecation()
|
||||
{
|
||||
if (initCount.fetch_sub(1) == 1)
|
||||
{
|
||||
delete deprecated;
|
||||
delete deprecatedList;
|
||||
delete mutex;
|
||||
|
||||
deprecated = nullptr;
|
||||
deprecatedList = nullptr;
|
||||
mutex = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
static void printDeprecationNotice(const DeprecationInfo &info)
|
||||
{
|
||||
std::string notice = getDeprecationNotice(info, true);
|
||||
printf("LOVE - Warning: %s\n", notice.c_str());
|
||||
}
|
||||
|
||||
void setDeprecationOutputEnabled(bool enable)
|
||||
{
|
||||
if (enable == outputEnabled)
|
||||
return;
|
||||
|
||||
outputEnabled = enable;
|
||||
|
||||
if (enable)
|
||||
{
|
||||
GetDeprecated deprecated;
|
||||
|
||||
for (const DeprecationInfo *info : deprecated.all)
|
||||
{
|
||||
if (info->uses == 1)
|
||||
printDeprecationNotice(*info);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bool isDeprecationOutputEnabled()
|
||||
{
|
||||
return outputEnabled;
|
||||
}
|
||||
|
||||
std::string getDeprecationNotice(const DeprecationInfo &info, bool usewhere)
|
||||
{
|
||||
std::string notice;
|
||||
|
||||
if (usewhere)
|
||||
notice += info.where;
|
||||
|
||||
notice += "Using deprecated ";
|
||||
|
||||
if (info.apiType == API_FUNCTION)
|
||||
notice += "function ";
|
||||
else if (info.apiType == API_METHOD)
|
||||
notice += "method ";
|
||||
else if (info.apiType == API_FIELD)
|
||||
notice += "field ";
|
||||
else if (info.apiType == API_CONSTANT)
|
||||
notice += "constant ";
|
||||
else
|
||||
notice += "API ";
|
||||
|
||||
notice += info.name;
|
||||
|
||||
if (info.type == DEPRECATED_REPLACED && !info.replacement.empty())
|
||||
notice += " (replaced by " + info.replacement + ")";
|
||||
else if (info.type == DEPRECATED_RENAMED && !info.replacement.empty())
|
||||
notice += " (renamed to " + info.replacement + ")";
|
||||
|
||||
return notice;
|
||||
}
|
||||
|
||||
GetDeprecated::GetDeprecated()
|
||||
: all(*deprecatedList)
|
||||
{
|
||||
if (mutex != nullptr)
|
||||
mutex->lock();
|
||||
}
|
||||
|
||||
GetDeprecated::~GetDeprecated()
|
||||
{
|
||||
if (mutex != nullptr)
|
||||
mutex->unlock();
|
||||
}
|
||||
|
||||
MarkDeprecated::MarkDeprecated(const char *name, APIType api)
|
||||
: MarkDeprecated(name, api, DEPRECATED_NO_REPLACEMENT, nullptr)
|
||||
{
|
||||
}
|
||||
|
||||
MarkDeprecated::MarkDeprecated(const char *name, APIType api, DeprecationType type, const char *replacement)
|
||||
: info(nullptr)
|
||||
{
|
||||
if (mutex != nullptr)
|
||||
mutex->lock();
|
||||
|
||||
auto it = deprecated->find(name);
|
||||
|
||||
if (it != deprecated->end())
|
||||
{
|
||||
it->second.uses++;
|
||||
info = &it->second;
|
||||
}
|
||||
else
|
||||
{
|
||||
DeprecationInfo newinfo = {};
|
||||
|
||||
newinfo.type = type;
|
||||
newinfo.apiType = api;
|
||||
newinfo.uses = 1;
|
||||
newinfo.name = name;
|
||||
|
||||
if (replacement != nullptr)
|
||||
newinfo.replacement = replacement;
|
||||
|
||||
auto inserted = deprecated->insert(std::make_pair(newinfo.name, newinfo));
|
||||
|
||||
info = &inserted.first->second;
|
||||
deprecatedList->push_back(info);
|
||||
}
|
||||
}
|
||||
|
||||
MarkDeprecated::~MarkDeprecated()
|
||||
{
|
||||
if (outputEnabled && info != nullptr && info->uses == 1)
|
||||
printDeprecationNotice(*info);
|
||||
|
||||
if (mutex != nullptr)
|
||||
mutex->unlock();
|
||||
}
|
||||
|
||||
} // love
|
||||
@@ -0,0 +1,81 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
* arising from the use of this software.
|
||||
*
|
||||
* Permission is granted to anyone to use this software for any purpose,
|
||||
* including commercial applications, and to alter it and redistribute it
|
||||
* freely, subject to the following restrictions:
|
||||
*
|
||||
* 1. The origin of this software must not be misrepresented; you must not
|
||||
* claim that you wrote the original software. If you use this software
|
||||
* in a product, an acknowledgment in the product documentation would be
|
||||
* appreciated but is not required.
|
||||
* 2. Altered source versions must be plainly marked as such, and must not be
|
||||
* misrepresented as being the original software.
|
||||
* 3. This notice may not be removed or altered from any source distribution.
|
||||
**/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "int.h"
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
namespace love
|
||||
{
|
||||
|
||||
enum APIType
|
||||
{
|
||||
API_FUNCTION,
|
||||
API_METHOD,
|
||||
API_FIELD,
|
||||
API_CONSTANT,
|
||||
};
|
||||
|
||||
enum DeprecationType
|
||||
{
|
||||
DEPRECATED_NO_REPLACEMENT,
|
||||
DEPRECATED_REPLACED,
|
||||
DEPRECATED_RENAMED,
|
||||
};
|
||||
|
||||
struct DeprecationInfo
|
||||
{
|
||||
DeprecationType type;
|
||||
APIType apiType;
|
||||
int64 uses;
|
||||
std::string name;
|
||||
std::string replacement;
|
||||
std::string where;
|
||||
};
|
||||
|
||||
void initDeprecation();
|
||||
void deinitDeprecation();
|
||||
|
||||
void setDeprecationOutputEnabled(bool enable);
|
||||
bool isDeprecationOutputEnabled();
|
||||
|
||||
std::string getDeprecationNotice(const DeprecationInfo &info, bool usewhere);
|
||||
|
||||
struct GetDeprecated
|
||||
{
|
||||
GetDeprecated();
|
||||
~GetDeprecated();
|
||||
|
||||
const std::vector<const DeprecationInfo *> &all;
|
||||
};
|
||||
|
||||
struct MarkDeprecated
|
||||
{
|
||||
MarkDeprecated(const char *name, APIType api);
|
||||
MarkDeprecated(const char *name, APIType api, DeprecationType type, const char *replacement);
|
||||
~MarkDeprecated();
|
||||
|
||||
DeprecationInfo *info;
|
||||
};
|
||||
|
||||
} // love
|
||||
@@ -0,0 +1,156 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
* arising from the use of this software.
|
||||
*
|
||||
* Permission is granted to anyone to use this software for any purpose,
|
||||
* including commercial applications, and to alter it and redistribute it
|
||||
* freely, subject to the following restrictions:
|
||||
*
|
||||
* 1. The origin of this software must not be misrepresented; you must not
|
||||
* claim that you wrote the original software. If you use this software
|
||||
* in a product, an acknowledgment in the product documentation would be
|
||||
* appreciated but is not required.
|
||||
* 2. Altered source versions must be plainly marked as such, and must not be
|
||||
* misrepresented as being the original software.
|
||||
* 3. This notice may not be removed or altered from any source distribution.
|
||||
**/
|
||||
|
||||
#include "halffloat.h"
|
||||
|
||||
namespace love
|
||||
{
|
||||
|
||||
// Code from ftp://www.fox-toolkit.org/pub/fasthalffloatconversion.pdf
|
||||
|
||||
static bool initialized = false;
|
||||
|
||||
// tables for half -> float conversions
|
||||
static uint32 mantissatable[2048];
|
||||
static uint16 offsettable[64];
|
||||
static uint32 exponenttable[64];
|
||||
|
||||
// tables for float -> half conversions
|
||||
static uint16 basetable[512];
|
||||
static uint8 shifttable[512];
|
||||
|
||||
|
||||
static uint32 convertMantissa(uint32 i)
|
||||
{
|
||||
uint32 m = i << 13; // Zero pad mantissa bits
|
||||
uint32 e = 0; // Zero exponent
|
||||
|
||||
while (!(m & 0x00800000)) // While not normalized
|
||||
{
|
||||
e -= 0x00800000; // Decrement exponent (1<<23)
|
||||
m <<= 1; // Shift mantissa
|
||||
}
|
||||
|
||||
m &= ~(0x00800000); // Clear leading 1 bit
|
||||
e += 0x38800000; // Adjust bias ((127-14)<<23)
|
||||
|
||||
return m | e; // Return combined number
|
||||
}
|
||||
|
||||
void halfInit()
|
||||
{
|
||||
if (initialized)
|
||||
return;
|
||||
|
||||
initialized = true;
|
||||
|
||||
|
||||
// tables for half -> float conversions.
|
||||
|
||||
mantissatable[0] = 0;
|
||||
|
||||
for (uint32 i = 1; i < 1024; i++)
|
||||
mantissatable[i] = convertMantissa(i);
|
||||
|
||||
for (uint32 i = 1024; i < 2048; i++)
|
||||
mantissatable[i] = 0x38000000 + ((i - 1024) << 13);
|
||||
|
||||
exponenttable[0] = 0;
|
||||
exponenttable[32] = 0x80000000;
|
||||
|
||||
for (uint32 i = 0; i < 31; i++)
|
||||
exponenttable[i] = i << 23;
|
||||
|
||||
for (uint32 i = 33; i < 63; i++)
|
||||
exponenttable[i] = 0x80000000 + ((i - 32) << 23);
|
||||
|
||||
exponenttable[31] = 0x47800000;
|
||||
exponenttable[63] = 0xC7800000;
|
||||
|
||||
for (int i = 0; i < 64; i++)
|
||||
{
|
||||
if (i == 0 || i == 32)
|
||||
offsettable[i] = 0;
|
||||
else
|
||||
offsettable[i] = 1024;
|
||||
}
|
||||
|
||||
|
||||
// tables for float -> half conversions.
|
||||
|
||||
for (uint32 i = 0; i < 256; i++)
|
||||
{
|
||||
int e = (int) i - 127;
|
||||
|
||||
if (e < -24) // Very small numbers map to zero
|
||||
{
|
||||
basetable[i | 0x000] = 0x0000;
|
||||
basetable[i | 0x100] = 0x8000;
|
||||
shifttable[i | 0x000] = 24;
|
||||
shifttable[i | 0x100] = 24;
|
||||
}
|
||||
else if (e < -14) // Small numbers map to denorms
|
||||
{
|
||||
basetable[i | 0x000] = (0x0400 >> (-e - 14));
|
||||
basetable[i | 0x100] = (0x0400 >> (-e - 14)) | 0x8000;
|
||||
shifttable[i | 0x000] = -e - 1;
|
||||
shifttable[i | 0x100] = -e - 1;
|
||||
}
|
||||
else if (e <= 15) // Normal numbers just lose precision
|
||||
{
|
||||
basetable[i | 0x000] = ((e + 15) << 10);
|
||||
basetable[i | 0x100] = ((e + 15) << 10) | 0x8000;
|
||||
shifttable[i | 0x000] = 13;
|
||||
shifttable[i | 0x100] = 13;
|
||||
}
|
||||
else if (e < 128) // Large numbers map to Infinity
|
||||
{
|
||||
basetable[i | 0x000] = 0x7C00;
|
||||
basetable[i | 0x100] = 0xFC00;
|
||||
shifttable[i | 0x000] = 24;
|
||||
shifttable[i | 0x100] = 24;
|
||||
}
|
||||
else // Infinity and NaN's stay Infinity and NaN's
|
||||
{
|
||||
basetable[i | 0x000] = 0x7C00;
|
||||
basetable[i | 0x100] = 0xFC00;
|
||||
shifttable[i | 0x000] = 13;
|
||||
shifttable[i | 0x100] = 13;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
float halfToFloat(half h)
|
||||
{
|
||||
union { float f; uint32 i; } conv;
|
||||
|
||||
conv.i = mantissatable[offsettable[h >> 10] + (h & 0x3FF)] + exponenttable[h >> 10];
|
||||
return conv.f;
|
||||
}
|
||||
|
||||
half floatToHalf(float f)
|
||||
{
|
||||
union { float f; uint32 i; } conv;
|
||||
conv.f = f;
|
||||
|
||||
return basetable[(conv.i >> 23) & 0x1FF] + ((conv.i & 0x007FFFFF) >> shifttable[(conv.i >> 23) & 0x1FF]);
|
||||
}
|
||||
|
||||
} // love
|
||||
@@ -0,0 +1,38 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
* arising from the use of this software.
|
||||
*
|
||||
* Permission is granted to anyone to use this software for any purpose,
|
||||
* including commercial applications, and to alter it and redistribute it
|
||||
* freely, subject to the following restrictions:
|
||||
*
|
||||
* 1. The origin of this software must not be misrepresented; you must not
|
||||
* claim that you wrote the original software. If you use this software
|
||||
* in a product, an acknowledgment in the product documentation would be
|
||||
* appreciated but is not required.
|
||||
* 2. Altered source versions must be plainly marked as such, and must not be
|
||||
* misrepresented as being the original software.
|
||||
* 3. This notice may not be removed or altered from any source distribution.
|
||||
**/
|
||||
|
||||
#ifndef LOVE_HALF_FLOAT_H
|
||||
#define LOVE_HALF_FLOAT_H
|
||||
|
||||
#include "int.h"
|
||||
|
||||
namespace love
|
||||
{
|
||||
|
||||
typedef uint16 half;
|
||||
|
||||
void halfInit();
|
||||
|
||||
float halfToFloat(half h);
|
||||
half floatToHalf(float f);
|
||||
|
||||
} // love
|
||||
|
||||
#endif // LOVE_HALF_FLOAT_H
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* Copyright (c) 2006-2016 LOVE Development Team
|
||||
* Copyright (c) 2006-2018 LOVE Development Team
|
||||
*
|
||||
* This software is provided 'as-is', without any express or implied
|
||||
* warranty. In no event will the authors be held liable for any damages
|
||||
@@ -64,6 +64,16 @@ std::string getExecutablePath();
|
||||
**/
|
||||
void vibrate();
|
||||
|
||||
/**
|
||||
* Enable mix mode (e.g. with background music apps) and playback with a muted device.
|
||||
**/
|
||||
void setAudioMixWithOthers(bool mixEnabled);
|
||||
|
||||
/**
|
||||
* Returns whether another application is playing audio.
|
||||
**/
|
||||
bool hasBackgroundMusic();
|
||||
|
||||
} // ios
|
||||
} // love
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user