-
Notifications
You must be signed in to change notification settings - Fork 42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
(ready) Build IVAN.app for Mac OS X #388
Conversation
CMakeLists.txt
Outdated
@@ -10,7 +10,14 @@ set(PROJECT_VERSION ${VERSION_MAJOR}.${VERSION_MINOR}) | |||
set(CMAKE_CXX_FLAGS "-std=c++11 ${CMAKE_CXX_FLAGS}") | |||
add_definitions(-DIVAN_VERSION="${PROJECT_VERSION}" -DUSE_SDL) | |||
|
|||
if(UNIX) | |||
option(BUILD_MAC_APP "Build standalone application for MacOS" OFF) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe I need to make it independent of Travis CI.
This is ready now. Please review and see if it brings problems for the windows build. The compiled windows app is also at https://github.com/jakwings/ivan/releases/tag/Personal |
interesting, I use it only on my machine, didn't commit here cuz of BSD3, btw, I am not saying this debug log is the best thing around, so if there is something better to add to ivan I would like to know :) PS.: it generates a lot of debug log (that requires using it's disable-able macros), |
Ah, this: https://www.gnu.org/licenses/gpl-faq.html#OrigBSD The SDL2 frameworks are using the BSD-3-clause license. I'm still not sure if it is okay, according to https://spdx.org/licenses/ Thanks for the info, I'll try -DDBGMSG next time. (Ah, I don't use Eclipse. :-P) |
Ok, it seems the SDL2's BSD license is almost the same as the BSD 3-Clause "New" or "Revised" License, which is listed as compatible with FSF projects. |
btw I am not very good about it, that's why I love BSD3 xD thanks on the links btw! I have to use eclipse cuz of my machine speed, intellijIdea is extremellly heavy and have some license clauses I didnt like (not saying they are bad clauses, just that I didnt like it, probably just having a hard time to understand/follow them again..) |
After tweaking .travis.yml for a while, I think I have sorted out a bit where Travis uses its own parser for variables and globs in the config. 😓 |
The latest executables are at https://github.com/jakwings/ivan/releases/tag/Personal |
@@ -15,8 +25,8 @@ set_source_files_properties( | |||
PROPERTIES HEADER_FILE_ONLY TRUE) | |||
|
|||
add_executable(ivan ${IVAN_SOURCES} Resource/Ivan.rc) | |||
target_include_directories(ivan PUBLIC Include ../Felib/Include ../audio ../fantasyname) | |||
target_link_libraries(ivan FeLib FeAudio SDL2_mixer pcre xbrzscale fantasyname) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I get a linker error in the MSYS2 compiler if SDL2_mixer
is omitted. Adding it makes it work again.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I need to fix FindSDl2.cmake. I shouldn't put the flags for SDL2_mixer into SDL2_LIBRARY and SDL2_INCLUDE_DIR.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should I check SDL 1.2.0 as well?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should I check SDL 1.2.0 as well?
I don't know of anyone in the community who is compiling with SDL 1.2.0, so I don't think we need to support the check for that.
This is great work @iology ivan.exe from your personal build works correctly. Just one issue remaining for the MSYS2 compile system, but it is a small thing (see inline comment about Can you confirm that CI deployment is still triggered by pushing a Otherwise it is ready to be merged. Should I update the version and push a tag immediately after merging? (@iology, you can also do the honours). |
The latest build: https://github.com/jakwings/ivan/releases/tag/v054-test
My pleasure, but I don't know how frequently the game should be released. What about other recent PRs? I can't feel how many people are eager for a mac release. 😅 |
Yup MSYS2 works.
I'm not sentimental about version numbers, as long as we never reach 1.0... lol nah |
Only members can push a tag for this repo. My tag will still stay on my fork. /facepalm |
Done. The merge button doesn't pull tags, I think. |
I have an urge to clean up the makefiles a bit more. Please wait. ;-) |
I've tried my best to eliminate all places where spaces can cause troubles, except CXXFLAGS, LDFLAGS, etc. (blame cmake and Makefile) Files: https://github.com/jakwings/ivan/releases/tag/v054-test2 |
"Space costs time."
Also the release for IVAN.app. WOO HOO
The ivan.exe seems to run well with Wine too. The midi is great. What's the best soundfont you found for "fluidsynth" or the like to emulate the sound on windows? This is the one I'm using now: https://packages.debian.org/stretch/all/fluid-soundfont-gm/download |
I havent tried ivan with Wine, now I wonder if midi may work better? some linux midi issues here |
The midi is better on Windows. I will need to provide configs for fluidsynth to chain several soundfonts to achieve the best effect. Tough work. |
I dunno. @AdrianGin what sound fonts do you use? |
I thought there was nothing better than GM |
I use the Roland GM provided in Windows for 'testing' just because that's what it will sound like for most users. Yamaha XG one's are a good balance between good sounding and soundfont size. When designing the soundtracks, it's a case of providing to the lowest common denominator! |
Can this be merged now (without the version change)? Or I'm going to submit another PR for properly locating libpcre on mac. |
Sorry for the delay. I'll merge it as it is, the version number needs to change at some point anyway, let it be today. |
ping #343
Todos: