diff options
author | root <root@rshg054.dnsready.net> | 2012-03-04 00:01:47 +0000 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2012-03-04 00:01:47 +0000 |
commit | f0fa42126da9e3eec6b98388b35c67929fa20dae (patch) | |
tree | 0a4ad5b073e8500ff0e8920ba509942598576463 | |
parent | d8fb549de0ef3299436c448f7b45fd8ebee8e733 (diff) |
Sun Mar 4 00:01:47 UTC 2012
73 files changed, 2807 insertions, 154 deletions
diff --git a/community-staging/encfs/PKGBUILD b/community-staging/encfs/PKGBUILD new file mode 100644 index 000000000..fe713cc2d --- /dev/null +++ b/community-staging/encfs/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 66952 2012-03-02 18:18:38Z lcarlier $ +# Contributor: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Jaroslaw Swierczynski <swiergot@aur.archlinux.org> +# Contributor: Sven Kauber, <celeon@gmail.com> +# Maintainer: Daniel J Griffiths <ghost1227@archlinux.us> + +pkgname=encfs +pkgver=1.7.4 +pkgrel=7 +pkgdesc='Encrypted filesystem in user-space' +arch=('i686' 'x86_64') +url='http://www.arg0.net/encfs' +license=('GPL') +depends=('rlog' 'openssl' 'fuse' 'boost-libs') +makedepends=('boost') +options=('!libtool') +source=("http://encfs.googlecode.com/files/${pkgname}-${pkgver}.tgz") +md5sums=('ac90cc10b2e9fc7e72765de88321d617') + +build(){ + cd ${pkgname}-${pkgver} + + ./configure \ + --prefix=/usr + + make +} + +package() { + cd ${pkgname}-${pkgver} + + make DESTDIR=${pkgdir} install +} diff --git a/community-staging/glob2/PKGBUILD b/community-staging/glob2/PKGBUILD new file mode 100644 index 000000000..041374e94 --- /dev/null +++ b/community-staging/glob2/PKGBUILD @@ -0,0 +1,34 @@ +# $Id: PKGBUILD 66954 2012-03-02 18:35:34Z lcarlier $ +# Contributor: Jaroslaw Swierczynski <swiergot@aur.archlinux.org> +# Contributor: Roman Kyrylych <Roman.Kyrylych@gmail.com> + +pkgname=glob2 +pkgver=0.9.4.4 +pkgrel=11 +pkgdesc="RTS game which minimizes micro-management by automatically assigning tasks to units" +arch=('i686' 'x86_64') +url="http://www.globulation2.org/" +license=('GPL3') +depends=('boost-libs' 'sdl_net' 'sdl_image' 'sdl_ttf' 'libvorbis' 'speex' 'mesa' + 'fribidi' 'desktop-file-utils') +makedepends=('scons' 'boost') +install=glob2.install +source=(http://dl.sv.nongnu.org/releases/${pkgname}/0.9.4/${pkgname}-${pkgver}.tar.gz + glob2-0.9.4.1-gcc44.patch) +md5sums=('94c527325f355a29a2807f8f18a6e6a8' 'b13cb1f73ece23bfc6413773678d583e') +sha1sums=('14aa8d840ef5f95a9af591789082fe2322fa8cad' '3e5ae81d85a727387a7049c3a0dfb3db930391b3') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + patch -Np0 -i "$srcdir/glob2-0.9.4.1-gcc44.patch" + scons BINDIR="${pkgdir}/usr/bin" INSTALLDIR="${pkgdir}/usr/share" +} + +package () { + cd "${srcdir}/${pkgname}-${pkgver}" + + scons install + find "${pkgdir}/usr/share" -type f -exec chmod 644 '{}' \; + install -Dm644 data/icons/glob2-icon-48x48.png "${pkgdir}/usr/share/pixmaps/glob2-icon-48x48.png" +} diff --git a/community-staging/glob2/glob2-0.9.4.1-gcc44.patch b/community-staging/glob2/glob2-0.9.4.1-gcc44.patch new file mode 100644 index 000000000..b425b25ec --- /dev/null +++ b/community-staging/glob2/glob2-0.9.4.1-gcc44.patch @@ -0,0 +1,87 @@ +diff -up libgag/include/StreamBackend.h.orig libgag/include/StreamBackend.h +--- libgag/include/StreamBackend.h.orig 2009-03-18 03:46:47.000000000 +0100 ++++ libgag/include/StreamBackend.h 2009-06-20 14:21:10.000000000 +0200 +@@ -43,7 +43,7 @@ namespace GAGCore + virtual void flush(void) = 0; + virtual void read(void *data, size_t size) = 0; + virtual void putc(int c) = 0; +- virtual int getc(void) = 0; ++ virtual int get_c(void) = 0; + virtual void seekFromStart(int displacement) = 0; + virtual void seekFromEnd(int displacement) = 0; + virtual void seekRelative(int displacement) = 0; +@@ -67,7 +67,7 @@ namespace GAGCore + virtual void flush(void) { assert(fp); fflush(fp); } + virtual void read(void *data, size_t size) { assert(fp); fread(data, size, 1, fp); } + virtual void putc(int c) { assert(fp); fputc(c, fp); } +- virtual int getc(void) { assert(fp); return fgetc(fp); } ++ virtual int get_c(void) { assert(fp); return fgetc(fp); } + virtual void seekFromStart(int displacement) { assert(fp); fseek(fp, displacement, SEEK_SET); } + virtual void seekFromEnd(int displacement) { assert(fp); fseek(fp, displacement, SEEK_END); } + virtual void seekRelative(int displacement) { assert(fp); fseek(fp, displacement, SEEK_CUR); } +@@ -92,7 +92,7 @@ namespace GAGCore + virtual void flush(void); + virtual void read(void *data, size_t size); + virtual void putc(int c); +- virtual int getc(void); ++ virtual int get_c(void); + virtual void seekFromStart(int displacement); + virtual void seekFromEnd(int displacement); + virtual void seekRelative(int displacement); +@@ -117,7 +117,7 @@ namespace GAGCore + virtual void flush(void) { } + virtual void read(void *data, size_t size); + virtual void putc(int c); +- virtual int getc(void); ++ virtual int get_c(void); + virtual void seekFromStart(int displacement); + virtual void seekFromEnd(int displacement); + virtual void seekRelative(int displacement); +diff -up libgag/src/StreamBackend.cpp.orig libgag/src/StreamBackend.cpp +--- libgag/src/StreamBackend.cpp.orig 2009-03-18 03:46:47.000000000 +0100 ++++ libgag/src/StreamBackend.cpp 2009-06-20 14:21:53.000000000 +0200 +@@ -75,9 +75,9 @@ namespace GAGCore + buffer->putc(c); + } + +- int ZLibStreamBackend::getc(void) ++ int ZLibStreamBackend::get_c(void) + { +- return buffer->getc(); ++ return buffer->get_c(); + } + + void ZLibStreamBackend::seekFromStart(int displacement) +@@ -147,7 +147,7 @@ namespace GAGCore + write(&ch, 1); + } + +- int MemoryStreamBackend::getc(void) ++ int MemoryStreamBackend::get_c(void) + { + Uint8 ch; + read(&ch, 1); +diff -up libgag/src/Stream.cpp.orig libgag/src/Stream.cpp +--- libgag/src/Stream.cpp.orig 2009-03-18 03:46:47.000000000 +0100 ++++ libgag/src/Stream.cpp 2009-06-20 14:21:35.000000000 +0200 +@@ -60,7 +60,7 @@ namespace GAGCore
+ std::string s;
+ while (1)
+ {
+- int c = backend->getc();
++ int c = backend->get_c();
+ if(c=='\r')
+ continue;
+ if ((c >= 0) && (c != '\n'))
+diff -up libgag/src/TextStream.cpp.orig libgag/src/TextStream.cpp +--- libgag/src/TextStream.cpp.orig 2009-03-18 03:46:47.000000000 +0100 ++++ libgag/src/TextStream.cpp 2009-06-20 14:21:22.000000000 +0200 +@@ -150,7 +150,7 @@ namespace GAGCore + + int nextChar(void) + { +- next = stream->getc(); ++ next = stream->get_c(); + if (next == '\n') + { + column = 0; diff --git a/community-staging/glob2/glob2.install b/community-staging/glob2/glob2.install new file mode 100644 index 000000000..7463b6e76 --- /dev/null +++ b/community-staging/glob2/glob2.install @@ -0,0 +1,12 @@ +post_install() { + update-desktop-database -q +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + update-desktop-database -q +} + diff --git a/community-staging/glom/PKGBUILD b/community-staging/glom/PKGBUILD new file mode 100644 index 000000000..4ad6510e2 --- /dev/null +++ b/community-staging/glom/PKGBUILD @@ -0,0 +1,35 @@ +# $Id: PKGBUILD 66958 2012-03-02 19:47:35Z lcarlier $ +# Maintainer: Roman Kyrylych <Roman.Kyrylych@gmail.com> +# Contributor: William Rea <sillywilly@gmail.com> +# Contributor: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> + +pkgname=glom +pkgver=1.20.4 +pkgrel=1 +pkgdesc="An easy-to-use database designer and user interface" +arch=('i686' 'x86_64') +url="http://www.glom.org/" +license=('GPL') +depends=('gettext' 'boost-libs' 'libgdamm' 'libxml++' 'python2-gobject' 'libepc' 'goocanvasmm' 'gtksourceviewmm' 'evince' 'postgresql') +makedepends=('intltool' 'gnome-doc-utils' 'python2-sphinx' 'boost') +options=('!libtool') +install=$pkgname.install +source=(http://ftp.gnome.org/pub/GNOME/sources/glom/${pkgver%.*}/$pkgname-$pkgver.tar.xz) +sha256sums=('038d106313774832c56c61312bb387a54cd2ffff50e6c7e56e47bc98b8b8531b') + +build() { + cd "$srcdir/$pkgname-$pkgver" + + ./configure --prefix=/usr \ + --with-postgres-utils=/usr/bin \ + --disable-scrollkeeper \ + --disable-update-mime-database \ + --disable-static + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + + make DESTDIR="$pkgdir" install +} diff --git a/community-staging/glom/glom.install b/community-staging/glom/glom.install new file mode 100644 index 000000000..1ad77f9aa --- /dev/null +++ b/community-staging/glom/glom.install @@ -0,0 +1,15 @@ +post_install() { + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor + update-desktop-database -q + update-mime-database usr/share/mime > /dev/null +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor + update-desktop-database -q + update-mime-database usr/share/mime > /dev/null +} diff --git a/community-staging/smc/PKGBUILD b/community-staging/smc/PKGBUILD new file mode 100644 index 000000000..93fd45dc0 --- /dev/null +++ b/community-staging/smc/PKGBUILD @@ -0,0 +1,46 @@ +# $Id: PKGBUILD 66950 2012-03-02 18:13:57Z lcarlier $ +# Maintainer: +# Contributor: Juergen Hoetzel <juergen@archlinux.org> +# Contributor: Kritoke <typeolinux@yahoo.com> + +pkgname=smc +pkgver=1.9 +pkgrel=15 +pkgdesc="Secret Maryo Chronicles" +arch=('i686' 'x86_64') +url="http://www.secretmaryo.org/" +license=('GPL3') +depends=('sdl_image' 'sdl_ttf' 'sdl_mixer' 'cegui' 'boost-libs' 'smc-data') +makedepends=('autoconf' 'automake' 'boost') +source=(http://downloads.sourceforge.net/smclone/$pkgname-$pkgver.tar.bz2 + smc-for-cegui-v0-7.diff + smc.desktop + smc.png) +md5sums=('75ab7826303c49aec25b052a8b90287f' + '51dfea21b741ad19df14e738df52f1cf' + '80fe208132ff41dd7677a53ee429ecdb' + 'efca7580e28748625eb676c9d24ee122') + +build() { + cd "$srcdir/$pkgname-$pkgver" + + # to remove when smc will be compatible with cegui-0.7.x + patch -Np1 -i "${srcdir}/smc-for-cegui-v0-7.diff" + # fix for boost-1.46 + export CXXFLAGS="${CXXFLAGS} -DBOOST_FILESYSTEM_VERSION=2" + + ./autogen.sh + LIBS+="-lX11 -lboost_system" ./configure --prefix=/usr + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + + make install DESTDIR="$pkgdir" + # install some freedesktop.org compatibility + install -Dm644 "$srcdir/$pkgname.desktop" "$pkgdir/usr/share/applications/$pkgname.desktop" + install -Dm644 "$srcdir/$pkgname.png" "$pkgdir/usr/share/pixmaps/$pkgname.png" + + rm -rf "$pkgdir/usr/share/smc/" +} diff --git a/community-staging/smc/smc-for-cegui-v0-7.diff b/community-staging/smc/smc-for-cegui-v0-7.diff new file mode 100644 index 000000000..a99cbce6c --- /dev/null +++ b/community-staging/smc/smc-for-cegui-v0-7.diff @@ -0,0 +1,437 @@ +diff -ur smc-1.9/configure.ac smc-1.9-b/configure.ac +--- smc-1.9/configure.ac 2009-08-17 15:59:00.000000000 +0200 ++++ smc-1.9-b/configure.ac 2011-01-19 00:43:37.809884881 +0100 +@@ -53,7 +53,7 @@ + AC_MSG_ERROR([SDL_ttf library not found])) + + # Check for the CEGUI library +-PKG_CHECK_MODULES(CEGUI, CEGUI-OPENGL >= 0.5.0) ++PKG_CHECK_MODULES(CEGUI, CEGUI-OPENGL >= 0.7.0) + CPPFLAGS="$CPPFLAGS $CEGUI_CFLAGS" + LIBS="$LIBS $CEGUI_LIBS" + +diff -ur smc-1.9/src/core/editor.cpp smc-1.9-b/src/core/editor.cpp +--- smc-1.9/src/core/editor.cpp 2009-08-13 17:11:42.000000000 +0200 ++++ smc-1.9-b/src/core/editor.cpp 2011-01-19 00:44:46.734328121 +0100 +@@ -118,16 +118,10 @@ + return tmp;
+ }
+
+-void cEditor_Item_Object :: draw( const CEGUI::Vector3 &position, float alpha, const CEGUI::Rect &clipper ) const
++void cEditor_Item_Object :: draw( CEGUI::GeometryBuffer &buffer, const CEGUI::Rect &targetRect, float alpha, const CEGUI::Rect *clipper ) const
+ {
+ // draw text
+- list_text->draw( position, alpha, clipper );
+-}
+-
+-void cEditor_Item_Object :: draw( CEGUI::RenderCache &cache, const CEGUI::Rect &targetRect, float zBase, float alpha, const CEGUI::Rect *clipper ) const
+-{
+- // draw text
+- list_text->draw( cache, targetRect, zBase, alpha, clipper );
++ list_text->draw( buffer, targetRect, alpha, clipper );
+ }
+
+ void cEditor_Item_Object :: Draw_Image( void )
+@@ -533,12 +527,12 @@ + if( editor_window->getXPosition().asRelative( 1 ) >= 0 )
+ {
+ // Listbox dimension
+- float list_posy = listbox_items->getUnclippedPixelRect().d_top * global_downscaley;
+- float list_height = listbox_items->getUnclippedPixelRect().getHeight() * global_downscaley;
++ float list_posy = listbox_items->getUnclippedOuterRect().d_top * global_downscaley;
++ float list_height = listbox_items->getUnclippedOuterRect().getHeight() * global_downscaley;
+ // Vertical ScrollBar Position
+ float scroll_pos = listbox_items->getVertScrollbar()->getScrollPosition() * global_downscaley;
+ // font height
+- float font_height = CEGUI::FontManager::getSingleton().getFont( "bluebold_medium" )->getFontHeight() * global_downscaley;
++ float font_height = CEGUI::FontManager::getSingleton().get( "bluebold_medium" ).getFontHeight() * global_downscaley;
+
+ // draw items
+ for( unsigned int i = 0; i < listbox_items->getItemCount(); i++ )
+diff -ur smc-1.9/src/core/editor.h smc-1.9-b/src/core/editor.h +--- smc-1.9/src/core/editor.h 2009-02-18 05:21:30.000000000 +0100 ++++ smc-1.9-b/src/core/editor.h 2011-01-19 00:43:37.809884881 +0100 +@@ -62,8 +62,7 @@ + */
+ virtual CEGUI::Size getPixelSize( void ) const;
+ // draw
+- void draw( const CEGUI::Vector3 &position, float alpha, const CEGUI::Rect &clipper ) const;
+- void draw( CEGUI::RenderCache &cache, const CEGUI::Rect &targetRect, float zBase, float alpha, const CEGUI::Rect *clipper) const;
++ void draw(CEGUI::GeometryBuffer& buffer, const CEGUI::Rect& targetRect, float alpha, const CEGUI::Rect* clipper) const;
+ // draw image
+ void Draw_Image( void );
+
+diff -ur smc-1.9/src/core/game_core.cpp smc-1.9-b/src/core/game_core.cpp +--- smc-1.9/src/core/game_core.cpp 2009-08-16 18:44:42.000000000 +0200 ++++ smc-1.9-b/src/core/game_core.cpp 2011-01-19 00:59:02.668958883 +0100 +@@ -265,7 +265,7 @@ +
+
+ // align text
+- CEGUI::Font *font = CEGUI::FontManager::getSingleton().getFont( "bluebold_medium" );
++ CEGUI::Font *font = &CEGUI::FontManager::getSingleton().get( "bluebold_medium" );
+ // fixme : Can't handle multiple lines of text
+ float text_width = font->getTextExtent( text ) * global_downscalex;
+
+@@ -1182,7 +1182,7 @@ + text_default->setText( gui_text );
+
+ // align text
+- CEGUI::Font *font = CEGUI::FontManager::getSingleton().getFont( "bluebold_medium" );
++ CEGUI::Font *font = &CEGUI::FontManager::getSingleton().get( "bluebold_medium" );
+ float text_width = font->getTextExtent( gui_text ) * global_downscalex;
+
+ text_default->setWidth( CEGUI::UDim( 0, ( text_width + 15 ) * global_upscalex ) );
+@@ -1190,7 +1190,7 @@ + text_default->moveToFront();
+
+ // set window height
+- text_default->setHeight( CEGUI::UDim( 0, font->getFontHeight() * font->getFormattedLineCount( gui_text, text_default->getUnclippedInnerRect(), CEGUI::LeftAligned ) + ( 12 * global_upscaley ) ) );
++ text_default->setHeight( CEGUI::UDim( 0, font->getFontHeight() + ( 12 * global_upscaley ) ) );
+
+ while( draw )
+ {
+diff -ur smc-1.9/src/core/main.cpp smc-1.9-b/src/core/main.cpp +--- smc-1.9/src/core/main.cpp 2009-05-12 10:36:04.000000000 +0200 ++++ smc-1.9-b/src/core/main.cpp 2011-01-19 00:43:37.809884881 +0100 +@@ -444,13 +444,15 @@ + + if( pGuiSystem ) + { +- delete pGuiSystem; ++ CEGUI::ResourceProvider* rp = pGuiSystem->getResourceProvider(); ++ pGuiSystem->destroy(); + pGuiSystem = NULL; ++ delete rp; + } + + if( pGuiRenderer ) + { +- delete pGuiRenderer; ++ pGuiRenderer->destroy( *pGuiRenderer ); + pGuiRenderer = NULL; + } + +@@ -507,7 +509,7 @@ + } + case SDL_VIDEORESIZE: + { +- pGuiRenderer->setDisplaySize( CEGUI::Size( static_cast<float>(ev->resize.w), static_cast<float>(ev->resize.h) ) ); ++ pGuiSystem->notifyDisplaySizeChanged( CEGUI::Size( static_cast<float>(ev->resize.w), static_cast<float>(ev->resize.h) ) ); + break; + } + case SDL_KEYDOWN: +diff -ur smc-1.9/src/gui/hud.cpp smc-1.9-b/src/gui/hud.cpp +--- smc-1.9/src/gui/hud.cpp 2009-05-01 15:00:16.000000000 +0200 ++++ smc-1.9-b/src/gui/hud.cpp 2011-01-19 00:43:37.816550365 +0100 +@@ -946,7 +946,7 @@ + m_text_debug_text->setVisible( 1 );
+
+ // update position
+- CEGUI::Font *font = CEGUI::FontManager::getSingleton().getFont( "bluebold_medium" );
++ CEGUI::Font *font = &CEGUI::FontManager::getSingleton().get( "bluebold_medium" );
+ float text_width = font->getTextExtent( gui_text ) * global_downscalex;
+
+ if( text_width > 800.0f )
+diff -ur smc-1.9/src/input/mouse.cpp smc-1.9-b/src/input/mouse.cpp +--- smc-1.9/src/input/mouse.cpp 2009-04-24 21:16:58.000000000 +0200 ++++ smc-1.9-b/src/input/mouse.cpp 2011-01-19 00:43:37.813217623 +0100 +@@ -432,17 +432,12 @@ +
+ void cMouseCursor :: Render( void ) const
+ {
+- if( !m_active )
+- {
++ CEGUI::MouseCursor *mouse = CEGUI::MouseCursor::getSingletonPtr();
++
++ if ( m_active == mouse->isVisible() )
+ return;
+- }
+
+- // Render CEGUI Mouse
+- pGuiRenderer->setQueueingEnabled( 0 );
+- CEGUI::MouseCursor *mouse = CEGUI::MouseCursor::getSingletonPtr();
+- mouse->setVisible( 1 );
+- mouse->draw();
+- mouse->setVisible( 0 );
++ mouse->setVisible( m_active );
+ }
+
+ void cMouseCursor :: Update_Position( void )
+diff -ur smc-1.9/src/level/level_settings.cpp smc-1.9-b/src/level/level_settings.cpp +--- smc-1.9/src/level/level_settings.cpp 2009-08-07 03:04:28.000000000 +0200 ++++ smc-1.9-b/src/level/level_settings.cpp 2011-01-19 01:06:59.064259070 +0100 +@@ -163,8 +163,8 @@ + editbox->setText( int_to_string( bg_color_2.blue ).c_str() );
+ // preview window
+ CEGUI::Window *window_background_preview = CEGUI::WindowManager::getSingleton().getWindow( "window_background_preview" );
+- background_preview->Set_Pos_X( window_background_preview->getUnclippedPixelRect().d_left * global_downscalex, 1 );
+- background_preview->Set_Pos_Y( window_background_preview->getUnclippedPixelRect().d_top * global_downscaley, 1 );
++ background_preview->Set_Pos_X( window_background_preview->getUnclippedOuterRect().d_left * global_downscalex, 1 );
++ background_preview->Set_Pos_Y( window_background_preview->getUnclippedOuterRect().d_top * global_downscaley, 1 );
+
+ Update_BG_Colors( CEGUI::EventArgs() );
+
+@@ -555,8 +555,8 @@ +
+ // set default rect
+ CEGUI::Window *window_background_preview = CEGUI::WindowManager::getSingleton().getWindow( "window_background_preview" );
+- background_preview->m_rect.m_w = window_background_preview->getUnclippedPixelRect().getWidth() * global_downscalex;
+- background_preview->m_rect.m_h = window_background_preview->getUnclippedPixelRect().getHeight() * global_downscaley;
++ background_preview->m_rect.m_w = window_background_preview->getUnclippedOuterRect().getWidth() * global_downscalex;
++ background_preview->m_rect.m_h = window_background_preview->getUnclippedOuterRect().getHeight() * global_downscaley;
+
+ if( !File_Exists( filename ) )
+ {
+diff -ur smc-1.9/src/objects/sprite.cpp smc-1.9-b/src/objects/sprite.cpp +--- smc-1.9/src/objects/sprite.cpp 2009-04-18 09:55:06.000000000 +0200 ++++ smc-1.9-b/src/objects/sprite.cpp 2011-01-19 00:43:37.813217623 +0100 +@@ -1663,7 +1663,7 @@ + window_name->setText( name );
+ window_name->setTooltipText( tooltip );
+ // get text width
+- CEGUI::Font *font = CEGUI::FontManager::getSingleton().getFont( "bluebold_medium" );
++ CEGUI::Font *font = &CEGUI::FontManager::getSingleton().get( "bluebold_medium" );
+ float text_width = 12 + font->getTextExtent( name ) * global_downscalex;
+ // all names should have the same width
+ if( text_width > m_editor_window_name_width )
+diff -ur smc-1.9/src/video/video.cpp smc-1.9-b/src/video/video.cpp +--- smc-1.9/src/video/video.cpp 2009-07-04 11:46:56.000000000 +0200 ++++ smc-1.9-b/src/video/video.cpp 2011-01-19 01:22:45.338524592 +0100 +@@ -103,15 +103,15 @@ +
+ /* *** *** *** *** *** *** *** CEGUI renderer fake class *** *** *** *** *** *** *** *** *** *** */
+
+-cFake_Renderer :: cFake_Renderer( void )
+-{
+- d_identifierString = "Fake Renderer";
+-}
++//cFake_Renderer :: cFake_Renderer( void )
++//{
++// d_identifierString = "Fake Renderer";
++//}
+
+-cFake_Renderer :: ~cFake_Renderer( void )
+-{
++//cFake_Renderer :: ~cFake_Renderer( void )
++//{
+
+-}
++//}
+
+ /* *** *** *** *** *** *** *** Video class *** *** *** *** *** *** *** *** *** *** */
+
+@@ -158,7 +158,7 @@ + std::string log_dump_dir = "/dev/null";
+ #endif
+ // create fake system and renderer
+- pGuiSystem = new CEGUI::System( new cFake_Renderer(), rp, NULL, NULL, "", log_dump_dir );
++ pGuiSystem = &CEGUI::System::create( *new cFake_Renderer(), rp, NULL, NULL, NULL, "", log_dump_dir );
+ }
+
+ void cVideo :: Delete_CEGUI_Fake( void ) const
+@@ -166,7 +166,7 @@ + CEGUI::ResourceProvider *rp = pGuiSystem->getResourceProvider();
+ CEGUI::Renderer *renderer = pGuiSystem->getRenderer();
+
+- delete pGuiSystem;
++ pGuiSystem->destroy();
+ pGuiSystem = NULL;
+ delete renderer;
+ delete rp;
+@@ -177,7 +177,7 @@ + // create renderer
+ try
+ {
+- pGuiRenderer = new CEGUI::OpenGLRenderer( 0, screen->w, screen->h );
++ pGuiRenderer = &CEGUI::OpenGLRenderer::create( CEGUI::Size( screen->w, screen->h ) );
+ }
+ // catch CEGUI Exceptions
+ catch( CEGUI::Exception &ex )
+@@ -186,10 +186,10 @@ + exit( EXIT_FAILURE );
+ }
+
+- /* create Resource Provider
+- * no need to destroy it later since it is handled by the CEGUI renderer
+- */
+- CEGUI::DefaultResourceProvider *rp = static_cast<CEGUI::DefaultResourceProvider *>(pGuiRenderer->createResourceProvider());
++ pGuiRenderer->enableExtraStateSettings(true);
++
++ // create Resource Provider
++ CEGUI::DefaultResourceProvider *rp = new CEGUI::DefaultResourceProvider;
+
+ // set Resource Provider directories
+ rp->setResourceGroupDirectory( "schemes", DATA_DIR "/" GUI_SCHEME_DIR "/" );
+@@ -215,7 +215,7 @@ + // create system
+ try
+ {
+- pGuiSystem = new CEGUI::System( pGuiRenderer, rp, NULL, NULL, "", pResource_Manager->user_data_dir + "cegui.log" );
++ pGuiSystem = &CEGUI::System::create( *pGuiRenderer, rp, NULL, NULL, NULL, "", pResource_Manager->user_data_dir + "cegui.log" );
+ }
+ // catch CEGUI Exceptions
+ catch( CEGUI::Exception &ex )
+@@ -242,7 +242,7 @@ + // load the scheme file, which auto-loads the imageset
+ try
+ {
+- CEGUI::SchemeManager::getSingleton().loadScheme( "TaharezLook.scheme" );
++ CEGUI::SchemeManager::getSingleton().create( "TaharezLook.scheme" );
+ }
+ // catch CEGUI Exceptions
+ catch( CEGUI::Exception &ex )
+@@ -254,9 +254,7 @@ + // default mouse cursor
+ pGuiSystem->setDefaultMouseCursor( "TaharezLook", "MouseArrow" );
+ // force new mouse image
+- CEGUI::MouseCursor::getSingleton().setImage( &CEGUI::ImagesetManager::getSingleton().getImageset( "TaharezLook" )->getImage( "MouseArrow" ) );
+- // hide CEGUI mouse always because we render it manually
+- CEGUI::MouseCursor::getSingleton().hide();
++ CEGUI::MouseCursor::getSingleton().setImage( &CEGUI::ImagesetManager::getSingleton().get( "TaharezLook" ).getImage( "MouseArrow" ) );
+ // default tooltip
+ pGuiSystem->setDefaultTooltip( "TaharezLook/Tooltip" );
+ // create default root window
+@@ -553,7 +551,7 @@ + pFont->Restore_Textures();
+
+ // send new size to CEGUI
+- pGuiRenderer->setDisplaySize( CEGUI::Size( static_cast<float>(screen_w), static_cast<float>(screen_h) ) );
++ pGuiSystem->notifyDisplaySizeChanged( CEGUI::Size( static_cast<float>(screen_w), static_cast<float>(screen_h) ) );
+
+ // check if CEGUI is initialized
+ bool cegui_initialized = pGuiSystem->getGUISheet() != NULL;
+diff -ur smc-1.9/src/video/video.h smc-1.9-b/src/video/video.h +--- smc-1.9/src/video/video.h 2009-07-04 10:49:50.000000000 +0200 ++++ smc-1.9-b/src/video/video.h 2011-01-19 01:16:42.791283379 +0100 +@@ -23,7 +23,7 @@ + #include "SDL_opengl.h"
+ // CEGUI
+ #include "CEGUI.h"
+-#include "RendererModules/OpenGLGUIRenderer/openglrenderer.h"
++#include <RendererModules/OpenGL/CEGUIOpenGLRenderer.h>
+
+ namespace SMC
+ {
+@@ -129,31 +129,100 @@ + EFFECT_IN_AMOUNT
+ };
+
+-/* *** *** *** *** *** *** *** CEGUI renderer fake class *** *** *** *** *** *** *** *** *** *** */
++/* *** *** *** *** *** *** *** CEGUI renderer fake classes *** *** *** *** *** *** *** *** *** *** */
++// CEGUI 0.7.x requires more 'fake' classes than the 0.6.x version did...
++class cFake_GeometryBuffer : public CEGUI::GeometryBuffer
++{
++ void draw() const {}
++ void setTranslation(const CEGUI::Vector3&) {}
++ void setRotation(const CEGUI::Vector3&) {}
++ void setPivot(const CEGUI::Vector3&) {}
++ void setClippingRegion(const CEGUI::Rect&) {}
++ void appendVertex(const CEGUI::Vertex&) {}
++ void appendGeometry(const CEGUI::Vertex* const, CEGUI::uint) {}
++ void setActiveTexture(CEGUI::Texture*) {}
++ void reset() {}
++ CEGUI::Texture* getActiveTexture() const { return 0; }
++ CEGUI::uint getVertexCount() const { return 0; }
++ CEGUI::uint getBatchCount() const { return 0; }
++ void setRenderEffect(CEGUI::RenderEffect*) {}
++ CEGUI::RenderEffect* getRenderEffect() { return 0; }
++};
+
+-class cFake_Renderer : public CEGUI::Renderer
++class cFake_Texture : public CEGUI::Texture
++{
++public:
++ cFake_Texture() :
++ m_size(1, 1),
++ m_scaling(1, 1) {}
++
++ const CEGUI::Size& getSize() const { return m_size; }
++ const CEGUI::Size& getOriginalDataSize() const { return m_size; }
++ const CEGUI::Vector2& getTexelScaling() const { return m_scaling; }
++ void loadFromFile(const CEGUI::String&, const CEGUI::String&) {}
++ void loadFromMemory(const void*, const CEGUI::Size&, CEGUI::Texture::PixelFormat) {}
++ void saveToMemory(void*) {}
++
++private:
++ CEGUI::Size m_size;
++ CEGUI::Vector2 m_scaling;
++};
++
++class cFake_RenderTarget : public CEGUI::RenderTarget
+ {
+ public:
+- cFake_Renderer( void );
+- virtual ~cFake_Renderer( void );
++ cFake_RenderTarget() : m_area(0, 0, 0, 0) {}
++ void draw(const CEGUI::GeometryBuffer&) {}
++ void draw(const CEGUI::RenderQueue&) {}
++ void setArea(const CEGUI::Rect&) {}
++ const CEGUI::Rect& getArea() const { return m_area; }
++ bool isImageryCache() const { return false; }
++ void activate() {}
++ void deactivate() {}
++ void unprojectPoint(const CEGUI::GeometryBuffer&, const CEGUI::Vector2&, CEGUI::Vector2&) const {}
++
++private:
++ CEGUI::Rect m_area;
++};
+
+- virtual void addQuad(const CEGUI::Rect& dest_rect, float z, const CEGUI::Texture* tex, const CEGUI::Rect& texture_rect, const CEGUI::ColourRect& colours, CEGUI::QuadSplitMode quad_split_mode) {};
+- virtual void doRender(void) {};
+- virtual void clearRenderList(void) {};
+- virtual void setQueueingEnabled(bool setting) {};
+- virtual CEGUI::Texture *createTexture(void) { return NULL; };
+- virtual CEGUI::Texture *createTexture(const CEGUI::String& filename, const CEGUI::String& resourceGroup) { return NULL; };
+- virtual CEGUI::Texture *createTexture(float size) { return NULL; };
+- virtual void destroyTexture(CEGUI::Texture* texture) {};
+- virtual void destroyAllTextures(void) {};
+- virtual bool isQueueingEnabled(void) const { return 0; };
+- virtual float getWidth(void) const { return 0; };
+- virtual float getHeight(void) const { return 0; };
+- virtual CEGUI::Size getSize(void) const { return CEGUI::Size();};
+- virtual CEGUI::Rect getRect(void) const { return CEGUI::Rect();};
+- virtual unsigned int getMaxTextureSize(void) const { return 0; };
+- virtual unsigned int getHorzScreenDPI(void) const { return 0; };
+- virtual unsigned int getVertScreenDPI(void) const { return 0; };
++class cFake_Renderer : public CEGUI::Renderer
++{
++public:
++ cFake_Renderer( void ) :
++ m_size(0, 0),
++ m_dpi(0, 0),
++ m_identifierString("Fake Renderer"),
++ m_root(m_target) {}
++ ~cFake_Renderer( void ) {}
++
++ CEGUI::RenderingRoot& getDefaultRenderingRoot() { return m_root; }
++ CEGUI::GeometryBuffer& createGeometryBuffer() { return m_geometry; }
++ void destroyGeometryBuffer(const CEGUI::GeometryBuffer&) {}
++ void destroyAllGeometryBuffers() {}
++ CEGUI::TextureTarget* createTextureTarget() { return 0; }
++ void destroyTextureTarget(CEGUI::TextureTarget*) {}
++ void destroyAllTextureTargets() {}
++ CEGUI::Texture& createTexture() { return m_texture; }
++ CEGUI::Texture& createTexture(const CEGUI::String&, const CEGUI::String&) { return m_texture; }
++ CEGUI::Texture& createTexture(const CEGUI::Size&) { return m_texture; }
++ void destroyTexture(CEGUI::Texture&) {}
++ void destroyAllTextures() {}
++ void beginRendering() {}
++ void endRendering() {}
++ void setDisplaySize(const CEGUI::Size&) {}
++ const CEGUI::Size& getDisplaySize() const { return m_size; }
++ const CEGUI::Vector2& getDisplayDPI() const {return m_dpi; }
++ CEGUI::uint getMaxTextureSize() const { return 0; }
++ const CEGUI::String& getIdentifierString() const { return m_identifierString; }
++
++private:
++ CEGUI::Size m_size;
++ CEGUI::Vector2 m_dpi;
++ CEGUI::String m_identifierString;
++ cFake_GeometryBuffer m_geometry;
++ cFake_Texture m_texture;
++ cFake_RenderTarget m_target;
++ CEGUI::RenderingRoot m_root;
+ };
+
+ /* *** *** *** *** *** *** *** Video class *** *** *** *** *** *** *** *** *** *** */
diff --git a/community-staging/smc/smc.desktop b/community-staging/smc/smc.desktop new file mode 100644 index 000000000..6cfe5b018 --- /dev/null +++ b/community-staging/smc/smc.desktop @@ -0,0 +1,9 @@ +[Desktop Entry]
+Name=Secret Maryo Chronicles
+GenericName=Arcade Game
+Exec=smc
+Icon=smc.png
+Terminal=false
+Type=Application
+Categories=Game;ArcadeGame;KidsGame;
+StartupNotify=false
\ No newline at end of file diff --git a/community-staging/smc/smc.png b/community-staging/smc/smc.png Binary files differnew file mode 100644 index 000000000..f02af1bfc --- /dev/null +++ b/community-staging/smc/smc.png diff --git a/community/kadu/PKGBUILD b/community/kadu/PKGBUILD index 4887297a5..7a34c23b4 100644 --- a/community/kadu/PKGBUILD +++ b/community/kadu/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 63896 2012-02-06 16:45:24Z tdziedzic $ -# Maintainer: Bartłomiej Piotrowski <barthalion@gmail.com> +# $Id: PKGBUILD 66946 2012-03-02 16:54:51Z bpiotrowski $ +# Maintainer: Bartłomiej Piotrowski # Contributor: Mateusz Herych # Contributor: Jaroslaw Swierczynski <swiergot@aur.archlinux.org> pkgname=kadu -pkgver=0.11.0 +pkgver=0.11.1 pkgrel=1 pkgdesc="A Qt-based Jabber/XMPP and Gadu-Gadu client" arch=('i686' 'x86_64') @@ -13,7 +13,7 @@ license=('GPL') depends=('libgadu' 'libxss' 'aspell' 'phonon' 'qca-ossl' 'libidn' 'libmpdclient' 'qtwebkit') makedepends=('cmake' 'libao' 'libsndfile' 'libxtst' 'curl') source=(http://download.kadu.im/stable/$pkgname-$pkgver.tar.bz2) -md5sums=('480377508522fe088dd78452d06c5972') +md5sums=('30c239876fd0fd4eadb874c3cb2ebe10') build() { cd "$srcdir" diff --git a/community/nodejs/PKGBUILD b/community/nodejs/PKGBUILD index 201ae5471..33b7646d4 100644 --- a/community/nodejs/PKGBUILD +++ b/community/nodejs/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 64710 2012-02-18 00:19:36Z tdziedzic $ +# $Id: PKGBUILD 66966 2012-03-02 23:22:53Z tdziedzic $ # Maintainer: Thomas Dziedzic < gostrc at gmail > # Contributor: James Campos <james.r.campos@gmail.com> # Contributor: BlackEagle < ike DOT devolder AT gmail DOT com > @@ -7,7 +7,7 @@ # Contributor: TIanyi Cui <tianyicui@gmail.com> pkgname=nodejs -pkgver=0.6.11 +pkgver=0.6.12 pkgrel=1 pkgdesc='Evented I/O for V8 javascript' arch=('i686' 'x86_64') @@ -18,7 +18,7 @@ checkdepends=('curl') # curl used for check() optdepends=('openssl: TLS support') options=('!emptydirs') source=("http://nodejs.org/dist/v${pkgver}/node-v${pkgver}.tar.gz") -md5sums=('2f554353e831b8a22e6a85c676374374') +md5sums=('a12766ae4003c9712927d1fa134ed9f6') build() { cd node-v${pkgver} diff --git a/community/radvd/PKGBUILD b/community/radvd/PKGBUILD index f358aa796..6e6d9fd1f 100644 --- a/community/radvd/PKGBUILD +++ b/community/radvd/PKGBUILD @@ -1,38 +1,48 @@ -# $Id: PKGBUILD 66535 2012-02-25 23:57:00Z lfleischer $ -# Maintainer: Kaiting Chen <kaitocracy@gmail.com> +# $Id: PKGBUILD 66970 2012-03-03 00:47:31Z seblu $ +# Maintainer: Sébastien Luttringer <seblu@aur.archlinux.org> +# Contributor: Kaiting Chen <kaitocracy@gmail.com> # Contributor: Mark Smith <markzzzsmith@yahoo.com.au> pkgname=radvd -pkgver=1.8.2 -pkgrel=2 -pkgdesc='IPv6 Router Advertisement / Router Solicitation daemon' +pkgver=1.8.5 +pkgrel=1 +pkgdesc='IPv6 Router Advertisement Daemon' url='http://www.litech.org/radvd/' license=('custom') depends=('glibc') arch=('i686' 'x86_64') -install=radvd.install -source=("http://www.litech.org/radvd/dist/$pkgname-$pkgver.tar.gz" 'radvd.rc.d') -md5sums=('ac8a862d2b232d25ea2622274a2da8a4' - '65a585f5850a1ac2a0c2c2a7096ec92a') +backup=('etc/radvd.conf' 'etc/conf.d/radvd') +source=("http://www.litech.org/radvd/dist/$pkgname-$pkgver.tar.gz" + "$pkgname.rc" + "$pkgname.conf" + "$pkgname.service") +sha1sums=('344c145bd29938b7eefb0210cf92bf18df3e191d' + '7b187db1f0ba2897cc07ea14233c079593b69ef0' + 'd7755ac7e752452e5ac92d2bfd970db00525902d' + 'd95dc4d650a086641d62bf42806669e0a407d1df') build() { cd ${pkgname}-${pkgver} - - ./configure --prefix=/usr \ - --sysconfdir=/etc \ + ./configure --prefix=/usr --sysconfdir=/etc --with-pidfile=/run/radvd.pid \ --mandir=/usr/share/man - make } package() { cd ${pkgname}-${pkgver} + make DESTDIR="$pkgdir" install - make DESTDIR=$pkgdir install + # install default config + install -D -m 644 radvd.conf.example "$pkgdir/etc/radvd.conf" - install -Dm644 radvd.conf.example \ - $pkgdir/usr/share/doc/radvd/radvd.conf.example - install -Dm644 COPYRIGHT \ - $pkgdir/usr/share/licenses/$pkgname/COPYRIGHT - install -Dm755 $srcdir/radvd.rc.d $pkgdir/etc/rc.d/radvd + # install license + install -D -m 644 COPYRIGHT "$pkgdir/usr/share/licenses/$pkgname/COPYRIGHT" + + # install initscripts & systemd files + install -D -m 755 ../$pkgname.rc "$pkgdir/etc/rc.d/$pkgname" + install -D -m 644 ../$pkgname.conf "$pkgdir/etc/conf.d/$pkgname" + install -D -m 644 ../$pkgname.service \ + "$pkgdir/lib/systemd/system/$pkgname.service" } + +# vim:set ts=2 sw=2 ft=sh et: diff --git a/community/radvd/radvd.conf b/community/radvd/radvd.conf new file mode 100644 index 000000000..26cd410d1 --- /dev/null +++ b/community/radvd/radvd.conf @@ -0,0 +1,3 @@ +# vim:set ts=2 sw=2 ft=sh noet: + +DAEMON_OPTS='--logmethod syslog' diff --git a/community/radvd/radvd.rc b/community/radvd/radvd.rc new file mode 100644 index 000000000..b5dc6e27b --- /dev/null +++ b/community/radvd/radvd.rc @@ -0,0 +1,34 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/${0##*/} + +NAME='IPv6 Router Advertisement Daemon' +DAEMON=/usr/sbin/radvd +PID=$(pidof -o %PPID $DAEMON) + +case "$1" in + start) + stat_busy "Starting $NAME daemon" + [[ ! $PID ]] && $DAEMON $DAEMON_OPTS && add_daemon $NAME && stat_done && exit 0 + stat_fail + ;; + stop) + stat_busy "Stopping $NAME daemon" + [[ $PID ]] && kill $PID &> /dev/null && rm_daemon $NAME && stat_done && exit 0 + stat_fail + ;; + restart) + $0 stop + $0 start + exit 0 + ;; + *) + echo "usage: ${0##*/} {start|stop|restart}" >&2 + ;; +esac + +exit 1 + +# vim:set ts=2 sw=2 ft=sh noet: diff --git a/community/radvd/radvd.service b/community/radvd/radvd.service new file mode 100644 index 000000000..47a5f7f67 --- /dev/null +++ b/community/radvd/radvd.service @@ -0,0 +1,8 @@ +[Unit] +Description=IPv6 Router Advertisement Daemon + +[Service] +ExecStart=/usr/sbin/radvd --nodaemon --logmethod stderr + +[Install] +WantedBy=multi-user.target diff --git a/community/rekonq/PKGBUILD b/community/rekonq/PKGBUILD index 98f7886ad..84ebbed4c 100644 --- a/community/rekonq/PKGBUILD +++ b/community/rekonq/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 60395 2011-12-13 10:24:06Z plewis $ +# $Id: PKGBUILD 66942 2012-03-02 15:35:36Z andrea $ # Maintainer: Peter Lewis <plewis@aur.archlinux.org> # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Panagiotis Papadopoulos <pano_90 AT gmx DOT net> pkgname=rekonq -pkgver=0.8.1 +pkgver=0.9.0 pkgrel=1 pkgdesc='A WebKit based web browser for KDE' arch=('i686' 'x86_64') @@ -13,10 +13,15 @@ license=('GPL') depends=('kdebase-keditbookmarks') makedepends=('cmake' 'automoc4') install=${pkgname}.install -source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2") -sha256sums=('907c3bd299ee95806d337b749c74531441e0d205055998678337266ccc6c9b7f') +source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2" + 'fix-build.patch') +sha256sums=('2dc4f9b041bba89937c3278f53cbcc61964d3e2e2279dd44000c19902459b6cc' + '3ef9f0e6dc37f479c7cc38d84f6a6366a499f371610df01bcdaff9f4b71d246e') build(){ + cd "${srcdir}"/${pkgname}-${pkgver} + patch -p1 -i "${srcdir}"/fix-build.patch + cd ${srcdir} mkdir build cd build diff --git a/community/rekonq/fix-build.patch b/community/rekonq/fix-build.patch new file mode 100644 index 000000000..1a401ce2c --- /dev/null +++ b/community/rekonq/fix-build.patch @@ -0,0 +1,11 @@ +--- rekonq-0.9.0/doc/nl/index.docbook~ 2012-03-02 15:31:21.730372412 +0000 ++++ rekonq-0.9.0/doc/nl/index.docbook 2012-03-02 15:31:48.780152894 +0000 +@@ -82,7 +82,7 @@ + ></surname + > </personname> + </author> +-&ged.vertaald;&Freek.de.Kruijf; ++&Freek.de.Kruijf; + </authorgroup> + <legalnotice + >&FDLNotice;</legalnotice> diff --git a/community/roxterm/PKGBUILD b/community/roxterm/PKGBUILD index 1630b5894..bd1b03d0e 100644 --- a/community/roxterm/PKGBUILD +++ b/community/roxterm/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 62568 2012-01-21 14:00:13Z ttopper $ +# $Id: PKGBUILD 66956 2012-03-02 19:09:35Z ttopper $ # Maintainer: Thorsten Töpper <atsutane-tu@freethoughts.de> # Contributor: Alexander Fehr <pizzapunk gmail com> pkgname=roxterm -pkgver=2.4.2 -pkgrel=2 +pkgver=2.5.2 +pkgrel=1 pkgdesc="Tabbed, VTE-based terminal emulator" arch=('i686' 'x86_64') url="http://roxterm.sourceforge.net/" @@ -13,8 +13,8 @@ depends=('dbus-glib' 'vte3' 'hicolor-icon-theme' 'libsm') makedepends=('docbook-xsl' 'xmlto' 'po4a' 'python2' 'python2-lockfile' 'imagemagick' 'librsvg') install=roxterm.install source=("http://downloads.sourceforge.net/roxterm/roxterm-$pkgver.tar.bz2") -sha1sums=('663f5ffedebde550317cff4b3e61d2772881cd2f') -md5sums=('7c3bb1471f814a8bfdfcf169ad18e425') +sha1sums=('32d18b8a12f1711dc7bb5ae52300dc9eb6869e09') +md5sums=('d879ba09c4d72546fca2e2e5f18eac07') build() { diff --git a/core/syslinux/PKGBUILD b/core/syslinux/PKGBUILD index 53eb06d0b..adf769587 100644 --- a/core/syslinux/PKGBUILD +++ b/core/syslinux/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 144967 2011-12-12 09:45:24Z thomas $ +# $Id: PKGBUILD 151789 2012-03-02 23:26:36Z pierre $ # Maintainer: Thomas Bächler <thomas@archlinux.org> # Maintainer: Tobias Powalowski <tpowa@archlinux.org> pkgname=syslinux pkgver=4.05 -pkgrel=1 +pkgrel=3 arch=('i686' 'x86_64') pkgdesc="Collection of boot loaders that boot from FAT, ext2/3/4 and btrfs filesystems, from CDs and via PXE" url="http://syslinux.zytor.com/" @@ -12,7 +12,7 @@ license=('GPL2') depends=('perl' 'glibc') optdepends=('perl-passwd-md5: For md5pass' 'perl-digest-sha1: For sha1pass' - 'mtools: For mkdiskimage and syslinux' + 'mtools: For mkdiskimage and fat support' ) makedepends=('nasm') backup=('boot/syslinux/syslinux.cfg') @@ -23,8 +23,8 @@ source=(http://www.kernel.org/pub/linux/utils/boot/syslinux/$pkgname-${pkgver}.t syslinux-install_update) md5sums=('82299242418385da1274c9479a778cb2' '1528c376e43f0eaccaa80d8ad1bc13b4' - '4dc27d8ab3802f8e50f3dda28168ce6d' - 'b5b4953c0a5a01cd16441402f6321765') + '832595501944fbcabcdc1207f4724fe7' + '680750f73dc2e587ac567d057d485813') build() { # Do not try to build syslinux with our default LDFLAGS, it will fail @@ -46,4 +46,6 @@ package() { # Install the installation and update script # This script is maintained at git://gist.github.com/772138.git install -D -m755 "$srcdir"/syslinux-install_update "$pkgdir"/usr/sbin/syslinux-install_update + # move extlinux binary to /usr/sbin + mv "$pkgdir"/sbin/extlinux "$pkgdir"/usr/sbin/extlinux } diff --git a/core/syslinux/syslinux-install_update b/core/syslinux/syslinux-install_update index f7cd123e1..cd1baa572 100644 --- a/core/syslinux/syslinux-install_update +++ b/core/syslinux/syslinux-install_update @@ -28,7 +28,7 @@ shopt -s nullglob libpath="/usr/lib/syslinux" bootpath="/boot/syslinux" -extlinux="/sbin/extlinux" +extlinux="/usr/sbin/extlinux" autoupdate_file=/boot/syslinux/SYSLINUX_AUTOUPDATE com32_files=(menu.c32 vesamenu.c32 chain.c32 hdt.c32 reboot.c32 poweroff.com) @@ -357,12 +357,6 @@ update() { fi } -# Make sure only root can run our script -if (( $(id -u) != 0 )); then - echo "This script must be run as root" 1>&2 - exit 1 -fi - if (( $# == 0 )); then usage exit 1 @@ -378,8 +372,7 @@ while getopts "c:uihmas" opt; do fi ;; h) - usage - exit 0 + USAGE="True" ;; i) INSTALL="True" @@ -408,6 +401,17 @@ while getopts "c:uihmas" opt; do esac done +if [[ $USAGE ]]; then + usage + exit 0 +fi + +# Make sure only root can run our script +if (( $(id -u) != 0 )); then + echo "This script must be run as root" 1>&2 + exit 1 +fi + # Display Usage Information if both Install and Update are passed if [[ $INSTALL && $UPDATE ]]; then usage diff --git a/core/syslinux/syslinux.cfg b/core/syslinux/syslinux.cfg index 02127d21d..5a588f58c 100644 --- a/core/syslinux/syslinux.cfg +++ b/core/syslinux/syslinux.cfg @@ -20,7 +20,7 @@ # The wiki provides further configuration examples DEFAULT arch -PROMPT 0 # Change to 1 if you do not want to use a menu +PROMPT 0 # Set to 1 if you always want to display the boot: prompt TIMEOUT 50 # You can create syslinux keymaps with the keytab-lilo tool #KBDMAP de.ktl diff --git a/extra/alsa-utils/PKGBUILD b/extra/alsa-utils/PKGBUILD index b45dcba2c..b6e815c5e 100644 --- a/extra/alsa-utils/PKGBUILD +++ b/extra/alsa-utils/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 147702 2012-01-27 07:30:51Z tpowa $ +# $Id: PKGBUILD 151749 2012-03-02 07:36:36Z tpowa $ # Maintainer: Tobias Powalowski <tpowa@archlinux.org> # Contributor: judd <jvinet@zeroflux.org> pkgname=alsa-utils pkgver=1.0.25 -pkgrel=1 +pkgrel=2 pkgdesc="An alternative implementation of Linux sound support" arch=('i686' 'x86_64') url="http://www.alsa-project.org" @@ -14,15 +14,13 @@ makedepends=('xmlto' 'docbook-xsl') license=('GPL') source=(ftp://ftp.alsa-project.org/pub/utils/$pkgname-${pkgver}.tar.bz2 alsa - alsaconf.patch alsa.conf.d 90alsa) backup=(etc/conf.d/alsa) build() { cd ${srcdir}/${pkgname}-${pkgver} - patch -Np1 -i ../alsaconf.patch - ./configure --prefix=/usr --with-systemdsystemunitdir=/lib/systemd/system + ./configure --prefix=/usr --disable-alsaconf --with-systemdsystemunitdir=/lib/systemd/system make } @@ -37,6 +35,5 @@ package() { } md5sums=('f81f9dcb9a014fd32cb3a70066a5b9a9' '2ba1a1cbf653bf1a69f8a720fd6549da' - '7521bf20f5b3501a510ec4462ae4a934' '4c8ae9f976c7df5e271a4cb91ccc7767' '529216f6a46e61a546640e08ea7a0879') diff --git a/extra/cifs-utils/PKGBUILD b/extra/cifs-utils/PKGBUILD index 279bf9f78..b5043885f 100644 --- a/extra/cifs-utils/PKGBUILD +++ b/extra/cifs-utils/PKGBUILD @@ -1,15 +1,14 @@ -# $Id: PKGBUILD 148030 2012-01-30 07:42:40Z tpowa $ +# $Id: PKGBUILD 151756 2012-03-02 08:44:51Z tpowa $ # Maintainer: Tobias Powalowski <tpowa@archlinux.org> pkgname=cifs-utils pkgver=5.3 -pkgrel=1 +pkgrel=2 pkgdesc="CIFS filesystem user-space tools" arch=(i686 x86_64) url="http://wiki.samba.org/index.php/LinuxCIFS_utils" license=('GPL') -depends=('libcap-ng' 'keyutils' 'krb5' 'talloc') +depends=('libcap-ng' 'keyutils' 'krb5' 'talloc' 'libwbclient') source=(ftp://ftp.samba.org/pub/linux-cifs/cifs-utils/$pkgname-$pkgver.tar.bz2) -# deinstall smbclient first! build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/extra/cvsps/PKGBUILD b/extra/cvsps/PKGBUILD index 72a624c20..650259bc1 100644 --- a/extra/cvsps/PKGBUILD +++ b/extra/cvsps/PKGBUILD @@ -1,24 +1,45 @@ -# $Id: PKGBUILD 149335 2012-02-06 20:45:16Z stephane $ +# $Id: PKGBUILD 151779 2012-03-02 17:28:27Z dan $ # Maintainer: # Contributor: Jeff 'codemac' Mickey <jeff@archlinux.org> pkgname=cvsps -pkgver=2.1 -pkgrel=4 +pkgver=2.2b1 +pkgrel=1 pkgdesc="Generating 'patchset' information from a CVS repository" url="http://www.cobite.com/cvsps/" license=('GPL') arch=('i686' 'x86_64') depends=('zlib') -source=("http://www.cobite.com/${pkgname}/${pkgname}-${pkgver}.tar.gz") -md5sums=('bde2110ed9f5d14de8f8cb04e9d596fe') +source=("http://www.cobite.com/${pkgname}/${pkgname}-${pkgver}.tar.gz" + call-cvs-q-option.patch + cvsps-2.2b1-bufferoverflow.patch + cvsps-2.2b1-dynamic-logbuf.patch + cvsps-2.2b1-man.patch + seperate-CPPFLAGS.patch + use-INADDR_NONE-define.patch + use-__linux__-define.patch + use-offsetof-macro.patch) +md5sums=('997580e8e283034995b9209076858c68' + '06324c5e3c321126b76dc97fc6c00b34' + '2910012a11a24d5e4192cf9eae7dd259' + '970566460e72cb159426965d6e5763b3' + 'f9d2ee40e52ecd5096fa9a885418eee1' + '6baafbd7512aa52e1b83ed0bead32a6e' + 'a3a81481c07dcc676f5a82ae07e8ee89' + '9e2763315cbda02665c47827d38df459' + '8f7e6f09f42f76deeefe24bbfa509150') build() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "$srcdir/$pkgname-$pkgver" + for file in ${source[@]}; do + if [[ $file == *.patch ]]; then + patch -Np1 < ../$file + fi + done make prefix=/usr } package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make prefix="${pkgdir}/usr" install + cd "$srcdir/$pkgname-$pkgver" + make prefix="$pkgdir/usr" install } diff --git a/extra/cvsps/call-cvs-q-option.patch b/extra/cvsps/call-cvs-q-option.patch new file mode 100644 index 000000000..a754b7c60 --- /dev/null +++ b/extra/cvsps/call-cvs-q-option.patch @@ -0,0 +1,34 @@ +From 49d7a3e44b54f18b0e2762d8dbb087ad4c2f0276 Mon Sep 17 00:00:00 2001 +From: Yann Dirson <ydirson@altern.org> +Date: Thu, 15 Jun 2006 09:48:08 +0200 +Subject: [PATCH] Call cvs with -q flag when fetching the log + +This gets rid of the neverending output polution cvs sends to stderr, +which is mostly useless and has a strong potential to hide real problem +reports +--- + cvsps.c | 4 ++-- + 1 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/cvsps.c b/cvsps.c +index d94dfe0..be700ba 100644 +--- a/cvsps.c ++++ b/cvsps.c +@@ -301,12 +301,12 @@ static void load_from_cvs() + * which is necessary to fill in the pre_rev stuff for a + * PatchSetMember + */ +- snprintf(cmd, BUFSIZ, "cvs %s %s %s -d '%s<;%s' %s", compress_arg, norc, ltype, date_str, date_str, use_rep_buff); ++ snprintf(cmd, BUFSIZ, "cvs %s %s -q %s -d '%s<;%s' %s", compress_arg, norc, ltype, date_str, date_str, use_rep_buff); + } + else + { + date_str[0] = 0; +- snprintf(cmd, BUFSIZ, "cvs %s %s %s %s", compress_arg, norc, ltype, use_rep_buff); ++ snprintf(cmd, BUFSIZ, "cvs %s %s -q %s %s", compress_arg, norc, ltype, use_rep_buff); + } + + debug(DEBUG_STATUS, "******* USING CMD %s", cmd); +-- +1.6.5.GIT + diff --git a/extra/cvsps/cvsps-2.2b1-bufferoverflow.patch b/extra/cvsps/cvsps-2.2b1-bufferoverflow.patch new file mode 100644 index 000000000..2a82cd4e0 --- /dev/null +++ b/extra/cvsps/cvsps-2.2b1-bufferoverflow.patch @@ -0,0 +1,65 @@ +--- cvsps-2.2b1/cvsps.c 2010-09-07 18:13:42.760727491 +0200 ++++ cvsps-2.2b1_/cvsps.c 2010-09-07 18:05:11.083729441 +0200 +@@ -1065,17 +1065,16 @@ static CvsFile * parse_file(const char * + { + CvsFile * retval; + char fn[PATH_MAX]; +- int len = strlen(buff + 10); ++ size_t len = strlen(buff + 10); + char * p; + + /* once a single file has been parsed ok we set this */ + static int path_ok; +- ++ + /* chop the ",v" string and the "LF" */ + len -= 3; + memcpy(fn, buff + 10, len); + fn[len] = 0; +- + if (strncmp(fn, strip_path, strip_path_len) != 0) + { + /* if the very first file fails the strip path, +@@ -1096,10 +1095,10 @@ static CvsFile * parse_file(const char * + + while ((p = strstr(p, repository_path))) + lastp = p++; +- ++ + if (lastp) + { +- int len = strlen(repository_path); ++ size_t len = strlen(repository_path); + memcpy(strip_path, fn, lastp - fn + len + 1); + strip_path_len = lastp - fn + len + 1; + strip_path[strip_path_len] = 0; +@@ -1114,16 +1113,26 @@ static CvsFile * parse_file(const char * + * + * For now just ignore such files + */ +- debug(DEBUG_APPMSG1, "WARNING: file %s doesn't match strip_path %s. ignoring", ++ debug(DEBUG_APPMSG1, "WARNING: file %s doesn't match strip_path %s. ignoring", + fn, strip_path); + return NULL; + } + + ok: +- path_ok = 1; +- ++ /* ++ fix for rhbz#576076 ++ ./cvsps --norc -q --cvs-direct -u -A --root :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot NSS ++ */ ++ if(len <= strip_path_len) ++ { ++ debug(DEBUG_APPMSG1, "WARNING: file %s doesn't match strip_path %s. ignoring", ++ fn, strip_path); ++ return NULL; ++ } + /* remove from beginning the 'strip_path' string */ + len -= strip_path_len; ++ path_ok = 1; ++ + memmove(fn, fn + strip_path_len, len); + fn[len] = 0; + diff --git a/extra/cvsps/cvsps-2.2b1-dynamic-logbuf.patch b/extra/cvsps/cvsps-2.2b1-dynamic-logbuf.patch new file mode 100644 index 000000000..03e4e7672 --- /dev/null +++ b/extra/cvsps/cvsps-2.2b1-dynamic-logbuf.patch @@ -0,0 +1,133 @@ +# From: http://ydirson.free.fr/soft/git/cvsps.git + +commit 76a9c2aaa0d2957de0bc8f0c0b994abfd1645a50 +Author: David D. Kilzer <ddkilzer@kilzer.net> +Date: Mon Jun 20 01:04:34 2005 +0200 + + Dynamically allocate the log buffer to prevent warning messages + + On anoncvs.opensource.apple.com (Apple's anonymous CVS server for + WebKit), some very long log entries were included in CVS. I got tired + of cvsps-2.1 truncating them, so I made the 'logbuff' buffer be + dynamically allocated. + +diff --git i/cache.c w/cache.c +index 4c51cf7..01a8ed3 100644 +--- i/cache.c ++++ w/cache.c +@@ -108,10 +108,19 @@ time_t read_cache() + int tag_flags = 0; + char branchbuff[LOG_STR_MAX] = ""; + int branch_add = 0; +- char logbuff[LOG_STR_MAX] = ""; ++ int logbufflen = LOG_STR_MAX + 1; ++ char * logbuff = malloc(logbufflen); + time_t cache_date = -1; + int read_version; + ++ if (logbuff == NULL) ++ { ++ debug(DEBUG_SYSERROR, "could not malloc %d bytes for logbuff in read_cache", logbufflen); ++ exit(1); ++ } ++ ++ logbuff[0] = 0; ++ + if (!(fp = cache_open("r"))) + goto out; + +@@ -299,8 +308,19 @@ time_t read_cache() + else + { + /* Make sure we have enough in the buffer */ +- if (strlen(logbuff)+strlen(buff)<LOG_STR_MAX) +- strcat(logbuff, buff); ++ int len = strlen(buff); ++ if (strlen(logbuff) + len >= LOG_STR_MAX) ++ { ++ logbufflen += (len >= LOG_STR_MAX ? (len+1) : LOG_STR_MAX); ++ char * newlogbuff = realloc(logbuff, logbufflen); ++ if (newlogbuff == NULL) ++ { ++ debug(DEBUG_SYSERROR, "could not realloc %d bytes for logbuff in read_cache", logbufflen); ++ exit(1); ++ } ++ logbuff = newlogbuff; ++ } ++ strcat(logbuff, buff); + } + break; + case CACHE_NEED_PS_MEMBERS: +@@ -332,6 +352,7 @@ time_t read_cache() + out_close: + fclose(fp); + out: ++ free(logbuff); + return cache_date; + } + +diff --git i/cvsps.c w/cvsps.c +index f0e7d29..db28d7c 100644 +--- i/cvsps.c ++++ w/cvsps.c +@@ -269,7 +269,8 @@ static void load_from_cvs() + PatchSetMember * psm = NULL; + char datebuff[26]; + char authbuff[AUTH_STR_MAX]; +- char logbuff[LOG_STR_MAX + 1]; ++ int logbufflen = LOG_STR_MAX + 1; ++ char * logbuff = malloc(logbufflen); + int loglen = 0; + int have_log = 0; + char cmd[BUFSIZ]; +@@ -277,6 +278,12 @@ static void load_from_cvs() + char use_rep_buff[PATH_MAX]; + char * ltype; + ++ if (logbuff == NULL) ++ { ++ debug(DEBUG_SYSERROR, "could not malloc %d bytes for logbuff in load_from_cvs", logbufflen); ++ exit(1); ++ } ++ + if (!no_rlog && !test_log_file && cvs_check_cap(CAP_HAVE_RLOG)) + { + ltype = "rlog"; +@@ -484,25 +491,22 @@ static void load_from_cvs() + */ + if (have_log || !is_revision_metadata(buff)) + { +- /* if the log buffer is full, that's it. +- * +- * Also, read lines (fgets) always have \n in them +- * (unless truncation happens) +- * which we count on. So if truncation happens, +- * be careful to put a \n on. +- * +- * Buffer has LOG_STR_MAX + 1 for room for \0 if +- * necessary +- */ +- if (loglen < LOG_STR_MAX) ++ /* If the log buffer is full, try to reallocate more. */ ++ if (loglen < logbufflen) + { + int len = strlen(buff); + +- if (len >= LOG_STR_MAX - loglen) ++ if (len >= logbufflen - loglen) + { +- debug(DEBUG_APPMSG1, "WARNING: maximum log length exceeded, truncating log"); +- len = LOG_STR_MAX - loglen; +- buff[len - 1] = '\n'; ++ debug(DEBUG_STATUS, "reallocating logbufflen to %d bytes for file %s", logbufflen, file->filename); ++ logbufflen += (len >= LOG_STR_MAX ? (len+1) : LOG_STR_MAX); ++ char * newlogbuff = realloc(logbuff, logbufflen); ++ if (newlogbuff == NULL) ++ { ++ debug(DEBUG_SYSERROR, "could not realloc %d bytes for logbuff in load_from_cvs", logbufflen); ++ exit(1); ++ } ++ logbuff = newlogbuff; + } + + debug(DEBUG_STATUS, "appending %s to log", buff); diff --git a/extra/cvsps/cvsps-2.2b1-man.patch b/extra/cvsps/cvsps-2.2b1-man.patch new file mode 100644 index 000000000..3e6816fd5 --- /dev/null +++ b/extra/cvsps/cvsps-2.2b1-man.patch @@ -0,0 +1,29 @@ +diff -up cvsps-2.2b1/cvsps.1~ cvsps-2.2b1/cvsps.1 +--- cvsps-2.2b1/cvsps.1~ 2008-04-02 04:18:44.000000000 +0300 ++++ cvsps-2.2b1/cvsps.1 2010-05-18 21:10:39.000000000 +0300 +@@ -11,7 +11,7 @@ to a collection of files, and all commit + single 'cvs commit' command). This information is valuable to seeing the + big picture of the evolution of a cvs project. While cvs tracks revision + information, it is often difficult to see what changes were committed +-'atomically' to the repository. ++\'atomically' to the repository. + .SH OPTIONS + .TP + .B \-h +@@ -83,7 +83,7 @@ some hacks which are not generally appli + disable the use of rlog internally. Note: rlog is + required for stable PatchSet numbering. Use with care. + .TP +-.B \-\-diffs\-opts <option string> ++.B \-\-diff\-opts <option string> + send a custom set of options to diff, for example to increase + the number of context lines, or change the diff format. + .TP +@@ -103,6 +103,7 @@ Override the setting of CVSROOT (overrid + .TP + .B \-q + Be quiet about warnings. ++.TP + .B \-A + Show ancestor branch when a new branch is found. + .TP diff --git a/extra/cvsps/seperate-CPPFLAGS.patch b/extra/cvsps/seperate-CPPFLAGS.patch new file mode 100644 index 000000000..a29923b49 --- /dev/null +++ b/extra/cvsps/seperate-CPPFLAGS.patch @@ -0,0 +1,29 @@ +From 5991e8b0acf1dbe3487c1f246a1d215b346a61f0 Mon Sep 17 00:00:00 2001 +From: Yann Dirson <ydirson@altern.org> +Date: Sat, 17 Jun 2006 00:03:41 +0200 +Subject: [PATCH] Separate CPPFLAGS from CFLAGS + +This allows to set CGLAGS on command-line without interfering with +preprocessor options +--- + Makefile | 4 ++-- + 1 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Makefile b/Makefile +index 2e34ec6..05ca856 100644 +--- a/Makefile ++++ b/Makefile +@@ -1,8 +1,8 @@ + MAJOR=2 + MINOR=1 + CC?=gcc +-CFLAGS?=-g -O2 -Wall +-CFLAGS+=-I. -DVERSION=\"$(MAJOR).$(MINOR)\" ++CFLAGS?=-g -O2 -Wall ++CPPFLAGS?=-I. -DVERSION=\"$(MAJOR).$(MINOR)\" + prefix?=/usr/local + OBJS=\ + cbtcommon/debug.o\ +-- +1.6.5.GIT + diff --git a/extra/cvsps/use-INADDR_NONE-define.patch b/extra/cvsps/use-INADDR_NONE-define.patch new file mode 100644 index 000000000..a1a529187 --- /dev/null +++ b/extra/cvsps/use-INADDR_NONE-define.patch @@ -0,0 +1,28 @@ +From c498733b4283b3987bdca6949a5e304244b64cfc Mon Sep 17 00:00:00 2001 +From: Pavel Roskin <proski@gnu.org> +Date: Tue, 13 Jun 2006 00:32:33 -0400 +Subject: [PATCH] Use INADDR_NONE instead of -1 to check inet_addr() result + +INADDR_NONE is not equal to -1 on 64-bit systems. + +Signed-off-by: Pavel Roskin <proski@gnu.org> +--- + cbtcommon/tcpsocket.c | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/cbtcommon/tcpsocket.c b/cbtcommon/tcpsocket.c +index a174007..f31060e 100644 +--- a/cbtcommon/tcpsocket.c ++++ b/cbtcommon/tcpsocket.c +@@ -198,7 +198,7 @@ convert_address(long *dest, const char *addr_str) + memcpy(dest, &ip.s_addr, sizeof(ip.s_addr)); + } + #else +- if ( (*dest = inet_addr(addr_str)) != -1) ++ if ( (*dest = inet_addr(addr_str)) != INADDR_NONE) + { + /* nothing */ + } +-- +1.6.5.GIT + diff --git a/extra/cvsps/use-__linux__-define.patch b/extra/cvsps/use-__linux__-define.patch new file mode 100644 index 000000000..132629593 --- /dev/null +++ b/extra/cvsps/use-__linux__-define.patch @@ -0,0 +1,36 @@ +From 4598349e81068d4af9a893c6433958cf9b4fa835 Mon Sep 17 00:00:00 2001 +From: Pavel Roskin <proski@gnu.org> +Date: Tue, 13 Jun 2006 00:32:31 -0400 +Subject: [PATCH] Use __linux__ conditional, not LINUX. + +__linux__ is defined automatically, LINUX is not. + +Signed-off-by: Pavel Roskin <proski@gnu.org> +--- + cbtcommon/tcpsocket.c | 4 ++-- + 1 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/cbtcommon/tcpsocket.c b/cbtcommon/tcpsocket.c +index 27cc13a..a174007 100644 +--- a/cbtcommon/tcpsocket.c ++++ b/cbtcommon/tcpsocket.c +@@ -185,14 +185,14 @@ tcp_connect(int sockfd, const char *rem_addr, unsigned short port) + int + convert_address(long *dest, const char *addr_str) + { +-#ifdef LINUX ++#ifdef __linux__ + struct in_addr ip; + #endif + int retval = 0; + char errstr[256]; + + /* first try converting "numbers and dots" notation */ +-#ifdef LINUX ++#ifdef __linux__ + if ( inet_aton(addr_str, &ip) ) + { + memcpy(dest, &ip.s_addr, sizeof(ip.s_addr)); +-- +1.6.5.GIT + diff --git a/extra/cvsps/use-offsetof-macro.patch b/extra/cvsps/use-offsetof-macro.patch new file mode 100644 index 000000000..ff2961f07 --- /dev/null +++ b/extra/cvsps/use-offsetof-macro.patch @@ -0,0 +1,32 @@ +From 4fad63b82746ea571edc2ec1100ad3208cf5af08 Mon Sep 17 00:00:00 2001 +From: Eric Hopper <hopper@omnifarious.org> +Date: Fri, 29 Jun 2007 01:30:09 -0700 +Subject: [PATCH] Use offsetof macro instead of unportable pointer arithmetic. + +--- + cbtcommon/list.h | 3 ++- + 1 files changed, 2 insertions(+), 1 deletions(-) + +diff --git a/cbtcommon/list.h b/cbtcommon/list.h +index 4ee245d..cf4b3ed 100644 +--- a/cbtcommon/list.h ++++ b/cbtcommon/list.h +@@ -23,6 +23,7 @@ + */ + + #include "inline.h" ++#include <stddef.h> + + struct list_head { + struct list_head *next, *prev; +@@ -107,6 +108,6 @@ static INLINE void list_splice(struct list_head *list, struct list_head *head) + } + + #define list_entry(ptr, type, member) \ +- ((type *)((char *)(ptr)-(unsigned long)(&((type *)0)->member))) ++ ((type *)((char *)(ptr)-offsetof(type, member))) + + #endif /* _COMMON_LIST_H */ +-- +1.6.5.GIT + diff --git a/extra/gnutls/PKGBUILD b/extra/gnutls/PKGBUILD index 691c09ea6..e2964e9ef 100644 --- a/extra/gnutls/PKGBUILD +++ b/extra/gnutls/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 151094 2012-02-24 20:55:22Z andyrtr $ +# $Id: PKGBUILD 151785 2012-03-02 19:31:37Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=gnutls -pkgver=3.0.14 +pkgver=3.0.15 pkgrel=1 pkgdesc="A library which provides a secure layer over a reliable transport layer" arch=('i686' 'x86_64') @@ -13,8 +13,8 @@ options=('!libtool' '!zipman') depends=('gcc-libs' 'libtasn1' 'readline' 'zlib' 'nettle>=2.4' 'p11-kit>=0.11') makedepends=('valgrind' 'strace') source=(ftp://ftp.gnu.org/gnu/gnutls/${pkgname}-${pkgver}.tar.xz{,.sig}) -md5sums=('0d613985c867846ccb5cbaba8fa576ef' - '847af57e7d4702b176d1cbf157962f6e') +md5sums=('37bdac12b5c039c7a8738b5d85eda968' + '594eb29cbc3147dc0b6b529ebe96bd33') build() { cd "${srcdir}/${pkgname}-${pkgver}" @@ -22,7 +22,7 @@ build() { --with-zlib \ --disable-static \ --disable-guile \ - --enable-valgrind-tests + --disable-valgrind-tests make } diff --git a/extra/libxfont/PKGBUILD b/extra/libxfont/PKGBUILD index 9d62d6835..41ab3ecba 100644 --- a/extra/libxfont/PKGBUILD +++ b/extra/libxfont/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 135207 2011-08-11 07:14:39Z jgc $ +# $Id: PKGBUILD 151781 2012-03-02 18:55:43Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=libxfont -pkgver=1.4.4 +pkgver=1.4.5 pkgrel=1 pkgdesc="X11 font rasterisation library" arch=(i686 x86_64) @@ -12,12 +12,16 @@ depends=('freetype2' 'libfontenc' 'xproto' 'fontsproto') makedepends=('xorg-util-macros' 'xtrans') options=('!libtool') source=(${url}/archive/individual/lib/libXfont-${pkgver}.tar.bz2) -sha1sums=('189dd7a3756cb80bcf41b779bf05ec3c366e3041') +sha1sums=('0bf3cb8aa192ab96bbaf384d1a4a00d15a40171e') build() { cd "${srcdir}/libXfont-${pkgver}" ./configure --prefix=/usr --sysconfdir=/etc --disable-static make +} + +package() { + cd "${srcdir}/libXfont-${pkgver}" make DESTDIR="${pkgdir}" install install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" diff --git a/extra/mercurial/PKGBUILD b/extra/mercurial/PKGBUILD index 224342902..e3185cd9f 100644 --- a/extra/mercurial/PKGBUILD +++ b/extra/mercurial/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 151621 2012-02-28 20:53:00Z giovanni $ +# $Id: PKGBUILD 151766 2012-03-02 11:44:52Z giovanni $ # Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Douglas Soares de Andrade <douglas@archlinux.org> pkgname=mercurial -pkgver=2.1 -pkgrel=2 +pkgver=2.1.1 +pkgrel=1 pkgdesc="A scalable distributed SCM tool" arch=('i686' 'x86_64') url="http://mercurial.selenic.com/" @@ -13,15 +13,13 @@ depends=('python2') optdepends=('tk: for the hgk GUI') backup=('etc/mercurial/hgrc') source=("http://mercurial.selenic.com/release/${pkgname}-${pkgver}.tar.gz" - 'mercurial.profile' - 'mercurial-2.1-return-code.patch') -md5sums=('d2ca44f8d0129ab50639143af99d9363' - '43e1d36564d4c7fbe9a091d3ea370a44' - '025e2ec8acc18a9b2a1b4f51f7bddbe3') + 'mercurial.profile') +md5sums=('368fab4705ebd4d1296fdd6bd2fe6272' + '43e1d36564d4c7fbe9a091d3ea370a44') package() { cd "${srcdir}/${pkgname}-${pkgver}" - patch -Np1 -i "${srcdir}/mercurial-2.1-return-code.patch" + python2 setup.py install --root="${pkgdir}/" --optimize=1 sed -i -e 's#env python#env python2#' \ diff --git a/extra/samba/PKGBUILD b/extra/samba/PKGBUILD index c5abd161c..f6bf687d5 100644 --- a/extra/samba/PKGBUILD +++ b/extra/samba/PKGBUILD @@ -1,14 +1,14 @@ -# $Id: PKGBUILD 148032 2012-01-30 07:48:01Z tpowa $ +# $Id: PKGBUILD 151755 2012-03-02 08:43:36Z tpowa $ # Maintainer: Tobias Powalowski <tpowa@archlinux.org> # Contributor: judd <jvinet@zeroflux.org> pkgbase=samba -pkgname=('smbclient' 'samba') +pkgname=('libwbclient' 'smbclient' 'samba') pkgver=3.6.3 # We use the 'A' to fake out pacman's version comparators. Samba chooses # to append 'a','b',etc to their subsequent releases, which pamcan # misconstrues as alpha, beta, etc. Bad samba! _realver=3.6.3 -pkgrel=1 +pkgrel=2 arch=(i686 x86_64) url="http://www.samba.org" license=('GPL3') @@ -17,8 +17,7 @@ source=(http://us1.samba.org/samba/ftp/stable/${pkgbase}-${_realver}.tar.gz samba samba.logrotate swat.xinetd samba.pam - samba.conf.d - fix-ipv6-mount.patch) + samba.conf.d) ### UNINSTALL dmapi package before building!!! build() { @@ -48,13 +47,23 @@ build() { make } +package_libwbclient () { +pkgdesc="Samba winbind client library" +depends=('glibc') + cd ${srcdir}/${pkgbase}-${_realver}/source3 + mkdir -p ${pkgdir}/usr/lib + for i in libwbclient*; do + cp -a bin/${i}*.so* ${pkgdir}/usr/lib/ + done +} + package_smbclient () { pkgdesc="Tools to access a server's filespace and printers via SMB" -depends=('readline' 'popt' 'libldap' 'cifs-utils' 'libcap' 'krb5' 'db' 'e2fsprogs' 'tdb' 'talloc') +depends=('readline' 'popt' 'libldap' 'cifs-utils' 'libcap' 'krb5' 'db' 'e2fsprogs' 'tdb' 'talloc' 'libwbclient') cd ${srcdir}/${pkgbase}-${_realver}/source3 mkdir -p ${pkgdir}/usr/bin ${pkgdir}/usr/lib install -m755 bin/{smbclient,rpcclient,smbspool,smbtree,smbcacls,smbcquotas,smbget,net,nmblookup} ${pkgdir}/usr/bin/ - for i in libnetapi* libwbclient* libsmbclient*;do + for i in libnetapi* libsmbclient*;do cp -a bin/${i}*.so* ${pkgdir}/usr/lib/ done install -m755 script/smbtar ${pkgdir}/usr/bin/ @@ -137,9 +146,8 @@ depends=('db' 'popt' 'libcups' 'acl' 'libldap' "smbclient>=$pkgver" 'libcap' 'kr install -D -m644 ${srcdir}/samba-${_realver}/examples/LDAP/samba.schema ${pkgdir}/usr/share/doc/samba/examples/LDAP/samba.schema } md5sums=('98ac9db9f4b6ebfc3f013aa193ffb0d1' - 'a3da19515a234c703876cf850c44e996' + 'dfc6f9018c556b9783c7140de183727f' '5697da77590ec092cc8a883bae06093c' 'a4bbfa39fee95bba2e7ad6b535fae7e6' '96f82c38f3f540b53f3e5144900acf17' - 'f2f2e348acd1ccb566e95fa8a561b828' - 'c6a38a8c8fa24979e6217aed533358ea') + 'f2f2e348acd1ccb566e95fa8a561b828') diff --git a/extra/samba/samba b/extra/samba/samba index 458eb8e2b..2a04bfec4 100755 --- a/extra/samba/samba +++ b/extra/samba/samba @@ -11,10 +11,10 @@ case "$1" in rc=0 stat_busy "Starting Samba Server" if [ ! -x /var/run/samba ] ; then - install -m755 -g 81 -o 81 -d /var/run/samba + install -m755 -d /var/run/samba fi if [ ! -x /var/log/samba ] ; then - install -m755 -g 81 -o 81 -d /var/log/samba + install -m755 -d /var/log/samba fi for d in ${SAMBA_DAEMONS[@]}; do PID=`pidof -o %PPID /usr/sbin/$d` diff --git a/extra/sane/PKGBUILD b/extra/sane/PKGBUILD index 10a12a174..f826584c3 100644 --- a/extra/sane/PKGBUILD +++ b/extra/sane/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 148914 2012-02-05 11:55:45Z ibiru $ +# $Id: PKGBUILD 151751 2012-03-02 07:58:39Z tpowa $ # Maintainer: Tobias Powalowski <tpowa@archlinux.org> # Contributor: Sarah Hay <sarahhay@mb.sympatico.ca> # Contributor: Simo L. <neotuli@yahoo.com> @@ -6,7 +6,7 @@ pkgname=sane pkgver=1.0.22 -pkgrel=5 +pkgrel=6 pkgdesc="Scanner Access Now Easy" url="http://www.sane-project.org/" arch=('i686' 'x86_64') @@ -54,4 +54,8 @@ package () { # install xinetd file install -D -m644 "${srcdir}/sane.xinetd" "${pkgdir}/etc/xinetd.d/sane" + + # Install the pkg-config file + install -D -m644 tools/sane-backends.pc \ + "${pkgdir}/usr/lib/pkgconfig/sane-backends.pc " } diff --git a/extra/tftp-hpa/PKGBUILD b/extra/tftp-hpa/PKGBUILD index c72da64a7..6f33be75b 100644 --- a/extra/tftp-hpa/PKGBUILD +++ b/extra/tftp-hpa/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 146535 2012-01-12 16:40:12Z tpowa $ +# $Id: PKGBUILD 151760 2012-03-02 09:20:56Z tpowa $ # Maintainer: dorphell <dorphell@archlinux.org> # Contributor: Jose Javier <jojapa@terra.es> pkgname=tftp-hpa pkgver=5.2 -pkgrel=1 +pkgrel=2 pkgdesc="Official tftp server" arch=('i686' 'x86_64') url="http://www.kernel.org/pub/software/network/tftp/" @@ -11,10 +11,16 @@ license=('BSD') depends=('readline>=6.0.00') conflicts=('netkit-tftp') backup=('etc/conf.d/tftpd') -source=(http://www.kernel.org/pub/software/network/tftp/tftp-hpa/$pkgname-$pkgver.tar.gz tftpd.rc tftpd.conf LICENSE) +source=(http://www.kernel.org/pub/software/network/tftp/tftp-hpa/$pkgname-$pkgver.tar.gz + tftpd.rc + tftpd.conf + LICENSE + tftp-hpa-0.49-fortify-strcpy-crash.patch) build() { cd "${srcdir}/${pkgname}-${pkgver}" + # fix #28103 + patch -Np1 -i ../tftp-hpa-0.49-fortify-strcpy-crash.patch ./configure --prefix=/usr --mandir=/usr/share/man --without-tcpwrappers make } @@ -32,4 +38,5 @@ package() { md5sums=('3de3038e7c2bf6fc5d496825893ac8e7' '83fbb6f52205d95951a3c059e5351ca2' '414a79dc891bced056d99a9bb790fc9e' - '6ce21e27b6fdc1a1adf85c81e42aeecf') + '6ce21e27b6fdc1a1adf85c81e42aeecf' + '22e8629ef19bc276a102c5d4d284c1bd') diff --git a/extra/tftp-hpa/tftp-hpa-0.49-fortify-strcpy-crash.patch b/extra/tftp-hpa/tftp-hpa-0.49-fortify-strcpy-crash.patch new file mode 100644 index 000000000..e9b70d471 --- /dev/null +++ b/extra/tftp-hpa/tftp-hpa-0.49-fortify-strcpy-crash.patch @@ -0,0 +1,26 @@ +diff -urN tftp-hpa-0.49.orig/tftp/tftp.c tftp-hpa-0.49/tftp/tftp.c +--- tftp-hpa-0.49.orig/tftp/tftp.c 2008-10-20 18:08:31.000000000 -0400 ++++ tftp-hpa-0.49/tftp/tftp.c 2009-08-05 09:47:18.072585848 -0400 +@@ -279,15 +279,16 @@ + struct tftphdr *tp, const char *mode) + { + char *cp; ++ size_t len; + + tp->th_opcode = htons((u_short) request); + cp = (char *)&(tp->th_stuff); +- strcpy(cp, name); +- cp += strlen(name); +- *cp++ = '\0'; +- strcpy(cp, mode); +- cp += strlen(mode); +- *cp++ = '\0'; ++ len = strlen(name) + 1; ++ memcpy(cp, name, len); ++ cp += len; ++ len = strlen(mode) + 1; ++ memcpy(cp, mode, len); ++ cp += len; + return (cp - (char *)tp); + } + diff --git a/extra/xorg-xfs/PKGBUILD b/extra/xorg-xfs/PKGBUILD index b5d1187a3..f1e747ff1 100644 --- a/extra/xorg-xfs/PKGBUILD +++ b/extra/xorg-xfs/PKGBUILD @@ -1,29 +1,29 @@ -# $Id: PKGBUILD 151037 2012-02-24 13:49:47Z allan $ +# $Id: PKGBUILD 151783 2012-03-02 19:10:39Z andyrtr $ # Maintainer: Alexander Baldeck <alexander@archlinux.org> # Contributor: Jan de Groot <jgc@archlinux.org> pkgname=xorg-xfs -pkgver=1.1.1 -pkgrel=2 +pkgver=1.1.2 +pkgrel=1 pkgdesc="X.Org X11 xfs font server" arch=('i686' 'x86_64') url="http://xorg.freedesktop.org/" license=('custom') backup=('etc/X11/fs/config') -depends=('xorg-font-utils' 'libxfont>=1.4.0' 'libfs>=1.0.2' 'libx11>=1.2.2') -makedepends=('pkgconfig' 'xtrans') +depends=('xorg-font-utils' 'libxfont>=1.4.5' 'libfs>=1.0.2' 'libx11>=1.2.2') +makedepends=('pkgconfig' 'xtrans' 'xorg-util-macros') source=(${url}/releases/individual/app/xfs-${pkgver}.tar.bz2 ${url}/releases/individual/app/xfsinfo-1.0.3.tar.bz2 ${url}/releases/individual/app/fslsfonts-1.0.3.tar.bz2 ${url}/releases/individual/app/fstobdf-1.0.4.tar.bz2 ${url}/releases/individual/app/showfont-1.0.3.tar.bz2 xfs.rc) -md5sums=('e02c6cae689c082b8c98a421df8f8670' - 'aae6fa48b5c2ce9186a5ff4ccc14a1d4' - '9b50d967ac6d4bae9bffb62a5e527a50' - 'fc1f42aac16d6b76c79a1a3a0fb6a53b' - '50b466ab6ed4a5b8df5abf1ef844309a' - '251f5447f64151e9bb096ebc9f999c3f') +sha1sums=('d4a64e12f8a773bd0120977191586ca12baf1ace' + '21c5f544f34d9164797575da85727558f5e09d33' + '00177564597ac629207ca597f663b689902817df' + '5310493f53277fd196f93bbb7f2a204cad8997b7' + '161bf5f037db70dd75cb327648fbba559e821e76' + '21277375814e358ec16e8f8330f420e3d4df63e5') build() { cd "${srcdir}" diff --git a/extra/ypserv/PKGBUILD b/extra/ypserv/PKGBUILD index a99ca0501..031303078 100644 --- a/extra/ypserv/PKGBUILD +++ b/extra/ypserv/PKGBUILD @@ -1,26 +1,27 @@ -# $Id: PKGBUILD 143826 2011-11-29 13:33:57Z stephane $ -# Maintainer: Gaetan Bisson <bisson@archlinux.org> +# $Id: PKGBUILD 151791 2012-03-03 01:11:12Z tomegun $ +# Maintainer: Tom Gundersen <teg@jklm.no> +# Contributor: Gaetan Bisson <bisson@archlinux.org> # Contributor: judd <jvinet@zeroflux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=ypserv -pkgver=2.26 -pkgrel=3 +pkgver=2.27 +pkgrel=1 pkgdesc='Linux NIS Server' arch=('i686' 'x86_64') url='http://www.linux-nis.org/nis/ypserv/' license=('GPL2') depends=('gdbm' 'openslp' 'inetutils') +optdepends=('gawk: for printcap support') backup=('etc/ypserv.conf' 'etc/netgroup' 'var/yp/securenets') -source=("ftp://ftp.kernel.org/pub/linux/utils/net/NIS/${pkgname}-${pkgver}.tar.gz" \ +source=("http://www.linux-nis.org/download/${pkgname}/${pkgname}-${pkgver}.tar.bz2" + confpost.patch 'yppasswd' 'ypserv') -sha1sums=('0d7ab3f04ff7fa5f611e71ea0f3c188659602743' - '96192b628afe36709496e4801d016c4bff343f0e' - 'b625381bfa6cf62345377a7df30b8f45935206c5') build() { cd "${srcdir}/${pkgname}-${pkgver}" + patch -p1 -i ../confpost.patch ./configure --prefix=/usr make } @@ -35,3 +36,7 @@ package() { install -D -m755 ../ypserv "${pkgdir}"/etc/rc.d/ypserv install -D -m755 ../yppasswd "${pkgdir}"/etc/rc.d/yppasswd } +md5sums=('fd9c43aec932a92be07b723c647b02a4' + '8acb314f30d6e531ac9efa8655f68ccb' + '4bc84c48ed1bb9659698853acb5cfd76' + 'c40befe5932f1b42efaced6b46809303') diff --git a/extra/ypserv/confpost.patch b/extra/ypserv/confpost.patch new file mode 100644 index 000000000..489e4368a --- /dev/null +++ b/extra/ypserv/confpost.patch @@ -0,0 +1,14 @@ +diff -up ypserv-2.27/conf_post.h.qdbm ypserv-2.27/conf_post.h +--- ypserv-2.27/conf_post.h.qdbm 2012-02-01 14:18:01.780846425 +0100 ++++ ypserv-2.27/conf_post.h 2012-02-01 14:18:01.780846425 +0100 +@@ -0,0 +1,10 @@ ++/* Define common preprocessor symbol for HAVE_LIBGDBM and HAVE_LIBQDBM, since ++ * libraries gdbm and qdbm have same symbol names. */ ++#undef HAVE_COMPAT_LIBGDBM ++#ifdef HAVE_LIBGDBM ++#define HAVE_COMPAT_LIBGDBM ++#endif ++#ifdef HAVE_LIBQDBM ++#define HAVE_COMPAT_LIBGDBM ++#endif ++ diff --git a/libre/linux-libre/PKGBUILD b/libre/linux-libre/PKGBUILD index f31815bb3..5b8430f86 100644 --- a/libre/linux-libre/PKGBUILD +++ b/libre/linux-libre/PKGBUILD @@ -13,8 +13,8 @@ _kernelname=${pkgname#linux-libre} _basekernel=3.2 _sublevel=9 pkgver=${_basekernel}.${_sublevel} -_lxopkgver=${_basekernel}.7 # nearly always the same as pkgver -pkgrel=1 +_lxopkgver=${_basekernel}.7 # nearly always the same as pkgver +pkgrel=2 arch=('i686' 'x86_64' 'mips64el') url="http://linux-libre.fsfla.org/" license=('GPL2') @@ -36,8 +36,8 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-li "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/linux-patches-${_lxopkgver}-libre-lemote_0lxo_mipsel.tar.bz2") md5sums=('27c641c4f6785fc647cdd3e44963a55c' '8e601878ccdd37111cc84500ebd81387' - '79db8a444fd149e409f706830d8cee9a' - 'e26dbcb367a2b48f5ed09560e2ae8fa0' + '921f108c7a4985f7f8b41d72ca9bf915' + 'f18ac3f790b0daa43f21dda04cceb90b' 'a8a3843046926eb7ab81312cd438c5c5' '2967cecc3af9f954ccc822fd63dca6ff' '8267264d9a8966e57fdacd1fa1fc65c4' @@ -101,7 +101,7 @@ build() { -e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \ -e "s|CONFIG_UEVENT_HELPER_PATH=.*|CONFIG_UEVENT_HELPER_PATH=\"\"|g" \ -e "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"-LIBRE\"|g" \ - -e "s|(CONFIG_USB(_COMMON|_EHCI_HCD|_OHCI_HCD|_STORAGE.*|_UAS)?)=.*|\1=y|g" + -e "s;(CONFIG_USB(_COMMON|_EHCI_HCD|_OHCI_HCD|_STORAGE.*|_UAS)?)=.*;\1=y;g" \ ./.config else cat "${srcdir}/config.${CARCH}" > ./.config # simpler @@ -136,6 +136,9 @@ build() { # build! if [ "$CARCH" == "mips64el" ]; then + # The build system passes it directly to linker, disable to avoid + # having unknown -Wl,... options. + export LDFLAGS="" # bzImage is arch-specific and not supported on mips; vmlinux is # useful for oprofile. make ${MAKEFLAGS} vmlinux vmlinuz modules @@ -226,7 +229,7 @@ package_linux-libre-headers() { # In case of repackaging this is empty if [ -z "${_kernver}" ]; then - cd ${srcdir}/linux-$pkgver + cd "${srcdir}/linux-${_basekernel}" _kernver="$(make kernelrelease)" fi @@ -260,7 +263,7 @@ package_linux-libre-headers() { if [ "$CARCH" = "mips64el" ]; then cp "arch/${KARCH}/Kbuild" "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/" - cp "arch/${KARCH}/loongson" "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/" + cp -a "arch/${KARCH}/loongson" "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/" cp "${srcdir}/Kbuild.platforms" "${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/" fi diff --git a/libre/linux-libre/config.i686 b/libre/linux-libre/config.i686 index d2d688197..5a50c4e04 100644 --- a/libre/linux-libre/config.i686 +++ b/libre/linux-libre/config.i686 @@ -4053,7 +4053,7 @@ CONFIG_FB_I810_I2C=y # CONFIG_FB_KYRO is not set # CONFIG_FB_3DFX is not set CONFIG_FB_VOODOO1=m -# CONFIG_FB_VT8623 is not set +CONFIG_FB_VT8623=m # CONFIG_FB_TRIDENT is not set # CONFIG_FB_ARK is not set # CONFIG_FB_PM3 is not set diff --git a/libre/linux-libre/config.x86_64 b/libre/linux-libre/config.x86_64 index 80ea3030f..441d23e6f 100644 --- a/libre/linux-libre/config.x86_64 +++ b/libre/linux-libre/config.x86_64 @@ -3880,7 +3880,7 @@ CONFIG_FB_EFI=y # CONFIG_FB_KYRO is not set # CONFIG_FB_3DFX is not set CONFIG_FB_VOODOO1=m -# CONFIG_FB_VT8623 is not set +CONFIG_FB_VT8623=m # CONFIG_FB_TRIDENT is not set # CONFIG_FB_ARK is not set # CONFIG_FB_PM3 is not set diff --git a/libre/linux-libre/linux-libre.install b/libre/linux-libre/linux-libre.install index 62f5d13bc..ea00c881c 100644 --- a/libre/linux-libre/linux-libre.install +++ b/libre/linux-libre/linux-libre.install @@ -8,7 +8,7 @@ post_install () { # updating module dependencies echo ">>> Updating module dependencies. Please wait ..." depmod ${KERNEL_VERSION} - if [ command -v mkinitcpio 2>&1 > /dev/null ]; then + if command -v mkinitcpio 2>&1 > /dev/null; then echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..." mkinitcpio -p linux-libre${KERNEL_NAME} fi @@ -52,7 +52,7 @@ post_upgrade() { # updating module dependencies echo ">>> Updating module dependencies. Please wait ..." depmod ${KERNEL_VERSION} - if [ command -v mkinitcpio 2>&1 > /dev/null ]; then + if command -v mkinitcpio 2>&1 > /dev/null; then echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..." mkinitcpio -p linux-libre${KERNEL_NAME} fi diff --git a/multilib-testing/gcc-multilib/PKGBUILD b/multilib-testing/gcc-multilib/PKGBUILD index 08c23ef69..ea9bf7b80 100644 --- a/multilib-testing/gcc-multilib/PKGBUILD +++ b/multilib-testing/gcc-multilib/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 66816 2012-02-28 23:00:55Z allan $ +# $Id: PKGBUILD 66975 2012-03-03 03:50:38Z heftig $ # Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com> # Contributor: Allan McRae <allan@archlinux.org> @@ -7,9 +7,9 @@ pkgbase='gcc-multilib' pkgname=('gcc-multilib' 'gcc-libs-multilib' 'lib32-gcc-libs' 'gcc-fortran-multilib' 'gcc-objc-multilib' 'gcc-ada-multilib' 'gcc-go-multilib') -pkgver=4.6.2 -pkgrel=8 -_snapshot=4.6-20120120 +pkgver=4.6.3 +pkgrel=1 +#_snapshot=4.6-20120120 _libstdcppmanver=20111215 pkgdesc="The GNU Compiler Collection for multilib" arch=('x86_64') @@ -19,13 +19,13 @@ makedepends=('binutils-multilib>=2.22' 'libmpc' 'cloog' 'ppl' 'gcc-ada-multilib' 'lib32-glibc>=2.14') checkdepends=('dejagnu') options=('!libtool' '!emptydirs') -source=(#ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2 - ftp://gcc.gnu.org/pub/gcc/snapshots/${_snapshot}/gcc-${_snapshot}.tar.bz2 +source=(ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2 + #ftp://gcc.gnu.org/pub/gcc/snapshots/${_snapshot}/gcc-${_snapshot}.tar.bz2 ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/libstdc++-man.${_libstdcppmanver}.tar.bz2 gcc_pure64-multilib.patch gcc-hash-style-both.patch gcc-4.6.2-cloog-0.17.patch) -md5sums=('f7ca5d9f7a07216577f81318b7cf56ef' +md5sums=('773092fe5194353b02bb0110052a972e' '450772ce32daed97d7383199f8797f33' '7da5b7ab75b3c29993f953b18bc38579' '4df25b623799b148a0703eaeec8fdf3f' diff --git a/multilib-testing/libtool-multilib/PKGBUILD b/multilib-testing/libtool-multilib/PKGBUILD new file mode 100644 index 000000000..f81121e6b --- /dev/null +++ b/multilib-testing/libtool-multilib/PKGBUILD @@ -0,0 +1,74 @@ +# $Id: PKGBUILD 66976 2012-03-03 03:51:25Z heftig $ +# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com> +# Contributor: Allan McRae <allan@archlinux.org> +# Contributor: judd <jvinet@zeroflux.org> + +# NOTE: requires rebuild with each new gcc version + +pkgbase=libtool-multilib +pkgname=(libtool-multilib lib32-libltdl) +pkgver=2.4.2 +pkgrel=4 +pkgdesc="A generic library support script for multilib" +arch=('x86_64') +url="http://www.gnu.org/software/libtool" +license=('GPL') +_gccver=4.6.3 +makedepends=("gcc-multilib=$_gccver") +options=('!libtool') +source=(ftp://ftp.gnu.org/pub/gnu/libtool/libtool-${pkgver}.tar.xz{,.sig}) +md5sums=('2ec8997e0c07249eb4cbd072417d70fe' + '1e6ba57420c82c663c85e745d11c7eed') + +build() { + cd "$srcdir" + + rm -rf libtool-64 libtool-32 + mv libtool-$pkgver libtool-64 + cp -a libtool-64 libtool-32 + + msg2 "Building libtool-64..." + cd "$srcdir/libtool-64" + ./configure --prefix=/usr + make + + msg2 "Building libtool-32..." + export CC="gcc -m32" + export CXX="g++ -m32" + + cd "$srcdir/libtool-32" + ./configure --prefix=/usr --libdir=/usr/lib32 + make +} + +check() { + cd "$srcdir/libtool-64" + make check + cd "$srcdir/libtool-32" + make check +} + +package_libtool-multilib() { + depends=('sh' "libltdl=$pkgver" 'tar' "gcc-multilib=$_gccver" "lib32-libltdl=$pkgver") + groups=('multilib-devel') + install=libtool.install + provides=("libtool=$pkgver-$pkgrel") + conflicts=(libtool) + + cd "$srcdir/libtool-64" + + make DESTDIR=${pkgdir} install-binSCRIPTS install-man install-info \ + install-data-local + rm -rf ${pkgdir}/usr/share/libtool/libltdl/ +} + +package_lib32-libltdl() { + pkgdesc="A system independent dlopen wrapper for GNU libtool (32-bit)" + depends=(lib32-glibc libltdl) + replaces=(lib32-libtool) + provides=("lib32-libtool=$pkgver-$pkgrel") + conflicts=(lib32-libtool) + + cd "$srcdir/libtool-32" + make DESTDIR="$pkgdir" install-libLTLIBRARIES +} diff --git a/multilib-testing/libtool-multilib/libtool.install b/multilib-testing/libtool-multilib/libtool.install new file mode 100644 index 000000000..f4f700705 --- /dev/null +++ b/multilib-testing/libtool-multilib/libtool.install @@ -0,0 +1,22 @@ +infodir=usr/share/info +filelist=(libtool.info libtool.info-1 libtool.info-2) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +# vim:set ts=2 sw=2 et: diff --git a/multilib/wine/PKGBUILD b/multilib/wine/PKGBUILD index 2bbb3f0bb..8cdab7256 100644 --- a/multilib/wine/PKGBUILD +++ b/multilib/wine/PKGBUILD @@ -1,17 +1,17 @@ -# $Id: PKGBUILD 66428 2012-02-24 19:12:52Z svenstaro $ +# $Id: PKGBUILD 66960 2012-03-02 21:08:16Z svenstaro $ # Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> # Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com> # Contributor: Eduardo Romero <eduardo@archlinux.org> # Contributor: Giovanni Scafora <giovanni@archlinux.org> pkgname=wine -pkgver=1.4rc5 +pkgver=1.4rc6 pkgrel=1 _pkgbasever=${pkgver/rc/-rc} source=(http://ibiblio.org/pub/linux/system/emulators/$pkgname/$pkgname-$_pkgbasever.tar.bz2) -md5sums=('80b324aec2a07610e4ad07a56f429db3') +md5sums=('64e59d31b25753202bbf1b4696468826') pkgdesc="A compatibility layer for running Windows programs" url="http://www.winehq.com" diff --git a/social/uci/PKGBUILD b/social/uci/PKGBUILD new file mode 100644 index 000000000..d306b77bd --- /dev/null +++ b/social/uci/PKGBUILD @@ -0,0 +1,40 @@ +# Maintainer: Nicolás Reynolds <fauno@kiwwwi.com.ar> +pkgname=uci +pkgver=0.8.0 +pkgrel=1 +pkgdesc="OpenWRT's Unified Configuration Interface" +arch=('i686' 'mips64el') +url="https://openwrt.org" +license=('GPL2') +makedepends=('git' 'cmake' 'lua') +source=(http://repo.parabolagnulinux.org/other/${pkgname}-${pkgver}.tar.gz) +md5sums=('135bf6c4188b72c7fd7954f592b1e4e4') + +# source PKGBUILD; mksource +mksource() { + + if [ -d uci/.git ]; then + pushd uci; git pull; popd + else + git clone git://nbd.name/uci.git + fi + + cd uci/ + git archive --prefix=${pkgname}-${pkgver}/ v${pkgver} | \ + gzip -9 > ../${pkgname}-${pkgver}.tar.gz + cd .. +} + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + + cmake . + make +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + make DESTDIR=${pkgdir}/ install +} + +# vim:set ts=2 sw=2 et: diff --git a/testing/gcc/PKGBUILD b/testing/gcc/PKGBUILD index d2176a2f8..fdd534215 100644 --- a/testing/gcc/PKGBUILD +++ b/testing/gcc/PKGBUILD @@ -1,13 +1,13 @@ -# $Id: PKGBUILD 151628 2012-02-28 23:12:15Z allan $ +# $Id: PKGBUILD 151793 2012-03-03 01:34:23Z allan $ # Maintainer: Allan McRae <allan@archlinux.org> # toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc # NOTE: libtool requires rebuilt with each new gcc version pkgname=('gcc' 'gcc-libs' 'gcc-fortran' 'gcc-objc' 'gcc-ada' 'gcc-go') -pkgver=4.6.2 -pkgrel=8 -_snapshot=4.6-20120120 +pkgver=4.6.3 +pkgrel=1 +#_snapshot=4.6-20120120 _libstdcppmanver=20111215 # Note: check source directory name when updating this pkgdesc="The GNU Compiler Collection" arch=('i686' 'x86_64') @@ -16,13 +16,13 @@ url="http://gcc.gnu.org" makedepends=('binutils>=2.22' 'libmpc' 'cloog' 'ppl' 'gcc-ada') checkdepends=('dejagnu') options=('!libtool' '!emptydirs') -source=(#ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2 - ftp://gcc.gnu.org/pub/gcc/snapshots/${_snapshot}/gcc-${_snapshot}.tar.bz2 +source=(ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2 + #ftp://gcc.gnu.org/pub/gcc/snapshots/${_snapshot}/gcc-${_snapshot}.tar.bz2 ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/libstdc++-man.${_libstdcppmanver}.tar.bz2 gcc_pure64.patch gcc-hash-style-both.patch gcc-4.6.2-cloog-0.17.patch) -md5sums=('f7ca5d9f7a07216577f81318b7cf56ef' +md5sums=('773092fe5194353b02bb0110052a972e' '450772ce32daed97d7383199f8797f33' '4030ee1c08dd1e843c0225b772360e76' '4df25b623799b148a0703eaeec8fdf3f' diff --git a/testing/grep/PKGBUILD b/testing/grep/PKGBUILD new file mode 100644 index 000000000..fdb2a36ab --- /dev/null +++ b/testing/grep/PKGBUILD @@ -0,0 +1,37 @@ +# $Id: PKGBUILD 151764 2012-03-02 11:04:18Z allan $ +# Maintainer: Allan McRae <allan@archlinux.org> +# Contributor: judd <jvinet@zeroflux.org> + +pkgname=grep +pkgver=2.11 +pkgrel=1 +pkgdesc="A string search utility" +arch=('i686' 'x86_64') +license=('GPL3') +url="http://www.gnu.org/software/grep/grep.html" +groups=('base') +depends=('glibc' 'pcre' 'sh') +makedepends=('texinfo') +install=${pkgname}.install +source=(ftp://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.xz{,.sig}) +md5sums=('ad9c6dbdeab93e50d2bc380f10ed3643' + 'e4fea5e355973c951f93f48bc86f92fa') + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + ./configure --prefix=/usr --without-included-regex + make +} + +check() { + cd ${srcdir}/${pkgname}-${pkgver} + make check +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + make DESTDIR=${pkgdir} install + + install -dm755 ${pkgdir}/bin + ln -s /usr/bin/grep ${pkgdir}/bin/grep +} diff --git a/testing/grep/grep.install b/testing/grep/grep.install new file mode 100644 index 000000000..7cd31301f --- /dev/null +++ b/testing/grep/grep.install @@ -0,0 +1,21 @@ +infodir=usr/share/info +filelist=(grep.info) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + diff --git a/testing/libtool/PKGBUILD b/testing/libtool/PKGBUILD new file mode 100644 index 000000000..fc7ece352 --- /dev/null +++ b/testing/libtool/PKGBUILD @@ -0,0 +1,49 @@ +# $Id: PKGBUILD 151795 2012-03-03 02:45:49Z allan $ +# Maintainer: Allan McRae <allan@archlinux.org> +# Contributor: judd <jvinet@zeroflux.org> + +# NOTE: requires rebuilt with each new gcc version + +pkgname=('libtool' 'libltdl') +pkgver=2.4.2 +pkgrel=4 +pkgdesc="A generic library support script" +arch=('i686' 'x86_64') +url="http://www.gnu.org/software/libtool" +license=('GPL') +options=('!libtool') +source=(ftp://ftp.gnu.org/pub/gnu/libtool/${pkgname}-${pkgver}.tar.xz{,.sig}) +md5sums=('2ec8997e0c07249eb4cbd072417d70fe' + '1e6ba57420c82c663c85e745d11c7eed') + +build() { + cd ${srcdir}/${pkgbase}-${pkgver} + ./configure --prefix=/usr + make +} + +check() { + cd ${srcdir}/${pkgbase}-${pkgver} + make check +} + +package_libtool() { + depends=('sh' "libltdl=$pkgver" 'tar' 'gcc=4.6.3') + groups=('base-devel') + install=libtool.install + + cd ${srcdir}/${pkgbase}-${pkgver} + + make DESTDIR=${pkgdir} install-binSCRIPTS install-man install-info \ + install-data-local + rm -rf ${pkgdir}/usr/share/libtool/libltdl/ +} + +package_libltdl() { + pkgdesc="A system independent dlopen wrapper for GNU libtool" + + cd ${srcdir}/${pkgbase}-${pkgver} + make DESTDIR=${pkgdir} install-libLTLIBRARIES install-includeHEADERS \ + install-ltdlincludeHEADERS install-data-local + rm -rf ${pkgdir}/usr/share/{aclocal,libtool/config} +} diff --git a/testing/libtool/libtool.install b/testing/libtool/libtool.install new file mode 100644 index 000000000..73cf56422 --- /dev/null +++ b/testing/libtool/libtool.install @@ -0,0 +1,20 @@ +infodir=usr/share/info +filelist=(libtool.info libtool.info-1 libtool.info-2) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} diff --git a/testing/nfs-utils/PKGBUILD b/testing/nfs-utils/PKGBUILD new file mode 100644 index 000000000..f00fe4ebe --- /dev/null +++ b/testing/nfs-utils/PKGBUILD @@ -0,0 +1,73 @@ +# $Id: PKGBUILD 151758 2012-03-02 09:09:32Z tpowa $ +# Maintainer: Tobias Powalowski <tpowa@archlinux.org> +# Contributor: John Proctor <jproctor@prium.net> +# Contributor: dibblethewrecker <dibblethewrecker.at.jiwe.org> +# Contributor: abelstr <abel@pinklf.eu> +# Contributor: Marco Lima <cipparello gmail com> + +pkgname=nfs-utils +pkgver=1.2.5 +pkgrel=2 +pkgdesc="Support programs for Network File Systems" +arch=('i686' 'x86_64') +url='http://nfs.sourceforge.net' +license=('GPL') +backup=(etc/{exports,idmapd.conf} etc/conf.d/{nfs-common.conf,nfs-server.conf}) +depends=('glibc' 'e2fsprogs' 'rpcbind' 'libtirpc>=0.2.1' 'librpcsecgss>=0.19-2' 'nfsidmap' 'libevent>=2.0.10' 'libgssglue' 'device-mapper') +makedepends=('pkgconfig' 'autoconf' 'automake') +source=(http://downloads.sourceforge.net/project/nfs/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.bz2 + nfs-common + nfs-common.conf + nfs-server + nfs-server.conf + exports + idmapd.conf + start-statd.patch + nfs-utils-1.1.4-mtab-sym.patch + nfs-utils-1.1.4-no-exec.patch) +install=nfs-utils.install +md5sums=('8395ac770720b83c5c469f88306d7765' + 'dd0d65fc6e8f422fa12520813098264b' + 'f73f197a16b02c3e248488ec35c4cf43' + 'e619f18354ff958ed624d05d08853d8f' + '9cef69bc686cc5dcac23fbb51450747d' + 'ff585faf410a62c4333a027c50b56bae' + 'eb4f4027fab6fc1201f1ca04f5954c76' + 'e9144277a89a620d9bc80413158a7d27' + '7674106eaaa4c149bccd4f05fe3604e9' + '4f4827dfc93008dfadd0a530ad0872b2') + +build() { + cd $srcdir/${pkgname}-${pkgver} + patch -Np1 -i ../nfs-utils-1.1.4-mtab-sym.patch + #patch -Np1 -i ../nfs-utils-1.1.4-no-exec.patch + # arch specific patch + patch -Np0 -i $srcdir/start-statd.patch + + ./configure --prefix=/usr --enable-nfsv3 --enable-nfsv4 --enable-gss \ + --without-tcp-wrappers --with-statedir=/var/lib/nfs \ + --enable-ipv6 --sysconfdir=/etc --enable-libmount-mount + + make +} + +package() { + cd $srcdir/${pkgname}-${pkgver} + make DESTDIR=$pkgdir install + + # support python2 (FS#25120) + sed -i '1s/python$/python2/' "$pkgdir"/usr/sbin/{nfsiostat,mountstats} + + # NFS & NFSv4 init scripts + install -D -m 755 ../nfs-common "$pkgdir/"etc/rc.d/nfs-common + install -D -m 755 ../nfs-server "$pkgdir/"etc/rc.d/nfs-server + # Configuration + install -D -m 644 ../exports "$pkgdir/"etc/exports + install -D -m 644 ../idmapd.conf "$pkgdir/"etc/idmapd.conf + install -D -m 644 ../nfs-common.conf "$pkgdir/"etc/conf.d/nfs-common.conf + install -D -m 644 ../nfs-server.conf "$pkgdir/"etc/conf.d/nfs-server.conf + # directories + mkdir "$pkgdir/"etc/exports.d + mkdir "$pkgdir/"var/lib/nfs/rpc_pipefs + mkdir "$pkgdir/"var/lib/nfs/v4recovery +} diff --git a/testing/nfs-utils/exports b/testing/nfs-utils/exports new file mode 100644 index 000000000..8f4aac598 --- /dev/null +++ b/testing/nfs-utils/exports @@ -0,0 +1,15 @@ +# /etc/exports +# +# List of directories exported to NFS clients. See exports(5). +# Use exportfs -arv to reread. +# +# Example for NFSv2 and NFSv3: +# /srv/home hostname1(rw,sync) hostname2(ro,sync) +# +# Example for NFSv4: +# /srv/nfs4 hostname1(rw,sync,fsid=0) +# /srv/nfs4/home hostname1(rw,sync,nohide) +# Using Kerberos and integrity checking: +# /srv/nfs4 gss/krb5i(rw,sync,fsid=0,crossmnt) +# /srv/nfs4/home gss/krb5i(rw,sync,nohide) +# diff --git a/testing/nfs-utils/idmapd.conf b/testing/nfs-utils/idmapd.conf new file mode 100644 index 000000000..b1b23afe9 --- /dev/null +++ b/testing/nfs-utils/idmapd.conf @@ -0,0 +1,14 @@ +[General] + +Verbosity = 0 +Pipefs-Directory = /var/lib/nfs/rpc_pipefs +Domain = localdomain + +[Mapping] + +Nobody-User = nobody +Nobody-Group = nobody + +[Translation] + +Method = nsswitch diff --git a/testing/nfs-utils/kernel-3.0-segfault.patch b/testing/nfs-utils/kernel-3.0-segfault.patch new file mode 100644 index 000000000..3dba94a05 --- /dev/null +++ b/testing/nfs-utils/kernel-3.0-segfault.patch @@ -0,0 +1,53 @@ +mount.nfs segfaults if kernel version number does not contain +at least 3 components delimited with a dot. + +Avoid this by matching up to three unsigned integers inialised +to zero, separated by dots. + +A version that does not start with an integer is probably a future +version where the versioning evolved to another scheme. +Return UINT_MAX which is guaranteed to be higher than existing +versions. This would also make it possible to easily identify +versions that do not start with an integer. + +Signed-off-by: Luk Claes <luk@...> +--- + utils/mount/version.h | 16 +++++++++------- + 1 files changed, 9 insertions(+), 7 deletions(-) + +diff --git a/utils/mount/version.h b/utils/mount/version.h +index af61a6f..531cf68 100644 +--- a/utils/mount/version.h ++++ b/utils/mount/version.h +@@ -23,8 +23,8 @@ + #ifndef _NFS_UTILS_MOUNT_VERSION_H + #define _NFS_UTILS_MOUNT_VERSION_H + +-#include <stdlib.h> +-#include <string.h> ++#include <stdio.h> ++#include <limits.h> + + #include <sys/utsname.h> + +@@ -37,14 +37,16 @@ static inline unsigned int MAKE_VERSION(unsigned int p, unsigned int q, + static inline unsigned int linux_version_code(void) + { + struct utsname my_utsname; +- unsigned int p, q, r; ++ unsigned int p, q = 0, r = 0; + ++ /* UINT_MAX as backward compatibility code should not be run */ + if (uname(&my_utsname)) +- return 0; ++ return UINT_MAX; + +- p = (unsigned int)atoi(strtok(my_utsname.release, ".")); +- q = (unsigned int)atoi(strtok(NULL, ".")); +- r = (unsigned int)atoi(strtok(NULL, ".")); ++ /* UINT_MAX as future versions might not start with an integer */ ++ if (sscanf(my_utsname.release, "%u.%u.%u", &p, &q, &r) < 1) ++ return UINT_MAX; ++ + return MAKE_VERSION(p, q, r); + } diff --git a/testing/nfs-utils/nfs-common b/testing/nfs-utils/nfs-common new file mode 100644 index 000000000..7b16b4b3c --- /dev/null +++ b/testing/nfs-utils/nfs-common @@ -0,0 +1,315 @@ +#!/bin/bash + +daemon_name=nfs-common + +NEED_STATD= +STATD_OPTS= +NEED_IDMAPD= +IDMAPD_OPTS= +NEED_GSSD= +GSSD_OPTS= +PIPEFS_MOUNTPOINT= +PIPEFS_MOUNTOPTS= + +# rpc.statd daemon & binary location +STATD_DAEMON_NAME=rpc.statd +STATD="/usr/sbin/rpc.statd" + +# rpc.idmapd daemon & binary location +IDMAPD_DAEMON_NAME=rpc.idmapd +IDMAPD="/usr/sbin/rpc.idmapd" + +# rpc.gssd daemon & binary location +GSSD_DAEMON_NAME=rpc.gssd +GSSD="/usr/sbin/rpc.gssd" + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/$daemon_name.conf + +# Default mountpoint and options for rpc_pipefs filesystem +[ -z "$PIPEFS_MOUNTPOINT" ] && PIPEFS_MOUNTPOINT="/var/lib/nfs/rpc_pipefs" +[ -z "$PIPEFS_MOUNTOPTS" ] && PIPEFS_MOUNTOPTS="defaults" + +# Parse the fstab file, and determine whether we need idmapd and gssd. (The +# /etc/conf.d/nfs-common settings, if any, will override our autodetection.) +AUTO_NEED_IDMAPD=no +AUTO_NEED_GSSD=no + +if [ -f /etc/fstab ]; then + exec 9<&0 </etc/fstab + + while read DEV MTPT FSTYPE OPTS REST; do + if [ "$FSTYPE" = "nfs4" ]; then + AUTO_NEED_IDMAPD=yes + fi + case "$OPTS" in + sec=krb5|*,sec=krb5|sec=krb5,*|*,sec=krb5i,*|sec=krb5i|*,sec=krb5i|sec=krb5i,*|*,sec=krb5i,*|sec=krb5p|*,sec=krb5p|sec=krb5p,*|*,sec=krb5p,*) + AUTO_NEED_GSSD=yes + ;; + esac + done + + exec 0<&9 9<&- +fi + +# We also need idmapd if we run an NFSv4 server. It's fairly difficult +# to autodetect whether there are NFSv4 exports or not, and idmapd is not a +# particularily heavy daemon, so we auto-enable it if we find an /etc/exports +# file. This does not mean that there are NFSv4 or other mounts active (or +# even that nfs-kernel-server is installed), but it matches what the "start" +# condition in nfs-kernel-server's init script does, which has a value in +# itself. +if [ -f /etc/exports ] && grep -q '^[[:space:]]*[^#]*/' /etc/exports; then + AUTO_NEED_IDMAPD=yes +fi + +case "$NEED_STATD" in + yes|no) + ;; + *) + NEED_STATD=yes + ;; +esac + +case "$NEED_IDMAPD" in + yes|no) + ;; + *) + NEED_IDMAPD=$AUTO_NEED_IDMAPD + ;; +esac + +case "$NEED_GSSD" in + yes|no) + ;; + *) + NEED_GSSD=$AUTO_NEED_GSSD + ;; +esac + +do_modprobe() { + if [ -x /sbin/modprobe -a -f /proc/modules ]; then + modprobe -q "$1" || true + fi +} + +do_mount() { + if ! grep -E "$1\$" /proc/filesystems &> /dev/null ; then + return 1 + fi + + if grep -vw "$1" /proc/mounts &> /dev/null ; then + if ! mountpoint -q "$2" ; then + mount -t "$1" "$1" "$2" -o "$3" + return + fi + fi + return 0 +} + +do_umount() { + if mountpoint -q "$1" ; then + umount "$1" + fi + return 0 +} + +get_pid() { + pidof -o %PPID "$1" +} + +case "$1" in + start) + ck_daemon rpcbind && { echo -n "Start rpcbind first." >&2; stat_die; } + rc=0 + if [ "$NEED_STATD" = yes ]; then + stat_busy "Starting $STATD_DAEMON_NAME daemon" + PID=$(get_pid $STATD) + if [ -z "$PID" ]; then + [ -f /var/run/$STATD_DAEMON_NAME.pid ] && rm -f /var/run/$STATD_DAEMON_NAME.pid + # RUN + $STATD $STATD_OPTS + # + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + exit $rc + else + echo $(get_pid $STATD) > /var/run/$STATD_DAEMON_NAME.pid + stat_done + fi + else + stat_fail + exit 1 + fi + # Run sm-notify + /usr/sbin/sm-notify $SMNOTIFY_OPTS + fi + + if [ "$NEED_IDMAPD" = yes ] || [ "$NEED_GSSD" = yes ]; then + stat_busy "Mounting pipefs filesystem" + do_modprobe sunrpc + do_modprobe nfs + do_modprobe nfsd + do_mount rpc_pipefs "$PIPEFS_MOUNTPOINT" "$PIPEFS_MOUNTOPTS" + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + exit $rc + else + stat_done + fi + + if [ "$NEED_IDMAPD" = yes ]; then + stat_busy "Starting $IDMAPD_DAEMON_NAME daemon" + PID=$(get_pid $IDMAPD) + if [ -z "$PID" ]; then + [ -f /var/run/$IDMAPD_DAEMON_NAME.pid ] && rm -f /var/run/$IDMAPD_DAEMON_NAME.pid + # RUN + $IDMAPD $IDMAPD_OPTS + # + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + exit $rc + else + echo $(get_pid $IDMAPD) > /var/run/$IDMAPD_DAEMON_NAME.pid + stat_done + fi + else + stat_fail + exit 1 + fi + fi + + if [ "$NEED_GSSD" = yes ]; then + do_modprobe rpcsec_gss_krb5 + stat_busy "Starting $GSSD_DAEMON_NAME daemon" + PID=$(get_pid $GSSD) + if [ -z "$PID" ]; then + [ -f /var/run/$GSSD_DAEMON_NAME.pid ] && rm -f /var/run/$GSSD_DAEMON_NAME.pid + # RUN + $GSSD $GSSD_OPTS + # + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + exit $rc + else + echo $(get_pid $GSSD) > /var/run/$GSSD_DAEMON_NAME.pid + stat_done + fi + else + stat_fail + exit 1 + fi + fi + fi + + add_daemon $daemon_name + ;; + + stop) + rc=0 + if [ "$NEED_IDMAPD" = yes ] || [ "$NEED_GSSD" = yes ]; then + + if [ "$NEED_GSSD" = yes ]; then + stat_busy "Stopping $GSSD_DAEMON_NAME daemon" + PID=$(get_pid $GSSD) + # KILL + [ ! -z "$PID" ] && kill $PID &> /dev/null + # + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + exit $rc + else + rm -f /var/run/$GSSD_DAEMON_NAME.pid &> /dev/null + stat_done + fi + fi + + if [ "$NEED_IDMAPD" = yes ]; then + stat_busy "Stopping $IDMAPD_DAEMON_NAME daemon" + PID=$(get_pid $IDMAPD) + # KILL + [ ! -z "$PID" ] && kill $PID &> /dev/null + # + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + exit $rc + else + rm -f /var/run/$IDMAPD_DAEMON_NAME.pid &> /dev/null + stat_done + fi + fi + do_umount "$PIPEFS_MOUNTPOINT" 2>/dev/null || true + fi + + if [ "$NEED_STATD" = yes ]; then + stat_busy "Stopping $STATD_DAEMON_NAME daemon" + PID=$(get_pid $STATD) + # KILL + [ ! -z "$PID" ] && kill $PID &> /dev/null + # + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + exit $rc + else + rm -f /var/run/$STATD_DAEMON_NAME.pid &> /dev/null + stat_done + fi + fi + + rm_daemon $daemon_name + ;; + + status) + stat_busy "Checking $daemon_name status"; + ck_status $daemon_name + + if [ "$NEED_STATD" = yes ]; then + stat_busy "Daemon $STATD_DAEMON_NAME running" + PID=$(get_pid $STATD) + if [ -z "$PID" ]; then + stat_fail + else + stat_done + fi + fi + + if [ "$NEED_GSSD" = yes ]; then + stat_busy "Daemon $GSSD_DAEMON_NAME running" + PID=$(get_pid $GSSD) + if [ -z "$PID" ]; then + stat_fail + else + stat_done + fi + fi + + if [ "$NEED_IDMAPD" = yes ]; then + stat_busy "Daemon $IDMAPD_DAEMON_NAME running" + PID=$(get_pid $IDMAPD) + if [ -z "$PID" ]; then + stat_fail + else + stat_done + fi + fi + echo + ;; + + restart) + $0 stop + sleep 3 + $0 start + ;; + *) + echo "usage: $0 {start|stop|status|restart}" +esac +exit 0 + diff --git a/testing/nfs-utils/nfs-common.conf b/testing/nfs-utils/nfs-common.conf new file mode 100644 index 000000000..12466b3e5 --- /dev/null +++ b/testing/nfs-utils/nfs-common.conf @@ -0,0 +1,40 @@ +# Parameters to be passed to nfs-common (nfs clients & server) init script. +# + +# If you do not set values for the NEED_ options, they will be attempted +# autodetected; this should be sufficient for most people. Valid alternatives +# for the NEED_ options are "yes" and "no". + +# Do you want to start the statd daemon? It is not needed for NFSv4. +NEED_STATD="" + +# Options to pass to rpc.statd. +# See rpc.statd(8) for more details. +# N.B. statd normally runs on both client and server, and run-time +# options should be specified accordingly. +# STATD_OPTS="-p 32765 -o 32766" +STATD_OPTS="" + +# Options to pass to sm-notify +# e.g. SMNOTIFY_OPTS="-p 32764" +SMNOTIFY_OPTS="" + +# Do you want to start the idmapd daemon? It is only needed for NFSv4. +NEED_IDMAPD="" + +# Options to pass to rpc.idmapd. +# See rpc.idmapd(8) for more details. +IDMAPD_OPTS="" + +# Do you want to start the gssd daemon? It is required for Kerberos mounts. +NEED_GSSD="" + +# Options to pass to rpc.gssd. +# See rpc.gssd(8) for more details. +GSSD_OPTS="" + +# Where to mount rpc_pipefs filesystem; the default is "/var/lib/nfs/rpc_pipefs". +PIPEFS_MOUNTPOINT="" + +# Options used to mount rpc_pipefs filesystem; the default is "defaults". +PIPEFS_MOUNTOPTS="" diff --git a/testing/nfs-utils/nfs-server b/testing/nfs-utils/nfs-server new file mode 100644 index 000000000..6aa609d8c --- /dev/null +++ b/testing/nfs-utils/nfs-server @@ -0,0 +1,299 @@ +#!/bin/bash + +daemon_name=nfs-server + +NFSD_COUNT= +NFSD_OPTS= +NEED_SVCGSSD= +SVCGSSD_OPTS= +MOUNTD_OPTS= +PROCNFSD_MOUNTPOINT= +PROCNFSD_MOUNTOPTS= + +# rpc.nfsd daemon & binary location +NFSD_PROCESS_NAME=nfsd +NFSD_DAEMON_NAME=rpc.nfsd +NFSD="/usr/sbin/rpc.nfsd" + +# rpc.svcgssd daemon & binary location +SVCGSSD_DAEMON_NAME=rpc.svcgssd +SVCGSSD="/usr/sbin/rpc.svcgssd" + +# rpc.idmapd daemon & binary location +IDMAPD_DAEMON_NAME=rpc.idmapd +IDMAPD="/usr/sbin/rpc.idmapd" + +# rpc.mountd daemon & binary location +MOUNTD_DAEMON_NAME=rpc.mountd +MOUNTD="/usr/sbin/rpc.mountd" + +# exortfs binary location +EXPORTFS="/usr/sbin/exportfs" + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/$daemon_name.conf + +# Default number of nfsd servers +[ -z "$NFSD_COUNT" ] && NFSD_COUNT=8 + +# Default mountpoint and options for nfsd filesystem +[ -z "$PROCNFSD_MOUNTPOINT" ] && PROCNFSD_MOUNTPOINT="/proc/fs/nfsd" +[ -z "$PROCNFSD_MOUNTOPTS" ] && PROCNFSD_MOUNTOPTS="rw,nodev,noexec,nosuid" + +case "$NEED_SVCGSSD" in + yes|no) + ;; + *) + NEED_SVCGSSD=no + ;; +esac + +do_modprobe() { + if [ -x /sbin/modprobe -a -f /proc/modules ]; then + modprobe -q "$1" || true + fi +} + +do_mount() { + if ! grep -E "$1\$" /proc/filesystems &> /dev/null ; then + return 1 + fi + + if grep -vw "$1" /proc/mounts &> /dev/null ; then + if ! mountpoint -q "$2" ; then + mount -t "$1" "$1" "$2" -o "$3" + return + fi + fi + return 0 +} + +do_umount() { + if mountpoint -q "$1" ; then + umount "$1" + fi + return 0 +} + +get_pid() { + pidof -o %PPID "$1" +} + +case "$1" in + start) + ck_daemon nfs-common && { echo -n "Start nfs-common first." >&2; stat_die; } + rc=0 + stat_busy "Mounting nfsd filesystem" + do_modprobe nfsd + do_mount nfsd "$PROCNFSD_MOUNTPOINT" "$PROCNFSD_MOUNTOPTS" + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + exit $rc + else + stat_done + fi + + stat_busy "Exporting all directories" + $EXPORTFS -r + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + exit $rc + else + stat_done + fi + + stat_busy "Starting $NFSD_DAEMON_NAME daemon" + PID=$(get_pid $NFSD_PROCESS_NAME) + if [ -z "$PID" ]; then + [ -f /var/run/$NFSD_DAEMON_NAME.pid ] && rm -f /var/run/$NFSD_DAEMON_NAME.pid + # RUN + $NFSD $NFSD_OPTS $NFSD_COUNT + # + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + exit $rc + else + echo $(get_pid $NFSD_PROCESS_NAME) > /var/run/$NFSD_DAEMON_NAME.pid + stat_done + fi + else + stat_fail + exit 1 + fi + + if [ "$NEED_SVCGSSD" = yes ]; then + do_modprobe rpcsec_gss_krb5 + stat_busy "Starting $SVCGSSD_DAEMON_NAME daemon" + PID=$(get_pid $SVCGSSD) + if [ -z "$PID" ]; then + [ -f /var/run/$SVCGSSD_DAEMON_NAME.pid ] && rm -f /var/run/$SVCGSSD_DAEMON_NAME.pid + # RUN + $SVCGSSD $SVCGSSD_OPTS + # + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + exit $rc + else + echo $(get_pid $SVCGSSD) > /var/run/$SVCGSSD_DAEMON_NAME.pid + stat_done + fi + else + stat_fail + exit 1 + fi + fi + + PID=$(get_pid $IDMAPD) + [ ! -z "$PID" ] && kill -SIGHUP $IDMAPD_DAEMON_NAME &> /dev/null + + stat_busy "Starting $MOUNTD_DAEMON_NAME daemon" + PID=$(get_pid $MOUNTD) + if [ -z "$PID" ]; then + [ -f /var/run/$MOUNTD_DAEMON_NAME.pid ] && rm -f /var/run/$MOUNTD_DAEMON_NAME.pid + # RUN + $MOUNTD $MOUNTD_OPTS + # + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + exit $rc + else + echo $(get_pid $MOUNTD) > /var/run/$MOUNTD_DAEMON_NAME.pid + stat_done + fi + else + stat_fail + exit 1 + fi + + add_daemon $daemon_name + ;; + + stop) + rc=0 + stat_busy "Stopping $MOUNTD_DAEMON_NAME daemon" + PID=$(get_pid $MOUNTD) + # KILL + [ ! -z "$PID" ] && kill $PID &> /dev/null + # + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + exit $rc + else + rm -f /var/run/$MOUNTD_DAEMON_NAME.pid &> /dev/null + stat_done + fi + + if [ "$NEED_SVCGSSD" = yes ]; then + stat_busy "Stopping $SVCGSSD_DAEMON_NAME daemon" + PID=$(get_pid $SVCGSSD) + # KILL + [ ! -z "$PID" ] && kill $PID &> /dev/null + # + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + exit $rc + else + rm -f /var/run/$SVCGSSD_DAEMON_NAME.pid &> /dev/null + stat_done + fi + fi + + stat_busy "Stopping $NFSD_DAEMON_NAME daemon" + PID=$(get_pid $NFSD_PROCESS_NAME) + # KILL (SIGINT) + [ ! -z "$PID" ] && kill -2 $PID &> /dev/null + # + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + exit $rc + else + sleep 1 + PID=$(get_pid $NFSD_PROCESS_NAME) + # KILL (KILL) - just to be sure + [ ! -z "$PID" ] && kill -9 $PID &> /dev/null + # + rm -f /var/run/$NFSD_DAEMON_NAME.pid &> /dev/null + stat_done + fi + + stat_busy "Unexporting all directories" + $EXPORTFS -au + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + exit $rc + else + stat_done + fi + + # flush everything out of the kernels export table + if mountpoint -q "$PROCNFSD_MOUNTPOINT" ; then + $EXPORTFS -f + fi + do_umount "$PROCNFSD_MOUNTPOINT" 2>/dev/null || true + rm_daemon $daemon_name + ;; + + status) + stat_busy "Checking $daemon_name status"; + ck_status $daemon_name + + stat_busy "Daemon $NFSD_DAEMON_NAME running" + PID=$(get_pid $NFSD_PROCESS_NAME) + if [ -z "$PID" ]; then + stat_fail + else + stat_done + fi + + stat_busy "Daemon $MOUNTD_DAEMON_NAME running" + PID=$(get_pid $MOUNTD) + if [ -z "$PID" ]; then + stat_fail + else + stat_done + fi + + if [ "$NEED_SVCGSSD" = yes ]; then + stat_busy "Daemon $SVCGSSD_DAEMON_NAME running" + PID=$(get_pid $SVCGSSD) + if [ -z "$PID" ]; then + stat_fail + else + stat_done + fi + fi + echo + ;; + + reload) + rc=0 + stat_busy "Re-exporting all directories" + $EXPORTFS -r + rc=$(($rc+$?)) + if [ $rc -gt 0 ]; then + stat_fail + exit $rc + else + stat_done + fi + ;; + + restart) + $0 stop + sleep 3 + $0 start + ;; + *) + echo "usage: $0 {start|stop|status|reload|restart}" +esac +exit 0 diff --git a/testing/nfs-utils/nfs-server.conf b/testing/nfs-utils/nfs-server.conf new file mode 100644 index 000000000..581e26350 --- /dev/null +++ b/testing/nfs-utils/nfs-server.conf @@ -0,0 +1,29 @@ +# Parameters to be passed to nfs-server init script. +# + +# Options to pass to rpc.nfsd. +# See rpc.nfsd(8) for more details. +NFSD_OPTS="" + +# Number of servers to start up; the default is 8 servers. +NFSD_COUNT="" + +# Where to mount nfsd filesystem; the default is "/proc/fs/nfsd". +PROCNFSD_MOUNTPOINT="" + +# Options used to mount nfsd filesystem; the default is "rw,nodev,noexec,nosuid". +PROCNFSD_MOUNTOPTS="" + +# Options for rpc.mountd. +# If you have a port-based firewall, you might want to set up +# a fixed port here using the --port option. +# See rpc.mountd(8) for more details. +MOUNTD_OPTS="" + +# Do you want to start the svcgssd daemon? It is only required for Kerberos +# exports. Valid alternatives are "yes" and "no"; the default is "no". +NEED_SVCGSSD="" + +# Options to pass to rpc.svcgssd. +# See rpc.svcgssd(8) for more details. +SVCGSSD_OPTS="" diff --git a/testing/nfs-utils/nfs-utils-1.1.4-mtab-sym.patch b/testing/nfs-utils/nfs-utils-1.1.4-mtab-sym.patch new file mode 100644 index 000000000..c9e60afc7 --- /dev/null +++ b/testing/nfs-utils/nfs-utils-1.1.4-mtab-sym.patch @@ -0,0 +1,39 @@ +ripped from Debian + +--- nfs-utils-1.1.4/utils/mount/fstab.c ++++ nfs-utils-1.1.4/utils/mount/fstab.c +@@ -57,7 +57,7 @@ mtab_does_not_exist(void) { + return var_mtab_does_not_exist; + } + +-static int ++int + mtab_is_a_symlink(void) { + get_mtab_info(); + return var_mtab_is_a_symlink; +--- nfs-utils-1.1.4/utils/mount/fstab.h ++++ nfs-utils-1.1.4/utils/mount/fstab.h +@@ -7,6 +7,7 @@ + #define _PATH_FSTAB "/etc/fstab" + #endif + ++int mtab_is_a_symlink(void); + int mtab_is_writable(void); + int mtab_does_not_exist(void); + void reset_mtab_info(void); +--- nfs-utils-1.1.4/utils/mount/mount.c ++++ nfs-utils-1.1.4/utils/mount/mount.c +@@ -230,6 +230,13 @@ create_mtab (void) { + int flags; + mntFILE *mfp; + ++ /* Avoid writing if the mtab is a symlink to /proc/mounts, since ++ that would create a file /proc/mounts in case the proc filesystem ++ is not mounted, and the fchmod below would also fail. */ ++ if (mtab_is_a_symlink()) { ++ return EX_SUCCESS; ++ } ++ + lock_mtab(); + + mfp = nfs_setmntent (MOUNTED, "a+"); diff --git a/testing/nfs-utils/nfs-utils-1.1.4-no-exec.patch b/testing/nfs-utils/nfs-utils-1.1.4-no-exec.patch new file mode 100644 index 000000000..ea50a21d8 --- /dev/null +++ b/testing/nfs-utils/nfs-utils-1.1.4-no-exec.patch @@ -0,0 +1,15 @@ +ripped from Debian + +--- nfs-utils-1.1.2/utils/mount/mount.c ++++ nfs-utils-1.1.2/utils/mount/mount.c +@@ -381,10 +381,6 @@ + mount_error(NULL, mount_point, ENOTDIR); + return 1; + } +- if (access(mount_point, X_OK) < 0) { +- mount_error(NULL, mount_point, errno); +- return 1; +- } + + return 0; + } diff --git a/testing/nfs-utils/nfs-utils.install b/testing/nfs-utils/nfs-utils.install new file mode 100644 index 000000000..7dcdf9575 --- /dev/null +++ b/testing/nfs-utils/nfs-utils.install @@ -0,0 +1,32 @@ +## arg 1: the new package version +post_install() { +cat << 'EOM' + ==> PLEASE NOTE: + ==> Extended configuration options for NFS (clients & server) are available in + ==> /etc/conf.d/nfs-common.conf and in /etc/conf.d/nfs-server.conf + ==> + ==> Please refer to http://wiki.archlinux.org/index.php/Nfs + ==> for further information on NFS; for NFSv4, refer to + ==> http://wiki.archlinux.org/index.php/NFSv4 +EOM +} + +## arg 1: the new package version +## arg 2: the old package version +post_upgrade() { + if [ "$(vercmp $2 1.2.0-2)" -lt 0 ]; then +cat << 'EOM' + ==> IMPORTANT NFS UTILS CHANGES: + ==> This is a rather important upgrade, you are going to have to change config files. + ==> /etc/rc.conf daemons changes: + ==> Change portmap to rpcbind + ==> Change nfslock to nfs-common + ==> Change nfsd to nfs-server + ==> + ==> Extended configuration options for NFS (clients & server) are available in: + ==> /etc/conf.d/nfs-common + ==> /etc/conf.d/nfs-server + ==> Please change them to your needs. +EOM + fi +} diff --git a/testing/nfs-utils/start-statd.patch b/testing/nfs-utils/start-statd.patch new file mode 100644 index 000000000..5d73b6e35 --- /dev/null +++ b/testing/nfs-utils/start-statd.patch @@ -0,0 +1,22 @@ +--- utils/statd/start-statd 2007-05-11 04:40:57.000000000 +0100 ++++ utils/statd/start-statd.new 2007-09-21 17:11:34.000000000 +0100 +@@ -1,9 +1,16 @@ +-#!/bin/bash -p ++#!/bin/sh ++ ++# Original script provided by the NFS project ++# Modified for Arch Linux by Tom Killian ++ + # nfsmount calls this script when mounting a filesystem with locking + # enabled, but when statd does not seem to be running (based on + # /var/run/rpc.statd.pid). + # It should run statd with whatever flags are apropriate for this + # site. +-PATH=/sbin:/usr/sbin +-exec rpc.statd --no-notify ++ ++# source application-specific settings ++[ -f /etc/conf.d/nfs-common.conf ] && . /etc/conf.d/nfs-common.conf ++ ++exec /usr/sbin/rpc.statd $STATD_OPTS + diff --git a/testing/sudo/PKGBUILD b/testing/sudo/PKGBUILD index 5b5cd3004..9fe2cf1b8 100644 --- a/testing/sudo/PKGBUILD +++ b/testing/sudo/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 150815 2012-02-23 04:13:48Z allan $ +# $Id: PKGBUILD 151762 2012-03-02 10:58:36Z allan $ # Maintainer: Allan McRae <allan@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=sudo -_ver=1.8.4p1 +_ver=1.8.4p2 pkgver=${_ver/[a-z]/.${_ver//[0-9.]/}} pkgrel=1 pkgdesc="Give certain users the ability to run some commands as root" @@ -15,8 +15,8 @@ backup=('etc/sudoers' 'etc/pam.d/sudo') options=('!libtool' '!makeflags') source=(ftp://ftp.sudo.ws/pub/sudo/$pkgname-$_ver.tar.gz{,.sig} sudo.pam) -md5sums=('d7f9bf7675bbc6d75e6f9353a175317c' - '51bc933d386af08038349dd61aa243c3' +md5sums=('c0cc9334246d4f34128660b6c5463e94' + 'bb692de8ecb24d8bfab00c45292536c5' '4e7ad4ec8f2fe6a40e12bcb2c0b256e3') build() { diff --git a/testing/tzdata/Makefile.patch b/testing/tzdata/Makefile.patch new file mode 100644 index 000000000..e88f9d907 --- /dev/null +++ b/testing/tzdata/Makefile.patch @@ -0,0 +1,140 @@ +diff -Naur src/Makefile src-p/Makefile +--- src/Makefile 2007-08-20 16:47:41.000000000 +0200 ++++ src-p/Makefile 2007-10-02 04:07:44.000000000 +0200 +@@ -34,17 +34,17 @@ + + # Everything gets put in subdirectories of. . . + +-TOPDIR= /usr/local ++TOPDIR= $(DESTDIR)/usr + + # "Compiled" time zone information is placed in the "TZDIR" directory + # (and subdirectories). + # Use an absolute path name for TZDIR unless you're just testing the software. + +-TZDIR= $(TOPDIR)/etc/zoneinfo ++TZDIR= $(TOPDIR)/share/zoneinfo + + # The "tzselect", "zic", and "zdump" commands get installed in. . . + +-ETCDIR= $(TOPDIR)/etc ++SBINDIR= $(TOPDIR)/sbin + + # If you "make INSTALL", the "date" command gets installed in. . . + +@@ -52,7 +52,7 @@ + + # Manual pages go in subdirectories of. . . + +-MANDIR= $(TOPDIR)/man ++MANDIR= $(TOPDIR)/share/man + + # Library functions are put in an archive in LIBDIR. + +@@ -83,7 +83,7 @@ + + # Non-default libraries needed to link. + # Add -lintl if you want to use `gettext' on Solaris. +-LDLIBS= ++LDLIBS=$(LDFLAGS) + + # Add the following to the end of the "CFLAGS=" line as needed. + # -Dconst= if `const' does not work (SunOS 4.x cc, OSF1 V5.0 cc) +@@ -211,7 +211,7 @@ + # before the first Monday in January when a "%V" format is used and January 1 + # falls on a Friday, Saturday, or Sunday. + +-CFLAGS= ++CFLAGS += -std=gnu99 + + # If you want zic's -s option used when installing, uncomment the next line + # ZFLAGS= -s +@@ -220,7 +220,7 @@ + ZIC= $(zic) $(ZFLAGS) + + # The name of a Posix-compliant `awk' on your system. +-AWK= nawk ++AWK= awk + + # The path where SGML DTDs are kept. + SGML_SEARCH_PATH= $(TOPDIR)/share/doc/sgml-lib/REC-html401-19991224/ +@@ -241,8 +241,10 @@ + + ############################################################################### + +-cc= cc +-CC= $(cc) -DTZDIR=\"$(TZDIR)\" ++CC+= -DTZDIR=\"$(TZDIR)\" ++ifeq ($(NLS),1) ++CC += -DHAVE_GETTEXT=1 -DTZ_DOMAIN=\"libc\" ++endif + + TZCSRCS= zic.c localtime.c asctime.c scheck.c ialloc.c + TZCOBJS= zic.o localtime.o asctime.o scheck.o ialloc.o +@@ -282,14 +284,16 @@ + + ALL: all date + +-install: all $(DATA) $(REDO) $(TZLIB) $(MANS) $(TABDATA) ++install: all $(DATA) $(REDO) $(MANS) $(TABDATA) + $(ZIC) -y $(YEARISTYPE) \ + -d $(TZDIR) -l $(LOCALTIME) -p $(POSIXRULES) + -rm -f $(TZDIR)/iso3166.tab $(TZDIR)/zone.tab + cp iso3166.tab zone.tab $(TZDIR)/. +- -mkdir $(TOPDIR) $(ETCDIR) +- cp tzselect zic zdump $(ETCDIR)/. +- -mkdir $(TOPDIR) $(MANDIR) \ ++ -mkdir -p $(TOPDIR) $(SBINDIR) ++ cp zic zdump $(SBINDIR)/. ++ -mkdir -p $(TOPDIR) $(BINDIR) ++ cp tzselect $(BINDIR)/. ++ -mkdir -p $(TOPDIR) $(MANDIR) \ + $(MANDIR)/man3 $(MANDIR)/man5 $(MANDIR)/man8 + -rm -f $(MANDIR)/man3/newctime.3 \ + $(MANDIR)/man3/newtzset.3 \ +@@ -298,13 +302,11 @@ + $(MANDIR)/man8/zdump.8 \ + $(MANDIR)/man8/zic.8 + cp newctime.3 newtzset.3 $(MANDIR)/man3/. +- cp tzfile.5 $(MANDIR)/man5/. +- cp tzselect.8 zdump.8 zic.8 $(MANDIR)/man8/. + + INSTALL: ALL install date.1 +- -mkdir $(TOPDIR) $(BINDIR) ++ -mkdir -p $(TOPDIR) $(BINDIR) + cp date $(BINDIR)/. +- -mkdir $(TOPDIR) $(MANDIR) $(MANDIR)/man1 ++ -mkdir -p $(TOPDIR) $(MANDIR) $(MANDIR)/man1 + -rm -f $(MANDIR)/man1/date.1 + cp date.1 $(MANDIR)/man1/. + +@@ -334,9 +336,9 @@ + # You must replace all of $(TZDIR) to switch from not using leap seconds + # to using them, or vice versa. + other_two: zic leapseconds $(TDATA) +- $(ZIC) -y $(YEARISTYPE) -d $(TZDIR)-posix -L /dev/null $(TDATA) ++ $(ZIC) -y $(YEARISTYPE) -d $(TZDIR)/posix -L /dev/null $(TDATA) + $(ZIC) -y $(YEARISTYPE) \ +- -d $(TZDIR)-leaps -L leapseconds $(TDATA) ++ -d $(TZDIR)/right -L leapseconds $(TDATA) + + posix_right: posix_only other_two + +@@ -367,7 +369,7 @@ + <$? >$@ + chmod +x $@ + +-check: check_tables check_web ++check: check_tables + + check_tables: checktab.awk $(PRIMARY_YDATA) + $(AWK) -f checktab.awk $(PRIMARY_YDATA) +diff -Naur src/tzselect.ksh src-p/tzselect.ksh +--- src/tzselect.ksh 2007-08-20 16:47:42.000000000 +0200 ++++ src-p/tzselect.ksh 2007-10-02 04:07:44.000000000 +0200 +@@ -1,4 +1,4 @@ +-#! /bin/ksh ++#! /bin/bash + + # '@(#)tzselect.ksh 8.1' + diff --git a/testing/tzdata/PKGBUILD b/testing/tzdata/PKGBUILD new file mode 100644 index 000000000..d51cfa78d --- /dev/null +++ b/testing/tzdata/PKGBUILD @@ -0,0 +1,47 @@ +# $Id: PKGBUILD 151775 2012-03-02 14:25:01Z andyrtr $ +# Maintainer: Andreas Radke <andyrtr@archlinux.org> + +pkgname=tzdata +pkgver=2012b +pkgrel=1 +_tzcode=2012b +_tzdata=2012b +pkgdesc="Sources for time zone and daylight saving time data" +arch=('i686' 'x86_64') +url="http://www.iana.org/time-zones" +license=('GPL') +depends=() +makedepends=() +optdepends=('bash: required by tzselect') +options=('!emptydirs') +source=(#http://www.iana.org/time-zones/repository/releases/tzcode${_tzcode}.tar.gz + ftp://munnari.oz.au/pub/tzcode${_tzcode}.tar.gz + #http://www.iana.org/time-zones/repository/releases/${pkgname}${_tzdata}.tar.gz + ftp://munnari.oz.au/pub/${pkgname}${_tzdata}.tar.gz + Makefile.patch) +md5sums=('6137322ffd36e1fd5128885be1c57008' + '0615fd29def380a917e528433c820368' + 'a64ed97d1fc03c66ee8612c0d9f40507') + +build() { + cd ${srcdir} + + tar -xf tzcode${_tzcode}.tar.gz + tar -xf ${pkgname}${_tzdata}.tar.gz + + patch -Np1 -i "${srcdir}/Makefile.patch" + + make +} + +check() { + cd ${srcdir} + make -k check # || /bin/true +} + +package() { + cd ${srcdir} + make DESTDIR="${pkgdir}" install + + rm "${pkgdir}/usr/share/zoneinfo/localtime" +} |