Skip to content

Commit

Permalink
Merge branch 'develop' into ndCache
Browse files Browse the repository at this point in the history
  • Loading branch information
nico-abram authored Sep 8, 2018
2 parents 8067cb8 + 0349919 commit ec0f3bc
Show file tree
Hide file tree
Showing 1,636 changed files with 306,349 additions and 209,945 deletions.
28 changes: 28 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
name: Bug report
about: Create a report to help us improve

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Version [e.g. 22]

**Additional context**
Add any other context about the problem here.
10 changes: 9 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ Contents/
Xcode/Info.StepMania.plist
Xcode/plistHelper.hpp
src/generated
extern/mad-0.15.1b/config.h
extern/libjpeg/jconfig.h
extern/newogg/include/ogg/config_types.h

Expand All @@ -47,6 +48,9 @@ PBProject/Hardware.plist
*.dmg
.DS_Store

# Visual Studio 2015/2017 cache/options directory
.vs/

# Visual Studio
*.sln
*.vcxproj
Expand Down Expand Up @@ -84,7 +88,7 @@ core
# StepMania Specific
Cache/
Save/**
!Save/LocalProfiles/00000000
Songs/
Logs/
src/*.so
crashinfo.txt
Expand All @@ -106,3 +110,7 @@ tests/*.err

nsis_strings_temp\.inc
BatchRecalc/*

Xcode/Info\.Etterna\.plist

extern/LuaJit*/lj_*def.h
6 changes: 6 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[submodule "extern/SQLiteCpp"]
path = extern/SQLiteCpp
url = https://github.com/etternagame/SQLiteCpp
[submodule "extern/json"]
path = extern/json
url = https://github.com/etternagame/json.git
49 changes: 43 additions & 6 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,13 @@ sudo: required

matrix:
include:
- env: CXX_COMPILER=clang++-3.6 CC_COMPILER=clang-3.6 BUILD_TYPE=Release WITH_FFMPEG=ON
- env: CXX_COMPILER=clang++-3.6 CC_COMPILER=clang-3.6 BUILD_TYPE=Release WITH_FFMPEG=OFF
WITH_FFMPEG_JOBS=1
os: osx
- env: CXX_COMPILER=clang++-3.6 CC_COMPILER=clang-3.6 BUILD_TYPE=Release WITH_FFMPEG=OFF
WITH_FFMPEG_JOBS=1
compiler: clang
addons:
addons: &1
apt:
sources:
- ubuntu-toolchain-r-test
Expand All @@ -16,6 +19,7 @@ matrix:
- nasm
- libudev-dev
- clang-3.6
- libmad0-dev
- libgtk2.0-dev
- binutils-dev
- libasound-dev
Expand All @@ -27,7 +31,12 @@ matrix:
- libxtst-dev
- libxrandr-dev
- libglew-dev
- env: CXX_COMPILER=g++-5 CC_COMPILER=gcc-5 BUILD_TYPE=Release WITH_FFMPEG=ON WITH_FFMPEG_JOBS=1
- libuv-dev
- env: CXX_COMPILER=clang++-3.6 CC_COMPILER=clang-3.6 BUILD_TYPE=Release WITH_FFMPEG=ON
WITH_FFMPEG_JOBS=1
compiler: clang
addons: *1
- env: CXX_COMPILER=g++-5 CC_COMPILER=gcc-5 BUILD_TYPE=Release WITH_FFMPEG=OFF WITH_FFMPEG_JOBS=1 MATRIX_EVAL="CC=gcc-5 && CXX=g++-5"
compiler: gcc
addons:
apt:
Expand All @@ -38,6 +47,7 @@ matrix:
- libudev-dev
- gcc-5
- g++-5
- libmad0-dev
- libgtk2.0-dev
- binutils-dev
- libasound-dev
Expand All @@ -49,6 +59,7 @@ matrix:
- libxtst-dev
- libxrandr-dev
- libglew-dev
- libuv-dev
coverity_scan:
project:
name: etternagame/etterna
Expand All @@ -59,13 +70,39 @@ matrix:
branch_pattern: coverity_scan

