[arch-commits] Commit in curl/repos (6 files)

Dave Reisner dreisner at archlinux.org
Tue Nov 22 21:58:17 EST 2011


    Date: Tuesday, November 22, 2011 @ 21:58:17
  Author: dreisner
Revision: 143109

db-move: moved curl from [testing] to [core] (x86_64)

Added:
  curl/repos/core-x86_64/PKGBUILD
    (from rev 143105, curl/repos/testing-x86_64/PKGBUILD)
  curl/repos/core-x86_64/curlbuild.h
    (from rev 143105, curl/repos/testing-x86_64/curlbuild.h)
  curl/repos/core-x86_64/fix-J-with-O-regression.patch
    (from rev 143105, curl/repos/testing-x86_64/fix-J-with-O-regression.patch)
Deleted:
  curl/repos/core-x86_64/PKGBUILD
  curl/repos/core-x86_64/curlbuild.h
  curl/repos/testing-x86_64/

-------------------------------+
 PKGBUILD                      |  134 +++++++++++++++++++------------------
 curlbuild.h                   |   18 ++---
 fix-J-with-O-regression.patch |  142 ++++++++++++++++++++++++++++++++++++++++
 3 files changed, 221 insertions(+), 73 deletions(-)

Deleted: core-x86_64/PKGBUILD
===================================================================
--- core-x86_64/PKGBUILD	2011-11-23 02:58:15 UTC (rev 143108)
+++ core-x86_64/PKGBUILD	2011-11-23 02:58:17 UTC (rev 143109)
@@ -1,64 +0,0 @@
-# $Id$
-# Maintainer: Dave Reisner <dreisner at archlinux.org>
-# Contributor: Angel Velasquez <angvp at archlinux.org>
-# Contributor: Eric Belanger <eric at archlinux.org>
-# Contributor: Lucien Immink <l.immink at student.fnt.hvu.nl>
-# Contributor: Daniel J Griffiths <ghost1227 at archlinux.us>
-
-pkgname=curl
-pkgver=7.23.1
-pkgrel=1
-pkgdesc="An URL retrival utility and library"
-arch=('i686' 'x86_64')
-url="http://curl.haxx.se"
-license=('MIT')
-depends=('ca-certificates' 'libssh2' 'openssl' 'zlib')
-makedepends=('perl-libwww')
-options=('!libtool')
-source=("http://curl.haxx.se/download/$pkgname-$pkgver.tar.gz"{,.asc}
-        curlbuild.h)
-md5sums=('8e23151f569fb54afef093ac0695077d'
-         '5d8eb7e2e38be0fb00a043f714f6d49f'
-         '751bd433ede935c8fae727377625a8ae')
-
-ptrsize=$(cpp <<<'__SIZEOF_POINTER__' | sed '/^#/d')
-case $ptrsize in
-  8) _curlbuild=curlbuild-64.h ;;
-  4) _curlbuild=curlbuild-32.h ;;
-  *) error "unknown pointer size for architecture: %s bytes" "$ptrsize"
-    exit 1
-    ;;
-esac
-
-build() {
-  cd "$srcdir/$pkgname-$pkgver"
-
-  ./configure \
-      --prefix=/usr \
-      --mandir=/usr/share/man \
-      --disable-dependency-tracking \
-      --disable-ldap \
-      --disable-ldaps \
-      --enable-ipv6 \
-      --enable-manual \
-      --enable-versioned-symbols \
-      --enable-threaded-resolver \
-      --without-libidn \
-      --with-random=/dev/urandom \
-      --with-ca-bundle=/etc/ssl/certs/ca-certificates.crt
-  make
-}
-
-package() {
-  cd "$srcdir/$pkgname-$pkgver"
-
-  make DESTDIR="$pkgdir" install
-
-  # license
-  install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
-
-  # devel
-  install -Dm644 docs/libcurl/libcurl.m4 "$pkgdir/usr/share/aclocal/libcurl.m4"
-  mv "$pkgdir/usr/include/curl/curlbuild.h" "$pkgdir/usr/include/curl/$_curlbuild"
-  install -m644 "$srcdir/curlbuild.h" "$pkgdir/usr/include/curl/curlbuild.h"
-}

