Commit Graph

8813 Commits

Author SHA1 Message Date
Bill Currie 365f20bb95 Make the ps3 cross-build self-contained.
More or less.

This is a bit of an experiment (which seems to work nicely) in that qfcc
and pak are build natively in one build tree, then the full system is
cross-built in another tree using the natively build qfcc and pak. Both
trees are created by cross-configure.sh as sub-directories of the current
directory. However, cross-configure.sh still assumes it is being run in a
subdirectory of the main quakeforge directory.

cross-make.sh checks if the native tree is in the current directory and if
so, builds it, otherwise it just runs make for the cross-build tree (this
allows for running cross-make in a sub-directory for things like sorting
out build issues).
2012-08-20 10:56:09 +09:00
Bill Currie 0976ff8582 Nuke mentions of HOST_CC.
CC_FOR_BUILD is the recommended name these days (HOST_CC was from an old
gcc version, and is confusing anyway). Also, CC_FOR_BUILD should be set by
configure.
2012-08-20 10:51:46 +09:00
Bill Currie 54b4d589aa Split up mathlib.h into several smaller headers.
This should make maintaining them a little easier.

The copyright block in most of the new headers (execpt vector.h) reflect
when the functions in the relevant header were first created.
2012-08-19 17:39:09 +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 9bfcdad35a Fix some type-size safety issues.
Expecting int to be 32 bits is a little dangerous, and the function
versions of swap/noswap should be unsigned rather than signed.
2012-08-19 13:37:06 +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 0bd613b73d Disable vorbisfile's static callbacks.
Since we use callbacks anyway, they're not needed, and this fixes the
warnings/errors when using ps3toolchain.
2012-08-19 08:05:50 +09:00
Bill Currie 5684347088 Some fixes for mingw cross-builds.
The fixes came to light while getting ps3toolchain cross-building working.
2012-08-18 22:12:02 +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 78f7604efc Evil hack to handle duplicated sdl key syms. 2012-08-18 21:44:51 +09:00
Bill Currie 68feab89f9 Avoid PATH_MAX.
Not available in ps3toolchain, and this avoids a stack buffer :)
2012-08-18 21:44:02 +09:00
Bill Currie 9250eb83bf Yet more char index issues.
Should be getting near the end of these as qfcc tries to link in my hacked
up tree :)
2012-08-18 21:42:49 +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 6200d35109 Don't include SDL_byteorder.h
We don't need it and it's not always available.
2012-08-18 21:35:24 +09:00
Bill Currie cd1e3e5b6f Cross configure/make scripts for ps3toolchain based builds. 2012-08-18 21:33:58 +09:00
Bill Currie 6f484ee757 Add support and tests for 3x3 matrices. 2012-08-18 16:29:57 +09:00
Bill Currie cc35209f86 Yet more char index issues :P 2012-08-18 12:20:08 +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 5613b272da Whee, another char index issue. 2012-08-18 11:50:35 +09:00
Bill Currie d074f4a983 Hack in a fake version of "access".
It seems access is unimplemented in the ps3 toolchain.
2012-08-18 11:45:26 +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 62face768f Fix some char index issues. 2012-08-18 11:02:52 +09:00
Bill Currie 7928274b6e Test for and include sys/select.h. 2012-08-18 10:57:42 +09:00
Bill Currie 6e1f043719 Clean up some unused or local functions. 2012-08-18 09:36:43 +09:00
Bill Currie ae81b79390 Remove a long dead field. 2012-08-18 09:36:43 +09:00
Bill Currie a1a2060583 Yet another ps3 plugin fix.
Returning an uninitialized pointer... ouch. Hopefully the last one.
2012-08-17 10:24:41 +09:00
Bill Currie cbaad33638 Fix a couple more ps3 plugin related warnings.
Whee :P
2012-08-17 10:20:35 +09:00
Bill Currie 41876e8c37 Some compile fixes for when dlopen is not available.
It seems the ps3 gameos build env is... not what we've come to take for
granted.
2012-08-17 09:18:00 +09:00
Bill Currie af0db29981 Add support for meshes with multiple UV maps.
One common use for a mesh having multiple UV maps is when combining several
mesh objects into one: the base UV map is the result of joining the meshes
(and will be a right mess of overlapping UV islands), but an additional UV
map is then setup as a copy of the first but with the islands re-packed so
nothing overlaps. The export script now searches for the active UV map and
uses that for both UV coordinates and the skin texture (when none is
specified).
2012-08-12 13:38:12 +09:00
Bill Currie 5b054dd98b Add "slow grav" for smoke.
Removes one more set of hard codings from particle types.
2012-08-12 11:42:18 +09:00
Bill Currie f8f01fc9fb Change glx to x11 in the examples. 2012-08-12 09:20:20 +09:00
Bill Currie 5a5b31bae4 Correct the direction of pt_fire particles.
sub_grav() was accelerating the particle in the wrong direction. Down being
+ve gravity caused a bit of confusion (though it was a c&p error).
2012-08-10 13:56:01 +09:00
Bill Currie 31dead3dcd Fix 16-bit mdl loading for glsl.
The extra precision verts are offset by numverts, not numposes :P
2012-08-07 17:06:01 +09:00
Bill Currie 971e689d3d Fix a slew of whitespace issues. 2012-08-07 13:25:44 +09:00
Bill Currie a3c8209bdf Handle missing frame information a little more usefully.
If there's no export script, or the export script has no frame information,
animation data will be collected by running through blender frames 1 to the
current frame (inclusive). Each frame will be exported as a single frame
rather than as members of a frame group.
2012-08-07 13:23:19 +09:00
Bill Currie 39b2e80207 Optionally apply the object's transform to the mesh.
The default is to apply.
2012-08-07 11:49:08 +09:00
Bill Currie 634b3b043d Export non-triangular faces as triangle clusters.
It turns out this behavior is preferable (by at least one artist, anyway).
2012-08-07 10:49:32 +09:00
Bill Currie a4da11cdb5 Correctly handle multiple vertices sharing a UV coordinate.
Need to use both UV coordinate and vertex index to find unique
combinations. This should fix leileilol's broken meshes.
2012-08-07 10:26:35 +09:00
Bill Currie 78bfd30648 Export vertex normals.
I'd forgotten I hadn't implemented exporting vertex normals. While I've
modified things for making better use of blender's tools and avoiding the
unnecessary use of objects, the code is taken from the ajmdl blender 2.4
export script.
2012-08-07 09:52:47 +09:00
Bill Currie 5661e738ac Actually return the skin in null_skin()
Oops.
2012-08-07 09:50:38 +09:00
Bill Currie ff4c2cfb63 Add a todo list for the mdl addon. 2012-08-06 22:34:19 +09:00
Bill Currie a63ce57c5c Update NEWS for 0.7.0. 2012-08-04 10:50:39 +09:00
Bill Currie 848db2e306 Correct a comment.
The shear factors were listed next to scale... a tad confusing.
2012-08-04 10:47:46 +09:00
Bill Currie 130494f774 Bail out if the saved game data has too many entities. 2012-07-22 12:08:09 +09:00
Bill Currie 3042c2bb1a Create backups of quick.sav.
F6 is fantastic, until you hit it by mistake after dieing when you meant
to hit F9 (I've done that way too often). quick.sav is still the last file
written via F6 (so F9 is unaffected), but now the previous quick.sav
becomes quick1.sav. Up to 5 (currently) backups will be kept: quick1 is
the newest, quick5 the oldest. A menu for accessing the backups has been
added as a sub-menu of the load menu.
2012-07-21 22:41:57 +09:00
Bill Currie 1406cf13de Mask the QFS_Rename message with SYS_FS.
It really should have been masked all along, but I guess developer 1 was
too noisy back then.
2012-07-21 22:34:10 +09:00