Initial bep and patch for gogo-no-coda from GCI2012 student skycocker.

This commit is contained in:
Scott McCreary
2013-01-01 01:09:09 +00:00
parent 776238a99c
commit f3a16abd51
2 changed files with 137 additions and 0 deletions

View File

@@ -0,0 +1,20 @@
DESCRIPTION="Mp3 encoder based on LAME3.88, which is optimized for Enhanced 3D Now!/SSE/SSE2 and dual-CPUs."
HOMEPAGE="https://github.com/teragonaudio/gogo-no-coda"
SRC_URI="https://github.com/teragonaudio/gogo-no-coda/archive/master.zip"
CHECKSUM_MD5="b60ae82f7fc70cbefd2e4003b9e13c8f"
REVISION="1"
STATUS_HAIKU="stable"
DEPEND="dev-lang/nasm"
BUILD {
cd gogo-no-coda-master/linux
make
}
INSTALL {
cd gogo-no-coda-master/linux
make install prefix=`finddir B_COMMON_DIRECTORY`
}
LICENSE="GNU LGPL v2"
COPYRIGHT="2001-2003 Respective gogo-no-coda creators"

View File

@@ -0,0 +1,117 @@
diff -Naur gogo-no-coda-master/engine/i386/cpu.c gogo-no-coda-master-haiku/engine/i386/cpu.c
--- gogo-no-coda-master/engine/i386/cpu.c 2011-05-17 09:51:26.045350912 +0000
+++ gogo-no-coda-master-haiku/engine/i386/cpu.c 2012-12-30 16:42:53.811073536 +0000
@@ -162,7 +162,7 @@
}
return nCPU;
-#elif defined(BeOS)
+#elif defined(BeOS) || defined(__HAIKU__)
system_info udtsystem_info;
get_system_info(&udtsystem_info);
diff -Naur gogo-no-coda-master/engine/i386/fftsse.nas gogo-no-coda-master-haiku/engine/i386/fftsse.nas
--- gogo-no-coda-master/engine/i386/fftsse.nas 2011-05-17 09:51:26.045613056 +0000
+++ gogo-no-coda-master-haiku/engine/i386/fftsse.nas 2012-12-30 16:42:53.823656448 +0000
@@ -23,14 +23,14 @@
Q_SQRT2 dd 1.41421356237, 1.41421356237, 1.41421356237, 1.41421356237
Q_1 dd 1.0, 1.0, 1.0, 1.0
-costab dd 9.238795325112867e-01F, 9.238795325112867e-01F, 9.238795325112867e-01F, 9.238795325112867e-01F
- dd 3.826834323650898e-01F, 3.826834323650898e-01F, 3.826834323650898e-01F, 3.826834323650898e-01F
- dd 9.951847266721969e-01F, 9.951847266721969e-01F, 9.951847266721969e-01F, 9.951847266721969e-01F
- dd 9.801714032956060e-02F, 9.801714032956060e-02F, 9.801714032956060e-02F, 9.801714032956060e-02F
- dd 9.996988186962042e-01F, 9.996988186962042e-01F, 9.996988186962042e-01F, 9.996988186962042e-01F
- dd 2.454122852291229e-02F, 2.454122852291229e-02F, 2.454122852291229e-02F, 2.454122852291229e-02F
- dd 9.999811752826011e-01F, 9.999811752826011e-01F, 9.999811752826011e-01F, 9.999811752826011e-01F
- dd 6.135884649154475e-03F, 6.135884649154475e-03F, 6.135884649154475e-03F, 6.135884649154475e-03F
+costab dd 9.238795325112867e-01, 9.238795325112867e-01, 9.238795325112867e-01, 9.238795325112867e-01
+ dd 3.826834323650898e-01, 3.826834323650898e-01, 3.826834323650898e-01, 3.826834323650898e-01
+ dd 9.951847266721969e-01, 9.951847266721969e-01, 9.951847266721969e-01, 9.951847266721969e-01
+ dd 9.801714032956060e-02, 9.801714032956060e-02, 9.801714032956060e-02, 9.801714032956060e-02
+ dd 9.996988186962042e-01, 9.996988186962042e-01, 9.996988186962042e-01, 9.996988186962042e-01
+ dd 2.454122852291229e-02, 2.454122852291229e-02, 2.454122852291229e-02, 2.454122852291229e-02
+ dd 9.999811752826011e-01, 9.999811752826011e-01, 9.999811752826011e-01, 9.999811752826011e-01
+ dd 6.135884649154475e-03, 6.135884649154475e-03, 6.135884649154475e-03, 6.135884649154475e-03
align 32
revLongInit db 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80
diff -Naur gogo-no-coda-master/engine/i386/makecfg.c gogo-no-coda-master-haiku/engine/i386/makecfg.c
--- gogo-no-coda-master/engine/i386/makecfg.c 2011-05-17 09:51:26.045875200 +0000
+++ gogo-no-coda-master-haiku/engine/i386/makecfg.c 2012-12-30 16:42:53.837812224 +0000
@@ -18,7 +18,7 @@
RW_t RW;
RO_t RO;
-#if (defined(WIN32) || defined(__linux__) || defined(__os2__)) && !defined(__BORLANDC__) && !defined(__MINGW32_VERSION)
+#if (defined(WIN32) || defined(__linux__) || defined(__os2__) || defined(__HAIKU__)) && !defined(__BORLANDC__) && !defined(__MINGW32_VERSION)
#define USE_BSS
#endif
diff -Naur gogo-no-coda-master/linux/Makefile gogo-no-coda-master-haiku/linux/Makefile
--- gogo-no-coda-master/linux/Makefile 2011-05-17 09:51:26.057147392 +0000
+++ gogo-no-coda-master-haiku/linux/Makefile 2012-12-30 16:44:48.008912896 +0000
@@ -8,6 +8,8 @@
#######################################################
TARGET = gogo
+prefix =
+BINDIR = $(prefix)/bin
#######################################################
@@ -16,12 +18,11 @@
AS = nasm -i../engine/i386/
LD = gcc
MAKECFG = makecfg
-LIBS = -lm
VPATH = ../engine:../engine/i386:../file_io
LDFLAGS = $(PROF)
AFLAGS = -f elf -D__unix__ $(E3DN)
-CFLAGS = -Wall $(PROF) -DNDEBUG
+CFLAGS = -Wall $(PROF) -D__unix__
#CFLAGS += -Wpointer-arith -Wshadow -Wwrite-strings -Wconversion -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wnested-externs
CFLAGS += -DHAVE_CONFIG_H -DLAMEPARSE -DLAMESNDFILE
@@ -97,7 +98,6 @@
#COBJS += $(LIBSNDCOBJS)
# if FreeBSD then change -lc_r
-LIBS += -lpthread
CFLAGS += -DUSE_PTHREAD
COBJS += thread.o
@@ -105,9 +105,10 @@
all: $(TARGET)
-install : $(TARGET)
- cp $(TARGET) /usr/local/bin
- strip /usr/local/bin/$(TARGET)
+install : $(TARGET) $(BINDIR)
+ mkdir -p $(DESTDIR)$(BINDIR)
+ install -m 0755 $(TARGET) $(DESTDIR)$(BINDIR)
+ strip $(DESTDIR)$(BINDIR)/$(TARGET)
$(TARGET): $(COBJS) $(AOBJS)
$(LD) $(COBJS) $(AOBJS) $(LDFLAGS) -o $(TARGET) $(LIBS)
diff -Naur gogo-no-coda-master/main.c gogo-no-coda-master-haiku/main.c
--- gogo-no-coda-master/main.c 2011-05-17 09:51:26.057409536 +0000
+++ gogo-no-coda-master-haiku/main.c 2012-12-30 16:42:53.853803008 +0000
@@ -5,13 +5,13 @@
* Copyright(C) 2001,2002,2003 gogo-developer
*/
-#if defined(__linux__) || defined(__ppc__) || defined(__FreeBSD__)
+#if defined(__linux__) || defined(__ppc__) || defined(__FreeBSD__) || defined(__HAIKU__)
#define USE_ITIMER
#include <unistd.h>
#include <sys/time.h>
#include <signal.h>
#endif
-#if defined(__linux__) || defined(__os2__) || defined(__ppc__) || defined(__CYGWIN32__) || defined(__FreeBSD__)
+#if defined(__linux__) || defined(__os2__) || defined(__ppc__) || defined(__CYGWIN32__) || defined(__FreeBSD__) || defined(__HAIKU__)
# define min(x,y) (((x)<(y))?(x):(y))
# define max(x,y) (((x)>(y))?(x):(y))
#endif