Copied: curl/repos/core-x86_64/PKGBUILD (from rev 143105, curl/repos/testing-x86_64/PKGBUILD)
===================================================================
--- core-x86_64/PKGBUILD	                        (rev 0)
+++ core-x86_64/PKGBUILD	2011-11-23 02:58:17 UTC (rev 143109)
@@ -0,0 +1,70 @@
+# $Id$
+# Maintainer: Dave Reisner <dreisner at archlinux.org>
+# Contributor: Angel Velasquez <angvp at archlinux.org>
+# Contributor: Eric Belanger <eric at archlinux.org>
+# Contributor: Lucien Immink <l.immink at student.fnt.hvu.nl>
+# Contributor: Daniel J Griffiths <ghost1227 at archlinux.us>
+
+pkgname=curl
+pkgver=7.23.1
+pkgrel=2
+pkgdesc="An URL retrival utility and library"
+arch=('i686' 'x86_64')
+url="http://curl.haxx.se"
+license=('MIT')
+depends=('ca-certificates' 'libssh2' 'openssl' 'zlib')
+makedepends=('perl-libwww')
+options=('!libtool')
+source=("http://curl.haxx.se/download/$pkgname-$pkgver.tar.gz"{,.asc}
+        fix-J-with-O-regression.patch
+        curlbuild.h)
+md5sums=('8e23151f569fb54afef093ac0695077d'
+         '5d8eb7e2e38be0fb00a043f714f6d49f'
+         'aa4539ec4f4a2dad1663dc22dd3ab0a1'
+         '751bd433ede935c8fae727377625a8ae')
+
+ptrsize=$(cpp <<<'__SIZEOF_POINTER__' | sed '/^#/d')
+case $ptrsize in
+  8) _curlbuild=curlbuild-64.h ;;
+  4) _curlbuild=curlbuild-32.h ;;
+  *) error "unknown pointer size for architecture: %s bytes" "$ptrsize"
+    exit 1
+    ;;
+esac
+
+build() {
+  cd "$srcdir/$pkgname-$pkgver"
+
+  # upstream bugfix
+  # http://curl.haxx.se/mail/archive-2011-11/0030.html
+  patch -Np1 < "$srcdir/fix-J-with-O-regression.patch"
+
+  ./configure \
+      --prefix=/usr \
+      --mandir=/usr/share/man \
+      --disable-dependency-tracking \
+      --disable-ldap \
+      --disable-ldaps \
+      --enable-ipv6 \
+      --enable-manual \
+      --enable-versioned-symbols \
+      --enable-threaded-resolver \
+      --without-libidn \
+      --with-random=/dev/urandom \
+      --with-ca-bundle=/etc/ssl/certs/ca-certificates.crt
+  make
+}
+
+package() {
+  cd "$srcdir/$pkgname-$pkgver"
+
+  make DESTDIR="$pkgdir" install
+
+  # license
+  install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
+
+  # devel
+  install -Dm644 docs/libcurl/libcurl.m4 "$pkgdir/usr/share/aclocal/libcurl.m4"
+  mv "$pkgdir/usr/include/curl/curlbuild.h" "$pkgdir/usr/include/curl/$_curlbuild"
+  install -m644 "$srcdir/curlbuild.h" "$pkgdir/usr/include/curl/curlbuild.h"
+}

Deleted: core-x86_64/curlbuild.h
===================================================================
--- core-x86_64/curlbuild.h	2011-11-23 02:58:15 UTC (rev 143108)
+++ core-x86_64/curlbuild.h	2011-11-23 02:58:17 UTC (rev 143109)
@@ -1,9 +0,0 @@
-#include <bits/wordsize.h>
-
-#if __WORDSIZE == 32
-#include "curlbuild-32.h"
-#elif __WORDSIZE == 64
-#include "curlbuild-64.h"
-#else
-#error "Unknown word size"
-#endif

Copied: curl/repos/core-x86_64/curlbuild.h (from rev 143105, curl/repos/testing-x86_64/curlbuild.h)
===================================================================
--- core-x86_64/curlbuild.h	                        (rev 0)
+++ core-x86_64/curlbuild.h	2011-11-23 02:58:17 UTC (rev 143109)
@@ -0,0 +1,9 @@
+#include <bits/wordsize.h>
+
+#if __WORDSIZE == 32
+#include "curlbuild-32.h"
+#elif __WORDSIZE == 64
+#include "curlbuild-64.h"
+#else
+#error "Unknown word size"
+#endif

