1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-19 19:59:43 +00:00

- Fix building on non i386 architectures.

- Add X86_ASM option.
- Convert patches to UNIX text format, and add USE_DOS2UNIX.

Approved by:	garga (mentor, implicitly)
This commit is contained in:
Alejandro Pulver 2006-05-27 16:59:29 +00:00
parent 714fdfdb40
commit 2191223092
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=163627
3 changed files with 188 additions and 155 deletions

View File

@ -20,11 +20,13 @@ LIB_DEPENDS+= jpeg.9:${PORTSDIR}/graphics/jpeg \
png.5:${PORTSDIR}/graphics/png
USE_GMAKE= yes
USE_DOS2UNIX= yes
USE_GL= yes
USE_BZIP2= yes
OPTIONS= OPTIMIZED_CFLAGS "Enable compilation optimizations" on \
SDL "Build SDL client" on
SDL "Build SDL client" on \
X86_ASM "Enable x86 assembly code" on
ALL_TARGET= release
@ -36,9 +38,13 @@ PLIST_DIRS= %%Q1DIR%%/${PORTNAME}
.include <bsd.port.pre.mk>
.if !defined(WITHOUT_OPTIMIZED_CFLAGS)
MAKE_ENV+= WITH_OPTIMIZED_CFLAGS=YES
.endif
.for f in OPTIMIZED_CFLAGS X86_ASM
. if !defined(WITHOUT_${f})
MAKE_ENV+= USE_${f}=YES
. else
MAKE_ENV+= USE_${f}=NO
. endif
.endfor
.if !defined(WITHOUT_SDL)
USE_SDL= sdl

View File

