Commit Graph

120 Commits

Author SHA1 Message Date
Ozkan Sezer e32221a104 cmake: add -Wall to CFLAGS for gcc and clang. 2022-06-15 08:56:28 +03:00
Anonymous Maarten 2a90b1f469 cmake: collapse MSVC and MINGW into WIN32 2022-06-15 08:29:50 +03:00
Anonymous Maarten 88ef84c053 Make sure `pthread is not linked against when building with MinGW
Co-authored-by: Ryan C. Gordon <icculus@icculus.org>
2022-06-15 08:29:50 +03:00
Anonymous Maarten aabb732caf cmake: fix warnings + use target_include_directories 2022-06-15 08:29:50 +03:00
Ryan C. Gordon 64807353df
cmake: Don't try to use readline if you don't also have curses.
Fixes #17.
2022-05-20 23:19:41 -04:00
Ozkan Sezer 14691399cd disable dllexport from static builds.
Closes https://github.com/icculus/physfs/pull/15 .
2022-04-16 20:10:02 +03:00
Ozkan Sezer eec3f7f79a cmake: set os2 dll name to 'physfs'
not libphysfs, because of os2 limitation.
2022-04-16 11:42:50 -04:00
Ryan C. Gordon 045ee2cb7f
cmake: Moved the install stuff around a little. 2022-04-15 20:45:21 -04:00
Ryan C. Gordon a329a35993
cmake: Don't use the oldschool `endif(SAME_THING_AS_IF_LINE)` syntax. 2022-04-15 20:39:39 -04:00
Semphris 7305ee92a2 Added option to disable the installer 2022-04-15 20:25:10 -04:00
Arthur Brianville (Ybalrid) 23690f316d Add option to turn off the build of the documentation if Doxygen was found 2021-09-02 22:15:03 -04:00
James Le Cuirot d8ba1a935c Use the GNUInstallDirs CMake module to respect installation locations
Apparently use of LIB_SUFFIX is now discouraged. GNUInstallDirs does a
better job of setting a default.

The libdir of ${prefix}/lib in the pkg-config file caused warnings,
and possibly even failures, when linking on multilib systems where
/usr/lib is for 32-bit libraries rather than 64-bit libraries.
2021-07-11 19:00:28 -04:00
Ryan C. Gordon 0145431345
cmake: fixed "dist" target to use git instead of Mercurial. 2021-06-30 23:53:21 -04:00
Ryan C. Gordon 55c3d9f9d8 android: PhysicsFS now has actual Android support.
This compiled and worked on Android before, if you didn't care about
PHYSFS_getBaseDir() and PHYSFS_getPrefDir() being useful. Now you can pass
PHYSFS_init() some necessary Android objects to solve this. Passing NULL
to PHYSFS_init is acceptable and will simply report "/" for the base dir and
prefdir, under the assumption that the app queried the OS for these directly
instead.
2020-06-12 03:37:58 -04:00
Ryan C. Gordon 9cb45dc6cb cmake: Minimum CMake version is now 2.8.12.
(transplanted from de1ea3b2cfc45ce921b5571a637b3b747173184f)
2019-05-20 23:38:12 -04:00
Kevin d'Orange 8791811909 CMake: made install step export the targets 2019-04-19 12:33:08 +02:00
Ryan C. Gordon 28ac5794b1 cmake: Special build target names ("dist" "docs" "uninstall") can be renamed. 2019-02-10 15:45:01 -05:00
Ryan C. Gordon 3597a7b69a Call the default branch "3.1.0" to avoid confusion.
This way, if someone builds the default branch instead of stable-3.0, we'll
be able to distinguish.

No immediate plans for a format 3.1 effort at the moment, though.
2018-03-08 11:51:46 -05:00
Ryan C. Gordon 9e756312d5 Bumped version to 3.0.0! 2017-09-27 11:54:25 -04:00
R?mi Verschelde 3167a48675 CMake: Honor LIB_SUFFIX for pkgconfig install path 2017-09-27 21:04:15 +02:00
Ryan C. Gordon 4ca60a090b cmake: mark readline include directories as SYSTEM (thanks, Tobias!). 2017-09-25 17:07:08 -04:00
Marty Plummer db700fd327 Allow physfs.pc generation on mingw-w64 and osx homebrew/etc,
Rename physfs-static to physfs on mingw-w64
2017-07-16 23:03:07 -05:00
Ryan C. Gordon e19422cc06 qnx: Added more proper support for QNX. 2017-08-16 20:02:54 -04:00
Ryan C. Gordon cd0ccf64ed Bump version to 2.1.1, since we've been at 2.1.0 for 8.5 years. :)
There isn't going to be an official 2.1.1 (or 2.1.0) release; we'll let this
marinate a little and jump to 3.0!
2017-08-15 02:08:24 -04:00
Ryan C. Gordon 982411ec8a apple: Start using some Cocoa APIs, clean up a few related things. 2017-08-08 03:36:56 -04:00
Ryan C. Gordon 0a730433ae Rename physfs_platform_macos.c to physfs_platform_apple.m
It's not really "macOS," it's all of Apple's platforms (iOS, watchOS,
tvOS...AppleCarOS? heh), and second...we're about to need access to Cocoa
APIs, so we need it to be Objective-C. I fought as long as I could.  :/
2017-08-08 02:34:25 -04:00
Ryan C. Gordon ca4d5be5f8 cmake: Pacify warning about Policy CMP0042 not being set. 2017-08-08 02:27:47 -04:00
Ryan C. Gordon 99992bb1d5 WinRT: Disable harmless (in our case) linker warning. 2017-07-26 09:03:04 -04:00
Ryan C. Gordon f578f85557 Fixed building for WinRT via CMake. 2017-07-25 19:55:08 -04:00
Ryan C. Gordon 1e2650b6fc Serious cleanup and update of Windows RT support.
This compiles for WinRT, but isn't otherwise tested at all yet.
2017-07-24 03:29:33 -04:00
Ryan C. Gordon 18c89c1cbc Renamed all the sources to start with "physfs_"
So now you can drop this into your program and not worry about filename
conflicts, or where "platform_unix.c" came from in the debugger, etc.

Also renamed the "beos" sources to "haiku" and "macosx" to "macos" to match
modern platform names.
2017-07-22 12:59:06 -04:00
Ryan C. Gordon d9f040cb6a Add platform_os2.c to the CMake file. 2017-07-22 12:55:50 -04:00
Ryan C. Gordon a5d3dd498e Rewrote the 7zip archiver.
This also updates the LZMA SDK to something more modern, which is now public
domain code, and squashed it into a single header for easier building.
2017-07-17 12:26:50 -04:00
Ryan C. Gordon 46db289145 Fix lzma option in CMakeLists.txt 2017-07-12 20:39:03 -04:00
Ryan C. Gordon 19b15d34a1 Cleaned up what symbols are exported from the library. 2017-07-12 15:41:12 -04:00
Ryan C. Gordon 9ae6fc9e87 Maybe macOS needs -fno-common ...? 2017-07-12 02:40:16 -04:00
Ryan C. Gordon 5f5eca8d01 Remove -pthread argument. 2017-07-12 00:33:47 -04:00
Ryan C. Gordon 68ad1fa8c5 Removed BeOS support (Haiku still supported, though!).
Since Haiku has pthread support, dropped the BLocker code and use the pthread
code from platform_posix.c instead.
2017-07-12 00:16:57 -04:00
Ryan C. Gordon 73070339a4 Simplify CMakeLists.txt, etc.
Try to test things with preprocessor macros instead of CMake, and get rid of
silly options like turning off thread safety.
2017-07-11 23:32:46 -04:00
Ryan C. Gordon 4ae17a5d60 The archiver options in the CMake file should disable, not enable.
We now try to compile all archivers by default unless one explicit disables
them individually, so these options needed to be handled differently.
2017-07-11 00:40:51 -04:00
Ryan C. Gordon 3b5091ba9f macOS only needs to link against CoreFoundation, not Carbon. 2017-07-11 00:39:18 -04:00
Ryan C. Gordon f2cbac7479 Don't rename the static library on Windows.
"physfs.lib" will also be the import library's name, so it's best to leave it
separate on that platform.
2017-07-10 23:32:54 -04:00
Ryan C. Gordon a7f5ebf684 Added some option information to the CMake output. 2017-07-10 22:56:49 -04:00
Ryan C. Gordon ebb00f0520 Fixed building on MingW. 2017-07-10 17:50:27 -04:00
Ryan C. Gordon 15c18b0c04 os2: added OS/2 support back in.
With the release of ArcaOS, this is a live platform again.

This code probably doesn't compile yet; I've just given it a first shot at
resolving the changes between the last OS/2-supported revision and now.

This still needs Unicode support added in any case.
2017-07-05 21:29:37 -04:00
Francesco Bertolaccini e4206408e5 Add support for VDF 2017-06-20 13:22:41 -04:00
Ryan C. Gordon 6d9923706d Added pkg-config support (thanks, Jonas!). 2013-11-13 00:38:35 -05:00
Ryan C. Gordon 8156bd219c Only check for pthread library if pthread.h was found. 2012-11-25 21:52:36 -05:00
Ryan C. Gordon 06edd385fc From stable-2.0: explicitly check for pthread library, and link against it. 2012-11-25 21:51:43 -05:00
Aleksi Nurmi fd137cba42 SLB archiver 2012-11-12 23:40:29 +02:00