Copied: curl/repos/core-x86_64/fix-J-with-O-regression.patch (from rev 143105, curl/repos/testing-x86_64/fix-J-with-O-regression.patch)
===================================================================
--- core-x86_64/fix-J-with-O-regression.patch	                        (rev 0)
+++ core-x86_64/fix-J-with-O-regression.patch	2011-11-23 02:58:17 UTC (rev 143109)
@@ -0,0 +1,142 @@
+From c532604b137cae2e2814280778f914e4cd0460d1 Mon Sep 17 00:00:00 2001
+From: Daniel Stenberg <daniel at haxx.se>
+Date: Sun, 20 Nov 2011 23:33:46 +0100
+Subject: [PATCH] -J -O: use -O name if no Content-Disposition header comes!
+
+A regression between 7.22.0 and 7.23.0 -- downloading a file with the
+flags -O and -J results in the content being written to stdout if and
+only if there was no Content-Disposition header in the http response. If
+there is a C-D header with a filename attribute, the output is correctly
+written.
+
+Reported by: Dave Reisner
+Bug: http://curl.haxx.se/mail/archive-2011-11/0030.html
+---
+ src/tool_cb_hdr.c      |    3 +-
+ src/tool_operate.c     |   59 ++++++++++++++++++++++----------------------
+ src/tool_operhlp.c     |   18 +++++++++++++
+ tests/data/Makefile.am |    2 +-
+ tests/data/test1210    |   63 ++++++++++++++++++++++++++++++++++++++++++++++++
+ 5 files changed, 112 insertions(+), 33 deletions(-)
+ create mode 100644 tests/data/test1210
+
+diff --git a/src/tool_cb_hdr.c b/src/tool_cb_hdr.c
+index fb24b45..dea7338 100644
+--- a/src/tool_cb_hdr.c
++++ b/src/tool_cb_hdr.c
+@@ -66,8 +66,7 @@ size_t tool_header_cb(void *ptr, size_t size, size_t nmemb, void *userdata)
+   }
+ #endif
+ 
+-  if(!outs->filename && (cb > 20) &&
+-    checkprefix("Content-disposition:", str)) {
++  if((cb > 20) && checkprefix("Content-disposition:", str)) {
+     const char *p = str + 20;
+ 
+     /* look for the 'filename=' parameter
+diff --git a/src/tool_operate.c b/src/tool_operate.c
+index 7ab815f..1e88120 100644
+--- a/src/tool_operate.c
++++ b/src/tool_operate.c
+@@ -576,41 +576,40 @@ int operate(struct Configurable *config, int argc, argv_item_t argv[])
+ 
+           if((urlnode->flags & GETOUT_USEREMOTE)
+              && config->content_disposition) {
+-            /* Our header callback sets the filename */
++            /* Our header callback MIGHT set the filename */
+             DEBUGASSERT(!outs.filename);
+           }
+-          else {
+-            if(config->resume_from_current) {
+-              /* We're told to continue from where we are now. Get the size
+-                 of the file as it is now and open it for append instead */
+-              struct_stat fileinfo;
+-              /* VMS -- Danger, the filesize is only valid for stream files */
+-              if(0 == stat(outfile, &fileinfo))
+-                /* set offset to current file size: */
+-                config->resume_from = fileinfo.st_size;
+-              else
+-                /* let offset be 0 */
+-                config->resume_from = 0;
+-            }
+ 
+-            if(config->resume_from) {
+-              /* open file for output: */
+-              FILE *file = fopen(outfile, config->resume_from?"ab":"wb");
+-              if(!file) {
+-                helpf(config->errors, "Can't open '%s'!\n", outfile);
+-                res = CURLE_WRITE_ERROR;
+-                goto quit_urls;
+-              }
+-              outs.fopened = TRUE;
+-              outs.stream = file;
+-              outs.init = config->resume_from;
+-            }
+-            else {
+-              outs.stream = NULL; /* open when needed */
++          if(config->resume_from_current) {
++            /* We're told to continue from where we are now. Get the size
++               of the file as it is now and open it for append instead */
++            struct_stat fileinfo;
++            /* VMS -- Danger, the filesize is only valid for stream files */
++            if(0 == stat(outfile, &fileinfo))
++              /* set offset to current file size: */
++              config->resume_from = fileinfo.st_size;
++            else
++              /* let offset be 0 */
++              config->resume_from = 0;
++          }
++
++          if(config->resume_from) {
++            /* open file for output: */
++            FILE *file = fopen(outfile, config->resume_from?"ab":"wb");
++            if(!file) {
++              helpf(config->errors, "Can't open '%s'!\n", outfile);
++              res = CURLE_WRITE_ERROR;
++              goto quit_urls;
+             }
+-            outs.filename = outfile;
+-            outs.s_isreg = TRUE;
++            outs.fopened = TRUE;
++            outs.stream = file;
++            outs.init = config->resume_from;
++          }
++          else {
++            outs.stream = NULL; /* open when needed */
+           }
++          outs.filename = outfile;
++          outs.s_isreg = TRUE;
+         }
+ 
+         if(uploadfile && !stdin_upload(uploadfile)) {
+diff --git a/src/tool_operhlp.c b/src/tool_operhlp.c
+index 808d2d5..4c1697b 100644
+--- a/src/tool_operhlp.c
++++ b/src/tool_operhlp.c
+@@ -178,6 +178,24 @@ CURLcode get_url_file_name(char **filename, const char *url)
+         return CURLE_OUT_OF_MEMORY;
+     }
+   }
++
++  /* in case we built debug enabled, we allow an environment variable
++   * named CURL_TESTDIR to prefix the given file name to put it into a
++   * specific directory
++   */
++#ifdef DEBUGBUILD
++  {
++    char *tdir = curlx_getenv("CURL_TESTDIR");
++    if(tdir) {
++      char buffer[512]; /* suitably large */
++      snprintf(buffer, sizeof(buffer), "%s/%s", tdir, *filename);
++      Curl_safefree(*filename);
++      *filename = strdup(buffer); /* clone the buffer */
++      curl_free(tdir);
++    }
++  }
++#endif
++
+   return CURLE_OK;
+ }
+ 
+-- 
+1.7.7.3



More information about the arch-commits mailing list