From 0a0f0fe94e7b26d9a47dcfe2ce5f4d4a42a8b059 Mon Sep 17 00:00:00 2001 From: Anish Bhatt <anish@gatech.edu> Date: Mon, 19 Aug 2013 14:53:53 -0700 Subject: [PATCH] add boxee sources --- .SRCINFO | 63 +++++++ PKGBUILD | 55 ++++++ config.patch | 11 ++ gcc4.6_soname.patch | 50 ++++++ libjpeg_cflags.patch | 17 ++ libpng.patch | 22 +++ samba.patch | 11 ++ smbno.h | 363 ++++++++++++++++++++++++++++++++++++++++ sparse_boxee_make.patch | 12 ++ 9 files changed, 604 insertions(+) create mode 100644 .SRCINFO create mode 100644 PKGBUILD create mode 100644 config.patch create mode 100644 gcc4.6_soname.patch create mode 100644 libjpeg_cflags.patch create mode 100644 libpng.patch create mode 100644 samba.patch create mode 100644 smbno.h create mode 100644 sparse_boxee_make.patch diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 00000000000..95ac277d72e --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,63 @@ +pkgbase = boxee + pkgdesc = A freeware cross-platform media center software with social networking features that is a fork of the open source XBMC media center + pkgver = 1.1.1.19092 + pkgrel = 1 + url = http://www.boxee.tv/ + arch = i686 + license = GPL + makedepends = autoconf + makedepends = boost + makedepends = cmake + makedepends = nasm + makedepends = coreutils + makedepends = rsync + makedepends = glew + depends = fribidi + depends = libpng + depends = mesa + depends = libsamplerate + depends = libjpeg-turbo + depends = libmad + depends = jasper + depends = libogg + depends = libvorbis + depends = libmysqlclient + depends = libmms + depends = sdl_mixer + depends = libcdio + depends = enca + depends = hal + depends = zip + depends = libvdpau + depends = gperf + depends = unzip + depends = faad2 + depends = smbclient + depends = lzo2 + depends = fontconfig + depends = libtiff + depends = libxtst + depends = libxinerama + depends = libxrandr + depends = faac + depends = avahi + options = !makeflags + source = http://dl.boxee.tv/version/dlink.dsm380/1.1.1.19092/boxee-ce4100-1.1.1.19092-ff659dd-source.tar.xz + source = gcc4.6_soname.patch + source = sparse_boxee_make.patch + source = libjpeg_cflags.patch + source = config.patch + source = libpng.patch + source = samba.patch + source = smbno.h + md5sums = 4f490189a3742cfe8c268bede4ca956a + md5sums = 502ca56fc7008bb128d62895b569a147 + md5sums = e12f7f878ef97d4d0b91eb3c8f74e845 + md5sums = acacd13c8169bfc5f3fa15807a5bf789 + md5sums = 9dfd31d5336d002a94b3ca8df046c9dd + md5sums = fcbca3c8ffab5402fec84d6d05db5d3d + md5sums = a28c4cf86d1eba78d7f66bdbc4dafcf0 + md5sums = 3e53f9a60344dad366b230fb2ac876ec + +pkgname = boxee + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 00000000000..8ec9f004c94 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,55 @@ +# Contributor: Prurigro +# Maintainer: Prurigro & Anish +# gcc4.6_soname.patch fixes -soname flag for correct use +# sparse_boxee_make.patch drops unneded make options from makefile +# libjpeg_cflags.patch adds -fPIC flag to hte jpegturbo library compile +# config.patch fixes sql library version +# libpng.patch adds missing changes for libpng1.4 + +pkgname=boxee +pkgver=1.1.1.19092 +_flashlib_pkgver=6684 +pkgrel=1 +pkgdesc="A freeware cross-platform media center software with social networking features that is a fork of the open source XBMC media center" +arch=('i686') +license=( 'GPL' ) +depends=('fribidi' 'libpng' 'mesa' 'libsamplerate' 'libjpeg-turbo' 'libmad' 'jasper' 'libogg' 'libvorbis' 'libmysqlclient' 'libmms' 'sdl_mixer' 'libcdio' 'enca' 'hal' 'zip' 'libvdpau' 'gperf' 'unzip' 'faad2' 'smbclient' 'lzo2' 'fontconfig' 'libtiff' 'libxtst' 'libxinerama' 'libxrandr' 'faac' 'avahi') +makedepends=('autoconf' 'boost' 'cmake' 'nasm' 'coreutils' 'rsync' 'glew') +options=('!makeflags') +url="http://www.boxee.tv/" +#install='boxee-source.install' +source=(http://dl.boxee.tv/version/dlink.dsm380/1.1.1.19092/boxee-ce4100-$pkgver-ff659dd-source.tar.xz + gcc4.6_soname.patch + sparse_boxee_make.patch + libjpeg_cflags.patch + config.patch + libpng.patch + samba.patch + smbno.h) +md5sums=('4f490189a3742cfe8c268bede4ca956a' + '502ca56fc7008bb128d62895b569a147' + 'e12f7f878ef97d4d0b91eb3c8f74e845' + 'acacd13c8169bfc5f3fa15807a5bf789' + '9dfd31d5336d002a94b3ca8df046c9dd' + 'fcbca3c8ffab5402fec84d6d05db5d3d' + 'a28c4cf86d1eba78d7f66bdbc4dafcf0' + '3e53f9a60344dad366b230fb2ac876ec') + +_src=${srcdir}/boxee-ce4100-"$pkgver"-ff659dd + +build() { + pushd ${_src} || return 1 + #if anyone wants pulseaudio, simply remove "--disable-pulse" + patch -p0 < ../config.patch + patch -p0 < ../gcc4.6_soname.patch + patch -p0 < ../sparse_boxee_make.patch + patch -p0 < ../libpng.patch + patch -p0 < ../samba.patch + patch -p0 < ../libjpeg_cflags.patch + ./bootstrap + ./configure --prefix=/opt/boxee --enable-mid --disable-debug --disable-pulse --enable-xrandr --disable-ccache --enable-vdpau --enable-faac --disable-ss-rsxs --disable-boxee-hal + cp ../smbno.h xbmc/cores/paplayer/MACDll/Source/MACLib/. + make + popd + +} diff --git a/config.patch b/config.patch new file mode 100644 index 00000000000..b71797051d9 --- /dev/null +++ b/config.patch @@ -0,0 +1,11 @@ +--- configure.in.orig 2011-06-02 17:12:27.644646802 -0700 ++++ configure.in 2011-06-02 17:12:38.988134340 -0700 +@@ -712,7 +712,7 @@ + USE_EXTERNAL_SAMBA=0 + BUILD_WAVEFORM=1 + else +- LIBS+="/usr/lib/libmysqlclient.so.16 " ++ LIBS+="/usr/lib/libmysqlclient.so.18 " + LIBS+="/usr/lib/libcdio.a " + AC_CHECK_HEADER([FLAC/stream_decoder.h],, AC_MSG_ERROR($missing_library)) + AC_CHECK_LIB([SDL_mixer], [main],, AC_MSG_ERROR($missing_library)) diff --git a/gcc4.6_soname.patch b/gcc4.6_soname.patch new file mode 100644 index 00000000000..15db1226c30 --- /dev/null +++ b/gcc4.6_soname.patch @@ -0,0 +1,50 @@ +--- xbmc/cores/dvdplayer/Codecs/Makefile.in.orig 2011-06-02 17:08:23.041324030 -0700 ++++ xbmc/cores/dvdplayer/Codecs/Makefile.in 2011-06-02 17:08:42.561587420 -0700 +@@ -200,25 +200,25 @@ + $(MAKE) -C $@ + + $(SYSDIR)/libdts-$(ARCH).so: $(WRAPPER) libdts/libdts/libdts.a +- $(CC) -o $@ $(LDFLAGS) --soname,$@ \ ++ $(CC) -o $@ $(LDFLAGS) -Wl,--soname,$@ \ + libdts/libdts/bitstream.o \ + libdts/libdts/downmix.o libdts/libdts/parse.o \ + `cat $(WRAPPER:.o=.def)` $(WRAPPER) + + $(SYSDIR)/libfaad-$(ARCH).so: $(WRAPPER) libfaad2/libfaad/libfaad.la +- $(CC) -o $@ $(LDFLAGS) --soname,$@ libfaad2/libfaad/*.o \ ++ $(CC) -o $@ $(LDFLAGS) -Wl,--soname,$@ libfaad2/libfaad/*.o \ + -Wl`cat $(WRAPPER:.o=.def)` $(WRAPPER) + + $(SYSDIR)/liba52-$(ARCH).so: $(WRAPPER) liba52/liba52/liba52.la +- $(CC) -o $@ $(LDFLAGS) --soname,$@ liba52/liba52/.libs/*.o \ ++ $(CC) -o $@ $(LDFLAGS) -Wl,--soname,$@ liba52/liba52/.libs/*.o \ + -Wl`cat $(WRAPPER:.o=.def)` $(WRAPPER) + + $(SYSDIR)/libao-$(ARCH).so: $(WRAPPER) liba52/libao/libao.a +- $(CC) -o $@ $(LDFLAGS) --soname,$@ liba52/libao/libao.a \ ++ $(CC) -o $@ $(LDFLAGS) -Wl,--soname,$@ liba52/libao/libao.a \ + -Wl`cat $(WRAPPER:.o=.def)` $(WRAPPER) + + $(SYSDIR)/libmpeg2-$(ARCH).so: $(WRAPPER) libmpeg2/libmpeg2/libmpeg2.la +- $(CC) -o $@ $(LDFLAGS) --soname,$@ libmpeg2/libmpeg2/.libs/*.o \ ++ $(CC) -o $@ $(LDFLAGS) -Wl,--soname,$@ libmpeg2/libmpeg2/.libs/*.o \ + -Wl`cat $(WRAPPER:.o=.def)` $(WRAPPER) + + libdts/libdts/libdts.a : libdts; +--- xbmc/cores/dvdplayer/Codecs/libdvd/Makefile.in.orig 2011-06-02 17:09:20.372101279 -0700 ++++ xbmc/cores/dvdplayer/Codecs/libdvd/Makefile.in 2011-06-02 17:09:31.418918082 -0700 +@@ -40,12 +40,12 @@ + else + + $(SYSDIR)/libdvdcss-$(ARCH).so: $(WRAPPER) libdvdcss/src/.libs/libdvdcss.a +- $(CC) -o $@ $(LDFLAGS) $(LDFLAGS2) --soname,$@ \ ++ $(CC) -o $@ $(LDFLAGS) $(LDFLAGS2) -Wl,--soname,$@ \ + libdvdcss/src/*.o \ + `cat $(WRAPPER:.o=.def)` $(WRAPPER) + + $(SYSDIR)/libdvdnav-$(ARCH).so: $(WRAPPER) $(DVDCSS_A) libdvdread/obj/libdvdread.a libdvdnav/obj/libdvdnav.a +- $(CC) -o $@ $(LDFLAGS) $(LDFLAGS2) --soname,$@ $(DVDCSS_O) libdvdread/obj/*.o libdvdnav/obj/*.o \ ++ $(CC) -o $@ $(LDFLAGS) $(LDFLAGS2) -Wl,--soname,$@ $(DVDCSS_O) libdvdread/obj/*.o libdvdnav/obj/*.o \ + `cat $(WRAPPER:.o=.def)` $(WRAPPER) + + endif diff --git a/libjpeg_cflags.patch b/libjpeg_cflags.patch new file mode 100644 index 00000000000..5b930e41b83 --- /dev/null +++ b/libjpeg_cflags.patch @@ -0,0 +1,17 @@ +--- xbmc/lib/cximage-6.0/jpeg-turbo/Makefile.in.orig 2011-06-05 07:02:03.000000000 -0700 ++++ xbmc/lib/cximage-6.0/jpeg-turbo/Makefile.in 2011-06-05 07:03:38.000000000 -0700 +@@ -213,12 +213,14 @@ + CC = @CC@ + CCDEPMODE = @CCDEPMODE@ + CFLAGS = @CFLAGS@ ++CFLAGS += -fPIC + CPP = @CPP@ + CPPFLAGS = @CPPFLAGS@ + CXX = @CXX@ + CXXCPP = @CXXCPP@ + CXXDEPMODE = @CXXDEPMODE@ + CXXFLAGS = @CXXFLAGS@ ++CXXFLAGS += -fPIC + CYGPATH_W = @CYGPATH_W@ + DEBARCH = @DEBARCH@ + DEFS = @DEFS@ diff --git a/libpng.patch b/libpng.patch new file mode 100644 index 00000000000..5c03e7b5516 --- /dev/null +++ b/libpng.patch @@ -0,0 +1,22 @@ +--- xbmc/visualizations/Goom/goom2k4-0/src/pngload.c.orig 2010-02-04 16:58:05.000000000 -0800 ++++ xbmc/visualizations/Goom/goom2k4-0/src/pngload.c 2010-02-04 17:09:11.000000000 -0800 +@@ -94,7 +94,7 @@ + png_set_palette_to_rgb (png_ptr); + + if (color_type == PNG_COLOR_TYPE_GRAY && bit_depth < 8) +- png_set_gray_1_2_4_to_8 (png_ptr); ++ png_set_expand_gray_1_2_4_to_8 (png_ptr); + else if (color_type == PNG_COLOR_TYPE_GRAY || + color_type == PNG_COLOR_TYPE_GRAY_ALPHA) + png_set_gray_to_rgb (png_ptr); +--- xbmc/screensavers/rsxs-0.9/src/pngimage.cc.orig 2010-02-04 16:56:46.000000000 -0800 ++++ xbmc/screensavers/rsxs-0.9/src/pngimage.cc 2010-02-04 17:09:11.000000000 -0800 +@@ -65,7 +65,7 @@ + (png_get_color_type(png, pngInfo) == PNG_COLOR_TYPE_GRAY) && + png_get_bit_depth(png, pngInfo) < 8 + ) +- png_set_gray_1_2_4_to_8(png); ++ png_set_expand_gray_1_2_4_to_8(png); + if (png_get_valid(png, pngInfo, PNG_INFO_tRNS)) + png_set_tRNS_to_alpha(png); + if (fullColor) diff --git a/samba.patch b/samba.patch new file mode 100644 index 00000000000..2da79fdd858 --- /dev/null +++ b/samba.patch @@ -0,0 +1,11 @@ +--- xbmc/cores/paplayer/MACDll/Source/MACLib/APEHeader.cpp.orig 2011-03-24 12:20:43.000000000 -0700 ++++ xbmc/cores/paplayer/MACDll/Source/MACLib/APEHeader.cpp 2011-03-24 12:20:59.000000000 -0700 +@@ -4,7 +4,7 @@ + #include "APEInfo.h" + + #ifndef __APPLE__ +-#include <linux/smbno.h> ++#include "smbno.h" + #endif + + // TODO: should push and pop the file position diff --git a/smbno.h b/smbno.h new file mode 100644 index 00000000000..f99e02d9ffe --- /dev/null +++ b/smbno.h @@ -0,0 +1,363 @@ +#ifndef _SMBNO_H_ +#define _SMBNO_H_ + +/* these define the attribute byte as seen by DOS */ +#define aRONLY (1L<<0) +#define aHIDDEN (1L<<1) +#define aSYSTEM (1L<<2) +#define aVOLID (1L<<3) +#define aDIR (1L<<4) +#define aARCH (1L<<5) + +/* error classes */ +#define SUCCESS 0 /* The request was successful. */ +#define ERRDOS 0x01 /* Error is from the core DOS operating system set. */ +#define ERRSRV 0x02 /* Error is generated by the server network file manager.*/ +#define ERRHRD 0x03 /* Error is an hardware error. */ +#define ERRCMD 0xFF /* Command was not in the "SMB" format. */ + +/* SMB X/Open error codes for the ERRdos error class */ + +#define ERRbadfunc 1 /* Invalid function (or system call) */ +#define ERRbadfile 2 /* File not found (pathname error) */ +#define ERRbadpath 3 /* Directory not found */ +#define ERRnofids 4 /* Too many open files */ +#define ERRnoaccess 5 /* Access denied */ +#define ERRbadfid 6 /* Invalid fid */ +#define ERRbadmcb 7 /* Memory control blocks destroyed */ +#define ERRnomem 8 /* Out of memory */ +#define ERRbadmem 9 /* Invalid memory block address */ +#define ERRbadenv 10 /* Invalid environment */ +#define ERRbadformat 11 /* Invalid format */ +#define ERRbadaccess 12 /* Invalid open mode */ +#define ERRbaddata 13 /* Invalid data (only from ioctl call) */ +#define ERRres 14 /* reserved */ +#define ERRbaddrive 15 /* Invalid drive */ +#define ERRremcd 16 /* Attempt to delete current directory */ +#define ERRdiffdevice 17 /* rename/move across different filesystems */ +#define ERRnofiles 18 /* no more files found in file search */ +#define ERRbadshare 32 /* Share mode on file conflict with open mode */ +#define ERRlock 33 /* Lock request conflicts with existing lock */ +#define ERRfilexists 80 /* File in operation already exists */ +#define ERRbadpipe 230 /* Named pipe invalid */ +#define ERRpipebusy 231 /* All instances of pipe are busy */ +#define ERRpipeclosing 232 /* named pipe close in progress */ +#define ERRnotconnected 233 /* No process on other end of named pipe */ +#define ERRmoredata 234 /* More data to be returned */ + +#define ERROR_INVALID_PARAMETER 87 +#define ERROR_DISK_FULL 112 +#define ERROR_INVALID_NAME 123 +#define ERROR_DIR_NOT_EMPTY 145 +#define ERROR_NOT_LOCKED 158 +#define ERROR_ALREADY_EXISTS 183 /* see also 80 ? */ +#define ERROR_EAS_DIDNT_FIT 275 /* Extended attributes didn't fit */ +#define ERROR_EAS_NOT_SUPPORTED 282 /* Extended attributes not supported */ + +/* Error codes for the ERRSRV class */ + +#define ERRerror 1 /* Non specific error code */ +#define ERRbadpw 2 /* Bad password */ +#define ERRbadtype 3 /* reserved */ +#define ERRaccess 4 /* No permissions to do the requested operation */ +#define ERRinvnid 5 /* tid invalid */ +#define ERRinvnetname 6 /* Invalid servername */ +#define ERRinvdevice 7 /* Invalid device */ +#define ERRqfull 49 /* Print queue full */ +#define ERRqtoobig 50 /* Queued item too big */ +#define ERRinvpfid 52 /* Invalid print file in smb_fid */ +#define ERRsmbcmd 64 /* Unrecognised command */ +#define ERRsrverror 65 /* smb server internal error */ +#define ERRfilespecs 67 /* fid and pathname invalid combination */ +#define ERRbadlink 68 /* reserved */ +#define ERRbadpermits 69 /* Access specified for a file is not valid */ +#define ERRbadpid 70 /* reserved */ +#define ERRsetattrmode 71 /* attribute mode invalid */ +#define ERRpaused 81 /* Message server paused */ +#define ERRmsgoff 82 /* Not receiving messages */ +#define ERRnoroom 83 /* No room for message */ +#define ERRrmuns 87 /* too many remote usernames */ +#define ERRtimeout 88 /* operation timed out */ +#define ERRnoresource 89 /* No resources currently available for request. */ +#define ERRtoomanyuids 90 /* too many userids */ +#define ERRbaduid 91 /* bad userid */ +#define ERRuseMPX 250 /* temporarily unable to use raw mode, use MPX mode */ +#define ERRuseSTD 251 /* temporarily unable to use raw mode, use std.mode */ +#define ERRcontMPX 252 /* resume MPX mode */ +#define ERRbadPW /* reserved */ +#define ERRnosupport 0xFFFF + +/* Error codes for the ERRHRD class */ + +#define ERRnowrite 19 /* read only media */ +#define ERRbadunit 20 /* Unknown device */ +#define ERRnotready 21 /* Drive not ready */ +#define ERRbadcmd 22 /* Unknown command */ +#define ERRdata 23 /* Data (CRC) error */ +#define ERRbadreq 24 /* Bad request structure length */ +#define ERRseek 25 +#define ERRbadmedia 26 +#define ERRbadsector 27 +#define ERRnopaper 28 +#define ERRwrite 29 /* write fault */ +#define ERRread 30 /* read fault */ +#define ERRgeneral 31 /* General hardware failure */ +#define ERRwrongdisk 34 +#define ERRFCBunavail 35 +#define ERRsharebufexc 36 /* share buffer exceeded */ +#define ERRdiskfull 39 + +/* + * Access modes when opening a file + */ +#define SMB_ACCMASK 0x0003 +#define SMB_O_RDONLY 0x0000 +#define SMB_O_WRONLY 0x0001 +#define SMB_O_RDWR 0x0002 + +/* offsets into message for common items */ +#define smb_com 8 +#define smb_rcls 9 +#define smb_reh 10 +#define smb_err 11 +#define smb_flg 13 +#define smb_flg2 14 +#define smb_reb 13 +#define smb_tid 28 +#define smb_pid 30 +#define smb_uid 32 +#define smb_mid 34 +#define smb_wct 36 +#define smb_vwv 37 +#define smb_vwv0 37 +#define smb_vwv1 39 +#define smb_vwv2 41 +#define smb_vwv3 43 +#define smb_vwv4 45 +#define smb_vwv5 47 +#define smb_vwv6 49 +#define smb_vwv7 51 +#define smb_vwv8 53 +#define smb_vwv9 55 +#define smb_vwv10 57 +#define smb_vwv11 59 +#define smb_vwv12 61 +#define smb_vwv13 63 +#define smb_vwv14 65 + +/* these are the trans2 sub fields for primary requests */ +#define smb_tpscnt smb_vwv0 +#define smb_tdscnt smb_vwv1 +#define smb_mprcnt smb_vwv2 +#define smb_mdrcnt smb_vwv3 +#define smb_msrcnt smb_vwv4 +#define smb_flags smb_vwv5 +#define smb_timeout smb_vwv6 +#define smb_pscnt smb_vwv9 +#define smb_psoff smb_vwv10 +#define smb_dscnt smb_vwv11 +#define smb_dsoff smb_vwv12 +#define smb_suwcnt smb_vwv13 +#define smb_setup smb_vwv14 +#define smb_setup0 smb_setup +#define smb_setup1 (smb_setup+2) +#define smb_setup2 (smb_setup+4) + +/* these are for the secondary requests */ +#define smb_spscnt smb_vwv2 +#define smb_spsoff smb_vwv3 +#define smb_spsdisp smb_vwv4 +#define smb_sdscnt smb_vwv5 +#define smb_sdsoff smb_vwv6 +#define smb_sdsdisp smb_vwv7 +#define smb_sfid smb_vwv8 + +/* and these for responses */ +#define smb_tprcnt smb_vwv0 +#define smb_tdrcnt smb_vwv1 +#define smb_prcnt smb_vwv3 +#define smb_proff smb_vwv4 +#define smb_prdisp smb_vwv5 +#define smb_drcnt smb_vwv6 +#define smb_droff smb_vwv7 +#define smb_drdisp smb_vwv8 + +/* the complete */ +#define SMBmkdir 0x00 /* create directory */ +#define SMBrmdir 0x01 /* delete directory */ +#define SMBopen 0x02 /* open file */ +#define SMBcreate 0x03 /* create file */ +#define SMBclose 0x04 /* close file */ +#define SMBflush 0x05 /* flush file */ +#define SMBunlink 0x06 /* delete file */ +#define SMBmv 0x07 /* rename file */ +#define SMBgetatr 0x08 /* get file attributes */ +#define SMBsetatr 0x09 /* set file attributes */ +#define SMBread 0x0A /* read from file */ +#define SMBwrite 0x0B /* write to file */ +#define SMBlock 0x0C /* lock byte range */ +#define SMBunlock 0x0D /* unlock byte range */ +#define SMBctemp 0x0E /* create temporary file */ +#define SMBmknew 0x0F /* make new file */ +#define SMBchkpth 0x10 /* check directory path */ +#define SMBexit 0x11 /* process exit */ +#define SMBlseek 0x12 /* seek */ +#define SMBtcon 0x70 /* tree connect */ +#define SMBtconX 0x75 /* tree connect and X*/ +#define SMBtdis 0x71 /* tree disconnect */ +#define SMBnegprot 0x72 /* negotiate protocol */ +#define SMBdskattr 0x80 /* get disk attributes */ +#define SMBsearch 0x81 /* search directory */ +#define SMBsplopen 0xC0 /* open print spool file */ +#define SMBsplwr 0xC1 /* write to print spool file */ +#define SMBsplclose 0xC2 /* close print spool file */ +#define SMBsplretq 0xC3 /* return print queue */ +#define SMBsends 0xD0 /* send single block message */ +#define SMBsendb 0xD1 /* send broadcast message */ +#define SMBfwdname 0xD2 /* forward user name */ +#define SMBcancelf 0xD3 /* cancel forward */ +#define SMBgetmac 0xD4 /* get machine name */ +#define SMBsendstrt 0xD5 /* send start of multi-block message */ +#define SMBsendend 0xD6 /* send end of multi-block message */ +#define SMBsendtxt 0xD7 /* send text of multi-block message */ + +/* Core+ protocol */ +#define SMBlockread 0x13 /* Lock a range and read */ +#define SMBwriteunlock 0x14 /* Unlock a range then write */ +#define SMBreadbraw 0x1a /* read a block of data with no smb header */ +#define SMBwritebraw 0x1d /* write a block of data with no smb header */ +#define SMBwritec 0x20 /* secondary write request */ +#define SMBwriteclose 0x2c /* write a file then close it */ + +/* dos extended protocol */ +#define SMBreadBraw 0x1A /* read block raw */ +#define SMBreadBmpx 0x1B /* read block multiplexed */ +#define SMBreadBs 0x1C /* read block (secondary response) */ +#define SMBwriteBraw 0x1D /* write block raw */ +#define SMBwriteBmpx 0x1E /* write block multiplexed */ +#define SMBwriteBs 0x1F /* write block (secondary request) */ +#define SMBwriteC 0x20 /* write complete response */ +#define SMBsetattrE 0x22 /* set file attributes expanded */ +#define SMBgetattrE 0x23 /* get file attributes expanded */ +#define SMBlockingX 0x24 /* lock/unlock byte ranges and X */ +#define SMBtrans 0x25 /* transaction - name, bytes in/out */ +#define SMBtranss 0x26 /* transaction (secondary request/response) */ +#define SMBioctl 0x27 /* IOCTL */ +#define SMBioctls 0x28 /* IOCTL (secondary request/response) */ +#define SMBcopy 0x29 /* copy */ +#define SMBmove 0x2A /* move */ +#define SMBecho 0x2B /* echo */ +#define SMBopenX 0x2D /* open and X */ +#define SMBreadX 0x2E /* read and X */ +#define SMBwriteX 0x2F /* write and X */ +#define SMBsesssetupX 0x73 /* Session Set Up & X (including User Logon) */ +#define SMBtconX 0x75 /* tree connect and X */ +#define SMBffirst 0x82 /* find first */ +#define SMBfunique 0x83 /* find unique */ +#define SMBfclose 0x84 /* find close */ +#define SMBinvalid 0xFE /* invalid command */ + + +/* Extended 2.0 protocol */ +#define SMBtrans2 0x32 /* TRANS2 protocol set */ +#define SMBtranss2 0x33 /* TRANS2 protocol set, secondary command */ +#define SMBfindclose 0x34 /* Terminate a TRANSACT2_FINDFIRST */ +#define SMBfindnclose 0x35 /* Terminate a TRANSACT2_FINDNOTIFYFIRST */ +#define SMBulogoffX 0x74 /* user logoff */ + +/* these are the TRANS2 sub commands */ +#define TRANSACT2_OPEN 0 +#define TRANSACT2_FINDFIRST 1 +#define TRANSACT2_FINDNEXT 2 +#define TRANSACT2_QFSINFO 3 +#define TRANSACT2_SETFSINFO 4 +#define TRANSACT2_QPATHINFO 5 +#define TRANSACT2_SETPATHINFO 6 +#define TRANSACT2_QFILEINFO 7 +#define TRANSACT2_SETFILEINFO 8 +#define TRANSACT2_FSCTL 9 +#define TRANSACT2_IOCTL 10 +#define TRANSACT2_FINDNOTIFYFIRST 11 +#define TRANSACT2_FINDNOTIFYNEXT 12 +#define TRANSACT2_MKDIR 13 + +/* Information Levels - Shared? */ +#define SMB_INFO_STANDARD 1 +#define SMB_INFO_QUERY_EA_SIZE 2 +#define SMB_INFO_QUERY_EAS_FROM_LIST 3 +#define SMB_INFO_QUERY_ALL_EAS 4 +#define SMB_INFO_IS_NAME_VALID 6 + +/* Information Levels - TRANSACT2_FINDFIRST */ +#define SMB_FIND_FILE_DIRECTORY_INFO 0x101 +#define SMB_FIND_FILE_FULL_DIRECTORY_INFO 0x102 +#define SMB_FIND_FILE_NAMES_INFO 0x103 +#define SMB_FIND_FILE_BOTH_DIRECTORY_INFO 0x104 + +/* Information Levels - TRANSACT2_QPATHINFO */ +#define SMB_QUERY_FILE_BASIC_INFO 0x101 +#define SMB_QUERY_FILE_STANDARD_INFO 0x102 +#define SMB_QUERY_FILE_EA_INFO 0x103 +#define SMB_QUERY_FILE_NAME_INFO 0x104 +#define SMB_QUERY_FILE_ALL_INFO 0x107 +#define SMB_QUERY_FILE_ALT_NAME_INFO 0x108 +#define SMB_QUERY_FILE_STREAM_INFO 0x109 +#define SMB_QUERY_FILE_COMPRESSION_INFO 0x10b + +/* Information Levels - TRANSACT2_SETFILEINFO */ +#define SMB_SET_FILE_BASIC_INFO 0x101 +#define SMB_SET_FILE_DISPOSITION_INFO 0x102 +#define SMB_SET_FILE_ALLOCATION_INFO 0x103 +#define SMB_SET_FILE_END_OF_FILE_INFO 0x104 + +/* smb_flg field flags */ +#define SMB_FLAGS_SUPPORT_LOCKREAD 0x01 +#define SMB_FLAGS_CLIENT_BUF_AVAIL 0x02 +#define SMB_FLAGS_RESERVED 0x04 +#define SMB_FLAGS_CASELESS_PATHNAMES 0x08 +#define SMB_FLAGS_CANONICAL_PATHNAMES 0x10 +#define SMB_FLAGS_REQUEST_OPLOCK 0x20 +#define SMB_FLAGS_REQUEST_BATCH_OPLOCK 0x40 +#define SMB_FLAGS_REPLY 0x80 + +/* smb_flg2 field flags (samba-2.2.0/source/include/smb.h) */ +#define SMB_FLAGS2_LONG_PATH_COMPONENTS 0x0001 +#define SMB_FLAGS2_EXTENDED_ATTRIBUTES 0x0002 +#define SMB_FLAGS2_DFS_PATHNAMES 0x1000 +#define SMB_FLAGS2_READ_PERMIT_NO_EXECUTE 0x2000 +#define SMB_FLAGS2_32_BIT_ERROR_CODES 0x4000 +#define SMB_FLAGS2_UNICODE_STRINGS 0x8000 + + +/* + * UNIX stuff (from samba trans2.h) + */ +#define MIN_UNIX_INFO_LEVEL 0x200 +#define MAX_UNIX_INFO_LEVEL 0x2FF +#define SMB_FIND_FILE_UNIX 0x202 +#define SMB_QUERY_FILE_UNIX_BASIC 0x200 +#define SMB_QUERY_FILE_UNIX_LINK 0x201 +#define SMB_QUERY_FILE_UNIX_HLINK 0x202 +#define SMB_SET_FILE_UNIX_BASIC 0x200 +#define SMB_SET_FILE_UNIX_LINK 0x201 +#define SMB_SET_FILE_UNIX_HLINK 0x203 +#define SMB_QUERY_CIFS_UNIX_INFO 0x200 + +/* values which means "don't change it" */ +#define SMB_MODE_NO_CHANGE 0xFFFFFFFF +#define SMB_UID_NO_CHANGE 0xFFFFFFFF +#define SMB_GID_NO_CHANGE 0xFFFFFFFF +#define SMB_TIME_NO_CHANGE 0xFFFFFFFFFFFFFFFFULL +#define SMB_SIZE_NO_CHANGE 0xFFFFFFFFFFFFFFFFULL + +/* UNIX filetype mappings. */ +#define UNIX_TYPE_FILE 0 +#define UNIX_TYPE_DIR 1 +#define UNIX_TYPE_SYMLINK 2 +#define UNIX_TYPE_CHARDEV 3 +#define UNIX_TYPE_BLKDEV 4 +#define UNIX_TYPE_FIFO 5 +#define UNIX_TYPE_SOCKET 6 +#define UNIX_TYPE_UNKNOWN 0xFFFFFFFF + +#endif /* _SMBNO_H_ */ diff --git a/sparse_boxee_make.patch b/sparse_boxee_make.patch new file mode 100644 index 00000000000..8aa588790f6 --- /dev/null +++ b/sparse_boxee_make.patch @@ -0,0 +1,12 @@ +--- Makefile.in.orig 2011-06-02 17:04:16.581335442 -0700 ++++ Makefile.in 2011-06-02 17:04:33.164892185 -0700 +@@ -178,7 +178,7 @@ + DISTCLEAN_FILES=config.h config.log config.status tools/Linux/xbmc.sh \ + autom4te.cache config.h.in~ + +-all : Makefile externals Boxee BoxeeHal RecoveryConsole BoxeeWrapper MemLeakDetector ++all : Makefile externals Boxee + + give_me_my_mouse_back: give_me_my_mouse_back.c + gcc -g -o give_me_my_mouse_back give_me_my_mouse_back.c -I/opt/local/include -lSDL +