pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Warsow port. Let's help each other.



On Tue, May 14, 2019 at 01:38:13PM +0300, Leonid Bobrov wrote:
> I've finished porting Warsow on my side, I hope you'll use my patches
> to create pkgsrc ports and Warsow will just work at NetBSD.
> 
> https://github.com/mazocomp/openbsd-wip/tree/warsow/games/warsow/
> https://github.com/mazocomp/openbsd-wip/tree/warsow/games/warsow-data/

Please use 2.1.2-netbsd tag in my fork and please send more patches to
my fork if you have any troubles:
https://github.com/OrangeGrayCyan/warsow

Also if you need a diff:
https://github.com/OrangeGrayCyan/warsow/blob/master/warsow.diff

Also please mark me as maintainer when you create both warsow and
warsow-data ports in pkgsrc.

And here's the list of done things:
* No suffixes in libraries' and binaries' name which tell about for what
OS and processor architecture they were compiled.
* Removed C and C++ flags which should be given by ports systems.
* Support for pkgsrc and Ravenports in FindSDL2.cmake
* ar(1) won't receive linker flags.
* -std=gnu11 flag reduces amount of warnings.
* -Wpedantic flag should help cleaning code in the future.
* Use sendfile() at DragonFly BSD and FreeBSD, also implement one at all
other OSes.
* DATADIR macro defined by CMakeLists.txt to point to system-wide
directory with data files instead of current directory.
* Unquote library names in CMakeLists.txt files.
* BUILDSTRING, OSNAME, CPUSTRING, LIB_DIRECTORY, LIB_PREFIX and
LIB_SUFFIX macros are defined by CMakeLists.txt
* System-wide libraries will never be dlopen(3)'ed.
* AngelScript 2.29.2 is built and statically linked.
* Windows, MacOS and Linux libraries in modules_21.pk3 are ignored.
* Many matches for ${CMAKE_SYSTEM_NAME} were changed to WIN32, APPLE and
UNIX.
* <sys/param.h> is not only included at MacOS, but at every Unix-like
system.
* <alloca.h> should only be included at Linux.
* -D_POSIX_C_SOURCE=200112L -D_XOPEN_SOURCE=500 flags were removed to
fix build break at FreeBSD.
* find_package(OpenGL) should add -I/usr/X11R6/include flag at OpenBSD.
* find_package(X11) should add -I/usr/X11R7/include flag at NetBSD (in
case Mesa is installed in /usr/pkg).
* All #if defined() were carefully changed to something like:
```
#if defined(_WIN32)
...
#elif defined(__APPLE__)
...
#elif defined(__ANDROID__)
...
#else
...
#endif
```
* SDL_SetWindowIcon() is commented because of buffer overflow in SDL2:
https://github.com/mazocomp/openbsd-wip/blob/3924bc18d05ded21bf0f69def7f1826ae92b2150/games/warsow/BACKTRACE

* SDL2 is a required dependency.
* readdir64 and dirent64 are defined at systems other than Linux.
* Remove unnecessary files which make source tarball waste 500 MB of
disk space.


Home | Main Index | Thread Index | Old Index