Commit Graph

112 Commits

Author SHA1 Message Date
Bill Currie 48809404b1 Use qfplist for light entities.
This removes a lot of redundant code from qflight (though it does become
dependent of libQFgamecode *shrug*). The nice thing is qflight now uses the
exact same code to load entities as does the server.
2013-03-07 09:11:22 +09:00
Bill Currie 7137783e47 Disable svga support for now.
It is suffering some bitrot and I don't feel like fixing it right now, but
it causes problems for people trying to build QF. This should be ok because
it's one of those "if uncertain, say no" things.
2013-02-14 09:37:25 +09:00
Bill Currie c6f9d8b64c Reduce CFLAGS abuse a little for mingw targets.
This fixes missing debug info (useful for fixing linker errors, if nothing
else).
2013-01-28 16:21:42 +09:00
Bill Currie d139640755 Make fs_userpath default to ~/quakeforge on windows.
The ~ gets expanded to CSIDL_LOCAL_APPDATA, $HOME, $USERPROFILE or just
".", whichever succeeds first. The usual location will be:
"C:\windows\profiles\<user>\Local Settings\Application Data".

"." is now the fallback for *nix systems too.
2013-01-23 11:10:19 +09:00
Bill Currie e27d7cbd2d Handle alloca "correctly".
Use AC_FUNC_ALLOCA and the #ifdef mess suggested by the autoconf docs
(hidden in qfalloca.h).
2013-01-22 21:02:50 +09:00
Bill Currie 00639aa9d1 Require bison 2.6 or later.
It turns out the apiprefix define is quite new (I didn't realize it at the
time) and I'd rather get FTBFS reports based on configure catching the
error than gcc catching it.
2013-01-11 13:48:14 +09:00
Bill Currie 9028cda24b Add -fno-unsafe-math-optimizations to CFLAGS.
It seems -ffast-math is not necessarily faster, and the errors it causes
may not be worth the gains, but I'm not sure I want to nuke it completely,
so instead disabling the worst offender of it
(-fno-unsafe-math-optimizations) seems to be the best option. qfbsp now
produces identical text output between optimized and unoptimized builds,
and may be slightly faster than before the change (1.9s for start.map vs
2.0s)
2013-01-11 11:17:31 +09:00
Bill Currie 6eb6b6c0ba Change pointer_t to unsigned and clean up the mess.
It doesn't make sense to have negative pointers. The size of the commit is
from enabling gcc's -Wtype-limits warning and cleaning up that mess too.
2012-12-21 21:53:13 +09:00
Bill Currie cc5e0f9957 Use git-version-gen to create meaningful version strings.
git-version-gen is taken from autoconf-2.69 with the change of adding
--tags to the git command line since we don't sign our tags (yet).
2012-12-21 18:43:03 +09:00
Bill Currie 3e38c4aa48 Merge branch 'qfcc-cse'
qfcc now does local common subexpression elimination. It seems to work, but
is optional (default off): use -O to enable. Also, uninitialized variable
detection is finally back :)