@ -1,110 +1,137 @@
--- ./Makefile.orig Thu Nov 10 09:52:39 2005
+++ ./Makefile Tue May 16 14:33:39 2006
--- Makefile.orig Thu Nov 10 09:52:39 2005
+++ Makefile Sat May 27 13:44:29 2006
@@ -8,7 +8,7 @@
# Modified by QuDos at http://qudos.quakedev.com
BASEVERSION=0.16
-VERSION=$(BASEVERSION)$(GLIBC)
+VERSION=$(BASEVERSION)
ifneq (,$(findstring libc6,$(shell if [ -e /lib/libc.so.6 ];then echo libc6;fi)))
GLIBC=-glibc
@@ -16,45 +16,42 @@
GLIBC=
endif
-ifneq (,$(findstring alpha,$(shell uname -m)))
-ARCH=axp
-else
-ARCH=i386
-endif
NOARCH=noarch
MOUNT_DIR=./src
-BUILD_DEBUG_DIR=debug$(ARCH)$(GLIBC)
-BUILD_RELEASE_DIR=release$(ARCH)$(GLIBC)
+BUILD_DEBUG_DIR=debug
+BUILD_RELEASE_DIR=release
-BUILD_SDL=YES # demonquake sdl glx executable (uses SDL for cdrom and sound)
+BUILD_SDL?=NO # demonquake sdl glx executable (uses SDL for cdrom and sound)
-CC=gcc
+CC?=gcc
-BASE_CFLAGS=-Dstricmp=strcasecmp -Did386 -funsigned-char #-Wall
+BASE_CFLAGS=$(CFLAGS) -DDATADIR='"$(Q1DIR)"' -Dstricmp=strcasecmp -funsigned-char #-Wall
-RELEASE_CFLAGS=$(BASE_CFLAGS) -march=i686 -O2 -ffast-math -funroll-loops \
+ifeq ($(ARCH),i386)
+BASE_CFLAGS+=-Did386
+endif
+
+RELEASE_CFLAGS=$(BASE_CFLAGS)
+ifeq ($(WITH_OPTIMIZED_CFLAGS),YES)
+RELEASE_CFLAGS+=-O2 -ffast-math -funroll-loops \
-fomit-frame-pointer -fexpensive-optimizations -fno-strict-aliasing -pipe #-Wall
+endif
DEBUG_CFLAGS=$(BASE_CFLAGS) -g #-DDEBUG_MEM
-
-LDFLAGS=-lm -ldl
-
-LDFLAGS += -L./src/fmod -Wl,-rpath,. -lfmod #-L./src/mss -Wl,-rpath,. -lmss
+LDFLAGS+=-lm
ifeq ($(strip $(BUILD_SDL)),YES)
- SDLCFLAGS=$(shell sdl-config --cflags)
- SDLLDFLAGS=$(shell sdl-config --libs)
- LDFLAGS += \
- -lSDL
+ SDLCFLAGS=$(shell $(SDL_CONFIG) --cflags)
+ SDLLDFLAGS=$(shell $(SDL_CONFIG) --libs)
BASE_CFLAGS += \
-D_SDL_FIX -D_SDL_BIN
endif
-GLLDFLAGS=-L/usr/X11R6/lib -L/usr/lib -L/usr/local/lib -lGL -lGLU -lX11 -lXext -ldl -lXxf86dga -lXxf86vm -lm -lz -lpng -ljpeg
-GLCFLAGS=-DGLQUAKE -I/usr/include -I/usr/X11R6/include
+GLLDFLAGS=-L$(X11BASE)/lib -L/usr/lib -L$(LOCALBASE)/lib -lGL -lGLU -lX11 -lXext -lXxf86dga -lXxf86vm -lm -lz -lpng -ljpeg
+GLCFLAGS=-DGLQUAKE -I/usr/include -I$(X11BASE)/include -I$(LOCALBASE)/include
DO_CC=$(CC) $(CFLAGS) -o $@ -c $<
DO_DEBUG_CC=$(CC) $(DEBUG_CFLAGS) -o $@ -c $<
@@ -70,10 +67,10 @@
# SETUP AND BUILD
#############################################################################
- TARGETS=$(BUILDDIR)/demonquake.glx
+ TARGETS=$(BUILDDIR)/demonquake
ifeq ($(strip $(BUILD_SDL)),YES)
- TARGETS +=$(BUILDDIR)/demonquake-sdl.glx
+ TARGETS +=$(BUILDDIR)/demonquake-sdl
endif
all:
@@ -183,10 +180,10 @@
GLX_OBJS=$(BUILDDIR)/glquake/vid_glx.o \
$(BUILDDIR)/glquake/vid_common_gl.o
-$(BUILDDIR)/demonquake.glx : $(GLQUAKE_OBJS) $(GLQUAKE_LNX_OBJS) $(GLX_OBJS)
+$(BUILDDIR)/demonquake : $(GLQUAKE_OBJS) $(GLQUAKE_LNX_OBJS) $(GLX_OBJS)
$(CC) $(CFLAGS) -o $@ $(GLQUAKE_OBJS) $(GLQUAKE_LNX_OBJS) $(GLX_OBJS) $(GLLDFLAGS) $(LDFLAGS)
-$(BUILDDIR)/demonquake-sdl.glx : $(GLQUAKE_OBJS) $(GLQUAKE_SDL_OBJS) $(GLX_OBJS)
+$(BUILDDIR)/demonquake-sdl : $(GLQUAKE_OBJS) $(GLQUAKE_SDL_OBJS) $(GLX_OBJS)
$(CC) $(CFLAGS) -o $@ $(GLQUAKE_OBJS) $(GLQUAKE_SDL_OBJS) $(GLX_OBJS) $(GLLDFLAGS) $(LDFLAGS) $(SDLLDFLAGS)
$(BUILDDIR)/glquake/cl_collision.o : $(MOUNT_DIR)/cl_collision.c
@@ -291,7 +288,7 @@
$(BUILDDIR)/glquake/mathlib.o : $(MOUNT_DIR)/mathlib.c
$(DO_GL_CC)
-$(BUILDDIR)/glquake/mod.o : $(MOUNT_DIR)/mod.c
+$(BUILDDIR)/glquake/mod.o : $(MOUNT_DIR)/mod.c
$(DO_GL_CC)
$(BUILDDIR)/glquake/nehahra.o : $(MOUNT_DIR)/nehahra.c
# Modified by QuDos at http://qudos.quakedev.com
BASEVERSION=0.16
-VERSION=$(BASEVERSION)$(GLIBC)
+VERSION=$(BASEVERSION)
ifneq (,$(findstring libc6,$(shell if [ -e /lib/libc.so.6 ];then echo libc6;fi)))
GLIBC=-glibc
@@ -16,45 +16,50 @@
GLIBC=
endif
-ifneq (,$(findstring alpha,$(shell uname -m)))
-ARCH=axp
-else
-ARCH=i386
-endif
NOARCH=noarch
MOUNT_DIR=./src
-BUILD_DEBUG_DIR=debug$(ARCH)$(GLIBC)
-BUILD_RELEASE_DIR=release$(ARCH)$(GLIBC)
+BUILD_DEBUG_DIR=debug
+BUILD_RELEASE_DIR=release
-BUILD_SDL=YES # demonquake sdl glx executable (uses SDL for cdrom and sound)
+BUILD_SDL?=NO # demonquake sdl glx executable (uses SDL for cdrom and sound)
-CC=gcc
+ARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc/ -e s/sparc64/sparc/ -e s/arm.*/arm/ -e s/sa110/arm/ -e s/alpha/axp/)
+CC?=gcc
+USE_OPTIMIZED_CFLAGS?=YES
-BASE_CFLAGS=-Dstricmp=strcasecmp -Did386 -funsigned-char #-Wall
+BASE_CFLAGS=$(CFLAGS) -DDATADIR='"$(Q1DIR)"' -Dstricmp=strcasecmp -funsigned-char
-RELEASE_CFLAGS=$(BASE_CFLAGS) -march=i686 -O2 -ffast-math -funroll-loops \
- -fomit-frame-pointer -fexpensive-optimizations -fno-strict-aliasing -pipe #-Wall
-
-DEBUG_CFLAGS=$(BASE_CFLAGS) -g #-DDEBUG_MEM
+ifeq ($(ARCH),i386)
+USE_X86_ASM?=YES
+else
+USE_X86_ASM=NO
+endif
+ifeq ($(strip $(USE_X86_ASM)),YES)
+BASE_CFLAGS+=-Did386
+endif
-LDFLAGS=-lm -ldl
+RELEASE_CFLAGS=$(BASE_CFLAGS)
+ifeq ($(strip $(USE_OPTIMIZED_CFLAGS)),YES)
+RELEASE_CFLAGS+=-O2 -ffast-math -funroll-loops \
+ -fomit-frame-pointer -fexpensive-optimizations -fno-strict-aliasing -pipe
+endif
+
+DEBUG_CFLAGS=$(BASE_CFLAGS) -g #-DDEBUG_MEM
-LDFLAGS += -L./src/fmod -Wl,-rpath,. -lfmod #-L./src/mss -Wl,-rpath,. -lmss
+LDFLAGS+=-lm
ifeq ($(strip $(BUILD_SDL)),YES)
- SDLCFLAGS=$(shell sdl-config --cflags)
- SDLLDFLAGS=$(shell sdl-config --libs)
- LDFLAGS += \
- -lSDL
+ SDLCFLAGS=$(shell $(SDL_CONFIG) --cflags)
+ SDLLDFLAGS=$(shell $(SDL_CONFIG) --libs)
BASE_CFLAGS += \
-D_SDL_FIX -D_SDL_BIN
endif
-GLLDFLAGS=-L/usr/X11R6/lib -L/usr/lib -L/usr/local/lib -lGL -lGLU -lX11 -lXext -ldl -lXxf86dga -lXxf86vm -lm -lz -lpng -ljpeg
-GLCFLAGS=-DGLQUAKE -I/usr/include -I/usr/X11R6/include
+GLLDFLAGS=-L$(X11BASE)/lib -L$(LOCALBASE)/lib -lGL -lGLU -lX11 -lXext -lXxf86dga -lXxf86vm -lm -lz -lpng -ljpeg
+GLCFLAGS=-DGLQUAKE -I$(X11BASE)/include -I$(LOCALBASE)/include
DO_CC=$(CC) $(CFLAGS) -o $@ -c $<
DO_DEBUG_CC=$(CC) $(DEBUG_CFLAGS) -o $@ -c $<
@@ -70,10 +75,10 @@
# SETUP AND BUILD
#############################################################################
- TARGETS=$(BUILDDIR)/demonquake.glx
+ TARGETS=$(BUILDDIR)/demonquake
ifeq ($(strip $(BUILD_SDL)),YES)
- TARGETS +=$(BUILDDIR)/demonquake-sdl.glx
+ TARGETS +=$(BUILDDIR)/demonquake-sdl
endif
all:
@@ -165,12 +170,15 @@
$(BUILDDIR)/glquake/sys_linux.o \
$(BUILDDIR)/glquake/snd_dma.o \
$(BUILDDIR)/glquake/snd_mem.o \
- $(BUILDDIR)/glquake/snd_mix.o \
- \
+ $(BUILDDIR)/glquake/snd_mix.o
+
+ifeq ($(strip $(USE_X86_ASM)),YES)
+GLQUAKE_OBJS+= \
$(BUILDDIR)/glquake/math.o \
$(BUILDDIR)/glquake/snd_mixa.o \
$(BUILDDIR)/glquake/sys_x86.o \
$(BUILDDIR)/glquake/worlda.o
+endif
GLQUAKE_LNX_OBJS = \
$(BUILDDIR)/glquake/cd_linux.o \
@@ -183,10 +191,10 @@
GLX_OBJS=$(BUILDDIR)/glquake/vid_glx.o \
$(BUILDDIR)/glquake/vid_common_gl.o
-$(BUILDDIR)/demonquake.glx : $(GLQUAKE_OBJS) $(GLQUAKE_LNX_OBJS) $(GLX_OBJS)
+$(BUILDDIR)/demonquake : $(GLQUAKE_OBJS) $(GLQUAKE_LNX_OBJS) $(GLX_OBJS)
$(CC) $(CFLAGS) -o $@ $(GLQUAKE_OBJS) $(GLQUAKE_LNX_OBJS) $(GLX_OBJS) $(GLLDFLAGS) $(LDFLAGS)
-$(BUILDDIR)/demonquake-sdl.glx : $(GLQUAKE_OBJS) $(GLQUAKE_SDL_OBJS) $(GLX_OBJS)
+$(BUILDDIR)/demonquake-sdl : $(GLQUAKE_OBJS) $(GLQUAKE_SDL_OBJS) $(GLX_OBJS)
$(CC) $(CFLAGS) -o $@ $(GLQUAKE_OBJS) $(GLQUAKE_SDL_OBJS) $(GLX_OBJS) $(GLLDFLAGS) $(LDFLAGS) $(SDLLDFLAGS)
$(BUILDDIR)/glquake/cl_collision.o : $(MOUNT_DIR)/cl_collision.c
@@ -291,7 +299,7 @@
$(BUILDDIR)/glquake/mathlib.o : $(MOUNT_DIR)/mathlib.c
$(DO_GL_CC)
-$(BUILDDIR)/glquake/mod.o : $(MOUNT_DIR)/mod.c
+$(BUILDDIR)/glquake/mod.o : $(MOUNT_DIR)/mod.c
$(DO_GL_CC)
$(BUILDDIR)/glquake/nehahra.o : $(MOUNT_DIR)/nehahra.c

