diff options
author | ad <ad@pkgsrc.org> | 2000-08-22 14:07:53 +0000 |
---|---|---|
committer | ad <ad@pkgsrc.org> | 2000-08-22 14:07:53 +0000 |
commit | 4d2efff6df3fc6e780dfea7b3ceabe0172c2a9d3 (patch) | |
tree | 88996469dc6bb7ddc64080a222b01418aba620d5 /audio/rio500 | |
parent | daa4c98202724ff017e4301c65b7c31416c98f65 (diff) | |
download | pkgsrc-4d2efff6df3fc6e780dfea7b3ceabe0172c2a9d3.tar.gz |
Make this package build on big-endian systems that don't run Linux. Problem
pointed out by dmcmahill.
Diffstat (limited to 'audio/rio500')
-rw-r--r-- | audio/rio500/files/patch-sum | 5 | ||||
-rw-r--r-- | audio/rio500/patches/patch-ac | 114 | ||||
-rw-r--r-- | audio/rio500/patches/patch-ad | 85 | ||||
-rw-r--r-- | audio/rio500/patches/patch-ae | 35 |
4 files changed, 238 insertions, 1 deletions
diff --git a/audio/rio500/files/patch-sum b/audio/rio500/files/patch-sum index 4ee0aa33f02..14b41b7c9d1 100644 --- a/audio/rio500/files/patch-sum +++ b/audio/rio500/files/patch-sum @@ -1,4 +1,7 @@ -$NetBSD: patch-sum,v 1.2 2000/08/22 13:35:05 dmcmahill Exp $ +$NetBSD: patch-sum,v 1.3 2000/08/22 14:07:53 ad Exp $ MD5 (patch-aa) = 89c938ce663310de4829d5acefd57dd6 MD5 (patch-ab) = 50237b8bc1e3b651854f6ee20d106665 +MD5 (patch-ac) = 73eca84d0c25a1a259efd46fbdafdc5b +MD5 (patch-ad) = ffe36559d56eb9a556b26c0bebd59c57 +MD5 (patch-ae) = 07ea4db616a78c4d631a417882815a85 diff --git a/audio/rio500/patches/patch-ac b/audio/rio500/patches/patch-ac new file mode 100644 index 00000000000..9e7ec3cb18b --- /dev/null +++ b/audio/rio500/patches/patch-ac @@ -0,0 +1,114 @@ +$NetBSD: patch-ac,v 1.1 2000/08/22 14:07:54 ad Exp $ + +--- lib/librio500.c.orig Tue Aug 22 14:52:30 2000 ++++ lib/librio500.c Tue Aug 22 14:55:42 2000 +@@ -24,7 +24,7 @@ + #include "libfon.h" + + #ifdef WORDS_BIGENDIAN +-#include <byteswap.h> ++#include <sys/bswap.h> + #endif + + void +@@ -55,9 +55,9 @@ + need to byteswap to get to le */ + + #ifdef WORDS_BIGENDIAN +- location.offset = bswap_16(location.offset); +- location.bytes = bswap_16(location.bytes); +- location.folder_num = bswap_16(location.folder_num); ++ location.offset = bswap16(location.offset); ++ location.bytes = bswap16(location.bytes); ++ location.folder_num = bswap16(location.folder_num); + #endif + + rio_ctl_msg (fd, RIO_DIR_OUT, 0x56, 0, 0, +@@ -87,13 +87,13 @@ + to read correctly */ + + #ifdef WORDS_BIGENDIAN +- status.dunno1 = bswap_16(status.dunno1); +- status.block_size = bswap_16(status.block_size); +- status.num_blocks = bswap_16(status.num_blocks); +- status.first_free_block = bswap_16(status.first_free_block); +- status.num_unused_blocks = bswap_16(status.num_unused_blocks); +- status.dunno2 = bswap_32(status.dunno2); +- status.dunno3 = bswap_32(status.dunno3); ++ status.dunno1 = bswap16(status.dunno1); ++ status.block_size = bswap16(status.block_size); ++ status.num_blocks = bswap16(status.num_blocks); ++ status.first_free_block = bswap16(status.first_free_block); ++ status.num_unused_blocks = bswap16(status.num_unused_blocks); ++ status.dunno2 = bswap32(status.dunno2); ++ status.dunno3 = bswap32(status.dunno3); + #endif + + return &status; +@@ -476,25 +476,25 @@ + void + bswap_folder_entry (folder_entry *fe) + { +- fe->offset = bswap_16(fe->offset); +- fe->dunno1 = bswap_16(fe->dunno1); +- fe->fst_free_entry_off = bswap_16(fe->fst_free_entry_off); +- fe->dunno2 = bswap_16(fe->dunno2); +- fe->dunno3 = bswap_32(fe->dunno3); +- fe->dunno4 = bswap_32(fe->dunno4); +- fe->time = bswap_32(fe->time); ++ fe->offset = bswap16(fe->offset); ++ fe->dunno1 = bswap16(fe->dunno1); ++ fe->fst_free_entry_off = bswap16(fe->fst_free_entry_off); ++ fe->dunno2 = bswap16(fe->dunno2); ++ fe->dunno3 = bswap32(fe->dunno3); ++ fe->dunno4 = bswap32(fe->dunno4); ++ fe->time = bswap32(fe->time); + } + + void + bswap_song_entry (song_entry *se) + { +- se->offset = bswap_16(se->offset); +- se->dunno1 = bswap_16(se->dunno1); +- se->length = bswap_32(se->length); +- se->dunno2 = bswap_16(se->dunno2); +- se->dunno3 = bswap_16(se->dunno3); +- se->mp3sig = bswap_32(se->mp3sig); +- se->time = bswap_32(se->time); ++ se->offset = bswap16(se->offset); ++ se->dunno1 = bswap16(se->dunno1); ++ se->length = bswap32(se->length); ++ se->dunno2 = bswap16(se->dunno2); ++ se->dunno3 = bswap16(se->dunno3); ++ se->mp3sig = bswap32(se->mp3sig); ++ se->time = bswap32(se->time); + } + + +@@ -662,7 +662,7 @@ + rio_ctl_msg (fd, RIO_DIR_IN, req, val, idx, 4, (BYTE*)&status); + + #ifdef WORDS_BIGENDIAN +- status = bswap_32 (status); ++ status = bswap32 (status); + #endif + + return status; +@@ -740,7 +740,7 @@ + /* on big_endian platforms, need to byteswap num_blocks to write to le rio */ + + #ifdef WORDS_BIGENDIAN +- new_smiley->num_blocks = bswap_16(new_smiley->num_blocks); ++ new_smiley->num_blocks = bswap16(new_smiley->num_blocks); + #endif + + return new_smiley; +@@ -802,7 +802,7 @@ + transfer to rio */ + + #ifdef WORDS_BIGENDIAN +- new_bitmap->num_blocks = bswap_16(new_bitmap->num_blocks); ++ new_bitmap->num_blocks = bswap16(new_bitmap->num_blocks); + #endif + + return new_bitmap; diff --git a/audio/rio500/patches/patch-ad b/audio/rio500/patches/patch-ad new file mode 100644 index 00000000000..626a98ddd36 --- /dev/null +++ b/audio/rio500/patches/patch-ad @@ -0,0 +1,85 @@ +$NetBSD: patch-ad,v 1.1 2000/08/22 14:07:54 ad Exp $ + +--- lib/libfon.c.orig Tue Aug 22 14:54:21 2000 ++++ lib/libfon.c Tue Aug 22 14:54:35 2000 +@@ -23,7 +23,7 @@ + #include "libfon.h" + + #ifdef WORDS_BIGENDIAN +-#include <byteswap.h> ++#include <sys/bswap.h> + #endif + + struct fon_font * +@@ -61,9 +61,9 @@ + fread (&MZ_hdr, sizeof (MZ_Header), 1, fp); + + #ifdef WORDS_BIGENDIAN +- MZ_hdr.magic = bswap_16(MZ_hdr.magic); +- MZ_hdr.dummy[29] = bswap_16(MZ_hdr.dummy[29]); +- //MZ_hdr.ne_location = bswap_16(MZ_hdr.ne_location); ++ MZ_hdr.magic = bswap16(MZ_hdr.magic); ++ MZ_hdr.dummy[29] = bswap16(MZ_hdr.dummy[29]); ++ //MZ_hdr.ne_location = bswap16(MZ_hdr.ne_location); + #endif + + /* ne_location is a 16bit quantity,l_e. It appears fseek below wants +@@ -82,15 +82,15 @@ + fread (&NE_hdr, sizeof (NE_Header), 1, fp); + + #ifdef WORDS_BIGENDIAN +- NE_hdr.magic = bswap_16(NE_hdr.magic); +- NE_hdr.dummy1[15] = bswap_16(NE_hdr.dummy1[15]); ++ NE_hdr.magic = bswap16(NE_hdr.magic); ++ NE_hdr.dummy1[15] = bswap16(NE_hdr.dummy1[15]); + +- //NE_hdr.nonres_name_length = bswap_16(NE_hdr.nonres_name_length); ++ //NE_hdr.nonres_name_length = bswap16(NE_hdr.nonres_name_length); + /* fseek seems to like l_e quantities */ + + /* Ok . . I'm an idiot, nonres_name_start was 32bit, can use bswap */ + +- NE_hdr.nonres_name_start=bswap_32(NE_hdr.nonres_name_start); ++ NE_hdr.nonres_name_start=bswap32(NE_hdr.nonres_name_start); + #endif + + if (NE_hdr.magic != NE_HEADER_MAGIC ) { +@@ -119,7 +119,7 @@ + fread(&number_of_fonts, 2, 1, fp); + + #ifdef WORDS_BIGENDIAN +- number_of_fonts = bswap_32(number_of_fonts); ++ number_of_fonts = bswap32(number_of_fonts); + #endif + /* font info stored in 32bit 32bit 32bit l_e format for win fonts */ + /* need to swap to use on ppc */ +@@ -181,13 +181,13 @@ + /* Do any sort of byte swapping necessary for big endian after reading data */ + + #ifdef WORDS_BIGENDIAN +- font->Header[i].Windows_version = bswap_16(font->Header[i].Windows_version); +- font->Header[i].Bytes_per_char_cell = bswap_16(font->Header[i].Bytes_per_char_cell); +- font->Header[i].File_sizeH = bswap_16(font->Header[i].File_sizeH); +- font->Header[i].File_sizeL = bswap_16(font->Header[i].File_sizeL); +- font->Header[i].Nominal_point_size = bswap_16(font->Header[i].Nominal_point_size); +- font->Header[i].Vertical_resolution = bswap_16(font->Header[i].Vertical_resolution); +- font->Header[i].Horizontal_resolution = bswap_16(font->Header[i].Horizontal_resolution); ++ font->Header[i].Windows_version = bswap16(font->Header[i].Windows_version); ++ font->Header[i].Bytes_per_char_cell = bswap16(font->Header[i].Bytes_per_char_cell); ++ font->Header[i].File_sizeH = bswap16(font->Header[i].File_sizeH); ++ font->Header[i].File_sizeL = bswap16(font->Header[i].File_sizeL); ++ font->Header[i].Nominal_point_size = bswap16(font->Header[i].Nominal_point_size); ++ font->Header[i].Vertical_resolution = bswap16(font->Header[i].Vertical_resolution); ++ font->Header[i].Horizontal_resolution = bswap16(font->Header[i].Horizontal_resolution); + #endif + + } +@@ -231,7 +231,7 @@ + (void)fread(&bitmap_start_offset, 2, 1, fp); + + #ifdef WORDS_BIGENDIAN +- bitmap_start_offset = bswap_32(bitmap_start_offset); ++ bitmap_start_offset = bswap32(bitmap_start_offset); + #endif + + /* b_s_off comes out of .fon in l_e, need to convert */ diff --git a/audio/rio500/patches/patch-ae b/audio/rio500/patches/patch-ae new file mode 100644 index 00000000000..49af0293a19 --- /dev/null +++ b/audio/rio500/patches/patch-ae @@ -0,0 +1,35 @@ +$NetBSD: patch-ae,v 1.1 2000/08/22 14:07:54 ad Exp $ + +--- lib/usbdrvlinux.c.orig Tue Aug 22 14:58:45 2000 ++++ lib/usbdrvlinux.c Tue Aug 22 14:59:00 2000 +@@ -54,7 +54,7 @@ + #include <dirent.h> + + #ifdef WORDS_BIGENDIAN +-# include <byteswap.h> ++# include <sys/bswap.h> + #endif + + #if TIME_WITH_SYS_TIME +@@ -200,8 +200,8 @@ + pid = desc.idProduct[0] | (desc.idProduct[1] << 8); + + #ifdef WORDS_BIGENDIAN +- vid = bswap_16(vid); +- pid = bswap_16(pid); ++ vid = bswap16(vid); ++ pid = bswap16(pid); + #endif + + if ((vid != vendorid && vendorid == -1) || +@@ -270,8 +270,8 @@ + pid = desc.idProduct[0] | (desc.idProduct[1] << 8); + + #ifdef WORDS_BIGENDIAN +- vid = bswap_16(vid); +- pid = bswap_16(pid); ++ vid = bswap16(vid); ++ pid = bswap16(pid); + #endif + + if ((vid == vendorid || vendorid == 0xffff) && |