The progs engine now has very basic valgrind-like functionality for
checking pointer accesses. Enable with pr_boundscheck 2
2012-12-13 20:17:28 +09:00
Bill Currie 042cae29b1 Use pkg-config when checking for sdl.
This makes setting up for cross-compiling cleaner.
2012-11-29 11:16:06 +09:00
Bill Currie 1cd58b30f4 Fix the library dependencies for the servers.
It's so rarely I build without clients...
2012-11-27 13:18:23 +09:00
Bill Currie 99b34232f8 Add a test harness for qfcc.
It's only the beginning, but finally make check is useful for qfcc :)
It even has a failing test :D
2012-11-22 21:59:01 +09:00
Bill Currie ef7678fcec Use DWARF debugging with recent gcc.
Oh, wow, I wish I'd known about it before. C macro evaluation in gdb!!!
*sob*
2012-11-14 14:51:23 +09:00
Bill Currie abc81cee85 Avoid building unneeded libs.
Having better dependency info in build_control.m4 would be nice, but this
works well enough for now.
2012-08-20 14:12:20 +09:00
Bill Currie a2f2d4d949 "Check" for the availability of pthreads.
Unfortunately, just because the header is there doesn't mean anything will
actually work :(. Also, the check is based on the host vendor/os for now.
Yes, it's rather lame but it will do for now.

With this, QF will build on an almost fresh ps3toolchain install. Only two
"fixes" are needed:
 o  In $PS3DEV/ppu/powerpc64-ps3-elf: ln -s ../include sys-include
 o  libsamplerate cross-built and installed.
2012-08-19 13:40:42 +09:00
Bill Currie 358ea4ef9a Fall back to execve/wait when execvp and waitpid are unavailable. 2012-08-19 13:18:38 +09:00
Bill Currie ceea60059a Sort the checked functions. 2012-08-19 13:07:18 +09:00
Bill Currie bf41851bd9 Check for ioctl availability.
This gets networking compiling. Now the build gets all the way to qfcc,
where it dies with waidpid/execvp errors :P
2012-08-18 22:02:02 +09:00
Bill Currie 60596038d2 Half-disable pthread for ps3toolchain.
I can't find anything for pthread other that pthread.h, but this lets nq
and qw stuff build (minus the pending networking issues).
2012-08-18 21:51:04 +09:00
Bill Currie 575693e4a0 A bunch of networking compile fixes.
This isn't everything needed to get networking compiling, but it's pretty
close.
2012-08-18 21:49:30 +09:00
Bill Currie 7f805c2527 Use pkg-config for zlib.
Helps cope with zlib being in weird places (eg, ps3toolchain)
2012-08-18 21:41:33 +09:00
Bill Currie 3b047a3cc1 Check for getuid and cope when it's not there.
The ps3toolchain doesn't have getuid or getpwent. Nor does it have
timeGetTime, so use Sys_DoubleTime instead.
2012-08-18 21:37:54 +09:00
Bill Currie ee27c49e70 Separate the checks for building dirent.c and fnmatch.c.
ps3's libc has opendir and friends, but not fnmatch.
2012-08-18 12:12:45 +09:00
Bill Currie 836215357a Use the correct type for alloca's size parameter.
Well, hopefully: it at least agrees with gcc's builtin version.
2012-08-18 11:20:48 +09:00
Bill Currie 7928274b6e Test for and include sys/select.h. 2012-08-18 10:57:42 +09:00
Bill Currie 97c87cf996 Initial checkin of the qwaq mini-engine. 2012-07-15 07:39:50 +09:00
Bill Currie fc88c829bc Disable fbdev for now.
By default, anyway. It doesn't work and only distracts users.
2012-07-09 12:06:59 +09:00
Bill Currie b65c41efcb Move the colormod lookup table into a new lib.
libQFclient is now here :) The first shared code is the lookup table.
2012-07-05 09:39:16 +09:00
Bill Currie 7573c38122 Create qfspritegen based on id's sprgen.
No guarantees it works, but it should be able to convert a bunch of pcx
images into a sprite.
2012-06-30 20:20:15 +09:00
Bill Currie 26a878da48 Stub out the iqm loader. 2012-05-15 21:08:43 +09:00
Bill Currie 95a06c20b2 Move qfcc's libs and headers to ${prefix}/share
On discussion with Despair, share makes more sense than lib as they are
really cross-platform (though qfcc itself is not).
2012-05-05 19:34:35 +09:00
Bill Currie 9b07f9adcd Change the default renderer to gl.
Until glsl starts looking good, anyway.
2012-05-05 18:39:25 +09:00
Bill Currie ca978315fb Change the default vid plugin from sw32 to glsl. 2012-04-22 10:11:56 +09:00
Bill Currie e991c1fed3 Make a bit of progress cleaning up vid for plugins. 2012-04-11 14:58:54 +09:00
Bill Currie 8530959752 Link the model libs to the render plugins. 2012-04-11 14:58:53 +09:00
Bill Currie 8e91fb7bc1 Get the basics linking.
Still, nothing will work: no plugins are loaded and they're all broken
anyway.

glx, sgl, glslx etc are going away, just the basics will be built: fbdev
(probably go away eventually), sdl, x11 and hopefully someday win. That's
actually the only reason anything links.
2012-04-11 14:58:53 +09:00
Bill Currie a4c280f2b2 Take the first step towards render plugins.
No clients link. Even if they did, nothing would work.
2012-04-11 14:58:53 +09:00
Antti Harri bb1a342629 Use correct name for OpenGL library on OpenBSD by default. 2012-03-03 21:01:23 +09:00
Bill Currie b69d527507 Nuke another AM_CONDITIONAL 2012-02-13 16:08:03 +09:00
Bill Currie df47dd31f1 Clean up the excessive makefile vars generated by AC_SUBST.
While it further breaks RPM building, all AC_SUBST(HAVE_*) have been nuked.
When AM_SUBST_NOTMAKE, tell automake to not generate var = @var@ in
Makefile.in for qf specific vars (QF_SUBST is a wrapper for AC_SUBST that
also calls AM_SUBST_NOTMAKE).
2012-02-13 15:49:55 +09:00
Bill Currie 3cb4cb59b5 Link QFgamecode directly into QFruamoko.
First step in the library "merge down".

QFgamecode is now a convenience library. The only things that mention it
directly now are ruamoko and qfcc.
2012-02-13 15:05:31 +09:00
Bill Currie f389715730 Fix non-static console plugins.
Bah, fiddly stuff.
2012-02-13 10:58:42 +09:00
Bill Currie a16daac352 Fix the broken defaults for sound and cd plugins.
This has the side effect of defining defaults for all plugins, but as only
sound and cd actually use the defaults, no harm done.
2012-02-12 21:16:28 +09:00
Bill Currie e416c3e172 Clear up some annying whitespace issues.
Now that I know more about how autoconf actually works (ie, m4 stuff), I'm
finally able to fix the inability to format lists the way I want.
2012-02-12 20:14:26 +09:00
Bill Currie 546a7e7aac Avoid recusing into tools and ruamoko when not needed. 2012-02-12 19:29:31 +09:00
Bill Currie 6f2fec8afe Fix non-static plugins. 2012-02-12 18:35:00 +09:00
Bill Currie 02d24189ef Use QF_NEED for plugins.
At the moment, the selection of the default sound driver etc is broken.
2012-02-12 11:37:25 +09:00
Bill Currie 4707706f5d Use QF_NEED for the renderer and model libraries.
This breaks RPM building, but I can fix that later.
2012-02-10 13:29:45 +09:00
Bill Currie eefa89e72e Remove the AM_CONDITIONALs from tools.
Now that the tools directories aren't entered when those tools aren't being
built, there's no reason to use AM_CONDITIONAL in there.
2012-02-10 02:50:42 +09:00