before_script:
- sudo ln -s /usr/include/x86_64-linux-gnu/zconf.h /usr/include
- if [ "${CXX_COMPILER}" = "g++-5" ]; then export CXX="g++-5" CC="gcc-5"; fi
- if [ "$TRAVIS_OS_NAME" != "osx" ]; then sudo ln -s /usr/include/x86_64-linux-gnu/zconf.h /usr/include; fi
- git submodule update --init
- mkdir ${TRAVIS_BUILD_DIR}/build && cd ${TRAVIS_BUILD_DIR}/build
- cmake .. -DCMAKE_CXX_COMPILER=${CXX_COMPILER} -DCMAKE_C_COMPILER=${CC_COMPILER} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DWITH_FFMPEG=${WITH_FFMPEG} -DWITH_FFMPEG_JOBS=${WITH_FFMPEG_JOBS}
- if [ "$TRAVIS_OS_NAME" != "osx" ]; then cmake .. -DCMAKE_CXX_COMPILER=${CXX_COMPILER} -DCMAKE_C_COMPILER=${CC_COMPILER} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} -DWITH_FFMPEG=${WITH_FFMPEG} -DWITH_FFMPEG_JOBS=${WITH_FFMPEG_JOBS}; fi
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew install openssl;
export LIBRARY_SEARCH_PATHS=${TRAVIS_BUILD_DIR}/Xcode/Libraries;
export LIBRARY_PATH=${TRAVIS_BUILD_DIR}/Xcode/Libraries;
brew install --HEAD libuv --universal;
brew install yasm;
brew install nasm;
brew uninstall libuv;
brew install libuv --universal;
brew uninstall openssl;
brew install openssl --universal;
brew uninstall zlib;
brew install zlib --universal;
cmake -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl -G "Xcode" ..; fi

