diff options
32 files changed, 965 insertions, 20 deletions
diff --git a/conf/distro/angstrom-2006.9.conf b/conf/distro/angstrom-2006.9.conf index 9d7c724c8f..5c1ed1296d 100644 --- a/conf/distro/angstrom-2006.9.conf +++ b/conf/distro/angstrom-2006.9.conf @@ -67,9 +67,9 @@ PREFERRED_PROVIDER_virtual/arm-linux-libc-for-gcc = "glibc-intermediate" #use EABI toolchain -PREFERRED_VERSION_gcc ?= "4.1.0" -PREFERRED_VERSION_gcc-cross ?= "4.1.0" -PREFERRED_VERSION_gcc-cross-initial ?= "4.1.0" +PREFERRED_VERSION_gcc ?= "4.1.1" +PREFERRED_VERSION_gcc-cross ?= "4.1.1" +PREFERRED_VERSION_gcc-cross-initial ?= "4.1.1" PREFERRED_VERSION_binutils ?= "2.16.91.0.7" PREFERRED_VERSION_binutils-cross ?= "2.16.91.0.7" PREFERRED_VERSION_linux-libc-headers ?= "2.6.15.99" diff --git a/conf/documentation.conf b/conf/documentation.conf index 20bcc53f5f..b072ac8c67 100644 --- a/conf/documentation.conf +++ b/conf/documentation.conf @@ -63,8 +63,9 @@ HOMEPAGE[doc] = "Homepage of the package e.g. http://www.project.net." GROUP_dependencies[doc] = "The keys in this group influence the dependency handling of BitBake \ and the resulting packages." DEPENDS[doc] = "Build time dependencies, things needed to build the package. @group dependencies" -RDEPENDS[doc] = "Run time dependencies, things needed for a given package to run. @group dependencies" -PROVIDES[doc] = "Names for additional dependencies that this package will provide. @group dependencies" +RDEPENDS[doc] = "Run time dependencies, things needed for a given package to run. This is used to populate the ipkg:Depends field. @group dependencies" +PROVIDES[doc] = "Names for additional build time dependencies that this package will provide. @group dependencies" +RPROVIDES[doc] = "Names for additional run time dependencies that this package will provide. This is used to populate the ipkg:Provides field. @group dependencies" # packaging @@ -98,4 +99,4 @@ SYSVINIT_ENABLED_GETTYS[doc] = "Specify which VTs should be running a getty, the PALMTOP_USE_MULTITHREADED_QT[doc] = "Set to yes, if you want to build qt apps with CONFIG+=thread" COMPATIBLE_HOST[doc] = "A regular expression which matches the HOST_SYS names supported by the package/file. Failure to match will cause the file to be skipped by the parser." -COMPATIBLE_MACHINE[doc] = "A regular expression which matches the MACHINES support by the package/file. Failure to match will cause the file to be skipped by the parser."
\ No newline at end of file +COMPATIBLE_MACHINE[doc] = "A regular expression which matches the MACHINES support by the package/file. Failure to match will cause the file to be skipped by the parser." diff --git a/packages/altboot/altboot_1.0.7-rc3.bb b/packages/altboot/altboot_1.0.7-rc3.bb new file mode 100644 index 0000000000..245cf2a426 --- /dev/null +++ b/packages/altboot/altboot_1.0.7-rc3.bb @@ -0,0 +1,93 @@ +#! /bin/sh +# +# Copyright Matthias Hentges <devel@hentges.net> (c) 2006 +# License: GPL (see http://www.gnu.org/licenses/gpl.txt for a copy of the license) +# +# Filename: altboot_1.0.5-rc2.bb +# Date: 21-Feb-06 + +DESCRIPTION = "The altboot bootmanager" +MAINTAINER = "Matthias 'CoreDump' Hentges <oe@hentges.net>" +HOMEPAGE = "http://www.hentges.net/misc/openzaurus/index.shtml" +LICENSE = "GPL" + +###################################################################################### + +RRECOMMENDS_${PN} = "e2fsprogs-e2fsck dosfstools" +RRECOMMENDS_${PN}_append_akita = " kexec-tools" +RRECOMMENDS_${PN}_append_spitz = " kexec-tools" +RRECOMMENDS_${PN}_append_c7x0 = " kexec-tools" + +RDEPENDS_${PN} = "${PN}-conf" +RDEPENDS_${PN}-conf = "${PN}" + +###################################################################################### + +PR = "r0" + +###################################################################################### + +PACKAGES = "${PN}-conf ${PN}-doc ${PN}" + +PACKAGE_ARCH_${PN} = all +PACKAGE_ARCH_${PN}-doc = all +PACKAGE_ARCH_${PN}-conf = "${MACHINE}" + +TAG = "${@'v' + bb.data.getVar('PV',d,1).replace('.', '-')}" + +SRC_URI = "cvs://anonymous@hentges.net/hentgescvs;method=pserver;tag=${TAG};module=altboot" + +S = "${WORKDIR}/altboot/" + +###################################################################################### + +FILES_${PN}-conf = "/etc/altboot*.cfg" + +###################################################################################### + +do_install() { + install -d ${D}/sbin + install -d ${D}/etc/altboot-menu + install -d ${D}/etc/altboot-menu/Advanced + install -d ${D}/etc/altboot.rc + install -d ${D}/usr/share/doc/altboot + install -d ${D}/usr/share/sounds + + if test -d ${WORKDIR}/altboot/${MACHINE} + then + install -m 0644 ${WORKDIR}/altboot/${MACHINE}/altboot*.cfg ${D}/etc + else + install -m 0644 ${WORKDIR}/altboot/altboot*.cfg ${D}/etc + fi + + install -m 0644 ${WORKDIR}/altboot/beep.raw ${D}/usr/share/sounds + install -m 0644 ${WORKDIR}/altboot/altboot.func ${D}/etc + install -m 0755 ${WORKDIR}/altboot/init.altboot ${D}/sbin + + install -m 0755 ${WORKDIR}/altboot/altboot-menu/*-* ${D}/etc/altboot-menu + + install -m 0755 ${WORKDIR}/altboot/altboot-menu/Advanced/*-* ${D}/etc/altboot-menu/Advanced + + install -m 0755 ${WORKDIR}/altboot/altboot.rc/*.sh ${D}/etc/altboot.rc + install -m 0644 ${WORKDIR}/altboot/altboot.rc/*.txt ${D}/etc/altboot.rc +} + +###################################################################################### + +do_configure() { + cat ${WORKDIR}/altboot/init.altboot | sed "s/^VERSION=.*/VERSION=\"${PV}\"/" > ${WORKDIR}/altboot/init.altboot_ + mv ${WORKDIR}/altboot/init.altboot_ ${WORKDIR}/altboot/init.altboot +} + +###################################################################################### + +pkg_postinst_${PN}() { + update-alternatives --install /sbin/init init /sbin/init.altboot 55 +} + +###################################################################################### + +pkg_postrm_${PN}() { + update-alternatives --remove init /sbin/init.altboot +} + diff --git a/packages/altboot/files/init.altboot b/packages/altboot/files/init.altboot index 2c106efa73..08ba81e962 100644 --- a/packages/altboot/files/init.altboot +++ b/packages/altboot/files/init.altboot @@ -177,12 +177,9 @@ run_timer() { case "`uname -r`" in 2.4*) key_ints="`cat /proc/interrupts | grep keyboard | awk '{print $2}'`";; 2.6*) key_ints="`cat /proc/interrupts | grep Spitzkbd`" - test -z "$key_ints" && key_ints="`cat /proc/interrupts | grep -i corgikbd`" - test -z "$key_ints" && key_ints="`cat /proc/interrupts | grep -i locomokbd`";; + test -z "$key_ints" && key_ints="`cat /proc/interrupts | grep -i corgikbd`";; esac - test -z "$key_ints" && debug_echo "Couldn't read keyboard ints!" - stty -echo <"$OUT_TTY" >"$OUT_TTY" 2>&1 echo -en "\n\nPlease press any key to launch altboot." > "$OUT_TTY" @@ -195,8 +192,7 @@ run_timer() { case "`uname -r`" in 2.4*) key_ints_now="`cat /proc/interrupts | grep keyboard | awk '{print $2}'`";; 2.6*) key_ints_now="`cat /proc/interrupts | grep Spitzkbd`" - test -z "$key_ints_now" && key_ints_now="`cat /proc/interrupts | grep -i corgikbd`" - test -z "$key_ints_now" && key_ints_now="`cat /proc/interrupts | grep -i locomokbd`";; + test -z "$key_ints_now" && key_ints_now="`cat /proc/interrupts | grep -i corgikbd`";; esac if test "$key_ints_now" != "$key_ints" -o -z "$key_ints_now" @@ -327,7 +323,7 @@ then debug_shell 4 >/dev/null 2>&1 & fi -if test -f /proc/cmdline -a "`ps ax|wc -l|tr -d " "`" -gt 30 -a "$1" != "-force" -a "$1" != "+force" +if test -f /proc/cmdline -a "`ps ax|wc -l|tr -d " "`" -gt 30 -a "$1" != "-force" then echo "altboot: Using real init [$REAL_INIT] [$*] [`ps ax|wc -l|tr -d " "`] *" >"$OUT_TTY" exec $REAL_INIT $* diff --git a/packages/clearsilver/.mtn2git_empty b/packages/clearsilver/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/clearsilver/.mtn2git_empty diff --git a/packages/clearsilver/clearsilver_0.10.3.bb b/packages/clearsilver/clearsilver_0.10.3.bb new file mode 100644 index 0000000000..0e5a86ede2 --- /dev/null +++ b/packages/clearsilver/clearsilver_0.10.3.bb @@ -0,0 +1,27 @@ +# Clearsilver +SECTION = "net" +DESCRIPTION = "Clearsilver is a fast, powerful, and language-neutral HTML template system" +LICENSE = "Neotonic ClearSilver License" +DEPENDS = "python" +MAINTAINER = "Cliff Brake <cliff.brake@gmail.com>" +PR = "r0" + +SRC_URI = "http://www.clearsilver.net/downloads/${P}.tar.gz \ + file://crosscompile.patch;patch=1" + +EXTRA_OECONF = "--disable-apache --disable-perl --disable-ruby --disable-java --disable-csharp --enable-gettext --with-python=${STAGING_BINDIR}/python" + +inherit autotools + +FILES_${PN} += "/usr/lib/python*" + +do_compile() { + BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} oe_runmake +} + +do_configure() { + gnu-configize + oe_runconf +} + + diff --git a/packages/clearsilver/files/.mtn2git_empty b/packages/clearsilver/files/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/clearsilver/files/.mtn2git_empty diff --git a/packages/clearsilver/files/crosscompile.patch b/packages/clearsilver/files/crosscompile.patch new file mode 100644 index 0000000000..1b73bd5576 --- /dev/null +++ b/packages/clearsilver/files/crosscompile.patch @@ -0,0 +1,59 @@ +Index: clearsilver-0.10.3/cgi/Makefile +=================================================================== +--- clearsilver-0.10.3.orig/cgi/Makefile ++++ clearsilver-0.10.3/cgi/Makefile +@@ -30,13 +30,13 @@ $(CGI_LIB): $(CGI_OBJ) + $(RANLIB) $@ + + $(STATIC_EXE): $(STATIC_OBJ) $(DEP_LIBS) +- $(LD) $@ $(STATIC_OBJ) -L$(LIB_DIR) $(DLIBS) $(LIBS) ++ $(LD) $@ $(STATIC_OBJ) -L$(LIB_DIR) $(DLIBS) $(LIBS) $(LDFLAGS) + + $(STATIC_CSO): $(STATIC_OBJ) $(DEP_LIBS) +- $(LDSHARED) -o $@ $(STATIC_OBJ) -L$(LIB_DIR) $(DLIBS) $(LIBS) ++ $(LDSHARED) -o $@ $(STATIC_OBJ) -L$(LIB_DIR) $(DLIBS) $(LIBS) $(LDFLAGS) + + $(CGICSTEST_EXE): $(CGICSTEST_OBJ) $(DEP_LIBS) +- $(LD) $@ $(CGICSTEST_OBJ) -L$(LIB_DIR) $(DLIBS) $(LIBS) ++ $(LD) $@ $(CGICSTEST_OBJ) -L$(LIB_DIR) $(DLIBS) $(LIBS) $(LDFLAGS) + + install: all + $(NEOTONIC_ROOT)/mkinstalldirs $(DESTDIR)$(cs_includedir)/cgi +Index: clearsilver-0.10.3/cs/Makefile +=================================================================== +--- clearsilver-0.10.3.orig/cs/Makefile ++++ clearsilver-0.10.3/cs/Makefile +@@ -22,9 +22,9 @@ CSDUMP_EXE = csdump + CSDUMP_SRC = csdump.c + CSDUMP_OBJ = $(CSDUMP_SRC:%.c=%.o) + +-LIBS += -L$(LIB_DIR) -lneo_cs -lneo_utl # -lefence ++LIBS += -L$(LIB_DIR) -lneo_cs -lneo_utl $(LDFLAGS) # -lefence + +-TARGETS = $(CS_LIB) $(CSTEST_EXE) $(CSR_EXE) test ++TARGETS = $(CS_LIB) $(CSR_EXE) $(CSTEST_EXE) + + CS_TESTS = test.cs test2.cs test3.cs test4.cs test5.cs test6.cs test7.cs \ + test8.cs test9.cs test10.cs test11.cs test12.cs test13.cs \ +Index: clearsilver-0.10.3/python/Makefile +=================================================================== +--- clearsilver-0.10.3.orig/python/Makefile ++++ clearsilver-0.10.3/python/Makefile +@@ -11,7 +11,7 @@ NEO_UTIL_PYD = neo_cgi.pyd + NEO_UTIL_SRC = neo_cgi.c neo_util.c neo_cs.c + NEO_UTIL_OBJ = $(NEO_UTIL_SRC:%.c=%.o) + +-CFLAGS += $(PYTHON_INC) ++#CFLAGS += $(PYTHON_INC) + DLIBS += -lneo_cgi -lneo_cs -lneo_utl + LIBS += -L$(LIB_DIR) $(DLIBS) $(DB2_LIB) + +@@ -21,6 +21,8 @@ else + TARGETS = $(NEO_UTIL_SO) + endif + ++PYTHON_SITE = /usr/lib/python2.4/site-packages/ ++ + all: $(TARGETS) + + $(NEO_UTIL_SO): setup.py $(NEO_UTIL_SRC) $(DEP_LIBS) diff --git a/packages/gcc/gcc-4.1.1/.mtn2git_empty b/packages/gcc/gcc-4.1.1/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/gcc/gcc-4.1.1/.mtn2git_empty diff --git a/packages/gcc/gcc-4.1.1/arm-nolibfloat.patch b/packages/gcc/gcc-4.1.1/arm-nolibfloat.patch new file mode 100644 index 0000000000..c4897c0330 --- /dev/null +++ b/packages/gcc/gcc-4.1.1/arm-nolibfloat.patch @@ -0,0 +1,24 @@ +# Dimitry Andric <dimitry@andric.com>, 2004-05-01 +# +# * Removed the extra -lfloat option from LIBGCC_SPEC, since it isn't needed +# anymore. (The required functions are now in libgcc.) +# +# Fixes errors like +# arm-softfloat-linux-gnu/3.4.0/../../../../arm-softfloat-linux-gnu/bin/ld: cannot find -lfloat +# collect2: ld returned 1 exit status +# make[2]: *** [arm-softfloat-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/iconvdata/ISO8859-1.so] Error 1 +# when building glibc-2.3.3 with gcc-3.4.0 for arm-softfloat + +Index: gcc-4.0.2/gcc/config/arm/linux-elf.h +=================================================================== +--- gcc-4.0.2.orig/gcc/config/arm/linux-elf.h 2005-03-04 16:14:01.000000000 +0000 ++++ gcc-4.0.2/gcc/config/arm/linux-elf.h 2005-11-11 18:02:54.000000000 +0000 +@@ -56,7 +56,7 @@ + %{shared:-lc} \ + %{!shared:%{profile:-lc_p}%{!profile:-lc}}" + +-#define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc" ++#define LIBGCC_SPEC "-lgcc" + + /* Provide a STARTFILE_SPEC appropriate for GNU/Linux. Here we add + the GNU/Linux magical crtbegin.o file (see crtstuff.c) which diff --git a/packages/gcc/gcc-4.1.1/arm-softfloat.patch b/packages/gcc/gcc-4.1.1/arm-softfloat.patch new file mode 100644 index 0000000000..c86c83ed15 --- /dev/null +++ b/packages/gcc/gcc-4.1.1/arm-softfloat.patch @@ -0,0 +1,16 @@ +Index: gcc-4.0.2/gcc/config/arm/t-linux +=================================================================== +--- gcc-4.0.2.orig/gcc/config/arm/t-linux 2004-05-15 12:41:35.000000000 +0000 ++++ gcc-4.0.2/gcc/config/arm/t-linux 2005-11-11 16:07:53.000000000 +0000 +@@ -4,7 +4,10 @@ + LIBGCC2_DEBUG_CFLAGS = -g0 + + LIB1ASMSRC = arm/lib1funcs.asm +-LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx ++LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx \ ++ _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \ ++ _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \ ++ _fixsfsi _fixunssfsi _floatdidf _floatdisf + + # MULTILIB_OPTIONS = mhard-float/msoft-float + # MULTILIB_DIRNAMES = hard-float soft-float diff --git a/packages/gcc/gcc-4.1.1/armeb-fix.patch b/packages/gcc/gcc-4.1.1/armeb-fix.patch new file mode 100644 index 0000000000..42bb4ea9ab --- /dev/null +++ b/packages/gcc/gcc-4.1.1/armeb-fix.patch @@ -0,0 +1,62 @@ +--- gcc-4.0-20050305/gcc/config/arm/linux-elf.h.orig 2005-03-23 18:44:54.822707377 +0100 ++++ gcc-4.0-20050305/gcc/config/arm/linux-elf.h 2005-03-23 18:46:18.228560206 +0100 +@@ -31,19 +31,33 @@ + /* Do not assume anything about header files. */ + #define NO_IMPLICIT_EXTERN_C + ++/* ++ * 'config.gcc' defines TARGET_BIG_ENDIAN_DEFAULT as 1 for ++ * arm*b-*-linux* (big endian) configurations. ++ */ ++#if TARGET_BIG_ENDIAN_DEFAULT ++#define TARGET_ENDIAN_DEFAULT ARM_FLAG_BIG_END ++#define TARGET_ENDIAN_OPTION "mbig-endian" ++#define TARGET_LINKER_EMULATION "armelfb_linux" ++#else ++#define TARGET_ENDIAN_DEFAULT 0 ++#define TARGET_ENDIAN_OPTION "mlittle-endian" ++#define TARGET_LINKER_EMULATION "armelf_linux" ++#endif ++ + #undef TARGET_DEFAULT_FLOAT_ABI + #define TARGET_DEFAULT_FLOAT_ABI ARM_FLOAT_ABI_HARD + + #undef TARGET_DEFAULT +-#define TARGET_DEFAULT (0) ++#define TARGET_DEFAULT (TARGET_ENDIAN_DEFAULT) + + #define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm6 + +-#define SUBTARGET_EXTRA_LINK_SPEC " -m armelf_linux -p" ++#define SUBTARGET_EXTRA_LINK_SPEC " -m " TARGET_LINKER_EMULATION " -p" + + #undef MULTILIB_DEFAULTS + #define MULTILIB_DEFAULTS \ +- { "marm", "mlittle-endian", "mhard-float", "mno-thumb-interwork" } ++ { "marm", TARGET_ENDIAN_OPTION, "mhard-float", "mno-thumb-interwork" } + + /* The GNU C++ standard library requires that these macros be defined. */ + #undef CPLUSPLUS_CPP_SPEC +@@ -90,7 +104,7 @@ + %{rdynamic:-export-dynamic} \ + %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2} \ + -X \ +- %{mbig-endian:-EB}" \ ++ %{mbig-endian:-EB} %{mlittle-endian:-EL}" \ + SUBTARGET_EXTRA_LINK_SPEC + + #define TARGET_OS_CPP_BUILTINS() \ +--- gcc-4.0-20050305/gcc/config.gcc.orig 2005-03-23 18:46:23.318105335 +0100 ++++ gcc-4.0-20050305/gcc/config.gcc 2005-03-23 18:47:41.592546386 +0100 +@@ -650,6 +650,11 @@ + ;; + arm*-*-linux*) # ARM GNU/Linux with ELF + tm_file="dbxelf.h elfos.h linux.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/aout.h arm/arm.h" ++ case $target in ++ arm*b-*-linux*) ++ tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1" ++ ;; ++ esac + tmake_file="${tmake_file} arm/t-arm arm/t-linux" + extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o" + gnu_ld=yes diff --git a/packages/gcc/gcc-4.1.1/ldflags.patch b/packages/gcc/gcc-4.1.1/ldflags.patch new file mode 100644 index 0000000000..9576f60778 --- /dev/null +++ b/packages/gcc/gcc-4.1.1/ldflags.patch @@ -0,0 +1,22 @@ +--- /tmp/Makefile.in 2006-02-23 20:56:01.399758728 +0100 ++++ gcc-4.1-20060217/Makefile.in 2006-02-23 20:56:16.874406224 +0100 +@@ -334,7 +334,7 @@ + CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET) + LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET) + LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates +-LDFLAGS_FOR_TARGET = ++LDFLAGS_FOR_TARGET = @LDFLAGS@ + PICFLAG_FOR_TARGET = + + # ------------------------------------ +--- /tmp/Makefile.tpl 2006-02-23 20:50:34.077519272 +0100 ++++ gcc-4.1-20060217/Makefile.tpl 2006-02-23 21:04:31.092273688 +0100 +@@ -337,7 +337,7 @@ + CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET) + LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET) + LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates +-LDFLAGS_FOR_TARGET = ++LDFLAGS_FOR_TARGET = @LDFLAGS@ + PICFLAG_FOR_TARGET = + + # ------------------------------------ diff --git a/packages/gcc/gcc-4.1.1/zecke-no-host-includes.patch b/packages/gcc/gcc-4.1.1/zecke-no-host-includes.patch new file mode 100644 index 0000000000..6afb10d6ef --- /dev/null +++ b/packages/gcc/gcc-4.1.1/zecke-no-host-includes.patch @@ -0,0 +1,31 @@ +Index: gcc-4.0.2/gcc/c-incpath.c +=================================================================== +--- gcc-4.0.2.orig/gcc/c-incpath.c 2005-01-23 16:05:27.000000000 +0100 ++++ gcc-4.0.2/gcc/c-incpath.c 2006-05-15 21:23:02.000000000 +0200 +@@ -350,6 +350,26 @@ + p->construct = 0; + p->user_supplied_p = user_supplied_p; + ++#ifdef CROSS_COMPILE ++ /* A common error when cross compiling is including ++ host headers. This code below will try to fail fast ++ for cross compiling. Currently we consider /usr/include, ++ /opt/include and /sw/include as harmful. */ ++ { ++ /* printf("Adding Path: %s\n", p->name ); */ ++ if( strstr(p->name, "/usr/include" ) == p->name ) { ++ fprintf(stderr, _("CROSS COMPILE Badness: /usr/include in INCLUDEPATH: %s\n"), p->name); ++ abort(); ++ } else if( strstr(p->name, "/sw/include") == p->name ) { ++ fprintf(stderr, _("CROSS COMPILE Badness: /sw/include in INCLUDEPATH: %s\n"), p->name); ++ abort(); ++ } else if( strstr(p->name, "/opt/include") == p->name ) { ++ fprintf(stderr, _("CROSS COMPILE Badness: /opt/include in INCLUDEPATH: %s\n"), p->name); ++ abort(); ++ } ++ } ++#endif ++ + add_cpp_dir_path (p, chain); + } + diff --git a/packages/gcc/gcc-cross-initial_4.1.1.bb b/packages/gcc/gcc-cross-initial_4.1.1.bb new file mode 100644 index 0000000000..63308c2cfe --- /dev/null +++ b/packages/gcc/gcc-cross-initial_4.1.1.bb @@ -0,0 +1,30 @@ +include gcc-cross_${PV}.bb + +DEPENDS = "virtual/${TARGET_PREFIX}binutils" +DEPENDS += "${@['virtual/${TARGET_PREFIX}libc-initial',''][bb.data.getVar('TARGET_ARCH', d, 1) in ['arm', 'armeb', 'mips', 'mipsel']]}" +PROVIDES = "virtual/${TARGET_PREFIX}gcc-initial" +PACKAGES = "" + +# This is intended to be a -very- basic config +EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/${TARGET_SYS} \ + --with-newlib \ + --disable-shared \ + --disable-threads \ + --disable-multilib \ + --disable-__cxa_atexit \ + --disable-libmudflap \ + --disable-libssp \ + --enable-languages=c \ + --enable-target-optspace \ + --program-prefix=${TARGET_PREFIX} \ + ${@get_gcc_fpu_setting(bb, d)}" + +do_stage_prepend () { + mkdir -p ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV} + ln -sf libgcc.a ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/libgcc_eh.a +} + +# Override the method from gcc-cross so we don't try to install libgcc +do_install () { + oe_runmake 'DESTDIR=${D}' install +} diff --git a/packages/gcc/gcc-cross_4.1.1.bb b/packages/gcc/gcc-cross_4.1.1.bb new file mode 100644 index 0000000000..4b0b5a1311 --- /dev/null +++ b/packages/gcc/gcc-cross_4.1.1.bb @@ -0,0 +1,18 @@ +include gcc_${PV}.bb +# path mangling, needed by the cross packaging +include gcc-paths-cross.inc +inherit cross +FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/gcc-${PV}" +# NOTE: split PR. If the main .oe changes something that affects its *build* +# remember to increment this one too. +PR = "r1" + +DEPENDS = "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}libc-for-gcc gmp-native mpfr-native" +PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++" + +# cross build +include gcc3-build-cross.inc +# cross packaging +include gcc-package-cross.inc + +EXTRA_OECONF += "--with-mpfr=${STAGING_DIR}/${BUILD_SYS}" diff --git a/packages/gcc/gcc_4.1.1.bb b/packages/gcc/gcc_4.1.1.bb new file mode 100644 index 0000000000..a0dcf94be1 --- /dev/null +++ b/packages/gcc/gcc_4.1.1.bb @@ -0,0 +1,26 @@ +PR = "r0" +DESCRIPTION = "The GNU cc and gcc C compilers." +HOMEPAGE = "http://www.gnu.org/software/gcc/" +SECTION = "devel" +LICENSE = "GPL" +DEFAULT_PREFERENCE = "-1" + +inherit autotools gettext + +include gcc-package.inc + +SRC_URI = "http://ftp.gnu.org/pub/gnu/gcc/gcc-4.1.1/gcc-4.1.1.tar.bz2 \ + file://arm-nolibfloat.patch;patch=1 \ + file://arm-softfloat.patch;patch=1 \ + file://ldflags.patch;patch=1" + +SRC_URI_append_fail-fast = " file://zecke-no-host-includes.patch;patch=1 " + +include gcc4-build.inc +EXTRA_OECONF += "--disable-libssp" + +FORTRAN = "" +HAS_GFORTRAN = "" +HAS_G2C = "no" + + diff --git a/packages/glibc/glibc_2.3.5+cvs20050627.bb b/packages/glibc/glibc_2.3.5+cvs20050627.bb index 86ddc91fd0..024ba1d901 100644 --- a/packages/glibc/glibc_2.3.5+cvs20050627.bb +++ b/packages/glibc/glibc_2.3.5+cvs20050627.bb @@ -106,7 +106,12 @@ do_munge() { addtask munge before do_patch after do_unpack +export default_mmap_threshold_familiar = "32*1024" + do_configure () { + if [ "x$default_mmap_threshold" != "x" ]; then + echo "malloc-CPPFLAGS=-DDEFAULT_MMAP_THRESHOLD=\"(${default_mmap_threshold})\"" >configparms + fi # override this function to avoid the autoconf/automake/aclocal/autoheader # calls for now # don't pass CPPFLAGS into configure, since it upsets the kernel-headers diff --git a/packages/gpe-package/files/.mtn2git_empty b/packages/gpe-package/files/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/gpe-package/files/.mtn2git_empty diff --git a/packages/gpe-package/files/gpe-package b/packages/gpe-package/files/gpe-package new file mode 100644 index 0000000000..2555dfb975 --- /dev/null +++ b/packages/gpe-package/files/gpe-package @@ -0,0 +1,2 @@ +#!/bin/sh +exec /usr/bin/gpe-su -c /usr/sbin/gpe-package diff --git a/packages/gpe-package/files/sbin-and-no-suid-install.patch b/packages/gpe-package/files/sbin-and-no-suid-install.patch new file mode 100644 index 0000000000..10a90f1d30 --- /dev/null +++ b/packages/gpe-package/files/sbin-and-no-suid-install.patch @@ -0,0 +1,15 @@ +--- gpe-package-0.3/Makefile 2005-08-26 06:14:00.000000000 -0700 ++++ gpe-package-0.3-oe/Makefile 2006-05-24 16:51:02.459320395 -0700 +@@ -52,9 +52,9 @@ + mkdir -p $(DESTDIR)/CONTROL + sed -e s/VERSION/$(VERSION)/ < familiar/control > $(DESTDIR)/CONTROL/control + mkdir -p $(DESTDIR)/etc/gpe +- mkdir -p $(DESTDIR)/$(PREFIX)/bin +- $(INSTALL) -m 4755 $(PACKAGE) $(DESTDIR)$(PREFIX)/bin/$(PACKAGE) +- $(STRIP) $(DESTDIR)$(PREFIX)/bin/$(PACKAGE) ++ mkdir -p $(DESTDIR)/$(PREFIX)/sbin ++ $(INSTALL) -m 0744 $(PACKAGE) $(DESTDIR)$(PREFIX)/sbin/$(PACKAGE) ++ $(STRIP) $(DESTDIR)$(PREFIX)/sbin/$(PACKAGE) + mkdir -p $(DESTDIR)$(PREFIX)/share/pixmaps + for i in $(PIXMAPS); do install -m 644 -D pixmaps/$$i $(DESTDIR)$(PREFIX)/share/pixmaps/$$i; done + mkdir -p $(DESTDIR)$(PREFIX)/share/applications diff --git a/packages/gpe-package/gpe-package_0.3.bb b/packages/gpe-package/gpe-package_0.3.bb index d74b0df5a3..55cc4ef2a8 100644 --- a/packages/gpe-package/gpe-package_0.3.bb +++ b/packages/gpe-package/gpe-package_0.3.bb @@ -1,14 +1,19 @@ LICENSE = "GPL" -PR = "r1" +PR = "r2" inherit gpe pkgconfig DESCRIPTION = "A package manager GUI for GPE" -DEPENDS = "ipkg libgpewidget" +DEPENDS = "ipkg libgpewidget gpe-su" RDEPENDS = "gpe-icons" SECTION = "gpe" PRIORITY = "optional" -pkg_postinst () { -#!/bin/sh -chmod u+s /usr/bin/gpe-package +SRC_URI += " file://sbin-and-no-suid-install.patch;patch=1 \ + file://gpe-package" + +FILES_${PN} += " /usr/bin/gpe-package" + +do_install_append() { + install -d ${D}/usr/bin + install -m 0755 ${WORKDIR}/gpe-package ${D}/usr/bin } diff --git a/packages/kbdd/files/kbdd.init b/packages/kbdd/files/kbdd.init index c9e0a0deac..00aec07aa7 100644 --- a/packages/kbdd/files/kbdd.init +++ b/packages/kbdd/files/kbdd.init @@ -12,6 +12,11 @@ case $1 in killall kbdd ;; +'restart') + $0 stop + $o start + ;; + *) echo "usage: $0 { start | stop | restart }" ;; diff --git a/packages/meta/unslung-image.bb b/packages/meta/unslung-image.bb index b21433245a..de27c9236a 100644 --- a/packages/meta/unslung-image.bb +++ b/packages/meta/unslung-image.bb @@ -1,5 +1,5 @@ LICENSE = MIT -PR = "r15" +PR = "r16" IMAGE_BASENAME = "unslung" @@ -73,7 +73,7 @@ unslung_clean_image () { #-- these are for cpio: rm -f ${IMAGE_ROOTFS}/usr/bin/mt - rm -rf ${IMAGE_ROOTFS}/usr/bin/libexec + rm -rf ${IMAGE_ROOTFS}/usr/libexec #-- and these for find: rm -f ${IMAGE_ROOTFS}/usr/bin/locate diff --git a/packages/nbd/.mtn2git_empty b/packages/nbd/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/nbd/.mtn2git_empty diff --git a/packages/nbd/files/.mtn2git_empty b/packages/nbd/files/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/nbd/files/.mtn2git_empty diff --git a/packages/nbd/files/cross-compile.patch b/packages/nbd/files/cross-compile.patch new file mode 100644 index 0000000000..654a3d7a48 --- /dev/null +++ b/packages/nbd/files/cross-compile.patch @@ -0,0 +1,61 @@ +Cross Compile fixes: + The sanitized kernel headers use __u32 and __u64 + let us define those. + + +Index: nbd-2.8.4/configure.ac +=================================================================== +--- nbd-2.8.4.orig/configure.ac 2006-02-26 15:52:03.000000000 +0100 ++++ nbd-2.8.4/configure.ac 2006-05-25 21:35:26.000000000 +0200 +@@ -68,7 +68,8 @@ + man8_MANS=nbd-client.8 + AC_MSG_RESULT(yes) + ;; +- *) AC_MSG_RESULT(no) ;; ++ dnl uname is a pretty stupid idea... we could be on freeBSD,OS X... ++ *) AC_MSG_RESULT(yes) ;; + esac + AC_MSG_CHECKING(where to find a working nbd.h) + dnl We need to check for NBD_CMD_DISC, but that's part of an enum, it is not +@@ -82,8 +83,8 @@ + [int foo=NBD_CMD_DISC], + [AC_DEFINE(NBD_H_LOCAL, 1, Set to 1 if a (kernel 2.6) nbd.h can be found in the current directory) + NBD_H='"nbd.h"'], +- AC_TRY_COMPILE([#define u32 int +-#define u64 int ++ AC_TRY_COMPILE([#define __u32 int ++#define __u64 int + #include <linux/nbd.h> + ], + [int foo=NBD_CMD_DISC], +Index: nbd-2.8.4/cliserv.h +=================================================================== +--- nbd-2.8.4.orig/cliserv.h 2006-01-06 18:02:03.000000000 +0100 ++++ nbd-2.8.4/cliserv.h 2006-05-25 21:41:25.000000000 +0200 +@@ -17,20 +17,26 @@ + + #if SIZEOF_UNSIGNED_SHORT_INT==4 + typedef unsigned short u32; ++typedef unsigned short __u32; + #elif SIZEOF_UNSIGNED_INT==4 + typedef unsigned int u32; ++typedef unsigned int __u32; + #elif SIZEOF_UNSIGNED_LONG_INT==4 + typedef unsigned long u32; ++typedef unsigned long __u32; + #else + #error I need at least some 32-bit type + #endif + + #if SIZEOF_UNSIGNED_INT==8 + typedef unsigned int u64; ++typedef unsigned int __u64; + #elif SIZEOF_UNSIGNED_LONG_INT==8 + typedef unsigned long u64; ++typedef unsigned long __u64; + #elif SIZEOF_UNSIGNED_LONG_LONG_INT==8 + typedef unsigned long long u64; ++typedef unsigned long long __u64; + #else + #error I need at least some 64-bit type + #endif diff --git a/packages/nbd/nbd_2.8.4.bb b/packages/nbd/nbd_2.8.4.bb new file mode 100644 index 0000000000..49eda970b0 --- /dev/null +++ b/packages/nbd/nbd_2.8.4.bb @@ -0,0 +1,20 @@ +DESCRIPTION = "Network Block Device" +LICENSE = "GPLv2" +HOMEPAGE = "http://nbd.sourceforge.net" +MAINTAINER = "Holger Freyther <freyther@handhelds.org>" + +DEPENDS = "glib-2.0" + +SRC_URI = "${SOURCEFORGE_MIRROR}/${PN}/${PN}-${PV}.tar.bz2;md5sum=1b5a0866d025b98d1c24fe19a4f628c3 \ + file://cross-compile.patch;patch=1 " + +inherit autotools + + +PACKAGES = "nbd-client nbd-server" +PACKAGES += "nbd-client-doc nbd-server-doc" + +FILES_nbd-client = "/usr/sbin/nbd-client" +FILES_nbd-server = "/usr/bin/nbd-server" +FILES_nbd-client-doc = "/usr/share/man/man8/*" +FILES_nbd-server-doc = "/usr/share/man/man1/*" diff --git a/packages/samba/files/Managing-Samba.txt b/packages/samba/files/Managing-Samba.txt new file mode 100644 index 0000000000..079cf34e4b --- /dev/null +++ b/packages/samba/files/Managing-Samba.txt @@ -0,0 +1,34 @@ +This device is running a bare-bone Samba server which allows easy +transfer of files and directories between any networked desktop PC and +your networked PDA. + +Since it is generally a bad idea to allow everyone read and write access +to your PDA, you will have to configure at least one user to get access to +any shared folder but "tmp" (tmp is read-write for everyone). + +How to create a Samba user with password: + +- If you haven't already created a non-root user, do so now: + root@poodle:/usr/bin# adduser testuser + Changing password for testuser + Enter the new password (minimum of 5, maximum of 8 characters) + Please use a combination of upper and lower case letters and numbers. + Enter new password: + Bad password: too short. + + Warning: weak password (continuing). + Re-enter new password: + Password changed. + root@poodle:/usr/bin# + +- Note that the password you entered will _not_ be your samba password. + Samba uses its own password database. + +- Add a Samba password for your user: + root@poodle:/usr/bin# smbpasswd -a testuser + New SMB password: + Retype new SMB password: + Added user testuser. + root@poodle:/usr/bin# + +- Done ;) diff --git a/packages/samba/files/smb-essential.conf b/packages/samba/files/smb-essential.conf new file mode 100644 index 0000000000..29681f3a64 --- /dev/null +++ b/packages/samba/files/smb-essential.conf @@ -0,0 +1,295 @@ +# This is the main Samba configuration file. You should read the +# smb.conf(5) manual page in order to understand the options listed +# here. Samba has a huge number of configurable options (perhaps too +# many!) most of which are not shown in this example +# +# For a step to step guide on installing, configuring and using samba, +# read the Samba-HOWTO-Collection. This may be obtained from: +# http://www.samba.org/samba/docs/Samba-HOWTO-Collection.pdf +# +# Many working examples of smb.conf files can be found in the +# Samba-Guide which is generated daily and can be downloaded from: +# http://www.samba.org/samba/docs/Samba-Guide.pdf +# +# Any line which starts with a ; (semi-colon) or a # (hash) +# is a comment and is ignored. In this example we will use a # +# for commentry and a ; for parts of the config file that you +# may wish to enable +# +# NOTE: Whenever you modify this file you should run the command "testparm" +# to check that you have not made any basic syntactic errors. +# +#======================= Global Settings ===================================== +[global] + +# workgroup = NT-Domain-Name or Workgroup-Name, eg: MIDEARTH + workgroup = ZAURUS + +# server string is the equivalent of the NT Description field + server string = OpenZaurus Samba Server + +# Security mode. Defines in which mode Samba will operate. Possible +# values are share, user, server, domain and ads. Most people will want +# user level security. See the Samba-HOWTO-Collection for details. + security = user + +# This option is important for security. It allows you to restrict +# connections to machines which are on your local network. The +# following example restricts access to two C class networks and +# the "loopback" interface. For more examples of the syntax see +# the smb.conf man page +; hosts allow = 192.168.1. 192.168.2. 127. + +# If you want to automatically load your printer list rather +# than setting them up individually then you'll need this + load printers = no + +# you may wish to override the location of the printcap file +; printcap name = /etc/printcap + +# on SystemV system setting printcap name to lpstat should allow +# you to automatically obtain a printer list from the SystemV spool +# system +; printcap name = lpstat + +# It should not be necessary to specify the print system type unless +# it is non-standard. Currently supported print systems include: +# bsd, cups, sysv, plp, lprng, aix, hpux, qnx +; printing = cups + +# Uncomment this if you want a guest account, you must add this to /etc/passwd +# otherwise the user "nobody" is used +; guest account = pcguest + +# this tells Samba to use a separate log file for each machine +# that connects + log file = /var/log.%m + +# Put a capping on the size of the log files (in Kb). + max log size = 50 + +# Use password server option only with security = server +# The argument list may include: +# password server = My_PDC_Name [My_BDC_Name] [My_Next_BDC_Name] +# or to auto-locate the domain controller/s +# password server = * +; password server = <NT-Server-Name> + +# Use the realm option only with security = ads +# Specifies the Active Directory realm the host is part of +; realm = MY_REALM + +# Backend to store user information in. New installations should +# use either tdbsam or ldapsam. smbpasswd is available for backwards +# compatibility. tdbsam requires no further configuration. +; passdb backend = tdbsam + +# Using the following line enables you to customise your configuration +# on a per machine basis. The %m gets replaced with the netbios name +# of the machine that is connecting. +# Note: Consider carefully the location in the configuration file of +# this line. The included file is read at that point. +; include = /usr/local/samba/lib/smb.conf.%m + +# Most people will find that this option gives better performance. +# See the chapter 'Samba performance issues' in the Samba HOWTO Collection +# and the manual pages for details. +# You may want to add the following on a Linux system: +# SO_RCVBUF=8192 SO_SNDBUF=8192 + socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 + +# Configure Samba to use multiple interfaces +# If you have multiple network interfaces then you must list them +# here. See the man page for details. +; interfaces = 192.168.12.2/24 192.168.13.2/24 + +# Browser Control Options: +# set local master to no if you don't want Samba to become a master +# browser on your network. Otherwise the normal election rules apply +; local master = yes + +# OS Level determines the precedence of this server in master browser +# elections. The default value should be reasonable +; os level = 33 + +# Domain Master specifies Samba to be the Domain Master Browser. This +# allows Samba to collate browse lists between subnets. Don't use this +# if you already have a Windows NT domain controller doing this job +; domain master = yes + +# Preferred Master causes Samba to force a local browser election on startup +# and gives it a slightly higher chance of winning the election +; preferred master = yes + +# Enable this if you want Samba to be a domain logon server for +# Windows95 workstations. +; domain logons = yes + +# if you enable domain logons then you may want a per-machine or +# per user logon script +# run a specific logon batch file per workstation (machine) +; logon script = %m.bat +# run a specific logon batch file per username +; logon script = %U.bat + +# Where to store roving profiles (only for Win95 and WinNT) +# %L substitutes for this servers netbios name, %U is username +# You must uncomment the [Profiles] share below +; logon path = \\%L\Profiles\%U + +# Windows Internet Name Serving Support Section: +# WINS Support - Tells the NMBD component of Samba to enable it's WINS Server +; wins support = yes + +# WINS Server - Tells the NMBD components of Samba to be a WINS Client +# Note: Samba can be either a WINS Server, or a WINS Client, but NOT both +; wins server = w.x.y.z + +# WINS Proxy - Tells Samba to answer name resolution queries on +# behalf of a non WINS capable client, for this to work there must be +# at least one WINS Server on the network. The default is NO. +; wins proxy = yes + +# DNS Proxy - tells Samba whether or not to try to resolve NetBIOS names +# via DNS nslookups. The default is NO. + dns proxy = no + +# These scripts are used on a domain controller or stand-alone +# machine to add or delete corresponding unix accounts +; add user script = /usr/sbin/useradd %u +; add group script = /usr/sbin/groupadd %g +; add machine script = /usr/sbin/adduser -n -g machines -c Machine -d /dev/null -s /bin/false %u +; delete user script = /usr/sbin/userdel %u +; delete user from group script = /usr/sbin/deluser %u %g +; delete group script = /usr/sbin/groupdel %g + + +#============================ Share Definitions ============================== +[homes] + comment = Home Directories + browseable = no + writable = yes + +# Un-comment the following and create the netlogon directory for Domain Logons +; [netlogon] +; comment = Network Logon Service +; path = /usr/local/samba/lib/netlogon +; guest ok = yes +; writable = no +; share modes = no + + +# Un-comment the following to provide a specific roving profile share +# the default is to use the user's home directory +;[Profiles] +; path = /usr/local/samba/profiles +; browseable = no +; guest ok = yes + + +# This one is useful for people to share files +[tmp] + comment = Temporary file space + path = /tmp + read only = no + public = yes + +[CompactFlash] + comment = Compact Flash Storage + path = /media/cf + writable = yes + printable = no + public = no + +[SD-MMC] + comment = SD & MMC Storage + path = /media/card + writable = yes + printable = no + public = no + +[RootFS] + comment = Zaurus Rootfs + path = / + writable = yes + printable = no + public = no + +[Samba-Help] + comment = How to configure Samba + path = /usr/share/samba/help + writable = no + public = yes + printable = no + +# A publicly accessible directory, but read only, except for people in +# the "staff" group +;[public] +; comment = Public Stuff +; path = /home/samba +; public = yes +; writable = yes +; printable = no +; write list = @staff + +# Other examples. +# +# A private printer, usable only by fred. Spool data will be placed in fred's +# home directory. Note that fred must have write access to the spool directory, +# wherever it is. +;[fredsprn] +; comment = Fred's Printer +; valid users = fred +; path = /homes/fred +; printer = freds_printer +; public = no +; writable = no +; printable = yes + +# A private directory, usable only by fred. Note that fred requires write +# access to the directory. +;[fredsdir] +; comment = Fred's Service +; path = /usr/somewhere/private +; valid users = fred +; public = no +; writable = yes +; printable = no + +# a service which has a different directory for each machine that connects +# this allows you to tailor configurations to incoming machines. You could +# also use the %U option to tailor it by user name. +# The %m gets replaced with the machine name that is connecting. +;[pchome] +; comment = PC Directories +; path = /usr/pc/%m +; public = no +; writable = yes + +# A publicly accessible directory, read/write to all users. Note that all files +# created in the directory by users will be owned by the default user, so +# any user with access can delete any other user's files. Obviously this +# directory must be writable by the default user. Another user could of course +# be specified, in which case all files would be owned by that user instead. +;[public] +; path = /usr/somewhere/else/public +; public = yes +; only guest = yes +; writable = yes +; printable = no + +# The following two entries demonstrate how to share a directory so that two +# users can place files there that will be owned by the specific users. In this +# setup, the directory should be writable by both users and should have the +# sticky bit set on it to prevent abuse. Obviously this could be extended to +# as many users as required. +;[myshare] +; comment = Mary's and Fred's stuff +; path = /usr/somewhere/shared +; valid users = mary fred +; public = no +; writable = yes +; printable = no +; create mask = 0765 + + diff --git a/packages/samba/samba-essential.inc b/packages/samba/samba-essential.inc new file mode 100644 index 0000000000..55d14c2a4c --- /dev/null +++ b/packages/samba/samba-essential.inc @@ -0,0 +1,37 @@ +SECTION = "console/network" +DEPENDS = readline +LICENSE = "GPL" + +inherit autotools + +EXTRA_OECONF='--disable-cups --with-readline=${STAGING_LIBDIR}/.. \ + --without-ads --without-automount --without-smbmount --without-syslog \ + --without-ldapsam --without-quotas --without-nisplus-home \ + --without-sys-quotas --without-libsmbclient --without-winbind \ + --without-acl-support' + +do_configure_prepend () { + ./script/mkversion.sh + if [ ! -e acinclude.m4 ]; then + cat aclocal.m4 > acinclude.m4 + fi +} + +do_compile () { + oe_runmake proto_exists + base_do_compile +} + +do_install_append() { + rm -f ${D}${bindir}/*.old + rm -f ${D}${sbindir}/*.old + + mkdir -p ${D}/sbin/ +} + +do_install_prepend() { + + mkdir -p ${D}/sbin/ + +} + diff --git a/packages/samba/samba-essential_3.0.20.bb b/packages/samba/samba-essential_3.0.20.bb new file mode 100644 index 0000000000..21130bb0ab --- /dev/null +++ b/packages/samba/samba-essential_3.0.20.bb @@ -0,0 +1,61 @@ +PR = "r1" + +SRC_URI = "http://us2.samba.org/samba/ftp/stable/samba-${PV}.tar.gz \ + file://configure.patch;patch=1 \ + file://cifs.patch;patch=1 \ + file://config-lfs.patch;patch=1 \ + file://init \ + file://quota.patch;patch=1;pnum=0 \ + file://smb-essential.conf \ + file://Managing-Samba.txt" + +S := ${WORKDIR}/samba-${PV}/source + +RCONFILCTS = samba + +include samba-essential.inc +inherit update-rc.d + +INITSCRIPT_NAME = "samba" +# No dependencies, goes in at level 20 (NOTE: take care with the +# level, later levels put the shutdown later too - see the links +# in rc6.d, the shutdown must precede network shutdown). +INITSCRIPT_PARAMS = "defaults" +CONFFILES_${PN} = "${sysconfdir}/samba/smb.conf" + +# The file system settings --foodir=dirfoo and overridden unconditionally +# in the samba config by --with-foodir=dirfoo - even if the --with is not +# specified! Fix that here. Set the privatedir to /etc/samba/private. +EXTRA_OECONF += "\ + --with-configdir=${sysconfdir}/samba \ + --with-privatedir=${sysconfdir}/samba/private \ + --with-lockdir=${localstatedir}/lock \ + --with-piddir=${localstatedir}/run \ + --with-logfilebase=${localstatedir}/log \ + --with-libdir=${libdir} \ + --with-mandir=${mandir} \ + " + +do_install_append() { + install -d "${D}${localstatedir}/log" + rm -f ${D}/sbin/mount.smbfs + rmdir ${D}/sbin + install -d "${D}${sysconfdir}/init.d" + install -c -m 755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/samba + + install -d "${D}${sysconfdir}/samba" + install -d "${D}/usr/share/samba/help" + + install ${WORKDIR}/smb-essential.conf "${D}${sysconfdir}/samba/smb.conf" + install ${WORKDIR}/Managing-Samba.txt ${D}/usr/share/samba/help + +} + +FILES_${PN} = "${bindir}/smbpasswd \ + ${sbindir}/nmbd \ + ${sbindir}/smbd \ + ${libdir}/charset \ + ${libdir}/vfs \ + ${libdir}/*.dat \ + /usr/share/samba \ + /etc" |