View File

@ -1,47 +1,47 @@
--- ./src/mod.c.orig Sat Oct 8 14:08:32 2005
+++ ./src/mod.c Tue May 16 14:33:39 2006
@@ -30,14 +30,17 @@
void MOD_stop (void)
{
+#if 0
if (modplaying) {
FMUSIC_FreeSong (mod);
}
modplaying = 0;
+#endif
}
void MOD_play (void)
{
+#if 0
char modname[256], *buffer;
int mark;
void MOD_stop (void)
{
+#if 0
if (modplaying) {
FMUSIC_FreeSong (mod);
}
modplaying = 0;
+#endif
}
void MOD_play (void)
{
+#if 0
char modname[256], *buffer;
int mark;
@@ -69,10 +72,12 @@
modplaying = 1;
FMUSIC_PlaySong (mod);
+#endif
}
void MOD_init (void)
{
+#if 0
FSOUND_SetBufferSize (300);
if (!FSOUND_Init(11025, 32, 0)) {
Con_Printf ("%s\n", FMOD_ErrorString(FSOUND_GetError()));
modplaying = 1;
FMUSIC_PlaySong (mod);
+#endif
}
void MOD_init (void)
{
+#if 0
FSOUND_SetBufferSize (300);
if (!FSOUND_Init(11025, 32, 0)) {
Con_Printf ("%s\n", FMOD_ErrorString(FSOUND_GetError()));
@@ -109,10 +114,13 @@
Cmd_AddCommand ("stopmod", MOD_stop);
Cmd_AddCommand ("playmod", MOD_play);
+#endif
};
void MOD_done (void)
{
+#if 0
FSOUND_Close ();
+#endif
};
#endif
Cmd_AddCommand ("stopmod", MOD_stop);
Cmd_AddCommand ("playmod", MOD_play);
+#endif
};
void MOD_done (void)
{
+#if 0
FSOUND_Close ();
+#endif
};
#endif