script:
- if [ "${COVERITY_SCAN_BRANCH}" != 1 ]; then make -j 4; fi
- if [ "$TRAVIS_OS_NAME" != "osx" ]; then make -j 4; fi
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then xcodebuild ARCHS="x86_64" -project Etterna.xcodeproj -target Etterna -destination 'platform=OS X,arch=x86_64' -xcconfig ../Xcode/conf.cnf -configuration RelWithDebInfo;
mv ../*.app ../Etterna.app;
xcodebuild ARCHS="x86_64" -project Etterna.xcodeproj -target dmg -configuration RelWithDebInfo; fi

before_install:
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then rvm install 2.2.6;
gem install dropbox-deployment; fi

after_success:
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then cd ${TRAVIS_BUILD_DIR};
ruby uploadDmg.rb; fi

env:
global:
secure: gXXVXUQdzic8X/WhHgPih7zEPOMvzz1o4XudnEgiIGrk5gwVajXLVc0TEVT9uogeuHZxhT0sM7idYmtSXTe6zUBfoV/WXnyfeZVQhI59iy35bWUKdbpPpO9bAafdmMB2d9b3v5QT8iubOPAudVNGENBZiXiGovAJBmqxnjpjdU1aQBsy5rhFssSOcizIV7GrOcsCGoilTceonPtLp8xX2mt/WQJhPHrAUmZks5uPNNYDXv9a8BoLeTYKzbFoz7GNvoxEUfmFV2W2jr/szfpnbmvRMqKgErsJDlc2b/oaD0EKUJOdu8eNNuOpLKZSPiMQstmDZtQ65boOuXVudAx3T1zFaDhhP3PZwG6KLwnrf0ttLRSdIW5Mm+SzEHuJXp2qwBPyAQJIKJLqqu/OUeNorWfz0jFvYyVlNZlTX5ZaxjEj05qj3DAEfokCuueNY+KFccdouMQX0ks3of4/WKLYH1BL743Binc5SYgK38xA7bzwcjFyyEBQFoc9FayrLkk0Yi/ed2mV1XdBvr7vmFxYDlZQkg425KLtCX7GN/++5FVF01IH1cZa3siJ7XT5EJBu6vxisByHRwPSWWagn2WgvkxHjgAnBcvgYBIcoKsxFBytsyyh3g5fVSWovSnTerr5glwv7cXdyhMAXp1gGL900tjij0BiEWRzKfbiroDjVn0=
2 changes: 1 addition & 1 deletion Announcers/instructions.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Place announcer folders in this directory.

[Announcer format]
StepMania's announcers look for certain names. These can either be a single sound,
Etterna's announcers look for certain names. These can either be a single sound,
or a folder containing many sounds (of which one is picked at random).

[Announcer calls]
Expand Down
22 changes: 11 additions & 11 deletions CMake/CPackSetup.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -5,29 +5,29 @@ else()
endif()

set(CPACK_PACKAGE_NAME "${SM_EXE_NAME}")
set(CPACK_PACKAGE_VENDOR "StepMania")
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Rhythm Game Simulator")
set(CPACK_PACKAGE_VENDOR "Etterna")
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Rhythm Game Simulator For Keyboard")
set(CPACK_PACKAGE_VERSION_MAJOR "${SM_VERSION_MAJOR}")
set(CPACK_PACKAGE_VERSION_MINOR "${SM_VERSION_MINOR}")
set(CPACK_PACKAGE_VERSION_PATCH "${SM_VERSION_PATCH}")
set(CPACK_PACKAGE_VERSION "${SM_VERSION_TRADITIONAL}")
set(CPACK_NSIS_HELP_LINK "https://github.com/stepmania/stepmania/issues")
set(CPACK_NSIS_HELP_LINK "https://github.com/etternagame/etterna/issues")
set(CPACK_NSIS_PACKAGE_NAME "${SM_EXE_NAME} ${NSIS_VERSION_FINAL}")
set(CPACK_NSIS_URL_INFO_ABOUT "http://www.stepmania.com/")
set(CPACK_NSIS_URL_INFO_ABOUT "https://etternaonline.com/")
set(CPACK_NSIS_ENABLE_UNINSTALL_BEFORE_INSTALL ON)
set(CPACK_RESOURCE_FILE_README "${SM_ROOT_DIR}/README.md")
set(CPACK_RESOURCE_FILE_LICENSE "${SM_CMAKE_DIR}/license_install.txt")
set(CPACK_PACKAGE_EXECUTABLES
"${SM_EXE_NAME}" "StepMania ${SM_VERSION_MAJOR}"
"${SM_EXE_NAME}" "Etterna ${SM_VERSION_MAJOR}"
)
set(CPACK_NSIS_MUI_ICON "${SM_INSTALLER_DIR}/install.ico")
set(CPACK_NSIS_MUI_UNIICON "${SM_INSTALLER_DIR}/uninstall.ico")
set(CPACK_NSIS_COMPRESSOR "/SOLID lzma")

# Custom items for nsis go here.
set(CPACK_SM_NSIS_REPOSITORY "https://github.com/stepmania/stepmania")
set(CPACK_SM_NSIS_REPOSITORY "https://github.com/etternagame/etterna/")
set(CPACK_SM_NSIS_ROOT_DIR "${SM_ROOT_DIR}")
set(CPACK_SM_NSIS_PRODUCT_ID "StepMania ${SM_VERSION_MAJOR}.${SM_VERSION_MINOR}")
set(CPACK_SM_NSIS_PRODUCT_ID "Etterna ${SM_VERSION_MAJOR}.${SM_VERSION_MINOR}")
set(CPACK_SM_NSIS_PRODUCT_VERSION "${SM_VERSION_TRADITIONAL}.0")
set(CPACK_SM_NSIS_HEADER_BITMAP "${SM_INSTALLER_DIR}/header-ett.bmp")
set(CPACK_SM_NSIS_WELCOME_BITMAP "${SM_INSTALLER_DIR}/welcome-ett.bmp")
Expand All @@ -40,12 +40,12 @@ if(WIN32)

set(CPACK_PACKAGE_FILE_NAME "${SM_EXE_NAME}-${NSIS_VERSION_FINAL}-win32")
# By setting these install keys manually,
# The default directory of "StepMania major.minor.patch" is lost.
# The default directory of "Etterna major.minor.patch" is lost.
# This is currently done to maintain backwards compatibility.
# However, removing these two will allow for multiple versions of StepMania
# However, removing these two will allow for multiple versions of Etterna
# to be installed relatively cleanly.
set(CPACK_PACKAGE_INSTALL_DIRECTORY "StepMania ${SM_VERSION_MAJOR}")
set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "StepMania ${SM_VERSION_MAJOR}")
set(CPACK_PACKAGE_INSTALL_DIRECTORY "Etterna ${SM_VERSION_MAJOR}")
set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "Etterna ${SM_VERSION_MAJOR}")
set(CPACK_NSIS_EXECUTABLES_DIRECTORY "Program")
set(CPACK_NSIS_INSTALL_ROOT "C:\\\\Games")
endif()
Expand Down
7 changes: 5 additions & 2 deletions CMake/DefineOptions.cmake
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Prep options that are needed for each platform.

# This option allows for networking support with StepMania.
# This option allows for networking support with Etterna.
option(WITH_NETWORKING "Build with networking support." ON)

# This option quiets warnings that are a part of external projects.
option(WITH_EXTERNAL_WARNINGS "Build with warnings for all components, not just StepMania." OFF)
option(WITH_EXTERNAL_WARNINGS "Build with warnings for all components, not just Etterna." OFF)

# This option is not yet working, but will likely default to ON in the future.
option(WITH_LTO "Build with Link Time Optimization (LTO)/Whole Program Optimization." OFF)
Expand All @@ -25,6 +25,9 @@ option(WITH_PORTABLE_TOMCRYPT "Build with assembly/free tomcrypt, making it port
# If WITH_PORTABLE_TOMCRYPT is ON, this will automatically have no effect.
option(WITH_NO_ROLC_TOMCRYPT "Build without the ROLC assembly instructions for tomcrypt. (Ignored by Apple builds)" OFF)

# Turn this option off to not use the GPL exclusive components.
option(WITH_GPL_LIBS "Build with GPL libraries." ON)

# Turn this option off to disable using WAV files with the game.
# Note that it is recommended to keep this on.
option(WITH_WAV "Build with WAV Support." ON)
Expand Down
70 changes: 70 additions & 0 deletions CMake/Modules/FindLibUV.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
find_library(LibUV_LIBRARY
NAMES uv
)
mark_as_advanced(LibUV_LIBRARY)

find_path(LibUV_INCLUDE_DIR
NAMES uv.h
)
mark_as_advanced(LibUV_INCLUDE_DIR)

#-----------------------------------------------------------------------------
# Extract version number if possible.
set(_LibUV_H_REGEX "#[ \t]*define[ \t]+UV_VERSION_(MAJOR|MINOR|PATCH)[ \t]+[0-9]+")
if(LibUV_INCLUDE_DIR AND EXISTS "${LibUV_INCLUDE_DIR}/uv-version.h")
file(STRINGS "${LibUV_INCLUDE_DIR}/uv-version.h" _LibUV_H REGEX "${_LibUV_H_REGEX}")
elseif(LibUV_INCLUDE_DIR AND EXISTS "${LibUV_INCLUDE_DIR}/uv.h")
file(STRINGS "${LibUV_INCLUDE_DIR}/uv.h" _LibUV_H REGEX "${_LibUV_H_REGEX}")
else()
set(_LibUV_H "")
endif()
foreach(c MAJOR MINOR PATCH)
if(_LibUV_H MATCHES "#[ \t]*define[ \t]+UV_VERSION_${c}[ \t]+([0-9]+)")
set(_LibUV_VERSION_${c} "${CMAKE_MATCH_1}")
else()
unset(_LibUV_VERSION_${c})
endif()
endforeach()
if(DEFINED _LibUV_VERSION_MAJOR AND DEFINED _LibUV_VERSION_MINOR)
set(LibUV_VERSION_MAJOR "${_LibUV_VERSION_MAJOR}")
set(LibUV_VERSION_MINOR "${_LibUV_VERSION_MINOR}")
set(LibUV_VERSION "${LibUV_VERSION_MAJOR}.${LibUV_VERSION_MINOR}")
if(DEFINED _LibUV_VERSION_PATCH)
set(LibUV_VERSION_PATCH "${_LibUV_VERSION_PATCH}")
set(LibUV_VERSION "${LibUV_VERSION}.${LibUV_VERSION_PATCH}")
else()
unset(LibUV_VERSION_PATCH)
endif()
else()
set(LibUV_VERSION_MAJOR "")
set(LibUV_VERSION_MINOR "")
set(LibUV_VERSION_PATCH "")
set(LibUV_VERSION "")
endif()
unset(_LibUV_VERSION_MAJOR)
unset(_LibUV_VERSION_MINOR)
unset(_LibUV_VERSION_PATCH)
unset(_LibUV_H_REGEX)
unset(_LibUV_H)

#-----------------------------------------------------------------------------
find_package_handle_standard_args(LibUV
FOUND_VAR LibUV_FOUND
REQUIRED_VARS LibUV_LIBRARY LibUV_INCLUDE_DIR
VERSION_VAR LibUV_VERSION
)
set(LIBUV_FOUND ${LibUV_FOUND})

#-----------------------------------------------------------------------------
# Provide documented result variables and targets.
if(LibUV_FOUND)
set(LibUV_INCLUDE_DIRS ${LibUV_INCLUDE_DIR})
set(LibUV_LIBRARIES ${LibUV_LIBRARY})
if(NOT TARGET LibUV::LibUV)
add_library(LibUV::LibUV UNKNOWN IMPORTED)
set_target_properties(LibUV::LibUV PROPERTIES
IMPORTED_LOCATION "${LibUV_LIBRARY}"
INTERFACE_INCLUDE_DIRECTORIES "${LibUV_INCLUDE_DIRS}"
)
endif()
endif()
9 changes: 9 additions & 0 deletions CMake/Modules/FindMad.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
find_path(LIBMAD_INCLUDE_DIR mad.h)

find_library(LIBMAD_LIBRARY mad)

include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(LIBMAD DEFAULT_MSG LIBMAD_LIBRARY LIBMAD_INCLUDE_DIR)

mark_as_advanced(LIBMAD_LIBRARY LIBMAD_INCLUDE_DIR)

6 changes: 3 additions & 3 deletions CMake/Modules/NSIS.template.in
Original file line number Diff line number Diff line change
Expand Up @@ -599,9 +599,9 @@ FunctionEnd

; Modify the settings for MUI_PAGE_FINISH here.
!define MUI_FINISHPAGE_NOAUTOCLOSE
!define MUI_FINISHPAGE_RUN "$INSTDIR\Program\StepMania.exe"
!define MUI_FINISHPAGE_RUN "$INSTDIR\Program\Etterna.exe"
!define MUI_FINISHPAGE_RUN_NOTCHECKED
!define MUI_FINISHPAGE_RUN_TEXT "Launch StepMania"
!define MUI_FINISHPAGE_RUN_TEXT "Launch Etterna"

!insertmacro MUI_PAGE_FINISH

Expand Down Expand Up @@ -696,7 +696,7 @@ Section "-Core installation"
Push "@CPACK_PACKAGE_VERSION@"
Call ConditionalAddToRegisty
Push "Comments"
Push "StepMania @CPACK_PACKAGE_VERSION_MAJOR@ is a rhythm game simulator."
Push "Etterna @CPACK_PACKAGE_VERSION_MAJOR@ is a rhythm game."
Call ConditionalAddToRegisty
Push "Publisher"
Push "@CPACK_PACKAGE_VENDOR@"
Expand Down
2 changes: 1 addition & 1 deletion CMake/SMDefs.cmake
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Set up version numbers according to the new scheme.
set(SM_VERSION_MAJOR 0)
set(SM_VERSION_MINOR 58)
set(SM_VERSION_MINOR 60)
set(SM_VERSION_PATCH 0)
set(SM_VERSION_TRADITIONAL "${SM_VERSION_MAJOR}.${SM_VERSION_MINOR}.${SM_VERSION_PATCH}")

Expand Down
Loading

0 comments on commit ec0f3bc

Please sign in to comment.