summaryrefslogtreecommitdiffstats
path: root/abs/core
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core')
-rw-r--r--abs/core/LinHES-config/09_mythvantge_runit_grub2
-rw-r--r--abs/core/LinHES-config/LinHES-release2
-rwxr-xr-xabs/core/LinHES-config/PKGBUILD19
-rw-r--r--abs/core/LinHES-config/config.install7
-rwxr-xr-xabs/core/LinHES-config/mv_fileshare.py1
-rw-r--r--abs/core/LinHES-config/mv_install.py23
-rwxr-xr-xabs/core/LinHES-system/PKGBUILD11
-rw-r--r--abs/core/LinHES-system/myth2mkv8
-rw-r--r--abs/core/LinHES-system/myth_status.py21
-rw-r--r--abs/core/aalib/PKGBUILD38
-rw-r--r--abs/core/alsa-lib/PKGBUILD12
-rw-r--r--abs/core/alsa-plugins/PKGBUILD12
-rwxr-xr-xabs/core/alsa-utils/90alsa13
-rw-r--r--abs/core/alsa-utils/PKGBUILD28
-rw-r--r--abs/core/apache/PKGBUILD43
-rw-r--r--abs/core/apache/apache-2.2-optionsbleed-CVE-2017-9798.patch21
-rw-r--r--abs/core/apache/apache.install16
-rw-r--r--abs/core/apache/httpd.logrotate3
-rw-r--r--abs/core/apache/httpd.service10
-rw-r--r--abs/core/apache/nohttp2forprefork.patch506
-rw-r--r--abs/core/apache/openssl-malloc-init.patch20
-rw-r--r--abs/core/apache/script_name.patch84
-rw-r--r--abs/core/apr-util/PKGBUILD49
-rw-r--r--abs/core/apr-util/buildconf_config.guess_sub_location.patch22
-rw-r--r--abs/core/apr-util/disable_failing_test.patch13
-rw-r--r--abs/core/apr-util/openssl-1.1.patch250
-rw-r--r--abs/core/apr/PKGBUILD52
-rw-r--r--abs/core/apr/dont_override_external_buildflags21
-rw-r--r--abs/core/apr/fix-apr.pc.patch20
-rw-r--r--abs/core/apr/fix_apr-config.patch33
-rw-r--r--abs/core/apr/omit_extra_libs.patch20
-rw-r--r--abs/core/apr/ship_find_apr.m4.patch25
-rw-r--r--abs/core/archlinux-xdg-menu/PKGBUILD34
-rw-r--r--abs/core/argon2/PKGBUILD47
-rw-r--r--abs/core/argon2/argon2.install6
-rw-r--r--abs/core/argon2/libargon2.pc11
-rw-r--r--abs/core/aspell/PKGBUILD13
-rw-r--r--abs/core/aspell/__changelog1
-rw-r--r--abs/core/aspell/aspell.install24
-rw-r--r--abs/core/aspell/gcc7fixes.patch37
-rw-r--r--abs/core/automake/PKGBUILD33
-rw-r--r--abs/core/automake/automake-1.15-dejagnu-testcase.patch49
-rw-r--r--abs/core/automake/automake.install22
-rw-r--r--abs/core/avahi/0001-avahi-python-Use-the-agnostic-DBM-interface.patch256
-rw-r--r--abs/core/avahi/PKGBUILD52
-rw-r--r--abs/core/avahi/__changelog2
-rw-r--r--abs/core/avahi/avahi.install7
-rw-r--r--abs/core/bash/PKGBUILD138
-rw-r--r--abs/core/bash/bash-4.3-old-memleak.patch24
-rw-r--r--abs/core/bash/bash.install16
-rw-r--r--abs/core/bash/privmode-setuid-fail.patch29
-rw-r--r--abs/core/bash/system.bashrc7
-rw-r--r--abs/core/bc/PKGBUILD28
-rw-r--r--abs/core/bc/bc-1.06.95-void_uninitialized.patch14
-rw-r--r--abs/core/bc/bc.install20
-rw-r--r--abs/core/binutils/0001-PR22741-objcopy-segfault-on-fuzzed-COFF-object.patch29
-rw-r--r--abs/core/binutils/0002-PR22829-objcopy-strip-removes-PT_GNU_RELRO-from-lld-.patch145
-rw-r--r--abs/core/binutils/0003-PR22836-r-s-doesnt-work-with-g3-using-GCC-7.patch233
-rw-r--r--abs/core/binutils/0004-PR22868-Fix-case-where-IR-file-provides-symbol-visibility.patch275
-rw-r--r--abs/core/binutils/PKGBUILD91
-rw-r--r--abs/core/binutils/binutils-e9c1bdad.patch78
-rw-r--r--abs/core/binutils/binutils.install17
-rwxr-xr-xabs/core/ceton_infinitv/PKGBUILD6
-rw-r--r--abs/core/cmake/PKGBUILD25
-rw-r--r--abs/core/cmake/__changelog1
-rw-r--r--abs/core/cmake/cmake-3.10-boost-1.66-support.patch259
-rw-r--r--abs/core/cmake/rebuild.list3
-rw-r--r--abs/core/coreutils/PKGBUILD27
-rw-r--r--abs/core/coreutils/coreutils.install17
-rw-r--r--abs/core/cryptsetup/PKGBUILD52
-rw-r--r--abs/core/cryptsetup/hooks-encrypt (renamed from abs/core/cryptsetup/encrypt_hook)13
-rw-r--r--abs/core/cryptsetup/install-encrypt (renamed from abs/core/cryptsetup/encrypt_install)7
-rw-r--r--abs/core/cryptsetup/install-sd-encrypt (renamed from abs/core/cryptsetup/sd-encrypt)19
-rw-r--r--abs/core/curl/PKGBUILD36
-rw-r--r--abs/core/curl/curlbuild.h9
-rw-r--r--abs/core/cython/PKGBUILD35
-rw-r--r--abs/core/cython/__changelog1
-rw-r--r--abs/core/dbus-python/PKGBUILD65
-rw-r--r--abs/core/dbus-python/__changelog1
-rw-r--r--abs/core/dbus/PKGBUILD87
-rw-r--r--abs/core/dbus/dbus.sysusers5
-rw-r--r--abs/core/dialog/PKGBUILD35
-rw-r--r--abs/core/ding-libs/PKGBUILD37
-rw-r--r--abs/core/dirmngr/PKGBUILD30
-rw-r--r--abs/core/dirmngr/dirmngr.install20
-rw-r--r--abs/core/dnsutils/PKGBUILD52
-rw-r--r--abs/core/dnsutils/remove-bind.patch25
-rw-r--r--abs/core/docutils/PKGBUILD32
-rw-r--r--abs/core/fakeroot/PKGBUILD63
-rw-r--r--abs/core/fakeroot/__changelog1
-rw-r--r--abs/core/fakeroot/fakeroot.install6
-rw-r--r--abs/core/fakeroot/silence-dlerror.patch17
-rw-r--r--abs/core/ffmpeg/PKGBUILD41
-rw-r--r--abs/core/ffmpeg/fs56089.patch84
-rw-r--r--abs/core/freetype2/0001-Enable-table-validation-modules.patch28
-rw-r--r--abs/core/freetype2/0001-psaux-Correctly-handle-Flex-features-52846.patch38
-rw-r--r--abs/core/freetype2/0002-Enable-infinality-subpixel-hinting.patch (renamed from abs/core/freetype2/0003-Enable-infinality-subpixel-hinting.patch)15
-rw-r--r--abs/core/freetype2/0002-Enable-subpixel-rendering.patch25
-rw-r--r--abs/core/freetype2/0003-Enable-long-PCF-family-names.patch28
-rw-r--r--abs/core/freetype2/PKGBUILD81
-rw-r--r--abs/core/fribidi/PKGBUILD38
-rw-r--r--abs/core/func/PKGBUILD6
-rw-r--r--abs/core/gawk/PKGBUILD17
-rw-r--r--abs/core/gawk/gawk.install22
-rw-r--r--abs/core/gcc/PKGBUILD494
-rw-r--r--abs/core/gcc/Unlink-the-response-file.patch54
-rw-r--r--abs/core/gcc/c8910
-rw-r--r--abs/core/gcc/c9910
-rw-r--r--abs/core/gcc/gcc-ada.install20
-rw-r--r--abs/core/gcc/gcc-fortran.install16
-rw-r--r--abs/core/gcc/gcc-go.install20
-rw-r--r--abs/core/gcc/gcc-libs.install16
-rw-r--r--abs/core/gcc/gcc.install20
-rw-r--r--abs/core/gdb/PKGBUILD74
-rw-r--r--abs/core/gdb/gdb.install18
-rw-r--r--abs/core/gettext/PKGBUILD9
-rw-r--r--abs/core/gettext/gettext.install22
-rw-r--r--abs/core/ghostscript/PKGBUILD171
-rw-r--r--abs/core/ghostscript/add_gserrors_h.diff43
-rw-r--r--abs/core/ghostscript/bug_696246.diff203
-rw-r--r--abs/core/ghostscript/fix_check_for_using_shared_freetype_lib.diff30
-rw-r--r--abs/core/ghostscript/ghostscript-9.22-restore-flushpage.patch28
-rw-r--r--abs/core/ghostscript/ghostscript-sys-zlib.patch25
-rw-r--r--abs/core/glibc/PKGBUILD241
-rw-r--r--abs/core/glibc/bz20338.patch114
-rw-r--r--abs/core/glibc/glibc-2.22-CVE-2015-7547.patch572
-rw-r--r--abs/core/glibc/glibc-2.22-roundup.patch2747
-rw-r--r--abs/core/glibc/glibc.install15
-rw-r--r--abs/core/glibc/lib32-glibc.conf1
-rw-r--r--abs/core/gnupg/PKGBUILD51
-rw-r--r--abs/core/gnupg/install43
-rw-r--r--abs/core/gnupg/protect-tool-env.patch28
-rw-r--r--abs/core/gnutls/PKGBUILD21
-rw-r--r--abs/core/gpm/PKGBUILD21
-rw-r--r--abs/core/gpm/__changelog1
-rw-r--r--abs/core/gpm/gpm-1.20.7-glibc-2.26-1.patch58
-rw-r--r--abs/core/gpm/gpm.install16
-rwxr-xr-xabs/core/gpm/gpm.sh2
-rw-r--r--abs/core/gssproxy/PKGBUILD86
-rw-r--r--abs/core/gzip/PKGBUILD47
-rw-r--r--abs/core/gzip/gzip.install15
-rw-r--r--abs/core/imagemagick/PKGBUILD190
-rw-r--r--abs/core/imagemagick/arch-fonts.diff107
-rw-r--r--abs/core/imagemagick/perlmagick.rpath.patch11
-rw-r--r--abs/core/imap/1006_openssl1.1_autoverify.patch58
-rw-r--r--abs/core/imap/PKGBUILD40
-rw-r--r--abs/core/imap/imap.install40
-rw-r--r--abs/core/inetutils/PKGBUILD25
-rw-r--r--abs/core/inetutils/ftpd.service2
-rw-r--r--abs/core/inetutils/inetutils.install19
-rw-r--r--abs/core/iproute2/PKGBUILD73
-rw-r--r--abs/core/iproute2/__changelog1
-rw-r--r--abs/core/iputils/PKGBUILD43
-rw-r--r--abs/core/iputils/iputils.install1
-rw-r--r--abs/core/jade/PKGBUILD41
l---------abs/core/jade/jade-1.2.1-8.src.tar.gz1
-rw-r--r--abs/core/krb5/PKGBUILD96
-rw-r--r--abs/core/krb5/krb5-1.10.1-gcc47.patch11
-rw-r--r--abs/core/krb5/krb5-config_LDFLAGS.patch12
-rw-r--r--abs/core/krb5/krb5-kadmind40
-rw-r--r--abs/core/krb5/krb5-kadmind.service2
-rw-r--r--abs/core/krb5/krb5-kdc40
-rw-r--r--abs/core/krb5/krb5-kdc.service2
-rw-r--r--abs/core/krb5/krb5-kpropd40
-rw-r--r--abs/core/krb5/krb5-kpropd.service2
-rw-r--r--abs/core/krb5/krb5-kpropd@.service2
-rw-r--r--abs/core/lame/PKGBUILD14
-rw-r--r--abs/core/lapack/LICENSE.blas19
-rw-r--r--abs/core/lapack/Makefile.blas148
-rw-r--r--abs/core/lapack/Makefile.lapack411
-rw-r--r--abs/core/lapack/PKGBUILD54
-rw-r--r--abs/core/lapack/lapack-3.1.1-make.inc.patch23
-rw-r--r--abs/core/ldns/PKGBUILD18
-rw-r--r--abs/core/ldns/pc.patch60
-rw-r--r--abs/core/ldns/perl-recent.patch12
-rw-r--r--abs/core/less/PKGBUILD4
-rw-r--r--abs/core/libassuan/PKGBUILD35
-rw-r--r--abs/core/libassuan/libassuan.install20
-rw-r--r--abs/core/libcaca/PKGBUILD31
-rw-r--r--abs/core/libcec/PKGBUILD8
-rw-r--r--abs/core/libdrm/PKGBUILD44
-rw-r--r--abs/core/libdrm/fix_mistake_in_initial_hole_size_calculation.diff39
-rw-r--r--abs/core/libdrm/no-drmdevice-test.diff9
-rw-r--r--abs/core/libedit/PKGBUILD21
-rw-r--r--abs/core/libevent/PKGBUILD30
-rw-r--r--abs/core/libgcrypt/PKGBUILD50
-rw-r--r--abs/core/libgcrypt/libgcrypt.install20
-rw-r--r--abs/core/libglvnd/LICENSE26
-rw-r--r--abs/core/libglvnd/PKGBUILD33
-rw-r--r--abs/core/libglvnd/__changelog1
-rw-r--r--abs/core/libgpg-error/PKGBUILD23
-rw-r--r--abs/core/libgusb/PKGBUILD49
-rw-r--r--abs/core/libidn/PKGBUILD42
-rw-r--r--abs/core/libidn/gcc7_buildfix.diff327
-rw-r--r--abs/core/libidn/libidn.install19
-rw-r--r--abs/core/libidn2/PKGBUILD40
-rw-r--r--abs/core/libksba/PKGBUILD21
-rw-r--r--abs/core/libksba/libksba.install20
-rw-r--r--abs/core/libmpc/PKGBUILD17
-rw-r--r--abs/core/libmpc/libmpc-0.9-configure_cflags_egrep_issue.patch63
-rw-r--r--abs/core/libmpc/libmpc.install20
-rw-r--r--abs/core/libnghttp2/PKGBUILD39
-rw-r--r--abs/core/libpsl/PKGBUILD47
-rw-r--r--abs/core/libsasl/0003_saslauthd_mdoc.patch35
-rw-r--r--abs/core/libsasl/0012_xopen_crypt_prototype.patch20
-rw-r--r--abs/core/libsasl/0016_pid_file_lock_creation_mask.patch27
-rw-r--r--abs/core/libsasl/0018_auth_rimap_quotes.patch35
-rw-r--r--abs/core/libsasl/0019_ldap_deprecated.patch22
-rw-r--r--abs/core/libsasl/0022_gcc4.4_preprocessor_syntax.patch26
-rw-r--r--abs/core/libsasl/0027_db5_support.patch24
-rw-r--r--abs/core/libsasl/CVE-2013-4122.patch116
-rw-r--r--abs/core/libsasl/PKGBUILD142
-rw-r--r--abs/core/libsasl/cyrus-sasl-2.1.19-checkpw.c.patch170
-rw-r--r--abs/core/libsasl/cyrus-sasl-2.1.22-automake-1.10.patch94
-rw-r--r--abs/core/libsasl/cyrus-sasl-2.1.22-crypt.patch71
-rw-r--r--abs/core/libsasl/cyrus-sasl-2.1.23-authd-fix.patch28
-rw-r--r--abs/core/libsasl/cyrus-sasl-2.1.26-size_t.patch11
-rw-r--r--abs/core/libsasl/cyrus-sasl-2.1.27-openssl-1.1.0.patch435
-rw-r--r--abs/core/libsasl/cyrus-sasl-gssapi.patch16
-rw-r--r--abs/core/libsasl/cyrus-sasl-sql.patch39
-rw-r--r--abs/core/libsasl/fix-pkgconfig.patch27
-rw-r--r--abs/core/libsasl/saslauthd49
-rw-r--r--abs/core/libsasl/saslauthd.service11
-rw-r--r--abs/core/libsasl/tmpfiles.conf1
-rw-r--r--abs/core/libsm/PKGBUILD19
-rw-r--r--abs/core/libssh2/PKGBUILD14
-rw-r--r--abs/core/libstatgrab/PKGBUILD22
-rw-r--r--abs/core/libstatgrab/libstatgrab.changelog10
-rw-r--r--abs/core/libtasn1/PKGBUILD16
-rw-r--r--abs/core/libtasn1/libtasn1.install18
-rw-r--r--abs/core/libtirpc/PKGBUILD40
-rw-r--r--abs/core/libtirpc/libtirpc-0.2.1-fortify.patch18
-rw-r--r--abs/core/libtirpc/libtirpc-0.2.3rc1.patch637
-rw-r--r--abs/core/libtirpc/libtirpc-fix-segfault-0.2.2.patch28
-rw-r--r--abs/core/libtool/PKGBUILD50
-rw-r--r--abs/core/libtool/libtool.install20
-rw-r--r--abs/core/libusb/PKGBUILD19
-rw-r--r--abs/core/libxml2/PKGBUILD64
-rw-r--r--abs/core/libxml2/libxml2-2.9.4-remove-pyverify_fd.patch12
-rw-r--r--abs/core/libxslt/CVE-2011-1202.patch56
-rw-r--r--abs/core/libxslt/PKGBUILD57
-rw-r--r--abs/core/libxtst/PKGBUILD18
-rw-r--r--abs/core/lighttpd/PKGBUILD6
-rwxr-xr-xabs/core/linhes-theme/PKGBUILD19
-rw-r--r--abs/core/linhes-theme/base.xml.patch131
-rw-r--r--abs/core/linhes-theme/config-ui.xml.patch279
-rw-r--r--abs/core/linhes-theme/gg-left-arrow-large.pngbin0 -> 2082 bytes
-rw-r--r--abs/core/linhes-theme/gg-right-arrow-large.pngbin0 -> 2047 bytes
-rw-r--r--abs/core/linhes-theme/recordings-ui.xml.patch12
-rw-r--r--abs/core/linhes-theme/schedule-ui.xml.patch98
-rw-r--r--abs/core/linhes-theme/status-ui.xml.patch28
-rw-r--r--abs/core/linhes-theme/video-ui.xml.patch180
-rw-r--r--abs/core/linux-api-headers/PKGBUILD39
-rw-r--r--abs/core/linux/PKGBUILD6
-rw-r--r--abs/core/linux/config8
-rw-r--r--abs/core/linux/linux.install.pkg2
-rw-r--r--abs/core/lirc/PKGBUILD47
-rw-r--r--abs/core/lirc/__changelog4
-rw-r--r--abs/core/lirc/lirc-0.10-build-fix.patch30
-rw-r--r--abs/core/lirc/lirc.install13
-rw-r--r--abs/core/lockdev/PKGBUILD38
-rw-r--r--abs/core/lockdev/build.patch30
-rw-r--r--abs/core/lockdev/gcc-4.7.patch18
-rw-r--r--abs/core/lsof/PKGBUILD6
-rw-r--r--abs/core/lvm2/PKGBUILD122
-rw-r--r--abs/core/lvm2/dmeventd.service14
-rw-r--r--abs/core/lvm2/dmeventd.socket11
-rw-r--r--abs/core/lvm2/lvm-monitoring.service17
-rw-r--r--abs/core/lvm2/lvm2.conf2
-rw-r--r--abs/core/lvm2/lvm2.install9
-rw-r--r--abs/core/lvm2/lvm2_hook13
-rw-r--r--abs/core/lvm2/lvm2_install23
-rw-r--r--abs/core/lvm2/lvmetad.service16
-rw-r--r--abs/core/lvm2/lvmetad.socket10
-rw-r--r--abs/core/lvm2/sd-lvm231
-rw-r--r--abs/core/lvm2/sd-lvm2_install49
-rw-r--r--abs/core/make/PKGBUILD15
-rw-r--r--abs/core/make/guile-2.2.patch15
-rw-r--r--abs/core/mesa-demos/PKGBUILD27
-rw-r--r--abs/core/mesa/0001-Fix-linkage-against-shared-glapi.patch26
-rw-r--r--abs/core/mesa/0001-glvnd-fix-gl-dot-pc.patch (renamed from abs/core/mesa/0002-glvnd-fix-gl-dot-pc.patch)0
-rw-r--r--abs/core/mesa/PKGBUILD43
-rw-r--r--abs/core/mfdb-json-git/PKGBUILD32
-rw-r--r--abs/core/mpfr/PKGBUILD33
-rw-r--r--abs/core/mpfr/mpfr-3.1.0.p10.patch1896
-rw-r--r--abs/core/mpfr/mpfr-3.1.6-p1.patch285
-rw-r--r--abs/core/mpfr/mpfr.install20
-rw-r--r--abs/core/mplayer-wrapper/PKGBUILD4
-rw-r--r--abs/core/mplayer-wrapper/mplayer-wrapper.pl5
-rw-r--r--abs/core/mplayer/PKGBUILD97
-rw-r--r--abs/core/mplayer/cdio-includes.patch43
-rw-r--r--abs/core/mplayer/mplayer.pngbin1982 -> 0 bytes
-rw-r--r--abs/core/mysql/PKGBUILD8
-rw-r--r--abs/core/mythinstall/PKGBUILD2
-rw-r--r--abs/core/mythtv/stable-29/git_src/git_hash2
-rw-r--r--abs/core/mythtv/stable-29/git_src/git_hash_web2
-rw-r--r--abs/core/mythtv/stable-29/mythplugins/PKGBUILD25
-rw-r--r--abs/core/mythtv/stable-29/mythplugins/mythburn.cpp-python2.patch13
-rw-r--r--abs/core/mythtv/stable-29/mythtv/0259-0117-UI-Provide-dbase-cache-for-RegisterKey-and-RegisterJ.patch276
-rw-r--r--abs/core/mythtv/stable-29/mythtv/PKGBUILD22
-rw-r--r--abs/core/mythtv/stable-29/mythtv/fixTranslations.patch91
-rw-r--r--abs/core/mythtv/stable-29/mythtv/mythfrontend_en_us.ts_Title_Case.patch2498
-rw-r--r--abs/core/mythtv/stable-29/mythweb/PKGBUILD10
-rw-r--r--abs/core/mythtv/stable-29/mythweb/video.css.patch98
-rw-r--r--abs/core/nano/PKGBUILD5
-rw-r--r--abs/core/ncurses/PKGBUILD66
-rw-r--r--abs/core/nfs-utils/PKGBUILD182
-rw-r--r--abs/core/nfs-utils/blkmapd.service11
-rw-r--r--abs/core/nfs-utils/exports15
-rw-r--r--abs/core/nfs-utils/id_resolver.conf10
-rw-r--r--abs/core/nfs-utils/idmapd.conf14
-rw-r--r--abs/core/nfs-utils/nfs40
-rw-r--r--abs/core/nfs-utils/nfs-common.conf40
-rw-r--r--abs/core/nfs-utils/nfs-server.conf29
-rw-r--r--abs/core/nfs-utils/nfs-utils-1.1.4-mtab-sym.patch39
-rw-r--r--abs/core/nfs-utils/nfs-utils-1.1.4-no-exec.patch15
-rw-r--r--abs/core/nfs-utils/nfs-utils.conf1
-rw-r--r--abs/core/nfs-utils/nfs-utils.install32
-rw-r--r--abs/core/nfs-utils/nfsd.service16
-rw-r--r--abs/core/nfs-utils/proc-fs-nfsd.mount8
-rw-r--r--abs/core/nfs-utils/rpc-gssd.service13
-rw-r--r--abs/core/nfs-utils/rpc-idmapd.service13
-rw-r--r--abs/core/nfs-utils/rpc-mountd.service12
-rw-r--r--abs/core/nfs-utils/rpc-statd.service13
-rw-r--r--abs/core/nfs-utils/rpc-svcgssd.service12
-rw-r--r--abs/core/nfs-utils/start-statd.patch10
-rw-r--r--abs/core/nfs-utils/var-lib-nfs-rpc_pipefs.mount7
-rw-r--r--abs/core/npth/PKGBUILD34
-rw-r--r--abs/core/ntp/PKGBUILD67
-rw-r--r--abs/core/ntp/install37
-rw-r--r--abs/core/ntp/logrotate.d4
-rw-r--r--abs/core/ntp/ntp.conf31
-rw-r--r--abs/core/ntp/ntp.install5
-rwxr-xr-xabs/core/ntp/ntpd47
-rw-r--r--abs/core/ntp/ntpd.conf5
-rw-r--r--abs/core/ntp/ntpd.service9
-rwxr-xr-xabs/core/ntp/ntpdate29
-rw-r--r--abs/core/ntp/ntpdate.service12
-rw-r--r--abs/core/nvidia-304xx/PKGBUILD2
-rw-r--r--abs/core/nvidia-340xx-utils/PKGBUILD38
-rw-r--r--abs/core/nvidia-340xx-utils/nvidia-340xx-utils.install3
-rw-r--r--abs/core/nvidia-340xx-utils/nvidia-340xx-utils.sysusers1
-rw-r--r--abs/core/nvidia-340xx-utils/nvidia-drm-outputclass.conf1
-rw-r--r--abs/core/nvidia-340xx/PKGBUILD19
-rw-r--r--abs/core/nvidia-340xx/kernel-4.14.patch29
-rw-r--r--abs/core/nvidia-utils/PKGBUILD29
-rw-r--r--abs/core/nvidia-utils/nvidia-drm-outputclass.conf1
-rw-r--r--abs/core/nvidia-utils/nvidia-utils.install3
-rw-r--r--abs/core/nvidia-utils/nvidia-utils.sysusers1
-rw-r--r--abs/core/nvidia/PKGBUILD22
-rw-r--r--abs/core/nvidia/fix-abi.patch12
-rw-r--r--abs/core/nvidia/kernel-4.16.patch33
-rw-r--r--abs/core/openldap/PKGBUILD72
-rw-r--r--abs/core/openldap/openldap.install21
-rw-r--r--abs/core/openldap/openldap.sysusers1
-rw-r--r--abs/core/openldap/openldap.tmpfiles3
-rw-r--r--abs/core/openldap/slapd.tmpfiles1
-rw-r--r--abs/core/openssh/PKGBUILD46
-rw-r--r--abs/core/openssh/openssl-1.1.0.patch1982
-rw-r--r--abs/core/openssh/sshd@.service1
-rw-r--r--abs/core/openssl-1.0/PKGBUILD88
-rw-r--r--abs/core/openssl-1.0/no-rpath.patch (renamed from abs/core/openssl/no-rpath.patch)0
-rw-r--r--abs/core/openssl-1.0/openssl-1.0-versioned-symbols.patch4667
-rw-r--r--abs/core/openssl-1.0/ssl3-test-failure.patch (renamed from abs/core/openssl/ssl3-test-failure.patch)0
-rw-r--r--abs/core/openssl/PKGBUILD39
-rw-r--r--abs/core/openssl/ca-dir.patch44
-rw-r--r--abs/core/pacman/0001-libmakepkg-fix-is_array-function.patch32
-rw-r--r--abs/core/pacman/PKGBUILD31
-rw-r--r--abs/core/pacman/__changelog3
-rw-r--r--abs/core/pacman/makepkg.conf6
-rw-r--r--abs/core/pacman/pacman.cron20
-rw-r--r--abs/core/pacman/pacman.install18
-rw-r--r--abs/core/pam/PKGBUILD2
-rw-r--r--abs/core/pambase/PKGBUILD14
-rw-r--r--abs/core/pambase/system-login1
-rw-r--r--abs/core/parted/PKGBUILD21
-rw-r--r--abs/core/parted/parted-735669-fat16-crash-v1.patch193
-rw-r--r--abs/core/parted/parted.install18
-rw-r--r--abs/core/pcre/01-CVE-2016-1283.patch18
-rw-r--r--abs/core/pcre/PKGBUILD18
-rw-r--r--abs/core/pcre2/PKGBUILD45
-rw-r--r--abs/core/perl-class-data-inheritable/PKGBUILD27
-rw-r--r--abs/core/perl-exception-class/PKGBUILD41
-rw-r--r--abs/core/perl-params-validationcompiler/PKGBUILD32
-rw-r--r--abs/core/perl/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch83
-rw-r--r--abs/core/perl/CVE-2016-2381_duplicate_env.diff104
-rw-r--r--abs/core/perl/ChangeLog66
-rw-r--r--abs/core/perl/PKGBUILD243
-rw-r--r--abs/core/perl/detect-old-perl-modules.hook10
-rw-r--r--abs/core/perl/detect-old-perl-modules.sh36
-rw-r--r--abs/core/perl/digest_eval_hole.diff61
-rw-r--r--abs/core/perl/fix-h2ph-and-tests.patch104
-rwxr-xr-xabs/core/perl/generate-rebuild-list.sh11
-rwxr-xr-xabs/core/perl/patchprov259
-rw-r--r--abs/core/perl/perl-binary-module-dependency-1.template5
-rw-r--r--abs/core/perl/perl.install10
-rw-r--r--abs/core/perl/perlbin.csh2
-rw-r--r--abs/core/perl/perlbin.fish10
-rwxr-xr-xabs/core/perl/perlbin.sh2
-rw-r--r--abs/core/perl/provides.pl299
-rw-r--r--abs/core/perl/upgpkg4
-rw-r--r--abs/core/perl_modules/libxml-perl/PKGBUILD35
-rw-r--r--abs/core/perl_modules/perl-algorithm-diff/PKGBUILD37
-rw-r--r--abs/core/perl_modules/perl-alien-sdl/PKGBUILD36
-rw-r--r--abs/core/perl_modules/perl-appconfig/PKGBUILD2
-rw-r--r--abs/core/perl_modules/perl-archive-extract/PKGBUILD43
-rw-r--r--abs/core/perl_modules/perl-archive-zip/PKGBUILD36
-rw-r--r--abs/core/perl_modules/perl-astro-suntime/PKGBUILD64
-rw-r--r--abs/core/perl_modules/perl-b-hooks-endofscope/PKGBUILD41
-rw-r--r--abs/core/perl_modules/perl-capture-tiny/PKGBUILD15
-rw-r--r--abs/core/perl_modules/perl-cgi/PKGBUILD47
-rw-r--r--abs/core/perl_modules/perl-class-factory-util/PKGBUILD24
-rw-r--r--abs/core/perl_modules/perl-class-inspector/PKGBUILD30
-rw-r--r--abs/core/perl_modules/perl-class-load/PKGBUILD23
-rw-r--r--abs/core/perl_modules/perl-class-methodmaker/PKGBUILD31
-rw-r--r--abs/core/perl_modules/perl-class-singleton/PKGBUILD26
-rw-r--r--abs/core/perl_modules/perl-class-std-fast/PKGBUILD2
-rw-r--r--abs/core/perl_modules/perl-class-std/PKGBUILD2
-rw-r--r--abs/core/perl_modules/perl-compress-bzip2/PKGBUILD26
-rw-r--r--abs/core/perl_modules/perl-config-simple/PKGBUILD48
-rw-r--r--abs/core/perl_modules/perl-convert-binhex/PKGBUILD16
-rw-r--r--abs/core/perl_modules/perl-cpan-meta/PKGBUILD44
-rw-r--r--abs/core/perl_modules/perl-crypt-ssleay/PKGBUILD31
-rw-r--r--abs/core/perl_modules/perl-data-dump/PKGBUILD2
-rw-r--r--abs/core/perl_modules/perl-data-optlist/PKGBUILD55
-rw-r--r--abs/core/perl_modules/perl-data-uuid/PKGBUILD67
-rw-r--r--abs/core/perl_modules/perl-date-manip/PKGBUILD32
-rw-r--r--abs/core/perl_modules/perl-datetime-format-builder/PKGBUILD8
-rw-r--r--abs/core/perl_modules/perl-datetime-format-iso8601/PKGBUILD15
-rw-r--r--abs/core/perl_modules/perl-datetime-format-mail/PKGBUILD27
-rw-r--r--abs/core/perl_modules/perl-datetime-format-sqlite/PKGBUILD50
-rw-r--r--abs/core/perl_modules/perl-datetime-format-strptime/ChangeLog7
-rw-r--r--abs/core/perl_modules/perl-datetime-format-strptime/PKGBUILD45
-rw-r--r--abs/core/perl_modules/perl-datetime-format-strptime/__changelog1
-rw-r--r--abs/core/perl_modules/perl-datetime-format-w3cdtf/PKGBUILD31
-rw-r--r--abs/core/perl_modules/perl-datetime-locale/PKGBUILD25
-rw-r--r--abs/core/perl_modules/perl-datetime-timezone/PKGBUILD21
-rw-r--r--abs/core/perl_modules/perl-datetime/PKGBUILD45
-rw-r--r--abs/core/perl_modules/perl-dbd-mysql/PKGBUILD45
-rw-r--r--abs/core/perl_modules/perl-dbd-sqlite/PKGBUILD37
-rw-r--r--abs/core/perl_modules/perl-dbi-shell/PKGBUILD28
-rw-r--r--abs/core/perl_modules/perl-dbi/PKGBUILD36
-rw-r--r--abs/core/perl_modules/perl-devel-checklib/PKGBUILD32
-rw-r--r--abs/core/perl_modules/perl-devel-globaldestruction/PKGBUILD30
-rw-r--r--abs/core/perl_modules/perl-devel-stacktrace/PKGBUILD40
-rw-r--r--abs/core/perl_modules/perl-device-serialport/PKGBUILD29
-rw-r--r--abs/core/perl_modules/perl-digest-sha1/PKGBUILD33
-rw-r--r--abs/core/perl_modules/perl-dist-checkconflicts/PKGBUILD56
-rw-r--r--abs/core/perl_modules/perl-email-date-format/PKGBUILD20
-rw-r--r--abs/core/perl_modules/perl-encode-locale/PKGBUILD56
-rw-r--r--abs/core/perl_modules/perl-error/PKGBUILD26
-rw-r--r--abs/core/perl_modules/perl-error/perl-error-0.17016-2-x86_64-build.log.172
-rw-r--r--abs/core/perl_modules/perl-eval-closure/PKGBUILD38
-rw-r--r--abs/core/perl_modules/perl-expect/PKGBUILD31
-rw-r--r--abs/core/perl_modules/perl-exporter-tiny/PKGBUILD48
-rw-r--r--abs/core/perl_modules/perl-fcgi/PKGBUILD20
-rw-r--r--abs/core/perl_modules/perl-file-homedir/PKGBUILD57
-rw-r--r--abs/core/perl_modules/perl-file-listing/PKGBUILD49
-rw-r--r--abs/core/perl_modules/perl-file-remove/PKGBUILD29
-rw-r--r--abs/core/perl_modules/perl-file-sharedir-install/PKGBUILD32
-rw-r--r--abs/core/perl_modules/perl-file-sharedir/PKGBUILD11
-rw-r--r--abs/core/perl_modules/perl-file-slurp-tiny/PKGBUILD34
-rw-r--r--abs/core/perl_modules/perl-file-slurp/PKGBUILD32
-rw-r--r--abs/core/perl_modules/perl-file-which/PKGBUILD13
-rw-r--r--abs/core/perl_modules/perl-html-form/PKGBUILD8
-rw-r--r--abs/core/perl_modules/perl-html-parser/PKGBUILD40
-rw-r--r--abs/core/perl_modules/perl-html-tagset/PKGBUILD7
-rw-r--r--abs/core/perl_modules/perl-html-template/PKGBUILD30
-rw-r--r--abs/core/perl_modules/perl-html-tree/PKGBUILD31
-rw-r--r--abs/core/perl_modules/perl-http-cache-transparent/PKGBUILD28
-rw-r--r--abs/core/perl_modules/perl-http-cookies/PKGBUILD56
-rw-r--r--abs/core/perl_modules/perl-http-daemon/HTTP-Daemon-6.01-Add-IPv6-support.patch305
-rw-r--r--abs/core/perl_modules/perl-http-daemon/HTTP-Daemon-6.01-Handle-undef-and-empty-LocalAddr.patch48
-rw-r--r--abs/core/perl_modules/perl-http-daemon/PKGBUILD69
-rw-r--r--abs/core/perl_modules/perl-http-date/PKGBUILD57
-rw-r--r--abs/core/perl_modules/perl-http-message/PKGBUILD55
-rw-r--r--abs/core/perl_modules/perl-http-negotiate/PKGBUILD55
-rw-r--r--abs/core/perl_modules/perl-http-response-encoding/PKGBUILD29
-rw-r--r--abs/core/perl_modules/perl-http-server-simple/PKGBUILD23
-rw-r--r--abs/core/perl_modules/perl-image-size/PKGBUILD12
-rw-r--r--abs/core/perl_modules/perl-inc-latest/PKGBUILD31
-rw-r--r--abs/core/perl_modules/perl-io-captureoutput/PKGBUILD33
-rw-r--r--abs/core/perl_modules/perl-io-html/PKGBUILD32
-rw-r--r--abs/core/perl_modules/perl-io-socket-inet6/PKGBUILD16
-rw-r--r--abs/core/perl_modules/perl-io-socket-multicast/PKGBUILD2
-rw-r--r--abs/core/perl_modules/perl-io-socket-ssl/PKGBUILD28
-rw-r--r--abs/core/perl_modules/perl-io-tee/PKGBUILD26
-rw-r--r--abs/core/perl_modules/perl-io-tty/PKGBUILD29
-rw-r--r--abs/core/perl_modules/perl-ipc-run3/PKGBUILD41
-rw-r--r--abs/core/perl_modules/perl-ipc-system-simple/PKGBUILD24
-rw-r--r--abs/core/perl_modules/perl-json/PKGBUILD20
-rw-r--r--abs/core/perl_modules/perl-libwww/PKGBUILD69
-rw-r--r--abs/core/perl_modules/perl-lingua-en-numbers-ordinate/PKGBUILD22
-rw-r--r--abs/core/perl_modules/perl-lingua-preferred/PKGBUILD20
-rw-r--r--abs/core/perl_modules/perl-list-allutils/PKGBUILD39
-rw-r--r--abs/core/perl_modules/perl-list-compare/PKGBUILD43
-rw-r--r--abs/core/perl_modules/perl-list-moreutils-xs/PKGBUILD46
-rw-r--r--abs/core/perl_modules/perl-list-moreutils/PKGBUILD52
-rw-r--r--abs/core/perl_modules/perl-list-someutils/PKGBUILD38
-rw-r--r--abs/core/perl_modules/perl-list-utilsby/PKGBUILD44
-rw-r--r--abs/core/perl_modules/perl-locale-gettext/PKGBUILD25
-rw-r--r--abs/core/perl_modules/perl-locale-gettext/compatibility-with-POSIX-module.patch10
-rw-r--r--abs/core/perl_modules/perl-locale-maketext-lexicon/PKGBUILD18
-rw-r--r--abs/core/perl_modules/perl-log-dispatch/PKGBUILD66
-rw-r--r--abs/core/perl_modules/perl-lwp-mediatypes/PKGBUILD63
-rw-r--r--abs/core/perl_modules/perl-lwp-protocol-https/PKGBUILD38
-rw-r--r--abs/core/perl_modules/perl-lwp-protocol-https/certs.patch43
-rw-r--r--abs/core/perl_modules/perl-lwp-useragent-determined/PKGBUILD50
-rw-r--r--abs/core/perl_modules/perl-mailtools/PKGBUILD32
-rw-r--r--abs/core/perl_modules/perl-math-round/PKGBUILD8
-rw-r--r--abs/core/perl_modules/perl-mime-charset/PKGBUILD40
-rw-r--r--abs/core/perl_modules/perl-mime-lite/PKGBUILD29
-rw-r--r--abs/core/perl_modules/perl-mime-tools/PKGBUILD27
-rw-r--r--abs/core/perl_modules/perl-mime-types/PKGBUILD23
-rw-r--r--abs/core/perl_modules/perl-module-build/PKGBUILD18
-rw-r--r--abs/core/perl_modules/perl-module-implementation/PKGBUILD12
-rw-r--r--abs/core/perl_modules/perl-module-install/PKGBUILD32
-rw-r--r--abs/core/perl_modules/perl-module-runtime/PKGBUILD20
-rw-r--r--abs/core/perl_modules/perl-module-scandeps/PKGBUILD33
-rw-r--r--abs/core/perl_modules/perl-mro-compat/PKGBUILD47
-rw-r--r--abs/core/perl_modules/perl-namespace-autoclean/PKGBUILD35
-rw-r--r--abs/core/perl_modules/perl-namespace-clean/PKGBUILD50
-rw-r--r--abs/core/perl_modules/perl-net-http/PKGBUILD45
-rw-r--r--abs/core/perl_modules/perl-net-sftp-foreign/Changes69
-rw-r--r--abs/core/perl_modules/perl-net-sftp-foreign/PKGBUILD24
-rw-r--r--abs/core/perl_modules/perl-net-smtp-ssl/PKGBUILD27
-rw-r--r--abs/core/perl_modules/perl-net-ssleay/PKGBUILD59
-rw-r--r--abs/core/perl_modules/perl-net-upnp/PKGBUILD26
-rw-r--r--abs/core/perl_modules/perl-package-deprecationmanager/PKGBUILD67
-rw-r--r--abs/core/perl_modules/perl-package-stash-xs/PKGBUILD61
-rw-r--r--abs/core/perl_modules/perl-package-stash/PKGBUILD63
-rw-r--r--abs/core/perl_modules/perl-par-dist/PKGBUILD32
-rw-r--r--abs/core/perl_modules/perl-params-classify/PKGBUILD44
-rw-r--r--abs/core/perl_modules/perl-params-classify/op-sibling-fixes.patch79
-rw-r--r--abs/core/perl_modules/perl-params-util/PKGBUILD49
-rw-r--r--abs/core/perl_modules/perl-params-validate/PKGBUILD28
-rw-r--r--abs/core/perl_modules/perl-parse-recdescent/PKGBUILD26
-rw-r--r--abs/core/perl_modules/perl-parse-yapp/PKGBUILD27
-rw-r--r--abs/core/perl_modules/perl-path-class/PKGBUILD49
-rw-r--r--abs/core/perl_modules/perl-perl4-corelibs/PKGBUILD31
-rw-r--r--abs/core/perl_modules/perl-php-serialization/PKGBUILD66
-rw-r--r--abs/core/perl_modules/perl-proc-daemon/PKGBUILD63
-rw-r--r--abs/core/perl_modules/perl-proc-pid-file/PKGBUILD63
-rw-r--r--abs/core/perl_modules/perl-proc-processtable/PKGBUILD16
-rw-r--r--abs/core/perl_modules/perl-role-tiny/PKGBUILD44
-rw-r--r--abs/core/perl_modules/perl-sdl/PKGBUILD20
-rw-r--r--abs/core/perl_modules/perl-sgmls/PKGBUILD52
-rw-r--r--abs/core/perl_modules/perl-shell/PKGBUILD26
-rw-r--r--abs/core/perl_modules/perl-soap-lite/PKGBUILD4
-rw-r--r--abs/core/perl_modules/perl-socket6/PKGBUILD63
-rw-r--r--abs/core/perl_modules/perl-specio/PKGBUILD33
-rw-r--r--abs/core/perl_modules/perl-sub-exporter-progressive/PKGBUILD30
-rw-r--r--abs/core/perl_modules/perl-sub-exporter/PKGBUILD55
-rw-r--r--abs/core/perl_modules/perl-sub-identify/PKGBUILD34
-rw-r--r--abs/core/perl_modules/perl-sub-install/PKGBUILD63
-rw-r--r--abs/core/perl_modules/perl-sub-name/PKGBUILD33
-rw-r--r--abs/core/perl_modules/perl-sub-uplevel/PKGBUILD20
-rw-r--r--abs/core/perl_modules/perl-sys-cpu/PKGBUILD2
-rw-r--r--abs/core/perl_modules/perl-sys-meminfo/PKGBUILD2
-rw-r--r--abs/core/perl_modules/perl-sys-mmap/PKGBUILD50
-rw-r--r--abs/core/perl_modules/perl-template-toolkit/PKGBUILD8
-rw-r--r--abs/core/perl_modules/perl-term-progressbar/PKGBUILD32
-rw-r--r--abs/core/perl_modules/perl-term-readkey/PKGBUILD45
-rw-r--r--abs/core/perl_modules/perl-test-exception/PKGBUILD31
-rw-r--r--abs/core/perl_modules/perl-test-fatal/PKGBUILD63
-rw-r--r--abs/core/perl_modules/perl-test-pod/PKGBUILD32
-rw-r--r--abs/core/perl_modules/perl-test-requires/PKGBUILD31
-rw-r--r--abs/core/perl_modules/perl-test-warn/PKGBUILD22
-rw-r--r--abs/core/perl_modules/perl-text-charwidth/PKGBUILD38
-rw-r--r--abs/core/perl_modules/perl-text-iconv/PKGBUILD36
-rw-r--r--abs/core/perl_modules/perl-text-patch/PKGBUILD33
-rw-r--r--abs/core/perl_modules/perl-text-reform/PKGBUILD29
-rw-r--r--abs/core/perl_modules/perl-text-wrapi18n/PKGBUILD33
-rw-r--r--abs/core/perl_modules/perl-tie-simple/PKGBUILD8
-rw-r--r--abs/core/perl_modules/perl-time-format/PKGBUILD2
-rw-r--r--abs/core/perl_modules/perl-time-modules/PKGBUILD16
-rw-r--r--abs/core/perl_modules/perl-timedate/PKGBUILD32
-rw-r--r--abs/core/perl_modules/perl-tk-tablematrix/PKGBUILD41
-rw-r--r--abs/core/perl_modules/perl-tk/PKGBUILD37
-rw-r--r--abs/core/perl_modules/perl-tree-dag-node/PKGBUILD23
-rw-r--r--abs/core/perl_modules/perl-try-tiny/PKGBUILD57
-rw-r--r--abs/core/perl_modules/perl-unicode-linebreak/PKGBUILD39
-rw-r--r--abs/core/perl_modules/perl-unicode-map/PKGBUILD62
-rw-r--r--abs/core/perl_modules/perl-unicode-string/PKGBUILD35
-rw-r--r--abs/core/perl_modules/perl-unicode-utf8simple/PKGBUILD28
-rw-r--r--abs/core/perl_modules/perl-uri/PKGBUILD18
-rw-r--r--abs/core/perl_modules/perl-variable-magic/PKGBUILD55
-rw-r--r--abs/core/perl_modules/perl-wsdl/PKGBUILD2
-rw-r--r--abs/core/perl_modules/perl-www-mechanize/PKGBUILD20
-rw-r--r--abs/core/perl_modules/perl-www-robotrules/PKGBUILD63
-rw-r--r--abs/core/perl_modules/perl-x10/PKGBUILD64
-rw-r--r--abs/core/perl_modules/perl-xml-dom/PKGBUILD19
-rw-r--r--abs/core/perl_modules/perl-xml-libxml/PKGBUILD47
-rw-r--r--abs/core/perl_modules/perl-xml-libxml/perl-xml-libxml.install43
-rw-r--r--abs/core/perl_modules/perl-xml-libxslt/PKGBUILD41
-rw-r--r--abs/core/perl_modules/perl-xml-namespacesupport/PKGBUILD6
-rw-r--r--abs/core/perl_modules/perl-xml-parser/PKGBUILD42
-rw-r--r--abs/core/perl_modules/perl-xml-regexp/PKGBUILD14
-rw-r--r--abs/core/perl_modules/perl-xml-rss/PKGBUILD18
-rw-r--r--abs/core/perl_modules/perl-xml-sax-base/PKGBUILD6
-rw-r--r--abs/core/perl_modules/perl-xml-sax-expat/PKGBUILD28
-rw-r--r--abs/core/perl_modules/perl-xml-sax-expat/perl-xml-sax-expat.install17
-rw-r--r--abs/core/perl_modules/perl-xml-sax/PKGBUILD25
-rw-r--r--abs/core/perl_modules/perl-xml-sax/perl-xml-sax.patch46
-rw-r--r--abs/core/perl_modules/perl-xml-simple/PKGBUILD24
-rw-r--r--abs/core/perl_modules/perl-xml-simple/__changelog1
-rw-r--r--abs/core/perl_modules/perl-xml-treepp/PKGBUILD2
-rw-r--r--abs/core/perl_modules/perl-xml-twig/PKGBUILD26
-rw-r--r--abs/core/perl_modules/perl-xml-writer/PKGBUILD39
-rw-r--r--abs/core/perl_modules/perl-xml-xpath/PKGBUILD41
-rw-r--r--abs/core/perl_modules/perl-yaml-syck/PKGBUILD37
-rw-r--r--abs/core/perl_modules/perl-yaml-tiny/PKGBUILD36
-rw-r--r--abs/core/php/PKGBUILD292
-rw-r--r--abs/core/php/__changelog7
-rw-r--r--abs/core/php/apache.conf4
-rw-r--r--abs/core/php/apache.patch20
-rw-r--r--abs/core/php/enchant-2.patch84
-rw-r--r--abs/core/php/linhes.ini2
-rw-r--r--abs/core/php/logrotate.d.php-fpm8
-rw-r--r--abs/core/php/php-fpm.conf.in.patch52
-rw-r--r--abs/core/php/php-fpm.install9
-rw-r--r--abs/core/php/php-fpm.service6
-rw-r--r--abs/core/php/php.ini.patch168
-rw-r--r--abs/core/pinentry/PKGBUILD55
-rw-r--r--abs/core/pinentry/pinentry.install20
-rw-r--r--abs/core/poppler/PKGBUILD96
-rw-r--r--abs/core/poppler/gtk-doc.patch24
-rw-r--r--abs/core/procps-ng/PKGBUILD12
-rw-r--r--abs/core/procps-ng/impossibly-high-memory.patch75
-rw-r--r--abs/core/psmisc/PKGBUILD14
-rw-r--r--abs/core/python/PKGBUILD113
-rw-r--r--abs/core/python/__changelog1
-rw-r--r--abs/core/python/dont-make-libpython-readonly.patch13
-rw-r--r--abs/core/python2-contextlib2/PKGBUILD27
-rw-r--r--abs/core/python2/PKGBUILD50
-rw-r--r--abs/core/python2/__changelog1
-rw-r--r--abs/core/python2/descr_ref.patch58
-rw-r--r--abs/core/python2/fix-profile-task.patch13
-rw-r--r--abs/core/python_modules/cython/PKGBUILD52
-rw-r--r--abs/core/python_modules/docutils/PKGBUILD (renamed from abs/core/python_modules/python-docutils/PKGBUILD)44
-rw-r--r--abs/core/python_modules/docutils/python2-docutils.install (renamed from abs/core/python_modules/python-docutils/python2-docutils.install)0
-rw-r--r--abs/core/python_modules/gitpython/PKGBUILD20
-rw-r--r--abs/core/python_modules/m2r/PKGBUILD56
-rw-r--r--abs/core/python_modules/pygobject/PKGBUILD72
-rw-r--r--abs/core/python_modules/pygobject/__changelog1
-rw-r--r--abs/core/python_modules/pygobject2/PKGBUILD92
-rw-r--r--abs/core/python_modules/pygobject2/__changelog1
-rw-r--r--abs/core/python_modules/pygtk/PKGBUILD28
-rw-r--r--abs/core/python_modules/pygtk/fix-leaks-of-pango-objects.patch59
-rw-r--r--abs/core/python_modules/pyopengl/LICENSE (renamed from abs/core/python_modules/python-opengl/LICENSE)0
-rw-r--r--abs/core/python_modules/pyopengl/PKGBUILD51
-rw-r--r--abs/core/python_modules/pyopenssl/PKGBUILD26
-rw-r--r--abs/core/python_modules/pyopenssl/__changelog2
-rw-r--r--abs/core/python_modules/pyqt/PKGBUILD99
-rw-r--r--abs/core/python_modules/pyqt/__changelog1
-rw-r--r--abs/core/python_modules/pyqt/fix-pyuic4.patch91
-rw-r--r--abs/core/python_modules/pyqt5/PKGBUILD128
-rw-r--r--abs/core/python_modules/pyqt5/pyqt-support-new-qt.patch12
-rw-r--r--abs/core/python_modules/python-apipkg/PKGBUILD51
-rw-r--r--abs/core/python_modules/python-appdirs/PKGBUILD14
-rw-r--r--abs/core/python_modules/python-appdirs/__changelog2
-rw-r--r--abs/core/python_modules/python-asn1crypto/PKGBUILD52
-rw-r--r--abs/core/python_modules/python-attrs/PKGBUILD52
-rw-r--r--abs/core/python_modules/python-automat/PKGBUILD57
-rw-r--r--abs/core/python_modules/python-babel/PKGBUILD54
-rw-r--r--abs/core/python_modules/python-beaker/PKGBUILD62
-rw-r--r--abs/core/python_modules/python-beaker/__changelog1
-rw-r--r--abs/core/python_modules/python-beautifulsoup4/PKGBUILD16
-rw-r--r--abs/core/python_modules/python-beautifulsoup4/__changelog2
-rw-r--r--abs/core/python_modules/python-cairo/PKGBUILD43
-rw-r--r--abs/core/python_modules/python-cffi/PKGBUILD44
-rw-r--r--abs/core/python_modules/python-cffi/__changelog1
-rw-r--r--abs/core/python_modules/python-chardet/PKGBUILD6
-rw-r--r--abs/core/python_modules/python-chardet/__changelog2
-rw-r--r--abs/core/python_modules/python-cherrypy/PKGBUILD10
-rw-r--r--abs/core/python_modules/python-cherrypy/__changelog1
-rw-r--r--abs/core/python_modules/python-click/PKGBUILD10
-rw-r--r--abs/core/python_modules/python-constantly/PKGBUILD53
-rw-r--r--abs/core/python_modules/python-coverage/PKGBUILD72
-rw-r--r--abs/core/python_modules/python-cryptography/PKGBUILD61
-rw-r--r--abs/core/python_modules/python-cryptography/__changelog1
-rw-r--r--abs/core/python_modules/python-dateutil/PKGBUILD10
-rw-r--r--abs/core/python_modules/python-dateutil/__changelog1
-rw-r--r--abs/core/python_modules/python-decorator/PKGBUILD53
-rw-r--r--abs/core/python_modules/python-decorator/__changelog0
-rw-r--r--abs/core/python_modules/python-docutils/01-python33-relative-import.patch196
-rw-r--r--abs/core/python_modules/python-docutils/__changelog1
-rw-r--r--abs/core/python_modules/python-execnet/PKGBUILD52
-rw-r--r--abs/core/python_modules/python-feedparser/PKGBUILD17
-rw-r--r--abs/core/python_modules/python-feedparser/__changelog1
-rw-r--r--abs/core/python_modules/python-flask-login/PKGBUILD27
-rw-r--r--abs/core/python_modules/python-flask-login/__changelog1
-rw-r--r--abs/core/python_modules/python-flask/PKGBUILD31
-rw-r--r--abs/core/python_modules/python-flask/__changelog1
-rw-r--r--abs/core/python_modules/python-future/PKGBUILD16
-rw-r--r--abs/core/python_modules/python-future/__changelog1
-rw-r--r--abs/core/python_modules/python-gitdb/PKGBUILD54
-rw-r--r--abs/core/python_modules/python-gitpython/PKGBUILD48
-rw-r--r--abs/core/python_modules/python-html5lib/PKGBUILD71
-rw-r--r--abs/core/python_modules/python-html5lib/__changelog2
-rw-r--r--abs/core/python_modules/python-hyperlink/PKGBUILD53
-rw-r--r--abs/core/python_modules/python-hypothesis/PKGBUILD78
-rw-r--r--abs/core/python_modules/python-idna/PKGBUILD16
-rw-r--r--abs/core/python_modules/python-idna/__changelog1
-rw-r--r--abs/core/python_modules/python-imagesize/PKGBUILD39
-rw-r--r--abs/core/python_modules/python-incremental/PKGBUILD54
-rw-r--r--abs/core/python_modules/python-itsdangerous/PKGBUILD6
-rw-r--r--abs/core/python_modules/python-itsdangerous/__changelog1
-rw-r--r--abs/core/python_modules/python-jinja/Fix-PrefixLoader-does-not-pass-globals-to-load.patch26
-rw-r--r--abs/core/python_modules/python-jinja/PKGBUILD26
-rw-r--r--abs/core/python_modules/python-jinja/__changelog1
-rw-r--r--abs/core/python_modules/python-jsonschema/PKGBUILD68
-rw-r--r--abs/core/python_modules/python-jsonschema/__changelog2
-rw-r--r--abs/core/python_modules/python-lxml/PKGBUILD103
-rw-r--r--abs/core/python_modules/python-lxml/__changelog1
-rw-r--r--abs/core/python_modules/python-mako/PKGBUILD68
-rw-r--r--abs/core/python_modules/python-mako/__changelog1
-rw-r--r--abs/core/python_modules/python-markupsafe/PKGBUILD49
-rw-r--r--abs/core/python_modules/python-markupsafe/__changelog1
-rw-r--r--abs/core/python_modules/python-mistune/PKGBUILD37
-rw-r--r--abs/core/python_modules/python-mock/PKGBUILD43
-rw-r--r--abs/core/python_modules/python-mock/__changelog1
-rw-r--r--abs/core/python_modules/python-more-itertools/PKGBUILD36
-rw-r--r--abs/core/python_modules/python-ndg-httpsclient/PKGBUILD15
-rw-r--r--abs/core/python_modules/python-ndg-httpsclient/__changelog2
-rw-r--r--abs/core/python_modules/python-nose/PKGBUILD26
-rw-r--r--abs/core/python_modules/python-nose/__changelog1
-rwxr-xr-xabs/core/python_modules/python-numpy/PKGBUILD78
-rw-r--r--abs/core/python_modules/python-numpy/__changelog1
-rw-r--r--abs/core/python_modules/python-numpy/site.cfg4
-rw-r--r--abs/core/python_modules/python-oauth/PKGBUILD27
-rw-r--r--abs/core/python_modules/python-opengl/PKGBUILD27
-rw-r--r--abs/core/python_modules/python-packaging/PKGBUILD16
-rw-r--r--abs/core/python_modules/python-packaging/__changelog2
-rw-r--r--abs/core/python_modules/python-parted/PKGBUILD32
-rw-r--r--abs/core/python_modules/python-parted/__changelog1
-rw-r--r--abs/core/python_modules/python-path/PKGBUILD10
-rw-r--r--abs/core/python_modules/python-path/__changelog2
-rw-r--r--abs/core/python_modules/python-pbr/PKGBUILD61
-rw-r--r--abs/core/python_modules/python-pexpect/PKGBUILD37
-rw-r--r--abs/core/python_modules/python-pexpect/__changelog1
-rw-r--r--abs/core/python_modules/python-pillow/PKGBUILD110
-rw-r--r--abs/core/python_modules/python-pillow/__changelog2
-rw-r--r--abs/core/python_modules/python-pip/PKGBUILD17
-rw-r--r--abs/core/python_modules/python-pip/__changelog2
-rw-r--r--abs/core/python_modules/python-pluggy/PKGBUILD53
-rw-r--r--abs/core/python_modules/python-ply/LICENSE28
-rw-r--r--abs/core/python_modules/python-ply/PKGBUILD50
-rw-r--r--abs/core/python_modules/python-ply/__changelog1
-rw-r--r--abs/core/python_modules/python-ptyprocess/PKGBUILD38
-rw-r--r--abs/core/python_modules/python-py/PKGBUILD57
-rw-r--r--abs/core/python_modules/python-py/__changelog1
-rw-r--r--abs/core/python_modules/python-pyasn1-modules/PKGBUILD50
-rw-r--r--abs/core/python_modules/python-pyasn1/PKGBUILD14
-rw-r--r--abs/core/python_modules/python-pyasn1/__changelog1
-rw-r--r--abs/core/python_modules/python-pybluez/PKGBUILD32
-rw-r--r--abs/core/python_modules/python-pybluez/__changelog1
-rw-r--r--abs/core/python_modules/python-pycparser/PKGBUILD52
-rw-r--r--abs/core/python_modules/python-pycparser/__changelog1
-rw-r--r--abs/core/python_modules/python-pycurl/PKGBUILD57
-rw-r--r--abs/core/python_modules/python-pycurl/__changelog2
-rw-r--r--abs/core/python_modules/python-pygments/PKGBUILD63
-rw-r--r--abs/core/python_modules/python-pygments/__changelog1
-rw-r--r--abs/core/python_modules/python-pygments/python-pygments.install7
-rw-r--r--abs/core/python_modules/python-pygments/python2-pygments.install7
-rw-r--r--abs/core/python_modules/python-pyparsing/PKGBUILD14
-rw-r--r--abs/core/python_modules/python-pyparsing/__changelog2
-rw-r--r--abs/core/python_modules/python-pyparted/PKGBUILD44
-rw-r--r--abs/core/python_modules/python-pyrss2gen/PKGBUILD6
-rw-r--r--abs/core/python_modules/python-pyrss2gen/__changelog2
-rw-r--r--abs/core/python_modules/python-pysocks/PKGBUILD16
-rw-r--r--abs/core/python_modules/python-pysocks/__changelog2
-rw-r--r--abs/core/python_modules/python-pytest-forked/PKGBUILD58
-rw-r--r--abs/core/python_modules/python-pytest-runner/PKGBUILD16
-rw-r--r--abs/core/python_modules/python-pytest-runner/__changelog2
-rw-r--r--abs/core/python_modules/python-pytest-xdist/PKGBUILD58
-rw-r--r--abs/core/python_modules/python-pytest/PKGBUILD63
-rw-r--r--abs/core/python_modules/python-pytest/__changelog1
-rw-r--r--abs/core/python_modules/python-pytz/PKGBUILD16
-rw-r--r--abs/core/python_modules/python-pytz/__changelog1
-rw-r--r--abs/core/python_modules/python-rebulk/PKGBUILD6
-rw-r--r--abs/core/python_modules/python-rebulk/__changelog2
-rw-r--r--abs/core/python_modules/python-regex/PKGBUILD42
-rw-r--r--abs/core/python_modules/python-regex/__changelog1
-rw-r--r--abs/core/python_modules/python-requests-cache/PKGBUILD11
-rw-r--r--abs/core/python_modules/python-requests-cache/__changelog1
-rw-r--r--abs/core/python_modules/python-requests/PKGBUILD25
-rw-r--r--abs/core/python_modules/python-requests/__changelog2
-rw-r--r--abs/core/python_modules/python-rpyc/PKGBUILD4
-rw-r--r--abs/core/python_modules/python-rpyc/__changelog2
-rw-r--r--abs/core/python_modules/python-service-identity/PKGBUILD55
-rw-r--r--abs/core/python_modules/python-setuptools-git/PKGBUILD54
-rw-r--r--abs/core/python_modules/python-setuptools-scm/PKGBUILD22
-rw-r--r--abs/core/python_modules/python-setuptools-scm/__changelog2
-rw-r--r--abs/core/python_modules/python-setuptools/PKGBUILD45
-rw-r--r--abs/core/python_modules/python-setuptools/__changelog1
-rw-r--r--abs/core/python_modules/python-simplejson/PKGBUILD46
-rw-r--r--abs/core/python_modules/python-simplejson/__changelog1
-rw-r--r--abs/core/python_modules/python-six/PKGBUILD18
-rw-r--r--abs/core/python_modules/python-six/__changelog1
-rw-r--r--abs/core/python_modules/python-smmap/PKGBUILD57
-rw-r--r--abs/core/python_modules/python-snowballstemmer/PKGBUILD47
-rw-r--r--abs/core/python_modules/python-sphinx-alabaster-theme/PKGBUILD43
-rw-r--r--abs/core/python_modules/python-sphinx/PKGBUILD134
-rw-r--r--abs/core/python_modules/python-sphinx/__changelog1
-rw-r--r--abs/core/python_modules/python-sphinx_rtd_theme/PKGBUILD45
-rw-r--r--abs/core/python_modules/python-sphinxcontrib-websupport/PKGBUILD37
-rw-r--r--abs/core/python_modules/python-sqlalchemy/PKGBUILD21
-rw-r--r--abs/core/python_modules/python-sqlalchemy/__changelog2
-rw-r--r--abs/core/python_modules/python-termcolor/PKGBUILD29
-rw-r--r--abs/core/python_modules/python-tox/PKGBUILD70
-rw-r--r--abs/core/python_modules/python-tzlocal/PKGBUILD74
-rw-r--r--abs/core/python_modules/python-tzlocal/__changelog1
-rw-r--r--abs/core/python_modules/python-urllib3/PKGBUILD38
-rw-r--r--abs/core/python_modules/python-urllib3/__changelog1
-rw-r--r--abs/core/python_modules/python-urllib3/tornado-4.3.patch23
-rw-r--r--abs/core/python_modules/python-vcversioner/PKGBUILD52
-rw-r--r--abs/core/python_modules/python-virtualenv/PKGBUILD77
-rw-r--r--abs/core/python_modules/python-webencodings/PKGBUILD8
-rw-r--r--abs/core/python_modules/python-webencodings/__changelog2
-rw-r--r--abs/core/python_modules/python-werkzeug/PKGBUILD39
-rw-r--r--abs/core/python_modules/python-werkzeug/__changelog1
-rw-r--r--abs/core/python_modules/python-whoosh/PKGBUILD53
-rw-r--r--abs/core/python_modules/python-yaml/PKGBUILD69
-rw-r--r--abs/core/python_modules/python-yaml/__changelog1
-rw-r--r--abs/core/python_modules/python-yaml/python-yaml.install7
-rw-r--r--abs/core/python_modules/python-zope-interface/PKGBUILD52
-rw-r--r--abs/core/python_modules/python2-cairo/PKGBUILD31
-rw-r--r--abs/core/python_modules/python2-m2crypto/LICENSE26
-rw-r--r--abs/core/python_modules/python2-m2crypto/PKGBUILD29
-rw-r--r--abs/core/python_modules/python2-m2crypto/openssl-1.1.0-force.patch33
-rw-r--r--abs/core/python_modules/python2-oauth/PKGBUILD32
-rw-r--r--abs/core/python_modules/python2-typing/PKGBUILD29
-rw-r--r--abs/core/python_modules/python2-typing/python2-typing-3.6.1.tar.gzbin0 -> 66698 bytes
-rw-r--r--abs/core/python_modules/sip/PKGBUILD66
-rw-r--r--abs/core/python_modules/twisted/PKGBUILD99
-rw-r--r--abs/core/python_modules/urlgrabber/PKGBUILD10
-rw-r--r--abs/core/qt5-3d/PKGBUILD40
-rw-r--r--abs/core/qt5-base/PKGBUILD119
-rw-r--r--abs/core/qt5-base/__changelog (renamed from abs/core/qt5/__changelog)0
-rw-r--r--abs/core/qt5-base/qtbug-65478.patch31
-rw-r--r--abs/core/qt5-base/rebuild.list25
-rw-r--r--abs/core/qt5-base/revert-Set-sharedPainter-correctly-for-QGraphicsEffect.patch71
-rw-r--r--abs/core/qt5-canvas3d/PKGBUILD41
-rw-r--r--abs/core/qt5-connectivity/PKGBUILD42
-rw-r--r--abs/core/qt5-declarative/PKGBUILD57
-rw-r--r--abs/core/qt5-declarative/qtbug-61754.patch25
-rw-r--r--abs/core/qt5-doc/PKGBUILD63
-rw-r--r--abs/core/qt5-doc/qt-no-statx.patch11
-rw-r--r--abs/core/qt5-graphicaleffects/PKGBUILD37
-rw-r--r--abs/core/qt5-imageformats/PKGBUILD37
-rw-r--r--abs/core/qt5-location/PKGBUILD42
-rw-r--r--abs/core/qt5-multimedia/PKGBUILD42
-rw-r--r--abs/core/qt5-multimedia/__changelog2
-rw-r--r--abs/core/qt5-networkauth/PKGBUILD39
-rw-r--r--abs/core/qt5-quickcontrols/PKGBUILD41
-rw-r--r--abs/core/qt5-quickcontrols2/PKGBUILD41
-rw-r--r--abs/core/qt5-script/PKGBUILD41
-rw-r--r--abs/core/qt5-sensors/PKGBUILD42
-rw-r--r--abs/core/qt5-serialport/PKGBUILD41
-rw-r--r--abs/core/qt5-svg/PKGBUILD40
-rw-r--r--abs/core/qt5-tools/PKGBUILD75
-rw-r--r--abs/core/qt5-tools/assistant.desktop (renamed from abs/core/qt5/assistant.desktop)2
-rw-r--r--abs/core/qt5-tools/designer.desktop (renamed from abs/core/qt5/designer.desktop)2
-rw-r--r--abs/core/qt5-tools/linguist.desktop (renamed from abs/core/qt5/linguist.desktop)2
-rw-r--r--abs/core/qt5-tools/qdbusviewer.desktop (renamed from abs/core/qt5/qdbusviewer.desktop)2
-rw-r--r--abs/core/qt5-translations/PKGBUILD37
-rw-r--r--abs/core/qt5-webchannel/PKGBUILD41
-rw-r--r--abs/core/qt5-webengine/PKGBUILD62
-rw-r--r--abs/core/qt5-webengine/qtwebengine-harmony.patch77
-rw-r--r--abs/core/qt5-webengine/qtwebengine-no-gpu.patch99
-rw-r--r--abs/core/qt5-webkit/PKGBUILD72
-rw-r--r--abs/core/qt5-webkit/qt5-webkit-gcc7.patch34
-rw-r--r--abs/core/qt5-webkit/qt5-webkit-null-pointer-dereference.patch17
-rw-r--r--abs/core/qt5-websockets/PKGBUILD42
-rw-r--r--abs/core/qt5-x11extras/PKGBUILD41
-rw-r--r--abs/core/qt5-xmlpatterns/PKGBUILD42
-rw-r--r--abs/core/qt5/PKGBUILD579
-rw-r--r--abs/core/qt5/ibus-get-display-number-when-screen-number-is-omitted.patch32
-rw-r--r--abs/core/qt5/qt5-tools.install12
-rw-r--r--abs/core/qt5/rebuild.list6
-rw-r--r--abs/core/readline/PKGBUILD36
-rw-r--r--abs/core/readline/readline.install17
-rw-r--r--abs/core/rpcbind/CVE-2017-8779.diff21
-rw-r--r--abs/core/rpcbind/PKGBUILD61
-rw-r--r--abs/core/rpcbind/rpcbind-sunrpc.patch17
-rw-r--r--abs/core/rpcbind/rpcbind.conf3
-rw-r--r--abs/core/rpcbind/rpcbind.service11
-rw-r--r--abs/core/rpcbind/systemd_service.diff10
-rw-r--r--abs/core/rpcbind/sysusers.d1
-rw-r--r--abs/core/rpcbind/tmpfiles.d1
-rw-r--r--abs/core/rsyslog/PKGBUILD4
-rwxr-xr-xabs/core/runit-scripts/PKGBUILD4
-rwxr-xr-xabs/core/runit-scripts/runitscripts/services/mysql/run9
-rwxr-xr-xabs/core/runit-scripts/runitscripts/services/postfix/run2
-rw-r--r--abs/core/sudo/PKGBUILD26
-rw-r--r--abs/core/sudo/sudo.install10
-rwxr-xr-xabs/core/system-templates/PKGBUILD3
-rw-r--r--abs/core/system-templates/templates/remotes/favorites/streamzap/lircd.conf.streamzap159
-rw-r--r--abs/core/system-templates/templates/xorg/340xx_supported.txt734
-rw-r--r--abs/core/system-templates/templates/xorg/nvidia_supported.txt630
-rw-r--r--abs/core/systemd/PKGBUILD242
-rw-r--r--abs/core/systemd/__changelog1
-rw-r--r--abs/core/systemd/initcpio-install-systemd44
-rw-r--r--abs/core/systemd/initcpio-install-udev7
-rw-r--r--abs/core/systemd/systemd-hwdb.hook11
-rw-r--r--abs/core/systemd/systemd-sysusers.hook11
-rw-r--r--abs/core/systemd/systemd-tmpfiles.hook11
-rw-r--r--abs/core/systemd/systemd-update.hook11
-rw-r--r--abs/core/systemd/systemd-user.pam5
-rw-r--r--abs/core/systemd/systemd.install178
-rw-r--r--abs/core/talloc/PKGBUILD8
-rw-r--r--abs/core/talloc/fix_test_path.patch6
-rw-r--r--abs/core/tar/PKGBUILD52
-rw-r--r--abs/core/tar/tar.install21
-rw-r--r--abs/core/tdb/PKGBUILD6
-rw-r--r--abs/core/texinfo/PKGBUILD49
-rw-r--r--abs/core/texinfo/texinfo-4.13a-data_types.patch32
-rw-r--r--abs/core/texinfo/texinfo-install.hook11
-rw-r--r--abs/core/texinfo/texinfo-remove.hook10
-rw-r--r--abs/core/texinfo/texinfo.install21
-rw-r--r--abs/core/util-linux/0001-chrt-default-to-SCHED_RR-policy.patch39
-rw-r--r--abs/core/util-linux/0001-lsns-Fix-parser-for-proc-pid-stat-which-is-including.patch79
-rw-r--r--abs/core/util-linux/0001-sfdisk-cleanup-dump-error-messages.patch44
-rw-r--r--abs/core/util-linux/0001-sfdisk-don-t-be-silent-when-list-non-existing-device.patch70
-rw-r--r--abs/core/util-linux/0001-sfdisk-support-empty-label-use-case.patch223
-rw-r--r--abs/core/util-linux/60-rfkill.rules1
-rw-r--r--abs/core/util-linux/PKGBUILD75
-rw-r--r--abs/core/util-linux/__changelog2
-rw-r--r--abs/core/util-linux/rfkill-block_.service10
-rw-r--r--abs/core/util-linux/rfkill-unblock_.service10
-rw-r--r--abs/core/util-linux/util-linux.sysusers2
-rw-r--r--abs/core/vi/PKGBUILD67
-rw-r--r--abs/core/vi/exrc.sample5
-rw-r--r--abs/core/vi/fix-tubesize-short-overflow.patch12
-rw-r--r--abs/core/vi/increase-tube.patch13
-rw-r--r--abs/core/vi/preserve-dir.patch (renamed from abs/core/vi/preserve_dir.patch)42
-rw-r--r--abs/core/wget/PKGBUILD34
-rw-r--r--abs/core/wget/wget.install20
-rw-r--r--abs/core/windowmaker/PKGBUILD29
-rw-r--r--abs/core/windowmaker/WindowMaker-0.95.4.tar.gzbin17063436 -> 0 bytes
-rw-r--r--abs/core/windowmaker/giflib_510.diff20
-rw-r--r--abs/core/windowmaker/libpng-1.4.patch12
-rw-r--r--abs/core/windowmaker/windowmaker-gcc4.patch.tar.bz2bin39677 -> 0 bytes
-rw-r--r--abs/core/windowmaker/wm-giflib.patch2422
-rw-r--r--abs/core/wpa_supplicant/0001-Revert-OpenSSL-Do-not-accept-SSL-Client-certificate-.patch74
-rw-r--r--abs/core/wpa_supplicant/0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch174
-rw-r--r--abs/core/wpa_supplicant/0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch250
-rw-r--r--abs/core/wpa_supplicant/0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch184
-rw-r--r--abs/core/wpa_supplicant/0004-Prevent-installation-of-an-all-zero-TK.patch79
-rw-r--r--abs/core/wpa_supplicant/0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch64
-rw-r--r--abs/core/wpa_supplicant/0006-TDLS-Reject-TPK-TK-reconfiguration.patch132
-rw-r--r--abs/core/wpa_supplicant/0007-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-r.patch43
-rw-r--r--abs/core/wpa_supplicant/0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch82
-rw-r--r--abs/core/wpa_supplicant/PKGBUILD106
-rw-r--r--abs/core/wpa_supplicant/config527
-rw-r--r--abs/core/wpa_supplicant/wpa_supplicant.install7
-rw-r--r--abs/core/xf86-video-ati/PKGBUILD18
-rw-r--r--abs/core/xf86-video-intel/PKGBUILD17
-rw-r--r--abs/core/xf86-video-vesa/PKGBUILD18
-rw-r--r--abs/core/xmltv/PKGBUILD53
-rw-r--r--abs/core/xmltv/__changelog1
-rw-r--r--abs/core/xorg-server/PKGBUILD62
-rw-r--r--abs/core/xterm/PKGBUILD13
-rwxr-xr-xabs/core/xymon/PKGBUILD11
-rw-r--r--abs/core/xymon/logfetch.c.patch10
-rw-r--r--abs/core/xymon/xymon-gputemp.sh24
-rwxr-xr-xabs/core/xymon/xymon-hddtemp.sh8
-rwxr-xr-xabs/core/xymon/xymon-smart.sh8
-rw-r--r--abs/core/zlib/PKGBUILD42
-rw-r--r--abs/core/zoneminder/PKGBUILD150
-rw-r--r--abs/core/zoneminder/__changelog7
-rw-r--r--abs/core/zoneminder/fabs.patch11
-rw-r--r--abs/core/zoneminder/log.txt23
-rw-r--r--abs/core/zoneminder/uio.patch22
-rw-r--r--abs/core/zoneminder/zm_rtp_ctrl.h.quick_fix_for_gcc6.diff4
-rw-r--r--abs/core/zoneminder/zoneminder.ini1
-rw-r--r--abs/core/zoneminder/zoneminder.install5
978 files changed, 32148 insertions, 24412 deletions
diff --git a/abs/core/LinHES-config/09_mythvantge_runit_grub b/abs/core/LinHES-config/09_mythvantge_runit_grub
index aef11a1..137d8f6 100644
--- a/abs/core/LinHES-config/09_mythvantge_runit_grub
+++ b/abs/core/LinHES-config/09_mythvantge_runit_grub
@@ -30,7 +30,7 @@ menuentry 'LinHES' --class arch --class gnu-linux --class gnu --class os $menuen
search --no-floppy --fs-uuid --set=root $boot_device_id
fi
echo 'Loading Linux core repo kernel ...'
- linux /boot/vmlinuz-linux root=UUID=$boot_device_id ro quiet splash udev.log-priority=3 init=/sbin/runit $install_modules
+ linux /boot/vmlinuz-linux root=UUID=$boot_device_id ro quiet splash udev.log-priority=3 loglevel=3 init=/sbin/runit $install_modules
echo 'Loading initial ramdisk ...'
initrd /boot/initramfs-linux.img
}
diff --git a/abs/core/LinHES-config/LinHES-release b/abs/core/LinHES-config/LinHES-release
index b3360a3..5afb5ff 100644
--- a/abs/core/LinHES-config/LinHES-release
+++ b/abs/core/LinHES-config/LinHES-release
@@ -1 +1 @@
-LinHES R8.5.1 (Gareth)
+LinHES R8.5.2 (Gareth)
diff --git a/abs/core/LinHES-config/PKGBUILD b/abs/core/LinHES-config/PKGBUILD
index 9d8cbc9..424d709 100755
--- a/abs/core/LinHES-config/PKGBUILD
+++ b/abs/core/LinHES-config/PKGBUILD
@@ -1,12 +1,13 @@
pkgname=LinHES-config
-pkgver=8.5.1
-pkgrel=2
+pkgver=8.5.2
+pkgrel=3
conflicts=(MythVantage-config MythVantage-config-dev LinHES-config-dev LinHes-config )
pkgdesc="Install and configure your system"
depends=('bc' 'libstatgrab' 'mysql-python' 'expect' 'curl' 'dnsutils' 'parted'
- 'sg3_utils' 'nmbscan' 'system-templates' 'rsync' 'python-parted'
- 'python2-pexpect' 'python-netifaces' 'xcursor-vanilla-dmz-aa'
- 'python-iplib' 'sudo' 'setserial' 'udevil' 'balance' 'runit-scripts>=8.3-4' )
+ 'sg3_utils' 'nmbscan' 'system-templates' 'rsync' 'python2-pyparted'
+ 'python2-pexpect' 'python-netifaces' 'xcursor-vanilla-dmz-aa'
+ 'python-iplib' 'sudo' 'setserial' 'udevil' 'balance'
+ 'mythinstall' 'runit-scripts>=8.3-4' )
arch=('i686' 'x86_64')
source=(mv_install.py 09_mythvantge_runit_grub
@@ -144,8 +145,8 @@ package() {
install -o root -g root -D -m 0755 blacklist_nouveau.conf $pkgdir/etc/modprobe.d/blacklist_nouveau.conf
}
-md5sums=('518c868141fe443e9258144c029ed3f9'
- '51525188ac6f6034422c5d71d0c84408'
+md5sums=('49952a2375b8ee53d8673473f22f8d12'
+ 'bee51ac2c232ab134eec127f5c8846ad'
'f6e9dd7bc6cf0aaa3bd203dab4cb79b9'
'2596460462cf6c889cf8f95485537b20'
'985891a43f7c4c983eb2a362162f1a0f'
@@ -159,7 +160,7 @@ md5sums=('518c868141fe443e9258144c029ed3f9'
'f0376c98a7986897406d393186c0365e'
'157e73d0f90d7b306aba8f5921aeedd3'
'1f58c0393a131f4a8f9a84b3fe08a7e4'
- '55ac9212faa4efa7f9cb67a35640817e'
+ '03ab4c6af061da01584b450ec83f26ed'
'5f890ea9bda6aef652d2560ca19dac07'
'ab2aa42c2947148c2b1cac0ade6d1d55'
'd429b59d3cfb37b0624c6a4a71a7c2c0'
@@ -182,7 +183,7 @@ md5sums=('518c868141fe443e9258144c029ed3f9'
'8be8ce5f1d8522b1cde12d34840865c2'
'80685e047993b00161be29e3580f3a40'
'0e1c98392887b6efcb3f8b04ead7c4f9'
- '3cb673adb83b6afa52cffaa621b9d96b'
+ '3d84d2b508a73733e8d593e551b21081'
'781f161a79c3188a31c8615b8258b241'
'44e32e7015612cbf5d9f6539f4b6799b'
'6cb0aac63623a44463c4209862d2baa0'
diff --git a/abs/core/LinHES-config/config.install b/abs/core/LinHES-config/config.install
index 50c66c7..332f033 100644
--- a/abs/core/LinHES-config/config.install
+++ b/abs/core/LinHES-config/config.install
@@ -40,7 +40,12 @@ post_upgrade() {
/usr/MythVantage/bin/systemconfig.py -m hostype
fi
- /usr/MythVantage/bin/systemconfig.py -m locale,vnc,ir
+ if [ $(vercmp $2 8.5.1-4) -lt 0 ]; then
+ #reconfig to include grub
+ /usr/MythVantage/bin/systemconfig.py -m locale,vnc,ir,advanced
+ else
+ /usr/MythVantage/bin/systemconfig.py -m locale,vnc,ir
+ fi
echo " Removing pts and shm from fstab..."
cp -a /etc/fstab /etc/fstab.backup.pre_pts_shm
diff --git a/abs/core/LinHES-config/mv_fileshare.py b/abs/core/LinHES-config/mv_fileshare.py
index 5844a2f..3311bb8 100755
--- a/abs/core/LinHES-config/mv_fileshare.py
+++ b/abs/core/LinHES-config/mv_fileshare.py
@@ -441,6 +441,7 @@ def setup_NFSshares(UseNFS,templatefile,data_config,servername,nfslist):
else:
logging.info(" Removing NFS server")
mv_common.remove_service("nfsd")
+ mv_common.remove_service("nfs-common")
return
def setup_dyndns(DDnsEnable):
diff --git a/abs/core/LinHES-config/mv_install.py b/abs/core/LinHES-config/mv_install.py
index f414942..bf53476 100644
--- a/abs/core/LinHES-config/mv_install.py
+++ b/abs/core/LinHES-config/mv_install.py
@@ -82,10 +82,13 @@ def kill_dhcp_chroot():
pass
#force kill
try:
- cmd = "lsof -t /new_boot|xargs kill -9"
+ #cmd = "lsof -t /new_boot|xargs kill -9"
+ #newer versions of lsof show /dev/pts bind mounts
+ #even after they are umounted
+ cmd = "fuser -mk /new_boot"
runcmd(cmd)
except:
- print " !!!Problem killing all /new_boot pids"
+ logging.debug("!!!Problem killing all /new_boot pids")
@@ -218,7 +221,7 @@ def mysqldb(cmd, inchroot):
if cmd == "start":
cmd = "chroot /new_boot /etc/rc.d/mysqld start"
elif cmd == "stop":
- cmd = " chroot /new_boot /etc/rc.d/mysqld stop"
+ cmd = "chroot /new_boot /etc/rc.d/mysqld stop"
else:
if cmd == "start":
cmd = "systemctl start mysqld.service"
@@ -748,10 +751,10 @@ def mount_for_copy_it():
#Versions of util-linux mount after 2.28.2 do not allow 1 image to be
# mounted to multiple loop devices.
#Our ISO mounts airootfs.img to both / and /image_mount
- cmd = 'tar -xvf /tmp/mount2.28.2.tar.xz -C /tmp/'
+ cmd = 'tar -xvf /root/linhes_install/mount2.28.2.tar.xz -C /root/linhes_install/'
rc = runcmd(cmd)[0]
if rc != 0 :
- error_out("Failed to extract static mount from /tmp/mount2.28.2.tar.xz")
+ error_out("Failed to extract static mount from /root/linhes_install/mount2.28.2.tar.xz")
mounts = {}
mounts['/image_mount'] = 'airootfs'
@@ -760,7 +763,7 @@ def mount_for_copy_it():
os.makedirs(image_mount)
except:
pass
- cmd = '/tmp/mount /run/archiso/sfs/%s/%s.img %s' %(fsimage,fsimage,image_mount)
+ cmd = '/root/linhes_install/mount /run/archiso/sfs/%s/%s.img %s' %(fsimage,fsimage,image_mount)
rc = runcmd(cmd)[0]
if rc != 0 :
error_out("Mount image %s" %fsimage)
@@ -770,7 +773,7 @@ def umount_for_copy_it():
mounts = {}
mounts['/image_mount'] = 'airootfs'
for image_mount, fsimage in mounts.iteritems():
- cmd='/tmp/umount %s' %(image_mount)
+ cmd='/root/linhes_install/umount %s' %(image_mount)
rc = runcmd(cmd)[0]
if rc != 0 :
error_out("unMount image %s" %image_mount)
@@ -784,7 +787,7 @@ def copy_it(install_type):
if ( install_type == "install"):
logging.info("Transferring system")
- cmdlist = ['rsync -arp --exclude var-lib-pacman --exclude boot-orig --exclude tmp/mount2.28.2.tar.xz /image_mount/* /new_boot']
+ cmdlist = ['rsync -arp --exclude var-lib-pacman --exclude boot-orig /image_mount/* /new_boot']
for cmd in cmdlist:
rc = runcmd(cmd)[0]
@@ -796,7 +799,7 @@ def copy_it(install_type):
if ( install_type == "upgrade"):
logging.info("Upgrading system")
- cmdlist = ['rsync -arp --exclude var-lib-pacman --exclude boot-orig --exclude tmp/mount2.28.2.tar.xz --exclude /home --exclude /data/srv/mysql /image_mount/* /new_boot']
+ cmdlist = ['rsync -arp --exclude var-lib-pacman --exclude boot-orig --exclude /home --exclude /data/srv/mysql /image_mount/* /new_boot']
for cmd in cmdlist:
rc = runcmd(cmd)[0]
@@ -1653,7 +1656,7 @@ def full_install(hostoptions):
else:
double_mount(fe_only=True)
#move_myth_home("restore")
-# Need to check for to touch /tmp/.dbsysfailed
+ #Need to check for to touch /tmp/.dbsysfailed
#cmd = " chroot %s %s/bin/myth_settings_wrapper.sh -c restore -t syssettings " %(data_config.MOUNTPOINT, MVROOT)
#runcmd(cmd)
if ( 'x' == '1' ):
diff --git a/abs/core/LinHES-system/PKGBUILD b/abs/core/LinHES-system/PKGBUILD
index 5ecc711..c83c19a 100755
--- a/abs/core/LinHES-system/PKGBUILD
+++ b/abs/core/LinHES-system/PKGBUILD
@@ -1,13 +1,14 @@
pkgname=LinHES-system
-pkgver=8.5.1
+pkgver=8.5.2
pkgrel=2
-arch=('i686' 'x86_64')
+arch=('x86_64')
install=system.install
pkgdesc="Everything that makes LinHES an automated system"
license=('GPL2')
depends=('linhes-sounds' 'xdotool' 'tilda' 'keylaunch' 'dvdbackup'
'python_aosd' 'udisks' 'LinHES-config>=2.3-59' 'sudo'
- 'python2-dateutil' 'python2-dbus' 'unclutter' 'wmctrl' 'archlinux-xdg-menu'
+ 'python2-dateutil' 'python2-dbus' 'python2-tzlocal' 'unclutter'
+ 'wmctrl' 'archlinux-xdg-menu'
'ethtool' 'gnu-netcat' 'normalize' 'ttf-overlock'
'handbrake-cli' 'mkvtoolnix-cli' 'mplayer' 'runit-scripts>=8.1-12')
backup=('etc/modprobe.d/alsa-base.conf' 'etc/X11/autostart/autostart.run')
@@ -90,7 +91,7 @@ md5sums=('c6e6b83a1f4c35ef4501e277657ab2ac'
'542e670e78d117657f93141e9689f54d'
'8da6a7f1703a002f84e66629e847d8a6'
'bb72ab230c7a71706285bd0f31a4fb1f'
- '7cc012ad0e71b40b4a376ab33a33c1cd'
+ '14352e6d2cd3ed4206b1dff4ff35880d'
'962a3e9eaba2d1466251b7ab0956705d'
'1758aed160de64abfafb28a3a8f3390e'
'33fbebbd546672cedd3c5e7350ab414e'
@@ -132,7 +133,7 @@ md5sums=('c6e6b83a1f4c35ef4501e277657ab2ac'
'a94fe6d980f4b810f2e2ae5352084b39'
'0d1632ea63d8145c173c6aecf0b007f0'
'ff689f2e9572a78d88384b2e5774f579'
- '28f29578e5b3ba84fdf2aa57cf475bcf'
+ 'a811c5c01cc127ef403a24c941e03c66'
'4a1fda884dcd7d65fb2690fbdbd92a83'
'29f451783db3220b612e00c29e3ded73'
'7fe42dfc99af42a45440c9c3954c3c19'
diff --git a/abs/core/LinHES-system/myth2mkv b/abs/core/LinHES-system/myth2mkv
index 1352476..51a0c9b 100644
--- a/abs/core/LinHES-system/myth2mkv
+++ b/abs/core/LinHES-system/myth2mkv
@@ -93,7 +93,7 @@ fi
check_background_progress()
# check handbrake progress in background
{
-while [ `tail -2 ${STATUSFILE} | grep -c "^HandBrake has exited"` = 0 ]
+while [ ! -f ${HB_RETURN_CODE} ]
do
sleep 15
check_myth_jobcmds
@@ -197,19 +197,19 @@ if [[ ${QUALITY} = HP ]] ; then
if [[ -n ${CROP} ]] ; then
CROP="--crop ${CROP}"
else
- CROP="--crop 0:0:0:0 --strict-anamorphic"
+ CROP="--crop 0:0:0:0 --auto-anamorphic"
fi
HB_OPTS="-o ${TMPFILE} -e x264 ${TUNING} -q 20.0 -a 1,1 -E copy:ac3,faac -B 160,160 -6 dpl2,auto -R Auto,Auto -D 0.0,0.0 --audio-copy-mask aac,ac3,dtshd,dts,mp3 --audio-fallback ffac3 -f mkv --decomb --loose-anamorphic --modulus 2 -m --x264-preset medium --h264-profile high --h264-level 4.1 ${CROP} -s 1"
elif [[ ${QUALITY} = HQ ]] ; then
if [[ -n ${CROP} ]] ; then
CROP="--crop ${CROP}"
else
- CROP="--crop 0:0:0:0 --strict-anamorphic"
+ CROP="--crop 0:0:0:0 --auto-anamorphic"
fi
HB_OPTS="-o ${TMPFILE} -f mkv -m -e x264 ${TUNING} -x b-adapt=2:rc-lookahead=50 -b 5000 -2 -T ${WIDTH} ${HEIGHT} -r ${FPS} --cfr ${CROP} ${DEINT} -a 1 -E copy -s 1"
else
if [[ ${CROP} = "--crop 0:0:0:0" ]] ; then
- CROP="${CROP} --strict-anamorphic"
+ CROP="${CROP} --auto-anamorphic"
fi
if [[ ${QUALITY} = LQ ]] ; then
HB_OPTS="-o ${TMPFILE} -f mkv -m -e x264 ${TUNING} -b 1250 ${WIDTH} ${HEIGHT} -r ${FPS} --pfr ${CROP} ${DEINT} -a 1 -E lame -B 128 -Q 8 -6 stereo -s 1"
diff --git a/abs/core/LinHES-system/myth_status.py b/abs/core/LinHES-system/myth_status.py
index 0662f79..cd541ca 100644
--- a/abs/core/LinHES-system/myth_status.py
+++ b/abs/core/LinHES-system/myth_status.py
@@ -3,9 +3,10 @@
#Also will display alerts generated by xymon. If the location of xymon changes, this script needs to be updated.
from MythTV import MythBE,MythDB,MythLog
-import datetime,time,sys,subprocess,re
+import datetime,pytz,re,socket,subprocess,sys,time
from dateutil.parser import parse
-from dateutil import tz
+from tzlocal import get_localzone
+
import os,glob
from socket import gethostname;
@@ -110,7 +111,8 @@ def print_alerts():
class tuner_recording_status:
def __init__ (self,num_upcoming):
- self.now = datetime.datetime.now()
+ self.now = datetime.datetime.now(pytz.utc)
+ self.currTZ = get_localzone()
self.farout=99999999
self.next_start_diff=datetime.timedelta(self.farout)
self.num_upcoming=num_upcoming
@@ -176,7 +178,6 @@ class tuner_recording_status:
a=self.be.getUpcomingRecordings()
r=0
- currTZ = tz.tzlocal()
for i in a:
r += 1
if r > self.num_upcoming:
@@ -184,14 +185,11 @@ class tuner_recording_status:
title_chan="%s (%s)" %(i.title, i.channame)
# convert timezone to local timezone
start_time=parse(str(i.starttime))
- start_time=start_time.astimezone(currTZ)
+ start_time=start_time.astimezone(self.currTZ)
start_time_out=start_time.strftime("%a %b %d %I:%M%p")
self.upcoming_list.append([start_time_out,i.hostname, title_chan])
- #remove timezone
- start_time=re.split("[-+]\d\d:\d\d",str(i.starttime))[0]
- start_time_struct=datetime.datetime.strptime(start_time, "%Y-%m-%d %H:%M:%S")
- diff = start_time_struct - self.now
+ diff = start_time - self.now
if diff < self.next_start_diff :
self.next_start_diff = diff
@@ -230,13 +228,12 @@ class tuner_recording_status:
def conflicts(self):
a=self.be.getConflictedRecordings()
- currTZ = tz.tzlocal()
for i in a:
out_line=''
title_chan="%s (%s)" %(i.title, i.channame)
# convert timezone to local timezone
start_time=parse(str(i.starttime))
- start_time=start_time.astimezone(currTZ)
+ start_time=start_time.astimezone(self.currTZ)
start_time_out=start_time.strftime("%a %b %d %I:%M%p")
out_line=(start_time_out,i.hostname,title_chan)
self.conflict_list.append(out_line)
@@ -258,6 +255,8 @@ class tuner_recording_status:
def go():
+ welcomeFile=open("/etc/LinHES-release", "r")
+ print "Welcome to %s on %s\n" %(welcomeFile.readline().rstrip(), socket.gethostname())
tuner = tuner_recording_status(12)
if tuner.get_db_check_status() == 0:
tuner.print_tuner_status()
diff --git a/abs/core/aalib/PKGBUILD b/abs/core/aalib/PKGBUILD
index 164b269..13049e9 100644
--- a/abs/core/aalib/PKGBUILD
+++ b/abs/core/aalib/PKGBUILD
@@ -1,28 +1,32 @@
-# $Id: PKGBUILD 9082 2008-08-17 03:29:36Z allan $
-# Maintainer: arjan <arjan@archlinux.org>
-# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
-#
+# $Id$
+# Maintainer: Eric Bélanger <eric@archlinux.org>
+
pkgname=aalib
pkgver=1.4rc5
-pkgrel=7
-pkgdesc="AAlib is a portable ASCII art GFX library"
-arch=('i686' 'x86_64')
+pkgrel=13
+pkgdesc="A portable ASCII art graphic library"
+arch=('x86_64')
url="http://aa-project.sourceforge.net/aalib/"
license=('LGPL')
-depends=('glibc' 'ncurses' 'gpm>=1.20.4' 'libx11')
-options=('!libtool')
-source=(http://downloads.sourceforge.net/sourceforge/aa-project/$pkgname-$pkgver.tar.gz
+depends=('gpm' 'libx11')
+makedepends=('libxt')
+source=(https://downloads.sourceforge.net/sourceforge/aa-project/${pkgname}-${pkgver}.tar.gz
aclocal-fixes.patch)
-md5sums=('9801095c42bba12edebd1902bcf0a990' '863a96a6689aa7ee073ca448bc2f133d')
+sha1sums=('a23269e950a249d2ef93625837cace45ddbce03b'
+ '98d8c5a13672a8107945d694ff4520e0bc87d3e9')
+
+prepare() {
+ cd ${pkgname}-1.4.0
+ patch -p0 -i "${srcdir}/aclocal-fixes.patch"
+}
build() {
- cd $startdir/src/$pkgname-1.4.0
- patch -Np0 -i ${startdir}/src/aclocal-fixes.patch || return 1
+ cd ${pkgname}-1.4.0
./configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info
- make || return 1
+ make
}
+
package() {
- cd $startdir/src/$pkgname-1.4.0
- make DESTDIR=$startdir/pkg install
- rm ${pkgdir}/usr/share/info/dir
+ cd ${pkgname}-1.4.0
+ make DESTDIR="${pkgdir}" install
}
diff --git a/abs/core/alsa-lib/PKGBUILD b/abs/core/alsa-lib/PKGBUILD
index 24f8aaa..14ce18c 100644
--- a/abs/core/alsa-lib/PKGBUILD
+++ b/abs/core/alsa-lib/PKGBUILD
@@ -1,22 +1,21 @@
# $Id$
-# Maintainer: judd <jvinet@zeroflux.org>
+# Contributor: judd <jvinet@zeroflux.org>
pkgname=alsa-lib
-pkgver=1.1.2
+pkgver=1.1.6
pkgrel=1
pkgdesc="An alternative implementation of Linux sound support"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://www.alsa-project.org"
depends=('glibc')
optdepends=('python2: for python smixer plugin')
makedepends=('python2')
-license=('GPL')
+license=('LGPL')
source=(ftp://ftp.alsa-project.org/pub/lib/$pkgname-$pkgver.tar.bz2)
-sha1sums=('574a0ebd4d218c81f73a0abae79f0e3cc9a6e402')
build() {
cd "$srcdir/$pkgname-$pkgver"
- ./configure --prefix=/usr --with-pythonlibs="-lpthread -lm -ldl -lpython2.7" --with-pythonincludes=-I/usr/include/python2.7
+ ./configure --without-debug --prefix=/usr --with-pythonlibs="-lpthread -lm -ldl -lpython2.7" --with-pythonincludes=-I/usr/include/python2.7
make
}
@@ -24,3 +23,4 @@ package() {
cd "$srcdir/$pkgname-$pkgver"
make DESTDIR="$pkgdir" install
}
+md5sums=('2f981a8f7897c59ec2ddc44916d33788')
diff --git a/abs/core/alsa-plugins/PKGBUILD b/abs/core/alsa-plugins/PKGBUILD
index c51c3e6..3fab937 100644
--- a/abs/core/alsa-plugins/PKGBUILD
+++ b/abs/core/alsa-plugins/PKGBUILD
@@ -4,24 +4,22 @@
# Contributor: Daniel Ehlers <danielehlers@mindeye.net>
pkgname=alsa-plugins
-pkgver=1.1.1
-pkgrel=1
+pkgver=1.1.6
+pkgrel=2
pkgdesc="Extra alsa plugins"
-arch=(i686 x86_64)
+arch=(x86_64)
url="http://www.alsa-project.org"
license=(GPL)
depends=(alsa-lib)
makedepends=(ffmpeg)
-optdepends=(
- 'ffmpeg: libavcodec resampling plugin, a52 plugin'
+optdepends=('ffmpeg: libavcodec resampling plugin, a52 plugin'
'libsamplerate: libsamplerate resampling plugin'
'speex: libspeexdsp resampling plugin')
source=("ftp://ftp.alsa-project.org/pub/plugins/$pkgname-$pkgver.tar.bz2")
-sha1sums=('280eb0d9810e463059747d01760a5ac3f44d7057')
+sha1sums=('a3601513f1a54eaef606744c9c9f4e9d4d44bf40')
build() {
cd $pkgname-$pkgver
- CFLAGS+=' -DHAVE_STDINT_H' # We have issue similar to this one https://code.google.com/p/cantata/issues/detail?id=627
./configure --prefix=/usr
make
}
diff --git a/abs/core/alsa-utils/90alsa b/abs/core/alsa-utils/90alsa
deleted file mode 100755
index 9f18bef..0000000
--- a/abs/core/alsa-utils/90alsa
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/bin/sh
-#
-# 90alsa: suspend/wakeup ALSA devices
-
-case "$1" in
-hibernate|suspend)
-;;
-thaw|resume)
-aplay -d 1 /dev/zero
-;;
-*) exit $NA
-;;
-esac
diff --git a/abs/core/alsa-utils/PKGBUILD b/abs/core/alsa-utils/PKGBUILD
index 1e450d0..d35b8b1 100644
--- a/abs/core/alsa-utils/PKGBUILD
+++ b/abs/core/alsa-utils/PKGBUILD
@@ -3,40 +3,30 @@
# Contributor: judd <jvinet@zeroflux.org>
pkgname=alsa-utils
-pkgver=1.1.2
+pkgver=1.1.6
pkgrel=1
pkgdesc="An alternative implementation of Linux sound support"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://www.alsa-project.org"
#can not use >=$pkgver due to use of letters in alsa-lib update versioning
depends=("alsa-lib>1.0.24" 'pciutils' 'ncurses' 'psmisc' 'libsamplerate' 'fftw')
-makedepends=('xmlto' 'docbook-xsl')
+makedepends=('xmlto' 'docbook-xsl' 'systemd')
license=('GPL')
-source=(ftp://ftp.alsa-project.org/pub/utils/$pkgname-${pkgver}.tar.bz2
- 90alsa)
+source=(ftp://ftp.alsa-project.org/pub/utils/$pkgname-${pkgver}.tar.bz2)
+sha256sums=('155caecc40b2220f686f34ba3655a53e3bdbc0586adb1056733949feaaf7d36e')
build() {
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${pkgname}-${pkgver}
./configure --prefix=/usr --disable-alsaconf --sbindir=/usr/bin \
--with-udev-rules-dir=/usr/lib/udev/rules.d \
--with-systemdsystemunitdir=/usr/lib/systemd/system
make
- # fix udev rules genaration
- cd alsactl
- make 90-alsa-restore.rules
}
package() {
- cd ${srcdir}/${pkgname}-${pkgver}
- make DESTDIR=${pkgdir} install
- install -D -m755 ../90alsa ${pkgdir}/etc/pm/sleep.d/90alsa
-
- # install alsa udev rule file
- install -D -m644 alsactl/90-alsa-restore.rules \
- ${pkgdir}/usr/lib/udev/rules.d/90-alsa-restore.rules
+ cd ${pkgname}-${pkgver}
+ make DESTDIR="${pkgdir}" install
# dir where to save ALSA state
- install -d ${pkgdir}/var/lib/alsa
+ install -d "${pkgdir}/var/lib/alsa"
}
-md5sums=('38ac7c781f80c41c02b4664d8cbafa87'
- '529216f6a46e61a546640e08ea7a0879')
diff --git a/abs/core/apache/PKGBUILD b/abs/core/apache/PKGBUILD
index d4344e6..13f0aa7 100644
--- a/abs/core/apache/PKGBUILD
+++ b/abs/core/apache/PKGBUILD
@@ -4,10 +4,10 @@
# Contributor: Pierre Schmitz <pierre@archlinux.de>
pkgname=apache
-pkgver=2.4.9
+pkgver=2.4.33
pkgrel=1
pkgdesc='A high performance Unix-based HTTP server'
-arch=('i686' 'x86_64')
+arch=('x86_64')
url='http://www.apache.org/dist/httpd'
license=('APACHE')
backup=(
@@ -19,30 +19,32 @@ backup=(
etc/httpd/conf/{mime.types,magic}
etc/logrotate.d/httpd
)
-depends=('zlib' 'apr-util' 'pcre')
-makedepends=('libxml2' 'lua' 'openssl')
+depends=('zlib' 'apr-util' 'pcre' 'libnghttp2' 'openssl')
+makedepends=('libxml2' 'lua')
optdepends=(
'lua: for mod_lua module'
- 'openssl: for mod_ssl module'
- 'libxml2: for mod_proxy_html, mod_xml2enc modules'
+ 'libxml2: for mod_proxy_html, mod_xml2enc modules'
'lynx: apachectl status'
)
-install=apache.install
source=(
- http://www.apache.org/dist/httpd/httpd-${pkgver}.tar.bz2{,.asc}
+ https://www.apache.org/dist/httpd/httpd-${pkgver}.tar.bz2{,.asc}
+ openssl-malloc-init.patch
apache.tmpfiles.conf
httpd.logrotate
httpd.service
arch.layout
)
-sha256sums=('f78cc90dfa47caf3d83ad18fd6b4e85f237777c1733fc9088594b70ce2847603'
+sha256sums=('de02511859b00d17845b9abdd1f975d5ccb5d0b280c567da5bf2ad4b70846f05'
'SKIP'
+ 'd305f8b52ac2a9bbda7bb0776496471e69e9d30642740f594d00086a8c7e344c'
'63da1a420f4714a3e7af2672d28384419cc7eedbe7bf35baebd02938fabc15bf'
- '875903831634edf35d8d57e9a51bacb818255ecb3bfff29627f03e43d1ab65c3'
- '14d0a775eea7f8c66ba55399a9ad1e4fd29e0302f479a15b28bbfc754c5aa347'
+ '0bbbfae23a917b2fce0bf8f900f60319b50769224a96314e9301a75ccd078e16'
+ 'f574bac6d5f398e7a649fc0e1ca66ff01ad4ef34dac71258e93d8a9d9a2b3960'
'dda05c6e76f12624e418ca18a36f2e90ec1c5b1cc52fed7142fce6076ec413f3')
+validpgpkeys=('A93D62ECC3C8EA12DB220EC934EA76E6791485A8' # Jim Jagielski
+ 'B9E8213AEFB861AF35A41F2C995E35221AD84DFF') # Daniel Ruggeri
-build() {
+prepare() {
cd httpd-${pkgver}
# set default user
@@ -51,7 +53,14 @@ build() {
-i docs/conf/httpd.conf.in
cat "${srcdir}/arch.layout" >> config.layout
-
+
+ # https://github.com/openssl/openssl/issues/2865
+ patch -Np1 -i ../openssl-malloc-init.patch
+}
+
+build() {
+ cd httpd-${pkgver}
+
./configure --sbindir=/usr/bin \
--enable-layout=Arch \
--enable-mpms-shared=all \
@@ -64,14 +73,14 @@ build() {
--with-suexec-logfile=/var/log/httpd/suexec.log \
--with-suexec-bin=/usr/bin/suexec \
--with-suexec-uidmin=99 --with-suexec-gidmin=99 \
- --enable-ldap --enable-authnz-ldap \
+ --enable-ldap --enable-authnz-ldap --enable-authnz-fcgi \
--enable-cache --enable-disk-cache --enable-mem-cache --enable-file-cache \
--enable-ssl --with-ssl \
--enable-deflate --enable-cgi --enable-cgid \
--enable-proxy --enable-proxy-connect \
--enable-proxy-http --enable-proxy-ftp \
--enable-dbd --enable-imagemap --enable-ident --enable-cern-meta \
- --enable-lua --enable-xml2enc \
+ --enable-lua --enable-xml2enc --enable-http2 \
--with-apr=/usr/bin/apr-1-config \
--with-apr-util=/usr/bin/apu-1-config \
--with-pcre=/usr
@@ -90,10 +99,8 @@ package() {
install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
# symlinks for /etc/httpd
- # do we really need these symlinks?
- #ln -fs /var/log/httpd "${pkgdir}/etc/httpd/logs"
+ # do we really need this symlink?
ln -fs /usr/lib/httpd/modules "${pkgdir}/etc/httpd/modules"
- #ln -fs /usr/lib/httpd/build "${pkgdir}/etc/httpd/build"
# set sane defaults
sed -e 's#/usr/lib/httpd/modules/#modules/#' \
diff --git a/abs/core/apache/apache-2.2-optionsbleed-CVE-2017-9798.patch b/abs/core/apache/apache-2.2-optionsbleed-CVE-2017-9798.patch
new file mode 100644
index 0000000..040d557
--- /dev/null
+++ b/abs/core/apache/apache-2.2-optionsbleed-CVE-2017-9798.patch
@@ -0,0 +1,21 @@
+CVE-2017-9798
+
+Backport from https://svn.apache.org/viewvc?view=revision&revision=1807655
+
+diff --git a/server/core.c b/server/core.c
+index f61699e..d24542e 100644
+--- a/server/core.c
++++ b/server/core.c
+@@ -1809,6 +1809,12 @@ AP_CORE_DECLARE_NONSTD(const char *) ap_limit_section(cmd_parms *cmd,
+ /* method has not been registered yet, but resorce restriction
+ * is always checked before method handling, so register it.
+ */
++ if (cmd->pool == cmd->temp_pool) {
++ /* In .htaccess, we can't globally register new methods. */
++ return apr_psprintf(cmd->pool, "Could not register method '%s' "
++ "for %s from .htaccess configuration",
++ method, cmd->cmd->name);
++ }
+ methnum = ap_method_register(cmd->pool,
+ apr_pstrdup(cmd->pool, method));
+
diff --git a/abs/core/apache/apache.install b/abs/core/apache/apache.install
deleted file mode 100644
index 5665f08..0000000
--- a/abs/core/apache/apache.install
+++ /dev/null
@@ -1,16 +0,0 @@
-post_install() {
- if type -P systemd-tmpfiles &> /dev/null; then
- systemd-tmpfiles --create apache.conf
- fi
-}
-
-post_upgrade() {
- if type -P systemd-tmpfiles &> /dev/null; then
- systemd-tmpfiles --create apache.conf
- fi
-
- if [[ $2 == 2\.2\.* ]]; then
- # it is a major upgrade, show a useful link to upgrade instructions
- echo ' Check Apache upgrade instructions: https://httpd.apache.org/docs/2.4/upgrading.html'
- fi
-}
diff --git a/abs/core/apache/httpd.logrotate b/abs/core/apache/httpd.logrotate
index c9755de..02eb326 100644
--- a/abs/core/apache/httpd.logrotate
+++ b/abs/core/apache/httpd.logrotate
@@ -1,6 +1,7 @@
/var/log/httpd/*log {
missingok
+ sharedscripts
postrotate
- /bin/kill -HUP `cat /run/httpd/httpd.pid 2>/dev/null` 2> /dev/null || true
+ /usr/bin/systemctl reload httpd.service 2>/dev/null || true
endscript
}
diff --git a/abs/core/apache/httpd.service b/abs/core/apache/httpd.service
index 247e28f..67805ff 100644
--- a/abs/core/apache/httpd.service
+++ b/abs/core/apache/httpd.service
@@ -3,13 +3,13 @@ Description=Apache Web Server
After=network.target remote-fs.target nss-lookup.target
[Service]
-Type=forking
-PIDFile=/run/httpd/httpd.pid
-ExecStart=/usr/bin/apachectl start
-ExecStop=/usr/bin/apachectl graceful-stop
-ExecReload=/usr/bin/apachectl graceful
+Type=simple
+ExecStart=/usr/bin/httpd -k start -DFOREGROUND
+ExecStop=/usr/bin/httpd -k graceful-stop
+ExecReload=/usr/bin/httpd -k graceful
PrivateTmp=true
LimitNOFILE=infinity
+KillMode=mixed
[Install]
WantedBy=multi-user.target
diff --git a/abs/core/apache/nohttp2forprefork.patch b/abs/core/apache/nohttp2forprefork.patch
new file mode 100644
index 0000000..8bb337b
--- /dev/null
+++ b/abs/core/apache/nohttp2forprefork.patch
@@ -0,0 +1,506 @@
+From ab03196a879f4064f618a9a45d63c67a67f4b901 Mon Sep 17 00:00:00 2001
+From: Jim Jagielski <jim@apache.org>
+Date: Tue, 4 Jul 2017 12:34:15 +0000
+Subject: [PATCH] Merge r1800689 from trunk:
+
+On the trunk:
+
+mod_http2: disable and give warning when mpm_prefork is encountered.
+ The server will continue to work, but HTTP/2 will no longer be negotiated.
+
+
+Submitted by: icing
+Reviewed by: icing, ylavic, jim
+
+
+git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1800774 13f79535-47bb-0310-9956-ffa450edef68
+---
+ modules/http2/h2_conn.c | 21 +++++++-
+ modules/http2/h2_conn.h | 3 +-
+ modules/http2/h2_mplx.c | 37 +++++++-------
+ modules/http2/h2_mplx.h | 2 +-
+ modules/http2/h2_session.c | 7 +--
+ modules/http2/h2_stream.c | 14 +++++-
+ modules/http2/h2_switch.c | 8 +++
+ modules/http2/h2_util.c | 118 +++++++++++++++++++++------------------------
+ modules/http2/h2_workers.c | 7 +--
+ modules/http2/mod_http2.c | 12 +++++
+ 12 files changed, 139 insertions(+), 99 deletions(-)
+
+diff --git a/modules/http2/h2_conn.c b/modules/http2/h2_conn.c
+index fcf6bad4d41..e2502c2f167 100644
+--- a/modules/http2/h2_conn.c
++++ b/modules/http2/h2_conn.c
+@@ -47,6 +47,7 @@ static struct h2_workers *workers;
+ static h2_mpm_type_t mpm_type = H2_MPM_UNKNOWN;
+ static module *mpm_module;
+ static int async_mpm;
++static int mpm_supported = 1;
+ static apr_socket_t *dummy_socket;
+
+ static void check_modules(int force)
+@@ -76,11 +77,18 @@ static void check_modules(int force)
+ else if (!strcmp("prefork.c", m->name)) {
+ mpm_type = H2_MPM_PREFORK;
+ mpm_module = m;
++ /* While http2 can work really well on prefork, it collides
++ * today's use case for prefork: runnning single-thread app engines
++ * like php. If we restrict h2_workers to 1 per process, php will
++ * work fine, but browser will be limited to 1 active request at a
++ * time. */
++ mpm_supported = 0;
+ break;
+ }
+ else if (!strcmp("simple_api.c", m->name)) {
+ mpm_type = H2_MPM_SIMPLE;
+ mpm_module = m;
++ mpm_supported = 0;
+ break;
+ }
+ else if (!strcmp("mpm_winnt.c", m->name)) {
+@@ -107,7 +115,6 @@ apr_status_t h2_conn_child_init(apr_pool_t *pool, server_rec *s)
+ int idle_secs = 0;
+
+ check_modules(1);
+-
+ ap_mpm_query(AP_MPMQ_MAX_THREADS, &max_threads_per_child);
+
+ status = ap_mpm_query(AP_MPMQ_IS_ASYNC, &async_mpm);
+@@ -157,6 +164,18 @@ h2_mpm_type_t h2_conn_mpm_type(void)
+ return mpm_type;
+ }
+
++const char *h2_conn_mpm_name(void)
++{
++ check_modules(0);
++ return mpm_module? mpm_module->name : "unknown";
++}
++
++int h2_mpm_supported(void)
++{
++ check_modules(0);
++ return mpm_supported;
++}
++
+ static module *h2_conn_mpm_module(void)
+ {
+ check_modules(0);
+diff --git a/modules/http2/h2_conn.h b/modules/http2/h2_conn.h
+index 79948644ae8..7111a6cd69c 100644
+--- a/modules/http2/h2_conn.h
++++ b/modules/http2/h2_conn.h
+@@ -64,7 +64,8 @@ typedef enum {
+
+ /* Returns the type of MPM module detected */
+ h2_mpm_type_t h2_conn_mpm_type(void);
+-
++const char *h2_conn_mpm_name(void);
++int h2_mpm_supported(void);
+
+ conn_rec *h2_slave_create(conn_rec *master, int slave_id, apr_pool_t *parent);
+ void h2_slave_destroy(conn_rec *slave);
+diff --git a/modules/http2/h2_mplx.c b/modules/http2/h2_mplx.c
+index b73bd0d5bfd..214d84ed1f9 100644
+--- a/modules/http2/h2_mplx.c
++++ b/modules/http2/h2_mplx.c
+@@ -481,9 +481,6 @@ void h2_mplx_release_and_join(h2_mplx *m, apr_thread_cond_t *wait)
+
+ H2_MPLX_LEAVE(m);
+
+- /* 5. unregister again, now that our workers are done */
+- h2_workers_unregister(m->workers, m);
+-
+ ap_log_cerror(APLOG_MARK, APLOG_TRACE1, 0, m->c,
+ "h2_mplx(%ld): released", m->id);
+ }
+@@ -662,7 +659,7 @@ apr_status_t h2_mplx_reprioritize(h2_mplx *m, h2_stream_pri_cmp *cmp, void *ctx)
+
+ static void register_if_needed(h2_mplx *m)
+ {
+- if (!m->is_registered && !h2_iq_empty(m->q)) {
++ if (!m->aborted && !m->is_registered && !h2_iq_empty(m->q)) {
+ apr_status_t status = h2_workers_register(m->workers, m);
+ if (status == APR_SUCCESS) {
+ m->is_registered = 1;
+@@ -755,25 +752,27 @@ static h2_task *next_stream_task(h2_mplx *m)
+ return NULL;
+ }
+
+-h2_task *h2_mplx_pop_task(h2_mplx *m, int *has_more)
++apr_status_t h2_mplx_pop_task(h2_mplx *m, h2_task **ptask)
+ {
+- h2_task *task = NULL;
++ apr_status_t rv = APR_EOF;
+
+- H2_MPLX_ENTER_ALWAYS(m);
+-
+- *has_more = 0;
+- if (!m->aborted) {
+- task = next_stream_task(m);
+- if (task != NULL && !h2_iq_empty(m->q)) {
+- *has_more = 1;
+- }
+- else {
+- m->is_registered = 0; /* h2_workers will discard this mplx */
+- }
++ *ptask = NULL;
++ if (APR_SUCCESS != (rv = apr_thread_mutex_lock(m->lock))) {
++ return rv;
++ }
++
++ if (m->aborted) {
++ rv = APR_EOF;
++ }
++ else {
++ *ptask = next_stream_task(m);
++ rv = (*ptask != NULL && !h2_iq_empty(m->q))? APR_EAGAIN : APR_SUCCESS;
++ }
++ if (APR_EAGAIN != rv) {
++ m->is_registered = 0; /* h2_workers will discard this mplx */
+ }
+-
+ H2_MPLX_LEAVE(m);
+- return task;
++ return rv;
+ }
+
+ static void task_done(h2_mplx *m, h2_task *task, h2_req_engine *ngn)
+diff --git a/modules/http2/h2_mplx.h b/modules/http2/h2_mplx.h
+index 61b1b99aba7..d56c65289c2 100644
+--- a/modules/http2/h2_mplx.h
++++ b/modules/http2/h2_mplx.h
+@@ -124,7 +124,7 @@ h2_mplx *h2_mplx_create(conn_rec *c, apr_pool_t *master,
+ */
+ void h2_mplx_release_and_join(h2_mplx *m, struct apr_thread_cond_t *wait);
+
+-struct h2_task *h2_mplx_pop_task(h2_mplx *mplx, int *has_more);
++apr_status_t h2_mplx_pop_task(h2_mplx *m, struct h2_task **ptask);
+
+ void h2_mplx_task_done(h2_mplx *m, struct h2_task *task, struct h2_task **ptask);
+
+diff --git a/modules/http2/h2_session.c b/modules/http2/h2_session.c
+index bc24bb41cdb..da85d7053fd 100644
+--- a/modules/http2/h2_session.c
++++ b/modules/http2/h2_session.c
+@@ -326,6 +326,7 @@ static int on_frame_recv_cb(nghttp2_session *ng2s,
+ {
+ h2_session *session = (h2_session *)userp;
+ h2_stream *stream;
++ apr_status_t rv = APR_SUCCESS;
+
+ if (APLOGcdebug(session->c)) {
+ char buffer[256];
+@@ -346,7 +347,7 @@ static int on_frame_recv_cb(nghttp2_session *ng2s,
+ * trailers */
+ stream = h2_session_stream_get(session, frame->hd.stream_id);
+ if (stream) {
+- h2_stream_recv_frame(stream, NGHTTP2_HEADERS, frame->hd.flags);
++ rv = h2_stream_recv_frame(stream, NGHTTP2_HEADERS, frame->hd.flags);
+ }
+ break;
+ case NGHTTP2_DATA:
+@@ -356,7 +357,7 @@ static int on_frame_recv_cb(nghttp2_session *ng2s,
+ H2_STRM_LOG(APLOGNO(02923), stream,
+ "DATA, len=%ld, flags=%d"),
+ (long)frame->hd.length, frame->hd.flags);
+- h2_stream_recv_frame(stream, NGHTTP2_DATA, frame->hd.flags);
++ rv = h2_stream_recv_frame(stream, NGHTTP2_DATA, frame->hd.flags);
+ }
+ break;
+ case NGHTTP2_PRIORITY:
+@@ -411,7 +412,7 @@ static int on_frame_recv_cb(nghttp2_session *ng2s,
+ }
+ break;
+ }
+- return 0;
++ return (APR_SUCCESS == rv)? 0 : NGHTTP2_ERR_PROTO;
+ }
+
+ static int h2_session_continue_data(h2_session *session) {
+diff --git a/modules/http2/h2_stream.c b/modules/http2/h2_stream.c
+index 4cd2132207e..925f3d6d81d 100644
+--- a/modules/http2/h2_stream.c
++++ b/modules/http2/h2_stream.c
+@@ -444,7 +444,13 @@ apr_status_t h2_stream_recv_frame(h2_stream *stream, int ftype, int flags)
+ else {
+ /* request HEADER */
+ ap_assert(stream->request == NULL);
+- ap_assert(stream->rtmp != NULL);
++ if (stream->rtmp == NULL) {
++ /* This can only happen, if the stream has received no header
++ * name/value pairs at all. The lastest nghttp2 version have become
++ * pretty good at detecting this early. In any case, we have
++ * to abort the connection here, since this is clearly a protocol error */
++ return APR_EINVAL;
++ }
+ status = h2_request_end_headers(stream->rtmp, stream->pool, eos);
+ if (status != APR_SUCCESS) {
+ return status;
+@@ -739,9 +745,13 @@ apr_status_t h2_stream_add_header(h2_stream *stream,
+ status = h2_request_add_header(stream->rtmp, stream->pool,
+ name, nlen, value, vlen);
+ }
+- else {
++ else if (H2_SS_OPEN == stream->state) {
+ status = add_trailer(stream, name, nlen, value, vlen);
+ }
++ else {
++ status = APR_EINVAL;
++ }
++
+ if (status != APR_SUCCESS) {
+ ap_log_cerror(APLOG_MARK, APLOG_TRACE1, 0, session->c,
+ H2_STRM_MSG(stream, "header %s not accepted"), name);
+diff --git a/modules/http2/h2_switch.c b/modules/http2/h2_switch.c
+index 8a8d56e59ef..5b1247ec700 100644
+--- a/modules/http2/h2_switch.c
++++ b/modules/http2/h2_switch.c
+@@ -55,6 +55,10 @@ static int h2_protocol_propose(conn_rec *c, request_rec *r,
+ const char **protos = is_tls? h2_tls_protos : h2_clear_protos;
+
+ (void)s;
++ if (!h2_mpm_supported()) {
++ return DECLINED;
++ }
++
+ if (strcmp(AP_PROTOCOL_HTTP1, ap_get_protocol(c))) {
+ /* We do not know how to switch from anything else but http/1.1.
+ */
+@@ -127,6 +131,10 @@ static int h2_protocol_switch(conn_rec *c, request_rec *r, server_rec *s,
+ const char **p = protos;
+
+ (void)s;
++ if (!h2_mpm_supported()) {
++ return DECLINED;
++ }
++
+ while (*p) {
+ if (!strcmp(*p, protocol)) {
+ found = 1;
+diff --git a/modules/http2/h2_util.c b/modules/http2/h2_util.c
+index 01b506ac854..04a9311424e 100644
+--- a/modules/http2/h2_util.c
++++ b/modules/http2/h2_util.c
+@@ -695,16 +695,47 @@ int h2_fifo_count(h2_fifo *fifo)
+
+ static apr_status_t check_not_empty(h2_fifo *fifo, int block)
+ {
+- if (fifo->count == 0) {
++ while (fifo->count == 0) {
+ if (!block) {
+ return APR_EAGAIN;
+ }
+- while (fifo->count == 0) {
+- if (fifo->aborted) {
+- return APR_EOF;
++ if (fifo->aborted) {
++ return APR_EOF;
++ }
++ apr_thread_cond_wait(fifo->not_empty, fifo->lock);
++ }
++ return APR_SUCCESS;
++}
++
++static apr_status_t fifo_push_int(h2_fifo *fifo, void *elem, int block)
++{
++ if (fifo->aborted) {
++ return APR_EOF;
++ }
++
++ if (fifo->set && index_of(fifo, elem) >= 0) {
++ /* set mode, elem already member */
++ return APR_EEXIST;
++ }
++ else if (fifo->count == fifo->nelems) {
++ if (block) {
++ while (fifo->count == fifo->nelems) {
++ if (fifo->aborted) {
++ return APR_EOF;
++ }
++ apr_thread_cond_wait(fifo->not_full, fifo->lock);
+ }
+- apr_thread_cond_wait(fifo->not_empty, fifo->lock);
+ }
++ else {
++ return APR_EAGAIN;
++ }
++ }
++
++ ap_assert(fifo->count < fifo->nelems);
++ fifo->elems[nth_index(fifo, fifo->count)] = elem;
++ ++fifo->count;
++ if (fifo->count == 1) {
++ apr_thread_cond_broadcast(fifo->not_empty);
+ }
+ return APR_SUCCESS;
+ }
+@@ -718,33 +749,7 @@ static apr_status_t fifo_push(h2_fifo *fifo, void *elem, int block)
+ }
+
+ if ((rv = apr_thread_mutex_lock(fifo->lock)) == APR_SUCCESS) {
+- if (fifo->set && index_of(fifo, elem) >= 0) {
+- /* set mode, elem already member */
+- apr_thread_mutex_unlock(fifo->lock);
+- return APR_EEXIST;
+- }
+- else if (fifo->count == fifo->nelems) {
+- if (block) {
+- while (fifo->count == fifo->nelems) {
+- if (fifo->aborted) {
+- apr_thread_mutex_unlock(fifo->lock);
+- return APR_EOF;
+- }
+- apr_thread_cond_wait(fifo->not_full, fifo->lock);
+- }
+- }
+- else {
+- apr_thread_mutex_unlock(fifo->lock);
+- return APR_EAGAIN;
+- }
+- }
+-
+- ap_assert(fifo->count < fifo->nelems);
+- fifo->elems[nth_index(fifo, fifo->count)] = elem;
+- ++fifo->count;
+- if (fifo->count == 1) {
+- apr_thread_cond_broadcast(fifo->not_empty);
+- }
++ rv = fifo_push_int(fifo, elem, block);
+ apr_thread_mutex_unlock(fifo->lock);
+ }
+ return rv;
+@@ -760,12 +765,15 @@ apr_status_t h2_fifo_try_push(h2_fifo *fifo, void *elem)
+ return fifo_push(fifo, elem, 0);
+ }
+
+-static void *pull_head(h2_fifo *fifo)
++static apr_status_t pull_head(h2_fifo *fifo, void **pelem, int block)
+ {
+- void *elem;
++ apr_status_t rv;
+
+- ap_assert(fifo->count > 0);
+- elem = fifo->elems[fifo->head];
++ if ((rv = check_not_empty(fifo, block)) != APR_SUCCESS) {
++ *pelem = NULL;
++ return rv;
++ }
++ *pelem = fifo->elems[fifo->head];
+ --fifo->count;
+ if (fifo->count > 0) {
+ fifo->head = nth_index(fifo, 1);
+@@ -773,7 +781,7 @@ static void *pull_head(h2_fifo *fifo)
+ apr_thread_cond_broadcast(fifo->not_full);
+ }
+ }
+- return elem;
++ return APR_SUCCESS;
+ }
+
+ static apr_status_t fifo_pull(h2_fifo *fifo, void **pelem, int block)
+@@ -785,15 +793,7 @@ static apr_status_t fifo_pull(h2_fifo *fifo, void **pelem, int block)
+ }
+
+ if ((rv = apr_thread_mutex_lock(fifo->lock)) == APR_SUCCESS) {
+- if ((rv = check_not_empty(fifo, block)) != APR_SUCCESS) {
+- apr_thread_mutex_unlock(fifo->lock);
+- *pelem = NULL;
+- return rv;
+- }
+-
+- ap_assert(fifo->count > 0);
+- *pelem = pull_head(fifo);
+-
++ rv = pull_head(fifo, pelem, block);
+ apr_thread_mutex_unlock(fifo->lock);
+ }
+ return rv;
+@@ -818,25 +818,17 @@ static apr_status_t fifo_peek(h2_fifo *fifo, h2_fifo_peek_fn *fn, void *ctx, int
+ return APR_EOF;
+ }
+
+- if ((rv = apr_thread_mutex_lock(fifo->lock)) == APR_SUCCESS) {
+- if ((rv = check_not_empty(fifo, block)) != APR_SUCCESS) {
+- apr_thread_mutex_unlock(fifo->lock);
+- return rv;
++ if (APR_SUCCESS == (rv = apr_thread_mutex_lock(fifo->lock))) {
++ if (APR_SUCCESS == (rv = pull_head(fifo, &elem, block))) {
++ switch (fn(elem, ctx)) {
++ case H2_FIFO_OP_PULL:
++ break;
++ case H2_FIFO_OP_REPUSH:
++ rv = fifo_push_int(fifo, elem, block);
++ break;
++ }
+ }
+-
+- ap_assert(fifo->count > 0);
+- elem = pull_head(fifo);
+-
+ apr_thread_mutex_unlock(fifo->lock);
+-
+- switch (fn(elem, ctx)) {
+- case H2_FIFO_OP_PULL:
+- break;
+- case H2_FIFO_OP_REPUSH:
+- return h2_fifo_push(fifo, elem);
+- break;
+- }
+-
+ }
+ return rv;
+ }
+diff --git a/modules/http2/h2_workers.c b/modules/http2/h2_workers.c
+index 0bbb65223f7..5abddd4a1d5 100644
+--- a/modules/http2/h2_workers.c
++++ b/modules/http2/h2_workers.c
+@@ -150,15 +150,16 @@ static void cleanup_zombies(h2_workers *workers)
+
+ static apr_status_t slot_pull_task(h2_slot *slot, h2_mplx *m)
+ {
+- int has_more;
+- slot->task = h2_mplx_pop_task(m, &has_more);
++ apr_status_t rv;
++
++ rv = h2_mplx_pop_task(m, &slot->task);
+ if (slot->task) {
+ /* Ok, we got something to give back to the worker for execution.
+ * If we still have idle workers, we let the worker be sticky,
+ * e.g. making it poll the task's h2_mplx instance for more work
+ * before asking back here. */
+ slot->sticks = slot->workers->max_workers;
+- return has_more? APR_EAGAIN : APR_SUCCESS;
++ return rv;
+ }
+ slot->sticks = 0;
+ return APR_EOF;
+diff --git a/modules/http2/mod_http2.c b/modules/http2/mod_http2.c
+index ea399c91a28..420e74c3363 100644
+--- a/modules/http2/mod_http2.c
++++ b/modules/http2/mod_http2.c
+@@ -65,6 +65,7 @@ typedef struct {
+ } features;
+
+ static features myfeats;
++static int mpm_warned;
+
+ /* The module initialization. Called once as apache hook, before any multi
+ * processing (threaded or not) happens. It is typically at least called twice,
+@@ -141,6 +142,17 @@ static int h2_post_config(apr_pool_t *p, apr_pool_t *plog,
+ break;
+ }
+
++ if (!h2_mpm_supported() && !mpm_warned) {
++ mpm_warned = 1;
++ ap_log_error(APLOG_MARK, APLOG_WARNING, 0, s, APLOGNO(10034)
++ "The mpm module (%s) is not supported by mod_http2. The mpm determines "
++ "how things are processed in your server. HTTP/2 has more demands in "
++ "this regard and the currently selected mpm will just not do. "
++ "This is an advisory warning. Your server will continue to work, but "
++ "the HTTP/2 protocol will be inactive.",
++ h2_conn_mpm_name());
++ }
++
+ status = h2_h2_init(p, s);
+ if (status == APR_SUCCESS) {
+ status = h2_switch_init(p, s);
diff --git a/abs/core/apache/openssl-malloc-init.patch b/abs/core/apache/openssl-malloc-init.patch
new file mode 100644
index 0000000..bfe108f
--- /dev/null
+++ b/abs/core/apache/openssl-malloc-init.patch
@@ -0,0 +1,20 @@
+--- httpd-2.4.25/support/ab.c.orig 2017-05-21 21:59:17.131193359 +0000
++++ httpd-2.4.25/support/ab.c 2017-05-21 22:01:34.704322361 +0000
+@@ -2496,6 +2496,8 @@
+ heartbeatres = 0;
+
+ #ifdef USE_SSL
++ SSL_load_error_strings();
++ SSL_library_init();
+ #ifdef RSAREF
+ R_malloc_init();
+ #else
+@@ -2505,8 +2507,6 @@
+ OPENSSL_malloc_init();
+ #endif
+ #endif
+- SSL_load_error_strings();
+- SSL_library_init();
+ bio_out=BIO_new_fp(stdout,BIO_NOCLOSE);
+ bio_err=BIO_new_fp(stderr,BIO_NOCLOSE);
+
diff --git a/abs/core/apache/script_name.patch b/abs/core/apache/script_name.patch
new file mode 100644
index 0000000..427659b
--- /dev/null
+++ b/abs/core/apache/script_name.patch
@@ -0,0 +1,84 @@
+From 7806711b85b46c3caad150c8fde97f29f32ae6f8 Mon Sep 17 00:00:00 2001
+From: Jim Jagielski <jim@apache.org>
+Date: Mon, 3 Jul 2017 10:22:07 +0000
+Subject: [PATCH] Merge r1800306, r1800393 from trunk:
+
+proxy_fcgi: remove FPM-specific logic
+
+Reverts r1780328, r1780329, and their associated followups, which
+incorrectly manipulated SCRIPT_NAME by default. All proxy_fcgi.t
+regression tests now pass.
+
+PR: 61202
+
+Partial reversal of r1800306... note virtual scripts in notes
+
+Submitted by: jchampion, jim
+Reviewed by: jchampion, jim, covener
+
+
+git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@1800618 13f79535-47bb-0310-9956-ffa450edef68
+---
+ modules/proxy/mod_proxy_fcgi.c | 32 --------------------------------
+ 3 files changed, 4 insertions(+), 39 deletions(-)
+
+diff --git a/modules/proxy/mod_proxy_fcgi.c b/modules/proxy/mod_proxy_fcgi.c
+index a268556e302..41292e87267 100644
+--- a/modules/proxy/mod_proxy_fcgi.c
++++ b/modules/proxy/mod_proxy_fcgi.c
+@@ -321,7 +321,6 @@ static apr_status_t send_environment(proxy_conn_rec *conn, request_rec *r,
+ apr_status_t rv;
+ apr_size_t avail_len, len, required_len;
+ int next_elem, starting_elem;
+- int fpm = 0;
+ fcgi_req_config_t *rconf = ap_get_module_config(r->request_config, &proxy_fcgi_module);
+ fcgi_dirconf_t *dconf = ap_get_module_config(r->per_dir_config, &proxy_fcgi_module);
+
+@@ -354,8 +353,6 @@ static apr_status_t send_environment(proxy_conn_rec *conn, request_rec *r,
+ *qs = '\0';
+ }
+ }
+- } else {
+- fpm = 1;
+ }
+
+ if (newfname) {
+@@ -364,38 +361,9 @@ static apr_status_t send_environment(proxy_conn_rec *conn, request_rec *r,
+ }
+ }
+
+-#if 0
+- ap_log_rerror(APLOG_MARK, APLOG_DEBUG, 0, r, APLOGNO(09999)
+- "r->filename: %s", (r->filename ? r->filename : "nil"));
+- ap_log_rerror(APLOG_MARK, APLOG_DEBUG, 0, r, APLOGNO(09999)
+- "r->uri: %s", (r->uri ? r->uri : "nil"));
+- ap_log_rerror(APLOG_MARK, APLOG_DEBUG, 0, r, APLOGNO(09999)
+- "r->path_info: %s", (r->path_info ? r->path_info : "nil"));
+-#endif
+-
+ ap_add_common_vars(r);
+ ap_add_cgi_vars(r);
+
+- if (fpm || apr_table_get(r->notes, "virtual_script")) {
+- /*
+- * Adjust SCRIPT_NAME, PATH_INFO and PATH_TRANSLATED for PHP-FPM
+- * TODO: Right now, PATH_INFO and PATH_TRANSLATED look OK...
+- */
+- const char *pend;
+- const char *script_name = apr_table_get(r->subprocess_env, "SCRIPT_NAME");
+- pend = script_name + strlen(script_name);
+- if (r->path_info && *r->path_info) {
+- pend = script_name + ap_find_path_info(script_name, r->path_info) - 1;
+- }
+- while (pend != script_name && *pend != '/') {
+- pend--;
+- }
+- apr_table_setn(r->subprocess_env, "SCRIPT_NAME", pend);
+- ap_log_rerror(APLOG_MARK, APLOG_TRACE4, 0, r,
+- "fpm:virtual_script: Modified SCRIPT_NAME to: %s",
+- pend);
+- }
+-
+ /* XXX are there any FastCGI specific env vars we need to send? */
+
+ /* Give admins final option to fine-tune env vars */
diff --git a/abs/core/apr-util/PKGBUILD b/abs/core/apr-util/PKGBUILD
index 4a8b380..4ce2874 100644
--- a/abs/core/apr-util/PKGBUILD
+++ b/abs/core/apr-util/PKGBUILD
@@ -1,24 +1,51 @@
-# $Id: PKGBUILD 149396 2012-02-07 13:30:38Z jgc $
+# $Id$
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Maintainer: Pierre Schmitz <pierre@archlinux.de>
pkgname=apr-util
-pkgver=1.4.1
-pkgrel=1
+pkgver=1.6.1
+pkgrel=2
pkgdesc="The Apache Portable Runtime"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://apr.apache.org/"
-depends=('apr' 'gdbm' 'expat' 'db' 'libldap' 'unixodbc')
-options=('!libtool')
+depends=('apr' 'expat')
+makedepends=('gdbm' 'libldap' 'unixodbc' 'openssl' 'nss' 'sqlite' 'libmariadbclient' 'db' 'postgresql-libs' 'python2')
+optdepends=(
+ 'gdbm: enable gdbm support'
+ 'libldap: enable ldap support'
+ 'unixodbc: enable odbc support'
+ 'libmariadbclient: enable mysql/mariadb support'
+ 'postgresql-libs: enable postgres support'
+ 'db: enable berkley db support'
+ 'sqlite: enable sqlite support'
+ 'nss: enable nss crypto support'
+ 'openssl: enable openssl crypto support'
+)
license=('APACHE')
-source=("http://www.apache.org/dist/apr/apr-util-${pkgver}.tar.bz2")
-md5sums=('52b31b33fb1aa16e65ddaefc76e41151')
+source=(https://www.apache.org/dist/apr/apr-util-${pkgver}.tar.bz2{,.asc}
+ disable_failing_test.patch # TODO: figure out why dbm test fails
+ buildconf_config.guess_sub_location.patch)
+sha512sums=('40eff8a37c0634f7fdddd6ca5e596b38de15fd10767a34c30bbe49c632816e8f3e1e230678034f578dd5816a94f246fb5dfdf48d644829af13bf28de3225205d'
+ 'SKIP'
+ 'f3de06f845972e5fc85c0d01847bcd0cfbbdd5015798970c73e5ef1b2699c54118f00ba5b939d84bbdf748bd1a5088c1393289b1e62c005fa77878436c165802'
+ 'd19024b8a19e46e85dd03e2c06afae13b527e56c0e2864e5b92652c8ed558f155647f50b9cfaddb6e919b5a60922970b1d9f6c7fc62cd5872b3d22e787f99c65')
+validpgpkeys=('5B5181C2C0AB13E59DA3F7A3EC582EB639FF092C' # Jeff Trawick
+ 'B1B96F45DFBDCCF974019235193F180AB55D9977' # William A. Rowe, Jr. <wrowe@rowe-clan.net>
+ '3CE3BAC2EB7BBC624D1D22D8F3B9D88CB87F79A9') # Nick Kew <niq@apache.org>
+
+prepare() {
+ cd apr-util-$pkgver
+ patch -Np1 -i ../buildconf_config.guess_sub_location.patch
+ patch -Np1 -i ../disable_failing_test.patch
+ ./buildconf --with-apr=`apr-1-config --srcdir`
+}
build() {
cd "${srcdir}/apr-util-${pkgver}"
- ./configure --prefix=/usr --with-apr=/usr \
- --without-pgsql --without-mysql --without-sqlite2 --without-sqlite3 \
- --with-berkeley-db=/usr --with-gdbm=/usr --with-ldap
+ ./configure --prefix=/usr --with-apr=/usr --with-ldap --with-crypto \
+ --with-gdbm=/usr --with-sqlite3=/usr --with-nss=/usr --with-odbc=/usr \
+ --with-berkeley-db=/usr --with-pgsql=/usr --with-mysql=/usr --with-oracle=/usr \
+ --with-openssl=/usr
make
}
diff --git a/abs/core/apr-util/buildconf_config.guess_sub_location.patch b/abs/core/apr-util/buildconf_config.guess_sub_location.patch
new file mode 100644
index 0000000..c89bef9
--- /dev/null
+++ b/abs/core/apr-util/buildconf_config.guess_sub_location.patch
@@ -0,0 +1,22 @@
+From: Tollef Fog Heen <tfheen@debian.org>
+Subject: Adjust path of config.guess and config.sub
+
+---
+ buildconf | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+Index: trunk/buildconf
+===================================================================
+--- trunk.orig/buildconf
++++ trunk/buildconf
+@@ -61,8 +61,8 @@
+ rm -f build/apr_common.m4 build/find_apr.m4 build/install.sh \
+ build/config.guess build/config.sub build/get-version.sh
+ cp -p $apr_src_dir/build/apr_common.m4 $apr_src_dir/build/find_apr.m4 \
+- $apr_src_dir/build/install.sh $apr_src_dir/build/config.guess \
+- $apr_src_dir/build/config.sub $apr_src_dir/build/get-version.sh \
++ $apr_src_dir/build/install.sh /usr/share/libtool/build-aux/config.guess \
++ /usr/share/libtool/build-aux/config.sub $apr_src_dir/build/get-version.sh \
+ build/
+
+ # Remove aclocal.m4 as it'll break some builds...
diff --git a/abs/core/apr-util/disable_failing_test.patch b/abs/core/apr-util/disable_failing_test.patch
new file mode 100644
index 0000000..536173a
--- /dev/null
+++ b/abs/core/apr-util/disable_failing_test.patch
@@ -0,0 +1,13 @@
+diff --git a/test/testdbm.c b/test/testdbm.c
+index 89d8d2f..7de9307 100644
+--- a/test/testdbm.c
++++ b/test/testdbm.c
+@@ -205,7 +205,7 @@ abts_suite *testdbm(abts_suite *suite)
+ suite = ADD_SUITE(suite);
+
+ #if APU_HAVE_GDBM
+- abts_run_test(suite, test_dbm, "gdbm");
++// abts_run_test(suite, test_dbm, "gdbm");
+ #endif
+ #if APU_HAVE_NDBM
+ abts_run_test(suite, test_dbm, "ndbm");
diff --git a/abs/core/apr-util/openssl-1.1.patch b/abs/core/apr-util/openssl-1.1.patch
new file mode 100644
index 0000000..090eb02
--- /dev/null
+++ b/abs/core/apr-util/openssl-1.1.patch
@@ -0,0 +1,250 @@
+# commit f163d8b5af9185de80d24b4dd13951dd64872aa6
+# Author: Rainer Jung <rjung@apache.org>
+# Date: Sun Feb 7 14:40:46 2016 +0000
+#
+# Add support for OpenSSL 1.1.0:
+# - Switch configure test for OpenSSL libcrypto
+# from BN_init() to BN_new().
+# - BN_init() is gone in OpenSSL 1.1.0.
+# BN_new() exists at least since 0.9.8.
+# - use OPENSSL_malloc_init() instead of
+# CRYPTO_malloc_init
+# - make cipherCtx a pointer. Type EVP_CIPHER_CTX
+# is now opaque.
+# - use EVP_CIPHER_CTX_new() in init() functions
+# if initialised flag is not set (and set flag)
+# - use EVP_CIPHER_CTX_free() in cleanup function
+# - Improve reuse cleanup
+# - call EVP_CIPHER_CTX_reset() resp.
+# EVP_CIPHER_CTX_cleanup() in finish functions
+# - call EVP_CIPHER_CTX_reset() resp.
+# EVP_CIPHER_CTX_cleanup() when Update fails
+# Backport of r1728958 and r1728963 from trunk.
+#
+#
+# git-svn-id: https://svn.apache.org/repos/asf/apr/apr-util/branches/1.5.x@1728969 13f79535-47bb-0310-9956-ffa450edef68
+#
+diff --git a/build/crypto.m4 b/build/crypto.m4
+index 9f9be6f..57884e3 100644
+--- a/build/crypto.m4
++++ b/build/crypto.m4
+@@ -88,7 +88,7 @@ AC_DEFUN([APU_CHECK_CRYPTO_OPENSSL], [
+ [
+ if test "$withval" = "yes"; then
+ AC_CHECK_HEADERS(openssl/x509.h, [openssl_have_headers=1])
+- AC_CHECK_LIB(crypto, BN_init, AC_CHECK_LIB(ssl, SSL_accept, [openssl_have_libs=1],,-lcrypto))
++ AC_CHECK_LIB(crypto, BN_new, AC_CHECK_LIB(ssl, SSL_accept, [openssl_have_libs=1],,-lcrypto))
+ if test "$openssl_have_headers" != "0" && test "$openssl_have_libs" != "0"; then
+ apu_have_openssl=1
+ fi
+@@ -104,7 +104,7 @@ AC_DEFUN([APU_CHECK_CRYPTO_OPENSSL], [
+
+ AC_MSG_NOTICE(checking for openssl in $withval)
+ AC_CHECK_HEADERS(openssl/x509.h, [openssl_have_headers=1])
+- AC_CHECK_LIB(crypto, BN_init, AC_CHECK_LIB(ssl, SSL_accept, [openssl_have_libs=1],,-lcrypto))
++ AC_CHECK_LIB(crypto, BN_new, AC_CHECK_LIB(ssl, SSL_accept, [openssl_have_libs=1],,-lcrypto))
+ if test "$openssl_have_headers" != "0" && test "$openssl_have_libs" != "0"; then
+ apu_have_openssl=1
+ APR_ADDTO(APRUTIL_LDFLAGS, [-L$withval/lib])
+@@ -113,7 +113,7 @@ AC_DEFUN([APU_CHECK_CRYPTO_OPENSSL], [
+
+ if test "$apu_have_openssl" != "1"; then
+ AC_CHECK_HEADERS(openssl/x509.h, [openssl_have_headers=1])
+- AC_CHECK_LIB(crypto, BN_init, AC_CHECK_LIB(ssl, SSL_accept, [openssl_have_libs=1],,-lcrypto))
++ AC_CHECK_LIB(crypto, BN_new, AC_CHECK_LIB(ssl, SSL_accept, [openssl_have_libs=1],,-lcrypto))
+ if test "$openssl_have_headers" != "0" && test "$openssl_have_libs" != "0"; then
+ apu_have_openssl=1
+ APR_ADDTO(APRUTIL_LDFLAGS, [-L$withval/lib])
+diff --git a/crypto/apr_crypto_openssl.c b/crypto/apr_crypto_openssl.c
+index 0740f93..7d61fca 100644
+--- a/crypto/apr_crypto_openssl.c
++++ b/crypto/apr_crypto_openssl.c
+@@ -64,7 +64,7 @@ struct apr_crypto_block_t {
+ apr_pool_t *pool;
+ const apr_crypto_driver_t *provider;
+ const apr_crypto_t *f;
+- EVP_CIPHER_CTX cipherCtx;
++ EVP_CIPHER_CTX *cipherCtx;
+ int initialised;
+ int ivSize;
+ int blockSize;
+@@ -111,7 +111,11 @@ static apr_status_t crypto_shutdown_helper(void *data)
+ static apr_status_t crypto_init(apr_pool_t *pool, const char *params,
+ const apu_err_t **result)
+ {
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ CRYPTO_malloc_init();
++#else
++ OPENSSL_malloc_init();
++#endif
+ ERR_load_crypto_strings();
+ /* SSL_load_error_strings(); */
+ OpenSSL_add_all_algorithms();
+@@ -134,7 +138,7 @@ static apr_status_t crypto_block_cleanup(apr_crypto_block_t *ctx)
+ {
+
+ if (ctx->initialised) {
+- EVP_CIPHER_CTX_cleanup(&ctx->cipherCtx);
++ EVP_CIPHER_CTX_free(ctx->cipherCtx);
+ ctx->initialised = 0;
+ }
+
+@@ -491,8 +495,10 @@ static apr_status_t crypto_block_encrypt_init(apr_crypto_block_t **ctx,
+ apr_pool_cleanup_null);
+
+ /* create a new context for encryption */
+- EVP_CIPHER_CTX_init(&block->cipherCtx);
+- block->initialised = 1;
++ if (!block->initialised) {
++ block->cipherCtx = EVP_CIPHER_CTX_new();
++ block->initialised = 1;
++ }
+
+ /* generate an IV, if necessary */
+ usedIv = NULL;
+@@ -519,16 +525,16 @@ static apr_status_t crypto_block_encrypt_init(apr_crypto_block_t **ctx,
+
+ /* set up our encryption context */
+ #if CRYPTO_OPENSSL_CONST_BUFFERS
+- if (!EVP_EncryptInit_ex(&block->cipherCtx, key->cipher, config->engine,
++ if (!EVP_EncryptInit_ex(block->cipherCtx, key->cipher, config->engine,
+ key->key, usedIv)) {
+ #else
+- if (!EVP_EncryptInit_ex(&block->cipherCtx, key->cipher, config->engine, (unsigned char *) key->key, (unsigned char *) usedIv)) {
++ if (!EVP_EncryptInit_ex(block->cipherCtx, key->cipher, config->engine, (unsigned char *) key->key, (unsigned char *) usedIv)) {
+ #endif
+ return APR_EINIT;
+ }
+
+ /* Clear up any read padding */
+- if (!EVP_CIPHER_CTX_set_padding(&block->cipherCtx, key->doPad)) {
++ if (!EVP_CIPHER_CTX_set_padding(block->cipherCtx, key->doPad)) {
+ return APR_EPADDING;
+ }
+
+@@ -582,11 +588,16 @@ static apr_status_t crypto_block_encrypt(unsigned char **out,
+ }
+
+ #if CRYPT_OPENSSL_CONST_BUFFERS
+- if (!EVP_EncryptUpdate(&ctx->cipherCtx, (*out), &outl, in, inlen)) {
++ if (!EVP_EncryptUpdate(ctx->cipherCtx, (*out), &outl, in, inlen)) {
+ #else
+- if (!EVP_EncryptUpdate(&ctx->cipherCtx, (*out), &outl,
++ if (!EVP_EncryptUpdate(ctx->cipherCtx, (*out), &outl,
+ (unsigned char *) in, inlen)) {
+ #endif
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
++ EVP_CIPHER_CTX_cleanup(ctx->cipherCtx);
++#else
++ EVP_CIPHER_CTX_reset(ctx->cipherCtx);
++#endif
+ return APR_ECRYPT;
+ }
+ *outlen = outl;
+@@ -616,14 +627,22 @@ static apr_status_t crypto_block_encrypt(unsigned char **out,
+ static apr_status_t crypto_block_encrypt_finish(unsigned char *out,
+ apr_size_t *outlen, apr_crypto_block_t *ctx)
+ {
++ apr_status_t rc = APR_SUCCESS;
+ int len = *outlen;
+
+- if (EVP_EncryptFinal_ex(&ctx->cipherCtx, out, &len) == 0) {
+- return APR_EPADDING;
++ if (EVP_EncryptFinal_ex(ctx->cipherCtx, out, &len) == 0) {
++ rc = APR_EPADDING;
++ }
++ else {
++ *outlen = len;
+ }
+- *outlen = len;
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
++ EVP_CIPHER_CTX_cleanup(ctx->cipherCtx);
++#else
++ EVP_CIPHER_CTX_reset(ctx->cipherCtx);
++#endif
+
+- return APR_SUCCESS;
++ return rc;
+
+ }
+
+@@ -662,8 +681,10 @@ static apr_status_t crypto_block_decrypt_init(apr_crypto_block_t **ctx,
+ apr_pool_cleanup_null);
+
+ /* create a new context for encryption */
+- EVP_CIPHER_CTX_init(&block->cipherCtx);
+- block->initialised = 1;
++ if (!block->initialised) {
++ block->cipherCtx = EVP_CIPHER_CTX_new();
++ block->initialised = 1;
++ }
+
+ /* generate an IV, if necessary */
+ if (key->ivSize) {
+@@ -674,16 +695,16 @@ static apr_status_t crypto_block_decrypt_init(apr_crypto_block_t **ctx,
+
+ /* set up our encryption context */
+ #if CRYPTO_OPENSSL_CONST_BUFFERS
+- if (!EVP_DecryptInit_ex(&block->cipherCtx, key->cipher, config->engine,
++ if (!EVP_DecryptInit_ex(block->cipherCtx, key->cipher, config->engine,
+ key->key, iv)) {
+ #else
+- if (!EVP_DecryptInit_ex(&block->cipherCtx, key->cipher, config->engine, (unsigned char *) key->key, (unsigned char *) iv)) {
++ if (!EVP_DecryptInit_ex(block->cipherCtx, key->cipher, config->engine, (unsigned char *) key->key, (unsigned char *) iv)) {
+ #endif
+ return APR_EINIT;
+ }
+
+ /* Clear up any read padding */
+- if (!EVP_CIPHER_CTX_set_padding(&block->cipherCtx, key->doPad)) {
++ if (!EVP_CIPHER_CTX_set_padding(block->cipherCtx, key->doPad)) {
+ return APR_EPADDING;
+ }
+
+@@ -737,11 +758,16 @@ static apr_status_t crypto_block_decrypt(unsigned char **out,
+ }
+
+ #if CRYPT_OPENSSL_CONST_BUFFERS
+- if (!EVP_DecryptUpdate(&ctx->cipherCtx, *out, &outl, in, inlen)) {
++ if (!EVP_DecryptUpdate(ctx->cipherCtx, *out, &outl, in, inlen)) {
+ #else
+- if (!EVP_DecryptUpdate(&ctx->cipherCtx, *out, &outl, (unsigned char *) in,
++ if (!EVP_DecryptUpdate(ctx->cipherCtx, *out, &outl, (unsigned char *) in,
+ inlen)) {
+ #endif
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
++ EVP_CIPHER_CTX_cleanup(ctx->cipherCtx);
++#else
++ EVP_CIPHER_CTX_reset(ctx->cipherCtx);
++#endif
+ return APR_ECRYPT;
+ }
+ *outlen = outl;
+@@ -771,15 +797,22 @@ static apr_status_t crypto_block_decrypt(unsigned char **out,
+ static apr_status_t crypto_block_decrypt_finish(unsigned char *out,
+ apr_size_t *outlen, apr_crypto_block_t *ctx)
+ {
+-
++ apr_status_t rc = APR_SUCCESS;
+ int len = *outlen;
+
+- if (EVP_DecryptFinal_ex(&ctx->cipherCtx, out, &len) == 0) {
+- return APR_EPADDING;
++ if (EVP_DecryptFinal_ex(ctx->cipherCtx, out, &len) == 0) {
++ rc = APR_EPADDING;
+ }
+- *outlen = len;
++ else {
++ *outlen = len;
++ }
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
++ EVP_CIPHER_CTX_cleanup(ctx->cipherCtx);
++#else
++ EVP_CIPHER_CTX_reset(ctx->cipherCtx);
++#endif
+
+- return APR_SUCCESS;
++ return rc;
+
+ }
+
diff --git a/abs/core/apr/PKGBUILD b/abs/core/apr/PKGBUILD
index a1e496a..6a88a5a 100644
--- a/abs/core/apr/PKGBUILD
+++ b/abs/core/apr/PKGBUILD
@@ -1,35 +1,61 @@
-# $Id: PKGBUILD 158966 2012-05-13 20:20:53Z jgc $
+# $Id$
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Andrea Scarpino <andrea@archlinux.org>
# Contributor: Pierre Schmitz <pierre@archlinux.de>
pkgname=apr
-pkgver=1.4.6
+pkgver=1.6.3
pkgrel=1
-pkgdesc="The Apache Portable Runtime"
-arch=('i686' 'x86_64')
-url="http://apr.apache.org/"
+pkgdesc='The Apache Portable Runtime'
+arch=('x86_64')
+url='http://apr.apache.org/'
depends=('util-linux')
-options=('!libtool')
+makedepends=('python2')
license=('APACHE')
-source=(http://www.apache.org/dist/apr/apr-${pkgver}.tar.bz2)
-md5sums=('ffee70a111fd07372982b0550bbb14b7')
+source=(https://www.apache.org/dist/apr/apr-$pkgver.tar.bz2{,.asc}
+ fix_apr-config.patch
+ ship_find_apr.m4.patch
+ fix-apr.pc.patch
+ omit_extra_libs.patch
+ dont_override_external_buildflags)
+sha256sums=('131f06d16d7aabd097fa992a33eec2b6af3962f93e6d570a9bd4d85e95993172'
+ 'SKIP'
+ '91490ffee726f851edad9fc733ac6632aaf434a87920e706eeb132a97ee5f402'
+ '315932ef6536fc0644c1efe770ceb3bb675c3c7103a7cbb2f02efd8be03eb752'
+ '12595d331b48be9e44bd843635eb4f0f500bd213e197a551a9d383a28a24641f'
+ '3d491d3af8fb5a75db4e085a17e5d8dcbe058bd256ef893ee779dc97fc9f8ad6'
+ '5ac0bdc532479f6082d29115ac9d3ca24524fd8b97a556568755b88e5a68e3df')
+validpgpkeys=('5B5181C2C0AB13E59DA3F7A3EC582EB639FF092C' # Jeff Trawick
+ 'B1B96F45DFBDCCF974019235193F180AB55D9977') # Nick Kew <niq@apache.org>
+
+prepare() {
+ cd apr-$pkgver
+ patch -Np1 -i ../fix_apr-config.patch
+ patch -Np1 -i ../ship_find_apr.m4.patch
+ patch -Np1 -i ../fix-apr.pc.patch
+ patch -Np1 -i ../omit_extra_libs.patch
+ patch -Np1 -i ../dont_override_external_buildflags
+ sed -e 's/env python/env python2/' -i build/gen-build.py
+ sed -e 's/python/python2/g' -i build/buildcheck.sh
+ ./buildconf
+}
build() {
- cd "${srcdir}/apr-${pkgver}"
+ cd apr-$pkgver
./configure --prefix=/usr --includedir=/usr/include/apr-1 \
--with-installbuilddir=/usr/share/apr-1/build \
--enable-nonportable-atomics \
- --with-devrandom=/dev/urandom
+ --with-devrandom=/dev/urandom --disable-static
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
check() {
- cd "${srcdir}/apr-${pkgver}"
+ cd apr-$pkgver
make -j1 check
}
package() {
- cd "${srcdir}/apr-${pkgver}"
- make DESTDIR="${pkgdir}" install
+ cd apr-$pkgver
+ make DESTDIR="$pkgdir" install
}
diff --git a/abs/core/apr/dont_override_external_buildflags b/abs/core/apr/dont_override_external_buildflags
new file mode 100644
index 0000000..db30a81
--- /dev/null
+++ b/abs/core/apr/dont_override_external_buildflags
@@ -0,0 +1,21 @@
+# Don't force apr-using projects to use the compile flags used during
+# apr's compilation.
+Index: apr/build/apr_rules.mk.in
+===================================================================
+--- apr.orig/build/apr_rules.mk.in 2010-04-21 17:20:26.000000000 +0200
++++ apr/build/apr_rules.mk.in 2013-11-01 21:22:19.655108671 +0100
+@@ -41,10 +41,10 @@
+ # compilation and linking flags that are supposed to be set only by the user.
+ # configure adds to them for tests, but we restore them at the end.
+ #
+-CFLAGS=@CFLAGS@
+-CPPFLAGS=@CPPFLAGS@
+-LDFLAGS=@LDFLAGS@
+-LIBS=@LIBS@
++CFLAGS?=@CFLAGS@
++CPPFLAGS?=@CPPFLAGS@
++LDFLAGS?=@LDFLAGS@
++LIBS?=@LIBS@
+ DEFS=@DEFS@
+
+ # anything added to the standard flags by configure is moved to EXTRA_*
diff --git a/abs/core/apr/fix-apr.pc.patch b/abs/core/apr/fix-apr.pc.patch
new file mode 100644
index 0000000..890b514
--- /dev/null
+++ b/abs/core/apr/fix-apr.pc.patch
@@ -0,0 +1,20 @@
+From: <tfheen@debian.org>
+Subject: No description.
+
+---
+ apr.pc.in | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+Index: apr/apr.pc.in
+===================================================================
+--- apr.orig/apr.pc.in
++++ apr/apr.pc.in
+@@ -7,5 +7,6 @@
+ Name: APR
+ Description: The Apache Portable Runtime library
+ Version: @APR_DOTTED_VERSION@
+-Libs: -L${libdir} -l@APR_LIBNAME@ @EXTRA_LIBS@
+-Cflags: @EXTRA_CPPFLAGS@ @EXTRA_CFLAGS@ -I${includedir}
++Libs: -L${libdir} -l@APR_LIBNAME@
++Libs.private: @EXTRA_LIBS@
++Cflags: @EXTRA_CPPFLAGS@ -I${includedir}
diff --git a/abs/core/apr/fix_apr-config.patch b/abs/core/apr/fix_apr-config.patch
new file mode 100644
index 0000000..51b4aa3
--- /dev/null
+++ b/abs/core/apr/fix_apr-config.patch
@@ -0,0 +1,33 @@
+From: <tfheen@debian.org>
+Subject: No description.
+
+---
+ apr-config.in | 8 ++------
+ 1 file changed, 2 insertions(+), 6 deletions(-)
+
+Index: apr/apr-config.in
+===================================================================
+--- apr.orig/apr-config.in
++++ apr/apr-config.in
+@@ -39,7 +39,7 @@
+ LIBS="@EXTRA_LIBS@"
+ EXTRA_INCLUDES="@EXTRA_INCLUDES@"
+ SHLIBPATH_VAR="@shlibpath_var@"
+-APR_SOURCE_DIR="@apr_srcdir@"
++APR_SOURCE_DIR="$(cd @installbuilddir@/.. ; pwd)"
+ APR_BUILD_DIR="@apr_builddir@"
+ APR_SO_EXT="@so_ext@"
+ APR_LIB_TARGET="@export_lib_target@"
+@@ -223,11 +223,7 @@
+ exit 0
+ ;;
+ --apr-libtool)
+- if test "$location" = "installed"; then
+- echo "${installbuilddir}/libtool"
+- else
+- echo "$APR_BUILD_DIR/libtool"
+- fi
++ echo "$installbuilddir/libtool"
+ exit 0
+ ;;
+ --help)
diff --git a/abs/core/apr/omit_extra_libs.patch b/abs/core/apr/omit_extra_libs.patch
new file mode 100644
index 0000000..524602e
--- /dev/null
+++ b/abs/core/apr/omit_extra_libs.patch
@@ -0,0 +1,20 @@
+From: Stefan Fritsch <sf@debian.org>
+Subject: #463399
+
+---
+ apr-config.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: apr/apr-config.in
+===================================================================
+--- apr.orig/apr-config.in
++++ apr/apr-config.in
+@@ -36,7 +36,7 @@
+ CPPFLAGS="@EXTRA_CPPFLAGS@"
+ CFLAGS="@EXTRA_CFLAGS@"
+ LDFLAGS="@EXTRA_LDFLAGS@"
+-LIBS="@EXTRA_LIBS@"
++LIBS=""
+ EXTRA_INCLUDES="@EXTRA_INCLUDES@"
+ SHLIBPATH_VAR="@shlibpath_var@"
+ APR_SOURCE_DIR="$(cd @installbuilddir@/.. ; pwd)"
diff --git a/abs/core/apr/ship_find_apr.m4.patch b/abs/core/apr/ship_find_apr.m4.patch
new file mode 100644
index 0000000..0393970
--- /dev/null
+++ b/abs/core/apr/ship_find_apr.m4.patch
@@ -0,0 +1,25 @@
+From: Tollef Fog Heen <tfheen@err.no>
+Subject: Install a set of random build files too
+
+---
+ Makefile.in | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+--- apr.orig/Makefile.in
++++ apr/Makefile.in
+@@ -92,6 +92,15 @@ install: $(TARGETS)
+ done
+ $(INSTALL_DATA) build/apr_rules.out $(DESTDIR)$(installbuilddir)/apr_rules.mk
+ $(INSTALL) -m 755 apr-config.out $(DESTDIR)$(bindir)/$(APR_CONFIG)
++
++ if [ ! -d $(DESTDIR)$(installbuilddir) ]; then \
++ $(top_srcdir)/build/mkdir.sh $(DESTDIR)$(installbuilddir); \
++ fi
++ for file in find_apr.m4 apr_common.m4 install.sh gen-build.py get-version.sh ; do \
++ $(LIBTOOL) --mode=install cp $(top_srcdir)/build/$$file \
++ $(DESTDIR)$(installbuilddir)/$$file ; \
++ done
++
+ @if [ $(INSTALL_SUBDIRS) != "none" ]; then \
+ for i in $(INSTALL_SUBDIRS); do \
+ ( cd $$i ; $(MAKE) DESTDIR=$(DESTDIR) install ); \
diff --git a/abs/core/archlinux-xdg-menu/PKGBUILD b/abs/core/archlinux-xdg-menu/PKGBUILD
index 40d812a..b028ed1 100644
--- a/abs/core/archlinux-xdg-menu/PKGBUILD
+++ b/abs/core/archlinux-xdg-menu/PKGBUILD
@@ -1,30 +1,30 @@
-# $Id: PKGBUILD 101139 2013-11-18 10:37:26Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <sergej@aur.archlinux.org>
# Contributor: Sergej Pupykin <sergej@aur.archlinux.org>
pkgname=archlinux-xdg-menu
-pkgver=0.7.6.2
+pkgver=0.7.6.3
pkgrel=1
pkgdesc="automatic generate WM menu from xdg files"
arch=('any')
-url="http://wiki.archlinux.org/index.php/XdgMenu"
+url="https://wiki.archlinux.org/index.php/XdgMenu"
license=("GPL")
-depends=('perl' 'perlxml')
-optdepends=('sux: for xdg_menu_su')
+depends=('perl' 'perl-xml-parser')
+#optdepends=('sux: for xdg_menu_su')
backup=("etc/update-menus.conf"
"etc/xdg/menus/arch-applications.menu")
-source=("http://archlinux-stuff.googlecode.com/files/arch-xdg-menu-$pkgver.tar.gz")
+source=("https://arch.p5n.pp.ru/~sergej/dl/2018/arch-xdg-menu-$pkgver.tar.gz")
+sha256sums=('b99668bee882da7bf0ac247e1d9274b75a062bfe0af12efb994d97e40e361914')
package() {
- cd $srcdir
- install -D -m 0755 xdg_menu $pkgdir/usr/bin/xdg_menu
- install -D -m 0755 xdg_menu_su $pkgdir/usr/bin/xdg_menu_su
- install -D -m 0755 update-menus $pkgdir/usr/bin/update-menus
- install -D -m 0644 update-menus.conf $pkgdir/etc/update-menus.conf
- mkdir -p $pkgdir/usr/share/desktop-directories/
- cp arch-desktop-directories/* $pkgdir/usr/share/desktop-directories/
- mkdir -p $pkgdir/etc/xdg/menus/
- cp arch-xdg-menu/* $pkgdir/etc/xdg/menus/
- mkdir -p $pkgdir//var/cache/xdg-menu
+ cd "$srcdir"
+ install -D -m 0755 xdg_menu "$pkgdir"/usr/bin/xdg_menu
+ install -D -m 0755 xdg_menu_su "$pkgdir"/usr/bin/xdg_menu_su
+ install -D -m 0755 update-menus "$pkgdir"/usr/bin/update-menus
+ install -D -m 0644 update-menus.conf "$pkgdir"/etc/update-menus.conf
+ mkdir -p "$pkgdir"/usr/share/desktop-directories/
+ cp arch-desktop-directories/* "$pkgdir"/usr/share/desktop-directories/
+ mkdir -p "$pkgdir"/etc/xdg/menus/
+ cp arch-xdg-menu/* "$pkgdir"/etc/xdg/menus/
+ mkdir -p "$pkgdir"//var/cache/xdg-menu
}
-md5sums=('e4aadc2a05a8e8330c95c22548a4fcfb')
diff --git a/abs/core/argon2/PKGBUILD b/abs/core/argon2/PKGBUILD
new file mode 100644
index 0000000..531ccfb
--- /dev/null
+++ b/abs/core/argon2/PKGBUILD
@@ -0,0 +1,47 @@
+# Maintainer: Baptiste Jonglez <baptiste--aur at jonglez dot org>
+
+pkgname=argon2
+pkgver=20171227
+pkgrel=3
+pkgdesc='A password-hashing function (reference C implementation)'
+arch=('x86_64')
+url='https://github.com/P-H-C/phc-winner-argon2'
+license=('Apache' 'custom:CC0')
+depends=('glibc')
+install=argon2.install
+source=("https://github.com/P-H-C/phc-winner-argon2/archive/${pkgver}/${pkgname}-${pkgver}.tar.gz"
+ 'libargon2.pc')
+sha256sums=('eaea0172c1f4ee4550d1b6c9ce01aab8d1ab66b4207776aa67991eb5872fdcd8'
+ '4189ce6c183319ceaf2c4ec96facd424deeaa9e2819efb7511893bcf3ef5c836')
+
+prepare() {
+ cd "$srcdir/phc-winner-$pkgname-$pkgver"
+
+ # Copy and prepare custom pkg-config file
+ cp "${srcdir}/libargon2.pc" libargon2.pc
+ sed -i -e "s/@UPSTREAM_VER@/${pkgver}/" libargon2.pc
+}
+
+build() {
+ cd "$srcdir/phc-winner-$pkgname-$pkgver"
+
+ make OPTTARGET=none
+}
+
+check() {
+ cd "$srcdir/phc-winner-$pkgname-$pkgver"
+
+ make OPTTARGET=none test
+}
+
+package() {
+ cd "$srcdir/phc-winner-$pkgname-$pkgver"
+
+ make OPTTARGET=none DESTDIR="$pkgdir" install
+
+ install -D -m0644 LICENSE "${pkgdir}/usr/share/licenses/argon2/LICENSE"
+
+ install -D -m0644 libargon2.pc "${pkgdir}/usr/lib/pkgconfig/libargon2.pc"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/argon2/argon2.install b/abs/core/argon2/argon2.install
new file mode 100644
index 0000000..65b9e24
--- /dev/null
+++ b/abs/core/argon2/argon2.install
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+post_upgrade() {
+ # clean up upstream soname mess
+ rm -f usr/lib/libargon2.so.0
+}
diff --git a/abs/core/argon2/libargon2.pc b/abs/core/argon2/libargon2.pc
new file mode 100644
index 0000000..c41e1c0
--- /dev/null
+++ b/abs/core/argon2/libargon2.pc
@@ -0,0 +1,11 @@
+prefix=/usr
+exec_prefix=${prefix}
+libdir=${prefix}/lib
+includedir=${prefix}/include
+
+Name: libargon2
+Description: Development libraries for libargon2
+Version: @UPSTREAM_VER@
+Libs: -L${libdir} -largon2 -lrt -ldl
+Cflags:
+URL: https://github.com/P-H-C/phc-winner-argon2
diff --git a/abs/core/aspell/PKGBUILD b/abs/core/aspell/PKGBUILD
index 50c9264..2cdaf6d 100644
--- a/abs/core/aspell/PKGBUILD
+++ b/abs/core/aspell/PKGBUILD
@@ -8,20 +8,21 @@
pkgname=aspell
pkgver=0.60.6.1
_pkgmajorver=0.60
-pkgrel=2
+pkgrel=5
pkgdesc="A spell checker designed to eventually replace Ispell"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://aspell.net/"
license=('LGPL')
depends=('gcc-libs' 'ncurses')
optdepends=('perl: to import old dictionaries')
-install=aspell.install
-source=(ftp://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz)
-md5sums=('e66a9c9af6a60dc46134fdacf6ce97d7')
-sha1sums=('ff1190db8de279f950c242c6f4c5d5cdc2cbdc49')
+source=(ftp://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz
+ gcc7fixes.patch)
+sha1sums=('ff1190db8de279f950c242c6f4c5d5cdc2cbdc49'
+ 'df5364a8472154452f4e1fe9db0891df457949e0')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -p1 < $srcdir/gcc7fixes.patch
./configure --prefix=/usr --sysconfdir=/etc
make
}
diff --git a/abs/core/aspell/__changelog b/abs/core/aspell/__changelog
new file mode 100644
index 0000000..beb9215
--- /dev/null
+++ b/abs/core/aspell/__changelog
@@ -0,0 +1 @@
+add gcc7fixes.patch
diff --git a/abs/core/aspell/aspell.install b/abs/core/aspell/aspell.install
deleted file mode 100644
index 4bb848e..0000000
--- a/abs/core/aspell/aspell.install
+++ /dev/null
@@ -1,24 +0,0 @@
-infodir=usr/share/info
-filelist=(aspell.info aspell-dev.info)
-
-post_install() {
- echo "==> aspell comes with no default dictionary"
- [ -x usr/bin/install-info ] || return 0
- for file in ${filelist[@]}; do
- install-info $infodir/$file $infodir/dir 2> /dev/null
- done
-}
-
-post_upgrade() {
- [ -x usr/bin/install-info ] || return 0
- for file in ${filelist[@]}; do
- install-info $infodir/$file $infodir/dir 2> /dev/null
- done
-}
-
-pre_remove() {
- [ -x usr/bin/install-info ] || return 0
- for file in ${filelist[@]}; do
- install-info --delete $infodir/$file $infodir/dir 2> /dev/null
- done
-}
diff --git a/abs/core/aspell/gcc7fixes.patch b/abs/core/aspell/gcc7fixes.patch
new file mode 100644
index 0000000..61ffabb
--- /dev/null
+++ b/abs/core/aspell/gcc7fixes.patch
@@ -0,0 +1,37 @@
+From 8089fa02122fed0a6394eba14bbedcb1d18e2384 Mon Sep 17 00:00:00 2001
+From: Kevin Atkinson <kevina@gnu.org>
+Date: Thu, 29 Dec 2016 00:50:31 -0500
+Subject: [PATCH] Compile Fixes for GCC 7.
+
+Closes #519.
+---
+ modules/filter/tex.cpp | 2 +-
+ prog/check_funs.cpp | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/modules/filter/tex.cpp b/modules/filter/tex.cpp
+index a979539..19ab63c 100644
+--- a/modules/filter/tex.cpp
++++ b/modules/filter/tex.cpp
+@@ -174,7 +174,7 @@ namespace {
+
+ if (c == '{') {
+
+- if (top.in_what == Parm || top.in_what == Opt || top.do_check == '\0')
++ if (top.in_what == Parm || top.in_what == Opt || *top.do_check == '\0')
+ push_command(Parm);
+
+ top.in_what = Parm;
+diff --git a/prog/check_funs.cpp b/prog/check_funs.cpp
+index db54f3d..89ee09d 100644
+--- a/prog/check_funs.cpp
++++ b/prog/check_funs.cpp
+@@ -647,7 +647,7 @@ static void print_truncate(FILE * out, const char * word, int width) {
+ }
+ }
+ if (i == width-1) {
+- if (word == '\0')
++ if (*word == '\0')
+ put(out,' ');
+ else if (word[len] == '\0')
+ put(out, word, len);
diff --git a/abs/core/automake/PKGBUILD b/abs/core/automake/PKGBUILD
index bd5603e..2f15ec8 100644
--- a/abs/core/automake/PKGBUILD
+++ b/abs/core/automake/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id$
-# Maintainer: Allan McRae <allan@archlinux.org>
+# Maintainer: Lukas Fleischer <lfleischer@archlinux.org>
+# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: judd <jvinet@zeroflux.org>
pkgname=automake
-pkgver=1.14.1
+pkgver=1.15.1
pkgrel=1
pkgdesc="A GNU tool for automatically creating Makefiles"
arch=('any')
@@ -12,31 +12,34 @@ url="http://www.gnu.org/software/automake"
groups=('base-devel')
depends=('perl' 'bash')
makedepends=('autoconf')
-checkdepends=('dejagnu' 'python2' 'gcc-fortran' 'java-environment' 'vala' 'emacs' 'cscope')
-install=automake.install
-source=(ftp://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.xz{,.sig})
-md5sums=('7fc29854c520f56b07aa232a0f880292'
- 'SKIP')
+checkdepends=('dejagnu' 'gcc-fortran' 'java-environment' 'vala' 'emacs' 'cscope') # 'python'
+source=(ftp://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.xz{,.sig}
+ automake-1.15-dejagnu-testcase.patch)
+md5sums=('24cd3501b6ad8cd4d7e2546f07e8b4d4'
+ 'SKIP'
+ 'ffa4dd8eb78cea82c3009d76087598b1')
+validpgpkeys=('E1622F96D2BB4E58018EEF9860F906016E407573' # Stefano Lattarini
+ 'F2A38D7EEB2B66405761070D0ADEE10094604D37') # Mathieu Lirzin
prepare() {
cd ${srcdir}/${pkgname}-${pkgver}
- # skip failing test...
- sed -i "/instmany-python.sh/d" Makefile.in
+ # fix testsuite issue with resent dejagnu
+ patch -p1 -i $srcdir/automake-1.15-dejagnu-testcase.patch
}
build() {
- cd ${srcdir}/${pkgname}-${pkgver}
- ./configure --prefix=/usr
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure --build=$CHOST --prefix=/usr
make
}
check() {
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd "${srcdir}/${pkgname}-${pkgver}"
make check
}
package() {
- cd ${srcdir}/${pkgname}-${pkgver}
- make DESTDIR=${pkgdir} install
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/abs/core/automake/automake-1.15-dejagnu-testcase.patch b/abs/core/automake/automake-1.15-dejagnu-testcase.patch
new file mode 100644
index 0000000..3af46ad
--- /dev/null
+++ b/abs/core/automake/automake-1.15-dejagnu-testcase.patch
@@ -0,0 +1,49 @@
+From 3b86722e504c686d3e825ca8870708cce7580190 Mon Sep 17 00:00:00 2001
+From: Pavel Raiskup <praiskup@redhat.com>
+Date: Mon, 27 Jun 2016 23:10:12 +0200
+Subject: [PATCH] tests: fix bug in dejagnu testcase
+
+This resolves testsuite error:
+ERROR: tcl error sourcing ./spanner.test/spanner.exp.
+ERROR: couldn't execute "./spanner": no such file or directory
+ while executing
+"spawn $SPANNER"
+ (file "./spanner.test/spanner.exp" line 2)
+ invoked from within
+"source ./spanner.test/spanner.exp"
+ ("uplevel" body line 1)
+ invoked from within
+"uplevel #0 source ./spanner.test/spanner.exp"
+ invoked from within
+"catch "uplevel #0 source $test_file_name""
+
+.. which was there probably for a very long time, but now with
+dejagnu 1.6 the runtest binary started to validly exit with
+non-zero status.
+
+* t/check12.sh (Makefile.am): Also distribute files from
+$(DEJATOOL) because otherwise 'runtest' binary fails later during
+'make distcheck' because of incomplete list of distributed files.
+
+Proposed upstream:
+http://thread.gmane.org/gmane.comp.sysutils.automake.patches/9941
+
+---
+ t/check12.sh | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/t/check12.sh b/t/check12.sh
+index 0f3928a..306c720 100644
+--- a/t/check12.sh
++++ b/t/check12.sh
+@@ -61,6 +61,7 @@ DEJATOOL = hammer spanner
+ AM_RUNTESTFLAGS = HAMMER=$(srcdir)/hammer SPANNER=$(srcdir)/spanner
+ EXTRA_DIST += hammer.test/hammer.exp
+ EXTRA_DIST += spanner.test/spanner.exp
++EXTRA_DIST += $(DEJATOOL)
+ END
+
+ cat > hammer << 'END'
+--
+2.7.4
+
diff --git a/abs/core/automake/automake.install b/abs/core/automake/automake.install
deleted file mode 100644
index 10c2f2d..0000000
--- a/abs/core/automake/automake.install
+++ /dev/null
@@ -1,22 +0,0 @@
-infodir=/usr/share/info
-filelist=(automake.info automake.info-1 automake.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/abs/core/avahi/0001-avahi-python-Use-the-agnostic-DBM-interface.patch b/abs/core/avahi/0001-avahi-python-Use-the-agnostic-DBM-interface.patch
new file mode 100644
index 0000000..3945f9c
--- /dev/null
+++ b/abs/core/avahi/0001-avahi-python-Use-the-agnostic-DBM-interface.patch
@@ -0,0 +1,256 @@
+From 426f70261d61db359e573e06b03575ee8cf50f5d Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
+Date: Tue, 11 Jul 2017 21:52:37 +0200
+Subject: [PATCH] avahi-python: Use the agnostic DBM interface
+
+Also fixes configure failing if Python 3 and GDBM are in use, since Py3
+only has anydbm under the name of 'dbm'.
+---
+ avahi-python/avahi/Makefile.am | 15 +-----------
+ avahi-python/avahi/ServiceTypeDatabase.py.in | 31 ++++++++++++++++++-------
+ configure.ac | 9 ++++---
+ service-type-database/.gitignore | 1 -
+ service-type-database/Makefile.am | 18 ++++----------
+ service-type-database/{build-db.in => build-db} | 13 +++++++----
+ 6 files changed, 41 insertions(+), 46 deletions(-)
+ rename service-type-database/{build-db.in => build-db} (87%)
+
+diff --git a/avahi-python/avahi/Makefile.am b/avahi-python/avahi/Makefile.am
+index 3eb67d0df438a7f8..c906b9bf3b6d0708 100644
+--- a/avahi-python/avahi/Makefile.am
++++ b/avahi-python/avahi/Makefile.am
+@@ -25,29 +25,16 @@ avahidir = $(pythondir)/avahi
+
+ if HAVE_GDBM
+ nodist_avahi_SCRIPTS = ServiceTypeDatabase.py
+-
+-ServiceTypeDatabase.py: ServiceTypeDatabase.py.in
+- $(AM_V_GEN)sed -e 's,@PYTHON\@,$(PYTHON),g' \
+- -e 's,@DBM\@,gdbm,g' \
+- -e 's,@FIRST_KEY\@,key = self.db.firstkey(),g' \
+- -e 's,@CHECK_KEY\@,while key is not None:,g' \
+- -e 's,@NEXT_KEY\@,key = self.db.nextkey(key),g' \
+- -e 's,@pkglibdatadir\@,$(pkglibdatadir),g' $< > $@ && \
+- chmod +x $@
+ endif
+
+ if HAVE_DBM
+ nodist_avahi_SCRIPTS = ServiceTypeDatabase.py
++endif
+
+ ServiceTypeDatabase.py: ServiceTypeDatabase.py.in
+ $(AM_V_GEN)sed -e 's,@PYTHON\@,$(PYTHON),g' \
+- -e 's,@DBM\@,dbm,g' \
+- -e 's,@FIRST_KEY\@,keys = self.db.keys(),g' \
+- -e 's,@CHECK_KEY\@,for key in keys:,g' \
+- -e 's,@NEXT_KEY\@,,g' \
+ -e 's,@pkglibdatadir\@,$(pkglibdatadir),g' $< > $@ && \
+ chmod +x $@
+-endif
+
+ avahi_PYTHON = $(avahi_SCRIPTS)
+
+diff --git a/avahi-python/avahi/ServiceTypeDatabase.py.in b/avahi-python/avahi/ServiceTypeDatabase.py.in
+index 4ddd654409deb983..d7f9969bbd5a6ab0 100644
+--- a/avahi-python/avahi/ServiceTypeDatabase.py.in
++++ b/avahi-python/avahi/ServiceTypeDatabase.py.in
+@@ -17,18 +17,22 @@
+ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ # USA.
+
+-import @DBM@
++try:
++ import anydbm as dbm
++except ImportError:
++ import dbm
++
+ import locale
+ import re
+
+ locale.setlocale(locale.LC_ALL, '')
+
+ class ServiceTypeDatabase:
+ """ServiceTypeDatabase maps service types to descriptions"""
+
+ def __init__(self, filename = "@pkglibdatadir@/service-types.db"):
+
+- self.db = @DBM@.open(filename, "r")
++ self.db = dbm.open(filename, "r")
+
+ l = locale.getlocale(locale.LC_MESSAGES)
+
+@@ -90,13 +94,24 @@ class ServiceTypeDatabase:
+
+ def __iter__(self):
+
+- @FIRST_KEY@
+- @CHECK_KEY@
++ def want_key(key):
++ if not re.search('_[a-zA-Z0-9-]+\._[a-zA-Z0-9-]+', key):
++ return False
++ if re.search('_[a-zA-Z0-9-]+\._[a-zA-Z0-9-]+\[.*\]', key):
++ return False
++ return True
+
+- if re.search('_[a-zA-Z0-9-]+\._[a-zA-Z0-9-]+', key) and not re.search('_[a-zA-Z0-9-]+\._[a-zA-Z0-9-]+\[.*\]', key):
+- yield key
+-
+- @NEXT_KEY@
++ try:
++ key = self.db.firstkey()
++ except AttributeError:
++ for key in self.db.keys():
++ if want_key(key):
++ yield key
++ else:
++ while key is not None:
++ if want_key(key):
++ yield key
++ key = self.db.nextkey(key)
+
+ def __len__(self):
+
+diff --git a/configure.ac b/configure.ac
+index 66789718d45ff4ea..fbbf7cf3ef562a26 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -824,11 +824,10 @@ if test "x$HAVE_PYTHON" = "xyes" ; then
+ fi
+
+ AM_CHECK_PYMOD(socket,,,[AC_MSG_ERROR(Could not find Python module socket)])
+- if test "x$HAVE_GDBM" = "xyes"; then
+- AM_CHECK_PYMOD(gdbm,,,[AC_MSG_ERROR(Could not find Python module gdbm)])
+- fi
+- if test "x$HAVE_DBM" = "xyes"; then
+- AM_CHECK_PYMOD(dbm,,,[AC_MSG_ERROR(Could not find Python module dbm)])
++ if test "x$HAVE_GDBM" = "xyes" || test "x$HAVE_DBM" = "xyes"; then
++ AM_CHECK_PYMOD(anydbm,,,[
++ AM_CHECK_PYMOD(dbm,,,[AC_MSG_ERROR(Could not find Python module dbm)])
++ ])
+ fi
+ fi
+ fi
+diff --git a/service-type-database/.gitignore b/service-type-database/.gitignore
+index 581f1929d521c01d..51b02600e70c1ceb 100644
+--- a/service-type-database/.gitignore
++++ b/service-type-database/.gitignore
+@@ -1,4 +1,3 @@
+ Makefile
+ Makefile.in
+ service-types.db
+-build-db
+diff --git a/service-type-database/Makefile.am b/service-type-database/Makefile.am
+index d184fde30f0758c5..f9fa0825e937f2f7 100644
+--- a/service-type-database/Makefile.am
++++ b/service-type-database/Makefile.am
+@@ -15,49 +15,39 @@
+ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ # USA.
+
+-EXTRA_DIST=build-db.in service-types
++EXTRA_DIST=service-types
+
+ pkglibdatadir=$(libdir)/avahi
+
+ pkglibdata_DATA=
+
+ if HAVE_PYTHON
+ if HAVE_GDBM
+
+ noinst_SCRIPTS=build-db
+ pkglibdata_DATA+=service-types.db
+
+-build-db: build-db.in
+- $(AM_V_GEN)sed -e 's,@PYTHON\@,$(PYTHON),g' \
+- -e 's,@DBM\@,gdbm,g' $< > $@ && \
+- chmod +x $@
+-
+-service-types.db: service-types build-db
++service-types.db: service-types
+ $(AM_V_GEN)$(PYTHON) build-db $< $@.coming && \
+ mv $@.coming $@
+
+-CLEANFILES = service-types.db build-db
++CLEANFILES = service-types.db
+
+ endif
+ if HAVE_DBM
+
+ noinst_SCRIPTS=build-db
+ pkglibdata_DATA+=service-types.db.pag service-types.db.dir
+
+-build-db: build-db.in
+- $(AM_V_GEN)sed -e 's,@PYTHON\@,$(PYTHON),g' \
+- -e 's,@DBM\@,dbm,g' $< > $@ && \
+- chmod +x $@
+-
+ service-types.db.pag: service-types.db
+ $(AM_V_GEN)mv service-types.db.coming.pag service-types.db.pag
+ service-types.db.dir: service-types.db
+ $(AM_V_GEN)mv service-types.db.coming.dir service-types.db.dir
+ service-types.db: service-types build-db
+ $(AM_V_GEN)$(PYTHON) build-db $< $@.coming && \
+ if test -f "$@.coming"; then mv $@.coming $@; fi
+
+-CLEANFILES = service-types.db* build-db
++CLEANFILES = service-types.db*
+
+ endif
+ endif
+diff --git a/service-type-database/build-db.in b/service-type-database/build-db
+similarity index 87%
+rename from service-type-database/build-db.in
+rename to service-type-database/build-db
+index 4cda425374a79198..78ee892f606ea43c 100755
+--- a/service-type-database/build-db.in
++++ b/service-type-database/build-db
+@@ -1,37 +1,42 @@
+-#!@PYTHON@
++#!/usr/bin/env python
+ # -*-python-*-
+ # This file is part of avahi.
+ #
+ # avahi is free software; you can redistribute it and/or modify it
+ # under the terms of the GNU Lesser General Public License as
+ # published by the Free Software Foundation; either version 2 of the
+ # License, or (at your option) any later version.
+ #
+ # avahi is distributed in the hope that it will be useful, but WITHOUT
+ # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
+ # License for more details.
+ #
+ # You should have received a copy of the GNU Lesser General Public
+ # License along with avahi; if not, write to the Free Software
+ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ # USA.
+
+-import @DBM@, sys
++try:
++ import anydbm as dbm
++except ImportError:
++ import dbm
++
++import sys
+
+ if len(sys.argv) > 1:
+ infn = sys.argv[1]
+ else:
+ infn = "service-types"
+
+ if len(sys.argv) > 2:
+ outfn = sys.argv[2]
+ else:
+ outfn = infn + ".db"
+
+-db = @DBM@.open(outfn, "n")
++db = dbm.open(outfn, "n")
+
+-for ln in file(infn, "r"):
++for ln in open(infn, "r"):
+ ln = ln.strip(" \r\n\t")
+
+ if ln == "" or ln.startswith("#"):
+--
+2.13.2
+
diff --git a/abs/core/avahi/PKGBUILD b/abs/core/avahi/PKGBUILD
index 5aa2247..68d5751 100644
--- a/abs/core/avahi/PKGBUILD
+++ b/abs/core/avahi/PKGBUILD
@@ -4,39 +4,46 @@
# Contributor: Douglas Soares de Andrade <douglas@archlinux.org>
pkgname=avahi
-pkgver=0.6.32
-pkgrel=2
-_commit=4f334990f692ce08ab4ea2eece695f1592f535b2
+pkgver=0.7
+pkgrel=4
pkgdesc='Service Discovery for Linux using mDNS/DNS-SD -- compatible with Bonjour'
url='https://github.com/lathiat/avahi'
license=(LGPL)
-arch=(i686 x86_64)
+arch=(x86_64)
depends=(expat libdaemon glib2 libcap gdbm dbus)
-makedepends=(git qt4 pygtk mono intltool python2-dbus gtk-sharp-2 gobject-introspection gtk3
- xmltoman)
-optdepends=('gtk3: avahi-discover-standalone, bshell, bssh, bvnc'
+makedepends=(git qt4 pygtk mono intltool gtk-sharp-2 gobject-introspection gtk3
+ xmltoman python-dbus python-gobject doxygen graphviz)
+optdepends=('gtk3: avahi-discover, avahi-discover-standalone, bshell, bssh, bvnc'
'gtk2: gtk2 bindings'
'qt4: qt4 bindings'
- 'pygtk: avahi-bookmarks, avahi-discover'
+ 'pygtk: avahi-bookmarks'
'python2-twisted: avahi-bookmarks'
'mono: mono bindings'
- 'python2-dbus: avahi-discover'
- 'nss-mdns: NSS support for mDNS')
-install=avahi.install
+ 'nss-mdns: NSS support for mDNS'
+ 'python-gobject: avahi-discover'
+ 'python-dbus: avahi-discover')
backup=(etc/avahi/{hosts,avahi-daemon.conf}
- usr/lib/avahi/service-types.db usr/share/avahi/service-types)
-source=("git+$url#commit=$_commit")
-sha256sums=('SKIP')
+ usr/lib/avahi/service-types.db)
+_commit=6242e5f0fe001b7de2ccaa9431db279b2ee76b83 # tags/v0.7
+source=("git+https://github.com/lathiat/avahi#commit=$_commit"
+ 0001-avahi-python-Use-the-agnostic-DBM-interface.patch)
+sha512sums=('SKIP'
+ '8cfc7c2cb0061e6348caa96b73bb6069efce5b4438962aa12448e46bc950a47c1f18059afbb1cacf7b2a1aa21f77025472532ad5e6eddb17834a8b1a34432226')
+pkgver() {
+ cd $pkgname
+ git describe --tags | sed 's/^v//;s/-/+/g'
+}
prepare() {
cd $pkgname
+ patch -Np1 -i ../0001-avahi-python-Use-the-agnostic-DBM-interface.patch
NOCONFIGURE=1 ./autogen.sh
}
build() {
cd $pkgname
- export MOC_QT4=/usr/bin/moc-qt4 PYTHON=/usr/bin/python2
+ export MOC_QT4=/usr/bin/moc-qt4 PYTHON=/usr/bin/python3
./configure \
--prefix=/usr \
@@ -51,19 +58,25 @@ build() {
--with-autoipd-user=avahi \
--with-autoipd-group=avahi \
--with-systemdsystemunitdir=/usr/lib/systemd/system
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
- cp -a avahi-python/avahi avahi-python/avahi3
+ cp -a avahi-python/avahi avahi-python/avahi2
make
- make -C avahi-python/avahi3 PYTHON=/usr/bin/python2
+ make -C avahi-python/avahi2 PYTHON=/usr/bin/python2
}
package() {
cd $pkgname
make DESTDIR="$pkgdir" install
- make DESTDIR="$pkgdir" -C avahi-python/avahi3 install \
+ make DESTDIR="$pkgdir" -C avahi-python/avahi2 install \
PYTHON=/usr/bin/python2 pythondir=/usr/lib/python2.7/site-packages
+ rmdir "$pkgdir/run"
+
+ # this isn't ported
+ sed -i '1s|python3|python2|' "$pkgdir/usr/bin/avahi-bookmarks"
+
# mdnsresponder compat
ln -s avahi-compat-libdns_sd/dns_sd.h "$pkgdir/usr/include/dns_sd.h"
@@ -72,5 +85,6 @@ package() {
mv "$pkgdir"/etc/avahi/services/{,sftp-}ssh.service \
"$pkgdir/usr/share/doc/$pkgname/"
- rmdir "$pkgdir"/var{/run,}
+ echo 'u avahi - "Avahi mDNS/DNS-SD daemon"' |
+ install -Dm644 /dev/stdin "$pkgdir/usr/lib/sysusers.d/$pkgname.conf"
}
diff --git a/abs/core/avahi/__changelog b/abs/core/avahi/__changelog
deleted file mode 100644
index 5c5991a..0000000
--- a/abs/core/avahi/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: change py3 to py2
-avahi.install: remove systemd start message
diff --git a/abs/core/avahi/avahi.install b/abs/core/avahi/avahi.install
deleted file mode 100644
index 909cf98..0000000
--- a/abs/core/avahi/avahi.install
+++ /dev/null
@@ -1,7 +0,0 @@
-post_install() {
- if ! getent passwd avahi &>/dev/null; then
- groupadd -r -g 84 avahi
- useradd -r -u 84 -g avahi -d / -s /bin/nologin -c avahi avahi
- fi
-}
-
diff --git a/abs/core/bash/PKGBUILD b/abs/core/bash/PKGBUILD
index cb6847e..553a6ad 100644
--- a/abs/core/bash/PKGBUILD
+++ b/abs/core/bash/PKGBUILD
@@ -4,33 +4,30 @@
# Contributor: Aaron Griffin <aaron@archlinux.org>
pkgname=bash
-_basever=4.3
-_patchlevel=042
-pkgver=$_basever.$_patchlevel
-pkgrel=4
+_basever=4.4
+_patchlevel=019
+pkgver=${_basever}.${_patchlevel}
+pkgrel=1
pkgdesc='The GNU Bourne Again shell'
-arch=('i686' 'x86_64')
-license=('GPL')
+arch=(x86_64)
+license=(GPL)
url='http://www.gnu.org/software/bash/bash.html'
-groups=('base')
+groups=(base)
backup=(etc/bash.bash{rc,_logout} etc/skel/.bash{rc,_profile,_logout})
-depends=('readline>=6.3' 'glibc' 'ncurses' 'libncursesw.so')
+depends=('readline>=7.0' glibc ncurses)
optdepends=('bash-completion: for tab completion')
provides=('sh')
-install=bash.install
-source=(http://ftp.gnu.org/gnu/bash/bash-$_basever.tar.gz{,.sig}
+source=(https://ftp.gnu.org/gnu/bash/bash-$_basever.tar.gz{,.sig}
dot.bashrc
dot.bash_profile
dot.bash_logout
system.bashrc
- system.bash_logout
- privmode-setuid-fail.patch
- bash-4.3-old-memleak.patch)
+ system.bash_logout)
validpgpkeys=('7C0135FB088AAF6C66C650B9BB5869F064EA74AB') # Chet Ramey
if [[ $((10#${_patchlevel})) -gt 0 ]]; then
for (( _p=1; _p<=$((10#${_patchlevel})); _p++ )); do
- source=(${source[@]} http://ftp.gnu.org/gnu/bash/bash-$_basever-patches/bash${_basever//.}-$(printf "%03d" $_p){,.sig})
+ source=(${source[@]} https://ftp.gnu.org/gnu/bash/bash-$_basever-patches/bash${_basever//.}-$(printf "%03d" $_p){,.sig})
done
fi
@@ -41,12 +38,6 @@ prepare() {
msg "applying patch bash${_basever//.}-$(printf "%03d" $_p)"
patch -p0 -i ../bash${_basever//.}-$(printf "%03d" $_p)
done
-
- # http://hmarco.org/bugs/bash_4.3-setuid-bug.html (FS#40663)
- patch -p0 -i ../privmode-setuid-fail.patch
-
- # https://bugs.archlinux.org/task/45891
- patch -p1 -i ../bash-4.3-old-memleak.patch
}
build() {
@@ -55,7 +46,8 @@ build() {
_bashconfig=(-DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/bin\"\'
-DSTANDARD_UTILS_PATH=\'\"/usr/bin\"\'
-DSYS_BASHRC=\'\"/etc/bash.bashrc\"\'
- -DSYS_BASH_LOGOUT=\'\"/etc/bash.bash_logout\"\')
+ -DSYS_BASH_LOGOUT=\'\"/etc/bash.bash_logout\"\'
+ -DNON_INTERACTIVE_LOGIN_SHELLS)
export CFLAGS="${CFLAGS} ${_bashconfig[@]}"
./configure --prefix=/usr --with-curses --enable-readline \
@@ -69,109 +61,61 @@ check() {
package() {
make -C $pkgname-$_basever DESTDIR="$pkgdir" install
- ln -s bash "$pkgdir"/usr/bin/sh
+ ln -s bash "$pkgdir/usr/bin/sh"
- install -dm755 "$pkgdir"/etc/skel/
# system-wide configuration files
- install -m644 system.bashrc $pkgdir/etc/bash.bashrc
- install -m644 system.bash_logout "$pkgdir"/etc/bash.bash_logout
+ install -Dm644 system.bashrc "$pkgdir/etc/bash.bashrc"
+ install -Dm644 system.bash_logout "$pkgdir/etc/bash.bash_logout"
# user configuration file skeletons
- install -m644 dot.bashrc "$pkgdir"/etc/skel/.bashrc
- install -m644 dot.bash_profile "$pkgdir"/etc/skel/.bash_profile
- install -m644 dot.bash_logout "$pkgdir"/etc/skel/.bash_logout
+ install -dm755 "$pkgdir/etc/skel/"
+ install -m644 dot.bashrc "$pkgdir/etc/skel/.bashrc"
+ install -m644 dot.bash_profile "$pkgdir/etc/skel/.bash_profile"
+ install -m644 dot.bash_logout "$pkgdir/etc/skel/.bash_logout"
}
-md5sums=('81348932d5da294953e15d4814c74dd1'
+md5sums=('148888a7c95ac23705559b6f477dfe25'
'SKIP'
'027d6bd8f5f6a06b75bb7698cb478089'
'2902e0fee7a9168f3a4fd2ccd60ff047'
'42f4400ed2314bd7519c020d0187edc5'
- '561949793177116b7be29a07c385ba8b'
+ 'd8f3f334e72c0e30032eae1a1229aef1'
'472f536d7c9e8250dc4568ec4cfaf294'
- 'a577d42e38249d298d6a8d4bf2823883'
- '5bb46160bba51ff904922c6ccfd9c49e'
- '1ab682b4e36afa4cf1b426aa7ac81c0d'
- 'SKIP'
- '8fc22cf50ec85da00f6af3d66f7ddc1b'
- 'SKIP'
- 'a41728eca78858758e26b5dea64ae506'
- 'SKIP'
- 'bf8d53d227829d67235927689a03cc7a'
- 'SKIP'
- 'c0c00935c8b8ffff76e8ab77e7be7d15'
- 'SKIP'
- '6f01e364cd092faa28dd7119f47ddb5f'
- 'SKIP'
- 'dcf471d222bcd83283d3094e6ceeb6f8'
- 'SKIP'
- 'f7553416646dc26c266454c78a916d36'
- 'SKIP'
- '7e73d2151f4064b484a4ba2c4b09960e'
- 'SKIP'
- 'a275463d21735bb6d7161f9fbd320d8f'
- 'SKIP'
- 'c17103ee20420d77e46b224c8d3fceda'
- 'SKIP'
- '3e2a057a19d02b3f92a3a09eacbc03ae'
- 'SKIP'
- 'fb377143a996d4ff087a2771bc8332f9'
- 'SKIP'
- '1a1aaecc99a9d0cbc310e8e247dcc8b6'
- 'SKIP'
- '4f04387458a3c1b4d460d199f49991a8'
- 'SKIP'
- '90e759709720c4f877525bebc9d5dc06'
- 'SKIP'
- '11e4046e1b86070f6adbb7ffc89641be'
- 'SKIP'
- 'cd5a9b46f5bea0dc0248c93c7dfac011'
- 'SKIP'
- 'cff4dc024d9d3456888aaaf8a36ca774'
- 'SKIP'
- '167839c5f147347f4a03d88ab97ff787'
- 'SKIP'
- '1d350671c48dec30b34d8b81f09cd79d'
- 'SKIP'
- '11c349af66a55481a3215ef2520bec36'
- 'SKIP'
- 'b3cb0d80fd0c47728264405cbb3b23c7'
- 'SKIP'
- 'b5ea5600942acceb4b6f07313d2de74e'
+ '817d01a6c0af6f79308a8b7b649e53d8'
'SKIP'
- '193c06f578d38ffdbaebae9c51a7551f'
+ '765e14cff12c7284009772e8e24f2fe0'
'SKIP'
- '922578e2be7ed03729454e92ee8d3f3a'
+ '49e7da93bf07f510a2eb6bb43ac3e5a2'
'SKIP'
- '8ff6948b16f2db5c29b1b9ae1085bbe7'
+ '4557d674ab5831a5fa98052ab19edaf4'
'SKIP'
- 'dd51fa67913b5dca45a702b672b3323f'
+ 'cce96dd77cdd1d293beec10848f6cbb5'
'SKIP'
- '0729364c977ef4271e9f8dfafadacf67'
+ 'd3379f8d8abce5c6ee338f931ad008d5'
'SKIP'
- 'efb709fdb1368945513de23ccbfae053'
+ 'ec38c76ca439ca7f9c178e9baede84fc'
'SKIP'
- '236df1ac1130a033ed0dbe2d2115f28f'
+ 'e0ba18c1e3b94f905da9b5bf9d38b58b'
'SKIP'
- '2360f7e79cfb28526f80021025ea5909'
+ 'e952d4f44e612048930c559d90eb99bb'
'SKIP'
- 'b551c4ee7b8713759e4143499d0bbd48'
+ '57b5b35955d68f9a09dbef6b86d2c782'
'SKIP'
- 'c9a56fbe0348e05a886dff97f2872b74'
+ 'cc896e1fa696b93ded568e557e2392d5'
'SKIP'
- 'e564e8ab44ed1ca3a4e315a9f6cabdc9'
+ 'fa47fbfa56fb7e9e5367f19a9df5fc9e'
'SKIP'
- 'b00ff66c41a7c0f06e191200981980b0'
+ '5e6a20166efe166267972cc78025417b'
'SKIP'
- 'be2a7b05f6ae560313f3c9d5f7127bda'
+ '00a8877a8787dbd78d97767db1115b0a'
'SKIP'
- '61e0522830b24fbe8c0d1b010f132470'
+ '2409586fd19e3104197ead86ce549eca'
'SKIP'
- 'a4775487abe958536751c8ce53cdf6f9'
+ '4b31183db086daf8be8943d7f7ea7526'
'SKIP'
- '80d3587c58854e226055ef099ffeb535'
+ 'c15c8844f1eb87bdbcde71417c9bd342'
'SKIP'
- '20bf63eef7cb441c0b1cc49ef3191d03'
+ 'b25e3373fc8de00523116dfe151ac4e0'
'SKIP'
- '70790646ae61e207c995e44931390e50'
+ '8f43e1d277b02f3319a34c1cd4a4ff3e'
'SKIP')
diff --git a/abs/core/bash/bash-4.3-old-memleak.patch b/abs/core/bash/bash-4.3-old-memleak.patch
deleted file mode 100644
index ff2b665..0000000
--- a/abs/core/bash/bash-4.3-old-memleak.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -up bash-4.3/subst.c.old bash-4.3/subst.c
---- bash-4.3/subst.c.old 2015-08-03 10:32:37.353490080 +0200
-+++ bash-4.3/subst.c 2015-08-03 10:33:34.818533408 +0200
-@@ -9492,7 +9492,7 @@ make_internal_declare (word, option)
- char *word;
- char *option;
- {
-- int t;
-+ int t, r;
- WORD_LIST *wl;
- WORD_DESC *w;
-
-@@ -9504,7 +9504,10 @@ make_internal_declare (word, option)
- wl = make_word_list (w, (WORD_LIST *)NULL);
- wl = make_word_list (make_word (option), wl);
-
-- return (declare_builtin (wl));
-+ r = declare_builtin (wl);
-+
-+ dispose_words (wl);
-+ return r;
- }
- #endif
-
diff --git a/abs/core/bash/bash.install b/abs/core/bash/bash.install
deleted file mode 100644
index a10e6e9..0000000
--- a/abs/core/bash/bash.install
+++ /dev/null
@@ -1,16 +0,0 @@
-info_dir=usr/share/info
-info_files=(bash.info)
-
-post_upgrade() {
- [ -x usr/bin/install-info ] || return 0
- for f in ${info_files[@]}; do
- usr/bin/install-info ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null
- done
-}
-
-pre_remove() {
- [ -x usr/bin/install-info ] || return 0
- for f in ${info_files[@]}; do
- usr/bin/install-info --delete ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null
- done
-}
diff --git a/abs/core/bash/privmode-setuid-fail.patch b/abs/core/bash/privmode-setuid-fail.patch
deleted file mode 100644
index 059857d..0000000
--- a/abs/core/bash/privmode-setuid-fail.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-*** ../bash-4.3-patched/shell.c 2014-01-14 08:04:32.000000000 -0500
---- shell.c 2014-06-06 16:29:01.000000000 -0400
-***************
-*** 1227,1232 ****
- disable_priv_mode ()
- {
-! setuid (current_user.uid);
-! setgid (current_user.gid);
- current_user.euid = current_user.uid;
- current_user.egid = current_user.gid;
---- 1229,1246 ----
- disable_priv_mode ()
- {
-! int e;
-!
-! if (setuid (current_user.uid) < 0)
-! {
-! e = errno;
-! sys_error (_("cannot set uid to %d: effective uid %d"), current_user.uid, current_user.euid);
-! #if defined (EXIT_ON_SETUID_FAILURE)
-! if (e == EAGAIN)
-! exit (e);
-! #endif
-! }
-! if (setgid (current_user.gid) < 0)
-! sys_error (_("cannot set gid to %d: effective gid %d"), current_user.gid, current_user.egid);
-!
- current_user.euid = current_user.uid;
- current_user.egid = current_user.gid;
diff --git a/abs/core/bash/system.bashrc b/abs/core/bash/system.bashrc
index 4d7a643..c484b2b 100644
--- a/abs/core/bash/system.bashrc
+++ b/abs/core/bash/system.bashrc
@@ -5,17 +5,16 @@
# If not running interactively, don't do anything
[[ $- != *i* ]] && return
+[[ $DISPLAY ]] && shopt -s checkwinsize
+
PS1='[\u@\h \W]\$ '
-PS2='> '
-PS3='> '
-PS4='+ '
case ${TERM} in
xterm*|rxvt*|Eterm|aterm|kterm|gnome*)
PROMPT_COMMAND=${PROMPT_COMMAND:+$PROMPT_COMMAND; }'printf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/\~}"'
;;
- screen)
+ screen*)
PROMPT_COMMAND=${PROMPT_COMMAND:+$PROMPT_COMMAND; }'printf "\033_%s@%s:%s\033\\" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/\~}"'
;;
esac
diff --git a/abs/core/bc/PKGBUILD b/abs/core/bc/PKGBUILD
index faf854f..3b40624 100644
--- a/abs/core/bc/PKGBUILD
+++ b/abs/core/bc/PKGBUILD
@@ -2,39 +2,31 @@
# Maintainer: dorphell <dorphell@archlinux.org>
pkgname=bc
-pkgver=1.06.95
+pkgver=1.07.1
pkgrel=1
pkgdesc="An arbitrary precision calculator language"
-arch=('i686' 'x86_64')
-url="http://www.gnu.org/software/bc/"
+arch=('x86_64')
+url="https://www.gnu.org/software/bc/"
license=('GPL')
depends=('readline')
+makedepends=('ed')
replaces=('bc-readline')
conflicts=('bc-readline')
-install=bc.install
-source=(ftp://alpha.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.bz2{,.sig}
- bc-1.06.95-void_uninitialized.patch)
-md5sums=('5126a721b73f97d715bb72c13c889035'
- 'SKIP'
- 'fe85d42dd4151801e9b8c2d2c4d990bf')
-
-prepare() {
- cd "${pkgname}-${pkgver}"
-
- # https://bugs.gentoo.org/show_bug.cgi?id=349339
- patch -Np0 -i ${srcdir}/bc-1.06.95-void_uninitialized.patch
-}
+source=(https://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz{,.sig})
+sha256sums=('62adfca89b0a1c0164c2cdca59ca210c1d44c3ffc46daf9931cf4942664cb02a'
+ 'SKIP')
+validpgpkeys=('00E426232F384BF6D32D8B1881C24FF12FB7B14B') # Phil Nelson <philnelson@acm.org>
build() {
cd "${pkgname}-${pkgver}"
./configure --prefix=/usr --mandir=/usr/share/man \
--infodir=/usr/share/info --with-readline
- make
+ make -j1
}
check () {
cd "${pkgname}-${pkgver}"
- echo "quit" | ./bc/bc -l Test/checklib.b # 10 failures
+ echo "quit" | ./bc/bc -l Test/checklib.b
}
package() {
diff --git a/abs/core/bc/bc-1.06.95-void_uninitialized.patch b/abs/core/bc/bc-1.06.95-void_uninitialized.patch
deleted file mode 100644
index c60290c..0000000
--- a/abs/core/bc/bc-1.06.95-void_uninitialized.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-http://www.pixelbeat.org/programming/oss_bug_flow.html
-https://bugs.gentoo.org/349339
-
---- bc/storage.c
-+++ bc/storage.c
-@@ -99,6 +99,7 @@
- {
- f = &functions[indx];
- f->f_defined = FALSE;
-+ f->f_void = FALSE;
- f->f_body = (char *) bc_malloc (BC_START_SIZE);
- f->f_body_size = BC_START_SIZE;
- f->f_code_size = 0;
-
diff --git a/abs/core/bc/bc.install b/abs/core/bc/bc.install
deleted file mode 100644
index e1e2eaa..0000000
--- a/abs/core/bc/bc.install
+++ /dev/null
@@ -1,20 +0,0 @@
-infodir=/usr/share/info
-filelist=(bc.info.gz dc.info.gz)
-
-post_install() {
- [ -x usr/bin/install-info ] || return 0
- for file in ${filelist[@]}; do
- install-info $infodir/$file $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 $infodir/dir 2> /dev/null
- done
-}
diff --git a/abs/core/binutils/0001-PR22741-objcopy-segfault-on-fuzzed-COFF-object.patch b/abs/core/binutils/0001-PR22741-objcopy-segfault-on-fuzzed-COFF-object.patch
new file mode 100644
index 0000000..24c814e
--- /dev/null
+++ b/abs/core/binutils/0001-PR22741-objcopy-segfault-on-fuzzed-COFF-object.patch
@@ -0,0 +1,29 @@
+From eb77f6a4621795367a39cdd30957903af9dbb815 Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Sat, 27 Jan 2018 08:19:33 +1030
+Subject: [PATCH] PR22741, objcopy segfault on fuzzed COFF object
+
+ PR 22741
+ * coffgen.c (coff_pointerize_aux): Ensure auxent tagndx is in
+ range before converting to a symbol table pointer.
+---
+ bfd/coffgen.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/bfd/coffgen.c b/bfd/coffgen.c
+index b2410873d0..4f90eaddd9 100644
+--- a/bfd/coffgen.c
++++ b/bfd/coffgen.c
+@@ -1555,7 +1555,8 @@ coff_pointerize_aux (bfd *abfd,
+ }
+ /* A negative tagndx is meaningless, but the SCO 3.2v4 cc can
+ generate one, so we must be careful to ignore it. */
+- if (auxent->u.auxent.x_sym.x_tagndx.l > 0)
++ if ((unsigned long) auxent->u.auxent.x_sym.x_tagndx.l
++ < obj_raw_syment_count (abfd))
+ {
+ auxent->u.auxent.x_sym.x_tagndx.p =
+ table_base + auxent->u.auxent.x_sym.x_tagndx.l;
+--
+2.16.2
+
diff --git a/abs/core/binutils/0002-PR22829-objcopy-strip-removes-PT_GNU_RELRO-from-lld-.patch b/abs/core/binutils/0002-PR22829-objcopy-strip-removes-PT_GNU_RELRO-from-lld-.patch
new file mode 100644
index 0000000..3b73a6a
--- /dev/null
+++ b/abs/core/binutils/0002-PR22829-objcopy-strip-removes-PT_GNU_RELRO-from-lld-.patch
@@ -0,0 +1,145 @@
+From 3b56a1358768563d9cf320559ebdedfb30f122dd Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Mon, 12 Feb 2018 13:06:07 +1030
+Subject: [PATCH] PR22829, objcopy/strip removes PT_GNU_RELRO from lld binaries
+
+lld lays out the relro segment differently to GNU ld, not bothering to
+include the first few bytes of .got.plt and padding out to a page at
+the end of the segment. This patch teaches binutils to recognize the
+different (and somewhat inferior) layout as valid.
+
+bfd/
+ PR 22829
+ * elf.c (assign_file_positions_for_non_load_sections): Rewrite
+ PT_GNU_RELRO setup.
+ld/
+ * testsuite/ld-x86-64/pr14207.d: Adjust relro p_filesz.
+
+(cherry picked from commit f2731e0c374e5323ce4cdae2bcc7b7fe22da1a6f)
+---
+ bfd/elf.c | 78 ++++++++++++++++++++++++++--------------
+ ld/testsuite/ld-x86-64/pr14207.d | 2 +-
+ 2 files changed, 52 insertions(+), 28 deletions(-)
+
+diff --git a/bfd/elf.c b/bfd/elf.c
+index bbaab26918..f5a230cd77 100644
+--- a/bfd/elf.c
++++ b/bfd/elf.c
+@@ -5826,50 +5826,74 @@ assign_file_positions_for_non_load_sections (bfd *abfd,
+ {
+ if (p->p_type == PT_GNU_RELRO)
+ {
+- const Elf_Internal_Phdr *lp;
+- struct elf_segment_map *lm;
++ bfd_vma start, end;
+
+ if (link_info != NULL)
+ {
+ /* During linking the range of the RELRO segment is passed
+- in link_info. */
++ in link_info. Note that there may be padding between
++ relro_start and the first RELRO section. */
++ start = link_info->relro_start;
++ end = link_info->relro_end;
++ }
++ else if (m->count != 0)
++ {
++ if (!m->p_size_valid)
++ abort ();
++ start = m->sections[0]->vma;
++ end = start + m->p_size;
++ }
++ else
++ {
++ start = 0;
++ end = 0;
++ }
++
++ if (start < end)
++ {
++ struct elf_segment_map *lm;
++ const Elf_Internal_Phdr *lp;
++ unsigned int i;
++
++ /* Find a LOAD segment containing a section in the RELRO
++ segment. */
+ for (lm = elf_seg_map (abfd), lp = phdrs;
+ lm != NULL;
+ lm = lm->next, lp++)
+ {
+ if (lp->p_type == PT_LOAD
+- && lp->p_vaddr < link_info->relro_end
+ && lm->count != 0
+- && lm->sections[0]->vma >= link_info->relro_start)
++ && lm->sections[lm->count - 1]->vma >= start
++ && lm->sections[0]->vma < end)
+ break;
+ }
+-
+ BFD_ASSERT (lm != NULL);
+- }
+- else
+- {
+- /* Otherwise we are copying an executable or shared
+- library, but we need to use the same linker logic. */
+- for (lp = phdrs; lp < phdrs + count; ++lp)
++
++ /* Find the section starting the RELRO segment. */
++ for (i = 0; i < lm->count; i++)
+ {
+- if (lp->p_type == PT_LOAD
+- && lp->p_paddr == p->p_paddr)
++ asection *s = lm->sections[i];
++ if (s->vma >= start
++ && s->vma < end
++ && s->size != 0)
+ break;
+ }
+- }
++ BFD_ASSERT (i < lm->count);
++
++ p->p_vaddr = lm->sections[i]->vma;
++ p->p_paddr = lm->sections[i]->lma;
++ p->p_offset = lm->sections[i]->filepos;
++ p->p_memsz = end - p->p_vaddr;
++ p->p_filesz = p->p_memsz;
++
++ /* The RELRO segment typically ends a few bytes into
++ .got.plt but other layouts are possible. In cases
++ where the end does not match any loaded section (for
++ instance is in file padding), trim p_filesz back to
++ correspond to the end of loaded section contents. */
++ if (p->p_filesz > lp->p_vaddr + lp->p_filesz - p->p_vaddr)
++ p->p_filesz = lp->p_vaddr + lp->p_filesz - p->p_vaddr;
+
+- if (lp < phdrs + count)
+- {
+- p->p_vaddr = lp->p_vaddr;
+- p->p_paddr = lp->p_paddr;
+- p->p_offset = lp->p_offset;
+- if (link_info != NULL)
+- p->p_filesz = link_info->relro_end - lp->p_vaddr;
+- else if (m->p_size_valid)
+- p->p_filesz = m->p_size;
+- else
+- abort ();
+- p->p_memsz = p->p_filesz;
+ /* Preserve the alignment and flags if they are valid. The
+ gold linker generates RW/4 for the PT_GNU_RELRO section.
+ It is better for objcopy/strip to honor these attributes
+diff --git a/ld/testsuite/ld-x86-64/pr14207.d b/ld/testsuite/ld-x86-64/pr14207.d
+index f6558e7cd7..41f92b8bd8 100644
+--- a/ld/testsuite/ld-x86-64/pr14207.d
++++ b/ld/testsuite/ld-x86-64/pr14207.d
+@@ -13,7 +13,7 @@ Program Headers:
+ LOAD 0x000000 0x0000000000000000 0x0000000000000000 0x0001c8 0x0001c8 R 0x200000
+ LOAD 0x000b.8 0x0000000000200b.8 0x0000000000200b.8 0x0004.0 0x000c.8 RW 0x200000
+ DYNAMIC 0x000b.0 0x0000000000200b.0 0x0000000000200b.0 0x0001.0 0x0001.0 RW 0x8
+- GNU_RELRO 0x000b.8 0x0000000000200b.8 0x0000000000200b.8 0x0004.8 0x0004.8 R 0x1
++ GNU_RELRO 0x000b.8 0x0000000000200b.8 0x0000000000200b.8 0x0004.0 0x0004.8 R 0x1
+
+ Section to Segment mapping:
+ Segment Sections...
+--
+2.16.2
+
diff --git a/abs/core/binutils/0003-PR22836-r-s-doesnt-work-with-g3-using-GCC-7.patch b/abs/core/binutils/0003-PR22836-r-s-doesnt-work-with-g3-using-GCC-7.patch
new file mode 100644
index 0000000..2f3c652
--- /dev/null
+++ b/abs/core/binutils/0003-PR22836-r-s-doesnt-work-with-g3-using-GCC-7.patch
@@ -0,0 +1,233 @@
+From d957f81cb38d7e82ae546cd03265ee3087ba8a85 Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Tue, 13 Feb 2018 14:09:48 +1030
+Subject: [PATCH] PR22836, "-r -s" doesn't work with -g3 using GCC 7
+
+This fixes the case where all of a group is removed with ld -r, the
+situation in the PR, and failures where part of a group is removed
+that contain relocs.
+
+bfd/
+ PR 22836
+ * elf.c (_bfd_elf_fixup_group_sections): Account for removed
+ relocation sections. If size reduces to just the flag word,
+ remove that too and mark with SEC_EXCLUDE.
+ * elflink.c (bfd_elf_final_link): Strip empty group sections.
+binutils/
+ * testsuite/binutils-all/group-7.s,
+ * testsuite/binutils-all/group-7a.d,
+ * testsuite/binutils-all/group-7b.d,
+ * testsuite/binutils-all/group-7c.d: New tests.
+ * testsuite/binutils-all/objcopy.exp: Run them.
+ld/
+ * testsuite/ld-elf/pr22836-2.d,
+ * testsuite/ld-elf/pr22836-2.s: New test.
+
+(cherry picked from commit 6e5e9d58c1eeef5677c90886578a895cb8c164c5)
+---
+ bfd/ChangeLog | 11 +++++++++++
+ bfd/elf.c | 25 +++++++++++++++++++++----
+ bfd/elflink.c | 7 +++++++
+ binutils/ChangeLog | 12 ++++++++++++
+ binutils/testsuite/binutils-all/group-7.s | 6 ++++++
+ binutils/testsuite/binutils-all/group-7a.d | 16 ++++++++++++++++
+ binutils/testsuite/binutils-all/group-7b.d | 19 +++++++++++++++++++
+ binutils/testsuite/binutils-all/group-7c.d | 8 ++++++++
+ binutils/testsuite/binutils-all/objcopy.exp | 3 +++
+ ld/ChangeLog | 9 +++++++++
+ ld/testsuite/ld-elf/pr22836-2.d | 7 +++++++
+ ld/testsuite/ld-elf/pr22836-2.s | 7 +++++++
+ 12 files changed, 126 insertions(+), 4 deletions(-)
+ create mode 100644 binutils/testsuite/binutils-all/group-7.s
+ create mode 100644 binutils/testsuite/binutils-all/group-7a.d
+ create mode 100644 binutils/testsuite/binutils-all/group-7b.d
+ create mode 100644 binutils/testsuite/binutils-all/group-7c.d
+ create mode 100644 ld/testsuite/ld-elf/pr22836-2.d
+ create mode 100644 ld/testsuite/ld-elf/pr22836-2.s
+
+diff --git a/bfd/elf.c b/bfd/elf.c
+index 325bdd5..e95c8a9 100644
+--- a/bfd/elf.c
++++ b/bfd/elf.c
+@@ -7579,7 +7579,16 @@ _bfd_elf_fixup_group_sections (bfd *ibfd, asection *discarded)
+ but the SHT_GROUP section is, then adjust its size. */
+ else if (s->output_section == discarded
+ && isec->output_section != discarded)
+- removed += 4;
++ {
++ struct bfd_elf_section_data *elf_sec = elf_section_data (s);
++ removed += 4;
++ if (elf_sec->rel.hdr != NULL
++ && (elf_sec->rel.hdr->sh_flags & SHF_GROUP) != 0)
++ removed += 4;
++ if (elf_sec->rela.hdr != NULL
++ && (elf_sec->rela.hdr->sh_flags & SHF_GROUP) != 0)
++ removed += 4;
++ }
+ s = elf_next_in_group (s);
+ if (s == first)
+ break;
+@@ -7589,18 +7598,26 @@ _bfd_elf_fixup_group_sections (bfd *ibfd, asection *discarded)
+ if (discarded != NULL)
+ {
+ /* If we've been called for ld -r, then we need to
+- adjust the input section size. This function may
+- be called multiple times, so save the original
+- size. */
++ adjust the input section size. */
+ if (isec->rawsize == 0)
+ isec->rawsize = isec->size;
+ isec->size = isec->rawsize - removed;
++ if (isec->size <= 4)
++ {
++ isec->size = 0;
++ isec->flags |= SEC_EXCLUDE;
++ }
+ }
+ else
+ {
+ /* Adjust the output section size when called from
+ objcopy. */
+ isec->output_section->size -= removed;
++ if (isec->output_section->size <= 4)
++ {
++ isec->output_section->size = 0;
++ isec->output_section->flags |= SEC_EXCLUDE;
++ }
+ }
+ }
+ }
+diff --git a/bfd/elflink.c b/bfd/elflink.c
+index 72aa3ac..69cb5ab 100644
+--- a/bfd/elflink.c
++++ b/bfd/elflink.c
+@@ -11618,6 +11618,13 @@ bfd_elf_final_link (bfd *abfd, struct bfd_link_info *info)
+ else
+ o->flags |= SEC_EXCLUDE;
+ }
++ else if ((o->flags & SEC_GROUP) != 0 && o->size == 0)
++ {
++ /* Remove empty group section from linker output. */
++ o->flags |= SEC_EXCLUDE;
++ bfd_section_list_remove (abfd, o);
++ abfd->section_count--;
++ }
+ }
+
+ /* Count up the number of relocations we will output for each output
+diff --git a/binutils/testsuite/binutils-all/group-7.s b/binutils/testsuite/binutils-all/group-7.s
+new file mode 100644
+index 0000000..5028afc
+--- /dev/null
++++ b/binutils/testsuite/binutils-all/group-7.s
+@@ -0,0 +1,6 @@
++ .section .data.foo,"awG",%progbits,foo,comdat
++here:
++ .dc.a here
++
++ .section .data2.foo,"awG",%progbits,foo,comdat
++ .dc.a 0
+diff --git a/binutils/testsuite/binutils-all/group-7a.d b/binutils/testsuite/binutils-all/group-7a.d
+new file mode 100644
+index 0000000..fa8db60
+--- /dev/null
++++ b/binutils/testsuite/binutils-all/group-7a.d
+@@ -0,0 +1,16 @@
++#name: copy removing reloc group member
++#source: group-7.s
++#PROG: objcopy
++#DUMPPROG: readelf
++#objcopy: --remove-section .data.foo
++#readelf: -Sg --wide
++
++#...
++ \[[ 0-9]+\] \.group[ \t]+GROUP[ \t]+.*
++#...
++ \[[ 0-9]+\] \.data2\.foo[ \t]+PROGBITS[ \t0-9a-f]+WAG.*
++#...
++COMDAT group section \[[ 0-9]+\] `\.group' \[foo\] contains 1 section.*
++ \[Index\] Name
++ \[[ 0-9]+\] \.data2\.foo
++#pass
+diff --git a/binutils/testsuite/binutils-all/group-7b.d b/binutils/testsuite/binutils-all/group-7b.d
+new file mode 100644
+index 0000000..b674545
+--- /dev/null
++++ b/binutils/testsuite/binutils-all/group-7b.d
+@@ -0,0 +1,19 @@
++#name: copy removing non-reloc group member
++#source: group-7.s
++#PROG: objcopy
++#DUMPPROG: readelf
++#objcopy: --remove-section .data2.foo
++#readelf: -Sg --wide
++
++#...
++ \[[ 0-9]+\] \.group[ \t]+GROUP[ \t]+.*
++#...
++ \[[ 0-9]+\] \.data\.foo[ \t]+PROGBITS[ \t0-9a-f]+WAG.*
++#...
++ \[[ 0-9]+\] \.rela?\.data\.foo[ \t]+RELA?[ \t0-9a-f]+IG.*
++#...
++COMDAT group section \[[ 0-9]+\] `\.group' \[foo\] contains 2 sections:
++ \[Index\] Name
++ \[[ 0-9]+\] \.data\.foo
++ \[[ 0-9]+\] \.rela?\.data\.foo
++#pass
+diff --git a/binutils/testsuite/binutils-all/group-7c.d b/binutils/testsuite/binutils-all/group-7c.d
+new file mode 100644
+index 0000000..83e9115
+--- /dev/null
++++ b/binutils/testsuite/binutils-all/group-7c.d
+@@ -0,0 +1,8 @@
++#name: copy removing reloc and non-reloc group member
++#source: group-7.s
++#PROG: objcopy
++#DUMPPROG: readelf
++#objcopy: -R .data.foo -R .data2.foo
++#readelf: -g --wide
++
++There are no section groups in this file\.
+diff --git a/binutils/testsuite/binutils-all/objcopy.exp b/binutils/testsuite/binutils-all/objcopy.exp
+index 377f88c..f4a7692 100644
+--- a/binutils/testsuite/binutils-all/objcopy.exp
++++ b/binutils/testsuite/binutils-all/objcopy.exp
+@@ -1051,6 +1051,9 @@ if [is_elf_format] {
+ objcopy_test_readelf "GNU_MBIND section" mbind1.s
+ run_dump_test "group-5"
+ run_dump_test "group-6"
++ run_dump_test "group-7a"
++ run_dump_test "group-7b"
++ run_dump_test "group-7c"
+ run_dump_test "copy-1"
+ run_dump_test "note-1"
+ if [is_elf64 tmpdir/bintest.o] {
+diff --git a/ld/testsuite/ld-elf/pr22836-2.d b/ld/testsuite/ld-elf/pr22836-2.d
+new file mode 100644
+index 0000000..10133e4
+--- /dev/null
++++ b/ld/testsuite/ld-elf/pr22836-2.d
+@@ -0,0 +1,7 @@
++#source: pr22836-2.s
++#ld: -r -S
++#readelf: -g --wide
++
++group section \[[ 0-9]+\] `\.group' \[foo\] contains 1 section.*
++ \[Index\] Name
++ \[[ 0-9]+\] \.comment
+diff --git a/ld/testsuite/ld-elf/pr22836-2.s b/ld/testsuite/ld-elf/pr22836-2.s
+new file mode 100644
+index 0000000..77cd83a
+--- /dev/null
++++ b/ld/testsuite/ld-elf/pr22836-2.s
+@@ -0,0 +1,7 @@
++ .section .debug_macro,"G",%progbits,foo
++ .long .LASF0
++.LASF0:
++ .string "__STDC__ 1"
++
++ .section .comment,"G",%progbits,foo
++ .asciz "hi"
+--
+2.9.3
+
diff --git a/abs/core/binutils/0004-PR22868-Fix-case-where-IR-file-provides-symbol-visibility.patch b/abs/core/binutils/0004-PR22868-Fix-case-where-IR-file-provides-symbol-visibility.patch
new file mode 100644
index 0000000..999260d
--- /dev/null
+++ b/abs/core/binutils/0004-PR22868-Fix-case-where-IR-file-provides-symbol-visibility.patch
@@ -0,0 +1,275 @@
+From 330b90b5ffbbc20c5de6ae6c7f60c40fab2e7a4f Mon Sep 17 00:00:00 2001
+From: Cary Coutant <ccoutant@gmail.com>
+Date: Fri, 23 Mar 2018 09:03:34 -0700
+Subject: [PATCH] Fix case where IR file provides symbol visibility but
+ replacement file does not.
+
+In PR 22868, two IR files provide conflicting visibility for a symbol.
+When a def with PROTECTED visibility is seen after a def with DEFAULT
+visibility, gold does not override the visibility. Later, if the
+replacement object define the symbol with DEFAULT visibility, the symbol
+remains DEFAULT. This was caused by a recent change to allow multiply-defined
+absolute symbols, combined with the fact that the plugin framework was using
+SHN_ABS as the section index for placeholder symbols. The solution is to
+use a real (but arbitrary) section index.
+
+gold/
+ PR gold/22868
+ * plugin.cc (Sized_pluginobj::do_add_symbols): Use a real section
+ index instead of SHN_ABS for defined symbols.
+ * testsuite/Makefile.am (plugin_pr22868): New test case.
+ * testsuite/Makefile.in: Regenerate
+ * testsuite/plugin_pr22868.sh: New test script.
+ * testsuite/plugin_pr22868_a.c: New source file.
+ * testsuite/plugin_pr22868_b.c: New source file.
+---
+ gold/plugin.cc | 3 ++-
+ gold/testsuite/Makefile.am | 21 ++++++++++++++++++
+ gold/testsuite/Makefile.in | 28 +++++++++++++++++++++---
+ gold/testsuite/plugin_pr22868.sh | 45 +++++++++++++++++++++++++++++++++++++++
+ gold/testsuite/plugin_pr22868_a.c | 28 ++++++++++++++++++++++++
+ gold/testsuite/plugin_pr22868_b.c | 39 +++++++++++++++++++++++++++++++++
+ 6 files changed, 160 insertions(+), 4 deletions(-)
+ create mode 100755 gold/testsuite/plugin_pr22868.sh
+ create mode 100644 gold/testsuite/plugin_pr22868_a.c
+ create mode 100644 gold/testsuite/plugin_pr22868_b.c
+
+diff --git a/gold/plugin.cc b/gold/plugin.cc
+index 02fef25..a59f19d 100644
+--- a/gold/plugin.cc
++++ b/gold/plugin.cc
+@@ -1144,7 +1144,8 @@ Sized_pluginobj<size, big_endian>::do_add_symbols(Symbol_table* symtab,
+ {
+ case LDPK_DEF:
+ case LDPK_WEAKDEF:
+- shndx = elfcpp::SHN_ABS;
++ // We use an arbitrary section number for a defined symbol.
++ shndx = 1;
+ break;
+ case LDPK_COMMON:
+ shndx = elfcpp::SHN_COMMON;
+diff --git a/gold/testsuite/Makefile.am b/gold/testsuite/Makefile.am
+index 16cae80..d086dad 100644
+--- a/gold/testsuite/Makefile.am
++++ b/gold/testsuite/Makefile.am
+@@ -2433,6 +2433,27 @@ plugin_section_alignment.so: plugin_section_alignment.o gcctestdir/ld
+ plugin_section_alignment.o: plugin_section_alignment.cc
+ $(CXXCOMPILE) -O0 -c -fpic -o $@ $<
+
++check_SCRIPTS += plugin_pr22868.sh
++check_DATA += plugin_pr22868.stdout
++MOSTLYCLEANFILES += plugin_pr22868.stdout
++plugin_pr22868.stdout: plugin_pr22868.so
++ $(TEST_READELF) -W --dyn-syms $< >$@ 2>/dev/null
++plugin_pr22868.so: plugin_pr22868_a.o.syms plugin_pr22868_b.o.syms plugin_pr22868_b.o plugin_test.so gcctestdir/ld
++ $(LINK) -Bgcctestdir/ -shared -Wl,--plugin,"./plugin_test.so" plugin_pr22868_a.o.syms plugin_pr22868_b.o.syms
++plugin_pr22868_a.o.syms: plugin_pr22868_a.o
++ $(TEST_READELF) -sW $< >$@ 2>/dev/null
++# Generate the .syms file from an alternate version of the original source
++# file, with a "protected" visibility attribute. We'll link with a
++# "replacement" object that does not have that attribute.
++plugin_pr22868_b.o.syms: plugin_pr22868_b_ir.o
++ $(TEST_READELF) -sW $< >$@ 2>/dev/null
++plugin_pr22868_a.o: plugin_pr22868_a.c
++ $(COMPILE) -c -fpic -o $@ $<
++plugin_pr22868_b_ir.o: plugin_pr22868_b.c
++ $(COMPILE) -c -DIR -fpic -o $@ $<
++plugin_pr22868_b.o: plugin_pr22868_b.c
++ $(COMPILE) -c -fpic -o $@ $<
++
+ endif PLUGINS
+
+ check_PROGRAMS += exclude_libs_test
+diff --git a/gold/testsuite/Makefile.in b/gold/testsuite/Makefile.in
+index bbf8dc1..22940ca 100644
+--- a/gold/testsuite/Makefile.in
++++ b/gold/testsuite/Makefile.in
+@@ -591,16 +591,19 @@ check_PROGRAMS = $(am__EXEEXT_1) $(am__EXEEXT_2) $(am__EXEEXT_3) \
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@am__append_52 = unused.c \
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ plugin_final_layout \
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ plugin_layout_new_file \
+-@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ plugin_layout_with_alignment
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ plugin_layout_with_alignment \
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ plugin_pr22868.stdout
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@am__append_53 = plugin_final_layout.sh \
+-@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ plugin_layout_with_alignment.sh
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ plugin_layout_with_alignment.sh \
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ plugin_pr22868.sh
+
+ # Uses the plugin_final_layout.sh script above to avoid duplication
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@am__append_54 = plugin_final_layout.stdout \
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ plugin_final_layout_readelf.stdout \
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ plugin_layout_new_file.stdout \
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ plugin_layout_new_file_readelf.stdout \
+-@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ plugin_layout_with_alignment.stdout
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ plugin_layout_with_alignment.stdout \
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ plugin_pr22868.stdout
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@am__append_55 = exclude_libs_test \
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@ local_labels_test \
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@ discard_locals_test
+@@ -5299,6 +5302,8 @@ plugin_final_layout.sh.log: plugin_final_layout.sh
+ @p='plugin_final_layout.sh'; $(am__check_pre) $(LOG_COMPILE) "$$tst" $(am__check_post)
+ plugin_layout_with_alignment.sh.log: plugin_layout_with_alignment.sh
+ @p='plugin_layout_with_alignment.sh'; $(am__check_pre) $(LOG_COMPILE) "$$tst" $(am__check_post)
++plugin_pr22868.sh.log: plugin_pr22868.sh
++ @p='plugin_pr22868.sh'; $(am__check_pre) $(LOG_COMPILE) "$$tst" $(am__check_post)
+ exclude_libs_test.sh.log: exclude_libs_test.sh
+ @p='exclude_libs_test.sh'; $(am__check_pre) $(LOG_COMPILE) "$$tst" $(am__check_post)
+ discard_locals_test.sh.log: discard_locals_test.sh
+@@ -7086,6 +7091,23 @@ uninstall-am:
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ $(CXXLINK) -Bgcctestdir/ -shared plugin_section_alignment.o
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@plugin_section_alignment.o: plugin_section_alignment.cc
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ $(CXXCOMPILE) -O0 -c -fpic -o $@ $<
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@plugin_pr22868.stdout: plugin_pr22868.so
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ $(TEST_READELF) -W --dyn-syms $< >$@ 2>/dev/null
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@plugin_pr22868.so: plugin_pr22868_a.o.syms plugin_pr22868_b.o.syms plugin_pr22868_b.o plugin_test.so gcctestdir/ld
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ $(LINK) -Bgcctestdir/ -shared -Wl,--plugin,"./plugin_test.so" plugin_pr22868_a.o.syms plugin_pr22868_b.o.syms
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@plugin_pr22868_a.o.syms: plugin_pr22868_a.o
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ $(TEST_READELF) -sW $< >$@ 2>/dev/null
++# Generate the .syms file from an alternate version of the original source
++# file, with a "protected" visibility attribute. We'll link with a
++# "replacement" object that does not have that attribute.
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@plugin_pr22868_b.o.syms: plugin_pr22868_b_ir.o
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ $(TEST_READELF) -sW $< >$@ 2>/dev/null
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@plugin_pr22868_a.o: plugin_pr22868_a.c
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ $(COMPILE) -c -fpic -o $@ $<
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@plugin_pr22868_b_ir.o: plugin_pr22868_b.c
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ $(COMPILE) -c -DIR -fpic -o $@ $<
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@plugin_pr22868_b.o: plugin_pr22868_b.c
++@GCC_TRUE@@NATIVE_LINKER_TRUE@@PLUGINS_TRUE@ $(COMPILE) -c -fpic -o $@ $<
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@exclude_libs_test.syms: exclude_libs_test
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@ $(TEST_READELF) -sW $< >$@ 2>/dev/null
+ @GCC_TRUE@@NATIVE_LINKER_TRUE@libexclude_libs_test_1.a: exclude_libs_test_1.o
+diff --git a/gold/testsuite/plugin_pr22868.sh b/gold/testsuite/plugin_pr22868.sh
+new file mode 100755
+index 0000000..72f364b
+--- /dev/null
++++ b/gold/testsuite/plugin_pr22868.sh
+@@ -0,0 +1,45 @@
++#!/bin/sh
++
++# plugin_pr22868.sh -- a test case for the plugin API.
++
++# Copyright (C) 2018 Free Software Foundation, Inc.
++# Written by Cary Coutant <ccoutant@google.com>.
++
++# This file is part of gold.
++
++# This program is free software; you can redistribute it and/or modify
++# it under the terms of the GNU General Public License as published by
++# the Free Software Foundation; either version 3 of the License, or
++# (at your option) any later version.
++
++# This program is distributed in the hope that it will be useful,
++# but WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++# GNU General Public License for more details.
++
++# You should have received a copy of the GNU General Public License
++# along with this program; if not, write to the Free Software
++# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
++# MA 02110-1301, USA.
++
++# This file goes with plugin_pr22868_a.c and plugin_pr22868_b.c,
++# which check that if a symbol is declared PROTECTED in any IR file,
++# it will remain PROTECTED in the output even if the replacement file(s)
++# fail to declare it PROTECTED.
++
++check()
++{
++ if ! grep -q "$2" "$1"
++ then
++ echo "Did not find expected output in $1:"
++ echo " $2"
++ echo ""
++ echo "Actual output below:"
++ cat "$1"
++ exit 1
++ fi
++}
++
++check plugin_pr22868.stdout "PROTECTED.*foo"
++
++exit 0
+diff --git a/gold/testsuite/plugin_pr22868_a.c b/gold/testsuite/plugin_pr22868_a.c
+new file mode 100644
+index 0000000..86a9843
+--- /dev/null
++++ b/gold/testsuite/plugin_pr22868_a.c
+@@ -0,0 +1,28 @@
++/* plugin_pr22868_a.c -- a test case for the plugin API with GC.
++
++ Copyright (C) 2018 Free Software Foundation, Inc.
++ Written by Cary Coutant <ccoutant@gmail.com>.
++
++ This file is part of gold.
++
++ This program is free software; you can redistribute it and/or modify
++ it under the terms of the GNU General Public License as published by
++ the Free Software Foundation; either version 3 of the License, or
++ (at your option) any later version.
++
++ This program is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ GNU General Public License for more details.
++
++ You should have received a copy of the GNU General Public License
++ along with this program; if not, write to the Free Software
++ Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
++ MA 02110-1301, USA. */
++
++int foo(int i) __attribute__ (( weak ));
++
++int foo(int i)
++{
++ return i + 1;
++}
+diff --git a/gold/testsuite/plugin_pr22868_b.c b/gold/testsuite/plugin_pr22868_b.c
+new file mode 100644
+index 0000000..92d2145
+--- /dev/null
++++ b/gold/testsuite/plugin_pr22868_b.c
+@@ -0,0 +1,39 @@
++/* plugin_pr22868_b_ir.c -- a test case for the plugin API with GC.
++
++ Copyright (C) 2018 Free Software Foundation, Inc.
++ Written by Cary Coutant <ccoutant@gmail.com>.
++
++ This file is part of gold.
++
++ This program is free software; you can redistribute it and/or modify
++ it under the terms of the GNU General Public License as published by
++ the Free Software Foundation; either version 3 of the License, or
++ (at your option) any later version.
++
++ This program is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ GNU General Public License for more details.
++
++ You should have received a copy of the GNU General Public License
++ along with this program; if not, write to the Free Software
++ Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
++ MA 02110-1301, USA. */
++
++/* This file is compiled with -DIR to generate the .syms file,
++ and without -DIR for use as the replacement object.
++ The .syms file declares foo with protected visibility, but
++ the replacement file does not. */
++
++#ifdef IR
++#define PROTECTED __attribute__ (( visibility ("protected") ))
++#else
++#define PROTECTED
++#endif
++
++int foo(int i) __attribute__ (( weak )) PROTECTED;
++
++int foo(int i)
++{
++ return i + 1;
++}
+--
+2.9.3
+
diff --git a/abs/core/binutils/PKGBUILD b/abs/core/binutils/PKGBUILD
index 7a41923..e2b300c 100644
--- a/abs/core/binutils/PKGBUILD
+++ b/abs/core/binutils/PKGBUILD
@@ -1,50 +1,79 @@
# $Id$
-# Maintainer: Allan McRae <allan@archlinux.org>
+# Maintainer: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
+# Contributor: Allan McRae <allan@archlinux.org>
# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc
pkgname=binutils
-pkgver=2.26
-pkgrel=3
-_commit=71090e7a
-pkgdesc="A set of programs to assemble and manipulate binary and object files"
-arch=('i686' 'x86_64')
-url="http://www.gnu.org/software/binutils/"
-license=('GPL')
-groups=('base-devel')
-depends=('glibc>=2.23' 'zlib')
-makedepends=('git')
-checkdepends=('dejagnu' 'bc')
-conflicts=('binutils-multilib')
-replaces=('binutils-multilib')
-options=('staticlibs' '!distcc' '!ccache')
-install=binutils.install
-source=(git://sourceware.org/git/binutils-gdb.git#commit=${_commit})
-md5sums=('SKIP')
+pkgver=2.30
+pkgrel=5
+pkgdesc='A set of programs to assemble and manipulate binary and object files'
+arch=(x86_64)
+url='http://www.gnu.org/software/binutils/'
+license=(GPL)
+groups=(base-devel)
+depends=(glibc zlib)
+checkdepends=(dejagnu bc)
+conflicts=(binutils-multilib)
+replaces=(binutils-multilib)
+options=(staticlibs !distcc !ccache)
+source=(https://ftp.gnu.org/gnu/binutils/binutils-$pkgver.tar.xz{,.sig}
+ 0001-PR22741-objcopy-segfault-on-fuzzed-COFF-object.patch
+ 0002-PR22829-objcopy-strip-removes-PT_GNU_RELRO-from-lld-.patch
+ 0003-PR22836-r-s-doesnt-work-with-g3-using-GCC-7.patch
+ 0004-PR22868-Fix-case-where-IR-file-provides-symbol-visibility.patch)
+validpgpkeys=(3A24BC1E8FB409FA9F14371813FCEF89DD9E3C4F)
+md5sums=('ffc476dd46c96f932875d1b2e27e929f'
+ 'SKIP'
+ '469164f3c93a0e92a697537b60c9806c'
+ '0c679b37e90fb23de60a4d28329b956a'
+ '53b5682e09c0a27e9994c3efdfe01d29'
+ '0fac94f7fa54a95354454677d3e43994')
prepare() {
- cd binutils-gdb
+ mkdir -p binutils-build
+
+ #cd binutils-gdb
+ cd binutils-$pkgver
# hack! - libiberty configure tests for header files using "$CPP $CPPFLAGS"
sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" libiberty/configure
- mkdir ${srcdir}/binutils-build
+ # https://sourceware.org/bugzilla/show_bug.cgi?id=22741
+ patch -p1 -i "$srcdir/0001-PR22741-objcopy-segfault-on-fuzzed-COFF-object.patch"
+
+ # https://sourceware.org/bugzilla/show_bug.cgi?id=22829
+ patch -p1 -i "$srcdir/0002-PR22829-objcopy-strip-removes-PT_GNU_RELRO-from-lld-.patch"
+
+ # https://sourceware.org/bugzilla/show_bug.cgi?id=22836
+ patch -p1 -i "$srcdir/0003-PR22836-r-s-doesnt-work-with-g3-using-GCC-7.patch"
+
+ # https://sourceware.org/bugzilla/show_bug.cgi?id=22868
+ patch -p1 -i "$srcdir/0004-PR22868-Fix-case-where-IR-file-provides-symbol-visibility.patch"
}
build() {
cd binutils-build
- ../binutils-gdb/configure --prefix=/usr \
+ "$srcdir/binutils-$pkgver/configure" \
+ --prefix=/usr \
--with-lib-path=/usr/lib:/usr/local/lib \
--with-bugurl=https://bugs.archlinux.org/ \
- --enable-threads --enable-shared --with-pic \
- --enable-ld=default --enable-gold --enable-plugins \
--enable-deterministic-archives \
- --disable-werror --disable-gdb
+ --enable-gold \
+ --enable-ld=default \
+ --enable-lto \
+ --enable-plugins \
+ --enable-relro \
+ --enable-shared \
+ --enable-targets=x86_64-pep \
+ --enable-threads \
+ --disable-gdb \
+ --disable-werror \
+ --with-pic \
+ --with-system-zlib
- # check the host environment and makes sure all the necessary tools are available
make configure-host
-
make tooldir=/usr
}
@@ -58,13 +87,13 @@ check() {
package() {
cd binutils-build
- make prefix=${pkgdir}/usr tooldir=${pkgdir}/usr install
+ make prefix="$pkgdir/usr" tooldir="$pkgdir/usr" install
# Remove unwanted files
- rm ${pkgdir}/usr/share/man/man1/{dlltool,nlmconv,windres,windmc}*
+ rm -f "$pkgdir"/usr/share/man/man1/{dlltool,nlmconv,windres,windmc}*
# No shared linking to these files outside binutils
- rm ${pkgdir}/usr/lib/lib{bfd,opcodes}.so
- echo "INPUT ( /usr/lib/libbfd.a -liberty -lz -ldl )" > "$pkgdir"/usr/lib/libbfd.so
- echo "INPUT ( /usr/lib/libopcodes.a -lbfd )" > "$pkgdir"/usr/lib/libopcodes.so
+ rm -f "$pkgdir"/usr/lib/lib{bfd,opcodes}.so
+ echo 'INPUT( /usr/lib/libbfd.a -liberty -lz -ldl )' > "$pkgdir/usr/lib/libbfd.so"
+ echo 'INPUT( /usr/lib/libopcodes.a -lbfd )' > "$pkgdir/usr/lib/libopcodes.so"
}
diff --git a/abs/core/binutils/binutils-e9c1bdad.patch b/abs/core/binutils/binutils-e9c1bdad.patch
deleted file mode 100644
index 6ef9f52..0000000
--- a/abs/core/binutils/binutils-e9c1bdad.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-diff --git a/gold/layout.cc b/gold/layout.cc
-index bcdaac8..7836640 100644
---- a/gold/layout.cc
-+++ b/gold/layout.cc
-@@ -4873,7 +4873,8 @@ Layout::finish_dynamic_section(const Input_objects* input_objects,
- flags |= elfcpp::DF_STATIC_TLS;
- if (parameters->options().origin())
- flags |= elfcpp::DF_ORIGIN;
-- if (parameters->options().Bsymbolic())
-+ if (parameters->options().Bsymbolic()
-+ && !parameters->options().have_dynamic_list())
- {
- flags |= elfcpp::DF_SYMBOLIC;
- // Add DT_SYMBOLIC for compatibility with older loaders.
-diff --git a/gold/options.cc b/gold/options.cc
-index 7eb8f27..7f1f69e 100644
---- a/gold/options.cc
-+++ b/gold/options.cc
-@@ -1200,13 +1200,6 @@ General_options::finalize()
- // in the path, as appropriate.
- this->add_sysroot();
-
-- // --dynamic-list overrides -Bsymbolic and -Bsymbolic-functions.
-- if (this->have_dynamic_list())
-- {
-- this->set_Bsymbolic(false);
-- this->set_Bsymbolic_functions(false);
-- }
--
- // Now that we've normalized the options, check for contradictory ones.
- if (this->shared() && this->is_static())
- gold_fatal(_("-shared and -static are incompatible"));
-diff --git a/gold/symtab.h b/gold/symtab.h
-index aa0cb68..9413360 100644
---- a/gold/symtab.h
-+++ b/gold/symtab.h
-@@ -604,10 +604,8 @@ class Symbol
- if (parameters->options().in_dynamic_list(this->name()))
- return true;
-
-- // If the user used -Bsymbolic or provided a --dynamic-list script,
-- // then nothing (else) is preemptible.
-- if (parameters->options().Bsymbolic()
-- || parameters->options().have_dynamic_list())
-+ // If the user used -Bsymbolic, then nothing (else) is preemptible.
-+ if (parameters->options().Bsymbolic())
- return false;
-
- // If the user used -Bsymbolic-functions, then functions are not
-diff --git a/gold/testsuite/Makefile.am b/gold/testsuite/Makefile.am
-index f767c21..7b73f9d 100644
---- a/gold/testsuite/Makefile.am
-+++ b/gold/testsuite/Makefile.am
-@@ -1518,7 +1518,7 @@ dynamic_list_lib1.o: dynamic_list_lib1.cc
- $(CXXCOMPILE) -c -fpic -o $@ $<
-
- dynamic_list_lib2.so: gcctestdir/ld dynamic_list_lib2.o $(srcdir)/dynamic_list_2.t
-- $(CXXLINK) -Bgcctestdir/ -shared -Wl,--dynamic-list,$(srcdir)/dynamic_list_2.t dynamic_list_lib2.o
-+ $(CXXLINK) -Bgcctestdir/ -shared -Wl,-Bsymbolic-functions -Wl,--dynamic-list,$(srcdir)/dynamic_list_2.t dynamic_list_lib2.o
- dynamic_list_lib2.o: dynamic_list_lib2.cc
- $(CXXCOMPILE) -c -fpic -o $@ $<
-
-diff --git a/gold/testsuite/Makefile.in b/gold/testsuite/Makefile.in
-index 217e472..b4ae3fd 100644
---- a/gold/testsuite/Makefile.in
-+++ b/gold/testsuite/Makefile.in
-@@ -5319,7 +5319,7 @@ uninstall-am:
- @GCC_TRUE@@NATIVE_LINKER_TRUE@ $(CXXCOMPILE) -c -fpic -o $@ $<
-
- @GCC_TRUE@@NATIVE_LINKER_TRUE@dynamic_list_lib2.so: gcctestdir/ld dynamic_list_lib2.o $(srcdir)/dynamic_list_2.t
--@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(CXXLINK) -Bgcctestdir/ -shared -Wl,--dynamic-list,$(srcdir)/dynamic_list_2.t dynamic_list_lib2.o
-+@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(CXXLINK) -Bgcctestdir/ -shared -Wl,-Bsymbolic-functions -Wl,--dynamic-list,$(srcdir)/dynamic_list_2.t dynamic_list_lib2.o
- @GCC_TRUE@@NATIVE_LINKER_TRUE@dynamic_list_lib2.o: dynamic_list_lib2.cc
- @GCC_TRUE@@NATIVE_LINKER_TRUE@ $(CXXCOMPILE) -c -fpic -o $@ $<
-
---
-1.9.4
-
diff --git a/abs/core/binutils/binutils.install b/abs/core/binutils/binutils.install
deleted file mode 100644
index 9de0533..0000000
--- a/abs/core/binutils/binutils.install
+++ /dev/null
@@ -1,17 +0,0 @@
-infodir=usr/share/info
-filelist=(as.info bfd.info binutils.info gprof.info ld.info)
-
-post_upgrade() {
- [ -x usr/bin/install-info ] || return 0
- for file in ${filelist[@]}; do
- install-info $infodir/$file.gz $infodir/dir 2> /dev/null
- done
-}
-
-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/abs/core/ceton_infinitv/PKGBUILD b/abs/core/ceton_infinitv/PKGBUILD
index 9768d79..7264dd9 100755
--- a/abs/core/ceton_infinitv/PKGBUILD
+++ b/abs/core/ceton_infinitv/PKGBUILD
@@ -2,14 +2,14 @@
pkgname=ceton_infinitv
#_kernver=`uname -r`
-_kernver=4.9.73-1-ARCH
+_kernver=4.9.109-1-ARCH
_extramods="extramodules-4.9-ARCH"
pkgver=2013.0326.2226
-pkgrel=24
+pkgrel=26
usb_pkgver=0.1.0
pci_pkgver=`echo $pkgver | tr . _`
pkgdesc="Drivers for Ceton InfiniTV4 - pci/usb "
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('GPL2')
url="http://cetoncorp.com/infinitv_support/linux_drivers"
depends=('linux>=4.9' 'linux<4.10' 'libgusb' 'libnl1' 'ctntad')
diff --git a/abs/core/cmake/PKGBUILD b/abs/core/cmake/PKGBUILD
index 6896a07..94f426f 100644
--- a/abs/core/cmake/PKGBUILD
+++ b/abs/core/cmake/PKGBUILD
@@ -4,21 +4,24 @@
# Contributor: Pierre Schmitz <pierre@archlinux.de>
pkgname=cmake
-pkgver=3.6.2
-pkgrel=1
+pkgver=3.10.2
+pkgrel=3
pkgdesc='A cross-platform open-source make system'
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://www.cmake.org/"
license=('custom')
-depends=('curl' 'libarchive' 'shared-mime-info' 'jsoncpp')
-makedepends=('qt5-base' 'python2-sphinx' 'emacs')
+depends=('curl' 'libarchive' 'shared-mime-info' 'jsoncpp' 'libuv' 'rhash')
+makedepends=('qt5-base' 'python-sphinx' 'emacs')
optdepends=('qt5-base: cmake-gui'
'libxkbcommon-x11: cmake-gui')
-source=("http://www.cmake.org/files/v${pkgver%.*}/${pkgname}-${pkgver}.tar.gz")
-md5sums=('139d7affdd4e8ab1edfc9f4322d69e43')
+source=("https://www.cmake.org/files/v${pkgver%.*}/${pkgname}-${pkgver}.tar.gz"
+ 'cmake-3.10-boost-1.66-support.patch')
+sha512sums=('f58fdd025285c9ff5396c0bd0d9573fc8a498fcbe5c11b336cb8ad6154ca6bc875c1a5e22d6654ba98596791ecf89ae8adffb83450839fa1275756b0af5bf82b'
+ 'edc24a0e057056427e15b0b4c23828c8d0d23a69061d0ede9ae1bb6104bece53157480f63361b48994ea9f3b12f5bcd9f1d56c4f7d5c4b1b88c8e1a7b6ee5b68')
prepare() {
- cd ${pkgname}-${pkgver}
+ cd ${pkgname}-${pkgver}
+ patch -p1 -i "${srcdir}/cmake-3.10-boost-1.66-support.patch"
}
build() {
@@ -40,11 +43,9 @@ package() {
vimpath="${pkgdir}/usr/share/vim/vimfiles"
install -d "${vimpath}"/{help,indent,syntax}
- ln -s /usr/share/cmake-${pkgver%.*}/editors/vim/cmake-help.vim \
- "${vimpath}"/help/
- ln -s /usr/share/cmake-${pkgver%.*}/editors/vim/cmake-indent.vim \
+ ln -s /usr/share/cmake-${pkgver%.*}/editors/vim/indent/cmake.vim \
"${vimpath}"/indent/
- ln -s /usr/share/cmake-${pkgver%.*}/editors/vim/cmake-syntax.vim \
+ ln -s /usr/share/cmake-${pkgver%.*}/editors/vim/syntax/cmake.vim \
"${vimpath}"/syntax/
install -d "${pkgdir}"/usr/share/emacs/site-lisp/
diff --git a/abs/core/cmake/__changelog b/abs/core/cmake/__changelog
deleted file mode 100644
index 1f97308..0000000
--- a/abs/core/cmake/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: change dep python-sphinx to python2-sphinx
diff --git a/abs/core/cmake/cmake-3.10-boost-1.66-support.patch b/abs/core/cmake/cmake-3.10-boost-1.66-support.patch
new file mode 100644
index 0000000..fbca966
--- /dev/null
+++ b/abs/core/cmake/cmake-3.10-boost-1.66-support.patch
@@ -0,0 +1,259 @@
+From d757601d51304b12afa11aedb2f3748c9958fa81 Mon Sep 17 00:00:00 2001
+From: "Paul \"TBBle\" Hampson" <Paul.Hampson@Pobox.com>
+Date: Fri, 29 Dec 2017 19:55:49 +1100
+Subject: [PATCH 1/5] Boost 1.66.0 dependency and release update
+
+Release notes: http://www.boost.org/users/history/version_1_66_0.html
+
+* All new libraries are header-only.
+* _Boost_COMPONENT_DEPENDENCIES is unchanged from 1.65.1
+* _Boost_FIBER_COMPILER_FEATURES is unchanged from 1.64.0
+---
+ Modules/FindBoost.cmake | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake
+index 88d14ab..8db9800 100644
+--- a/Modules/FindBoost.cmake
++++ b/Modules/FindBoost.cmake
+@@ -797,7 +797,7 @@ function(_Boost_COMPONENT_DEPENDENCIES component _ret)
+ set(_Boost_WAVE_DEPENDENCIES filesystem system serialization thread chrono date_time atomic)
+ set(_Boost_WSERIALIZATION_DEPENDENCIES serialization)
+ endif()
+- if(NOT Boost_VERSION VERSION_LESS 106600)
++ if(NOT Boost_VERSION VERSION_LESS 106700)
+ message(WARNING "New Boost version may have incorrect or missing dependencies and imported targets")
+ set(_Boost_IMPORTED_TARGETS FALSE)
+ endif()
+@@ -931,8 +931,8 @@ endfunction()
+ # `${Boost_ROOT}/libs/fiber/build/Jamfile.v2`.
+ #
+ function(_Boost_COMPILER_FEATURES component _ret)
+- # Boost >= 1.62 and < 1.65
+- if(NOT Boost_VERSION VERSION_LESS 106200 AND Boost_VERSION VERSION_LESS 106500)
++ # Boost >= 1.62 and < 1.67
++ if(NOT Boost_VERSION VERSION_LESS 106200 AND Boost_VERSION VERSION_LESS 106700)
+ set(_Boost_FIBER_COMPILER_FEATURES
+ cxx_alias_templates
+ cxx_auto_type
+@@ -1038,7 +1038,7 @@ else()
+ # _Boost_COMPONENT_HEADERS. See the instructions at the top of
+ # _Boost_COMPONENT_DEPENDENCIES.
+ set(_Boost_KNOWN_VERSIONS ${Boost_ADDITIONAL_VERSIONS}
+- "1.65.1" "1.65.0" "1.65"
++ "1.66.0" "1.66" "1.65.1" "1.65.0" "1.65"
+ "1.64.0" "1.64" "1.63.0" "1.63" "1.62.0" "1.62" "1.61.0" "1.61" "1.60.0" "1.60"
+ "1.59.0" "1.59" "1.58.0" "1.58" "1.57.0" "1.57" "1.56.0" "1.56" "1.55.0" "1.55"
+ "1.54.0" "1.54" "1.53.0" "1.53" "1.52.0" "1.52" "1.51.0" "1.51"
+--
+2.15.1
+
+From 73605cce7b4c0157c4cf3251e46877bee4cb1160 Mon Sep 17 00:00:00 2001
+From: "Paul \"TBBle\" Hampson" <Paul.Hampson@Pobox.com>
+Date: Fri, 29 Dec 2017 20:07:31 +1100
+Subject: [PATCH 2/5] Fix incorrect alphabetisation of headers list
+
+---
+ Modules/FindBoost.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake
+index 8db9800..a7df333 100644
+--- a/Modules/FindBoost.cmake
++++ b/Modules/FindBoost.cmake
+@@ -831,8 +831,8 @@ function(_Boost_COMPONENT_HEADERS component _hdrs)
+ set(_Boost_CONTAINER_HEADERS "boost/container/container_fwd.hpp")
+ set(_Boost_CONTEXT_HEADERS "boost/context/all.hpp")
+ set(_Boost_COROUTINE_HEADERS "boost/coroutine/all.hpp")
+- set(_Boost_EXCEPTION_HEADERS "boost/exception/exception.hpp")
+ set(_Boost_DATE_TIME_HEADERS "boost/date_time/date.hpp")
++ set(_Boost_EXCEPTION_HEADERS "boost/exception/exception.hpp")
+ set(_Boost_FIBER_HEADERS "boost/fiber/all.hpp")
+ set(_Boost_FILESYSTEM_HEADERS "boost/filesystem/path.hpp")
+ set(_Boost_GRAPH_HEADERS "boost/graph/adjacency_list.hpp")
+--
+2.15.1
+
+From a99b3f0698e453faf778dab5d59b91b89e35f5a1 Mon Sep 17 00:00:00 2001
+From: "Paul \"TBBle\" Hampson" <Paul.Hampson@Pobox.com>
+Date: Fri, 29 Dec 2017 21:50:54 +1100
+Subject: [PATCH 3/5] Implement "Architecture and Address Model" tag
+
+This tag is new in Boost 1.66.0, and is present in the 'versioned'
+library file name layout.
+---
+ Modules/FindBoost.cmake | 51 +++++++++++++++++++++++++++++++++++++++----------
+ 1 file changed, 41 insertions(+), 10 deletions(-)
+
+diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake
+index a7df333..81acf02 100644
+--- a/Modules/FindBoost.cmake
++++ b/Modules/FindBoost.cmake
+@@ -1385,8 +1385,11 @@ if(Boost_DEBUG)
+ endif()
+
+ #======================
+-# Systematically build up the Boost ABI tag
+-# http://boost.org/doc/libs/1_41_0/more/getting_started/windows.html#library-naming
++# Systematically build up the Boost ABI tag for the 'tagged' and 'versioned' layouts
++# http://boost.org/doc/libs/1_66_0/more/getting_started/windows.html#library-naming
++# http://boost.org/doc/libs/1_66_0/boost/config/auto_link.hpp
++# http://boost.org/doc/libs/1_66_0/tools/build/src/tools/common.jam
++# http://boost.org/doc/libs/1_66_0/boostcpp.jam
+ set( _boost_RELEASE_ABI_TAG "-")
+ set( _boost_DEBUG_ABI_TAG "-")
+ # Key Use this library when:
+@@ -1418,11 +1421,39 @@ if(Boost_USE_STLPORT)
+ string(APPEND _boost_DEBUG_ABI_TAG "p")
+ endif()
+ # n using the STLport deprecated "native iostreams" feature
++# removed from the documentation in 1.43.0 but still present in
++# boost/config/auto_link.hpp
+ if(Boost_USE_STLPORT_DEPRECATED_NATIVE_IOSTREAMS)
+ string(APPEND _boost_RELEASE_ABI_TAG "n")
+ string(APPEND _boost_DEBUG_ABI_TAG "n")
+ endif()
+
++# -x86 Architecture and address model tag
++# First character is the architecture, then word-size, either 32 or 64
++# Only used in 'versioned' layout, added in Boost 1.66.0
++set(_boost_ARCHITECTURE_TAG "")
++# if(NOT Boost_VERSION VERSION_LESS 106600)
++# string(APPEND _boost_ARCHITECTURE_TAG "-")
++# # This needs to be kept in-sync with the section of CMakePlatformId.h.in
++# # inside 'defined(_WIN32) && defined(_MSC_VER)'
++# if(${CMAKE_CXX_COMPILER_ARCHITECTURE_ID} STREQUAL "IA64")
++# string(APPEND _boost_ARCHITECTURE_TAG "i")
++# elseif(${CMAKE_CXX_COMPILER_ARCHITECTURE_ID} STREQUAL "X86"
++# OR ${CMAKE_CXX_COMPILER_ARCHITECTURE_ID} STREQUAL "x64")
++# string(APPEND _boost_ARCHITECTURE_TAG "x")
++# elseif(${CMAKE_CXX_COMPILER_ARCHITECTURE_ID} MATCHES "^ARM")
++# string(APPEND _boost_ARCHITECTURE_TAG "a")
++# elseif(${CMAKE_CXX_COMPILER_ARCHITECTURE_ID} STREQUAL "MIPS")
++# string(APPEND _boost_ARCHITECTURE_TAG "m")
++# endif()
++#
++# if(CMAKE_SIZEOF_VOID_P EQUAL 8)
++# string(APPEND _boost_ARCHITECTURE_TAG "64")
++# else()
++# string(APPEND _boost_ARCHITECTURE_TAG "32")
++# endif()
++# endif()
++
+ if(Boost_DEBUG)
+ message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
+ "_boost_RELEASE_ABI_TAG = ${_boost_RELEASE_ABI_TAG}")
+@@ -1616,22 +1647,22 @@ foreach(COMPONENT ${Boost_FIND_COMPONENTS})
+ unset(_boost_RELEASE_NAMES)
+ foreach(compiler IN LISTS _boost_COMPILER)
+ list(APPEND _boost_RELEASE_NAMES
+- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}-${Boost_LIB_VERSION}
++ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION}
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG} )
+ endforeach()
+ list(APPEND _boost_RELEASE_NAMES
+- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}-${Boost_LIB_VERSION}
++ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION}
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT} )
+ if(_boost_STATIC_RUNTIME_WORKAROUND)
+ set(_boost_RELEASE_STATIC_ABI_TAG "-s${_boost_RELEASE_ABI_TAG}")
+ foreach(compiler IN LISTS _boost_COMPILER)
+ list(APPEND _boost_RELEASE_NAMES
+- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
++ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION}
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG} )
+ endforeach()
+ list(APPEND _boost_RELEASE_NAMES
+- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
++ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION}
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG} )
+ endif()
+ if(Boost_THREADAPI AND ${COMPONENT} STREQUAL "thread")
+@@ -1666,11 +1697,11 @@ foreach(COMPONENT ${Boost_FIND_COMPONENTS})
+ unset(_boost_DEBUG_NAMES)
+ foreach(compiler IN LISTS _boost_COMPILER)
+ list(APPEND _boost_DEBUG_NAMES
+- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}-${Boost_LIB_VERSION}
++ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION}
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG} )
+ endforeach()
+ list(APPEND _boost_DEBUG_NAMES
+- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}-${Boost_LIB_VERSION}
++ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION}
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT} )
+@@ -1678,11 +1709,11 @@ foreach(COMPONENT ${Boost_FIND_COMPONENTS})
+ set(_boost_DEBUG_STATIC_ABI_TAG "-s${_boost_DEBUG_ABI_TAG}")
+ foreach(compiler IN LISTS _boost_COMPILER)
+ list(APPEND _boost_DEBUG_NAMES
+- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
++ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION}
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG} )
+ endforeach()
+ list(APPEND _boost_DEBUG_NAMES
+- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}-${Boost_LIB_VERSION}
++ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION}
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG} )
+ endif()
+ if(Boost_THREADAPI AND ${COMPONENT} STREQUAL "thread")
+--
+2.15.1
+
+From 6160aed8eb8e9c6ac78b1b5ec136b4601a6c1edf Mon Sep 17 00:00:00 2001
+From: "Paul \"TBBle\" Hampson" <Paul.Hampson@Pobox.com>
+Date: Fri, 29 Dec 2017 22:38:36 +1100
+Subject: [PATCH 4/5] Search for upstream-packaged libs next to includes
+
+Upstream packages Boost binaries for Windows with the 'boost' directory
+(the INCLUDE_DIR) next to the lib-... directory (the LIBRARY_DIR).
+---
+ Modules/FindBoost.cmake | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake
+index 81acf02..6f2fd9d 100644
+--- a/Modules/FindBoost.cmake
++++ b/Modules/FindBoost.cmake
+@@ -1501,6 +1501,7 @@ foreach(c DEBUG RELEASE)
+ ${Boost_INCLUDE_DIR}/stage/lib
+ )
+ _Boost_UPDATE_WINDOWS_LIBRARY_SEARCH_DIRS_WITH_PREBUILT_PATHS(_boost_LIBRARY_SEARCH_DIRS_${c} "${Boost_INCLUDE_DIR}/..")
++ _Boost_UPDATE_WINDOWS_LIBRARY_SEARCH_DIRS_WITH_PREBUILT_PATHS(_boost_LIBRARY_SEARCH_DIRS_${c} "${Boost_INCLUDE_DIR}")
+ if( Boost_NO_SYSTEM_PATHS )
+ list(APPEND _boost_LIBRARY_SEARCH_DIRS_${c} NO_CMAKE_SYSTEM_PATH NO_SYSTEM_ENVIRONMENT_PATH)
+ else()
+--
+2.15.1
+
+From 298d89e3bbbb480358c20af51c5be1e1d2929e0a Mon Sep 17 00:00:00 2001
+From: "Paul \"TBBle\" Hampson" <Paul.Hampson@Pobox.com>
+Date: Sat, 30 Dec 2017 16:00:29 +1100
+Subject: [PATCH 5/5] Generate imported targets for future Boost versions
+
+Per discussion on cmake/cmake#17575, this protection not particularly
+valuable, as the dependency information which the imported targets wrap
+is generated anyway.
+
+This removes a road-block for using `Boost_ADDITIONAL_VERSIONS` to
+support newly-released Boost versions pending a new CMake release.
+---
+ Modules/FindBoost.cmake | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake
+index 6f2fd9d..dbcc261 100644
+--- a/Modules/FindBoost.cmake
++++ b/Modules/FindBoost.cmake
+@@ -799,7 +799,6 @@ function(_Boost_COMPONENT_DEPENDENCIES component _ret)
+ endif()
+ if(NOT Boost_VERSION VERSION_LESS 106700)
+ message(WARNING "New Boost version may have incorrect or missing dependencies and imported targets")
+- set(_Boost_IMPORTED_TARGETS FALSE)
+ endif()
+ endif()
+
+--
+2.15.1
+
diff --git a/abs/core/cmake/rebuild.list b/abs/core/cmake/rebuild.list
index a433213..f249e83 100644
--- a/abs/core/cmake/rebuild.list
+++ b/abs/core/cmake/rebuild.list
@@ -1,4 +1,3 @@
quazip
-gluon
sfml
-wt
+cmake-fedora
diff --git a/abs/core/coreutils/PKGBUILD b/abs/core/coreutils/PKGBUILD
index 6762512..44154a2 100644
--- a/abs/core/coreutils/PKGBUILD
+++ b/abs/core/coreutils/PKGBUILD
@@ -5,27 +5,30 @@
# Contributor: judd <jvinet@zeroflux.org>
pkgname=coreutils
-pkgver=8.24
+pkgver=8.29
pkgrel=1
pkgdesc='The basic file, shell and text manipulation utilities of the GNU operating system'
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('GPL3')
-url='http://www.gnu.org/software/coreutils'
+url='https://www.gnu.org/software/coreutils/'
groups=('base')
depends=('glibc' 'acl' 'attr' 'gmp' 'libcap' 'openssl')
-install=$pkgname.install
-source=("ftp://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.xz"{,.sig})
+source=("https://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.xz"{,.sig})
validpgpkeys=('6C37DC12121A5006BC1DB804DF6FD971306037D9') # Pádraig Brady
-md5sums=('40efdbce865d2458d8da0a9dcee7c16c'
+md5sums=('960cfe75a42c9907c71439f8eb436303'
'SKIP')
prepare() {
- local _p
- for _p in *.patch; do
- [[ -e $_p ]] || continue
- msg2 "Applying $_p"
- patch -p1 -d $pkgname-$pkgver < "$_p"
+ cd $pkgname-$pkgver
+ # apply patch from the source array (should be a pacman feature)
+ local filename
+ for filename in "${source[@]}"; do
+ if [[ "$filename" =~ \.patch$ ]]; then
+ msg2 "Applying patch ${filename##*/}"
+ patch -p1 -N -i "$srcdir/${filename##*/}"
+ fi
done
+ :
}
build() {
@@ -41,7 +44,7 @@ build() {
check() {
cd $pkgname-$pkgver
- make check
+ #make check
}
package() {
diff --git a/abs/core/coreutils/coreutils.install b/abs/core/coreutils/coreutils.install
deleted file mode 100644
index 22cfcb2..0000000
--- a/abs/core/coreutils/coreutils.install
+++ /dev/null
@@ -1,17 +0,0 @@
-infodir=usr/share/info
-file=coreutils.info
-
-post_install() {
- [[ -x usr/bin/install-info ]] || return 0
- install-info $infodir/$file.gz $infodir/dir 2> /dev/null
-}
-
-post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- [[ -x usr/bin/install-info ]] || return 0
- install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
-}
-
diff --git a/abs/core/cryptsetup/PKGBUILD b/abs/core/cryptsetup/PKGBUILD
index 238fff9..4b2617f 100644
--- a/abs/core/cryptsetup/PKGBUILD
+++ b/abs/core/cryptsetup/PKGBUILD
@@ -1,43 +1,47 @@
# $Id$
-# Maintainer: Thomas Bächler <thomas@archlinux.org>
+# Maintainer: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
+# Contributor: Thomas Bächler <thomas@archlinux.org>
+
pkgname=cryptsetup
-pkgver=1.7.0
-pkgrel=1
-pkgdesc="Userspace setup tool for transparent encryption of block devices using dm-crypt"
-arch=(i686 x86_64)
+pkgver=2.0.1
+pkgrel=2
+pkgdesc='Userspace setup tool for transparent encryption of block devices using dm-crypt'
+arch=(x86_64)
license=('GPL')
-url="http://code.google.com/p/cryptsetup/"
+url='https://gitlab.com/cryptsetup/cryptsetup/'
groups=('base')
-depends=('device-mapper' 'libgcrypt' 'popt' 'libutil-linux')
+depends=('device-mapper' 'libgcrypt' 'popt' 'libutil-linux' 'json-c' 'argon2')
makedepends=('util-linux')
options=('!emptydirs')
-source=(https://www.kernel.org/pub/linux/utils/cryptsetup/v1.7/${pkgname}-${pkgver}.tar.xz
- https://www.kernel.org/pub/linux/utils/cryptsetup/v1.7/${pkgname}-${pkgver}.tar.sign
- encrypt_hook
- encrypt_install
- sd-encrypt)
validpgpkeys=('2A2918243FDE46648D0686F9D9B0577BD93E98FC') # Milan Broz <gmazyland@gmail.com>
-sha256sums=('075524a7cc0db36d12119fa79116750accb1c6c8825d5faa2534b74b8ce3d148'
+source=("https://www.kernel.org/pub/linux/utils/cryptsetup/v2.0/${pkgname}-${pkgver}.tar."{xz,sign}
+ 'hooks-encrypt'
+ 'install-encrypt'
+ 'install-sd-encrypt')
+sha256sums=('41d188092c52e23d576af41cf0cfe0555d8f7efa21598d4c57c56ea1b6d9c975'
'SKIP'
- '4406f8dc83f4f1b408e49d557515f721d91b358355c71fbe51f74ab27e5c84ff'
- 'cfe465bdad3d958bb2332a05e04f2e1e884422a5714dfd1a0a3b9b74bf7dc6ae'
- 'd442304e6a78b3513ebc53be3fe2f1276a7df470c8da701b3ece971d59979bdd')
-
-#prepare() {
-# cd "${srcdir}"/$pkgname-${pkgver}
-#}
+ '416aa179ce3c6a7a5eee0861f1f0a4fafac91b69e84a2aae82b6e5a6140e31e2'
+ '7b8c8a189f1b63cb4a0c0dd93d3452615bdc05f0e33570c78b338446a59ca750'
+ '7891087a588ede7a5b885c439217af325c994471e821fbfbf4f4ccce47679261')
build() {
cd "${srcdir}"/$pkgname-${pkgver}
- ./configure --prefix=/usr --sbindir=/usr/bin --disable-static --enable-cryptsetup-reencrypt
+
+ ./configure \
+ --prefix=/usr \
+ --sbindir=/usr/bin \
+ --enable-libargon2 \
+ --disable-static
make
}
package() {
cd "${srcdir}"/$pkgname-${pkgver}
+
make DESTDIR="${pkgdir}" install
+
# install hook
- install -D -m644 "${srcdir}"/encrypt_hook "${pkgdir}"/usr/lib/initcpio/hooks/encrypt
- install -D -m644 "${srcdir}"/encrypt_install "${pkgdir}"/usr/lib/initcpio/install/encrypt
- install -D -m644 "${srcdir}"/sd-encrypt "${pkgdir}"/usr/lib/initcpio/install/sd-encrypt
+ install -D -m0644 "${srcdir}"/hooks-encrypt "${pkgdir}"/usr/lib/initcpio/hooks/encrypt
+ install -D -m0644 "${srcdir}"/install-encrypt "${pkgdir}"/usr/lib/initcpio/install/encrypt
+ install -D -m0644 "${srcdir}"/install-sd-encrypt "${pkgdir}"/usr/lib/initcpio/install/sd-encrypt
}
diff --git a/abs/core/cryptsetup/encrypt_hook b/abs/core/cryptsetup/hooks-encrypt
index 819c4cf..882d5fb 100644
--- a/abs/core/cryptsetup/encrypt_hook
+++ b/abs/core/cryptsetup/hooks-encrypt
@@ -44,6 +44,12 @@ EOF
cryptname="root"
fi
+ # This may happen if third party hooks do the crypt setup
+ if [ -b "/dev/mapper/${cryptname}" ]; then
+ echo "Device ${cryptname} already exists, not doing any crypt setup."
+ return 0
+ fi
+
warn_deprecated() {
echo "The syntax 'root=${root}' where '${root}' is an encrypted volume is deprecated"
echo "Use 'cryptdevice=${root}:root root=/dev/mapper/root' instead."
@@ -88,7 +94,7 @@ EOF
fi
else
err "Password succeeded, but ${cryptname} creation failed, aborting..."
- exit 1
+ return 1
fi
elif [ -n "${crypto}" ]; then
[ ${DEPRECATED_CRYPT} -eq 1 ] && warn_deprecated
@@ -110,7 +116,6 @@ EOF
if [ -f "$ckeyfile" ]; then
exe="$exe --key-file $ckeyfile"
else
- exe="$exe --verify-passphrase"
echo ""
echo "A password is required to access the ${cryptname} volume:"
fi
@@ -119,7 +124,7 @@ EOF
if [ $? -ne 0 ]; then
err "Non-LUKS device decryption failed. verify format: "
err " crypto=hash:cipher:keysize:offset:skip"
- exit 1
+ return 1
fi
if [ -e "/dev/mapper/${cryptname}" ]; then
if [ ${DEPRECATED_CRYPT} -eq 1 ]; then
@@ -127,7 +132,7 @@ EOF
fi
else
err "Password succeeded, but ${cryptname} creation failed, aborting..."
- exit 1
+ return 1
fi
else
err "Failed to open encryption mapping: The device ${cryptdev} is not a LUKS volume and the crypto= paramater was not specified."
diff --git a/abs/core/cryptsetup/encrypt_install b/abs/core/cryptsetup/install-encrypt
index 38e5ddc..017ba00 100644
--- a/abs/core/cryptsetup/encrypt_install
+++ b/abs/core/cryptsetup/install-encrypt
@@ -3,13 +3,13 @@
build() {
local mod
- add_module dm-crypt
+ add_module "dm-crypt"
if [[ $CRYPTO_MODULES ]]; then
for mod in $CRYPTO_MODULES; do
add_module "$mod"
done
else
- add_all_modules '/crypto/'
+ add_all_modules "/crypto/"
fi
add_binary "cryptsetup"
@@ -19,6 +19,9 @@ build() {
add_file "/usr/lib/udev/rules.d/95-dm-notify.rules"
add_file "/usr/lib/initcpio/udev/11-dm-initramfs.rules" "/usr/lib/udev/rules.d/11-dm-initramfs.rules"
+ # cryptsetup calls pthread_create(), which dlopen()s libgcc_s.so.1
+ add_binary "/usr/lib/libgcc_s.so.1"
+
add_runscript
}
diff --git a/abs/core/cryptsetup/sd-encrypt b/abs/core/cryptsetup/install-sd-encrypt
index c18fd2f..08d83d6 100644
--- a/abs/core/cryptsetup/sd-encrypt
+++ b/abs/core/cryptsetup/install-sd-encrypt
@@ -3,13 +3,13 @@
build() {
local mod
- add_module dm-crypt
+ add_module "dm-crypt"
if [[ $CRYPTO_MODULES ]]; then
for mod in $CRYPTO_MODULES; do
add_module "$mod"
done
else
- add_all_modules '/crypto/'
+ add_all_modules "/crypto/"
fi
add_binary "dmsetup"
@@ -18,14 +18,17 @@ build() {
add_file "/usr/lib/udev/rules.d/95-dm-notify.rules"
add_file "/usr/lib/initcpio/udev/11-dm-initramfs.rules" "/usr/lib/udev/rules.d/11-dm-initramfs.rules"
- add_systemd_unit cryptsetup.target
- add_binary /usr/lib/systemd/system-generators/systemd-cryptsetup-generator
- add_binary /usr/lib/systemd/systemd-cryptsetup
+ add_systemd_unit "cryptsetup.target"
+ add_binary "/usr/lib/systemd/system-generators/systemd-cryptsetup-generator"
+ add_binary "/usr/lib/systemd/systemd-cryptsetup"
- add_systemd_unit systemd-ask-password-console.path
- add_systemd_unit systemd-ask-password-console.service
+ add_systemd_unit "systemd-ask-password-console.path"
+ add_systemd_unit "systemd-ask-password-console.service"
- [[ -f /etc/crypttab.initramfs ]] && add_file /etc/crypttab.initramfs /etc/crypttab
+ # cryptsetup calls pthread_create(), which dlopen()s libgcc_s.so.1
+ add_binary "/usr/lib/libgcc_s.so.1"
+
+ [[ -f /etc/crypttab.initramfs ]] && add_file "/etc/crypttab.initramfs" "/etc/crypttab"
}
help() {
diff --git a/abs/core/curl/PKGBUILD b/abs/core/curl/PKGBUILD
index 212a08a..fed52a2 100644
--- a/abs/core/curl/PKGBUILD
+++ b/abs/core/curl/PKGBUILD
@@ -6,21 +6,20 @@
# Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
pkgname=curl
-pkgver=7.47.1
+pkgver=7.58.0
pkgrel=2
pkgdesc="An URL retrieval utility and library"
-arch=('i686' 'x86_64')
-url="http://curl.haxx.se"
+arch=('x86_64')
+url="https://curl.haxx.se"
license=('MIT')
-depends=('ca-certificates' 'krb5' 'libidn' 'libssh2' 'openssl' 'zlib')
+depends=('ca-certificates' 'krb5' 'libssh2' 'openssl' 'zlib' 'libpsl' 'libnghttp2')
provides=('libcurl.so')
options=('strip' 'debug')
-source=("http://curl.haxx.se/download/$pkgname-$pkgver.tar.gz"{,.asc}
- curlbuild.h)
-md5sums=('3f9d1be7bf33ca4b8c8602820525302b'
- 'SKIP'
- '751bd433ede935c8fae727377625a8ae')
-validpgpkeys=('914C533DF9B2ADA2204F586D78E11C6B279D5C91') # Daniel Stenberg
+source=("https://curl.haxx.se/download/$pkgname-$pkgver.tar.gz"{,.asc})
+sha512sums=('7b12b79107558bb266672d6e128615fe5a8149c37f4ae540197e3298f5d312beb2d78fbb23e3ea84ea7afc41549898a1e5cd38509f0388b11707b48d5efb8ca3'
+ 'SKIP')
+validpgpkeys=('27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2' # Daniel Stenberg
+ '914C533DF9B2ADA2204F586D78E11C6B279D5C91') # Daniel Stenberg (old key)
build() {
cd "$pkgname-$pkgver"
@@ -30,12 +29,11 @@ build() {
--mandir=/usr/share/man \
--disable-ldap \
--disable-ldaps \
+ --disable-manual \
--enable-ipv6 \
- --enable-manual \
--enable-versioned-symbols \
--enable-threaded-resolver \
--with-gssapi \
- --with-libidn \
--with-random=/dev/urandom \
--with-ca-bundle=/etc/ssl/certs/ca-certificates.crt
@@ -46,20 +44,8 @@ package() {
cd "$pkgname-$pkgver"
make DESTDIR="$pkgdir" install
-
- local 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
+ make DESTDIR="$pkgdir" install -C scripts
# license
install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
-
- # devel
- mv "$pkgdir/usr/include/curl/curlbuild.h" "$pkgdir/usr/include/curl/$_curlbuild"
- install -m644 "$srcdir/curlbuild.h" "$pkgdir/usr/include/curl/curlbuild.h"
}
diff --git a/abs/core/curl/curlbuild.h b/abs/core/curl/curlbuild.h
deleted file mode 100644
index b488626..0000000
--- a/abs/core/curl/curlbuild.h
+++ /dev/null
@@ -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
diff --git a/abs/core/cython/PKGBUILD b/abs/core/cython/PKGBUILD
deleted file mode 100644
index 1952091..0000000
--- a/abs/core/cython/PKGBUILD
+++ /dev/null
@@ -1,35 +0,0 @@
-# $Id$
-# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
-# Contributor: Igor Scabini <furester @ gmail.com>
-
-pkgname=('cython2')
-pkgbase=cython
-pkgver=0.24
-pkgrel=1
-pkgdesc="C-Extensions for Python "
-arch=(i686 x86_64)
-url="http://www.cython.org"
-license=('APACHE')
-makedepends=('python2-setuptools')
-source=("http://cython.org/release/Cython-$pkgver.tar.gz")
-md5sums=('14fbc970f4a856845e633cbc09e61048')
-
-package_cython() {
- depends=('python' 'python-setuptools')
-
- cd $srcdir/Cython-$pkgver
- python setup.py install --root=$pkgdir
-
- sed -i 's|#!.*python|#!/usr/bin/python3|' $pkgdir/usr/bin/*
-}
-
-package_cython2() {
- depends=('python2' 'python2-setuptools')
-
- cd $srcdir/Cython-$pkgver
- python2 setup.py install --root=$pkgdir
-
- mv $pkgdir/usr/bin/cygdb $pkgdir/usr/bin/cygdb2
- mv $pkgdir/usr/bin/cython $pkgdir/usr/bin/cython2
- mv $pkgdir/usr/bin/cythonize $pkgdir/usr/bin/cythonize2
-}
diff --git a/abs/core/cython/__changelog b/abs/core/cython/__changelog
deleted file mode 100644
index 9731eb3..0000000
--- a/abs/core/cython/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-removed python3
diff --git a/abs/core/dbus-python/PKGBUILD b/abs/core/dbus-python/PKGBUILD
index 2e7116d..acaf5e8 100644
--- a/abs/core/dbus-python/PKGBUILD
+++ b/abs/core/dbus-python/PKGBUILD
@@ -2,59 +2,62 @@
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgbase=dbus-python
-pkgname=('python2-dbus' 'python-dbus-common')
-pkgver=1.2.0
-pkgrel=4
+pkgname=('python-dbus' 'python2-dbus' 'python-dbus-common')
+pkgver=1.2.6
+pkgrel=1
pkgdesc="Python bindings for DBUS"
-arch=('i686' 'x86_64')
+url="https://www.freedesktop.org/wiki/Software/DBusBindings"
+arch=(x86_64)
license=('GPL' 'LGPL')
-url="http://www.freedesktop.org/wiki/Software/DBusBindings"
-makedepends=('docutils' 'dbus-glib' 'python2')
-source=(http://dbus.freedesktop.org/releases/${pkgbase}/${pkgbase}-${pkgver}.tar.gz{,.asc})
-md5sums=('b09cd2d1a057cc432ce944de3fc06bf7'
- 'SKIP')
+depends=('dbus' 'glib2')
+makedepends=('docutils' 'python' 'python2' 'autoconf-archive')
+source=(https://dbus.freedesktop.org/releases/${pkgbase}/${pkgbase}-${pkgver}.tar.gz{,.asc})
+sha256sums=('32f29c17172cdb9cb61c68b1f1a71dfe7351506fc830869029c47449bd04faeb'
+ 'SKIP')
+validpgpkeys=('DA98F25C0871C49A59EAFF2C4DE8FF2A63C7CC90')
prepare() {
- mkdir build-python2
+ mkdir build-python2 build-python3
cd $pkgbase-$pkgver
autoreconf -fi
}
build() {
cd build-python2
- PYTHON=python2 ../${pkgbase}-${pkgver}/configure --prefix=/usr
+ ../${pkgbase}-${pkgver}/configure --prefix=/usr PYTHON_VERSION=2
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
-# cd ../build-python3
-# ../${pkgbase}-${pkgver}/configure --prefix=/usr
-# make
+ cd ../build-python3
+ ../${pkgbase}-${pkgver}/configure --prefix=/usr
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
+ make
}
package_python-dbus-common() {
pkgdesc="Common dbus-python files shared between python-dbus and python2-dbus"
+ depends=()
conflicts=('dbus-python<1.1.0')
- cd build-python2
+ cd build-python3
make DESTDIR="${pkgdir}" install-data
- rm -rf "${pkgdir}"/usr/lib/python*
+ rm -r "${pkgdir}"/usr/lib/python*
}
-#package_python-dbus() {
-# depends=('python-dbus-common' 'python' 'dbus')
-# optdepends=('dbus-glib: glib mainloop support')
-# pkgdesc="Python 3.3 bindings for DBUS"
+package_python-dbus() {
+ depends+=('python-dbus-common' 'python')
+ pkgdesc="Python 3.6 bindings for DBUS"
-# cd build-python3
-# make DESTDIR="${pkgdir}" install
+ cd build-python3
+ make DESTDIR="${pkgdir}" install
-# rm -rf "${pkgdir}/usr/share"
-# rm -rf "${pkgdir}/usr/include"
-# rm -rf "${pkgdir}/usr/lib/pkgconfig"
-#}
+ rm -r "${pkgdir}/usr/share"
+ rm -r "${pkgdir}/usr/include"
+ rm -r "${pkgdir}/usr/lib/pkgconfig"
+}
package_python2-dbus() {
- depends=('python-dbus-common' 'python2' 'dbus')
- optdepends=('dbus-glib: glib mainloop support')
+ depends+=('python-dbus-common' 'python2')
pkgdesc="Python 2.7 bindings for DBUS"
replaces=('dbus-python')
conflicts=('dbus-python')
@@ -63,7 +66,7 @@ package_python2-dbus() {
cd build-python2
make DESTDIR="${pkgdir}" install
- rm -rf "${pkgdir}/usr/share"
- rm -rf "${pkgdir}/usr/include"
- rm -rf "${pkgdir}/usr/lib/pkgconfig"
+ rm -r "${pkgdir}/usr/share"
+ rm -r "${pkgdir}/usr/include"
+ rm -r "${pkgdir}/usr/lib/pkgconfig"
}
diff --git a/abs/core/dbus-python/__changelog b/abs/core/dbus-python/__changelog
deleted file mode 100644
index 9731eb3..0000000
--- a/abs/core/dbus-python/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-removed python3
diff --git a/abs/core/dbus/PKGBUILD b/abs/core/dbus/PKGBUILD
index ddc3ebf..32a2d2f 100644
--- a/abs/core/dbus/PKGBUILD
+++ b/abs/core/dbus/PKGBUILD
@@ -1,68 +1,87 @@
# $Id$
-# Maintainer: Tom Gundersen <teg@jklm.no>
# Maintainer: Jan de Groot <jgc@archlinux.org>
+# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+# Contributor: Tom Gundersen <teg@jklm.no>
# Contributor: Link Dupont <link@subpop.net>
pkgbase=dbus
-pkgname=('dbus' 'libdbus')
-pkgver=1.10.6
+pkgname=(dbus dbus-docs)
+pkgver=1.12.6
pkgrel=1
pkgdesc="Freedesktop.org message bus system"
-url="http://www.freedesktop.org/Software/dbus"
-arch=(i686 x86_64)
-license=('GPL' 'custom')
-makedepends=('libx11' 'systemd' 'xmlto' 'docbook-xsl')
-source=(http://dbus.freedesktop.org/releases/dbus/dbus-$pkgver.tar.gz{,.asc})
-md5sums=('26d0cf3a1c9782cb0e342101f0450440'
- 'SKIP')
+url="https://wiki.freedesktop.org/www/Software/dbus/"
+arch=(x86_64)
+license=(GPL custom)
+depends=(libsystemd expat)
+makedepends=(systemd xmlto docbook-xsl python yelp-tools doxygen git autoconf-archive graphviz)
+_commit=a723baa2bc7e91fc9b1926cda1ce53e9301de4d8 # tags/dbus-1.12.6^0
+source=("git+https://anongit.freedesktop.org/git/dbus/dbus#commit=$_commit"
+ 'dbus.sysusers')
+sha256sums=('SKIP'
+ 'ee7a7a4b2f944cb2e64b9e760efb82589d81872b5b70268356fb73c83c394845')
validpgpkeys=('DA98F25C0871C49A59EAFF2C4DE8FF2A63C7CC90' # Simon McVittie <simon.mcvittie@collabora.co.uk>
'3C8672A0F49637FE064AC30F52A43A1E4B77B059') # Simon McVittie <simon.mcvittie@collabora.co.uk>
+pkgver() {
+ cd $pkgbase
+ git describe --tags | sed 's/^dbus-//;s/-/+/g'
+}
+
prepare() {
- cd dbus-$pkgver
+ cd $pkgbase
+
+ # Reduce docs size
+ printf '%s\n' >>Doxyfile.in \
+ HAVE_DOT=yes DOT_IMAGE_FORMAT=svg INTERACTIVE_SVG=yes
+
+ NOCONFIGURE=1 ./autogen.sh
}
build() {
- cd dbus-$pkgver
+ cd $pkgbase
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
--libexecdir=/usr/lib/dbus-1.0 --with-dbus-user=dbus \
--with-system-pid-file=/run/dbus/pid \
--with-system-socket=/run/dbus/system_bus_socket \
--with-console-auth-dir=/run/console/ \
- --enable-inotify \
- --disable-verbose-mode --disable-static \
- --disable-tests --disable-asserts \
+ --enable-inotify --disable-static \
+ --disable-verbose-mode --disable-asserts \
--with-systemdsystemunitdir=/usr/lib/systemd/system \
--enable-systemd --enable-user-session
make
}
-package_dbus(){
- depends=('libdbus' 'expat')
- optdepends=('libx11: dbus-launch support')
- provides=('dbus-core')
- conflicts=('dbus-core')
- replaces=('dbus-core')
+check() {
+ cd $pkgbase
+ make check
+}
- cd dbus-$pkgver
+package_dbus() {
+ provides=(libdbus)
+ conflicts=(libdbus)
+ replaces=(libdbus)
- # Disable installation of libdbus
- sed -i -e 's/^SUBDIRS = dbus/SUBDIRS =/' Makefile
+ cd $pkgbase
make DESTDIR="$pkgdir" install
- rm -r "${pkgdir}/var/run"
- rm -r "${pkgdir}/usr/lib/pkgconfig"
+ rm -r "$pkgdir/var/run"
+
+ install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgbase/COPYING"
- install -Dm644 COPYING "$pkgdir/usr/share/licenses/dbus/COPYING"
+ # We have a pre-assigned uid (81)
+ install -m644 "$srcdir/dbus.sysusers" "$pkgdir/usr/lib/sysusers.d/dbus.conf"
+
+ # Split docs
+ mv "$pkgdir/usr/share/doc" "$srcdir"
}
-package_libdbus(){
- pkgdesc="DBus library"
- depends=('libsystemd')
+package_dbus-docs() {
+ pkgdesc+=" (documentation)"
+ depends=(dbus)
+
+ install -d "$pkgdir/usr/share/licenses"
+ ln -s dbus "$pkgdir/usr/share/licenses/dbus-docs"
- cd dbus-$pkgver
- make DESTDIR="$pkgdir" -C dbus install
- make DESTDIR="$pkgdir" install-data-am
- install -Dm644 COPYING "${pkgdir}/usr/share/licenses/libdbus/COPYING"
+ mv doc "$pkgdir/usr/share"
}
diff --git a/abs/core/dbus/dbus.sysusers b/abs/core/dbus/dbus.sysusers
new file mode 100644
index 0000000..c6199ed
--- /dev/null
+++ b/abs/core/dbus/dbus.sysusers
@@ -0,0 +1,5 @@
+# sysusers.d snippet for creating the D-Bus system user automatically
+# at boot on systemd-based systems that ship with an unpopulated
+# /etc. See sysusers.d(5) for details.
+
+u dbus 81 "System Message Bus"
diff --git a/abs/core/dialog/PKGBUILD b/abs/core/dialog/PKGBUILD
index d615e05..1f4e0b5 100644
--- a/abs/core/dialog/PKGBUILD
+++ b/abs/core/dialog/PKGBUILD
@@ -1,27 +1,36 @@
-# $Id: PKGBUILD 163201 2012-07-09 14:42:05Z stephane $
-# Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
+# $Id$
+# Maintainer: Evangelos Foutras <evangelos@foutrelis.com>
+# Contributor: Stéphane Gaudreault <stephane@archlinux.org>
# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: Andreas Radke <andyrtr@archlinux.org>
pkgname=dialog
-pkgver=1.1_20120706
+pkgver=1.3_20171209
pkgrel=1
+epoch=1
pkgdesc="A tool to display dialog boxes from shell scripts"
-arch=('i686' 'x86_64')
-url="http://invisible-island.net/dialog/"
+arch=('x86_64')
+url="https://invisible-island.net/dialog/"
license=('LGPL2.1')
-depends=('ncurses')
-source=(ftp://invisible-island.net/${pkgname}/${pkgname}-${pkgver/_/-}.tgz)
-sha1sums=('fa033f0fb166da86e29d70e68159a92a9b9cdb84')
+depends=('sh' 'ncurses')
+provides=('libdialog.so')
+source=(https://invisible-mirror.net/archives/$pkgname/$pkgname-${pkgver/_/-}.tgz)
+sha256sums=('20139442119e2eff5c35236e8e5e313c901539008d9cccf8c8ab3851b41267e6')
build() {
- cd "${srcdir}/$pkgname-${pkgver/_/-}"
- ./configure --prefix=/usr --mandir=/usr/share/man \
- --with-ncursesw --enable-nls
+ cd "$srcdir/$pkgname-${pkgver/_/-}"
+
+ ./configure \
+ --prefix=/usr \
+ --enable-nls \
+ --with-libtool \
+ --with-ncursesw
make
}
package() {
- cd "${srcdir}/$pkgname-${pkgver/_/-}"
- make DESTDIR="${pkgdir}" install install-lib
+ cd "$srcdir/$pkgname-${pkgver/_/-}"
+ make DESTDIR="$pkgdir" install-full
}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/ding-libs/PKGBUILD b/abs/core/ding-libs/PKGBUILD
new file mode 100644
index 0000000..be98822
--- /dev/null
+++ b/abs/core/ding-libs/PKGBUILD
@@ -0,0 +1,37 @@
+# $Id$
+# Maintainer: AndyRTR <andyrtr@archlinux.org>
+# Contributor: Massimiliano Torromeo <massimiliano.torromeo@gmail.com>
+# Contributor: Mantas M. <grawity@gmail.com>
+
+pkgname=ding-libs
+pkgver=0.6.1
+pkgrel=1
+pkgdesc="'D is not GLib' utility libraries"
+arch=('x86_64')
+url="https://pagure.io/SSSD/ding-libs/"
+license=('GPL3' 'LGPL3')
+depends=('glibc')
+makedepends=('doxygen')
+checkdepends=('check')
+source=(https://releases.pagure.org/SSSD//$pkgname/$pkgname-$pkgver.tar.gz{,.asc})
+sha1sums=('dab4c855b065bd728021437af81ae726c31c5272'
+ 'SKIP')
+validpgpkeys=('7B54CAE8A03D66F3D70A5B516F5A90EB44FBC7C7' # "Pavel Reichl <preichl@redhat.com>"
+ 'E4E366758CA0716AAB8048671EC6AB7532E7BC25' # "Jakub Hrozek <jhrozek@redhat.com>"
+ '16F24229488E736048952737BA88000FE6398272') # "Michal Židek (rh_work) <mzidek@redhat.com>"
+
+build() {
+ cd $pkgname-$pkgver
+ ./configure --prefix=/usr --disable-static
+ make all docs
+}
+
+check() {
+ cd $pkgname-$pkgver
+ make check
+}
+
+package() {
+ cd $pkgname-$pkgver
+ make DESTDIR="$pkgdir/" install
+}
diff --git a/abs/core/dirmngr/PKGBUILD b/abs/core/dirmngr/PKGBUILD
deleted file mode 100644
index 40e0c74..0000000
--- a/abs/core/dirmngr/PKGBUILD
+++ /dev/null
@@ -1,30 +0,0 @@
-# $Id: PKGBUILD 155870 2012-04-08 07:13:40Z tpowa $
-# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
-
-pkgname=dirmngr
-pkgver=1.1.0
-pkgrel=4
-pkgdesc="A daemon to handle CRL and certificate requests"
-arch=('i686' 'x86_64')
-license=('GPL')
-url="ftp://ftp.gnupg.org/gcrypt/dirmngr"
-depends=('libgcrypt' 'libldap' 'libksba' 'libgpg-error' 'libassuan' 'pth')
-source=(ftp://ftp.gnupg.org/gcrypt/$pkgname/$pkgname-$pkgver.tar.bz2)
-install=dirmngr.install
-
-build() {
- cd $srcdir/$pkgname-$pkgver
- # FIX for https://bugzilla.redhat.com/565131
- # not sure how best to turn this into something more upstreamable
- # patch configure to try this combo first? -- Rex
- # https://bugs.archlinux.org/task/28606
- export LDAPLIBS="-lldap -llber"
- ./configure --prefix=/usr --libexecdir=/usr/lib
- make
-}
-
-package() {
- cd $srcdir/$pkgname-$pkgver
- make DESTDIR=$pkgdir install
-}
-md5sums=('f2570f0248f5947daac200e85291b328')
diff --git a/abs/core/dirmngr/dirmngr.install b/abs/core/dirmngr/dirmngr.install
deleted file mode 100644
index e26e0e7..0000000
--- a/abs/core/dirmngr/dirmngr.install
+++ /dev/null
@@ -1,20 +0,0 @@
-infodir=usr/share/info
-filelist=(dirmngr.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/abs/core/dnsutils/PKGBUILD b/abs/core/dnsutils/PKGBUILD
deleted file mode 100644
index 9fc5101..0000000
--- a/abs/core/dnsutils/PKGBUILD
+++ /dev/null
@@ -1,52 +0,0 @@
-# $Id: PKGBUILD 161356 2012-06-10 08:42:42Z bisson $
-# Maintainer: Gaetan Bisson <bisson@archlinux.org>
-# Contributor: kevin <kevin@archlinux.org>
-# Contributor: mario <mario_vazq@hotmail.com>
-
-pkgname=dnsutils
-
-# Use a period and not a hyphen before the patch level for proper versioning.
-pkgver=9.9.1.P1
-_pkgver=9.9.1-P1
-pkgrel=1
-
-pkgdesc='DNS utilities: dig host nslookup'
-url='http://www.isc.org/software/bind/'
-license=('custom:ISC')
-arch=('i686' 'x86_64')
-options=('!makeflags')
-depends=('openssl' 'krb5' 'idnkit' 'dnssec-anchors')
-source=("http://ftp.isc.org/isc/bind9/${_pkgver}/bind-${_pkgver}.tar.gz"
- 'remove-bind.patch')
-sha1sums=('a2263b96ccd8a143ea54b39958142c542bf605a8'
- 'b465ef6160b004838f04de9978fe1be8422af777')
-
-replaces=('bind-tools' 'host')
-
-build() {
- cd "${srcdir}/bind-${_pkgver}"
-
- patch -p1 -i ../remove-bind.patch
- export STD_CDEFINES='-DDIG_SIGCHASE'
-
- # hack to remove unused bloat from the binaries
- CFLAGS+=' -fdata-sections -ffunction-sections'
- LDFLAGS+=' -Wl,--gc-sections'
-
- ./configure \
- --prefix=/usr \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --disable-static \
- --disable-linux-caps \
- --with-openssl \
- --with-idn \
-
- make
-}
-
-package() {
- cd "${srcdir}/bind-${_pkgver}"
- install -Dm644 COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
- cd bin; make DESTDIR="${pkgdir}" install
-}
diff --git a/abs/core/dnsutils/remove-bind.patch b/abs/core/dnsutils/remove-bind.patch
deleted file mode 100644
index 19d6509..0000000
--- a/abs/core/dnsutils/remove-bind.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff -aur old/bin/Makefile.in new/bin/Makefile.in
---- old/bin/Makefile.in 2009-10-05 05:07:08.000000000 -0700
-+++ new/bin/Makefile.in 2011-08-28 19:16:17.245495043 -0700
-@@ -19,8 +19,7 @@
- VPATH = @srcdir@
- top_srcdir = @top_srcdir@
-
--SUBDIRS = named rndc dig dnssec tests tools nsupdate \
-- check confgen @PKCS11_TOOLS@
-+SUBDIRS = dig
- TARGETS =
-
- @BIND9_MAKE_RULES@
-diff -aur old/lib/Makefile.in new/lib/Makefile.in
---- old/lib/Makefile.in 2007-06-19 16:47:13.000000000 -0700
-+++ new/lib/Makefile.in 2011-08-28 19:17:50.828688599 -0700
-@@ -23,7 +23,7 @@
- # Attempt to disable parallel processing.
- .NOTPARALLEL:
- .NO_PARALLEL:
--SUBDIRS = isc isccc dns isccfg bind9 lwres tests
-+SUBDIRS = isc dns isccfg bind9 lwres
- TARGETS =
-
- @BIND9_MAKE_RULES@
diff --git a/abs/core/docutils/PKGBUILD b/abs/core/docutils/PKGBUILD
deleted file mode 100644
index 0b04dc3..0000000
--- a/abs/core/docutils/PKGBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# $Id: PKGBUILD 87861 2010-08-18 14:26:28Z ibiru $
-# Maintainer : Ionut Biru <ibiru@archlinux.org>
-# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
-
-pkgname=docutils
-pkgver=0.7
-pkgrel=5
-pkgdesc="Set of tools for processing plaintext docs into formats such as HTML, XML, or LaTeX"
-arch=('any')
-url="http://docutils.sourceforge.net"
-license=('custom')
-depends=('python2')
-source=(http://downloads.sourceforge.net/docutils/docutils-$pkgver.tar.gz)
-md5sums=('9aec716baf15d06b5aa57cf8d5591c15')
-
-build() {
- cd ${srcdir}/${pkgname}-${pkgver}
- python2 setup.py install --root=${pkgdir} --optimize=1
-
- for f in ${pkgdir}/usr/bin/*.py; do
- ln -s $(basename $f) $pkgdir/usr/bin/$(basename $f .py)
- done
-
- sed -e 's|#! /usr/bin/env python|#!/usr/bin/env python2|' \
- -i ${pkgdir}/usr/lib/python2.7/site-packages/docutils/readers/python/pynodes.py
- sed -e 's|#!/usr/bin/env python|#!/usr/bin/env python2|' \
- -i ${pkgdir}/usr/lib/python2.7/site-packages/docutils/_string_template_compat.py
-
- install -D -m644 COPYING.txt ${pkgdir}/usr/share/licenses/${pkgname}/COPYING.txt
- install -D -m644 licenses/python* ${pkgdir}/usr/share/licenses/${pkgname}/
-}
-
diff --git a/abs/core/fakeroot/PKGBUILD b/abs/core/fakeroot/PKGBUILD
index 292e30d..ed80d20 100644
--- a/abs/core/fakeroot/PKGBUILD
+++ b/abs/core/fakeroot/PKGBUILD
@@ -1,35 +1,58 @@
-# $Id: PKGBUILD 160939 2012-06-07 07:26:49Z allan $
-# Maintainer: Allan McRae <allan@archlinux.org>
+# $Id$
+# Maintainer: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
+# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: Jochem Kossen <j.kossen@home.nl>
pkgname=fakeroot
-pkgver=1.18.4
+pkgver=1.22
pkgrel=1
-pkgdesc="Gives a fake root environment, useful for building packages as a non-privileged user"
-arch=('i686' 'x86_64')
-license=('GPL')
-url="http://packages.debian.org/fakeroot"
-groups=('base-devel')
+pkgdesc='Tool for simulating superuser privileges'
+arch=(x86_64)
+license=(GPL)
+url='http://packages.debian.org/fakeroot'
+groups=(base-devel)
install=fakeroot.install
-depends=('glibc' 'filesystem' 'sed' 'util-linux' 'sh')
-options=('!libtool')
-source=(http://ftp.debian.org/debian/pool/main/f/${pkgname}/${pkgname}_${pkgver}.orig.tar.bz2)
-md5sums=('706171d8d520b1ca1576ac73f2ceb4f3')
+depends=(glibc filesystem sed util-linux sh)
+#makedepends=(po4a)
+checkdepends=(sharutils)
+source=(http://ftp.debian.org/debian/pool/main/f/$pkgname/${pkgname}_${pkgver}.orig.tar.bz2
+ silence-dlerror.patch)
+md5sums=('fae64c9aeb2c895ead8e1b99bf50c631'
+ '5fba0b541b5af39d804265223fda525c')
+
+prepare() {
+ cd $pkgname-$pkgver
+ patch -p1 -i "$srcdir"/silence-dlerror.patch
+
+ ./bootstrap
+}
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- ./configure --prefix=/usr --libdir=/usr/lib/libfakeroot \
- --disable-static --with-ipc=sysv
+ cd $pkgname-$pkgver
+
+ ./configure --prefix=/usr \
+ --libdir=/usr/lib/libfakeroot \
+ --disable-static \
+ --with-ipc=sysv
+
make
+
+# cd doc
+# po4a -k 0 --rm-backups --variable 'srcdir=../doc/' po4a/po4a.cfg
+}
+
+check() {
+ cd $pkgname-$pkgver
+ make check
}
package() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- make DESTDIR=${pkgdir} install
+ cd $pkgname-$pkgver
+ make DESTDIR="$pkgdir" install
- install -dm755 ${pkgdir}/etc/ld.so.conf.d/
- echo '/usr/lib/libfakeroot' > ${pkgdir}/etc/ld.so.conf.d/fakeroot.conf
+ install -dm755 "$pkgdir/etc/ld.so.conf.d/"
+ echo '/usr/lib/libfakeroot' > "$pkgdir/etc/ld.so.conf.d/fakeroot.conf"
# install README for sysv/tcp usage
- install -Dm644 $srcdir/$pkgname-$pkgver/README $pkgdir/usr/share/doc/$pkgname/README
+ install -Dm644 README "$pkgdir/usr/share/doc/$pkgname/README"
}
diff --git a/abs/core/fakeroot/__changelog b/abs/core/fakeroot/__changelog
new file mode 100644
index 0000000..3df28e1
--- /dev/null
+++ b/abs/core/fakeroot/__changelog
@@ -0,0 +1 @@
+PKGBUILD: don't use po4a
diff --git a/abs/core/fakeroot/fakeroot.install b/abs/core/fakeroot/fakeroot.install
index 986c91b..caab922 100644
--- a/abs/core/fakeroot/fakeroot.install
+++ b/abs/core/fakeroot/fakeroot.install
@@ -1,14 +1,14 @@
post_install() {
- sbin/ldconfig -r .
+ usr/bin/ldconfig -r .
}
post_upgrade() {
if [ "$(vercmp $2 1.14.4-2)" -lt 0 ]; then
sed -i -e '/\/usr\/lib\/libfakeroot/d' etc/ld.so.conf
fi
- sbin/ldconfig -r .
+ usr/bin/ldconfig -r .
}
pre_remove() {
- sbin/ldconfig -r .
+ usr/bin/ldconfig -r .
}
diff --git a/abs/core/fakeroot/silence-dlerror.patch b/abs/core/fakeroot/silence-dlerror.patch
new file mode 100644
index 0000000..a4472d8
--- /dev/null
+++ b/abs/core/fakeroot/silence-dlerror.patch
@@ -0,0 +1,17 @@
+diff --git a/libfakeroot.c b/libfakeroot.c
+index f867758..7ef6e47 100644
+--- a/libfakeroot.c
++++ b/libfakeroot.c
+@@ -256,10 +256,12 @@ void load_library_symbols(void){
+ /* clear dlerror() just in case dlsym() legitimately returns NULL */
+ msg = dlerror();
+ *(next_wrap[i].doit)=dlsym(get_libc(), next_wrap[i].name);
++#ifdef LIBFAKEROOT_DEBUGGING
+ if ( (msg = dlerror()) != NULL){
+ fprintf (stderr, "dlsym(%s): %s\n", next_wrap[i].name, msg);
+ /* abort ();*/
+ }
++#endif /* LIBFAKEROOT_DEBUGGING */
+ }
+ }
+
diff --git a/abs/core/ffmpeg/PKGBUILD b/abs/core/ffmpeg/PKGBUILD
index 4e9be79..8e23c0f 100644
--- a/abs/core/ffmpeg/PKGBUILD
+++ b/abs/core/ffmpeg/PKGBUILD
@@ -6,30 +6,41 @@
# Contributor: Paul Mattal <paul@archlinux.org>
pkgname=ffmpeg
-pkgver=3.2.2
+pkgver=3.4.2
pkgrel=2
epoch=1
pkgdesc='Complete solution to record, convert and stream audio and video'
-arch=('i686' 'x86_64')
+arch=('x86_64')
url='http://ffmpeg.org/'
license=('GPL3')
depends=('alsa-lib' 'bzip2' 'fontconfig' 'fribidi' 'glibc' 'gmp' 'gnutls' 'gsm'
'lame' 'libavc1394' 'libiec61883' 'libmodplug'
- 'libraw1394' 'libsoxr' 'libssh' 'libtheora' 'libva' 'libvdpau'
- 'libwebp' 'libx11' 'libxcb' 'opencore-amr' 'openjpeg2' 'opus'
- 'schroedinger' 'sdl2' 'speex' 'v4l-utils' 'xz' 'zlib'
- 'libass.so' 'libbluray.so' 'libfreetype.so' 'libnetcdf.so'
- 'libvidstab.so' 'libvorbisenc.so' 'libvorbis.so' 'libvpx.so'
- 'libx264.so' 'libx265.so' 'libxvidcore.so')
-makedepends=('hardening-wrapper' 'ladspa' 'libvdpau' 'yasm')
+ 'libraw1394' 'libsoxr' 'libssh' 'libtheora' 'libvdpau' 'libwebp'
+ 'libx11' 'libxcb' 'libxml2' 'opencore-amr' 'openjpeg2' 'opus' 'sdl2'
+ 'speex' 'v4l-utils' 'xz' 'zlib'
+ 'libomxil-bellagio'
+ 'libass.so' 'libbluray.so' 'libfreetype.so' 'libva-drm.so' 'libva.so'
+ 'libva-x11.so' 'libvidstab.so' 'libvorbisenc.so' 'libvorbis.so'
+ 'libvpx.so' 'libx264.so' 'libx265.so' 'libxvidcore.so')
+makedepends=('ladspa' 'libvdpau' 'yasm')
optdepends=('ladspa: LADSPA filters')
provides=('libavcodec.so' 'libavdevice.so' 'libavfilter.so' 'libavformat.so'
'libavresample.so' 'libavutil.so' 'libpostproc.so' 'libswresample.so'
'libswscale.so')
-source=("https://ffmpeg.org/releases/ffmpeg-${pkgver}.tar.xz"{,.asc})
+source=("https://ffmpeg.org/releases/ffmpeg-${pkgver}.tar.xz"{,.asc}
+ 'fs56089.patch')
validpgpkeys=('FCF986EA15E6E293A5644F10B4322F04D67658D8')
-sha256sums=('3f01bd1fe1a17a277f8c84869e5d9192b4b978cb660872aa2b54c3cc8a2fedfc'
- 'SKIP')
+sha256sums=('2b92e9578ef8b3e49eeab229e69305f5f4cbc1fdaa22e927fc7fca18acccd740'
+ 'SKIP'
+ '0bfcd12d1992903f21c146ae56d9ad89b52818cfb2303197ee905347c25a5427')
+
+prepare() {
+ cd ffmpeg-${pkgver}
+
+ # https://bugs.archlinux.org/task/56089
+ # Backport of http://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=a606f27f4c610708fa96e35eed7b7537d3d8f712
+ patch -Np1 -i ../fs56089.patch
+}
build() {
cd ffmpeg-${pkgver}
@@ -59,7 +70,6 @@ build() {
--enable-libopenjpeg \
--enable-libopus \
--disable-libpulse \
- --enable-libschroedinger \
--enable-libsoxr \
--enable-libspeex \
--enable-libssh \
@@ -71,11 +81,12 @@ build() {
--enable-libwebp \
--enable-libx264 \
--enable-libx265 \
+ --enable-libxcb \
+ --enable-libxml2 \
--enable-libxvid \
- --enable-netcdf \
--enable-shared \
--enable-version3 \
- --enable-x11grab
+ --enable-omx
make
make tools/qt-faststart
diff --git a/abs/core/ffmpeg/fs56089.patch b/abs/core/ffmpeg/fs56089.patch
new file mode 100644
index 0000000..6aca38f
--- /dev/null
+++ b/abs/core/ffmpeg/fs56089.patch
@@ -0,0 +1,84 @@
+diff -rupN ffmpeg-3.4.orig/libavformat/aviobuf.c ffmpeg-3.4/libavformat/aviobuf.c
+--- ffmpeg-3.4.orig/libavformat/aviobuf.c 2017-11-02 14:57:16.078834563 +0100
++++ ffmpeg-3.4/libavformat/aviobuf.c 2017-11-02 15:02:52.549816990 +0100
+@@ -531,6 +531,24 @@ void avio_write_marker(AVIOContext *s, i
+ s->last_time = time;
+ }
+
++static int read_packet_wrapper(AVIOContext *s, uint8_t *buf, int size)
++{
++ int ret;
++
++ if (!s->read_packet)
++ return AVERROR_EOF;
++ ret = s->read_packet(s->opaque, buf, size);
++#if FF_API_OLD_AVIO_EOF_0
++ if (!ret && !s->max_packet_size) {
++ av_log(NULL, AV_LOG_WARNING, "Invalid return value 0 for stream protocol\n");
++ ret = AVERROR_EOF;
++ }
++#else
++ av_assert2(ret || s->max_packet_size);
++#endif
++ return ret;
++}
++
+ /* Input stream */
+
+ static void fill_buffer(AVIOContext *s)
+@@ -569,10 +587,7 @@ static void fill_buffer(AVIOContext *s)
+ len = s->orig_buffer_size;
+ }
+
+- if (s->read_packet)
+- len = s->read_packet(s->opaque, dst, len);
+- else
+- len = 0;
++ len = read_packet_wrapper(s, dst, len);
+ if (len <= 0) {
+ /* do not modify buffer if EOF reached so that a seek back can
+ be done without rereading data */
+@@ -644,8 +659,7 @@ int avio_read(AVIOContext *s, unsigned c
+ if (len == 0 || s->write_flag) {
+ if((s->direct || size > s->buffer_size) && !s->update_checksum) {
+ // bypass the buffer and read data directly into buf
+- if(s->read_packet)
+- len = s->read_packet(s->opaque, buf, size);
++ len = read_packet_wrapper(s, buf, size);
+
+ if (len <= 0) {
+ /* do not modify buffer if EOF reached so that a seek back can
+@@ -711,7 +725,7 @@ int avio_read_partial(AVIOContext *s, un
+ return -1;
+
+ if (s->read_packet && s->write_flag) {
+- len = s->read_packet(s->opaque, buf, size);
++ len = read_packet_wrapper(s, buf, size);
+ if (len > 0)
+ s->pos += len;
+ return len;
+diff -rupN ffmpeg-3.4.orig/libavformat/avio.h ffmpeg-3.4/libavformat/avio.h
+--- ffmpeg-3.4.orig/libavformat/avio.h 2017-11-02 14:57:16.078834563 +0100
++++ ffmpeg-3.4/libavformat/avio.h 2017-11-02 14:59:15.602300896 +0100
+@@ -452,6 +452,8 @@ void avio_free_directory_entry(AVIODirEn
+ * @param write_flag Set to 1 if the buffer should be writable, 0 otherwise.
+ * @param opaque An opaque pointer to user-specific data.
+ * @param read_packet A function for refilling the buffer, may be NULL.
++ * For stream protocols, must never return 0 but rather
++ * a proper AVERROR code.
+ * @param write_packet A function for writing the buffer contents, may be NULL.
+ * The function may not change the input buffers content.
+ * @param seek A function for seeking to specified byte position, may be NULL.
+diff -rupN ffmpeg-3.4.orig/libavformat/version.h ffmpeg-3.4/libavformat/version.h
+--- ffmpeg-3.4.orig/libavformat/version.h 2017-11-02 14:57:16.082167807 +0100
++++ ffmpeg-3.4/libavformat/version.h 2017-11-02 15:04:01.704627612 +0100
+@@ -97,6 +97,9 @@
+ #ifndef FF_API_OLD_ROTATE_API
+ #define FF_API_OLD_ROTATE_API (LIBAVFORMAT_VERSION_MAJOR < 58)
+ #endif
++#ifndef FF_API_OLD_AVIO_EOF_0
++#define FF_API_OLD_AVIO_EOF_0 (LIBAVFORMAT_VERSION_MAJOR < 58)
++#endif
+
+
+ #ifndef FF_API_R_FRAME_RATE
diff --git a/abs/core/freetype2/0001-Enable-table-validation-modules.patch b/abs/core/freetype2/0001-Enable-table-validation-modules.patch
index 3e9451f..5fd339f 100644
--- a/abs/core/freetype2/0001-Enable-table-validation-modules.patch
+++ b/abs/core/freetype2/0001-Enable-table-validation-modules.patch
@@ -1,17 +1,18 @@
-From c3680bf8d38cf759c1e33dcc2d2d51e0a4fea2f9 Mon Sep 17 00:00:00 2001
+From c7a6a2312313a971089fb592deb8c476be4dca0f Mon Sep 17 00:00:00 2001
+Message-Id: <c7a6a2312313a971089fb592deb8c476be4dca0f.1513462508.git.jan.steffens@gmail.com>
From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
Date: Tue, 23 Jun 2015 08:40:29 +0200
-Subject: [PATCH 1/3] Enable table validation modules
+Subject: [PATCH 1/4] Enable table validation modules
---
modules.cfg | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/modules.cfg b/modules.cfg
-index f30049c38cc45159..7b8e50fe1b34584a 100644
+index 56a2340e56d187aa..3a028329187275df 100644
--- a/modules.cfg
+++ b/modules.cfg
-@@ -120,7 +120,7 @@ AUX_MODULES += cache
+@@ -120,30 +120,30 @@ AUX_MODULES += cache
# TrueType GX/AAT table validation. Needs ftgxval.c below.
#
# No FT_CONFIG_OPTION_PIC support.
@@ -20,7 +21,22 @@ index f30049c38cc45159..7b8e50fe1b34584a 100644
# Support for streams compressed with gzip (files with suffix .gz).
#
-@@ -143,7 +143,7 @@ AUX_MODULES += bzip2
+ # See include/freetype/ftgzip.h for the API.
+ # No FT_CONFIG_OPTION_PIC support.
+ AUX_MODULES += gzip
+
+ # Support for streams compressed with LZW (files with suffix .Z).
+ #
+ # See include/freetype/ftlzw.h for the API.
+ # No FT_CONFIG_OPTION_PIC support.
+ AUX_MODULES += lzw
+
+ # Support for streams compressed with bzip2 (files with suffix .bz2).
+ #
+ # See include/freetype/ftbzip2.h for the API.
+ # No FT_CONFIG_OPTION_PIC support.
+ AUX_MODULES += bzip2
+
# OpenType table validation. Needs ftotval.c below.
#
# No FT_CONFIG_OPTION_PIC support.
@@ -30,5 +46,5 @@ index f30049c38cc45159..7b8e50fe1b34584a 100644
# Auxiliary PostScript driver component to share common code.
#
--
-2.9.3
+2.15.1
diff --git a/abs/core/freetype2/0001-psaux-Correctly-handle-Flex-features-52846.patch b/abs/core/freetype2/0001-psaux-Correctly-handle-Flex-features-52846.patch
new file mode 100644
index 0000000..44630fb
--- /dev/null
+++ b/abs/core/freetype2/0001-psaux-Correctly-handle-Flex-features-52846.patch
@@ -0,0 +1,38 @@
+From cc2f3cdecff5a351e7e8961b9f2e389ab740231a Mon Sep 17 00:00:00 2001
+From: Ewald Hew <ewaldhew@gmail.com>
+Date: Wed, 10 Jan 2018 13:24:56 +0800
+Subject: [PATCH] [psaux] Correctly handle Flex features (#52846).
+
+* src/psaux/psintrp.c (cf2_interpT2CharString) <cf2_cmdVMOVETO,
+cf2_cmdHMOVETO>: Do not move if doing Flex.
+---
+ src/psaux/psintrp.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/src/psaux/psintrp.c b/src/psaux/psintrp.c
+index 5c0ee78..da5a8da 100644
+--- a/src/psaux/psintrp.c
++++ b/src/psaux/psintrp.c
+@@ -852,7 +852,8 @@
+
+ curY = ADD_INT32( curY, cf2_stack_popFixed( opStack ) );
+
+- cf2_glyphpath_moveTo( &glyphPath, curX, curY );
++ if ( !decoder->flex_state )
++ cf2_glyphpath_moveTo( &glyphPath, curX, curY );
+
+ break;
+
+@@ -2674,7 +2675,8 @@
+
+ curX = ADD_INT32( curX, cf2_stack_popFixed( opStack ) );
+
+- cf2_glyphpath_moveTo( &glyphPath, curX, curY );
++ if ( !decoder->flex_state )
++ cf2_glyphpath_moveTo( &glyphPath, curX, curY );
+
+ break;
+
+--
+2.16.1
+
diff --git a/abs/core/freetype2/0003-Enable-infinality-subpixel-hinting.patch b/abs/core/freetype2/0002-Enable-infinality-subpixel-hinting.patch
index bbfa2a2..5f43915 100644
--- a/abs/core/freetype2/0003-Enable-infinality-subpixel-hinting.patch
+++ b/abs/core/freetype2/0002-Enable-infinality-subpixel-hinting.patch
@@ -1,18 +1,21 @@
-From 220e96a9a8d7aff6ad0f0f1aa12c79cdb563331c Mon Sep 17 00:00:00 2001
+From 438b8c65e900d4c28db9eeb2a45e5998048eb471 Mon Sep 17 00:00:00 2001
+Message-Id: <438b8c65e900d4c28db9eeb2a45e5998048eb471.1513462508.git.jan.steffens@gmail.com>
+In-Reply-To: <c7a6a2312313a971089fb592deb8c476be4dca0f.1513462508.git.jan.steffens@gmail.com>
+References: <c7a6a2312313a971089fb592deb8c476be4dca0f.1513462508.git.jan.steffens@gmail.com>
From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
Date: Mon, 29 Aug 2016 08:43:10 +0200
-Subject: [PATCH 3/3] Enable infinality subpixel hinting
+Subject: [PATCH 2/4] Enable infinality subpixel hinting
---
include/freetype/config/ftoption.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/freetype/config/ftoption.h b/include/freetype/config/ftoption.h
-index 67a361dd41e0b026..c4812862518b66a6 100644
+index 06f3d50bb02fb5ac..e6f9720df9b5d004 100644
--- a/include/freetype/config/ftoption.h
+++ b/include/freetype/config/ftoption.h
-@@ -675,8 +675,8 @@ FT_BEGIN_HEADER
- /* [1] http://www.microsoft.com/typography/cleartype/truetypecleartype.aspx */
+@@ -654,8 +654,8 @@ FT_BEGIN_HEADER
+ /* [1] https://www.microsoft.com/typography/cleartype/truetypecleartype.aspx */
/* */
/* #define TT_CONFIG_OPTION_SUBPIXEL_HINTING 1 */
-#define TT_CONFIG_OPTION_SUBPIXEL_HINTING 2
@@ -23,5 +26,5 @@ index 67a361dd41e0b026..c4812862518b66a6 100644
/*************************************************************************/
--
-2.9.3
+2.15.1
diff --git a/abs/core/freetype2/0002-Enable-subpixel-rendering.patch b/abs/core/freetype2/0002-Enable-subpixel-rendering.patch
deleted file mode 100644
index dfb5796..0000000
--- a/abs/core/freetype2/0002-Enable-subpixel-rendering.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 96f09f08417887b2618c177bccfb6da2906568d9 Mon Sep 17 00:00:00 2001
-From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
-Date: Tue, 23 Jun 2015 08:43:07 +0200
-Subject: [PATCH 2/3] Enable subpixel rendering
-
----
- include/freetype/config/ftoption.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/include/freetype/config/ftoption.h b/include/freetype/config/ftoption.h
-index 90c123ef93e9ea04..67a361dd41e0b026 100644
---- a/include/freetype/config/ftoption.h
-+++ b/include/freetype/config/ftoption.h
-@@ -122,7 +122,7 @@ FT_BEGIN_HEADER
- /* This is done to allow FreeType clients to run unmodified, forcing */
- /* them to display normal gray-level anti-aliased glyphs. */
- /* */
--/* #define FT_CONFIG_OPTION_SUBPIXEL_RENDERING */
-+#define FT_CONFIG_OPTION_SUBPIXEL_RENDERING
-
-
- /*************************************************************************/
---
-2.9.3
-
diff --git a/abs/core/freetype2/0003-Enable-long-PCF-family-names.patch b/abs/core/freetype2/0003-Enable-long-PCF-family-names.patch
new file mode 100644
index 0000000..be202c1
--- /dev/null
+++ b/abs/core/freetype2/0003-Enable-long-PCF-family-names.patch
@@ -0,0 +1,28 @@
+From 7e262bff01573c67432f8b8fd879bf858e1611b3 Mon Sep 17 00:00:00 2001
+Message-Id: <7e262bff01573c67432f8b8fd879bf858e1611b3.1513462508.git.jan.steffens@gmail.com>
+In-Reply-To: <c7a6a2312313a971089fb592deb8c476be4dca0f.1513462508.git.jan.steffens@gmail.com>
+References: <c7a6a2312313a971089fb592deb8c476be4dca0f.1513462508.git.jan.steffens@gmail.com>
+From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
+Date: Sun, 14 May 2017 18:09:31 +0200
+Subject: [PATCH 3/4] Enable long PCF family names
+
+---
+ include/freetype/config/ftoption.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/include/freetype/config/ftoption.h b/include/freetype/config/ftoption.h
+index e6f9720df9b5d004..832c9c3cd200f91a 100644
+--- a/include/freetype/config/ftoption.h
++++ b/include/freetype/config/ftoption.h
+@@ -845,7 +845,7 @@ FT_BEGIN_HEADER
+ /* If this option is activated, it can be controlled with the */
+ /* `no-long-family-names' property of the pcf driver module. */
+ /* */
+-/* #define PCF_CONFIG_OPTION_LONG_FAMILY_NAMES */
++#define PCF_CONFIG_OPTION_LONG_FAMILY_NAMES
+
+
+ /*************************************************************************/
+--
+2.15.1
+
diff --git a/abs/core/freetype2/PKGBUILD b/abs/core/freetype2/PKGBUILD
index 80f5160..251ac74 100644
--- a/abs/core/freetype2/PKGBUILD
+++ b/abs/core/freetype2/PKGBUILD
@@ -2,32 +2,36 @@
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgbase=freetype2
-pkgname=('freetype2' 'freetype2-demos')
-pkgver=2.7.1
-pkgrel=1
-arch=(i686 x86_64)
+pkgname=('freetype2' 'freetype2-demos' 'freetype2-docs')
+pkgver=2.9
+pkgrel=2
+pkgdesc="Font rasterization library"
+arch=(x86_64)
license=('GPL')
-url="http://www.freetype.org/"
+url="https://www.freetype.org/"
# adding harfbuzz for improved OpenType features auto-hinting
# introduces a cycle dep to harfbuzz depending on freetype wanted by upstream
-makedepends=('libx11' 'zlib' 'bzip2' 'sh' 'libpng' 'harfbuzz')
-source=(https://download.savannah.gnu.org/releases/freetype/freetype-${pkgver}.tar.bz2{,.sig}
- https://download.savannah.gnu.org/releases/freetype/freetype-doc-${pkgver}.tar.bz2{,.sig}
- https://download.savannah.gnu.org/releases/freetype/ft2demos-${pkgver}.tar.bz2{,.sig}
+depends=('zlib' 'bzip2' 'sh' 'libpng' 'harfbuzz')
+makedepends=('libx11')
+source=(https://download-mirror.savannah.gnu.org/releases/freetype/freetype-${pkgver}.tar.bz2{,.sig}
+ https://download-mirror.savannah.gnu.org/releases/freetype/freetype-doc-${pkgver}.tar.bz2{,.sig}
+ https://download-mirror.savannah.gnu.org/releases/freetype/ft2demos-${pkgver}.tar.bz2{,.sig}
0001-Enable-table-validation-modules.patch
- 0002-Enable-subpixel-rendering.patch
- 0003-Enable-infinality-subpixel-hinting.patch
+ 0002-Enable-infinality-subpixel-hinting.patch
+ 0003-Enable-long-PCF-family-names.patch
+ 0001-psaux-Correctly-handle-Flex-features-52846.patch
0005-freetype-2.5.2-more-demos.patch
freetype2.sh)
-sha1sums=('4d08a9a6567c6332d58e9a5f9a7e9e3fbce66789'
+sha1sums=('94c4399b1a55c5892812e732843fcb4a7c2fe657'
'SKIP'
- 'd8ce472cd775b8ce50d127689acab59181e72ecf'
+ '63e171aa5b2c46e7bece3ae7781015380d012e1f'
'SKIP'
- '2ebe93df13eb45dac8515c5ed0216ef694c33f18'
+ 'bd8a5d17274f987284e6f934722fb7715d00892e'
'SKIP'
- 'b31882ef5e8447e761acee1c4a44c0630cd4d465'
- 'b1494810ed3aca25cdd8e8cedf634e5adfe6c09e'
- '41d27140fd590945e22e012c9dce62de3d6f11e6'
+ 'b69531770c343d403be294b7e4d25ac45738c833'
+ '3d26a569f0cb94c28a550577f5dcaadb4e193d91'
+ '770f1981734a837bcf065564c91644b4cc5e256a'
+ '21ad7dd31e16adb5b39adfa5671018a736626562'
'72cfecbe738085eec475e012617661ad0cc9b76f'
'bc6df1661c4c33e20f5ce30c2da8ad3c2083665f')
validpgpkeys=('58E0C111E39F5408C5D3EC76C1A60EACE707FDA5')
@@ -35,13 +39,18 @@ validpgpkeys=('58E0C111E39F5408C5D3EC76C1A60EACE707FDA5')
prepare() {
# Rename source dir to allow building the demos
mv freetype-${pkgver} freetype2
+ mv ft2demos-${pkgver} freetype2-demos
cd freetype2
patch -Np1 -i ../0001-Enable-table-validation-modules.patch
- patch -Np1 -i ../0002-Enable-subpixel-rendering.patch
- patch -Np1 -i ../0003-Enable-infinality-subpixel-hinting.patch
+ patch -Np1 -i ../0002-Enable-infinality-subpixel-hinting.patch
+ patch -Np1 -i ../0003-Enable-long-PCF-family-names.patch
- cd ../ft2demos-${pkgver}
+ # Freetype 2.9 regression: bad rendering for some Type 1 fonts
+ # https://savannah.nongnu.org/bugs/?52846
+ patch -Np1 -i ../0001-psaux-Correctly-handle-Flex-features-52846.patch
+
+ cd ../freetype2-demos
# enable more demos
patch -Np1 -i ../0005-freetype-2.5.2-more-demos.patch
@@ -55,7 +64,7 @@ build() {
make
# Build demos
- cd ../ft2demos-${pkgver}
+ cd ../freetype2-demos
make
}
@@ -65,31 +74,33 @@ check() {
}
package_freetype2() {
- pkgdesc="TrueType font rendering library"
- depends=('zlib' 'bzip2' 'sh' 'libpng' 'harfbuzz')
provides=('libfreetype.so')
install=freetype2.install
backup=('etc/profile.d/freetype2.sh')
cd freetype2
make DESTDIR="${pkgdir}" install
- install -Dm644 ../freetype2.sh "${pkgdir}/etc/profile.d/freetype2.sh"
+ install -Dt "${pkgdir}/etc/profile.d" -m644 ../freetype2.sh
+}
- # Package docs
- install -dm755 "${pkgdir}/usr/share/doc"
- cp -a docs "${pkgdir}/usr/share/doc/${pkgname}"
+package_freetype2-demos() {
+ pkgdesc="Freetype tools and demos"
+ depends=('freetype2' 'libx11')
- cd ../ft2demos-${pkgver}
- mkdir -p $srcdir/ft-demos
+ cd freetype2-demos
+ install -d "${pkgdir}/usr/bin"
for _i in bin/{f,t}t*; do
- libtool --mode=install install $_i "$srcdir/ft-demos"
+ libtool --mode=install install $_i "${pkgdir}/usr/bin"
done
}
-package_freetype2-demos() {
- pkgdesc="Freetype tools and demos"
- depends=('freetype2' 'libx11')
+package_freetype2-docs() {
+ pkgdesc="Freetype documentation"
+ depends=('freetype2')
- install -dm755 "${pkgdir}/usr/bin"
- cp -a $srcdir/ft-demos/* "${pkgdir}/usr/bin"
+ cd freetype2
+ install -d "${pkgdir}/usr/share/doc"
+ cp -a docs "${pkgdir}/usr/share/doc/freetype2"
}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/fribidi/PKGBUILD b/abs/core/fribidi/PKGBUILD
index 1a955d4..e599369 100644
--- a/abs/core/fribidi/PKGBUILD
+++ b/abs/core/fribidi/PKGBUILD
@@ -3,26 +3,44 @@
# Contributor: Nezmer <Nezmer@gmail.com>
pkgname=fribidi
-pkgver=0.19.7
+pkgver=1.0.1+8+gdf7252b
pkgrel=1
pkgdesc="A Free Implementation of the Unicode Bidirectional Algorithm"
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('LGPL')
-url="http://fribidi.org"
-depends=('glib2')
-source=("http://fribidi.org/download/${pkgname}-${pkgver}.tar.bz2")
-md5sums=('6c7e7cfdd39c908f7ac619351c1c5c23')
+url="https://github.com/fribidi/fribidi/"
+makedepends=(git glib2)
+depends=('glibc')
+options=('!makeflags')
+_commit=df7252be3fd94ceae8141a09ee86421fdd8b3b7e # master
+source=("git+https://github.com/fribidi/fribidi#commit=$_commit")
+md5sums=('SKIP')
-build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
+pkgver() {
+ cd $pkgname
+ git describe --tags | sed -e 's/-/+/g' -e 's/^v//'
+}
- ./configure --prefix=/usr
+prepare() {
+ cd $pkgname
+ NOCONFIGURE=1 ./autogen.sh
+}
+
+build() {
+ cd "${srcdir}/$pkgname"
+ ./configure --prefix=/usr
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
package() {
- cd "${srcdir}/${pkgname}-${pkgver}"
+ cd "${srcdir}/$pkgname"
make DESTDIR="${pkgdir}" install
}
+
+check() {
+ cd "${srcdir}/$pkgname"
+ make check
+}
diff --git a/abs/core/func/PKGBUILD b/abs/core/func/PKGBUILD
index 5ff6dd5..f895ac0 100644
--- a/abs/core/func/PKGBUILD
+++ b/abs/core/func/PKGBUILD
@@ -1,10 +1,10 @@
pkgname=func
pkgver=0.25
-pkgrel=19
+pkgrel=20
pkgdesc="fedora unifed network controller"
url=""
-license="gpl"
-depends=(pyopenssl certmaster python_aosd)
+license=("gpl")
+depends=(python2-pyopenssl certmaster python_aosd)
makedepends=()
conflicts=()
replaces=()
diff --git a/abs/core/gawk/PKGBUILD b/abs/core/gawk/PKGBUILD
index 071d2ec..5272608 100644
--- a/abs/core/gawk/PKGBUILD
+++ b/abs/core/gawk/PKGBUILD
@@ -3,25 +3,24 @@
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
pkgname=gawk
-pkgver=4.1.3
-pkgrel=1
+pkgver=4.2.0
+pkgrel=3
pkgdesc="GNU version of awk"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://www.gnu.org/software/gawk/"
license=('GPL')
groups=('base' 'base-devel')
depends=('sh' 'glibc' 'mpfr')
provides=('awk')
-install=gawk.install
-source=(ftp://ftp.gnu.org/pub/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz{,.sig})
-md5sums=('55d37f4069502677f25d1340df8eec97'
+source=(https://ftp.gnu.org/pub/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz{,.sig})
+md5sums=('0b598c31bc703d66082bd958d4189980'
'SKIP')
validpgpkeys=('D1967C63788713177D861ED7DF597815937EC0D2') # Arnold Robbins
build() {
cd ${srcdir}/${pkgname}-${pkgver}
- ./configure --prefix=/usr --libexecdir=/usr/lib --without-libsigsegv
- make
+ ./configure --prefix=/usr --libexecdir=/usr/lib --sysconfdir=/etc --without-libsigsegv
+ make
}
check() {
@@ -33,7 +32,7 @@ package() {
cd ${srcdir}/${pkgname}-${pkgver}
make DESTDIR=${pkgdir} install
- #install -dm755 ${pkgdir}/bin
+ #install -dm755 ${pkgdir}/bin
#ln -sf /usr/bin/gawk ${pkgdir}/bin/
#ln -sf gawk ${pkgdir}/bin/awk
}
diff --git a/abs/core/gawk/gawk.install b/abs/core/gawk/gawk.install
deleted file mode 100644
index 3f7f24c..0000000
--- a/abs/core/gawk/gawk.install
+++ /dev/null
@@ -1,22 +0,0 @@
-infodir=usr/share/info
-filelist=(gawk.info.gz gawkinet.info.gz)
-
-post_install() {
- [ -x usr/bin/install-info ] || return 0
- for file in ${filelist[@]}; do
- install-info $infodir/$file $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 $infodir/dir 2> /dev/null
- done
-}
-
-# vim:set ts=2 sw=2 et:
diff --git a/abs/core/gcc/PKGBUILD b/abs/core/gcc/PKGBUILD
index b32797b..66aed86 100644
--- a/abs/core/gcc/PKGBUILD
+++ b/abs/core/gcc/PKGBUILD
@@ -1,40 +1,58 @@
# $Id$
-# Maintainer: Allan McRae <allan@archlinux.org>
+# Maintainer: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
+# Contributor: 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=5.3.0
-_pkgver=5
-_islver=0.15
-pkgrel=5
-_snapshot=5-20160209
-pkgdesc="The GNU Compiler Collection"
-arch=('i686' 'x86_64')
-license=('GPL' 'LGPL' 'FDL' 'custom')
-url="http://gcc.gnu.org"
-makedepends=('binutils>=2.26' 'libmpc' 'gcc-ada' 'doxygen')
-checkdepends=('dejagnu' 'inetutils')
-options=('!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
+pkgname=(gcc gcc-libs gcc-fortran gcc-objc gcc-ada gcc-go lib32-gcc-libs)
+pkgver=7.3.0
+_majorver=${pkgver:0:1}
+_islver=0.18
+pkgrel=1
+pkgdesc='The GNU Compiler Collection'
+arch=(x86_64)
+license=(GPL LGPL FDL custom)
+url='http://gcc.gnu.org'
+makedepends=(binutils libmpc gcc-ada doxygen lib32-glibc lib32-gcc-libs)
+checkdepends=(dejagnu inetutils)
+options=(!emptydirs)
+#source=(https://sources.archlinux.org/other/gcc/gcc-${pkgver/+/-}.tar.xz{,.sig}
+source=(https://ftp.gnu.org/gnu/gcc/gcc-$pkgver/gcc-$pkgver.tar.xz{,.sig}
http://isl.gforge.inria.fr/isl-${_islver}.tar.bz2
- Unlink-the-response-file.patch)
-md5sums=('499161c65b639aa5c12a14944582b7ec'
- '8428efbbc6f6e2810ce5c1ba73ecf98c'
- '1f4d4ef71004261376d26d5ba6a84499')
-
-if [ -n "${_snapshot}" ]; then
- _basedir=gcc-${_snapshot}
-else
- _basedir=gcc-${pkgver}
-fi
-
-_libdir="usr/lib/gcc/$CHOST/$pkgver"
+ c89 c99)
+validpgpkeys=(F3691687D867B81B51CE07D9BBE43771487328A9 # bpiotrowski@archlinux.org
+ 13975A70E63C361C73AE69EF6EEB81F8981C74C7) # richard.guenther@gmail.com
+sha256sums=('832ca6ae04636adbb430e865a1451adf6979ab44ca1c8374f61fba65645ce15c'
+ 'SKIP'
+ '6b8b0fd7f81d0a957beb3679c81bbb34ccc7568d5682844d8924424a0dadcb1b'
+ 'de48736f6e4153f03d0a5d38ceb6c6fdb7f054e8f47ddd6af0a3dbf14f27b931'
+ '2513c6d9984dd0a2058557bf00f06d8d5181734e41dcfe07be7ed86f2959622a')
+
+_svnrev=256757
+_svnurl=svn://gcc.gnu.org/svn/gcc/branches/gcc-${_majorver}-branch
+_libdir=usr/lib/gcc/$CHOST/${pkgver%%+*}
+
+snapshot() {
+ svn export -r${_svnrev} ${_svnurl} gcc-r${_svnrev}
+
+ local datestamp basever _pkgver
+ basever=$(< gcc-r${_svnrev}/gcc/BASE-VER)
+ datestamp=$(< gcc-r${_svnrev}/gcc/DATESTAMP)
+ _pkgver=${basever}-${datestamp}
+
+ mv gcc-r${_svnrev} gcc-${_pkgver}
+ tar cf - gcc-${_pkgver} | xz > gcc-${_pkgver}.tar.xz
+ gpg -b gcc-${_pkgver}.tar.xz
+ scp gcc-${_pkgver}.tar.xz{,.sig} sources.archlinux.org:/srv/ftp/other/gcc/
+
+ echo
+ echo "pkgver=${_pkgver/-/+}"
+}
prepare() {
- cd ${srcdir}/${_basedir}
+ ln -s gcc-${pkgver/+/-} gcc
+ cd gcc
# link isl for in-tree build
ln -s ../isl-${_islver} isl
@@ -43,73 +61,78 @@ prepare() {
sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in
# Arch Linux installs x86_64 libraries /lib
- [[ $CARCH == "x86_64" ]] && sed -i '/m64=/s/lib64/lib/' gcc/config/i386/t-linux64
-
- echo ${pkgver} > gcc/BASE-VER
+ sed -i '/m64=/s/lib64/lib/' gcc/config/i386/t-linux64
# hack! - some configure tests for header files using "$CPP $CPPFLAGS"
sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" {libiberty,gcc}/configure
- # https://bugs.archlinux.org/task/47874 - commit f591a95d
- patch -p1 -i $srcdir/Unlink-the-response-file.patch
-
- mkdir ${srcdir}/gcc-build
+ mkdir -p "$srcdir/gcc-build"
}
build() {
- cd ${srcdir}/gcc-build
+ cd gcc-build
# using -pipe causes spurious test-suite failures
# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48565
CFLAGS=${CFLAGS/-pipe/}
CXXFLAGS=${CXXFLAGS/-pipe/}
- ${srcdir}/${_basedir}/configure --prefix=/usr \
- --libdir=/usr/lib --libexecdir=/usr/lib \
- --mandir=/usr/share/man --infodir=/usr/share/info \
+ "$srcdir/gcc/configure" --prefix=/usr \
+ --libdir=/usr/lib \
+ --libexecdir=/usr/lib \
+ --mandir=/usr/share/man \
+ --infodir=/usr/share/info \
--with-bugurl=https://bugs.archlinux.org/ \
--enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ \
- --enable-shared --enable-threads=posix --enable-libmpx \
- --with-system-zlib --with-isl --enable-__cxa_atexit \
- --disable-libunwind-exceptions --enable-clocale=gnu \
- --disable-libstdcxx-pch --disable-libssp \
- --enable-gnu-unique-object --enable-linker-build-id \
- --enable-lto --enable-plugin --enable-install-libiberty \
- --with-linker-hash-style=gnu --enable-gnu-indirect-function \
- --disable-multilib --disable-werror \
- --enable-checking=release
+ --enable-shared \
+ --enable-threads=posix \
+ --enable-libmpx \
+ --with-system-zlib \
+ --with-isl \
+ --enable-__cxa_atexit \
+ --disable-libunwind-exceptions \
+ --enable-clocale=gnu \
+ --disable-libstdcxx-pch \
+ --disable-libssp \
+ --enable-gnu-unique-object \
+ --enable-linker-build-id \
+ --enable-lto \
+ --enable-plugin \
+ --enable-install-libiberty \
+ --with-linker-hash-style=gnu \
+ --enable-gnu-indirect-function \
+ --enable-multilib \
+ --disable-werror \
+ --enable-checking=release \
+ --enable-default-pie \
+ --enable-default-ssp
make
-
+
# make documentation
make -C $CHOST/libstdc++-v3/doc doc-man-doxygen
}
check() {
- cd ${srcdir}/gcc-build
-
- # increase stack size to prevent test failures
- # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31827
- ulimit -s 32768
+ cd gcc-build
# do not abort on error as some are "expected"
make -k check || true
- ${srcdir}/${_basedir}/contrib/test_summary
+ "$srcdir/gcc/contrib/test_summary"
}
-package_gcc-libs()
-{
- pkgdesc="Runtime libraries shipped by GCC"
- groups=('base')
- depends=('glibc>=2.23')
- options=('!emptydirs' '!strip')
- install=gcc-libs.install
-
- cd ${srcdir}/gcc-build
-
- make -C $CHOST/libgcc DESTDIR=${pkgdir} install-shared
- rm ${pkgdir}/${_libdir}/libgcc_eh.a
-
+package_gcc-libs() {
+ pkgdesc='Runtime libraries shipped by GCC'
+ groups=(base)
+ depends=('glibc>=2.26')
+ options+=(!strip)
+ provides=($pkgname-multilib)
+ replaces=($pkgname-multilib)
+
+ cd gcc-build
+ make -C $CHOST/libgcc DESTDIR="$pkgdir" install-shared
+ rm -f "$pkgdir/$_libdir/libgcc_eh.a"
+
for lib in libatomic \
libcilkrts \
libgfortran \
@@ -117,209 +140,246 @@ package_gcc-libs()
libgomp \
libitm \
libquadmath \
- libsanitizer/{a,l,ub}san \
+ libsanitizer/{a,l,ub,t}san \
libstdc++-v3/src \
libvtv; do
- make -C $CHOST/$lib DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES
+ make -C $CHOST/$lib DESTDIR="$pkgdir" install-toolexeclibLTLIBRARIES
done
- [[ $CARCH == "x86_64" ]] && \
- make -C $CHOST/libsanitizer/tsan DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES
-
- make -C $CHOST/libobjc DESTDIR=${pkgdir} install-libs
-
- make -C $CHOST/libstdc++-v3/po DESTDIR=${pkgdir} install
-
- make -C $CHOST/libmpx DESTDIR=${pkgdir} install
- rm ${pkgdir}/usr/lib/libmpx.spec
+ make -C $CHOST/libobjc DESTDIR="$pkgdir" install-libs
+ make -C $CHOST/libstdc++-v3/po DESTDIR="$pkgdir" install
+ make -C $CHOST/libmpx DESTDIR="$pkgdir" install
+ rm -f "$pkgdir/usr/lib/libmpx.spec"
for lib in libgomp \
libitm \
libquadmath; do
- make -C $CHOST/$lib DESTDIR=${pkgdir} install-info
+ make -C $CHOST/$lib DESTDIR="$pkgdir" install-info
done
+ # remove files provided by lib32-gcc-libs
+ rm -rf "$pkgdir"/usr/lib32/
+
# Install Runtime Library Exception
- install -Dm644 ${srcdir}/${_basedir}/COPYING.RUNTIME \
- ${pkgdir}/usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION
+ install -Dm644 "$srcdir/gcc/COPYING.RUNTIME" \
+ "$pkgdir/usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION"
}
-package_gcc()
-{
+package_gcc() {
pkgdesc="The GNU Compiler Collection - C and C++ frontends"
- depends=("gcc-libs=$pkgver-$pkgrel" 'binutils>=2.26' 'libmpc')
+ depends=("gcc-libs=$pkgver-$pkgrel" 'binutils>=2.28' libmpc)
groups=('base-devel')
- options=('staticlibs')
- install=gcc.install
+ optdepends=('lib32-gcc-libs: for generating code for 32-bit ABI')
+ provides=($pkgname-multilib)
+ replaces=($pkgname-multilib)
+ options+=(staticlibs)
- cd ${srcdir}/gcc-build
+ cd gcc-build
- make -C gcc DESTDIR=${pkgdir} install-driver install-cpp install-gcc-ar \
+ make -C gcc DESTDIR="$pkgdir" install-driver install-cpp install-gcc-ar \
c++.install-common install-headers install-plugin install-lto-wrapper
- install -m755 -t $pkgdir/usr/bin/ gcc/gcov{,-tool}
- install -m755 -t $pkgdir/${_libdir}/ gcc/{cc1,cc1plus,collect2,lto1}
-
- make -C $CHOST/libgcc DESTDIR=${pkgdir} install
- rm ${pkgdir}/usr/lib/libgcc_s.so*
-
- make -C $CHOST/libstdc++-v3/src DESTDIR=${pkgdir} install
- make -C $CHOST/libstdc++-v3/include DESTDIR=${pkgdir} install
- make -C $CHOST/libstdc++-v3/libsupc++ DESTDIR=${pkgdir} install
- make -C $CHOST/libstdc++-v3/python DESTDIR=${pkgdir} install
-
- make DESTDIR=${pkgdir} install-libcc1
- install -d $pkgdir/usr/share/gdb/auto-load/usr/lib
- mv $pkgdir/usr/lib/libstdc++.so.6.*-gdb.py \
- $pkgdir/usr/share/gdb/auto-load/usr/lib/
- rm ${pkgdir}/usr/lib/libstdc++.so*
-
- make DESTDIR=${pkgdir} install-fixincludes
- make -C gcc DESTDIR=${pkgdir} install-mkheaders
-
- make -C lto-plugin DESTDIR=${pkgdir} install
- install -dm755 ${pkgdir}/usr/lib/bfd-plugins/
- ln -s /usr/lib/gcc/$CHOST/${pkgver}/liblto_plugin.so \
- ${pkgdir}/usr/lib/bfd-plugins/
-
- make -C $CHOST/libcilkrts DESTDIR=${pkgdir} install-nodist_toolexeclibHEADERS \
- install-nodist_cilkincludeHEADERS
- make -C $CHOST/libgomp DESTDIR=${pkgdir} install-nodist_toolexeclibHEADERS \
- install-nodist_libsubincludeHEADERS
- make -C $CHOST/libitm DESTDIR=${pkgdir} install-nodist_toolexeclibHEADERS
- make -C $CHOST/libquadmath DESTDIR=${pkgdir} install-nodist_libsubincludeHEADERS
- make -C $CHOST/libsanitizer DESTDIR=${pkgdir} install-nodist_{saninclude,toolexeclib}HEADERS
- make -C $CHOST/libsanitizer/asan DESTDIR=${pkgdir} install-nodist_toolexeclibHEADERS
- make -C $CHOST/libmpx DESTDIR=${pkgdir} install-nodist_toolexeclibHEADERS
-
- make -C libiberty DESTDIR=${pkgdir} install
- # install PIC version of libiberty
- install -m644 ${srcdir}/gcc-build/libiberty/pic/libiberty.a ${pkgdir}/usr/lib
-
- make -C gcc DESTDIR=${pkgdir} install-man install-info
- rm ${pkgdir}/usr/share/man/man1/{gccgo,gfortran}.1
- rm ${pkgdir}/usr/share/info/{gccgo,gfortran,gnat-style,gnat_rm,gnat_ugn}.info
-
- make -C libcpp DESTDIR=${pkgdir} install
- make -C gcc DESTDIR=${pkgdir} install-po
+ install -m755 -t "$pkgdir/usr/bin/" gcc/gcov{,-tool}
+ install -m755 -t "$pkgdir/${_libdir}/" gcc/{cc1,cc1plus,collect2,lto1}
+
+ make -C $CHOST/libgcc DESTDIR="$pkgdir" install
+ make -C $CHOST/32/libgcc DESTDIR="$pkgdir" install
+ rm -f "$pkgdir"/usr/lib{,32}/libgcc_s.so*
+
+ make -C $CHOST/libstdc++-v3/src DESTDIR="$pkgdir" install
+ make -C $CHOST/libstdc++-v3/include DESTDIR="$pkgdir" install
+ make -C $CHOST/libstdc++-v3/libsupc++ DESTDIR="$pkgdir" install
+ make -C $CHOST/libstdc++-v3/python DESTDIR="$pkgdir" install
+ make -C $CHOST/32/libstdc++-v3/src DESTDIR="$pkgdir" install
+ make -C $CHOST/32/libstdc++-v3/include DESTDIR="$pkgdir" install
+ make -C $CHOST/32/libstdc++-v3/libsupc++ DESTDIR="$pkgdir" install
+
+ make DESTDIR="$pkgdir" install-libcc1
+ install -d "$pkgdir/usr/share/gdb/auto-load/usr/lib"
+ mv "$pkgdir"/usr/lib/libstdc++.so.6.*-gdb.py \
+ "$pkgdir/usr/share/gdb/auto-load/usr/lib/"
+ rm "$pkgdir"/usr/lib{,32}/libstdc++.so*
+
+ make DESTDIR="$pkgdir" install-fixincludes
+ make -C gcc DESTDIR="$pkgdir" install-mkheaders
+
+ make -C lto-plugin DESTDIR="$pkgdir" install
+ install -dm755 "$pkgdir"/usr/lib/bfd-plugins/
+ ln -s /${_libdir}/liblto_plugin.so \
+ "$pkgdir/usr/lib/bfd-plugins/"
+
+ make -C $CHOST/libcilkrts DESTDIR="$pkgdir" install-nodist_{toolexeclib,cilkinclude}HEADERS
+ make -C $CHOST/libgomp DESTDIR="$pkgdir" install-nodist_{libsubinclude,toolexeclib}HEADERS
+ make -C $CHOST/libitm DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS
+ make -C $CHOST/libquadmath DESTDIR="$pkgdir" install-nodist_libsubincludeHEADERS
+ make -C $CHOST/libsanitizer DESTDIR="$pkgdir" install-nodist_{saninclude,toolexeclib}HEADERS
+ make -C $CHOST/libsanitizer/asan DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS
+ make -C $CHOST/libmpx DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS
+ make -C $CHOST/32/libcilkrts DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS
+ make -C $CHOST/32/libgomp DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS
+ make -C $CHOST/32/libitm DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS
+ make -C $CHOST/32/libsanitizer DESTDIR="$pkgdir" install-nodist_{saninclude,toolexeclib}HEADERS
+ make -C $CHOST/32/libsanitizer/asan DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS
+ make -C $CHOST/32/libmpx DESTDIR="$pkgdir" install-nodist_toolexeclibHEADERS
+
+ make -C libiberty DESTDIR="$pkgdir" install
+ install -m644 libiberty/pic/libiberty.a "$pkgdir/usr/lib"
+
+ make -C gcc DESTDIR="$pkgdir" install-man install-info
+ rm "$pkgdir"/usr/share/man/man1/{gccgo,gfortran}.1
+ rm "$pkgdir"/usr/share/info/{gccgo,gfortran,gnat-style,gnat_rm,gnat_ugn}.info
+
+ make -C libcpp DESTDIR="$pkgdir" install
+ make -C gcc DESTDIR="$pkgdir" install-po
# many packages expect this symlink
- ln -s gcc ${pkgdir}/usr/bin/cc
+ ln -s gcc "$pkgdir"/usr/bin/cc
# POSIX conformance launcher scripts for c89 and c99
- cat > $pkgdir/usr/bin/c89 <<"EOF"
-#!/bin/sh
-fl="-std=c89"
-for opt; do
- case "$opt" in
- -ansi|-std=c89|-std=iso9899:1990) fl="";;
- -std=*) echo "`basename $0` called with non ANSI/ISO C option $opt" >&2
- exit 1;;
- esac
-done
-exec gcc $fl ${1+"$@"}
-EOF
-
- cat > $pkgdir/usr/bin/c99 <<"EOF"
-#!/bin/sh
-fl="-std=c99"
-for opt; do
- case "$opt" in
- -std=c99|-std=iso9899:1999) fl="";;
- -std=*) echo "`basename $0` called with non ISO C99 option $opt" >&2
- exit 1;;
- esac
-done
-exec gcc $fl ${1+"$@"}
-EOF
-
- chmod 755 $pkgdir/usr/bin/c{8,9}9
+ install -Dm755 "$srcdir/c89" "$pkgdir/usr/bin/c89"
+ install -Dm755 "$srcdir/c99" "$pkgdir/usr/bin/c99"
# install the libstdc++ man pages
- make -C $CHOST/libstdc++-v3/doc DESTDIR=$pkgdir doc-install-man
+ make -C $CHOST/libstdc++-v3/doc DESTDIR="$pkgdir" doc-install-man
+
+ # remove files provided by lib32-gcc-libs
+ rm -f "$pkgdir"/usr/lib32/lib{stdc++,gcc_s}.so
# Install Runtime Library Exception
- install -d ${pkgdir}/usr/share/licenses/gcc/
- ln -s ../gcc-libs/RUNTIME.LIBRARY.EXCEPTION ${pkgdir}/usr/share/licenses/gcc/
+ install -d "$pkgdir/usr/share/licenses/$pkgname/"
+ ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \
+ "$pkgdir/usr/share/licenses/$pkgname/"
}
-package_gcc-fortran()
-{
- pkgdesc="Fortran front-end for GCC"
+package_gcc-fortran() {
+ pkgdesc='Fortran front-end for GCC'
depends=("gcc=$pkgver-$pkgrel")
- options=('!emptydirs')
- install=gcc-fortran.install
+ provides=($pkgname-multilib)
+ replaces=($pkgname-multilib)
- cd ${srcdir}/gcc-build
- make -C $CHOST/libgfortran DESTDIR=$pkgdir install-{caf,my}execlibLTLIBRARIES \
+ cd gcc-build
+ make -C $CHOST/libgfortran DESTDIR="$pkgdir" install-cafexeclibLTLIBRARIES \
install-{toolexeclibDATA,nodist_fincludeHEADERS}
- make -C $CHOST/libgomp DESTDIR=$pkgdir install-nodist_fincludeHEADERS
- make -C gcc DESTDIR=$pkgdir fortran.install-{common,man,info}
- install -Dm755 gcc/f951 $pkgdir/${_libdir}/f951
+ make -C $CHOST/32/libgfortran DESTDIR=$pkgdir install-cafexeclibLTLIBRARIES \
+ install-{toolexeclibDATA,nodist_fincludeHEADERS}
+ make -C $CHOST/libgomp DESTDIR="$pkgdir" install-nodist_fincludeHEADERS
+ make -C gcc DESTDIR="$pkgdir" fortran.install-{common,man,info}
+ install -Dm755 gcc/f951 "$pkgdir/${_libdir}/f951"
- ln -s gfortran ${pkgdir}/usr/bin/f95
+ ln -s gfortran "$pkgdir/usr/bin/f95"
# Install Runtime Library Exception
- install -d ${pkgdir}/usr/share/licenses/gcc-fortran/
- ln -s ../gcc-libs/RUNTIME.LIBRARY.EXCEPTION ${pkgdir}/usr/share/licenses/gcc-fortran/
+ install -d "$pkgdir/usr/share/licenses/$pkgname/"
+ ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \
+ "$pkgdir/usr/share/licenses/$pkgname/"
}
-package_gcc-objc()
-{
- pkgdesc="Objective-C front-end for GCC"
+package_gcc-objc() {
+ pkgdesc='Objective-C front-end for GCC'
depends=("gcc=$pkgver-$pkgrel")
+ provides=($pkgname-multilib)
+ replaces=($pkgname-multilib)
- cd ${srcdir}/gcc-build
- make DESTDIR=$pkgdir -C $CHOST/libobjc install-headers
- install -dm755 $pkgdir/${_libdir}
- install -m755 gcc/cc1obj{,plus} $pkgdir/${_libdir}/
+ cd gcc-build
+ make DESTDIR="$pkgdir" -C $CHOST/libobjc install-headers
+ install -dm755 "$pkgdir/${_libdir}"
+ install -m755 gcc/cc1obj{,plus} "$pkgdir/${_libdir}/"
# Install Runtime Library Exception
- install -d ${pkgdir}/usr/share/licenses/gcc-objc/
- ln -s ../gcc-libs/RUNTIME.LIBRARY.EXCEPTION ${pkgdir}/usr/share/licenses/gcc-objc/
+ install -d "$pkgdir/usr/share/licenses/$pkgname/"
+ ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \
+ "$pkgdir/usr/share/licenses/$pkgname/"
}
-package_gcc-ada()
-{
- pkgdesc="Ada front-end for GCC (GNAT)"
+package_gcc-ada() {
+ pkgdesc='Ada front-end for GCC (GNAT)'
depends=("gcc=$pkgver-$pkgrel")
- options=('staticlibs' '!emptydirs')
- install=gcc-ada.install
+ provides=($pkgname-multilib)
+ replaces=($pkgname-multilib)
+ options+=(staticlibs)
+
+ cd gcc-build/gcc
+ make DESTDIR="$pkgdir" ada.install-{common,info}
+ install -m755 gnat1 "$pkgdir/${_libdir}"
- cd ${srcdir}/gcc-build/gcc
- make DESTDIR=$pkgdir ada.install-{common,info}
- install -m755 gnat1 $pkgdir/${_libdir}
+ cd "$srcdir"/gcc-build/$CHOST/32/libada
+ make DESTDIR=${pkgdir} INSTALL="install" \
+ INSTALL_DATA="install -m644" install-gnatlib
- ln -s gcc ${pkgdir}/usr/bin/gnatgcc
+ ln -s gcc "$pkgdir/usr/bin/gnatgcc"
# insist on dynamic linking, but keep static libraries because gnatmake complains
- mv ${pkgdir}/${_libdir}/adalib/libgna{rl,t}-${_pkgver}.so ${pkgdir}/usr/lib
- ln -s libgnarl-${_pkgver}.so ${pkgdir}/usr/lib/libgnarl.so
- ln -s libgnat-${_pkgver}.so ${pkgdir}/usr/lib/libgnat.so
- rm ${pkgdir}/${_libdir}/adalib/libgna{rl,t}.so
+ mv "$pkgdir"/${_libdir}/adalib/libgna{rl,t}-${_majorver}.so "$pkgdir/usr/lib"
+ ln -s libgnarl-${_majorver}.so "$pkgdir/usr/lib/libgnarl.so"
+ ln -s libgnat-${_majorver}.so "$pkgdir/usr/lib/libgnat.so"
+ rm -f "$pkgdir"/${_libdir}/adalib/libgna{rl,t}.so
+
+ install -d "$pkgdir/usr/lib32/"
+ mv "$pkgdir"/${_libdir}/32/adalib/libgna{rl,t}-${_majorver}.so "$pkgdir/usr/lib32"
+ ln -s libgnarl-${_majorver}.so "$pkgdir/usr/lib32/libgnarl.so"
+ ln -s libgnat-${_majorver}.so "$pkgdir/usr/lib32/libgnat.so"
+ rm -f "$pkgdir"/${_libdir}/32/adalib/libgna{rl,t}.so
# Install Runtime Library Exception
- install -d ${pkgdir}/usr/share/licenses/gcc-ada/
- ln -s ../gcc-libs/RUNTIME.LIBRARY.EXCEPTION ${pkgdir}/usr/share/licenses/gcc-ada/
+ install -d "$pkgdir/usr/share/licenses/$pkgname/"
+ ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \
+ "$pkgdir/usr/share/licenses/$pkgname/"
}
-package_gcc-go()
-{
- pkgdesc="Go front-end for GCC"
+package_gcc-go() {
+ pkgdesc='Go front-end for GCC'
depends=("gcc=$pkgver-$pkgrel")
- conflicts=('go')
- options=('!emptydirs')
- install=gcc-go.install
+ provides=("go=1.8.1" $pkgname-multilib)
+ replaces=($pkgname-multilib)
+ conflicts=(go)
+
+ cd gcc-build
+ make -C $CHOST/libgo DESTDIR="$pkgdir" install-exec-am
+ make -C $CHOST/32/libgo DESTDIR="$pkgdir" install-exec-am
+ make DESTDIR="$pkgdir" install-gotools
+ make -C gcc DESTDIR="$pkgdir" go.install-{common,man,info}
+
+ rm -f "$pkgdir"/usr/lib{,32}/libgo.so*
+ install -Dm755 gcc/go1 "$pkgdir/${_libdir}/go1"
+
+ # Install Runtime Library Exception
+ install -d "$pkgdir/usr/share/licenses/$pkgname/"
+ ln -s /usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION \
+ "$pkgdir/usr/share/licenses/$pkgname/"
+}
+
+package_lib32-gcc-libs() {
+ pkgdesc='32-bit runtime libraries shipped by GCC'
+ depends=('lib32-glibc>=2.26')
+ groups=(multilib-devel)
+ options=(!emptydirs !strip)
+
+ cd gcc-build
+
+ make -C $CHOST/32/libgcc DESTDIR="$pkgdir" install-shared
+ rm -f "$pkgdir/$_libdir/32/libgcc_eh.a"
+
+ for lib in libatomic \
+ libcilkrts \
+ libgfortran \
+ libgo \
+ libgomp \
+ libitm \
+ libquadmath \
+ libsanitizer/{a,l,ub}san \
+ libstdc++-v3/src \
+ libvtv; do
+ make -C $CHOST/32/$lib DESTDIR="$pkgdir" install-toolexeclibLTLIBRARIES
+ done
- cd ${srcdir}/gcc-build
- make -C $CHOST/libgo DESTDIR=$pkgdir install-exec-am
- rm ${pkgdir}/usr/lib/libgo.so*
- make -C gcc DESTDIR=$pkgdir go.install-{common,man,info}
- install -Dm755 gcc/go1 $pkgdir/${_libdir}/go1
+ make -C $CHOST/32/libobjc DESTDIR="$pkgdir" install-libs
+ make -C $CHOST/32/libmpx DESTDIR="$pkgdir" install
+ rm -f "$pkgdir/usr/lib32/libmpx.spec"
- make DESTDIR=${pkgdir} install-gotools
+ # remove files provided by gcc-libs
+ rm -rf "$pkgdir"/usr/lib
# Install Runtime Library Exception
- install -d ${pkgdir}/usr/share/licenses/gcc-go/
- ln -s ../gcc-libs/RUNTIME.LIBRARY.EXCEPTION ${pkgdir}/usr/share/licenses/gcc-go/
+ install -Dm644 "$srcdir/gcc/COPYING.RUNTIME" \
+ "$pkgdir/usr/share/licenses/lib32-gcc-libs/RUNTIME.LIBRARY.EXCEPTION"
}
diff --git a/abs/core/gcc/Unlink-the-response-file.patch b/abs/core/gcc/Unlink-the-response-file.patch
deleted file mode 100644
index 55c95a7..0000000
--- a/abs/core/gcc/Unlink-the-response-file.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From f591a95d1532ac7791c146a8e55ba3a32b3e476f Mon Sep 17 00:00:00 2001
-From: ebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>
-Date: Tue, 23 Jun 2015 20:48:07 +0000
-Subject: [PATCH] * collect-utils.c (collect_wait): Unlink the
- response file here instead of... (do_wait): ...here.
- (utils_cleanup): ...and here.
-
-git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@224858 138bc75d-0d04-0410-961f-82ee72b054a4
----
- gcc/ChangeLog | 7 +++++++
- gcc/collect-utils.c | 14 ++++++--------
- 2 files changed, 13 insertions(+), 8 deletions(-)
-
-diff --git a/gcc/collect-utils.c b/gcc/collect-utils.c
-index 6bbe9eb..517a075 100644
---- a/gcc/collect-utils.c
-+++ b/gcc/collect-utils.c
-@@ -68,6 +68,12 @@ collect_wait (const char *prog, struct pex_obj *pex)
- fatal_error (input_location, "can't get program status: %m");
- pex_free (pex);
-
-+ if (response_file && !save_temps)
-+ {
-+ unlink (response_file);
-+ response_file = NULL;
-+ }
-+
- if (status)
- {
- if (WIFSIGNALED (status))
-@@ -90,12 +96,6 @@ do_wait (const char *prog, struct pex_obj *pex)
- int ret = collect_wait (prog, pex);
- if (ret != 0)
- fatal_error (input_location, "%s returned %d exit status", prog, ret);
--
-- if (response_file && !save_temps)
-- {
-- unlink (response_file);
-- response_file = NULL;
-- }
- }
-
-
-@@ -224,7 +224,5 @@ utils_cleanup (bool from_signal)
- calls to maybe_unlink fails. */
- cleanup_done = true;
-
-- if (response_file)
-- maybe_unlink (response_file);
- tool_cleanup (from_signal);
- }
---
-2.7.1
-
diff --git a/abs/core/gcc/c89 b/abs/core/gcc/c89
new file mode 100644
index 0000000..35486ea
--- /dev/null
+++ b/abs/core/gcc/c89
@@ -0,0 +1,10 @@
+#!/bin/sh
+fl="-std=c89"
+for opt; do
+ case "$opt" in
+ -ansi|-std=c89|-std=iso9899:1990) fl="";;
+ -std=*) echo "`basename $0` called with non ANSI/ISO C option $opt" >&2
+ exit 1;;
+ esac
+done
+exec gcc $fl ${1+"$@"}
diff --git a/abs/core/gcc/c99 b/abs/core/gcc/c99
new file mode 100644
index 0000000..88dd806
--- /dev/null
+++ b/abs/core/gcc/c99
@@ -0,0 +1,10 @@
+#!/bin/sh
+fl="-std=c99"
+for opt; do
+ case "$opt" in
+ -std=c99|-std=iso9899:1999) fl="";;
+ -std=*) echo "`basename $0` called with non ISO C99 option $opt" >&2
+ exit 1;;
+ esac
+done
+exec gcc $fl ${1+"$@"}
diff --git a/abs/core/gcc/gcc-ada.install b/abs/core/gcc/gcc-ada.install
deleted file mode 100644
index df0553a..0000000
--- a/abs/core/gcc/gcc-ada.install
+++ /dev/null
@@ -1,20 +0,0 @@
-infodir=usr/share/info
-filelist=(gnat-style.info gnat_rm.info gnat_ugn.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/abs/core/gcc/gcc-fortran.install b/abs/core/gcc/gcc-fortran.install
deleted file mode 100644
index b15d89a..0000000
--- a/abs/core/gcc/gcc-fortran.install
+++ /dev/null
@@ -1,16 +0,0 @@
-infodir=usr/share/info
-file="gfortran.info"
-
-post_install() {
- [ -x usr/bin/install-info ] || return 0
- install-info $infodir/$file.gz $infodir/dir 2> /dev/null
-}
-
-post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- [ -x usr/bin/install-info ] || return 0
- install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
-}
diff --git a/abs/core/gcc/gcc-go.install b/abs/core/gcc/gcc-go.install
deleted file mode 100644
index 7dc50de..0000000
--- a/abs/core/gcc/gcc-go.install
+++ /dev/null
@@ -1,20 +0,0 @@
-infodir=usr/share/info
-filelist=(gccgo.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/abs/core/gcc/gcc-libs.install b/abs/core/gcc/gcc-libs.install
deleted file mode 100644
index 23553b8..0000000
--- a/abs/core/gcc/gcc-libs.install
+++ /dev/null
@@ -1,16 +0,0 @@
-infodir=usr/share/info
-filelist=(libgomp.info libquadmath.info)
-
-post_upgrade() {
- [ -x usr/bin/install-info ] || return 0
- for file in ${filelist[@]}; do
- install-info $infodir/$file.gz $infodir/dir 2> /dev/null
- done
-}
-
-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/abs/core/gcc/gcc.install b/abs/core/gcc/gcc.install
deleted file mode 100644
index 3407a5e..0000000
--- a/abs/core/gcc/gcc.install
+++ /dev/null
@@ -1,20 +0,0 @@
-infodir=usr/share/info
-filelist=(cpp.info cppinternals.info gcc.info gccinstall.info gccint.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/abs/core/gdb/PKGBUILD b/abs/core/gdb/PKGBUILD
index 6e0648b..12c1933 100644
--- a/abs/core/gdb/PKGBUILD
+++ b/abs/core/gdb/PKGBUILD
@@ -1,43 +1,71 @@
-# $Id: PKGBUILD 172148 2012-11-30 04:20:34Z allan $
+# $Id$
# Maintainer: Allan McRae <allan@archlinux.org>
# Contributor: Jan de Groot <jgc@archlinux.org>
-pkgname=gdb
-pkgver=7.5.1
+pkgbase=gdb
+# gdb-common is a package that contains files common for all cross compiled versions
+# of gdb (for arm/avr/...)
+pkgname=(gdb gdb-common)
+pkgver=8.1
pkgrel=1
-pkgdesc="The GNU Debugger"
-arch=('i686' 'x86_64')
-url="http://www.gnu.org/software/gdb/"
-license=('GPL3')
-depends=('ncurses' 'expat' 'python2')
-makedepends=('texinfo')
-backup=('etc/gdb/gdbinit')
-options=('!libtool')
-install=gdb.install
-source=(http://ftp.gnu.org/gnu/gdb/${pkgname}-${pkgver}.tar.bz2{,.sig})
-md5sums=('3f48f468b24447cf24820054ff6e85b1'
- '31ab569c78a01d3f946c6fe0336175fe')
+pkgdesc='The GNU Debugger'
+arch=(x86_64)
+url='http://www.gnu.org/software/gdb/'
+license=(GPL3)
+makedepends=(texinfo python guile2.0 ncurses expat xz)
+source=(https://ftp.gnu.org/gnu/gdb/${pkgname}-${pkgver}.tar.xz{,.sig})
+sha1sums=('641861f7d3f22b6a23bc3e801f0ff29a78375490'
+ 'SKIP')
+validpgpkeys=('F40ADB902B24264AA42E50BF92EDB04BFF325CF3') # Joel Brobecker
+
+prepare() {
+ cd gdb-$pkgver
+
+ # hack! - libiberty configure tests for header files using "$CPP $CPPFLAGS"
+ sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" libiberty/configure
+}
build() {
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd gdb-$pkgver
./configure --prefix=/usr --disable-nls \
--with-system-readline \
- --with-python=/usr/bin/python2 \
+ --with-python=/usr/bin/python3 \
+ --with-guile=guile-2.0 \
--with-system-gdbinit=/etc/gdb/gdbinit
make
}
-package() {
- cd ${srcdir}/${pkgname}-${pkgver}
- make DESTDIR=${pkgdir} install
+package_gdb-common() {
+ depends=(python guile2.0)
+
+ cd gdb-$pkgver
+ make DESTDIR=$pkgdir install
+
+ # resolve conflicts with binutils
+ rm $pkgdir/usr/include/{ansidecl,bfd,bfdlink,dis-asm,plugin-api,symcat}.h
+ rm $pkgdir/usr/share/info/bfd.info
+ rm $pkgdir/usr/lib/{libbfd,libopcodes}.a
+
+ rm -r $pkgdir/usr/{bin,include,lib,share/info,share/man}
+}
+
+package_gdb() {
+ depends=(ncurses expat xz mpfr gdb-common=$pkgver)
+ backup=(etc/gdb/gdbinit)
+
+ cd gdb-$pkgver
+ make DESTDIR=$pkgdir install
# install "custom" system gdbinit
install -dm755 $pkgdir/etc/gdb
touch $pkgdir/etc/gdb/gdbinit
# resolve conflicts with binutils
- rm ${pkgdir}/usr/include/{ansidecl,bfd,bfdlink,dis-asm,symcat}.h
- rm ${pkgdir}/usr/lib/{libbfd,libiberty,libopcodes}.a
- rm ${pkgdir}/usr/share/info/{bfd,configure,standards}.info
+ rm $pkgdir/usr/include/{ansidecl,bfd,bfdlink,dis-asm,plugin-api,symcat}.h
+ rm $pkgdir/usr/share/info/bfd.info
+ rm $pkgdir/usr/lib/{libbfd,libopcodes}.a
+
+ # comes from gdb-common
+ rm -r $pkgdir/usr/share/gdb/
}
diff --git a/abs/core/gdb/gdb.install b/abs/core/gdb/gdb.install
deleted file mode 100644
index 986ec54..0000000
--- a/abs/core/gdb/gdb.install
+++ /dev/null
@@ -1,18 +0,0 @@
-infodir=usr/share/info
-filelist=(annotate.info gdb.info gdb.info-1 gdb.info-2 gdb.info-3 gdb.info-4 gdbint.info gdbint.info-1 gdbint.info-2 stabs.info)
-
-post_install() {
- for file in ${filelist[@]}; do
- install-info $infodir/$file.gz $infodir/dir 2> /dev/null
- done
-}
-
-post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- for file in ${filelist[@]}; do
- install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
- done
-}
diff --git a/abs/core/gettext/PKGBUILD b/abs/core/gettext/PKGBUILD
index 87bcf54..c8dbf03 100644
--- a/abs/core/gettext/PKGBUILD
+++ b/abs/core/gettext/PKGBUILD
@@ -2,17 +2,16 @@
# Maintainer:
pkgname=gettext
-pkgver=0.19.5
-pkgrel=1
+pkgver=0.19.8.1
+pkgrel=2
pkgdesc="GNU internationalization library"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://www.gnu.org/software/gettext/"
license=('GPL')
groups=('base' 'base-devel')
depends=('gcc-libs' 'acl' 'sh' 'glib2' 'libunistring')
optdepends=('git: for autopoint infrastructure updates')
options=(!docs)
-install=gettext.install
source=(ftp://ftp.gnu.org/pub/gnu/gettext/${pkgname}-${pkgver}.tar.gz{,.sig})
validpgpkeys=('462225C3B46F34879FC8496CD605848ED7E69871') # Daiki Ueno
@@ -31,5 +30,5 @@ package() {
cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
-md5sums=('0f3c108d64e8dcd9e6fbdff4ca722feb'
+md5sums=('97e034cf8ce5ba73a28ff6c3c0638092'
'SKIP')
diff --git a/abs/core/gettext/gettext.install b/abs/core/gettext/gettext.install
deleted file mode 100644
index 0ff5294..0000000
--- a/abs/core/gettext/gettext.install
+++ /dev/null
@@ -1,22 +0,0 @@
-infodir=/usr/share/info
-filelist=(gettext.info.gz autosprintf.info.gz)
-
-post_install() {
- [ -x usr/bin/install-info ] || return 0
- for file in ${filelist[@]}; do
- install-info $infodir/$file $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 $infodir/dir 2> /dev/null
- done
-}
-
-# vim:set ts=2 sw=2 et:
diff --git a/abs/core/ghostscript/PKGBUILD b/abs/core/ghostscript/PKGBUILD
index 42dada7..7d3a869 100644
--- a/abs/core/ghostscript/PKGBUILD
+++ b/abs/core/ghostscript/PKGBUILD
@@ -1,100 +1,105 @@
# $Id$
# Maintainer: AndyRTR <andyrtr@archlinux.org>
-### !!! rebuild groff from core that picks up hardcoding the GS versioned font path !!! ###
-
-pkgname=ghostscript
-pkgver=9.18
-pkgrel=6
+pkgbase=ghostscript
+pkgname=(ghostscript ghostxps ghostpcl)
+pkgver=9.22
+pkgrel=7
pkgdesc="An interpreter for the PostScript language"
-arch=('i686' 'x86_64')
-license=('AGPL' 'custom')
-depends=('libxt' 'libcups' 'fontconfig' 'jasper' 'zlib' 'libpng>=1.5.7' 'libjpeg'
- 'libtiff>=4.0.0' 'lcms2' 'dbus' 'libpaper')
-makedepends=('gtk3' 'gnutls' 'hardening-wrapper')
-optdepends=('texlive-core: needed for dvipdf'
- 'gtk3: needed for gsx')
-url="http://www.ghostscript.com/"
-source=(http://downloads.ghostscript.com/public/ghostscript-${pkgver}.tar.bz2
- ghostscript-sys-zlib.patch
- bug_696246.diff
- add_gserrors_h.diff
- fix_check_for_using_shared_freetype_lib.diff)
-#options=('!makeflags')
-# http://downloads.ghostscript.com/public/SHA1SUMS
-sha1sums=('388fea50a38e422a4c6ff27c184491bf5ecb96e1'
- 'e054caf753df4d67221b29a2eac66130653f7556'
- 'f259eaac3beb0ec346bb2d4d2455e4e3baddecd4'
- 'ca686fed1af36d1f9fa866b47ff129c71d6a19ff'
- '8258043b111832fe52989ccb00d6d87285fcad81')
+url="https://www.ghostscript.com/"
+arch=('x86_64')
+license=('AGPL3' 'custom')
+depends=('libxt' 'libcups' 'fontconfig' 'zlib' 'libpng' 'libjpeg' 'jbig2dec'
+ 'libtiff' 'lcms2' 'dbus' 'libpaper' 'ijs' 'openjpeg2')
+makedepends=('gtk3' 'gnutls' 'glu' 'freeglut')
+# https://github.com/ArtifexSoftware/ghostpdl-downloads/releases
+source=(https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs${pkgver/./}/ghostpdl-${pkgver}.tar.xz
+ ghostscript-9.22-restore-flushpage.patch)
+sha256sums=('f4e46bc1f8285a61ab036007705fc2b532cc40f4448fe6bc156bd130733f306b'
+ '22156c892ea27572386f5211f51a10a17079a9974ded9ec9af3f37a93a1bb8ca')
prepare() {
- cd ghostscript-${pkgver}
- # fix build with system zlib
- patch -Np1 -i ${srcdir}/ghostscript-sys-zlib.patch
- # fix http://bugs.ghostscript.com/show_bug.cgi?id=696246 - FS#46637, FS#46734?
- patch -Np1 -i ${srcdir}/bug_696246.diff
- # add a missing header; FS#46928
- patch -Np1 -i ${srcdir}/add_gserrors_h.diff
- # fix use system freetype - FS#46744
- # http://git.ghostscript.com/?p=ghostpdl.git;a=patch;h=8f5d28536e4518716fdfe974e580194c8f57871d
- patch -Np1 -i ${srcdir}/fix_check_for_using_shared_freetype_lib.diff
-}
+ cd ghostpdl-${pkgver}
+
+ # http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=19ebb5f1f497b6f2d50fe13d17d3e627dfb6c868
+ patch -Np1 --no-backup-if-mismatch -i ../ghostscript-9.22-restore-flushpage.patch
-build() {
- cd ghostscript-${pkgver}
-
# force it to use system-libs
- # keep heavily patched included openjpeg, leads to segfault with system openjpeg
- # https://bugs.archlinux.org/task/38226
- rm -rf jpeg libpng zlib jasper expat tiff lcms lcms2 freetype cups/libs # jbig2dec is in community
+ rm -r cups/libs expat ijs jbig2dec jpeg lcms2 libpng openjpeg tiff zlib
+ # using tree freetype because of https://bugs.archlinux.org/task/56849
+
+ autoreconf -fvi
+}
- autoconf --force
+build() {
+ cd ghostpdl-${pkgver}
./configure --prefix=/usr \
- --enable-dynamic \
- --with-ijs \
- --with-jbig2dec \
- --with-omni \
- --with-x \
- --with-drivers=ALL\
- --with-fontpath=/usr/share/fonts/Type1:/usr/share/fonts \
- --enable-fontconfig \
- --enable-freetype \
- --enable-openjpeg \
- --without-luratech \
- --without-omni \
- --with-system-libtiff \
- --with-libpaper \
- --disable-compile-inits #--help # needed for linking with system-zlib
- make
-
- # Build IJS
- cd ijs
- sed -i "s:AM_PROG_CC_STDC:AC_PROG_CC:g" configure.ac
- ./autogen.sh
- ./configure --prefix=/usr --enable-shared --disable-static
- make
+ --enable-dynamic \
+ --with-ijs \
+ --with-jbig2dec \
+ --with-x \
+ --with-drivers=ALL \
+ --with-fontpath=/usr/share/fonts/gsfonts \
+ --enable-fontconfig \
+ --enable-freetype \
+ --enable-openjpeg \
+ --without-luratech \
+ --with-system-libtiff \
+ --with-libpaper \
+ --disable-compile-inits #--help # needed for linking with system-zlib
+
+ make so-only
}
-package() {
- cd ghostscript-${pkgver}
+package_ghostscript() {
+ optdepends=('texlive-core: needed for dvipdf'
+ 'gtk3: needed for gsx')
+
+ cd ghostpdl-${pkgver}
+
make DESTDIR="${pkgdir}" \
- cups_serverroot="${pkgdir}"/etc/cups \
- cups_serverbin="${pkgdir}"/usr/lib/cups install install-so
+ CUPSSERVERROOT="${pkgdir}$(cups-config --serverroot)" \
+ CUPSSERVERBIN="${pkgdir}$(cups-config --serverbin)" \
+ soinstall
+ ln -s gsc "${pkgdir}"/usr/bin/gs
# install missing doc files # http://bugs.archlinux.org/task/18023
- install -m 644 "${srcdir}"/ghostscript-${pkgver}/doc/{Ps2ps2.htm,gs-vms.hlp,gsdoc.el,pscet_status.txt} "${pkgdir}"/usr/share/ghostscript/$pkgver/doc/
-
- install -D -m644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
-
- # remove unwanted localized man-pages
- rm -rf "$pkgdir"/usr/share/man/[^man1]*
-
- # install IJS
- cd ijs
- make DESTDIR="${pkgdir}" install
-
- # remove filters that are now maintained in cups-filters as upstream home
- rm -rf "$pkgdir"/usr/lib/cups/filter/{gstopxl,gstoraster}
+ install -Dt "${pkgdir}"/usr/share/ghostscript/${pkgver}/doc \
+ -m644 doc/{VectorDevices.htm,gs-vms.hlp,gsdoc.el,pscet_status.txt}
+
+ # remove unwanted localized manpages
+ rm -r "${pkgdir}"/usr/share/man/de
+
+ install -Dt "${pkgdir}"/usr/share/licenses/${pkgname} -m644 LICENSE
+}
+
+package_ghostxps() {
+ pkgdesc="${pkgdesc/PostScript/XPS document}"
+ depends=("ghostscript=${pkgver}-${pkgrel}")
+
+ cd ghostpdl-${pkgver}
+
+ install -Dt "${pkgdir}"/usr/bin sobin/gxpsc
+ ln -s gxpsc "${pkgdir}"/usr/bin/gxps
+
+ install -Dt "${pkgdir}"/usr/lib sobin/libgxps.so.${pkgver}
+ ln -s libgxps.so.${pkgver} "${pkgdir}"/usr/lib/libgxps.so.${pkgver%.*}
+
+ install -Dt "${pkgdir}"/usr/share/licenses/${pkgname} -m644 LICENSE
+}
+
+package_ghostpcl() {
+ pkgdesc="${pkgdesc/PostScript/PCL 6}"
+ depends=("ghostscript=${pkgver}-${pkgrel}")
+
+ cd ghostpdl-${pkgver}
+
+ install -Dt "${pkgdir}"/usr/bin sobin/gpcl6c
+ ln -sf gpcl6c "${pkgdir}"/usr/bin/gpcl6
+
+ install -Dt "${pkgdir}"/usr/lib sobin/libgpcl6.so.${pkgver}
+ ln -s libgpcl6.so.${pkgver} "${pkgdir}"/usr/lib/libgpcl6.so.${pkgver%.*}
+
+ install -Dt "${pkgdir}"/usr/share/licenses/${pkgname} -m644 LICENSE
}
diff --git a/abs/core/ghostscript/add_gserrors_h.diff b/abs/core/ghostscript/add_gserrors_h.diff
deleted file mode 100644
index c34e486..0000000
--- a/abs/core/ghostscript/add_gserrors_h.diff
+++ /dev/null
@@ -1,43 +0,0 @@
-From feafe5e540a0545ec5d28f3f66bb542056bba495 Mon Sep 17 00:00:00 2001
-From: Chris Liddell <chris.liddell@artifex.com>
-Date: Fri, 23 Oct 2015 10:16:11 +0100
-Subject: [PATCH] Bug 696301: add gserrors.h to the installed files
-
-for the so-install target.
-
-Also remove a spurious (copy'n'paste error) comment.
-
-No cluster differences
----
- base/gserrors.h | 2 +-
- base/unix-dll.mak | 1 +
- 2 files changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/base/gserrors.h b/base/gserrors.h
-index 5f18081..cdebb38 100644
---- a/base/gserrors.h
-+++ b/base/gserrors.h
-@@ -25,7 +25,7 @@
- /* We don't use a typedef internally to avoid a lot of casting. */
-
- enum gs_error_type {
-- gs_error_ok = 0, /* unknown error */
-+ gs_error_ok = 0,
- gs_error_unknownerror = -1, /* unknown error */
- gs_error_dictfull = -2,
- gs_error_dictstackoverflow = -3,
-diff --git a/base/unix-dll.mak b/base/unix-dll.mak
-index 7b67aa1..73b4fa9 100644
---- a/base/unix-dll.mak
-+++ b/base/unix-dll.mak
-@@ -186,6 +186,7 @@ install-so-subtarget: so-subtarget
- ln -s $(GS_SONAME_MAJOR_MINOR) $(DESTDIR)$(libdir)/$(GS_SONAME_MAJOR)
- $(INSTALL_DATA) $(PSSRC)iapi.h $(DESTDIR)$(gsincludedir)iapi.h
- $(INSTALL_DATA) $(PSSRC)ierrors.h $(DESTDIR)$(gsincludedir)ierrors.h
-+ $(INSTALL_DATA) $(GLSRC)gserrors.h $(DESTDIR)$(gsincludedir)gserrors.h
- $(INSTALL_DATA) $(DEVSRC)gdevdsp.h $(DESTDIR)$(gsincludedir)gdevdsp.h
-
- soinstall:
---
-2.5.1
-
diff --git a/abs/core/ghostscript/bug_696246.diff b/abs/core/ghostscript/bug_696246.diff
deleted file mode 100644
index 4719eb5..0000000
--- a/abs/core/ghostscript/bug_696246.diff
+++ /dev/null
@@ -1,203 +0,0 @@
-From: Chris Liddell <chris.liddell@artifex.com>
-Date: Fri, 9 Oct 2015 09:54:10 +0000 (+0100)
-Subject: Bug 696246: devijs account for device sublassing.
-X-Git-Url: http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff_plain;h=b68e05c3
-
-Bug 696246: devijs account for device sublassing.
-
-The IJS device wasn't coping with the possibility it had been subclassed.
-
-No cluster differences
----
-
-diff --git a/devices/gdevijs.c b/devices/gdevijs.c
-index 5520716..a2e21ea 100644
---- a/devices/gdevijs.c
-+++ b/devices/gdevijs.c
-@@ -827,6 +827,10 @@ gsijs_open(gx_device *dev)
- if (code < 0)
- return code;
-
-+ while (dev->child)
-+ dev = dev->child;
-+ ijsdev = (gx_device_ijs *)dev;
-+
- if (use_outputfd) {
- /* Note: dup() may not be portable to all interesting IJS
- platforms. In that case, this branch should be #ifdef'ed out.
-From: Chris Liddell <chris.liddell@artifex.com>
-Date: Fri, 9 Oct 2015 11:54:44 +0000 (+0100)
-Subject: Bug 696246: patch the memory manager fields for sublassed devices.
-X-Git-Url: http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff_plain;h=95553954
-
-Bug 696246: patch the memory manager fields for sublassed devices.
-
-When we subclass a device, we were patching the "visible" type field - that is,
-the one referenced directly in the device structure. We were not patching
-the type information in the memory object header so, in particular, the
-garbage collector could end up calling the wrong methods for the subclassed
-device.
-
-No cluster differences.
----
-
-diff --git a/base/gdevdflt.c b/base/gdevdflt.c
-index 5768937..305f89d 100644
---- a/base/gdevdflt.c
-+++ b/base/gdevdflt.c
-@@ -17,6 +17,8 @@
- #include "math_.h"
- #include "memory_.h"
- #include "gx.h"
-+#include "gsstruct.h"
-+#include "gxobj.h"
- #include "gserrors.h"
- #include "gsropt.h"
- #include "gxcomp.h"
-@@ -26,6 +28,7 @@
- #include "gstrans.h" /* For gs_pdf14trans_t */
- #include "gxistate.h" /* for gs_image_state_s */
-
-+
- /* defined in gsdpram.c */
- int gx_default_get_param(gx_device *dev, char *Param, void *list);
-
-@@ -1294,6 +1297,11 @@ int gx_device_subclass(gx_device *dev_to_subclass, gx_device *new_prototype, uns
- ptr1 = ((char *)new_prototype) + sizeof(gx_device);
- memcpy(ptr, ptr1, new_prototype->params_size - sizeof(gx_device));
-
-+ /* We have to patch up the "type" parameters that the memory manage/garbage
-+ * collector will use, as well.
-+ */
-+ (((obj_header_t *)dev_to_subclass) - 1)->o_type = new_prototype->stype;
-+
- /* If the original device's stype structure was dynamically allocated, we need
- * to 'fixup' the contents, it's procs need to point to the new device's procs
- * for instance.
-diff --git a/base/lib.mak b/base/lib.mak
-index de78333..09b70e5 100644
---- a/base/lib.mak
-+++ b/base/lib.mak
-@@ -1210,7 +1210,7 @@ $(GLOBJ)gdevdsha.$(OBJ) : $(GLSRC)gdevdsha.c $(AK) $(gx_h)\
-
- $(GLOBJ)gdevdflt.$(OBJ) : $(GLSRC)gdevdflt.c $(AK) $(gx_h)\
- $(gserrors_h) $(gsropt_h) $(gxcomp_h) $(gxdevice_h) $(gxdevsop_h) $(math__h)\
-- $(MAKEDIRS)
-+ $(gsstruct_h) $(gxobj_h) $(MAKEDIRS)
- $(GLCC) $(GLO_)gdevdflt.$(OBJ) $(C_) $(GLSRC)gdevdflt.c
-
- $(GLOBJ)gdevdgbr.$(OBJ) : $(GLSRC)gdevdgbr.c $(AK) $(gx_h)\
-From 007bd77d08d800e6b07274d62e3c91be7c4a3f47 Mon Sep 17 00:00:00 2001
-From: Ken Sharp <ken.sharp@artifex.com>
-Date: Mon, 12 Oct 2015 16:36:11 +0100
-Subject: [PATCH] Guard against NULL 'base' for non-clist devices
-
-Bug #696246 "Ghostscript 9.18 with -dFirstPage/-dLastPage fails for ijs and some x11 devices"
-
-This is actually for the plib device. This device is currently (this will
-change in the next commit) set to BandingAuto, despite the fact that the
-device only works in banding mode.
-
-This can lead to use arriving in gdev_mem_open_scan_lines with all of
-mdev->bitmap_memory, mdev->line_pointers_memory and mdev->base being set to
-NULL. The code didn't check and assumed that mdev->base was valid, which
-led to a later seg fault.
-
-Here we just check to make sure it isn't NULL and return an error if it is.
-This doesn't prevent the possibility of garbage uninitialised values, but
-there's not much we can do to check that at this stage, devices are supposed
-to be initialised to 0 so this 'shouldn't' happen.
-
-No differences expected.
----
- base/gdevmem.c | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/base/gdevmem.c b/base/gdevmem.c
-index 3019451f..507fa19 100644
---- a/base/gdevmem.c
-+++ b/base/gdevmem.c
-@@ -471,6 +471,9 @@ gdev_mem_open_scan_lines(gx_device_memory *mdev, int setup_height)
- line_pointers_adjacent = false;
- }
- if (line_pointers_adjacent) {
-+ if (mdev->base == 0)
-+ return_error(gs_error_rangecheck);
-+
- gdev_mem_bits_size(mdev, mdev->width, mdev->height, &size);
- mdev->line_ptrs = (byte **)(mdev->base + size);
- }
---
-2.5.1
-
-From 1bdbe4f87dc57648821e613ebcc591b84e8b35b3 Mon Sep 17 00:00:00 2001
-From: Ken Sharp <ken.sharp@artifex.com>
-Date: Mon, 12 Oct 2015 16:38:09 +0100
-Subject: [PATCH] Ensure plib devices always use the clist
-
-Bug #696246 "Ghostscript 9.18 with -dFirstPage/-dLastPage fails for ijs and some x11 devices"
-
-the plib* class of devices only work if clist is present, but previously
-they left the banding_type set to 'auto', which meant that under some
-conditions we did not use the clist, leading to a seg fault.
-
-This commit simply forces banding_type to be 'BandingAlways'.
-
-No differences expected.
----
- devices/gdevplib.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/devices/gdevplib.c b/devices/gdevplib.c
-index 51bd7ea..87c6f46 100644
---- a/devices/gdevplib.c
-+++ b/devices/gdevplib.c
-@@ -691,6 +691,8 @@ plib_open(gx_device * pdev)
- bdev->printer_procs.buf_procs.size_buf_device = plib_size_buf_device;
- pdev->is_planar = 1;
-
-+ bdev->space_params.banding_type = BandingAlways;
-+
- /* You might expect us to call gdev_prn_open_planar rather than
- * gdev_prn_open, but if we do that, it overwrites the 2 function
- * pointers we've just overwritten! */
---
-2.5.1
-
-From 5571ddfa377c5d7d98f55af40e693814ac287ae4 Mon Sep 17 00:00:00 2001
-From: Ken Sharp <ken.sharp@artifex.com>
-Date: Mon, 12 Oct 2015 16:40:10 +0100
-Subject: [PATCH] prevent rinkj device crash when misconfigured (no SetupFile)
-
-Bug #696246 "Ghostscript 9.18 with -dFirstPage/-dLastPage fails for ijs and some x11 devices"
-
-The rinkj device requires a SetupFile to be given as a device parameter,
-however it doesn't actually check to see if one is given, and just tries
-to open the filename, with a predictable crash when none is given.
-
-Here we check the filename and attempt to ensure it is both present and
-minimally valid.
-
-No differences expected.
----
- devices/gdevrinkj.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/devices/gdevrinkj.c b/devices/gdevrinkj.c
-index f55bc60..12c396a 100644
---- a/devices/gdevrinkj.c
-+++ b/devices/gdevrinkj.c
-@@ -1193,6 +1193,10 @@ rinkj_print_page(gx_device_printer *pdev, FILE *file)
- int code = 0;
- RinkjDevice *cmyk_dev;
-
-+ if (rdev->setup_fn == 0 || rdev->setup_fn[0] == 0) {
-+ emprintf(rdev->memory, "Error, SetupFile not defined, output aborted\n");
-+ return 0;
-+ }
- cmyk_dev = rinkj_init(rdev, file);
- if (cmyk_dev == 0)
- return gs_note_error(gs_error_ioerror);
---
-2.5.1
-
diff --git a/abs/core/ghostscript/fix_check_for_using_shared_freetype_lib.diff b/abs/core/ghostscript/fix_check_for_using_shared_freetype_lib.diff
deleted file mode 100644
index b5b7b9b..0000000
--- a/abs/core/ghostscript/fix_check_for_using_shared_freetype_lib.diff
+++ /dev/null
@@ -1,30 +0,0 @@
-From 8f5d28536e4518716fdfe974e580194c8f57871d Mon Sep 17 00:00:00 2001
-From: Chris Liddell <chris.liddell@artifex.com>
-Date: Thu, 7 Jan 2016 09:03:10 +0000
-Subject: [PATCH] Bug 696281: fix check for using shared freetype lib
-
-When I changed the initial value of the Freetype source path variable (to reduce
-the risk of header search path problems), I neglected to fix the logic for
-falling back to the system's libfreetype2.
-
-Credit to Rodrigo Rivas Costa for spotting the problem.
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 0c97fcc..f533e46 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -811,7 +811,7 @@ if test x"$enable_fapi" != xno; then
- fi
- done
-
-- if test -z $FTSRCDIR; then
-+ if test x"$FTSRCDIR" = x"src"; then
- AC_MSG_RESULT([no])
- if test "x$PKGCONFIG" != x; then
- AC_MSG_CHECKING(for system freetype2 >= 2.4.2 with pkg-config)
---
-2.6.3
-
diff --git a/abs/core/ghostscript/ghostscript-9.22-restore-flushpage.patch b/abs/core/ghostscript/ghostscript-9.22-restore-flushpage.patch
new file mode 100644
index 0000000..c4b3673
--- /dev/null
+++ b/abs/core/ghostscript/ghostscript-9.22-restore-flushpage.patch
@@ -0,0 +1,28 @@
+diff -up ghostscript-9.22/Resource/Init/gs_init.ps.restore-flushpage ghostscript-9.22/Resource/Init/gs_init.ps
+--- ghostscript-9.22/Resource/Init/gs_init.ps.restore-flushpage 2017-11-29 14:58:35.449534983 -0500
++++ ghostscript-9.22/Resource/Init/gs_init.ps 2017-11-29 14:59:25.903397616 -0500
+@@ -2163,7 +2163,7 @@ SAFER { .setsafeglobal } if
+ /.type1execchar /.type2execchar /.type42execchar /.setweightvector /.getuseciecolor /processcolors /.includecolorspace
+ /.execn /.instopped /.stop /.stopped /.setcolorrendering /.setdevicecolorrendering /.buildcolorrendering1 /.builddevicecolorrendering1
+ /.TransformPQR_scale_WB0 /.TransformPQR_scale_WB1 /.TransformPQR_scale_WB2 /.currentoverprintmode /.copydevice2
+-/.devicename /.doneshowpage /flushpage /.getbitsrect /.getdevice /.getdefaultdevice /.getdeviceparams /.gethardwareparams
++/.devicename /.doneshowpage /.getbitsrect /.getdevice /.getdefaultdevice /.getdeviceparams /.gethardwareparams
+ /makewordimagedevice /.outputpage /.putdeviceparams /.setdevice /.currentshowpagecount
+ /.setpagedevice /.currentpagedevice /.knownundef /.setmaxlength /.rectappend /.initialize_dsc_parser /.parse_dsc_comments
+ /.fillCIDMap /.fillIdentityCIDMap /.buildcmap /.filenamelistseparator /.libfile /.getfilename
+@@ -2181,6 +2181,15 @@ SAFER { .setsafeglobal } if
+ /.systemvmSFD /.settrapparams /.currentsystemparams /.currentuserparams /.getsystemparam /.getuserparam /.setsystemparams /.setuserparams
+ /.checkpassword /.locale_to_utf8 /.currentglobal /.gcheck /.imagepath
+
++% Used by a free user in the Library of Congress. Apparently this is used to
++% draw a partial page, which is then filled in by the results of a barcode
++% scanner and SQL database lookup. Its not clear to us exactly why this needs to be
++% done as a partial page, but its easiest to restore the operator, and it seems like
++% its a reasonably safe operator to restore, for the *very* few devices on which
++% it will have any effect. Currently this uses the 'sync_outptu' device method
++% to transfer the partial page, in future we may use a spec_op instead.
++%/flushpage
++
+ % Used by our own test suite files
+ %/.fileposition %image-qa.ps
+ %/.makeoperator /.setCPSImode % gs_cet.ps
diff --git a/abs/core/ghostscript/ghostscript-sys-zlib.patch b/abs/core/ghostscript/ghostscript-sys-zlib.patch
deleted file mode 100644
index d632fcb..0000000
--- a/abs/core/ghostscript/ghostscript-sys-zlib.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff -up ghostscript-9.12/configure.ac.sys-zlib ghostscript-9.12/configure.ac
---- ghostscript-9.12/configure.ac.sys-zlib 2014-03-26 11:48:54.983972222 +0000
-+++ ghostscript-9.12/configure.ac 2014-03-26 11:49:36.807230531 +0000
-@@ -854,7 +854,7 @@ AC_MSG_CHECKING([for local zlib source])
- dnl zlib is needed for language level 3, and libpng
- # we must define ZLIBDIR regardless because png.mak does a -I$(ZLIBDIR)
- # this seems a harmless default
--ZLIBDIR=src
-+ZLIBDIR=$includedir
- AUX_SHARED_ZLIB=
-
- if test -d $srcdir/zlib; then
-diff -up ghostscript-9.12/configure.sys-zlib ghostscript-9.12/configure
---- ghostscript-9.12/configure.sys-zlib 2014-03-26 11:49:45.547284521 +0000
-+++ ghostscript-9.12/configure 2014-03-26 11:49:56.171350127 +0000
-@@ -6254,7 +6254,7 @@ fi
- $as_echo_n "checking for local zlib source... " >&6; }
- # we must define ZLIBDIR regardless because png.mak does a -I$(ZLIBDIR)
- # this seems a harmless default
--ZLIBDIR=src
-+ZLIBDIR=$includedir
- AUX_SHARED_ZLIB=
-
- if test -d $srcdir/zlib; then
-
diff --git a/abs/core/glibc/PKGBUILD b/abs/core/glibc/PKGBUILD
index 980bf41..1da7c0a 100644
--- a/abs/core/glibc/PKGBUILD
+++ b/abs/core/glibc/PKGBUILD
@@ -1,112 +1,164 @@
# $Id$
-# Maintainer: Allan McRae <allan@archlinux.org>
+# Maintainer: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
+# Contributor: Allan McRae <allan@archlinux.org>
# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc
# NOTE: valgrind requires rebuilt with each major glibc version
-pkgname=glibc
-pkgver=2.23
-pkgrel=1
-_commit=e742928c
-pkgdesc="GNU C Library"
-arch=('i686' 'x86_64')
-url="http://www.gnu.org/software/libc"
-license=('GPL' 'LGPL')
-groups=('base')
-depends=('linux-api-headers>=4.1' 'tzdata' 'filesystem')
-makedepends=('gcc>=5.2' 'git')
-backup=(etc/gai.conf
- etc/locale.gen
- etc/nscd.conf)
-options=('!strip' 'staticlibs')
-install=glibc.install
-source=(git://sourceware.org/git/glibc.git#commit=${_commit}
+pkgbase=glibc
+pkgname=(glibc lib32-glibc)
+pkgver=2.26
+pkgrel=11
+arch=(x86_64)
+url='http://www.gnu.org/software/libc'
+license=(GPL LGPL)
+makedepends=(git gd lib32-gcc-libs)
+options=(!strip staticlibs)
+_commit=de51f431ed6226ec68ca76e578f2cbd55b6262cb
+source=(git+https://sourceware.org/git/glibc.git#commit=${_commit}
locale.gen.txt
- locale-gen)
+ locale-gen
+ lib32-glibc.conf
+ bz20338.patch)
md5sums=('SKIP'
'07ac979b6ab5eeb778d55f041529d623'
- '476e9113489f93b348b21e144b6a8fcf')
+ '476e9113489f93b348b21e144b6a8fcf'
+ '6e052f1cb693d5d3203f50f9d4e8c33b'
+ 'dc0d3ad59aeaaf591b085a77de6e03e9')
prepare() {
- mkdir glibc-build
+ mkdir -p glibc-build lib32-glibc-build
+
+ cd glibc
+
+ local i; for i in ${source[@]}; do
+ case ${i%::*} in
+ *.patch)
+ msg2 "Applying ${i}"
+ patch -p1 -i "$srcdir/${i}"
+ ;;
+ esac
+ done
}
build() {
- cd glibc-build
+ local _configure_flags=(
+ --prefix=/usr
+ --with-headers=/usr/include
+ --with-bugurl=https://bugs.archlinux.org/
+ --enable-add-ons
+ --enable-bind-now
+ --enable-lock-elision
+ --enable-multi-arch
+ --enable-obsolete-nsl
+ --enable-obsolete-rpc
+ --enable-stack-protector=strong
+ --enable-stackguard-randomization
+ --disable-profile
+ --disable-werror
+ )
- if [[ ${CARCH} = "i686" ]]; then
- # Hack to fix NPTL issues with Xen, only required on 32bit platforms
- # TODO: make separate glibc-xen package for i686
- export CFLAGS="${CFLAGS} -mno-tls-direct-seg-refs"
- fi
+ cd "$srcdir/glibc-build"
echo "slibdir=/usr/lib" >> configparms
echo "rtlddir=/usr/lib" >> configparms
echo "sbindir=/usr/bin" >> configparms
echo "rootsbindir=/usr/bin" >> configparms
- # remove hardening options for building libraries
- CFLAGS=${CFLAGS/-fstack-protector-strong/}
+ # remove fortify for building libraries
CPPFLAGS=${CPPFLAGS/-D_FORTIFY_SOURCE=2/}
- ../${pkgname}/configure --prefix=/usr \
- --libdir=/usr/lib --libexecdir=/usr/lib \
- --with-headers=/usr/include \
- --with-bugurl=https://bugs.archlinux.org/ \
- --enable-add-ons \
- --enable-obsolete-rpc \
- --enable-kernel=2.6.32 \
- --enable-bind-now --disable-profile \
- --enable-stackguard-randomization \
- --enable-lock-elision \
- --enable-multi-arch \
- --disable-werror
+ "$srcdir/glibc/configure" \
+ --libdir=/usr/lib \
+ --libexecdir=/usr/lib \
+ ${_configure_flags[@]}
- # build libraries with hardening disabled
+ # build libraries with fortify disabled
echo "build-programs=no" >> configparms
make
- # re-enable hardening for programs
+ # re-enable fortify for programs
sed -i "/build-programs=/s#no#yes#" configparms
- echo "CC += -fstack-protector-strong -D_FORTIFY_SOURCE=2" >> configparms
- echo "CXX += -fstack-protector-strong -D_FORTIFY_SOURCE=2" >> configparms
+
+ echo "CC += -D_FORTIFY_SOURCE=2" >> configparms
+ echo "CXX += -D_FORTIFY_SOURCE=2" >> configparms
+ make
+
+ cd "$srcdir/lib32-glibc-build"
+ export CC="gcc -m32 -mstackrealign"
+ export CXX="g++ -m32 -mstackrealign"
+
+ echo "slibdir=/usr/lib32" >> configparms
+ echo "rtlddir=/usr/lib32" >> configparms
+ echo "sbindir=/usr/bin" >> configparms
+ echo "rootsbindir=/usr/bin" >> configparms
+
+ # remove fortify for building libraries
+ CPPFLAGS=${CPPFLAGS/-D_FORTIFY_SOURCE=2/}
+ CFLAGS=${CFLAGS/-fno-plt/}
+ CXXFLAGS=${CXXFLAGS/-fno-plt/}
+
+ "$srcdir/glibc/configure" \
+ --host=i686-pc-linux-gnu \
+ --libdir=/usr/lib32 \
+ --libexecdir=/usr/lib32 \
+ ${_configure_flags[@]}
+
+ # build libraries with fortify disabled
+ echo "build-programs=no" >> configparms
+ make
+
+ # re-enable fortify for programs
+ sed -i "/build-programs=/s#no#yes#" configparms
+
+ echo "CC += -D_FORTIFY_SOURCE=2" >> configparms
+ echo "CXX += -D_FORTIFY_SOURCE=2" >> configparms
make
- # remove harding in preparation to run test-suite
- sed -i '/FORTIFY/d' configparms
}
check() {
cd glibc-build
+ # remove fortify in preparation to run test-suite
+ sed -i '/FORTIFY/d' configparms
+
# some failures are "expected"
make check || true
}
-package() {
- cd glibc-build
-
- install -dm755 ${pkgdir}/etc
- touch ${pkgdir}/etc/ld.so.conf
+package_glibc() {
+ pkgdesc='GNU C Library'
+ depends=('linux-api-headers>=4.10' tzdata filesystem)
+ optdepends=('gd: for memusagestat')
+ install=glibc.install
+ backup=(etc/gai.conf
+ etc/locale.gen
+ etc/nscd.conf)
+ groups=(base)
- make install_root=${pkgdir} install
+ install -dm755 "$pkgdir/etc"
+ touch "$pkgdir/etc/ld.so.conf"
- rm -f ${pkgdir}/etc/ld.so.{cache,conf}
+ make -C glibc-build install_root="$pkgdir" install
+ rm -f "$pkgdir"/etc/ld.so.{cache,conf}
- install -dm755 ${pkgdir}/usr/lib/{locale,systemd/system,tmpfiles.d}
+ cd glibc
- install -m644 ${srcdir}/${pkgname}/nscd/nscd.conf ${pkgdir}/etc/nscd.conf
- install -m644 ${srcdir}/${pkgname}/nscd/nscd.service ${pkgdir}/usr/lib/systemd/system
- install -m644 ${srcdir}/${pkgname}/nscd/nscd.tmpfiles ${pkgdir}/usr/lib/tmpfiles.d/nscd.conf
+ install -dm755 "$pkgdir"/usr/lib/{locale,systemd/system,tmpfiles.d}
+ install -m644 nscd/nscd.conf "$pkgdir/etc/nscd.conf"
+ install -m644 nscd/nscd.service "$pkgdir/usr/lib/systemd/system"
+ install -m644 nscd/nscd.tmpfiles "$pkgdir/usr/lib/tmpfiles.d/nscd.conf"
+ install -dm755 "$pkgdir/var/db/nscd"
- install -m644 ${srcdir}/${pkgname}/posix/gai.conf ${pkgdir}/etc/gai.conf
+ install -m644 posix/gai.conf "$pkgdir"/etc/gai.conf
- install -m755 ${srcdir}/locale-gen ${pkgdir}/usr/bin
+ install -m755 "$srcdir/locale-gen" "$pkgdir/usr/bin"
# create /etc/locale.gen
- install -m644 ${srcdir}/locale.gen.txt ${pkgdir}/etc/locale.gen
+ install -m644 "$srcdir/locale.gen.txt" "$pkgdir/etc/locale.gen"
sed -e '1,3d' -e 's|/| |g' -e 's|\\| |g' -e 's|^|#|g' \
- ${srcdir}/glibc/localedata/SUPPORTED >> ${pkgdir}/etc/locale.gen
+ "$srcdir/glibc/localedata/SUPPORTED" >> "$pkgdir/etc/locale.gen"
# Do not strip the following files for improved debugging support
# ("improved" as in not breaking gdb and valgrind...):
@@ -115,23 +167,58 @@ package() {
# libpthread-${pkgver}.so
# libthread_db-1.0.so
- cd $pkgdir
- strip $STRIP_BINARIES usr/bin/{gencat,getconf,getent,iconv,iconvconfig} \
- usr/bin/{ldconfig,locale,localedef,nscd,makedb} \
- usr/bin/{pcprofiledump,pldd,rpcgen,sln,sprof} \
- usr/lib/getconf/*
- if [[ $CARCH = "i686" ]]; then
- strip $STRIP_BINARIES usr/bin/lddlibc4
+ if check_option 'debug' n; then
+ cd "$pkgdir"
+ strip $STRIP_BINARIES usr/bin/{gencat,getconf,getent,iconv,iconvconfig} \
+ usr/bin/{ldconfig,locale,localedef,nscd,makedb} \
+ usr/bin/{pcprofiledump,pldd,rpcgen,sln,sprof} \
+ usr/lib/getconf/*
+
+ strip $STRIP_STATIC usr/lib/lib{anl,BrokenLocale,c{,_nonshared},crypt}.a \
+ usr/lib/lib{dl,g,ieee,mcheck,nsl,pthread{,_nonshared}}.a \
+ usr/lib/lib{resolv,rpcsvc,rt,util}.a \
+ usr/lib/lib{m-${pkgver},mvec{,_nonshared}}.a
+
+ strip $STRIP_SHARED usr/lib/lib{anl,BrokenLocale,cidn,crypt}-${pkgver}.so \
+ usr/lib/libnss_{compat,db,dns,files,hesiod,nis,nisplus}-*.so \
+ usr/lib/lib{dl,m,nsl,resolv,rt,util}-${pkgver}.so \
+ usr/lib/lib{memusage,pcprofile,SegFault}.so \
+ usr/lib/{audit,gconv}/*.so usr/lib/libmvec-*.so || true
fi
+}
+
+package_lib32-glibc() {
+ pkgdesc='GNU C Library (32-bit)'
+ depends=("glibc=$pkgver")
+
+ cd lib32-glibc-build
+
+ make install_root="$pkgdir" install
+ rm -rf "$pkgdir"/{etc,sbin,usr/{bin,sbin,share},var}
+
+ # We need to keep 32 bit specific header files
+ find "$pkgdir/usr/include" -type f -not -name '*-32.h' -delete
+
+ # Dynamic linker
+ install -d "$pkgdir/usr/lib"
+ ln -s ../lib32/ld-linux.so.2 "$pkgdir/usr/lib/"
+
+ # Add lib32 paths to the default library search path
+ install -Dm644 "$srcdir/lib32-glibc.conf" "$pkgdir/etc/ld.so.conf.d/lib32-glibc.conf"
- strip $STRIP_STATIC usr/lib/*.a
+ # Symlink /usr/lib32/locale to /usr/lib/locale
+ ln -s ../lib/locale "$pkgdir/usr/lib32/locale"
- strip $STRIP_SHARED usr/lib/lib{anl,BrokenLocale,cidn,crypt}-*.so \
- usr/lib/libnss_{compat,db,dns,files,hesiod,nis,nisplus}-*.so \
- usr/lib/lib{dl,m,nsl,resolv,rt,util}-*.so \
- usr/lib/lib{memusage,pcprofile,SegFault}.so \
- usr/lib/{audit,gconv}/*.so || true
- if [[ $CARCH = "x86_64" ]]; then
- strip $STRIP_SHARED usr/lib/libmvec-*.so
+ if check_option 'debug' n; then
+ cd $pkgdir
+ strip $STRIP_BINARIES usr/lib32/getconf/*
+ strip $STRIP_STATIC usr/lib32/lib{anl,BrokenLocale,c{,_nonshared},crypt}.a \
+ usr/lib32/lib{dl,g,ieee,mcheck,nsl,pthread{,_nonshared}}.a \
+ usr/lib32/lib{resolv,rpcsvc,rt,util,m}.a
+ strip $STRIP_SHARED usr/lib32/lib{anl,BrokenLocale,cidn,crypt}-${pkgver}.so \
+ usr/lib32/libnss_{compat,db,dns,files,hesiod,nis,nisplus}-*.so \
+ usr/lib32/lib{dl,m,nsl,resolv,rt,util}-${pkgver}.so \
+ usr/lib32/lib{memusage,pcprofile,SegFault}.so \
+ usr/lib32/{audit,gconv}/*.so || true
fi
}
diff --git a/abs/core/glibc/bz20338.patch b/abs/core/glibc/bz20338.patch
new file mode 100644
index 0000000..d223e9f
--- /dev/null
+++ b/abs/core/glibc/bz20338.patch
@@ -0,0 +1,114 @@
+From 74250a7cdf106d4ca7d9506e6d5dc7c448dc3434 Mon Sep 17 00:00:00 2001
+From: David Michael <david.michael@coreos.com>
+Date: Thu, 15 Dec 2016 15:22:57 -0800
+Subject: [PATCH] gshadow: Sync fgetsgent_r.c with grp/fgetgrent_r.c
+
+ [BZ #20338]
+ * gshadow/fgetsgent_r.c: Include <libio/iolibio.h>.
+ (flockfile): New macro.
+ (funlockfile): Likewise.
+ (__fgetsgent_r): Sync with __fgetgrent_r.
+ * nss/nss_files/files-sgrp.c: Fix "fgetsgent_r.c" typo.
+---
+ gshadow/fgetsgent_r.c | 35 ++++++++++++++++++++++++-----------
+ nss/nss_files/files-sgrp.c | 2 +-
+ 2 files changed, 25 insertions(+), 12 deletions(-)
+
+diff --git a/gshadow/fgetsgent_r.c b/gshadow/fgetsgent_r.c
+index b70f6fa..02cd33a 100644
+--- a/gshadow/fgetsgent_r.c
++++ b/gshadow/fgetsgent_r.c
+@@ -20,39 +20,44 @@
+ #include <gshadow.h>
+ #include <stdio.h>
+
++#include <libio/iolibio.h>
++#define flockfile(s) _IO_flockfile (s)
++#define funlockfile(s) _IO_funlockfile (s)
++
+ /* Define a line parsing function using the common code
+ used in the nss_files module. */
+
+ #define STRUCTURE sgrp
+ #define ENTNAME sgent
+-#define EXTERN_PARSER 1
++#define EXTERN_PARSER 1
+ struct sgent_data {};
+
+ #include <nss/nss_files/files-parse.c>
+
+
+-/* Read one shadow entry from the given stream. */
++/* Read one entry from the given stream. */
+ int
+ __fgetsgent_r (FILE *stream, struct sgrp *resbuf, char *buffer, size_t buflen,
+ struct sgrp **result)
+ {
+ char *p;
++ int parse_result;
+
+- _IO_flockfile (stream);
++ flockfile (stream);
+ do
+ {
+ buffer[buflen - 1] = '\xff';
+ p = fgets_unlocked (buffer, buflen, stream);
+- if (p == NULL && feof_unlocked (stream))
++ if (__builtin_expect (p == NULL, 0) && feof_unlocked (stream))
+ {
+- _IO_funlockfile (stream);
++ funlockfile (stream);
+ *result = NULL;
+ __set_errno (ENOENT);
+ return errno;
+ }
+- if (p == NULL || buffer[buflen - 1] != '\xff')
++ if (__builtin_expect (p == NULL, 0) || buffer[buflen - 1] != '\xff')
+ {
+- _IO_funlockfile (stream);
++ funlockfile (stream);
+ *result = NULL;
+ __set_errno (ERANGE);
+ return errno;
+@@ -61,13 +66,21 @@ __fgetsgent_r (FILE *stream, struct sgrp *resbuf, char *buffer, size_t buflen,
+ /* Skip leading blanks. */
+ while (isspace (*p))
+ ++p;
+- } while (*p == '\0' || *p == '#' || /* Ignore empty and comment lines. */
++ } while (*p == '\0' || *p == '#' /* Ignore empty and comment lines. */
+ /* Parse the line. If it is invalid, loop to
+ get the next line of the file to parse. */
+- ! parse_line (buffer, (void *) resbuf, (void *) buffer, buflen,
+- &errno));
++ || ! (parse_result = parse_line (p, resbuf,
++ (void *) buffer, buflen,
++ &errno)));
++
++ funlockfile (stream);
+
+- _IO_funlockfile (stream);
++ if (__builtin_expect (parse_result, 0) == -1)
++ {
++ /* The parser ran out of space. */
++ *result = NULL;
++ return errno;
++ }
+
+ *result = resbuf;
+ return 0;
+diff --git a/nss/nss_files/files-sgrp.c b/nss/nss_files/files-sgrp.c
+index 15dc659..05c3805 100644
+--- a/nss/nss_files/files-sgrp.c
++++ b/nss/nss_files/files-sgrp.c
+@@ -23,7 +23,7 @@
+ #define DATABASE "gshadow"
+ struct sgent_data {};
+
+-/* Our parser function is already defined in sgetspent_r.c, so use that
++/* Our parser function is already defined in sgetsgent_r.c, so use that
+ to parse lines from the database file. */
+ #define EXTERN_PARSER
+ #include "files-parse.c"
+--
+2.7.4
+
diff --git a/abs/core/glibc/glibc-2.22-CVE-2015-7547.patch b/abs/core/glibc/glibc-2.22-CVE-2015-7547.patch
deleted file mode 100644
index 525ee49..0000000
--- a/abs/core/glibc/glibc-2.22-CVE-2015-7547.patch
+++ /dev/null
@@ -1,572 +0,0 @@
-CVE-2015-7547
-
-2016-02-15 Carlos O'Donell <carlos@redhat.com>
-
- [BZ #18665]
- * resolv/nss_dns/dns-host.c (gaih_getanswer_slice): Always set
- *herrno_p.
- (gaih_getanswer): Document functional behviour. Return tryagain
- if any result is tryagain.
- * resolv/res_query.c (__libc_res_nsearch): Set buffer size to zero
- when freed.
- * resolv/res_send.c: Add copyright text.
- (__libc_res_nsend): Document that MAXPACKET is expected.
- (send_vc): Document. Remove buffer reuse.
- (send_dg): Document. Remove buffer reuse. Set *thisanssizp to set the
- size of the buffer. Add Dprint for truncated UDP buffer.
-
-diff --git a/resolv/nss_dns/dns-host.c b/resolv/nss_dns/dns-host.c
-index a255d5e..47cfe27 100644
---- a/resolv/nss_dns/dns-host.c
-+++ b/resolv/nss_dns/dns-host.c
-@@ -1031,7 +1031,10 @@ gaih_getanswer_slice (const querybuf *answer, int anslen, const char *qname,
- int h_namelen = 0;
-
- if (ancount == 0)
-- return NSS_STATUS_NOTFOUND;
-+ {
-+ *h_errnop = HOST_NOT_FOUND;
-+ return NSS_STATUS_NOTFOUND;
-+ }
-
- while (ancount-- > 0 && cp < end_of_message && had_error == 0)
- {
-@@ -1208,7 +1211,14 @@ gaih_getanswer_slice (const querybuf *answer, int anslen, const char *qname,
- /* Special case here: if the resolver sent a result but it only
- contains a CNAME while we are looking for a T_A or T_AAAA record,
- we fail with NOTFOUND instead of TRYAGAIN. */
-- return canon == NULL ? NSS_STATUS_TRYAGAIN : NSS_STATUS_NOTFOUND;
-+ if (canon != NULL)
-+ {
-+ *h_errnop = HOST_NOT_FOUND;
-+ return NSS_STATUS_NOTFOUND;
-+ }
-+
-+ *h_errnop = NETDB_INTERNAL;
-+ return NSS_STATUS_TRYAGAIN;
- }
-
-
-@@ -1222,11 +1232,101 @@ gaih_getanswer (const querybuf *answer1, int anslen1, const querybuf *answer2,
-
- enum nss_status status = NSS_STATUS_NOTFOUND;
-
-+ /* Combining the NSS status of two distinct queries requires some
-+ compromise and attention to symmetry (A or AAAA queries can be
-+ returned in any order). What follows is a breakdown of how this
-+ code is expected to work and why. We discuss only SUCCESS,
-+ TRYAGAIN, NOTFOUND and UNAVAIL, since they are the only returns
-+ that apply (though RETURN and MERGE exist). We make a distinction
-+ between TRYAGAIN (recoverable) and TRYAGAIN' (not-recoverable).
-+ A recoverable TRYAGAIN is almost always due to buffer size issues
-+ and returns ERANGE in errno and the caller is expected to retry
-+ with a larger buffer.
-+
-+ Lastly, you may be tempted to make significant changes to the
-+ conditions in this code to bring about symmetry between responses.
-+ Please don't change anything without due consideration for
-+ expected application behaviour. Some of the synthesized responses
-+ aren't very well thought out and sometimes appear to imply that
-+ IPv4 responses are always answer 1, and IPv6 responses are always
-+ answer 2, but that's not true (see the implemetnation of send_dg
-+ and send_vc to see response can arrive in any order, particlarly
-+ for UDP). However, we expect it holds roughly enough of the time
-+ that this code works, but certainly needs to be fixed to make this
-+ a more robust implementation.
-+
-+ ----------------------------------------------
-+ | Answer 1 Status / | Synthesized | Reason |
-+ | Answer 2 Status | Status | |
-+ |--------------------------------------------|
-+ | SUCCESS/SUCCESS | SUCCESS | [1] |
-+ | SUCCESS/TRYAGAIN | TRYAGAIN | [5] |
-+ | SUCCESS/TRYAGAIN' | SUCCESS | [1] |
-+ | SUCCESS/NOTFOUND | SUCCESS | [1] |
-+ | SUCCESS/UNAVAIL | SUCCESS | [1] |
-+ | TRYAGAIN/SUCCESS | TRYAGAIN | [2] |
-+ | TRYAGAIN/TRYAGAIN | TRYAGAIN | [2] |
-+ | TRYAGAIN/TRYAGAIN' | TRYAGAIN | [2] |
-+ | TRYAGAIN/NOTFOUND | TRYAGAIN | [2] |
-+ | TRYAGAIN/UNAVAIL | TRYAGAIN | [2] |
-+ | TRYAGAIN'/SUCCESS | SUCCESS | [3] |
-+ | TRYAGAIN'/TRYAGAIN | TRYAGAIN | [3] |
-+ | TRYAGAIN'/TRYAGAIN' | TRYAGAIN' | [3] |
-+ | TRYAGAIN'/NOTFOUND | TRYAGAIN' | [3] |
-+ | TRYAGAIN'/UNAVAIL | UNAVAIL | [3] |
-+ | NOTFOUND/SUCCESS | SUCCESS | [3] |
-+ | NOTFOUND/TRYAGAIN | TRYAGAIN | [3] |
-+ | NOTFOUND/TRYAGAIN' | TRYAGAIN' | [3] |
-+ | NOTFOUND/NOTFOUND | NOTFOUND | [3] |
-+ | NOTFOUND/UNAVAIL | UNAVAIL | [3] |
-+ | UNAVAIL/SUCCESS | UNAVAIL | [4] |
-+ | UNAVAIL/TRYAGAIN | UNAVAIL | [4] |
-+ | UNAVAIL/TRYAGAIN' | UNAVAIL | [4] |
-+ | UNAVAIL/NOTFOUND | UNAVAIL | [4] |
-+ | UNAVAIL/UNAVAIL | UNAVAIL | [4] |
-+ ----------------------------------------------
-+
-+ [1] If the first response is a success we return success.
-+ This ignores the state of the second answer and in fact
-+ incorrectly sets errno and h_errno to that of the second
-+ answer. However because the response is a success we ignore
-+ *errnop and *h_errnop (though that means you touched errno on
-+ success). We are being conservative here and returning the
-+ likely IPv4 response in the first answer as a success.
-+
-+ [2] If the first response is a recoverable TRYAGAIN we return
-+ that instead of looking at the second response. The
-+ expectation here is that we have failed to get an IPv4 response
-+ and should retry both queries.
-+
-+ [3] If the first response was not a SUCCESS and the second
-+ response is not NOTFOUND (had a SUCCESS, need to TRYAGAIN,
-+ or failed entirely e.g. TRYAGAIN' and UNAVAIL) then use the
-+ result from the second response, otherwise the first responses
-+ status is used. Again we have some odd side-effects when the
-+ second response is NOTFOUND because we overwrite *errnop and
-+ *h_errnop that means that a first answer of NOTFOUND might see
-+ its *errnop and *h_errnop values altered. Whether it matters
-+ in practice that a first response NOTFOUND has the wrong
-+ *errnop and *h_errnop is undecided.
-+
-+ [4] If the first response is UNAVAIL we return that instead of
-+ looking at the second response. The expectation here is that
-+ it will have failed similarly e.g. configuration failure.
-+
-+ [5] Testing this code is complicated by the fact that truncated
-+ second response buffers might be returned as SUCCESS if the
-+ first answer is a SUCCESS. To fix this we add symmetry to
-+ TRYAGAIN with the second response. If the second response
-+ is a recoverable error we now return TRYAGIN even if the first
-+ response was SUCCESS. */
-+
- if (anslen1 > 0)
- status = gaih_getanswer_slice(answer1, anslen1, qname,
- &pat, &buffer, &buflen,
- errnop, h_errnop, ttlp,
- &first);
-+
- if ((status == NSS_STATUS_SUCCESS || status == NSS_STATUS_NOTFOUND
- || (status == NSS_STATUS_TRYAGAIN
- /* We want to look at the second answer in case of an
-@@ -1242,8 +1342,15 @@ gaih_getanswer (const querybuf *answer1, int anslen1, const querybuf *answer2,
- &pat, &buffer, &buflen,
- errnop, h_errnop, ttlp,
- &first);
-+ /* Use the second response status in some cases. */
- if (status != NSS_STATUS_SUCCESS && status2 != NSS_STATUS_NOTFOUND)
- status = status2;
-+ /* Do not return a truncated second response (unless it was
-+ unavoidable e.g. unrecoverable TRYAGAIN). */
-+ if (status == NSS_STATUS_SUCCESS
-+ && (status2 == NSS_STATUS_TRYAGAIN
-+ && *errnop == ERANGE && *h_errnop != NO_RECOVERY))
-+ status = NSS_STATUS_TRYAGAIN;
- }
-
- return status;
-diff --git a/resolv/res_query.c b/resolv/res_query.c
-index 4a9b3b3..95470a9 100644
---- a/resolv/res_query.c
-+++ b/resolv/res_query.c
-@@ -396,6 +396,7 @@ __libc_res_nsearch(res_state statp,
- {
- free (*answerp2);
- *answerp2 = NULL;
-+ *nanswerp2 = 0;
- *answerp2_malloced = 0;
- }
- }
-@@ -447,6 +448,7 @@ __libc_res_nsearch(res_state statp,
- {
- free (*answerp2);
- *answerp2 = NULL;
-+ *nanswerp2 = 0;
- *answerp2_malloced = 0;
- }
-
-@@ -521,6 +523,7 @@ __libc_res_nsearch(res_state statp,
- {
- free (*answerp2);
- *answerp2 = NULL;
-+ *nanswerp2 = 0;
- *answerp2_malloced = 0;
- }
- if (saved_herrno != -1)
-diff --git a/resolv/res_send.c b/resolv/res_send.c
-index a968b95..21843f1 100644
---- a/resolv/res_send.c
-+++ b/resolv/res_send.c
-@@ -1,3 +1,20 @@
-+/* Copyright (C) 2016 Free Software Foundation, Inc.
-+ This file is part of the GNU C Library.
-+
-+ The GNU C Library is free software; you can redistribute it and/or
-+ modify it under the terms of the GNU Lesser General Public
-+ License as published by the Free Software Foundation; either
-+ version 2.1 of the License, or (at your option) any later version.
-+
-+ The GNU C Library is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ Lesser General Public License for more details.
-+
-+ You should have received a copy of the GNU Lesser General Public
-+ License along with the GNU C Library; if not, see
-+ <http://www.gnu.org/licenses/>. */
-+
- /*
- * Copyright (c) 1985, 1989, 1993
- * The Regents of the University of California. All rights reserved.
-@@ -355,6 +372,8 @@ __libc_res_nsend(res_state statp, const u_char *buf, int buflen,
- #ifdef USE_HOOKS
- if (__glibc_unlikely (statp->qhook || statp->rhook)) {
- if (anssiz < MAXPACKET && ansp) {
-+ /* Always allocate MAXPACKET, callers expect
-+ this specific size. */
- u_char *buf = malloc (MAXPACKET);
- if (buf == NULL)
- return (-1);
-@@ -630,6 +649,77 @@ get_nsaddr (res_state statp, int n)
- return (struct sockaddr *) (void *) &statp->nsaddr_list[n];
- }
-
-+/* The send_vc function is responsible for sending a DNS query over TCP
-+ to the nameserver numbered NS from the res_state STATP i.e.
-+ EXT(statp).nssocks[ns]. The function supports sending both IPv4 and
-+ IPv6 queries at the same serially on the same socket.
-+
-+ Please note that for TCP there is no way to disable sending both
-+ queries, unlike UDP, which honours RES_SNGLKUP and RES_SNGLKUPREOP
-+ and sends the queries serially and waits for the result after each
-+ sent query. This implemetnation should be corrected to honour these
-+ options.
-+
-+ Please also note that for TCP we send both queries over the same
-+ socket one after another. This technically violates best practice
-+ since the server is allowed to read the first query, respond, and
-+ then close the socket (to service another client). If the server
-+ does this, then the remaining second query in the socket data buffer
-+ will cause the server to send the client an RST which will arrive
-+ asynchronously and the client's OS will likely tear down the socket
-+ receive buffer resulting in a potentially short read and lost
-+ response data. This will force the client to retry the query again,
-+ and this process may repeat until all servers and connection resets
-+ are exhausted and then the query will fail. It's not known if this
-+ happens with any frequency in real DNS server implementations. This
-+ implementation should be corrected to use two sockets by default for
-+ parallel queries.
-+
-+ The query stored in BUF of BUFLEN length is sent first followed by
-+ the query stored in BUF2 of BUFLEN2 length. Queries are sent
-+ serially on the same socket.
-+
-+ Answers to the query are stored firstly in *ANSP up to a max of
-+ *ANSSIZP bytes. If more than *ANSSIZP bytes are needed and ANSCP
-+ is non-NULL (to indicate that modifying the answer buffer is allowed)
-+ then malloc is used to allocate a new response buffer and ANSCP and
-+ ANSP will both point to the new buffer. If more than *ANSSIZP bytes
-+ are needed but ANSCP is NULL, then as much of the response as
-+ possible is read into the buffer, but the results will be truncated.
-+ When truncation happens because of a small answer buffer the DNS
-+ packets header feild TC will bet set to 1, indicating a truncated
-+ message and the rest of the socket data will be read and discarded.
-+
-+ Answers to the query are stored secondly in *ANSP2 up to a max of
-+ *ANSSIZP2 bytes, with the actual response length stored in
-+ *RESPLEN2. If more than *ANSSIZP bytes are needed and ANSP2
-+ is non-NULL (required for a second query) then malloc is used to
-+ allocate a new response buffer, *ANSSIZP2 is set to the new buffer
-+ size and *ANSP2_MALLOCED is set to 1.
-+
-+ The ANSP2_MALLOCED argument will eventually be removed as the
-+ change in buffer pointer can be used to detect the buffer has
-+ changed and that the caller should use free on the new buffer.
-+
-+ Note that the answers may arrive in any order from the server and
-+ therefore the first and second answer buffers may not correspond to
-+ the first and second queries.
-+
-+ It is not supported to call this function with a non-NULL ANSP2
-+ but a NULL ANSCP. Put another way, you can call send_vc with a
-+ single unmodifiable buffer or two modifiable buffers, but no other
-+ combination is supported.
-+
-+ It is the caller's responsibility to free the malloc allocated
-+ buffers by detecting that the pointers have changed from their
-+ original values i.e. *ANSCP or *ANSP2 has changed.
-+
-+ If errors are encountered then *TERRNO is set to an appropriate
-+ errno value and a zero result is returned for a recoverable error,
-+ and a less-than zero result is returned for a non-recoverable error.
-+
-+ If no errors are encountered then *TERRNO is left unmodified and
-+ a the length of the first response in bytes is returned. */
- static int
- send_vc(res_state statp,
- const u_char *buf, int buflen, const u_char *buf2, int buflen2,
-@@ -639,11 +729,7 @@ send_vc(res_state statp,
- {
- const HEADER *hp = (HEADER *) buf;
- const HEADER *hp2 = (HEADER *) buf2;
-- u_char *ans = *ansp;
-- int orig_anssizp = *anssizp;
-- // XXX REMOVE
-- // int anssiz = *anssizp;
-- HEADER *anhp = (HEADER *) ans;
-+ HEADER *anhp = (HEADER *) *ansp;
- struct sockaddr *nsap = get_nsaddr (statp, ns);
- int truncating, connreset, n;
- /* On some architectures compiler might emit a warning indicating
-@@ -731,6 +817,8 @@ send_vc(res_state statp,
- * Receive length & response
- */
- int recvresp1 = 0;
-+ /* Skip the second response if there is no second query.
-+ To do that we mark the second response as received. */
- int recvresp2 = buf2 == NULL;
- uint16_t rlen16;
- read_len:
-@@ -767,40 +855,14 @@ send_vc(res_state statp,
- u_char **thisansp;
- int *thisresplenp;
- if ((recvresp1 | recvresp2) == 0 || buf2 == NULL) {
-+ /* We have not received any responses
-+ yet or we only have one response to
-+ receive. */
- thisanssizp = anssizp;
- thisansp = anscp ?: ansp;
- assert (anscp != NULL || ansp2 == NULL);
- thisresplenp = &resplen;
- } else {
-- if (*anssizp != MAXPACKET) {
-- /* No buffer allocated for the first
-- reply. We can try to use the rest
-- of the user-provided buffer. */
--#if __GNUC_PREREQ (4, 7)
-- DIAG_PUSH_NEEDS_COMMENT;
-- DIAG_IGNORE_NEEDS_COMMENT (5, "-Wmaybe-uninitialized");
--#endif
--#if _STRING_ARCH_unaligned
-- *anssizp2 = orig_anssizp - resplen;
-- *ansp2 = *ansp + resplen;
--#else
-- int aligned_resplen
-- = ((resplen + __alignof__ (HEADER) - 1)
-- & ~(__alignof__ (HEADER) - 1));
-- *anssizp2 = orig_anssizp - aligned_resplen;
-- *ansp2 = *ansp + aligned_resplen;
--#endif
--#if __GNUC_PREREQ (4, 7)
-- DIAG_POP_NEEDS_COMMENT;
--#endif
-- } else {
-- /* The first reply did not fit into the
-- user-provided buffer. Maybe the second
-- answer will. */
-- *anssizp2 = orig_anssizp;
-- *ansp2 = *ansp;
-- }
--
- thisanssizp = anssizp2;
- thisansp = ansp2;
- thisresplenp = resplen2;
-@@ -804,10 +870,14 @@ send_vc(res_state statp,
- anhp = (HEADER *) *thisansp;
-
- *thisresplenp = rlen;
-- if (rlen > *thisanssizp) {
-- /* Yes, we test ANSCP here. If we have two buffers
-- both will be allocatable. */
-- if (__glibc_likely (anscp != NULL)) {
-+ /* Is the answer buffer too small? */
-+ if (*thisanssizp < rlen) {
-+ /* If the current buffer is not the the static
-+ user-supplied buffer then we can reallocate
-+ it. */
-+ if (thisansp != NULL && thisansp != ansp) {
-+ /* Always allocate MAXPACKET, callers expect
-+ this specific size. */
- u_char *newp = malloc (MAXPACKET);
- if (newp == NULL) {
- *terrno = ENOMEM;
-@@ -819,6 +889,9 @@ send_vc(res_state statp,
- if (thisansp == ansp2)
- *ansp2_malloced = 1;
- anhp = (HEADER *) newp;
-+ /* A uint16_t can't be larger than MAXPACKET
-+ thus it's safe to allocate MAXPACKET but
-+ read RLEN bytes instead. */
- len = rlen;
- } else {
- Dprint(statp->options & RES_DEBUG,
-@@ -948,6 +1021,66 @@ reopen (res_state statp, int *terrno, int ns)
- return 1;
- }
-
-+/* The send_dg function is responsible for sending a DNS query over UDP
-+ to the nameserver numbered NS from the res_state STATP i.e.
-+ EXT(statp).nssocks[ns]. The function supports IPv4 and IPv6 queries
-+ along with the ability to send the query in parallel for both stacks
-+ (default) or serially (RES_SINGLKUP). It also supports serial lookup
-+ with a close and reopen of the socket used to talk to the server
-+ (RES_SNGLKUPREOP) to work around broken name servers.
-+
-+ The query stored in BUF of BUFLEN length is sent first followed by
-+ the query stored in BUF2 of BUFLEN2 length. Queries are sent
-+ in parallel (default) or serially (RES_SINGLKUP or RES_SNGLKUPREOP).
-+
-+ Answers to the query are stored firstly in *ANSP up to a max of
-+ *ANSSIZP bytes. If more than *ANSSIZP bytes are needed and ANSCP
-+ is non-NULL (to indicate that modifying the answer buffer is allowed)
-+ then malloc is used to allocate a new response buffer and ANSCP and
-+ ANSP will both point to the new buffer. If more than *ANSSIZP bytes
-+ are needed but ANSCP is NULL, then as much of the response as
-+ possible is read into the buffer, but the results will be truncated.
-+ When truncation happens because of a small answer buffer the DNS
-+ packets header feild TC will bet set to 1, indicating a truncated
-+ message, while the rest of the UDP packet is discarded.
-+
-+ Answers to the query are stored secondly in *ANSP2 up to a max of
-+ *ANSSIZP2 bytes, with the actual response length stored in
-+ *RESPLEN2. If more than *ANSSIZP bytes are needed and ANSP2
-+ is non-NULL (required for a second query) then malloc is used to
-+ allocate a new response buffer, *ANSSIZP2 is set to the new buffer
-+ size and *ANSP2_MALLOCED is set to 1.
-+
-+ The ANSP2_MALLOCED argument will eventually be removed as the
-+ change in buffer pointer can be used to detect the buffer has
-+ changed and that the caller should use free on the new buffer.
-+
-+ Note that the answers may arrive in any order from the server and
-+ therefore the first and second answer buffers may not correspond to
-+ the first and second queries.
-+
-+ It is not supported to call this function with a non-NULL ANSP2
-+ but a NULL ANSCP. Put another way, you can call send_vc with a
-+ single unmodifiable buffer or two modifiable buffers, but no other
-+ combination is supported.
-+
-+ It is the caller's responsibility to free the malloc allocated
-+ buffers by detecting that the pointers have changed from their
-+ original values i.e. *ANSCP or *ANSP2 has changed.
-+
-+ If an answer is truncated because of UDP datagram DNS limits then
-+ *V_CIRCUIT is set to 1 and the return value non-zero to indicate to
-+ the caller to retry with TCP. The value *GOTSOMEWHERE is set to 1
-+ if any progress was made reading a response from the nameserver and
-+ is used by the caller to distinguish between ECONNREFUSED and
-+ ETIMEDOUT (the latter if *GOTSOMEWHERE is 1).
-+
-+ If errors are encountered then *TERRNO is set to an appropriate
-+ errno value and a zero result is returned for a recoverable error,
-+ and a less-than zero result is returned for a non-recoverable error.
-+
-+ If no errors are encountered then *TERRNO is left unmodified and
-+ a the length of the first response in bytes is returned. */
- static int
- send_dg(res_state statp,
- const u_char *buf, int buflen, const u_char *buf2, int buflen2,
-@@ -957,8 +1090,6 @@ send_dg(res_state statp,
- {
- const HEADER *hp = (HEADER *) buf;
- const HEADER *hp2 = (HEADER *) buf2;
-- u_char *ans = *ansp;
-- int orig_anssizp = *anssizp;
- struct timespec now, timeout, finish;
- struct pollfd pfd[1];
- int ptimeout;
-@@ -991,6 +1122,8 @@ send_dg(res_state statp,
- int need_recompute = 0;
- int nwritten = 0;
- int recvresp1 = 0;
-+ /* Skip the second response if there is no second query.
-+ To do that we mark the second response as received. */
- int recvresp2 = buf2 == NULL;
- pfd[0].fd = EXT(statp).nssocks[ns];
- pfd[0].events = POLLOUT;
-@@ -1154,55 +1287,56 @@ send_dg(res_state statp,
- int *thisresplenp;
-
- if ((recvresp1 | recvresp2) == 0 || buf2 == NULL) {
-+ /* We have not received any responses
-+ yet or we only have one response to
-+ receive. */
- thisanssizp = anssizp;
- thisansp = anscp ?: ansp;
- assert (anscp != NULL || ansp2 == NULL);
- thisresplenp = &resplen;
- } else {
-- if (*anssizp != MAXPACKET) {
-- /* No buffer allocated for the first
-- reply. We can try to use the rest
-- of the user-provided buffer. */
--#if _STRING_ARCH_unaligned
-- *anssizp2 = orig_anssizp - resplen;
-- *ansp2 = *ansp + resplen;
--#else
-- int aligned_resplen
-- = ((resplen + __alignof__ (HEADER) - 1)
-- & ~(__alignof__ (HEADER) - 1));
-- *anssizp2 = orig_anssizp - aligned_resplen;
-- *ansp2 = *ansp + aligned_resplen;
--#endif
-- } else {
-- /* The first reply did not fit into the
-- user-provided buffer. Maybe the second
-- answer will. */
-- *anssizp2 = orig_anssizp;
-- *ansp2 = *ansp;
-- }
--
- thisanssizp = anssizp2;
- thisansp = ansp2;
- thisresplenp = resplen2;
- }
-
- if (*thisanssizp < MAXPACKET
-- /* Yes, we test ANSCP here. If we have two buffers
-- both will be allocatable. */
-- && anscp
-+ /* If the current buffer is not the the static
-+ user-supplied buffer then we can reallocate
-+ it. */
-+ && (thisansp != NULL && thisansp != ansp)
- #ifdef FIONREAD
-+ /* Is the size too small? */
- && (ioctl (pfd[0].fd, FIONREAD, thisresplenp) < 0
- || *thisanssizp < *thisresplenp)
- #endif
- ) {
-+ /* Always allocate MAXPACKET, callers expect
-+ this specific size. */
- u_char *newp = malloc (MAXPACKET);
- if (newp != NULL) {
-- *anssizp = MAXPACKET;
-- *thisansp = ans = newp;
-+ *thisanssizp = MAXPACKET;
-+ *thisansp = newp;
- if (thisansp == ansp2)
- *ansp2_malloced = 1;
- }
- }
-+ /* We could end up with truncation if anscp was NULL
-+ (not allowed to change caller's buffer) and the
-+ response buffer size is too small. This isn't a
-+ reliable way to detect truncation because the ioctl
-+ may be an inaccurate report of the UDP message size.
-+ Therefore we use this only to issue debug output.
-+ To do truncation accurately with UDP we need
-+ MSG_TRUNC which is only available on Linux. We
-+ can abstract out the Linux-specific feature in the
-+ future to detect truncation. */
-+ if (__glibc_unlikely (*thisanssizp < *thisresplenp)) {
-+ Dprint(statp->options & RES_DEBUG,
-+ (stdout, ";; response may be truncated (UDP)\n")
-+ );
-+ }
-+
- HEADER *anhp = (HEADER *) *thisansp;
- socklen_t fromlen = sizeof(struct sockaddr_in6);
- assert (sizeof(from) <= fromlen);
-
diff --git a/abs/core/glibc/glibc-2.22-roundup.patch b/abs/core/glibc/glibc-2.22-roundup.patch
deleted file mode 100644
index d820315..0000000
--- a/abs/core/glibc/glibc-2.22-roundup.patch
+++ /dev/null
@@ -1,2747 +0,0 @@
-diff --git a/ChangeLog b/ChangeLog
-index cb9124e..376355f 100644
---- a/ChangeLog
-+++ b/ChangeLog
-@@ -1,3 +1,300 @@
-+2016-02-12 Florian Weimer <fweimer@redhat.com>
-+
-+ * misc/bug18240.c (do_test): Set RLIMIT_AS.
-+
-+2016-01-27 Paul Eggert <eggert@cs.ucla.edu>
-+
-+ [BZ #18240]
-+ * misc/hsearch_r.c (isprime, __hcreate_r): Protect against
-+ unsigned int wraparound.
-+
-+2016-01-27 Florian Weimer <fweimer@redhat.com>
-+
-+ [BZ #18240]
-+ * misc/bug18240.c: New test.
-+ * misc/Makefile (tests): Add it.
-+
-+2015-08-25 Ondřej Bílka <neleai@seznam.cz>
-+
-+ [BZ #18240]
-+ * misc/hsearch_r.c (__hcreate_r): Handle overflow.
-+
-+2015-10-27 Ludovic Courtès <ludo@gnu.org>
-+
-+ * locale/loadlocale.c (_nl_intern_locale_data): Change assertion
-+ on CNT to a conditional jump to 'puntdata'.
-+
-+2015-08-18 Alan Modra <amodra@gmail.com>
-+
-+ [BZ #18421]
-+ * sysdeps/hppa/start.S [SHARED]: Use .section .data.rel.ro and define
-+ .Lp__global.
-+ (_start): Load %dp via .Lp__global.
-+ [!SHARED]: Use .section .rodata.
-+
-+2015-08-09 John David Anglin <danglin@gcc.gnu.org>
-+
-+ [BZ #18480]
-+ * sysdeps/unix/sysv/linux/hppa/sysdep.h (LOAD_ARGS_0, LOAD_ARGS_1,
-+ LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4, LOAD_ARGS_5, LOAD_ARGS_6):
-+ Define.
-+ (LOAD_REGS_0, LOAD_REGS_1, LOAD_REGS_2, LOAD_REGS_3, LOAD_REGS_4,
-+ LOAD_REGS_5, LOAD_REGS_6): Update.
-+ (INTERNAL_SYSCALL): Update using new LOAD defines.
-+ (INTERNAL_SYSCALL_NCS): Likewise.
-+ * sysdeps/unix/sysv/linux/hppa/syscall.c (syscall): Likewise.
-+
-+2015-09-26 Paul Pluzhnikov <ppluzhnikov@google.com>
-+
-+ [BZ #18985]
-+ * time/strftime_l.c (a_wkday, f_wkday, a_month, f_month): Range check.
-+ (__strftime_internal): Likewise.
-+ * time/tst-strftime.c (do_bz18985): New test.
-+ (do_test): Call it.
-+
-+2015-08-08 Paul Pluzhnikov <ppluzhnikov@google.com>
-+
-+ [BZ #17905]
-+ * catgets/Makefile (tst-catgets-mem): New test.
-+ * catgets/catgets.c (catopen): Don't use unbounded alloca.
-+ * catgets/open_catalog.c (__open_catalog): Likewise.
-+ * catgets/tst-catgets.c (do_bz17905): Test unbounded alloca.
-+
-+2015-12-31 Aurelien Jarno <aurelien@aurel32.net>
-+
-+ * sysdeps/unix/sysv/linux/alpha/libc.abilist [GLIBC_2.22]: Move
-+ to keep the file sorted.
-+ * sysdeps/unix/sysv/linux/hppa/libc.abilist [GLIBC_2.22]: Likewise.
-+
-+2015-12-17 Paul E. Murphy <murphyp@linux.vnet.ibm.com>
-+
-+ [BZ #19174]
-+ * sysdeps/powerpc/nptl/elide.h (__elide_lock): Fix usage of
-+ .skip_lock_out_of_tbegin_retries.
-+ * sysdeps/unix/sysv/linux/powerpc/elision-lock.c
-+ (__lll_lock_elision): Likewise, and respect a value of
-+ try_tbegin <= 0.
-+
-+2015-11-20 Roland McGrath <roland@hack.frob.com>
-+
-+ * sysdeps/nacl/dl-map-segments.h (_dl_map_segments): Use
-+ __glibc_likely instead of __builtin_expect. After falling back to
-+ dyncode_create in a non-ET_DYN case, use the allocate_code_data
-+ system interface to register the code pages as occupied.
-+
-+2015-11-14 H.J. Lu <hongjiu.lu@intel.com>
-+
-+ * config.make.in (have-glob-dat-reloc): New.
-+ * configure.ac (libc_cv_has_glob_dat): New. Set to yes if
-+ target supports GLOB_DAT relocaton. AC_SUBST.
-+ * configure: Regenerated.
-+ * elf/Makefile (tests): Add tst-prelink.
-+ (tests-special): Add $(objpfx)tst-prelink-cmp.out.
-+ (tst-prelink-ENV): New.
-+ ($(objpfx)tst-prelink-conflict.out): Likewise.
-+ ($(objpfx)tst-prelink-cmp.out): Likewise.
-+ * sysdeps/x86/tst-prelink.c: Moved to ...
-+ * elf/tst-prelink.c: Here.
-+ * sysdeps/x86/tst-prelink.exp: Moved to ...
-+ * elf/tst-prelink.exp: Here.
-+ * sysdeps/x86/Makefile (tests): Don't add tst-prelink.
-+ (tst-prelink-ENV): Removed.
-+ ($(objpfx)tst-prelink-conflict.out): Likewise.
-+ ($(objpfx)tst-prelink-cmp.out): Likewise.
-+ (tests-special): Don't add $(objpfx)tst-prelink-cmp.out.
-+
-+2015-11-10 Roland McGrath <roland@hack.frob.com>
-+
-+ * elf/dl-load.c (open_verify): Take new argument FD.
-+ Skip __open call if passed FD is not -1.
-+ (_dl_map_object, open_path): Update callers.
-+ * elf/dl-sysdep-open.h: New file.
-+ * elf/dl-load.c: Include it.
-+ (_dl_map_object): Try _dl_sysdep_open_object before ldconfig cache.
-+ * sysdeps/nacl/dl-sysdep.c (_dl_sysdep_open_object): New function.
-+ * sysdeps/nacl/dl-sysdep-open.h: New file.
-+ * sysdeps/nacl/nacl-interface-list.h: Move nacl_irt_resource_open
-+ from libc to rtld.
-+
-+2015-11-10 H.J. Lu <hongjiu.lu@intel.com>
-+
-+ [BZ #19178]
-+ * sysdeps/x86/Makefile (tests): Add tst-prelink.
-+ (tst-prelink-ENV): New.
-+ ($(objpfx)tst-prelink-conflict.out): Likewise.
-+ ($(objpfx)tst-prelink-cmp.out): Likewise.
-+ (tests-special): Add $(objpfx)tst-prelink-cmp.out.
-+ * sysdeps/x86/tst-prelink.c: New file.
-+ * sysdeps/x86/tst-prelink.exp: Likewise.
-+
-+2015-11-07 H.J. Lu <hongjiu.lu@intel.com>
-+
-+ [BZ #19178]
-+ * elf/dl-lookup.c (RTYPE_CLASS_VALID): New.
-+ (RTYPE_CLASS_PLT): Likewise.
-+ (RTYPE_CLASS_COPY): Likewise.
-+ (RTYPE_CLASS_TLS): Likewise.
-+ (_dl_debug_bindings): Use RTYPE_CLASS_TLS and RTYPE_CLASS_VALID
-+ to set relocation type class for DL_DEBUG_PRELINK. Keep only
-+ ELF_RTYPE_CLASS_PLT and ELF_RTYPE_CLASS_COPY bits for
-+ DL_DEBUG_PRELINK.
-+
-+2015-10-20 Tulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>
-+
-+ [BZ #18743]
-+ * sysdeps/powerpc/nptl/elide.h (__elide_lock): Move most of this
-+ code to...
-+ (ELIDE_LOCK): ...here.
-+ (__get_new_count): New function with part of the code from
-+ __elide_lock that updates the value of adapt_count after a
-+ transaction abort.
-+ (__elided_trylock): Moved this code to...
-+ (ELIDE_TRYLOCK): ...here.
-+
-+2015-10-06 Florian Weimer <fweimer@redhat.com>
-+
-+ [BZ #19018]
-+ * stdlib/cxa_thread_atexit_impl.c (__cxa_thread_atexit_impl):
-+ Mangle function pointer before storing it.
-+ (__call_tls_dtors): Demangle function pointer before calling it.
-+
-+2015-10-15 Florian Weimer <fweimer@redhat.com>
-+
-+ [BZ #18928]
-+ * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Remove
-+ _dl_pointer_guard member.
-+ * elf/rtld.c (_rtld_global_ro): Remove _dl_pointer_guard
-+ initializer.
-+ (security_init): Always set up pointer guard.
-+ (process_envvars): Do not process LD_POINTER_GUARD.
-+
-+2015-10-09 Carlos O'Donell <carlos@redhat.com>
-+
-+ [BZ #18589]
-+ * string/bug-strcoll2.c: Adjust copyright, and remove contributed by.
-+ * string/Makefile ($(objpfx)bug-strcoll2.out): Depend on
-+ $(gen-locales).
-+
-+2015-10-08 Carlos O'Donell <carlos@redhat.com>
-+
-+ [BZ #18589]
-+ * string/Makefile (tests): Add bug-strcoll2.
-+ (LOCALES): Add cs_CZ.UTF-8.
-+
-+2015-09-28 Martin Sebor <msebor@redhat.com>
-+
-+ [BZ #18969]
-+ * string/Makefile (LOCALES): Define.
-+ (gen-locales.mk): Include.
-+ (test-strcasecmp.out, test-strncasecmp.out, tst-strxfrm.out)
-+ (tst-strxfrm2.out): Add deppendency on $(gen-locales).
-+ * string/tst-strxfrm2.c (do_test): Print the name of the locale
-+ on setlocale failure.
-+
-+2015-10-08 Carlos O'Donell <carlos@redhat.com>
-+
-+ [BZ #18589]
-+ * string/bug-strcoll2.c: New file.
-+ * locale/categories.def: Revert commit
-+ f13c2a8dff2329c6692a80176262ceaaf8a6f74e.
-+ * locale/langinfo.h: Likewise.
-+ * locale/localeinfo.h: Likewise.
-+ * locale/C-collate.c: Likewise.
-+ * programs/ld-collate.c (collate_output): Likewise.
-+ * string/strcoll_l.c (STRDIFF): Likewise.
-+ (STRCOLL): Likewise.
-+ * wcsmbs/wcscoll_l.c: Likewise.
-+
-+2015-09-15 Roland McGrath <roland@hack.frob.com>
-+
-+ * misc/sys/param.h [!MAXHOSTNAMELEN && HOST_NAME_MAX]
-+ (MAXHOSTNAMELEN): Define it to HOST_NAME_MAX.
-+
-+2015-09-11 Roland McGrath <roland@hack.frob.com>
-+
-+ * sysdeps/nacl/Makefile [$(subdir) = misc] (sysdep_headers):
-+ Use 'override' keyword to freeze the value here, preventing
-+ the addition of sys/mtio.h by sysdeps/gnu/Makefile.
-+
-+2015-09-04 Roland McGrath <roland@hack.frob.com>
-+
-+ [BZ #18921]
-+ * sysdeps/posix/opendir.c (need_isdir_precheck) [O_DIRECTORY]:
-+ Fix inverted sense of test of 'o_directory_works' value.
-+ Reported by Pádraig Brady <P@draigBrady.com>, diagnosed by
-+ Bernhard Voelker <mail@bernhard-voelker.de>.
-+
-+2015-08-31 Brett Neumeier <brett@neumeier.us>
-+
-+ [BZ #18870]
-+ * sysdeps/sparc/sparc32/sem_open.c: Add missing #include
-+
-+2015-08-28 Mike Frysinger <vapier@gentoo.org>
-+
-+ [BZ #18887]
-+ * misc/Makefile (tests): Add tst-mntent-blank-corrupt and
-+ tst-mntent-blank-passno.
-+ * misc/mntent_r.c (__getmntent_r): Do not read past buffer[0].
-+ * misc/tst-mntent-blank-corrupt.c: New test.
-+ * misc/tst-mntent-blank-passno.c: New test ripped from ...
-+ * misc/tst-mntent.c (do_test): ... here.
-+
-+2015-08-25 Roland McGrath <roland@hack.frob.com>
-+
-+ * sysdeps/nacl/start.c (_start): Call __nacl_main instead of main
-+ if the weak reference is not null.
-+
-+2015-08-19 Andrew Senkevich <andrew.senkevich@intel.com>
-+
-+ [BZ #18796]
-+ * scripts/test-installation.pl: Don't add -lmvec to build options
-+ if libmvec wasn't built.
-+ * NEWS: Mention this fix.
-+
-+2015-08-10 Maxim Ostapenko <m.ostapenko@partner.samsung.com>
-+
-+ [BZ #18778]
-+ * elf/Makefile (tests): Add Add tst-nodelete2.
-+ (modules-names): Add tst-nodelete2mod.
-+ (tst-nodelete2mod.so-no-z-defs): New.
-+ ($(objpfx)tst-nodelete2): Likewise.
-+ ($(objpfx)tst-nodelete2.out): Likewise.
-+ (LDFLAGS-tst-nodelete2): Likewise.
-+ * elf/dl-close.c (_dl_close_worker): Move DF_1_NODELETE clearing
-+ out of loop through all loaded libraries.
-+ * elf/tst-nodelete2.c: New file.
-+ * elf/tst-nodelete2mod.c: Likewise.
-+
-+2015-08-10 Andreas Schwab <schwab@suse.de>
-+
-+ [BZ #18781]
-+ * sysdeps/unix/sysv/linux/openat.c (__OPENAT) [MORE_OFLAGS]: Add
-+ MORE_OFLAGS to oflag.
-+ * io/test-lfs.c (do_test): Test openat64.
-+
-+2015-08-08 John David Anglin <danglin@gcc.gnu.org>
-+
-+ [BZ #18787]
-+ * sysdeps/unix/sysv/linux/hppa/bits/atomic.h (_LWS_CLOBBER): Revise
-+ clobber registers.
-+ (atomic_compare_and_exchange_val_acq): Use register asms to assign
-+ operand registers. Use register %r20 for EAGAIN and EDEADLOCK checks.
-+ Cast return to __typeof (oldval).
-+
-+2015-08-08 Mike Frysinger <vapier@gentoo.org>
-+
-+ * sysdeps/unix/sysv/linux/microblaze/sysdep.h: Wrap the whole file
-+ in _LINUX_MICROBLAZE_SYSDEP_H defines. Include sysdeps/unix/sysdep.h
-+ and delete sys/syscall.h include.
-+
-+2015-08-07 Mike Frysinger <vapier@gentoo.org>
-+
-+ * sysdeps/hppa/dl-symaddr.c (_dl_symbol_address): Add rtld_hidden_def.
-+
-+2015-08-05 Zack Weinberg <zackw@panix.com>
-+
-+ * misc/regexp.h: Update comments.
-+
- 2015-08-05 Carlos O'Donell <carlos@systemhalted.org>
-
- * version.h (RELEASE): Set to "stable".
-diff --git a/NEWS b/NEWS
-index 4c31de7..7c4fbc6 100644
---- a/NEWS
-+++ b/NEWS
-@@ -5,6 +5,16 @@ See the end for copying conditions.
- Please send GNU C library bug reports via <http://sourceware.org/bugzilla/>
- using `glibc' in the "product" field.
-
-+Version 2.22.1
-+
-+* The following bugs are resolved with this release:
-+
-+ 17905, 18420, 18421, 18480, 18589, 18743, 18778, 18781, 18787, 18796,
-+ 18870, 18887, 18921, 18928, 18969, 18985, 19018, 19174, 19178.
-+
-+* The LD_POINTER_GUARD environment variable can no longer be used to
-+ disable the pointer guard feature. It is always enabled.
-+
- Version 2.22
-
- * The following bugs are resolved with this release:
-@@ -84,7 +94,7 @@ Version 2.22
- release. Use of this header will trigger a deprecation warning.
- Application developers should update their code to use <regex.h> instead.
-
-- This header was formerly part of SUSv2, but was deprecated in 1997 and
-+ This header was formerly part of SUS, but was deprecated in 1994 and
- removed from the standard in 2001. Also, the glibc implementation
- leaks memory. See BZ#18681 for more details.
-
-diff --git a/catgets/Makefile b/catgets/Makefile
-index 4624a88..56de38b 100644
---- a/catgets/Makefile
-+++ b/catgets/Makefile
-@@ -34,6 +34,7 @@ test-srcs = test-gencat
- ifeq ($(run-built-tests),yes)
- tests-special += $(objpfx)de/libc.cat $(objpfx)test1.cat $(objpfx)test2.cat \
- $(objpfx)sample.SJIS.cat $(objpfx)test-gencat.out
-+tests-special += $(objpfx)tst-catgets-mem.out
- endif
-
- gencat-modules = xmalloc
-@@ -50,9 +51,11 @@ catgets-CPPFLAGS := -DNLSPATH='"$(msgcatdir)/%L/%N:$(msgcatdir)/%L/LC_MESSAGES/%
-
- generated += de.msg test1.cat test1.h test2.cat test2.h sample.SJIS.cat \
- test-gencat.h
-+generated += tst-catgets.mtrace tst-catgets-mem.out
-+
- generated-dirs += de
-
--tst-catgets-ENV = NLSPATH="$(objpfx)%l/%N.cat" LANG=de
-+tst-catgets-ENV = NLSPATH="$(objpfx)%l/%N.cat" LANG=de MALLOC_TRACE=$(objpfx)tst-catgets.mtrace
-
- ifeq ($(run-built-tests),yes)
- # This test just checks whether the program produces any error or not.
-@@ -86,4 +89,8 @@ $(objpfx)test-gencat.out: test-gencat.sh $(objpfx)test-gencat \
- $(objpfx)sample.SJIS.cat: sample.SJIS $(objpfx)gencat
- $(built-program-cmd) -H $(objpfx)test-gencat.h < $(word 1,$^) > $@; \
- $(evaluate-test)
-+
-+$(objpfx)tst-catgets-mem.out: $(objpfx)tst-catgets.out
-+ $(common-objpfx)malloc/mtrace $(objpfx)tst-catgets.mtrace > $@; \
-+ $(evaluate-test)
- endif
-diff --git a/catgets/catgets.c b/catgets/catgets.c
-index cf93d56..4be452d 100644
---- a/catgets/catgets.c
-+++ b/catgets/catgets.c
-@@ -16,7 +16,6 @@
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
--#include <alloca.h>
- #include <errno.h>
- #include <locale.h>
- #include <nl_types.h>
-@@ -35,6 +34,7 @@ catopen (const char *cat_name, int flag)
- __nl_catd result;
- const char *env_var = NULL;
- const char *nlspath = NULL;
-+ char *tmp = NULL;
-
- if (strchr (cat_name, '/') == NULL)
- {
-@@ -54,7 +54,10 @@ catopen (const char *cat_name, int flag)
- {
- /* Append the system dependent directory. */
- size_t len = strlen (nlspath) + 1 + sizeof NLSPATH;
-- char *tmp = alloca (len);
-+ tmp = malloc (len);
-+
-+ if (__glibc_unlikely (tmp == NULL))
-+ return (nl_catd) -1;
-
- __stpcpy (__stpcpy (__stpcpy (tmp, nlspath), ":"), NLSPATH);
- nlspath = tmp;
-@@ -65,16 +68,18 @@ catopen (const char *cat_name, int flag)
-
- result = (__nl_catd) malloc (sizeof (*result));
- if (result == NULL)
-- /* We cannot get enough memory. */
-- return (nl_catd) -1;
--
-- if (__open_catalog (cat_name, nlspath, env_var, result) != 0)
-+ {
-+ /* We cannot get enough memory. */
-+ result = (nl_catd) -1;
-+ }
-+ else if (__open_catalog (cat_name, nlspath, env_var, result) != 0)
- {
- /* Couldn't open the file. */
- free ((void *) result);
-- return (nl_catd) -1;
-+ result = (nl_catd) -1;
- }
-
-+ free (tmp);
- return (nl_catd) result;
- }
-
-diff --git a/catgets/open_catalog.c b/catgets/open_catalog.c
-index e069416..9f4d776 100644
---- a/catgets/open_catalog.c
-+++ b/catgets/open_catalog.c
-@@ -47,6 +47,7 @@ __open_catalog (const char *cat_name, const char *nlspath, const char *env_var,
- size_t tab_size;
- const char *lastp;
- int result = -1;
-+ char *buf = NULL;
-
- if (strchr (cat_name, '/') != NULL || nlspath == NULL)
- fd = open_not_cancel_2 (cat_name, O_RDONLY);
-@@ -57,23 +58,23 @@ __open_catalog (const char *cat_name, const char *nlspath, const char *env_var,
- if (__glibc_unlikely (bufact + (n) >= bufmax)) \
- { \
- char *old_buf = buf; \
-- bufmax += 256 + (n); \
-- buf = (char *) alloca (bufmax); \
-- memcpy (buf, old_buf, bufact); \
-+ bufmax += (bufmax < 256 + (n)) ? 256 + (n) : bufmax; \
-+ buf = realloc (buf, bufmax); \
-+ if (__glibc_unlikely (buf == NULL)) \
-+ { \
-+ free (old_buf); \
-+ return -1; \
-+ } \
- }
-
- /* The RUN_NLSPATH variable contains a colon separated list of
- descriptions where we expect to find catalogs. We have to
- recognize certain % substitutions and stop when we found the
- first existing file. */
-- char *buf;
- size_t bufact;
-- size_t bufmax;
-+ size_t bufmax = 0;
- size_t len;
-
-- buf = NULL;
-- bufmax = 0;
--
- fd = -1;
- while (*run_nlspath != '\0')
- {
-@@ -188,7 +189,10 @@ __open_catalog (const char *cat_name, const char *nlspath, const char *env_var,
-
- /* Avoid dealing with directories and block devices */
- if (__builtin_expect (fd, 0) < 0)
-- return -1;
-+ {
-+ free (buf);
-+ return -1;
-+ }
-
- if (__builtin_expect (__fxstat64 (_STAT_VER, fd, &st), 0) < 0)
- goto close_unlock_return;
-@@ -325,6 +329,7 @@ __open_catalog (const char *cat_name, const char *nlspath, const char *env_var,
- /* Release the lock again. */
- close_unlock_return:
- close_not_cancel_no_status (fd);
-+ free (buf);
-
- return result;
- }
-diff --git a/catgets/tst-catgets.c b/catgets/tst-catgets.c
-index a0a4089..0886938 100644
---- a/catgets/tst-catgets.c
-+++ b/catgets/tst-catgets.c
-@@ -1,7 +1,10 @@
-+#include <assert.h>
- #include <mcheck.h>
- #include <nl_types.h>
- #include <stdio.h>
-+#include <stdlib.h>
- #include <string.h>
-+#include <sys/resource.h>
-
-
- static const char *msgs[] =
-@@ -12,6 +15,33 @@ static const char *msgs[] =
- };
- #define nmsgs (sizeof (msgs) / sizeof (msgs[0]))
-
-+
-+/* Test for unbounded alloca. */
-+static int
-+do_bz17905 (void)
-+{
-+ char *buf;
-+ struct rlimit rl;
-+ nl_catd result;
-+
-+ const int sz = 1024 * 1024;
-+
-+ getrlimit (RLIMIT_STACK, &rl);
-+ rl.rlim_cur = sz;
-+ setrlimit (RLIMIT_STACK, &rl);
-+
-+ buf = malloc (sz + 1);
-+ memset (buf, 'A', sz);
-+ buf[sz] = '\0';
-+ setenv ("NLSPATH", buf, 1);
-+
-+ result = catopen (buf, NL_CAT_LOCALE);
-+ assert (result == (nl_catd) -1);
-+
-+ free (buf);
-+ return 0;
-+}
-+
- #define ROUNDS 5
-
- static int
-@@ -62,6 +92,7 @@ do_test (void)
- }
- }
-
-+ result += do_bz17905 ();
- return result;
- }
-
-diff --git a/config.make.in b/config.make.in
-index a9f5696..46cd9bb 100644
---- a/config.make.in
-+++ b/config.make.in
-@@ -51,6 +51,7 @@ have-z-combreloc = @libc_cv_z_combreloc@
- have-z-execstack = @libc_cv_z_execstack@
- have-Bgroup = @libc_cv_Bgroup@
- have-protected-data = @libc_cv_protected_data@
-+have-glob-dat-reloc = @libc_cv_has_glob_dat@
- with-fp = @with_fp@
- old-glibc-headers = @old_glibc_headers@
- unwind-find-fde = @libc_cv_gcc_unwind_find_fde@
-diff --git a/configure b/configure
-index 45cc7cb..4f87b31 100755
---- a/configure
-+++ b/configure
-@@ -628,6 +628,7 @@ gnu89_inline
- libc_cv_ssp
- fno_unit_at_a_time
- libc_cv_output_format
-+libc_cv_has_glob_dat
- libc_cv_hashstyle
- libc_cv_fpie
- libc_cv_z_execstack
-@@ -6335,6 +6336,39 @@ $as_echo "$libc_cv_use_default_link" >&6; }
- use_default_link=$libc_cv_use_default_link
- fi
-
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GLOB_DAT reloc" >&5
-+$as_echo_n "checking for GLOB_DAT reloc... " >&6; }
-+if ${libc_cv_has_glob_dat+:} false; then :
-+ $as_echo_n "(cached) " >&6
-+else
-+ cat > conftest.c <<EOF
-+extern int mumble;
-+int foo (void) { return mumble; }
-+EOF
-+if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
-+ -fPIC -shared -o conftest.so conftest.c
-+ -nostdlib -nostartfiles
-+ 1>&5'
-+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
-+ (eval $ac_try) 2>&5
-+ ac_status=$?
-+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-+ test $ac_status = 0; }; }
-+then
-+ if $READELF -rW conftest.so | grep '_GLOB_DAT' > /dev/null; then
-+ libc_cv_has_glob_dat=yes
-+ else
-+ libc_cv_has_glob_dat=no
-+ fi
-+else
-+ libc_cv_has_glob_dat=no
-+fi
-+rm -f conftest*
-+fi
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_has_glob_dat" >&5
-+$as_echo "$libc_cv_has_glob_dat" >&6; }
-+
-+
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking linker output format" >&5
- $as_echo_n "checking linker output format... " >&6; }
- if ${libc_cv_output_format+:} false; then :
-diff --git a/configure.ac b/configure.ac
-index 7e9383a..8be612d 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -1535,6 +1535,29 @@ $ac_try"
- use_default_link=$libc_cv_use_default_link
- fi
-
-+AC_CACHE_CHECK(for GLOB_DAT reloc,
-+ libc_cv_has_glob_dat, [dnl
-+cat > conftest.c <<EOF
-+extern int mumble;
-+int foo (void) { return mumble; }
-+EOF
-+if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
-+ -fPIC -shared -o conftest.so conftest.c
-+ -nostdlib -nostartfiles
-+ 1>&AS_MESSAGE_LOG_FD])
-+then
-+dnl look for GLOB_DAT relocation.
-+ if $READELF -rW conftest.so | grep '_GLOB_DAT' > /dev/null; then
-+ libc_cv_has_glob_dat=yes
-+ else
-+ libc_cv_has_glob_dat=no
-+ fi
-+else
-+ libc_cv_has_glob_dat=no
-+fi
-+rm -f conftest*])
-+AC_SUBST(libc_cv_has_glob_dat)
-+
- AC_CACHE_CHECK(linker output format, libc_cv_output_format, [dnl
- if libc_cv_output_format=`
- ${CC-cc} -nostartfiles -nostdlib -Wl,--print-output-format 2>&AS_MESSAGE_LOG_FD`
-diff --git a/elf/Makefile b/elf/Makefile
-index 4ceeaf8..a2c43bc 100644
---- a/elf/Makefile
-+++ b/elf/Makefile
-@@ -148,7 +148,8 @@ tests += loadtest restest1 preloadtest loadfail multiload origtest resolvfail \
- tst-unique1 tst-unique2 $(if $(CXX),tst-unique3 tst-unique4 \
- tst-nodelete) \
- tst-initorder tst-initorder2 tst-relsort1 tst-null-argv \
-- tst-ptrguard1 tst-tlsalign tst-tlsalign-extern tst-nodelete-opened
-+ tst-ptrguard1 tst-tlsalign tst-tlsalign-extern tst-nodelete-opened \
-+ tst-nodelete2
- # reldep9
- ifeq ($(build-hardcoded-path-in-tests),yes)
- tests += tst-dlopen-aout
-@@ -218,7 +219,7 @@ modules-names = testobj1 testobj2 testobj3 testobj4 testobj5 testobj6 \
- tst-initorder2d \
- tst-relsort1mod1 tst-relsort1mod2 tst-array2dep \
- tst-array5dep tst-null-argv-lib \
-- tst-tlsalign-lib tst-nodelete-opened-lib
-+ tst-tlsalign-lib tst-nodelete-opened-lib tst-nodelete2mod
- ifeq (yes,$(have-protected-data))
- modules-names += tst-protected1moda tst-protected1modb
- tests += tst-protected1a tst-protected1b
-@@ -292,6 +293,13 @@ check-abi: $(objpfx)check-abi-ld.out
- tests-special += $(objpfx)check-abi-ld.out
- update-abi: update-abi-ld
-
-+ifeq ($(have-glob-dat-reloc),yes)
-+tests += tst-prelink
-+ifeq ($(run-built-tests),yes)
-+tests-special += $(objpfx)tst-prelink-cmp.out
-+endif
-+endif
-+
- include ../Rules
-
- ifeq (yes,$(build-shared))
-@@ -594,6 +602,7 @@ tst-auditmod9b.so-no-z-defs = yes
- tst-nodelete-uniquemod.so-no-z-defs = yes
- tst-nodelete-rtldmod.so-no-z-defs = yes
- tst-nodelete-zmod.so-no-z-defs = yes
-+tst-nodelete2mod.so-no-z-defs = yes
-
- ifeq ($(build-shared),yes)
- # Build all the modules even when not actually running test programs.
-@@ -1164,6 +1173,11 @@ $(objpfx)tst-nodelete.out: $(objpfx)tst-nodelete-uniquemod.so \
- LDFLAGS-tst-nodelete = -rdynamic
- LDFLAGS-tst-nodelete-zmod.so = -Wl,--enable-new-dtags,-z,nodelete
-
-+$(objpfx)tst-nodelete2: $(libdl)
-+$(objpfx)tst-nodelete2.out: $(objpfx)tst-nodelete2mod.so
-+
-+LDFLAGS-tst-nodelete2 = -rdynamic
-+
- $(objpfx)tst-initorder-cmp.out: tst-initorder.exp $(objpfx)tst-initorder.out
- cmp $^ > $@; \
- $(evaluate-test)
-@@ -1205,3 +1219,13 @@ $(objpfx)tst-unused-dep.out: $(objpfx)testobj1.so
- $(objpfx)tst-unused-dep-cmp.out: $(objpfx)tst-unused-dep.out
- cmp $< /dev/null > $@; \
- $(evaluate-test)
-+
-+tst-prelink-ENV = LD_TRACE_PRELINKING=1
-+
-+$(objpfx)tst-prelink-conflict.out: $(objpfx)tst-prelink.out
-+ grep stdout $< | grep conflict | $(AWK) '{ print $$10, $$11 }' > $@
-+
-+$(objpfx)tst-prelink-cmp.out: tst-prelink.exp \
-+ $(objpfx)tst-prelink-conflict.out
-+ cmp $^ > $@; \
-+ $(evaluate-test)
-diff --git a/elf/dl-close.c b/elf/dl-close.c
-index 9105277..c897247 100644
---- a/elf/dl-close.c
-+++ b/elf/dl-close.c
-@@ -144,6 +144,14 @@ _dl_close_worker (struct link_map *map, bool force)
- char done[nloaded];
- struct link_map *maps[nloaded];
-
-+ /* Clear DF_1_NODELETE to force object deletion. We don't need to touch
-+ l_tls_dtor_count because forced object deletion only happens when an
-+ error occurs during object load. Destructor registration for TLS
-+ non-POD objects should not have happened till then for this
-+ object. */
-+ if (force)
-+ map->l_flags_1 &= ~DF_1_NODELETE;
-+
- /* Run over the list and assign indexes to the link maps and enter
- them into the MAPS array. */
- int idx = 0;
-@@ -153,13 +161,6 @@ _dl_close_worker (struct link_map *map, bool force)
- maps[idx] = l;
- ++idx;
-
-- /* Clear DF_1_NODELETE to force object deletion. We don't need to touch
-- l_tls_dtor_count because forced object deletion only happens when an
-- error occurs during object load. Destructor registration for TLS
-- non-POD objects should not have happened till then for this
-- object. */
-- if (force)
-- l->l_flags_1 &= ~DF_1_NODELETE;
- }
- assert (idx == nloaded);
-
-diff --git a/elf/dl-load.c b/elf/dl-load.c
-index 0c052e4..7e6f4c5 100644
---- a/elf/dl-load.c
-+++ b/elf/dl-load.c
-@@ -42,6 +42,7 @@
- #include <dl-map-segments.h>
- #include <dl-unmap-segments.h>
- #include <dl-machine-reject-phdr.h>
-+#include <dl-sysdep-open.h>
-
-
- #include <endian.h>
-@@ -1471,9 +1472,13 @@ print_search_path (struct r_search_path_elem **list,
- ignore only ELF files for other architectures. Non-ELF files and
- ELF files with different header information cause fatal errors since
- this could mean there is something wrong in the installation and the
-- user might want to know about this. */
-+ user might want to know about this.
-+
-+ If FD is not -1, then the file is already open and FD refers to it.
-+ In that case, FD is consumed for both successful and error returns. */
- static int
--open_verify (const char *name, struct filebuf *fbp, struct link_map *loader,
-+open_verify (const char *name, int fd,
-+ struct filebuf *fbp, struct link_map *loader,
- int whatcode, int mode, bool *found_other_class, bool free_name)
- {
- /* This is the expected ELF header. */
-@@ -1514,6 +1519,7 @@ open_verify (const char *name, struct filebuf *fbp, struct link_map *loader,
- if (__glibc_unlikely (GLRO(dl_naudit) > 0) && whatcode != 0
- && loader->l_auditing == 0)
- {
-+ const char *original_name = name;
- struct audit_ifaces *afct = GLRO(dl_audit);
- for (unsigned int cnt = 0; cnt < GLRO(dl_naudit); ++cnt)
- {
-@@ -1528,11 +1534,21 @@ open_verify (const char *name, struct filebuf *fbp, struct link_map *loader,
-
- afct = afct->next;
- }
-+
-+ if (fd != -1 && name != original_name && strcmp (name, original_name))
-+ {
-+ /* An audit library changed what we're supposed to open,
-+ so FD no longer matches it. */
-+ __close (fd);
-+ fd = -1;
-+ }
- }
- #endif
-
-- /* Open the file. We always open files read-only. */
-- int fd = __open (name, O_RDONLY | O_CLOEXEC);
-+ if (fd == -1)
-+ /* Open the file. We always open files read-only. */
-+ fd = __open (name, O_RDONLY | O_CLOEXEC);
-+
- if (fd != -1)
- {
- ElfW(Ehdr) *ehdr;
-@@ -1801,7 +1817,7 @@ open_path (const char *name, size_t namelen, int mode,
- if (__glibc_unlikely (GLRO(dl_debug_mask) & DL_DEBUG_LIBS))
- _dl_debug_printf (" trying file=%s\n", buf);
-
-- fd = open_verify (buf, fbp, loader, whatcode, mode,
-+ fd = open_verify (buf, -1, fbp, loader, whatcode, mode,
- found_other_class, false);
- if (this_dir->status[cnt] == unknown)
- {
-@@ -2041,6 +2057,20 @@ _dl_map_object (struct link_map *loader, const char *name,
- &loader->l_runpath_dirs, &realname, &fb, loader,
- LA_SER_RUNPATH, &found_other_class);
-
-+ if (fd == -1)
-+ {
-+ realname = _dl_sysdep_open_object (name, namelen, &fd);
-+ if (realname != NULL)
-+ {
-+ fd = open_verify (realname, fd,
-+ &fb, loader ?: GL(dl_ns)[nsid]._ns_loaded,
-+ LA_SER_CONFIG, mode, &found_other_class,
-+ false);
-+ if (fd == -1)
-+ free (realname);
-+ }
-+ }
-+
- #ifdef USE_LDCONFIG
- if (fd == -1
- && (__glibc_likely ((mode & __RTLD_SECURE) == 0)
-@@ -2086,7 +2116,7 @@ _dl_map_object (struct link_map *loader, const char *name,
-
- if (cached != NULL)
- {
-- fd = open_verify (cached,
-+ fd = open_verify (cached, -1,
- &fb, loader ?: GL(dl_ns)[nsid]._ns_loaded,
- LA_SER_CONFIG, mode, &found_other_class,
- false);
-@@ -2121,7 +2151,7 @@ _dl_map_object (struct link_map *loader, const char *name,
- fd = -1;
- else
- {
-- fd = open_verify (realname, &fb,
-+ fd = open_verify (realname, -1, &fb,
- loader ?: GL(dl_ns)[nsid]._ns_loaded, 0, mode,
- &found_other_class, true);
- if (__glibc_unlikely (fd == -1))
-diff --git a/elf/dl-lookup.c b/elf/dl-lookup.c
-index 11cb44b..acf5280 100644
---- a/elf/dl-lookup.c
-+++ b/elf/dl-lookup.c
-@@ -1016,6 +1016,18 @@ _dl_debug_bindings (const char *undef_name, struct link_map *undef_map,
- #ifdef SHARED
- if (GLRO(dl_debug_mask) & DL_DEBUG_PRELINK)
- {
-+/* ELF_RTYPE_CLASS_XXX must match RTYPE_CLASS_XXX used by prelink with
-+ LD_TRACE_PRELINKING. */
-+#define RTYPE_CLASS_VALID 8
-+#define RTYPE_CLASS_PLT (8|1)
-+#define RTYPE_CLASS_COPY (8|2)
-+#define RTYPE_CLASS_TLS (8|4)
-+#if ELF_RTYPE_CLASS_PLT != 0 && ELF_RTYPE_CLASS_PLT != 1
-+# error ELF_RTYPE_CLASS_PLT must be 0 or 1!
-+#endif
-+#if ELF_RTYPE_CLASS_COPY != 0 && ELF_RTYPE_CLASS_COPY != 2
-+# error ELF_RTYPE_CLASS_COPY must be 0 or 2!
-+#endif
- int conflict = 0;
- struct sym_val val = { NULL, NULL };
-
-@@ -1071,12 +1083,17 @@ _dl_debug_bindings (const char *undef_name, struct link_map *undef_map,
-
- if (value->s)
- {
-+ /* Keep only ELF_RTYPE_CLASS_PLT and ELF_RTYPE_CLASS_COPY
-+ bits since since prelink only uses them. */
-+ type_class &= ELF_RTYPE_CLASS_PLT | ELF_RTYPE_CLASS_COPY;
- if (__glibc_unlikely (ELFW(ST_TYPE) (value->s->st_info)
- == STT_TLS))
-- type_class = 4;
-+ /* Clear the RTYPE_CLASS_VALID bit in RTYPE_CLASS_TLS. */
-+ type_class = RTYPE_CLASS_TLS & ~RTYPE_CLASS_VALID;
- else if (__glibc_unlikely (ELFW(ST_TYPE) (value->s->st_info)
- == STT_GNU_IFUNC))
-- type_class |= 8;
-+ /* Set the RTYPE_CLASS_VALID bit. */
-+ type_class |= RTYPE_CLASS_VALID;
- }
-
- if (conflict
-diff --git a/elf/dl-sysdep-open.h b/elf/dl-sysdep-open.h
-new file mode 100644
-index 0000000..a63d9f5
---- /dev/null
-+++ b/elf/dl-sysdep-open.h
-@@ -0,0 +1,45 @@
-+/* System-specific call to open a shared object by name. Stub version.
-+ Copyright (C) 2015 Free Software Foundation, Inc.
-+ This file is part of the GNU C Library.
-+
-+ The GNU C Library is free software; you can redistribute it and/or
-+ modify it under the terms of the GNU Lesser General Public
-+ License as published by the Free Software Foundation; either
-+ version 2.1 of the License, or (at your option) any later version.
-+
-+ The GNU C Library is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ Lesser General Public License for more details.
-+
-+ You should have received a copy of the GNU Lesser General Public
-+ License along with the GNU C Library; if not, see
-+ <http://www.gnu.org/licenses/>. */
-+
-+#ifndef _DL_SYSDEP_OPEN_H
-+#define _DL_SYSDEP_OPEN_H 1
-+
-+#include <assert.h>
-+#include <stddef.h>
-+
-+/* NAME is a name without slashes, as it appears in a DT_NEEDED entry
-+ or a dlopen call's argument or suchlike. NAMELEN is (strlen (NAME) + 1).
-+
-+ Find NAME in an OS-dependent fashion, and return its "real" name.
-+ Optionally fill in *FD with a file descriptor open on that file (or
-+ else leave its initial value of -1). The return value is a new
-+ malloc'd string, which will be free'd by the caller. If NAME is
-+ resolved to an actual file that can be opened, then the return
-+ value should name that file (and if *FD was not set, then a normal
-+ __open call on that string will be made). If *FD was set by some
-+ other means than a normal open and there is no "real" name to use,
-+ then __strdup (NAME) is fine (modulo error checking). */
-+
-+static inline char *
-+_dl_sysdep_open_object (const char *name, size_t namelen, int *fd)
-+{
-+ assert (*fd == -1);
-+ return NULL;
-+}
-+
-+#endif /* dl-sysdep-open.h */
-diff --git a/elf/rtld.c b/elf/rtld.c
-index 69873c2..07e741c 100644
---- a/elf/rtld.c
-+++ b/elf/rtld.c
-@@ -162,7 +162,6 @@ struct rtld_global_ro _rtld_global_ro attribute_relro =
- ._dl_hwcap_mask = HWCAP_IMPORTANT,
- ._dl_lazy = 1,
- ._dl_fpu_control = _FPU_DEFAULT,
-- ._dl_pointer_guard = 1,
- ._dl_pagesize = EXEC_PAGESIZE,
- ._dl_inhibit_cache = 0,
-
-@@ -709,15 +708,12 @@ security_init (void)
- #endif
-
- /* Set up the pointer guard as well, if necessary. */
-- if (GLRO(dl_pointer_guard))
-- {
-- uintptr_t pointer_chk_guard = _dl_setup_pointer_guard (_dl_random,
-- stack_chk_guard);
-+ uintptr_t pointer_chk_guard
-+ = _dl_setup_pointer_guard (_dl_random, stack_chk_guard);
- #ifdef THREAD_SET_POINTER_GUARD
-- THREAD_SET_POINTER_GUARD (pointer_chk_guard);
-+ THREAD_SET_POINTER_GUARD (pointer_chk_guard);
- #endif
-- __pointer_chk_guard_local = pointer_chk_guard;
-- }
-+ __pointer_chk_guard_local = pointer_chk_guard;
-
- /* We do not need the _dl_random value anymore. The less
- information we leave behind, the better, so clear the
-@@ -2471,9 +2467,6 @@ process_envvars (enum mode *modep)
- GLRO(dl_use_load_bias) = envline[14] == '1' ? -1 : 0;
- break;
- }
--
-- if (memcmp (envline, "POINTER_GUARD", 13) == 0)
-- GLRO(dl_pointer_guard) = envline[14] != '0';
- break;
-
- case 14:
-diff --git a/elf/tst-nodelete2.c b/elf/tst-nodelete2.c
-new file mode 100644
-index 0000000..388e8af
---- /dev/null
-+++ b/elf/tst-nodelete2.c
-@@ -0,0 +1,37 @@
-+#include "../dlfcn/dlfcn.h"
-+#include <stdio.h>
-+#include <stdlib.h>
-+#include <gnu/lib-names.h>
-+
-+static int
-+do_test (void)
-+{
-+ int result = 0;
-+
-+ printf ("\nOpening pthread library.\n");
-+ void *pthread = dlopen (LIBPTHREAD_SO, RTLD_LAZY);
-+
-+ /* This is a test for correct DF_1_NODELETE clearing when dlopen failure
-+ happens. We should clear DF_1_NODELETE for failed library only, because
-+ doing this for others (e.g. libpthread) might cause them to be unloaded,
-+ that may lead to some global references (e.g. __rtld_lock_unlock) to be
-+ broken. The dlopen should fail because of undefined symbols in shared
-+ library, that cause DF_1_NODELETE to be cleared. For libpthread, this
-+ flag should be set, because if not, SIGSEGV will happen in dlclose. */
-+ if (dlopen ("tst-nodelete2mod.so", RTLD_NOW) != NULL)
-+ {
-+ printf ("Unique symbols test failed\n");
-+ result = 1;
-+ }
-+
-+ if (pthread)
-+ dlclose (pthread);
-+
-+ if (result == 0)
-+ printf ("SUCCESS\n");
-+
-+ return result;
-+}
-+
-+#define TEST_FUNCTION do_test ()
-+#include "../test-skeleton.c"
-diff --git a/elf/tst-nodelete2mod.c b/elf/tst-nodelete2mod.c
-new file mode 100644
-index 0000000..e88c756
---- /dev/null
-+++ b/elf/tst-nodelete2mod.c
-@@ -0,0 +1,7 @@
-+/* Undefined symbol. */
-+extern int not_exist (void);
-+
-+int foo (void)
-+{
-+ return not_exist ();
-+}
-diff --git a/elf/tst-prelink.c b/elf/tst-prelink.c
-new file mode 100644
-index 0000000..ab61c4e
---- /dev/null
-+++ b/elf/tst-prelink.c
-@@ -0,0 +1,30 @@
-+/* Test the output from the environment variable, LD_TRACE_PRELINKING,
-+ for prelink.
-+ Copyright (C) 2015 Free Software Foundation, Inc.
-+ This file is part of the GNU C Library.
-+
-+ The GNU C Library is free software; you can redistribute it and/or
-+ modify it under the terms of the GNU Lesser General Public
-+ License as published by the Free Software Foundation; either
-+ version 2.1 of the License, or (at your option) any later version.
-+
-+ The GNU C Library is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ Lesser General Public License for more details.
-+
-+ You should have received a copy of the GNU Lesser General Public
-+ License along with the GNU C Library; if not, see
-+ <http://www.gnu.org/licenses/>. */
-+
-+#include <stdio.h>
-+
-+static int
-+do_test (void)
-+{
-+ fprintf (stdout, "hello\n");
-+ return 0;
-+}
-+
-+#define TEST_FUNCTION do_test ()
-+#include "../test-skeleton.c"
-diff --git a/elf/tst-prelink.exp b/elf/tst-prelink.exp
-new file mode 100644
-index 0000000..b35b4c9
---- /dev/null
-+++ b/elf/tst-prelink.exp
-@@ -0,0 +1 @@
-+/0 stdout
-diff --git a/elf/tst-znodelete-zlib.cc b/elf/tst-znodelete-zlib.cc
-deleted file mode 100644
-index 1e8f368..0000000
---- a/elf/tst-znodelete-zlib.cc
-+++ /dev/null
-@@ -1,6 +0,0 @@
--extern int not_exist (void);
--
--int foo (void)
--{
-- return not_exist ();
--}
-diff --git a/io/test-lfs.c b/io/test-lfs.c
-index 539c2a2..b6ebae4 100644
---- a/io/test-lfs.c
-+++ b/io/test-lfs.c
-@@ -144,7 +144,7 @@ test_ftello (void)
- int
- do_test (int argc, char *argv[])
- {
-- int ret;
-+ int ret, fd2;
- struct stat64 statbuf;
-
- ret = lseek64 (fd, TWO_GB+100, SEEK_SET);
-@@ -195,6 +195,25 @@ do_test (int argc, char *argv[])
- error (EXIT_FAILURE, 0, "stat reported size %lld instead of %lld.",
- (long long int) statbuf.st_size, (TWO_GB + 100 + 5));
-
-+ fd2 = openat64 (AT_FDCWD, name, O_RDWR);
-+ if (fd2 == -1)
-+ {
-+ if (errno == ENOSYS)
-+ {
-+ /* Silently ignore this test. */
-+ error (0, 0, "openat64 is not supported");
-+ }
-+ else
-+ error (EXIT_FAILURE, errno, "openat64 failed to open big file");
-+ }
-+ else
-+ {
-+ ret = close (fd2);
-+
-+ if (ret == -1)
-+ error (EXIT_FAILURE, errno, "error closing file");
-+ }
-+
- test_ftello ();
-
- return 0;
-diff --git a/locale/C-collate.c b/locale/C-collate.c
-index d7f3c55..06dfdfa 100644
---- a/locale/C-collate.c
-+++ b/locale/C-collate.c
-@@ -144,8 +144,6 @@ const struct __locale_data _nl_C_LC_COLLATE attribute_hidden =
- /* _NL_COLLATE_COLLSEQWC */
- { .string = (const char *) collseqwc },
- /* _NL_COLLATE_CODESET */
-- { .string = _nl_C_codeset },
-- /* _NL_COLLATE_ENCODING_TYPE */
-- { .word = __cet_8bit }
-+ { .string = _nl_C_codeset }
- }
- };
-diff --git a/locale/categories.def b/locale/categories.def
-index 045489d..a8dda53 100644
---- a/locale/categories.def
-+++ b/locale/categories.def
-@@ -58,7 +58,6 @@ DEFINE_CATEGORY
- DEFINE_ELEMENT (_NL_COLLATE_COLLSEQMB, "collate-collseqmb", std, wstring)
- DEFINE_ELEMENT (_NL_COLLATE_COLLSEQWC, "collate-collseqwc", std, wstring)
- DEFINE_ELEMENT (_NL_COLLATE_CODESET, "collate-codeset", std, string)
-- DEFINE_ELEMENT (_NL_COLLATE_ENCODING_TYPE, "collate-encoding-type", std, word)
- ), NO_POSTLOAD)
-
-
-diff --git a/locale/langinfo.h b/locale/langinfo.h
-index ffc5c7f..a565d9d 100644
---- a/locale/langinfo.h
-+++ b/locale/langinfo.h
-@@ -255,7 +255,6 @@ enum
- _NL_COLLATE_COLLSEQMB,
- _NL_COLLATE_COLLSEQWC,
- _NL_COLLATE_CODESET,
-- _NL_COLLATE_ENCODING_TYPE,
- _NL_NUM_LC_COLLATE,
-
- /* LC_CTYPE category: character classification.
-diff --git a/locale/loadlocale.c b/locale/loadlocale.c
-index fdba6e9..dcbb833 100644
---- a/locale/loadlocale.c
-+++ b/locale/loadlocale.c
-@@ -121,9 +121,10 @@ _nl_intern_locale_data (int category, const void *data, size_t datasize)
- switch (category)
- {
- #define CATTEST(cat) \
-- case LC_##cat: \
-- assert (cnt < (sizeof (_nl_value_type_LC_##cat) \
-- / sizeof (_nl_value_type_LC_##cat[0]))); \
-+ case LC_##cat: \
-+ if (cnt >= (sizeof (_nl_value_type_LC_##cat) \
-+ / sizeof (_nl_value_type_LC_##cat[0]))) \
-+ goto puntdata; \
- break
- CATTEST (NUMERIC);
- CATTEST (TIME);
-diff --git a/locale/localeinfo.h b/locale/localeinfo.h
-index bdab9fe..1d2ee00 100644
---- a/locale/localeinfo.h
-+++ b/locale/localeinfo.h
-@@ -110,14 +110,6 @@ enum coll_sort_rule
- sort_mask
- };
-
--/* Collation encoding type. */
--enum collation_encoding_type
--{
-- __cet_other,
-- __cet_8bit,
-- __cet_utf8
--};
--
- /* We can map the types of the entries into a few categories. */
- enum value_type
- {
-diff --git a/locale/programs/ld-collate.c b/locale/programs/ld-collate.c
-index a39a94f..dc0fe30 100644
---- a/locale/programs/ld-collate.c
-+++ b/locale/programs/ld-collate.c
-@@ -32,7 +32,6 @@
- #include "linereader.h"
- #include "locfile.h"
- #include "elem-hash.h"
--#include "../localeinfo.h"
-
- /* Uncomment the following line in the production version. */
- /* #define NDEBUG 1 */
-@@ -2131,8 +2130,6 @@ collate_output (struct localedef_t *locale, const struct charmap_t *charmap,
- /* The words have to be handled specially. */
- if (idx == _NL_ITEM_INDEX (_NL_COLLATE_SYMB_HASH_SIZEMB))
- add_locale_uint32 (&file, 0);
-- else if (idx == _NL_ITEM_INDEX (_NL_COLLATE_ENCODING_TYPE))
-- add_locale_uint32 (&file, __cet_other);
- else
- add_locale_empty (&file);
- }
-@@ -2496,12 +2493,6 @@ collate_output (struct localedef_t *locale, const struct charmap_t *charmap,
- add_locale_raw_data (&file, collate->mbseqorder, 256);
- add_locale_collseq_table (&file, &collate->wcseqorder);
- add_locale_string (&file, charmap->code_set_name);
-- if (strcmp (charmap->code_set_name, "UTF-8") == 0)
-- add_locale_uint32 (&file, __cet_utf8);
-- else if (charmap->mb_cur_max == 1)
-- add_locale_uint32 (&file, __cet_8bit);
-- else
-- add_locale_uint32 (&file, __cet_other);
- write_locale_data (output_path, LC_COLLATE, "LC_COLLATE", &file);
-
- obstack_free (&weightpool, NULL);
-diff --git a/misc/Makefile b/misc/Makefile
-index aecb0da..12055ce 100644
---- a/misc/Makefile
-+++ b/misc/Makefile
-@@ -76,7 +76,8 @@ install-lib := libg.a
- gpl2lgpl := error.c error.h
-
- tests := tst-dirname tst-tsearch tst-fdset tst-efgcvt tst-mntent tst-hsearch \
-- tst-error1 tst-pselect tst-insremque tst-mntent2 bug-hsearch1
-+ tst-error1 tst-pselect tst-insremque tst-mntent2 bug-hsearch1 \
-+ tst-mntent-blank-corrupt tst-mntent-blank-passno bug18240
- ifeq ($(run-built-tests),yes)
- tests-special += $(objpfx)tst-error1-mem.out
- endif
-diff --git a/misc/bug18240.c b/misc/bug18240.c
-new file mode 100644
-index 0000000..773586e
---- /dev/null
-+++ b/misc/bug18240.c
-@@ -0,0 +1,97 @@
-+/* Test integer wraparound in hcreate.
-+ Copyright (C) 2016 Free Software Foundation, Inc.
-+ This file is part of the GNU C Library.
-+
-+ The GNU C Library is free software; you can redistribute it and/or
-+ modify it under the terms of the GNU Lesser General Public
-+ License as published by the Free Software Foundation; either
-+ version 2.1 of the License, or (at your option) any later version.
-+
-+ The GNU C Library is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ Lesser General Public License for more details.
-+
-+ You should have received a copy of the GNU Lesser General Public
-+ License along with the GNU C Library; if not, see
-+ <http://www.gnu.org/licenses/>. */
-+
-+#include <errno.h>
-+#include <limits.h>
-+#include <search.h>
-+#include <stdbool.h>
-+#include <stdio.h>
-+#include <stdlib.h>
-+#include <sys/resource.h>
-+
-+static void
-+test_size (size_t size)
-+{
-+ int res = hcreate (size);
-+ if (res == 0)
-+ {
-+ if (errno == ENOMEM)
-+ return;
-+ printf ("error: hcreate (%zu): %m\n", size);
-+ exit (1);
-+ }
-+ char *keys[100];
-+ for (int i = 0; i < 100; ++i)
-+ {
-+ if (asprintf (keys + i, "%d", i) < 0)
-+ {
-+ printf ("error: asprintf: %m\n");
-+ exit (1);
-+ }
-+ ENTRY e = { keys[i], (char *) "value" };
-+ if (hsearch (e, ENTER) == NULL)
-+ {
-+ printf ("error: hsearch (\"%s\"): %m\n", keys[i]);
-+ exit (1);
-+ }
-+ }
-+ hdestroy ();
-+
-+ for (int i = 0; i < 100; ++i)
-+ free (keys[i]);
-+}
-+
-+static int
-+do_test (void)
-+{
-+ /* Limit the size of the process, so that memory allocation will
-+ fail without impacting the entire system. */
-+ {
-+ struct rlimit limit;
-+ if (getrlimit (RLIMIT_AS, &limit) != 0)
-+ {
-+ printf ("getrlimit (RLIMIT_AS) failed: %m\n");
-+ return 1;
-+ }
-+ long target = 100 * 1024 * 1024;
-+ if (limit.rlim_cur == RLIM_INFINITY || limit.rlim_cur > target)
-+ {
-+ limit.rlim_cur = target;
-+ if (setrlimit (RLIMIT_AS, &limit) != 0)
-+ {
-+ printf ("setrlimit (RLIMIT_AS) failed: %m\n");
-+ return 1;
-+ }
-+ }
-+ }
-+
-+ test_size (500);
-+ test_size (-1);
-+ test_size (-3);
-+ test_size (INT_MAX - 2);
-+ test_size (INT_MAX - 1);
-+ test_size (INT_MAX);
-+ test_size (((unsigned) INT_MAX) + 1);
-+ test_size (UINT_MAX - 2);
-+ test_size (UINT_MAX - 1);
-+ test_size (UINT_MAX);
-+ return 0;
-+}
-+
-+#define TEST_FUNCTION do_test ()
-+#include "../test-skeleton.c"
-diff --git a/misc/hsearch_r.c b/misc/hsearch_r.c
-index 9f55e84..661f0f6 100644
---- a/misc/hsearch_r.c
-+++ b/misc/hsearch_r.c
-@@ -19,7 +19,7 @@
- #include <errno.h>
- #include <malloc.h>
- #include <string.h>
--
-+#include <stdint.h>
- #include <search.h>
-
- /* [Aho,Sethi,Ullman] Compilers: Principles, Techniques and Tools, 1986
-@@ -46,15 +46,12 @@ static int
- isprime (unsigned int number)
- {
- /* no even number will be passed */
-- unsigned int div = 3;
--
-- while (div * div < number && number % div != 0)
-- div += 2;
--
-- return number % div != 0;
-+ for (unsigned int div = 3; div <= number / div; div += 2)
-+ if (number % div == 0)
-+ return 0;
-+ return 1;
- }
-
--
- /* Before using the hash table we must allocate memory for it.
- Test for an existing table are done. We allocate one element
- more as the found prime number says. This is done for more effective
-@@ -81,10 +78,19 @@ __hcreate_r (nel, htab)
- use will not work. */
- if (nel < 3)
- nel = 3;
-- /* Change nel to the first prime number not smaller as nel. */
-- nel |= 1; /* make odd */
-- while (!isprime (nel))
-- nel += 2;
-+
-+ /* Change nel to the first prime number in the range [nel, UINT_MAX - 2],
-+ The '- 2' means 'nel += 2' cannot overflow. */
-+ for (nel |= 1; ; nel += 2)
-+ {
-+ if (UINT_MAX - 2 < nel)
-+ {
-+ __set_errno (ENOMEM);
-+ return 0;
-+ }
-+ if (isprime (nel))
-+ break;
-+ }
-
- htab->size = nel;
- htab->filled = 0;
-diff --git a/misc/mntent_r.c b/misc/mntent_r.c
-index 6159873..4f26998 100644
---- a/misc/mntent_r.c
-+++ b/misc/mntent_r.c
-@@ -136,7 +136,9 @@ __getmntent_r (FILE *stream, struct mntent *mp, char *buffer, int bufsiz)
- end_ptr = strchr (buffer, '\n');
- if (end_ptr != NULL) /* chop newline */
- {
-- while (end_ptr[-1] == ' ' || end_ptr[-1] == '\t')
-+ /* Do not walk past the start of buffer if it's all whitespace. */
-+ while (end_ptr != buffer
-+ && (end_ptr[-1] == ' ' || end_ptr[-1] == '\t'))
- end_ptr--;
- *end_ptr = '\0';
- }
-diff --git a/misc/regexp.h b/misc/regexp.h
-index 3460989..42394f7 100644
---- a/misc/regexp.h
-+++ b/misc/regexp.h
-@@ -19,10 +19,11 @@
- #ifndef _REGEXP_H
- #define _REGEXP_H 1
-
--/* The contents of this header file were standardized in the
-- Single Unix Specification, Version 2 (1997) but marked as
-- LEGACY; new applications were already being encouraged to
-- use <regex.h> instead. POSIX.1-2001 removed this header.
-+/* The contents of this header file were originally standardized in
-+ the Single Unix Specification, Issue 3 (1992). In Issue 4 (1994)
-+ the header was marked as TO BE WITHDRAWN, and new applications
-+ were encouraged to use <regex.h> instead. It was officially
-+ withdrawn from the standard in Issue 6 (aka POSIX.1-2001).
-
- This header is provided only for backward compatibility.
- It will be removed in the next release of the GNU C Library.
-diff --git a/misc/sys/param.h b/misc/sys/param.h
-index 62b7ed2..1908b93 100644
---- a/misc/sys/param.h
-+++ b/misc/sys/param.h
-@@ -50,6 +50,9 @@
- #if !defined NOFILE && defined OPEN_MAX
- # define NOFILE OPEN_MAX
- #endif
-+#if !defined MAXHOSTNAMELEN && defined HOST_NAME_MAX
-+# define MAXHOSTNAMELEN HOST_NAME_MAX
-+#endif
- #ifndef NCARGS
- # ifdef ARG_MAX
- # define NCARGS ARG_MAX
-diff --git a/misc/tst-mntent-blank-corrupt.c b/misc/tst-mntent-blank-corrupt.c
-new file mode 100644
-index 0000000..92266a3
---- /dev/null
-+++ b/misc/tst-mntent-blank-corrupt.c
-@@ -0,0 +1,45 @@
-+/* Make sure blank lines does not cause memory corruption BZ #18887.
-+
-+ Copyright (C) 2009-2015 Free Software Foundation, Inc.
-+ This file is part of the GNU C Library.
-+
-+ The GNU C Library is free software; you can redistribute it and/or
-+ modify it under the terms of the GNU Lesser General Public
-+ License as published by the Free Software Foundation; either
-+ version 2.1 of the License, or (at your option) any later version.
-+
-+ The GNU C Library is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ Lesser General Public License for more details.
-+
-+ You should have received a copy of the GNU Lesser General Public
-+ License along with the GNU C Library; if not, see
-+ <http://www.gnu.org/licenses/>. */
-+
-+#include <mntent.h>
-+#include <stdio.h>
-+#include <string.h>
-+
-+/* Make sure blank lines don't trigger memory corruption. This doesn't happen
-+ for all targets though, so it's a best effort test BZ #18887. */
-+static int
-+do_test (void)
-+{
-+ FILE *fp;
-+
-+ fp = tmpfile ();
-+ fputs ("\n \n/foo\\040dir /bar\\040dir auto bind \t \n", fp);
-+ rewind (fp);
-+
-+ /* The corruption happens here ... */
-+ getmntent (fp);
-+ /* ... but trigers here. */
-+ endmntent (fp);
-+
-+ /* If the test failed, we would crash, and not hit this point. */
-+ return 0;
-+}
-+
-+#define TEST_FUNCTION do_test ()
-+#include "../test-skeleton.c"
-diff --git a/misc/tst-mntent-blank-passno.c b/misc/tst-mntent-blank-passno.c
-new file mode 100644
-index 0000000..fc04291
---- /dev/null
-+++ b/misc/tst-mntent-blank-passno.c
-@@ -0,0 +1,53 @@
-+/* Make sure trailing whitespace is handled properly BZ #17273.
-+
-+ Copyright (C) 2009-2015 Free Software Foundation, Inc.
-+ This file is part of the GNU C Library.
-+
-+ The GNU C Library is free software; you can redistribute it and/or
-+ modify it under the terms of the GNU Lesser General Public
-+ License as published by the Free Software Foundation; either
-+ version 2.1 of the License, or (at your option) any later version.
-+
-+ The GNU C Library is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ Lesser General Public License for more details.
-+
-+ You should have received a copy of the GNU Lesser General Public
-+ License along with the GNU C Library; if not, see
-+ <http://www.gnu.org/licenses/>. */
-+
-+#include <mntent.h>
-+#include <stdio.h>
-+#include <string.h>
-+
-+/* Check entries to make sure trailing whitespace is ignored and we return the
-+ correct passno value BZ #17273. */
-+static int
-+do_test (void)
-+{
-+ int result = 0;
-+ FILE *fp;
-+ struct mntent *mnt;
-+
-+ fp = tmpfile ();
-+ fputs ("/foo\\040dir /bar\\040dir auto bind \t \n", fp);
-+ rewind (fp);
-+
-+ mnt = getmntent (fp);
-+ if (strcmp (mnt->mnt_fsname, "/foo dir") != 0
-+ || strcmp (mnt->mnt_dir, "/bar dir") != 0
-+ || strcmp (mnt->mnt_type, "auto") != 0
-+ || strcmp (mnt->mnt_opts, "bind") != 0
-+ || mnt->mnt_freq != 0
-+ || mnt->mnt_passno != 0)
-+ {
-+ puts ("Error while reading entry with trailing whitespaces");
-+ result = 1;
-+ }
-+
-+ return result;
-+}
-+
-+#define TEST_FUNCTION do_test ()
-+#include "../test-skeleton.c"
-diff --git a/misc/tst-mntent.c b/misc/tst-mntent.c
-index 876c89f..820b354 100644
---- a/misc/tst-mntent.c
-+++ b/misc/tst-mntent.c
-@@ -73,26 +73,6 @@ main (int argc, char *argv[])
- puts ("Error while reading written entry back in");
- result = 1;
- }
--
-- /* Part III: Entry with whitespaces at the end of a line. */
-- rewind (fp);
--
-- fputs ("/foo\\040dir /bar\\040dir auto bind \t \n", fp);
--
-- rewind (fp);
--
-- mnt = getmntent (fp);
--
-- if (strcmp (mnt->mnt_fsname, "/foo dir") != 0
-- || strcmp (mnt->mnt_dir, "/bar dir") != 0
-- || strcmp (mnt->mnt_type, "auto") != 0
-- || strcmp (mnt->mnt_opts, "bind") != 0
-- || mnt->mnt_freq != 0
-- || mnt->mnt_passno != 0)
-- {
-- puts ("Error while reading entry with trailing whitespaces");
-- result = 1;
-- }
- }
-
- return result;
-diff --git a/scripts/test-installation.pl b/scripts/test-installation.pl
-index cac1562..79b2b3e 100755
---- a/scripts/test-installation.pl
-+++ b/scripts/test-installation.pl
-@@ -80,16 +80,25 @@ arglist: while (@ARGV) {
- # We expect none or one argument.
- if ($#ARGV == -1) {
- $soversions="soversions.mk";
-+ $config="config.make";
- } elsif ($#ARGV == 0) {
- if (-d $ARGV[0]) {
- $soversions = "$ARGV[0]/soversions.mk";
-+ $config = "$ARGV[0]/config.make";
- } else {
-- $soversions = $ARGV[0];
-+ $soversions = $dir = $ARGV[0];
-+ $dir =~ s!/?[^/]*/*$!!;
-+ $config = $dir . "/config.make";
- }
- } else {
- die "Wrong number of arguments.";
- }
-
-+if (system ("grep -q \"build-mathvec = yes\" $config") == 0) {
-+ $build_mathvec = 1;
-+} else {
-+ $build_mathvec = 0;
-+}
-
- # Read names and versions of all shared libraries that are part of
- # glibc
-@@ -111,6 +120,8 @@ while (<SOVERSIONS>) {
- # - libthread_db since it contains unresolved references
- # - it's just a test NSS module
- # - We don't provide the libgcc so we don't test it
-+ # - libmvec if it wasn't built
-+ next if ($build_mathvec == 0 && $name eq "mvec");
- if ($name ne "nss_ldap" && $name ne "db1"
- && !($name =~/^nss1_/) && $name ne "thread_db"
- && $name ne "nss_test1" && $name ne "libgcc_s") {
-diff --git a/stdlib/cxa_thread_atexit_impl.c b/stdlib/cxa_thread_atexit_impl.c
-index 2d5d56a..5717f09 100644
---- a/stdlib/cxa_thread_atexit_impl.c
-+++ b/stdlib/cxa_thread_atexit_impl.c
-@@ -98,6 +98,10 @@ static __thread struct link_map *lm_cache;
- int
- __cxa_thread_atexit_impl (dtor_func func, void *obj, void *dso_symbol)
- {
-+#ifdef PTR_MANGLE
-+ PTR_MANGLE (func);
-+#endif
-+
- /* Prepend. */
- struct dtor_list *new = calloc (1, sizeof (struct dtor_list));
- new->func = func;
-@@ -142,9 +146,13 @@ __call_tls_dtors (void)
- while (tls_dtor_list)
- {
- struct dtor_list *cur = tls_dtor_list;
-+ dtor_func func = cur->func;
-+#ifdef PTR_DEMANGLE
-+ PTR_DEMANGLE (func);
-+#endif
-
- tls_dtor_list = tls_dtor_list->next;
-- cur->func (cur->obj);
-+ func (cur->obj);
-
- /* Ensure that the MAP dereference happens before
- l_tls_dtor_count decrement. That way, we protect this access from a
-diff --git a/string/Makefile b/string/Makefile
-index 8424a61..ebe9354 100644
---- a/string/Makefile
-+++ b/string/Makefile
-@@ -54,7 +54,7 @@ tests := tester inl-tester noinl-tester testcopy test-ffs \
- tst-strtok tst-strxfrm bug-strcoll1 tst-strfry \
- bug-strtok1 $(addprefix test-,$(strop-tests)) \
- bug-envz1 tst-strxfrm2 tst-endian tst-svc2 \
-- tst-strtok_r
-+ tst-strtok_r bug-strcoll2
-
- xtests = tst-strcoll-overflow
-
-@@ -75,4 +75,17 @@ ifeq ($(run-built-tests),yes)
- $(objpfx)tst-svc-cmp.out: tst-svc.expect $(objpfx)tst-svc.out
- cmp $^ > $@; \
- $(evaluate-test)
-+
-+LOCALES := de_DE.UTF-8 en_US.ISO-8859-1 en_US.UTF-8 \
-+ tr_TR.ISO-8859-9 tr_TR.UTF-8 cs_CZ.UTF-8 \
-+ da_DK.ISO-8859-1
-+include ../gen-locales.mk
-+
-+$(objpfx)test-strcasecmp.out: $(gen-locales)
-+$(objpfx)test-strncasecmp.out: $(gen-locales)
-+$(objpfx)tst-strxfrm.out: $(gen-locales)
-+$(objpfx)tst-strxfrm2.out: $(gen-locales)
-+# bug-strcoll2 needs cs_CZ.UTF-8 and da_DK.ISO-8859-1.
-+$(objpfx)bug-strcoll2.out: $(gen-locales)
-+
- endif
-diff --git a/string/bug-strcoll2.c b/string/bug-strcoll2.c
-new file mode 100644
-index 0000000..72a9ff2
---- /dev/null
-+++ b/string/bug-strcoll2.c
-@@ -0,0 +1,92 @@
-+/* Bug 18589: sort-test.sh fails at random.
-+ Copyright (C) 2015 Free Software Foundation, Inc.
-+ This file is part of the GNU C Library.
-+
-+ The GNU C Library is free software; you can redistribute it and/or
-+ modify it under the terms of the GNU Lesser General Public
-+ License as published by the Free Software Foundation; either
-+ version 2.1 of the License, or (at your option) any later version.
-+
-+ The GNU C Library is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ Lesser General Public License for more details.
-+
-+ You should have received a copy of the GNU Lesser General Public
-+ License along with the GNU C Library; if not, see
-+ <http://www.gnu.org/licenses/>. */
-+
-+#include <stdio.h>
-+#include <string.h>
-+#include <locale.h>
-+
-+/* An incorrect strcoll optimization resulted in incorrect
-+ results from strcoll for cs_CZ and da_DK. */
-+
-+int
-+test_cs_CZ (void)
-+{
-+ const char t1[] = "config";
-+ const char t2[] = "choose";
-+ if (setlocale (LC_ALL, "cs_CZ.UTF-8") == NULL)
-+ {
-+ perror ("setlocale");
-+ return 1;
-+ }
-+ /* In Czech the digraph ch sorts after c, therefore we expect
-+ config to sort before choose. */
-+ int a = strcoll (t1, t2);
-+ int b = strcoll (t2, t1);
-+ printf ("strcoll (\"%s\", \"%s\") = %d\n", t1, t2, a);
-+ printf ("strcoll (\"%s\", \"%s\") = %d\n", t2, t1, b);
-+ if (a < 0 && b > 0)
-+ {
-+ puts ("PASS: config < choose");
-+ return 0;
-+ }
-+ else
-+ {
-+ puts ("FAIL: Wrong sorting in cs_CZ.UTF-8.");
-+ return 1;
-+ }
-+}
-+
-+int
-+test_da_DK (void)
-+{
-+ const char t1[] = "AS";
-+ const char t2[] = "AA";
-+ if (setlocale (LC_ALL, "da_DK.ISO-8859-1") == NULL)
-+ {
-+ perror ("setlocale");
-+ return 1;
-+ }
-+ /* AA should be treated as the last letter of the Danish alphabet,
-+ hence sorting after AS. */
-+ int a = strcoll (t1, t2);
-+ int b = strcoll (t2, t1);
-+ printf ("strcoll (\"%s\", \"%s\") = %d\n", t1, t2, a);
-+ printf ("strcoll (\"%s\", \"%s\") = %d\n", t2, t1, b);
-+ if (a < 0 && b > 0)
-+ {
-+ puts ("PASS: AS < AA");
-+ return 0;
-+ }
-+ else
-+ {
-+ puts ("FAIL: Wrong sorting in da_DK.ISO-8859-1");
-+ return 1;
-+ }
-+}
-+
-+static int
-+do_test (void)
-+{
-+ int err = 0;
-+ err |= test_cs_CZ ();
-+ err |= test_da_DK ();
-+ return err;
-+}
-+
-+#define TEST_FUNCTION do_test ()
-+#include "../test-skeleton.c"
-diff --git a/string/strcoll_l.c b/string/strcoll_l.c
-index 8f1225f..35bc0e4 100644
---- a/string/strcoll_l.c
-+++ b/string/strcoll_l.c
-@@ -29,7 +29,6 @@
- # define STRING_TYPE char
- # define USTRING_TYPE unsigned char
- # define STRCOLL __strcoll_l
--# define STRDIFF __strdiff
- # define STRCMP strcmp
- # define WEIGHT_H "../locale/weight.h"
- # define SUFFIX MB
-@@ -42,20 +41,6 @@
- #include "../locale/localeinfo.h"
- #include WEIGHT_H
-
--#define MASK_UTF8_7BIT (1 << 7)
--#define MASK_UTF8_START (3 << 6)
--
--size_t
--STRDIFF (const STRING_TYPE *s, const STRING_TYPE *t)
--{
-- size_t n;
--
-- for (n = 0; *s != '\0' && *s++ == *t++; ++n)
-- continue;
--
-- return n;
--}
--
- /* Track status while looking for sequences in a string. */
- typedef struct
- {
-@@ -269,29 +254,9 @@ STRCOLL (const STRING_TYPE *s1, const STRING_TYPE *s2, __locale_t l)
- const USTRING_TYPE *extra;
- const int32_t *indirect;
-
-- /* In case there is no locale specific sort order (C / POSIX). */
- if (nrules == 0)
- return STRCMP (s1, s2);
-
-- /* Fast forward to the position of the first difference. Needs to be
-- encoding aware as the byte-by-byte comparison can stop in the middle
-- of a char sequence for multibyte encodings like UTF-8. */
-- uint_fast32_t encoding =
-- current->values[_NL_ITEM_INDEX (_NL_COLLATE_ENCODING_TYPE)].word;
-- if (encoding != __cet_other)
-- {
-- size_t diff = STRDIFF (s1, s2);
-- if (diff > 0)
-- {
-- if (encoding == __cet_utf8 && (*(s1 + diff) & MASK_UTF8_7BIT) != 0)
-- do
-- diff--;
-- while (diff > 0 && (*(s1 + diff) & MASK_UTF8_START) != MASK_UTF8_START);
-- s1 += diff;
-- s2 += diff;
-- }
-- }
--
- /* Catch empty strings. */
- if (__glibc_unlikely (*s1 == '\0') || __glibc_unlikely (*s2 == '\0'))
- return (*s1 != '\0') - (*s2 != '\0');
-@@ -358,8 +323,7 @@ STRCOLL (const STRING_TYPE *s1, const STRING_TYPE *s2, __locale_t l)
- byte-level comparison to ensure that we don't waste time
- going through multiple passes for totally equal strings
- before proceeding to subsequent passes. */
-- if (pass == 0 && encoding == __cet_other &&
-- STRCMP (s1, s2) == 0)
-+ if (pass == 0 && STRCMP (s1, s2) == 0)
- return result;
- else
- break;
-diff --git a/string/tst-strxfrm2.c b/string/tst-strxfrm2.c
-index d5a1115..bea5aa2 100644
---- a/string/tst-strxfrm2.c
-+++ b/string/tst-strxfrm2.c
-@@ -5,6 +5,8 @@
- static int
- do_test (void)
- {
-+ static const char test_locale[] = "de_DE.UTF-8";
-+
- int res = 0;
-
- char buf[20];
-@@ -38,9 +40,9 @@ do_test (void)
- res = 1;
- }
-
-- if (setlocale (LC_ALL, "de_DE.UTF-8") == NULL)
-+ if (setlocale (LC_ALL, test_locale) == NULL)
- {
-- puts ("setlocale failed");
-+ printf ("cannot set locale \"%s\"\n", test_locale);
- res = 1;
- }
- else
-diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h
-index 7a0fe8d..78e3a97 100644
---- a/sysdeps/generic/ldsodefs.h
-+++ b/sysdeps/generic/ldsodefs.h
-@@ -592,9 +592,6 @@ struct rtld_global_ro
- /* List of auditing interfaces. */
- struct audit_ifaces *_dl_audit;
- unsigned int _dl_naudit;
--
-- /* 0 if internal pointer values should not be guarded, 1 if they should. */
-- EXTERN int _dl_pointer_guard;
- };
- # define __rtld_global_attribute__
- # if IS_IN (rtld)
-diff --git a/sysdeps/hppa/dl-symaddr.c b/sysdeps/hppa/dl-symaddr.c
-index b707c19..89d8baf 100644
---- a/sysdeps/hppa/dl-symaddr.c
-+++ b/sysdeps/hppa/dl-symaddr.c
-@@ -33,3 +33,4 @@ _dl_symbol_address (struct link_map *map, const ElfW(Sym) *ref)
- else
- return (void *) value;
- }
-+rtld_hidden_def (_dl_symbol_address)
-diff --git a/sysdeps/hppa/start.S b/sysdeps/hppa/start.S
-index 64d8c3e..cc4f243 100644
---- a/sysdeps/hppa/start.S
-+++ b/sysdeps/hppa/start.S
-@@ -42,7 +42,11 @@
- /* Have the linker create plabel words so we get PLABEL32
- relocs and not 21/14. The use of 21/14 relocs is only
- supported in the latest dynamic linker. */
-- .section .rodata
-+#ifdef SHARED
-+ .section .data.rel.ro,"aw",@progbits
-+#else
-+ .section .rodata,"a",@progbits
-+#endif
- .align 4
- .Lpmain:
- .word P%main
-@@ -52,6 +56,10 @@
- .word P%__libc_csu_fini
- .Lp__libc_csu_init:
- .word P%__libc_csu_init
-+#ifdef SHARED
-+.Lp__global:
-+ .word $global$
-+#endif
-
- .text
- .align 4
-@@ -122,10 +130,14 @@ _start:
- /* void *stack_end (7th argument) */
- stw %sp, -60(%sp)
-
-+#ifdef SHARED
-+ addil LT'.Lp__global, %r19
-+ ldw RT'.Lp__global(%r1), %dp
-+#else
- /* load global */
- ldil L%$global$, %dp
- ldo R%$global$(%dp), %dp
--
-+#endif
- bl __libc_start_main,%r2
- nop
- /* die horribly if it returned (it shouldn't) */
-diff --git a/sysdeps/nacl/Makefile b/sysdeps/nacl/Makefile
-index 6749a44..1748886 100644
---- a/sysdeps/nacl/Makefile
-+++ b/sysdeps/nacl/Makefile
-@@ -132,4 +132,13 @@ ifeq ($(subdir),misc)
- # sysdeps/.../linux/ directories, but it's still a sysdeps decision to
- # install it.
- sysdep_headers += bits/mman-linux.h
-+
-+# This defeats sysdeps/gnu/Makefile's addition of sys/mtio.h, which
-+# we do not want. This is a total kludge, but it seems no worse for
-+# now than making the sysdeps/gnu/Makefile code conditional on a
-+# variable we set here. If some sysdeps/.../Makefile that is later
-+# in the list than sysdeps/gnu needed to add to sysdep_headers, this
-+# would break it. But sysdeps/gnu is close to last in the list and
-+# this coming up seems unlikely.
-+override sysdep_headers := $(sysdep_headers)
- endif
-diff --git a/sysdeps/nacl/dl-map-segments.h b/sysdeps/nacl/dl-map-segments.h
-index f305da3..f2d5d84 100644
---- a/sysdeps/nacl/dl-map-segments.h
-+++ b/sysdeps/nacl/dl-map-segments.h
-@@ -53,7 +53,7 @@ _dl_map_segments (struct link_map *l, int fd,
- const size_t maplength, bool has_holes,
- struct link_map *loader)
- {
-- if (__builtin_expect (type, ET_DYN) == ET_DYN)
-+ if (__glibc_likely (type == ET_DYN))
- {
- /* This is a position-independent shared object. Let the system
- choose where to place it.
-@@ -165,6 +165,32 @@ _dl_map_segments (struct link_map *l, int fd,
- errno = error;
- return DL_MAP_SEGMENTS_ERROR_MAP_SEGMENT;
- }
-+ if (__glibc_unlikely (type != ET_DYN))
-+ {
-+ /* A successful PROT_EXEC mmap would have implicitly
-+ updated the bookkeeping so that a future
-+ allocate_code_data call would know that this range
-+ of the address space is already occupied. That
-+ doesn't happen implicitly with dyncode_create, so
-+ it's necessary to do an explicit call to update the
-+ bookkeeping. */
-+ uintptr_t allocated_address;
-+ error = __nacl_irt_code_data_alloc.allocate_code_data
-+ (l->l_addr + c->mapstart, len, 0, 0, &allocated_address);
-+ if (__glibc_unlikely (error))
-+ {
-+ errno = error;
-+ return DL_MAP_SEGMENTS_ERROR_MAP_SEGMENT;
-+ }
-+ if (__glibc_unlikely
-+ (allocated_address != l->l_addr + c->mapstart))
-+ {
-+ /* This is not a very helpful error for this case,
-+ but there isn't really anything better to use. */
-+ errno = ENOMEM;
-+ return DL_MAP_SEGMENTS_ERROR_MAP_SEGMENT;
-+ }
-+ }
- }
- else
- {
-diff --git a/sysdeps/nacl/dl-sysdep-open.h b/sysdeps/nacl/dl-sysdep-open.h
-new file mode 100644
-index 0000000..38b0f9e
---- /dev/null
-+++ b/sysdeps/nacl/dl-sysdep-open.h
-@@ -0,0 +1,40 @@
-+/* System-specific call to open a shared object by name. NaCl version.
-+ Copyright (C) 2015 Free Software Foundation, Inc.
-+ This file is part of the GNU C Library.
-+
-+ The GNU C Library is free software; you can redistribute it and/or
-+ modify it under the terms of the GNU Lesser General Public
-+ License as published by the Free Software Foundation; either
-+ version 2.1 of the License, or (at your option) any later version.
-+
-+ The GNU C Library is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ Lesser General Public License for more details.
-+
-+ You should have received a copy of the GNU Lesser General Public
-+ License along with the GNU C Library; if not, see
-+ <http://www.gnu.org/licenses/>. */
-+
-+#ifndef _DL_SYSDEP_OPEN_H
-+#define _DL_SYSDEP_OPEN_H 1
-+
-+#include <stddef.h>
-+
-+/* NAME is a name without slashes, as it appears in a DT_NEEDED entry
-+ or a dlopen call's argument or suchlike. NAMELEN is (strlen (NAME) + 1).
-+
-+ Find NAME in an OS-dependent fashion, and return its "real" name.
-+ Optionally fill in *FD with a file descriptor open on that file (or
-+ else leave its initial value of -1). The return value is a new
-+ malloc'd string, which will be free'd by the caller. If NAME is
-+ resolved to an actual file that can be opened, then the return
-+ value should name that file (and if *FD was not set, then a normal
-+ __open call on that string will be made). If *FD was set by some
-+ other means than a normal open and there is no "real" name to use,
-+ then __strdup (NAME) is fine (modulo error checking). */
-+
-+extern char *_dl_sysdep_open_object (const char *name, size_t namelen, int *fd)
-+ internal_function attribute_hidden;
-+
-+#endif /* dl-sysdep-open.h */
-diff --git a/sysdeps/nacl/dl-sysdep.c b/sysdeps/nacl/dl-sysdep.c
-index 3e902c2..3a04aa1 100644
---- a/sysdeps/nacl/dl-sysdep.c
-+++ b/sysdeps/nacl/dl-sysdep.c
-@@ -87,3 +87,26 @@ _dl_start_user (void (*user_entry) (uint32_t info[]), uint32_t info[])
- #endif /* SHARED */
-
- #include <elf/dl-sysdep.c>
-+
-+#include <dl-sysdep-open.h>
-+#include <nacl-interfaces.h>
-+#include <assert.h>
-+#include <string.h>
-+#include <unistd.h>
-+
-+char *
-+internal_function
-+_dl_sysdep_open_object (const char *name, size_t namelen, int *fd)
-+{
-+ int error = __nacl_irt_resource_open.open_resource (name, fd);
-+ if (error)
-+ return NULL;
-+ assert (*fd != -1);
-+ char *realname = __strdup (name);
-+ if (__glibc_unlikely (realname == NULL))
-+ {
-+ __close (*fd);
-+ *fd = -1;
-+ }
-+ return realname;
-+}
-diff --git a/sysdeps/nacl/nacl-interface-list.h b/sysdeps/nacl/nacl-interface-list.h
-index cb33751..c68faed 100644
---- a/sysdeps/nacl/nacl-interface-list.h
-+++ b/sysdeps/nacl/nacl-interface-list.h
-@@ -28,7 +28,7 @@ NACL_MANDATORY_INTERFACE (rtld,
- NACL_IRT_FUTEX_v0_1, nacl_irt_futex)
- NACL_MANDATORY_INTERFACE (rtld,
- NACL_IRT_TLS_v0_1, nacl_irt_tls)
--NACL_MANDATORY_INTERFACE (libc,
-+NACL_MANDATORY_INTERFACE (rtld,
- NACL_IRT_RESOURCE_OPEN_v0_1, nacl_irt_resource_open)
- NACL_MANDATORY_INTERFACE (rtld,
- NACL_IRT_CODE_DATA_ALLOC_v0_1,
-diff --git a/sysdeps/nacl/start.c b/sysdeps/nacl/start.c
-index a4b6dd3..8e8bc1a 100644
---- a/sysdeps/nacl/start.c
-+++ b/sysdeps/nacl/start.c
-@@ -44,6 +44,10 @@
- /* The application defines this, of course. */
- extern int main (int argc, char **argv, char **envp);
-
-+/* But maybe it defines this too, in which case it takes precedence. */
-+extern int __nacl_main (int argc, char **argv, char **envp)
-+ __attribute__ ((weak));
-+
- /* These are defined in libc. */
- extern int __libc_csu_init (int argc, char **argv, char **envp);
- extern void __libc_csu_fini (void);
-@@ -59,7 +63,7 @@ _start (uint32_t info[])
- {
- /* The generic code actually assumes that envp follows argv. */
-
-- __libc_start_main (&main,
-+ __libc_start_main (&__nacl_main ?: &main,
- nacl_startup_argc (info),
- nacl_startup_argv (info),
- nacl_startup_auxv (info),
-diff --git a/sysdeps/posix/opendir.c b/sysdeps/posix/opendir.c
-index 6509f5c..9edf056 100644
---- a/sysdeps/posix/opendir.c
-+++ b/sysdeps/posix/opendir.c
-@@ -105,7 +105,7 @@ need_isdir_precheck (void)
- tryopen_o_directory ();
-
- /* We can skip the expensive `stat' call if O_DIRECTORY works. */
-- return o_directory_works > 0;
-+ return o_directory_works < 0;
- #endif
- return true;
- }
-diff --git a/sysdeps/powerpc/nptl/elide.h b/sysdeps/powerpc/nptl/elide.h
-index 389f5a5..2e1e443 100644
---- a/sysdeps/powerpc/nptl/elide.h
-+++ b/sysdeps/powerpc/nptl/elide.h
-@@ -23,67 +23,78 @@
- # include <htm.h>
- # include <elision-conf.h>
-
--/* Returns true if the lock defined by is_lock_free as elided.
-- ADAPT_COUNT is a pointer to per-lock state variable. */
--
-+/* Get the new value of adapt_count according to the elision
-+ configurations. Returns true if the system should retry again or false
-+ otherwise. */
- static inline bool
--__elide_lock (uint8_t *adapt_count, int is_lock_free)
-+__get_new_count (uint8_t *adapt_count, int attempt)
- {
-- if (*adapt_count > 0)
-+ /* A persistent failure indicates that a retry will probably
-+ result in another failure. Use normal locking now and
-+ for the next couple of calls. */
-+ if (_TEXASRU_FAILURE_PERSISTENT (__builtin_get_texasru ()))
- {
-- (*adapt_count)--;
-+ if (__elision_aconf.skip_lock_internal_abort > 0)
-+ *adapt_count = __elision_aconf.skip_lock_internal_abort;
- return false;
- }
--
-- for (int i = __elision_aconf.try_tbegin; i > 0; i--)
-- {
-- if (__builtin_tbegin (0))
-- {
-- if (is_lock_free)
-- return true;
-- /* Lock was busy. */
-- __builtin_tabort (_ABORT_LOCK_BUSY);
-- }
-- else
-- {
-- /* A persistent failure indicates that a retry will probably
-- result in another failure. Use normal locking now and
-- for the next couple of calls. */
-- if (_TEXASRU_FAILURE_PERSISTENT (__builtin_get_texasru ()))
-- {
-- if (__elision_aconf.skip_lock_internal_abort > 0)
-- *adapt_count = __elision_aconf.skip_lock_internal_abort;
-- break;
-- }
-- /* Same logic as above, but for a number of temporary failures in a
-- a row. */
-- else if (__elision_aconf.skip_lock_out_of_tbegin_retries > 0
-- && __elision_aconf.try_tbegin > 0)
-- *adapt_count = __elision_aconf.skip_lock_out_of_tbegin_retries;
-- }
-- }
--
-- return false;
-+ /* Same logic as above, but for a number of temporary failures in a
-+ a row. */
-+ else if (attempt <= 1 && __elision_aconf.skip_lock_out_of_tbegin_retries > 0
-+ && __elision_aconf.try_tbegin > 0)
-+ *adapt_count = __elision_aconf.skip_lock_out_of_tbegin_retries;
-+ return true;
- }
-
--# define ELIDE_LOCK(adapt_count, is_lock_free) \
-- __elide_lock (&(adapt_count), is_lock_free)
--
--
--static inline bool
--__elide_trylock (uint8_t *adapt_count, int is_lock_free, int write)
--{
-- if (__elision_aconf.try_tbegin > 0)
-- {
-- if (write)
-- __builtin_tabort (_ABORT_NESTED_TRYLOCK);
-- return __elide_lock (adapt_count, is_lock_free);
-- }
-- return false;
--}
-+/* CONCURRENCY NOTES:
-+
-+ The evaluation of the macro expression is_lock_free encompasses one or
-+ more loads from memory locations that are concurrently modified by other
-+ threads. For lock elision to work, this evaluation and the rest of the
-+ critical section protected by the lock must be atomic because an
-+ execution with lock elision must be equivalent to an execution in which
-+ the lock would have been actually acquired and released. Therefore, we
-+ evaluate is_lock_free inside of the transaction that represents the
-+ critical section for which we want to use lock elision, which ensures
-+ the atomicity that we require. */
-+
-+/* Returns 0 if the lock defined by is_lock_free was elided.
-+ ADAPT_COUNT is a per-lock state variable. */
-+# define ELIDE_LOCK(adapt_count, is_lock_free) \
-+ ({ \
-+ int ret = 0; \
-+ if (adapt_count > 0) \
-+ (adapt_count)--; \
-+ else \
-+ for (int i = __elision_aconf.try_tbegin; i > 0; i--) \
-+ { \
-+ if (__builtin_tbegin (0)) \
-+ { \
-+ if (is_lock_free) \
-+ { \
-+ ret = 1; \
-+ break; \
-+ } \
-+ __builtin_tabort (_ABORT_LOCK_BUSY); \
-+ } \
-+ else \
-+ if (!__get_new_count (&adapt_count,i)) \
-+ break; \
-+ } \
-+ ret; \
-+ })
-
- # define ELIDE_TRYLOCK(adapt_count, is_lock_free, write) \
-- __elide_trylock (&(adapt_count), is_lock_free, write)
-+ ({ \
-+ int ret = 0; \
-+ if (__elision_aconf.try_tbegin > 0) \
-+ { \
-+ if (write) \
-+ __builtin_tabort (_ABORT_NESTED_TRYLOCK); \
-+ ret = ELIDE_LOCK (adapt_count, is_lock_free); \
-+ } \
-+ ret; \
-+ })
-
-
- static inline bool
-diff --git a/sysdeps/sparc/sparc32/sem_open.c b/sysdeps/sparc/sparc32/sem_open.c
-index 16cb9ad..59df2d7 100644
---- a/sysdeps/sparc/sparc32/sem_open.c
-+++ b/sysdeps/sparc/sparc32/sem_open.c
-@@ -29,6 +29,7 @@
- #include <sys/mman.h>
- #include <sys/stat.h>
- #include "semaphoreP.h"
-+#include <futex-internal.h>
- #include <shm-directory.h>
-
-
-diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist
-index 58c8b32..aa20e22 100644
---- a/sysdeps/unix/sysv/linux/alpha/libc.abilist
-+++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist
-@@ -1822,9 +1822,6 @@ GLIBC_2.17
- GLIBC_2.18
- GLIBC_2.18 A
- __cxa_thread_atexit_impl F
--GLIBC_2.22
-- GLIBC_2.22 A
-- fmemopen F
- GLIBC_2.2
- GLIBC_2.2 A
- _IO_adjust_wcolumn F
-@@ -2015,6 +2012,9 @@ GLIBC_2.2.4
- GLIBC_2.2.6
- GLIBC_2.2.6 A
- __nanosleep F
-+GLIBC_2.22
-+ GLIBC_2.22 A
-+ fmemopen F
- GLIBC_2.3
- GLIBC_2.3 A
- __ctype_b_loc F
-diff --git a/sysdeps/unix/sysv/linux/hppa/bits/atomic.h b/sysdeps/unix/sysv/linux/hppa/bits/atomic.h
-index abde83e..6e73504 100644
---- a/sysdeps/unix/sysv/linux/hppa/bits/atomic.h
-+++ b/sysdeps/unix/sysv/linux/hppa/bits/atomic.h
-@@ -56,42 +56,41 @@ typedef uintmax_t uatomic_max_t;
- #define _LWS "0xb0"
- #define _LWS_CAS "0"
- /* Note r31 is the link register. */
--#define _LWS_CLOBBER "r1", "r26", "r25", "r24", "r23", "r22", "r21", "r20", "r28", "r31", "memory"
-+#define _LWS_CLOBBER "r1", "r23", "r22", "r20", "r31", "memory"
- /* String constant for -EAGAIN. */
- #define _ASM_EAGAIN "-11"
- /* String constant for -EDEADLOCK. */
- #define _ASM_EDEADLOCK "-45"
-
- #if __ASSUME_LWS_CAS
--/* The only basic operation needed is compare and exchange. */
-+/* The only basic operation needed is compare and exchange. The mem
-+ pointer must be word aligned. */
- # define atomic_compare_and_exchange_val_acq(mem, newval, oldval) \
- ({ \
-- volatile int lws_errno; \
-- __typeof__ (*mem) lws_ret; \
-- asm volatile( \
-+ register long lws_errno asm("r21"); \
-+ register unsigned long lws_ret asm("r28"); \
-+ register unsigned long lws_mem asm("r26") = (unsigned long)(mem); \
-+ register unsigned long lws_old asm("r25") = (unsigned long)(oldval);\
-+ register unsigned long lws_new asm("r24") = (unsigned long)(newval);\
-+ __asm__ __volatile__( \
- "0: \n\t" \
-- "copy %2, %%r26 \n\t" \
-- "copy %3, %%r25 \n\t" \
-- "copy %4, %%r24 \n\t" \
- "ble " _LWS "(%%sr2, %%r0) \n\t" \
- "ldi " _LWS_CAS ", %%r20 \n\t" \
-- "ldi " _ASM_EAGAIN ", %%r24 \n\t" \
-- "cmpb,=,n %%r24, %%r21, 0b \n\t" \
-+ "ldi " _ASM_EAGAIN ", %%r20 \n\t" \
-+ "cmpb,=,n %%r20, %%r21, 0b \n\t" \
- "nop \n\t" \
-- "ldi " _ASM_EDEADLOCK ", %%r25 \n\t" \
-- "cmpb,=,n %%r25, %%r21, 0b \n\t" \
-+ "ldi " _ASM_EDEADLOCK ", %%r20 \n\t" \
-+ "cmpb,=,n %%r20, %%r21, 0b \n\t" \
- "nop \n\t" \
-- "stw %%r28, %0 \n\t" \
-- "stw %%r21, %1 \n\t" \
-- : "=m" (lws_ret), "=m" (lws_errno) \
-- : "r" (mem), "r" (oldval), "r" (newval) \
-+ : "=r" (lws_ret), "=r" (lws_errno) \
-+ : "r" (lws_mem), "r" (lws_old), "r" (lws_new) \
- : _LWS_CLOBBER \
- ); \
- \
-- if(lws_errno == -EFAULT || lws_errno == -ENOSYS) \
-+ if (lws_errno == -EFAULT || lws_errno == -ENOSYS) \
- ABORT_INSTRUCTION; \
- \
-- lws_ret; \
-+ (__typeof (oldval)) lws_ret; \
- })
-
- # define atomic_compare_and_exchange_bool_acq(mem, newval, oldval) \
-diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist
-index cf0ad90..224e1f3 100644
---- a/sysdeps/unix/sysv/linux/hppa/libc.abilist
-+++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist
-@@ -95,9 +95,6 @@ GLIBC_2.18
- GLIBC_2.19
- GLIBC_2.19 A
- fanotify_mark F
--GLIBC_2.22
-- GLIBC_2.22 A
-- fmemopen F
- GLIBC_2.2
- GLIBC_2.2 A
- _Exit F
-@@ -1863,6 +1860,9 @@ GLIBC_2.2.4
- GLIBC_2.2.6
- GLIBC_2.2.6 A
- __nanosleep F
-+GLIBC_2.22
-+ GLIBC_2.22 A
-+ fmemopen F
- GLIBC_2.3
- GLIBC_2.3 A
- __ctype_b_loc F
-diff --git a/sysdeps/unix/sysv/linux/hppa/syscall.c b/sysdeps/unix/sysv/linux/hppa/syscall.c
-index aff67a8..958fa47 100644
---- a/sysdeps/unix/sysv/linux/hppa/syscall.c
-+++ b/sysdeps/unix/sysv/linux/hppa/syscall.c
-@@ -43,9 +43,10 @@ syscall (long int __sysno, ...)
- va_end (args);
-
- {
-+ LOAD_ARGS_6 (arg0, arg1, arg2, arg3, arg4, arg5)
- register unsigned long int __res asm("r28");
- PIC_REG_DEF
-- LOAD_ARGS_6 (arg0, arg1, arg2, arg3, arg4, arg5)
-+ LOAD_REGS_6
- asm volatile (SAVE_ASM_PIC
- " ble 0x100(%%sr2, %%r0) \n"
- " copy %1, %%r20 \n"
-diff --git a/sysdeps/unix/sysv/linux/hppa/sysdep.h b/sysdeps/unix/sysv/linux/hppa/sysdep.h
-index d20a04b..cb1f163 100644
---- a/sysdeps/unix/sysv/linux/hppa/sysdep.h
-+++ b/sysdeps/unix/sysv/linux/hppa/sysdep.h
-@@ -400,9 +400,10 @@ L(pre_end): ASM_LINE_SEP \
- ({ \
- long __sys_res; \
- { \
-+ LOAD_ARGS_##nr(args) \
- register unsigned long __res asm("r28"); \
- PIC_REG_DEF \
-- LOAD_ARGS_##nr(args) \
-+ LOAD_REGS_##nr \
- /* FIXME: HACK save/load r19 around syscall */ \
- asm volatile( \
- SAVE_ASM_PIC \
-@@ -425,9 +426,10 @@ L(pre_end): ASM_LINE_SEP \
- ({ \
- long __sys_res; \
- { \
-+ LOAD_ARGS_##nr(args) \
- register unsigned long __res asm("r28"); \
- PIC_REG_DEF \
-- LOAD_ARGS_##nr(args) \
-+ LOAD_REGS_##nr \
- /* FIXME: HACK save/load r19 around syscall */ \
- asm volatile( \
- SAVE_ASM_PIC \
-@@ -443,27 +445,44 @@ L(pre_end): ASM_LINE_SEP \
- __sys_res; \
- })
-
--
--
- #define LOAD_ARGS_0()
--#define LOAD_ARGS_1(r26) \
-- register unsigned long __r26 __asm__("r26") = (unsigned long)(r26); \
-+#define LOAD_REGS_0
-+#define LOAD_ARGS_1(a1) \
-+ register unsigned long __x26 = (unsigned long)(a1); \
- LOAD_ARGS_0()
--#define LOAD_ARGS_2(r26,r25) \
-- register unsigned long __r25 __asm__("r25") = (unsigned long)(r25); \
-- LOAD_ARGS_1(r26)
--#define LOAD_ARGS_3(r26,r25,r24) \
-- register unsigned long __r24 __asm__("r24") = (unsigned long)(r24); \
-- LOAD_ARGS_2(r26,r25)
--#define LOAD_ARGS_4(r26,r25,r24,r23) \
-- register unsigned long __r23 __asm__("r23") = (unsigned long)(r23); \
-- LOAD_ARGS_3(r26,r25,r24)
--#define LOAD_ARGS_5(r26,r25,r24,r23,r22) \
-- register unsigned long __r22 __asm__("r22") = (unsigned long)(r22); \
-- LOAD_ARGS_4(r26,r25,r24,r23)
--#define LOAD_ARGS_6(r26,r25,r24,r23,r22,r21) \
-- register unsigned long __r21 __asm__("r21") = (unsigned long)(r21); \
-- LOAD_ARGS_5(r26,r25,r24,r23,r22)
-+#define LOAD_REGS_1 \
-+ register unsigned long __r26 __asm__("r26") = __x26; \
-+ LOAD_REGS_0
-+#define LOAD_ARGS_2(a1,a2) \
-+ register unsigned long __x25 = (unsigned long)(a2); \
-+ LOAD_ARGS_1(a1)
-+#define LOAD_REGS_2 \
-+ register unsigned long __r25 __asm__("r25") = __x25; \
-+ LOAD_REGS_1
-+#define LOAD_ARGS_3(a1,a2,a3) \
-+ register unsigned long __x24 = (unsigned long)(a3); \
-+ LOAD_ARGS_2(a1,a2)
-+#define LOAD_REGS_3 \
-+ register unsigned long __r24 __asm__("r24") = __x24; \
-+ LOAD_REGS_2
-+#define LOAD_ARGS_4(a1,a2,a3,a4) \
-+ register unsigned long __x23 = (unsigned long)(a4); \
-+ LOAD_ARGS_3(a1,a2,a3)
-+#define LOAD_REGS_4 \
-+ register unsigned long __r23 __asm__("r23") = __x23; \
-+ LOAD_REGS_3
-+#define LOAD_ARGS_5(a1,a2,a3,a4,a5) \
-+ register unsigned long __x22 = (unsigned long)(a5); \
-+ LOAD_ARGS_4(a1,a2,a3,a4)
-+#define LOAD_REGS_5 \
-+ register unsigned long __r22 __asm__("r22") = __x22; \
-+ LOAD_REGS_4
-+#define LOAD_ARGS_6(a1,a2,a3,a4,a5,a6) \
-+ register unsigned long __x21 = (unsigned long)(a6); \
-+ LOAD_ARGS_5(a1,a2,a3,a4,a5)
-+#define LOAD_REGS_6 \
-+ register unsigned long __r21 __asm__("r21") = __x21; \
-+ LOAD_REGS_5
-
- /* Even with zero args we use r20 for the syscall number */
- #define ASM_ARGS_0
-diff --git a/sysdeps/unix/sysv/linux/microblaze/sysdep.h b/sysdeps/unix/sysv/linux/microblaze/sysdep.h
-index 83c0340..9d5c542 100644
---- a/sysdeps/unix/sysv/linux/microblaze/sysdep.h
-+++ b/sysdeps/unix/sysv/linux/microblaze/sysdep.h
-@@ -16,8 +16,11 @@
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-+#ifndef _LINUX_MICROBLAZE_SYSDEP_H
-+#define _LINUX_MICROBLAZE_SYSDEP_H 1
-+
-+#include <sysdeps/unix/sysdep.h>
- #include <sysdeps/microblaze/sysdep.h>
--#include <sys/syscall.h>
-
- /* Defines RTLD_PRIVATE_ERRNO. */
- #include <dl-sysdep.h>
-@@ -305,3 +308,5 @@ SYSCALL_ERROR_LABEL_DCL: \
- # define PTR_DEMANGLE(var) (void) (var)
-
- #endif /* not __ASSEMBLER__ */
-+
-+#endif /* _LINUX_MICROBLAZE_SYSDEP_H */
-diff --git a/sysdeps/unix/sysv/linux/openat.c b/sysdeps/unix/sysv/linux/openat.c
-index 6777123..ad8e31d 100644
---- a/sysdeps/unix/sysv/linux/openat.c
-+++ b/sysdeps/unix/sysv/linux/openat.c
-@@ -68,6 +68,11 @@ __OPENAT (int fd, const char *file, int oflag, ...)
- va_end (arg);
- }
-
-+ /* We have to add the O_LARGEFILE flag for openat64. */
-+#ifdef MORE_OFLAGS
-+ oflag |= MORE_OFLAGS;
-+#endif
-+
- return SYSCALL_CANCEL (openat, fd, file, oflag, mode);
- }
- libc_hidden_def (__OPENAT)
-diff --git a/sysdeps/unix/sysv/linux/powerpc/elision-lock.c b/sysdeps/unix/sysv/linux/powerpc/elision-lock.c
-index 7f9bcc2..c6731ca 100644
---- a/sysdeps/unix/sysv/linux/powerpc/elision-lock.c
-+++ b/sysdeps/unix/sysv/linux/powerpc/elision-lock.c
-@@ -72,8 +72,7 @@ __lll_lock_elision (int *lock, short *adapt_count, EXTRAARG int pshared)
- goto use_lock;
- }
-
-- int try_begin = aconf.try_tbegin;
-- while (1)
-+ for (int i = aconf.try_tbegin; i > 0; i--)
- {
- if (__builtin_tbegin (0))
- {
-@@ -87,21 +86,19 @@ __lll_lock_elision (int *lock, short *adapt_count, EXTRAARG int pshared)
- /* A persistent failure indicates that a retry will probably
- result in another failure. Use normal locking now and
- for the next couple of calls. */
-- if (try_begin-- <= 0
-- || _TEXASRU_FAILURE_PERSISTENT (__builtin_get_texasru ()))
-+ if (_TEXASRU_FAILURE_PERSISTENT (__builtin_get_texasru ()))
- {
- if (aconf.skip_lock_internal_abort > 0)
- *adapt_count = aconf.skip_lock_internal_abort;
- goto use_lock;
- }
-- /* Same logic as above, but for for a number of temporary failures
-- in a row. */
-- else if (aconf.skip_lock_out_of_tbegin_retries > 0
-- && aconf.try_tbegin > 0)
-- *adapt_count = aconf.skip_lock_out_of_tbegin_retries;
- }
- }
-
-+ /* Fall back to locks for a bit if retries have been exhausted */
-+ if (aconf.try_tbegin > 0 && aconf.skip_lock_out_of_tbegin_retries > 0)
-+ *adapt_count = aconf.skip_lock_out_of_tbegin_retries;
-+
- use_lock:
- return LLL_LOCK ((*lock), pshared);
- }
-diff --git a/time/strftime_l.c b/time/strftime_l.c
-index b48ef34..4eb647c 100644
---- a/time/strftime_l.c
-+++ b/time/strftime_l.c
-@@ -510,13 +510,17 @@ __strftime_internal (s, maxsize, format, tp, tzset_called ut_argument
- only a few elements. Dereference the pointers only if the format
- requires this. Then it is ok to fail if the pointers are invalid. */
- # define a_wkday \
-- ((const CHAR_T *) _NL_CURRENT (LC_TIME, NLW(ABDAY_1) + tp->tm_wday))
-+ ((const CHAR_T *) (tp->tm_wday < 0 || tp->tm_wday > 6 \
-+ ? "?" : _NL_CURRENT (LC_TIME, NLW(ABDAY_1) + tp->tm_wday)))
- # define f_wkday \
-- ((const CHAR_T *) _NL_CURRENT (LC_TIME, NLW(DAY_1) + tp->tm_wday))
-+ ((const CHAR_T *) (tp->tm_wday < 0 || tp->tm_wday > 6 \
-+ ? "?" : _NL_CURRENT (LC_TIME, NLW(DAY_1) + tp->tm_wday)))
- # define a_month \
-- ((const CHAR_T *) _NL_CURRENT (LC_TIME, NLW(ABMON_1) + tp->tm_mon))
-+ ((const CHAR_T *) (tp->tm_mon < 0 || tp->tm_mon > 11 \
-+ ? "?" : _NL_CURRENT (LC_TIME, NLW(ABMON_1) + tp->tm_mon)))
- # define f_month \
-- ((const CHAR_T *) _NL_CURRENT (LC_TIME, NLW(MON_1) + tp->tm_mon))
-+ ((const CHAR_T *) (tp->tm_mon < 0 || tp->tm_mon > 11 \
-+ ? "?" : _NL_CURRENT (LC_TIME, NLW(MON_1) + tp->tm_mon)))
- # define ampm \
- ((const CHAR_T *) _NL_CURRENT (LC_TIME, tp->tm_hour > 11 \
- ? NLW(PM_STR) : NLW(AM_STR)))
-@@ -526,8 +530,10 @@ __strftime_internal (s, maxsize, format, tp, tzset_called ut_argument
- # define ap_len STRLEN (ampm)
- #else
- # if !HAVE_STRFTIME
--# define f_wkday (weekday_name[tp->tm_wday])
--# define f_month (month_name[tp->tm_mon])
-+# define f_wkday (tp->tm_wday < 0 || tp->tm_wday > 6 \
-+ ? "?" : weekday_name[tp->tm_wday])
-+# define f_month (tp->tm_mon < 0 || tp->tm_mon > 11 \
-+ ? "?" : month_name[tp->tm_mon])
- # define a_wkday f_wkday
- # define a_month f_month
- # define ampm (L_("AMPM") + 2 * (tp->tm_hour > 11))
-@@ -1321,7 +1327,7 @@ __strftime_internal (s, maxsize, format, tp, tzset_called ut_argument
- *tzset_called = true;
- }
- # endif
-- zone = tzname[tp->tm_isdst];
-+ zone = tp->tm_isdst <= 1 ? tzname[tp->tm_isdst] : "?";
- }
- #endif
- if (! zone)
-diff --git a/time/tst-strftime.c b/time/tst-strftime.c
-index 374fba4..af3ff72 100644
---- a/time/tst-strftime.c
-+++ b/time/tst-strftime.c
-@@ -4,6 +4,56 @@
- #include <time.h>
-
-
-+static int
-+do_bz18985 (void)
-+{
-+ char buf[1000];
-+ struct tm ttm;
-+ int rc, ret = 0;
-+
-+ memset (&ttm, 1, sizeof (ttm));
-+ ttm.tm_zone = NULL; /* Dereferenced directly if non-NULL. */
-+ rc = strftime (buf, sizeof (buf), "%a %A %b %B %c %z %Z", &ttm);
-+
-+ if (rc == 66)
-+ {
-+ const char expected[]
-+ = "? ? ? ? ? ? 16843009 16843009:16843009:16843009 16844909 +467836 ?";
-+ if (0 != strcmp (buf, expected))
-+ {
-+ printf ("expected:\n %s\ngot:\n %s\n", expected, buf);
-+ ret += 1;
-+ }
-+ }
-+ else
-+ {
-+ printf ("expected 66, got %d\n", rc);
-+ ret += 1;
-+ }
-+
-+ /* Check negative values as well. */
-+ memset (&ttm, 0xFF, sizeof (ttm));
-+ ttm.tm_zone = NULL; /* Dereferenced directly if non-NULL. */
-+ rc = strftime (buf, sizeof (buf), "%a %A %b %B %c %z %Z", &ttm);
-+
-+ if (rc == 30)
-+ {
-+ const char expected[] = "? ? ? ? ? ? -1 -1:-1:-1 1899 ";
-+ if (0 != strcmp (buf, expected))
-+ {
-+ printf ("expected:\n %s\ngot:\n %s\n", expected, buf);
-+ ret += 1;
-+ }
-+ }
-+ else
-+ {
-+ printf ("expected 30, got %d\n", rc);
-+ ret += 1;
-+ }
-+
-+ return ret;
-+}
-+
- static struct
- {
- const char *fmt;
-@@ -104,7 +154,7 @@ do_test (void)
- }
- }
-
-- return result;
-+ return result + do_bz18985 ();
- }
-
- #define TEST_FUNCTION do_test ()
-diff --git a/wcsmbs/wcscoll_l.c b/wcsmbs/wcscoll_l.c
-index 6d9384a..87f240d 100644
---- a/wcsmbs/wcscoll_l.c
-+++ b/wcsmbs/wcscoll_l.c
-@@ -23,7 +23,6 @@
- #define STRING_TYPE wchar_t
- #define USTRING_TYPE wint_t
- #define STRCOLL __wcscoll_l
--#define STRDIFF __wcsdiff
- #define STRCMP __wcscmp
- #define WEIGHT_H "../locale/weightwc.h"
- #define SUFFIX WC
diff --git a/abs/core/glibc/glibc.install b/abs/core/glibc/glibc.install
index a49daa5..351f05b 100644
--- a/abs/core/glibc/glibc.install
+++ b/abs/core/glibc/glibc.install
@@ -1,20 +1,5 @@
-infodir=usr/share/info
-filelist=(libc.info{,-1,-2,-3,-4,-5,-6,-7,-8,-9,-10,-11})
-
post_upgrade() {
locale-gen
ldconfig -r .
-
- [[ -x usr/bin/install-info ]] || return 0
- for file in ${filelist[@]}; do
- install-info $infodir/$file.gz $infodir/dir 2> /dev/null
- done
-}
-
-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/abs/core/glibc/lib32-glibc.conf b/abs/core/glibc/lib32-glibc.conf
new file mode 100644
index 0000000..9b08c3f
--- /dev/null
+++ b/abs/core/glibc/lib32-glibc.conf
@@ -0,0 +1 @@
+/usr/lib32
diff --git a/abs/core/gnupg/PKGBUILD b/abs/core/gnupg/PKGBUILD
index 6d7dc98..06f35f5 100644
--- a/abs/core/gnupg/PKGBUILD
+++ b/abs/core/gnupg/PKGBUILD
@@ -1,35 +1,40 @@
-# $Id: PKGBUILD 195927 2013-10-05 17:40:59Z bisson $
+# $Id$
# Maintainer: Gaetan Bisson <bisson@archlinux.org>
# Contributor: Tobias Powalowski <tpowa@archlinux.org>
# Contributor: Andreas Radke <andyrtr@archlinux.org>
# Contributor: Judd Vinet <jvinet@zeroflux.org>
pkgname=gnupg
-pkgver=2.0.22
-pkgrel=2
+pkgver=2.2.5
+pkgrel=1
pkgdesc='Complete and free implementation of the OpenPGP standard'
url='http://www.gnupg.org/'
license=('GPL')
-arch=('i686' 'x86_64')
-optdepends=('curl: gpg2keys_curl'
- 'libldap: gpg2keys_ldap'
- 'libusb-compat: scdaemon')
-makedepends=('curl' 'libldap' 'libusb-compat')
-depends=('bzip2' 'libksba' 'libgcrypt' 'pth' 'libassuan' 'readline' 'pinentry' 'dirmngr')
-source=("ftp://ftp.gnupg.org/gcrypt/${pkgname}/${pkgname}-${pkgver}.tar.bz2"{,.sig}
- 'protect-tool-env.patch')
-sha1sums=('9ba9ee288e9bf813e0f1e25cbe06b58d3072d8b8' 'SKIP'
- '2ec97ba55ae47ff0d63bc813b8c64cb79cef11db')
+arch=('x86_64')
+optdepends=('libldap: gpg2keys_ldap'
+ 'libusb-compat: scdaemon'
+ 'pcsclite: scdaemon')
+makedepends=('libldap' 'libusb-compat' 'pcsclite')
+checkdepends=('openssh')
+depends=('npth' 'libgpg-error' 'libgcrypt' 'libksba' 'libassuan'
+ 'pinentry' 'bzip2' 'readline' 'gnutls' 'sqlite')
+validpgpkeys=('D8692123C4065DEA5E0F3AB5249B39D24F25E3B6'
+ '46CC730865BB5C78EBABADCF04376F3EE0856959'
+ '031EC2536E580D8EA286A9F22071B08A33BD3F06'
+ 'D238EA65D64C67ED4C3073F28A861B1C7EFD60D9')
+source=("https://gnupg.org/ftp/gcrypt/${pkgname}/${pkgname}-${pkgver}.tar.bz2"{,.sig})
+sha256sums=('3fa189a32d4fb62147874eb1389047c267d9ba088f57ab521cb0df46f08aef57'
+ 'SKIP')
install=install
-conflicts=('gnupg2')
-provides=("gnupg2=${pkgver}")
-replaces=('gnupg2')
+conflicts=('dirmngr' 'gnupg2')
+provides=('dirmngr' "gnupg2=${pkgver}")
+replaces=('dirmngr' 'gnupg2')
prepare() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -p1 -i ../protect-tool-env.patch # FS#31900
+ sed '/noinst_SCRIPTS = gpg-zip/c sbin_SCRIPTS += gpg-zip' -i tools/Makefile.in
}
build() {
@@ -41,7 +46,6 @@ build() {
--libexecdir=/usr/lib/gnupg \
--enable-maintainer-mode \
--enable-symcryptrun \
- --enable-gpgtar \
make
}
@@ -54,8 +58,11 @@ check() {
package() {
cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
- ln -s gpg2 "${pkgdir}"/usr/bin/gpg
- ln -s gpgv2 "${pkgdir}"/usr/bin/gpgv
- ln -s gpg2.1.gz "${pkgdir}"/usr/share/man/man1/gpg.1.gz
- rm "${pkgdir}/usr/share/gnupg/com-certs.pem" # FS#33059
+ ln -s gpg "${pkgdir}"/usr/bin/gpg2
+ ln -s gpgv "${pkgdir}"/usr/bin/gpgv2
+
+ cd doc/examples/systemd-user
+ for i in *.*; do
+ install -Dm644 "$i" "${pkgdir}/usr/lib/systemd/user/$i"
+ done
}
diff --git a/abs/core/gnupg/install b/abs/core/gnupg/install
index 3a5dc9f..95cb351 100644
--- a/abs/core/gnupg/install
+++ b/abs/core/gnupg/install
@@ -1,20 +1,41 @@
-info_dir=/usr/share/info
-info_files=(gnupg.info gnupg.info-1 gnupg.info-2)
+_global_units() {
+ _units=(dirmngr.socket gpg-agent.socket gpg-agent-{browser,extra,ssh}.socket)
+ _dir=/etc/systemd/user/sockets.target.wants
+
+ case $1 in
+ enable)
+ mkdir -p $_dir
+ for _u in "${_units[@]}"; do
+ ln -sf /usr/lib/systemd/user/$_u $_dir/$_u
+ done
+ ;;
+ disable)
+ for _u in "${_units[@]}"; do
+ rm -f $_dir/$_u
+ done
+ rmdir -p --ignore-fail-on-non-empty $_dir
+ ;;
+ esac
+}
post_install() {
- [ -x usr/bin/install-info ] || return 0
- for f in ${info_files[@]}; do
- usr/bin/install-info ${info_dir}/$f ${info_dir}/dir 2> /dev/null
- done
+ # See FS#42798 and FS#47371
+ dirmngr </dev/null &>/dev/null
+
+ # Let systemd supervise daemons by default
+ _global_units enable
}
post_upgrade() {
- post_install $1
+ if (( $(vercmp $2 2.1.13-1) < 0 )); then
+ echo "==> Please kill running gpg-agent and dirmngr processes before using this release."
+ fi
+
+ if (( $(vercmp $2 2.1.21-3) < 0 )); then
+ _global_units enable
+ fi
}
pre_remove() {
- [ -x usr/bin/install-info ] || return 0
- for f in ${info_files[@]}; do
- usr/bin/install-info --delete ${info_dir}/$f ${info_dir}/dir 2> /dev/null
- done
+ _global_units disable
}
diff --git a/abs/core/gnupg/protect-tool-env.patch b/abs/core/gnupg/protect-tool-env.patch
deleted file mode 100644
index 132791f..0000000
--- a/abs/core/gnupg/protect-tool-env.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-diff -Naur old/agent/protect-tool.c new/agent/protect-tool.c
---- old/agent/protect-tool.c 2012-12-08 13:53:17.067611957 +1100
-+++ new/agent/protect-tool.c 2012-12-08 13:53:28.247633012 +1100
-@@ -102,6 +102,7 @@
- static int opt_status_msg;
- static const char *opt_p12_charset;
- static const char *opt_agent_program;
-+static session_env_t opt_session_env;
-
- static char *get_passphrase (int promptno);
- static void release_passphrase (char *pw);
-@@ -1040,6 +1041,7 @@
-
- opt_homedir = default_homedir ();
-
-+ opt_session_env = session_env_new ();
-
- pargs.argc = &argc;
- pargs.argv = &argv;
-@@ -1091,7 +1093,7 @@
- opt.verbose,
- opt_homedir,
- opt_agent_program,
-- NULL, NULL, NULL);
-+ NULL, NULL, opt_session_env);
-
- if (opt_prompt)
- opt_prompt = percent_plus_unescape (opt_prompt, 0);
diff --git a/abs/core/gnutls/PKGBUILD b/abs/core/gnutls/PKGBUILD
index 307d02c..593304a 100644
--- a/abs/core/gnutls/PKGBUILD
+++ b/abs/core/gnutls/PKGBUILD
@@ -3,24 +3,30 @@
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
pkgname=gnutls
-pkgver=3.4.15
+pkgver=3.5.18
pkgrel=1
pkgdesc="A library which provides a secure layer over a reliable transport layer"
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('GPL3' 'LGPL2.1')
-url="http://www.gnutls.org/"
+url="https://www.gnutls.org/"
options=('!zipman')
-depends=('gcc-libs' 'libtasn1' 'readline' 'zlib' 'nettle' 'p11-kit')
+depends=('gcc-libs' 'libtasn1' 'readline' 'zlib' 'nettle' 'p11-kit' 'libidn' 'libunistring')
checkdepends=('net-tools')
optdepends=('guile: for use with Guile bindings')
-source=(ftp://ftp.gnutls.org/gcrypt/gnutls/v3.4/${pkgname}-${pkgver}.tar.xz{,.sig})
-md5sums=('4ea5b239bd8bf1b734dda02997b36459'
- 'SKIP')
+source=(https://www.gnupg.org/ftp/gcrypt/gnutls/v3.5/${pkgname}-${pkgver}.tar.xz{,.sig})
+sha256sums=('ae2248d9e78747cf9c469dde81ff8f90b56838b707a0637f3f7d4eee90e80234'
+ 'SKIP')
validpgpkeys=('0424D4EE81A0E3D119C6F835EDA21E94B565716F'
'1F42418905D8206AA754CCDC29EE58B996865171')
# "Simon Josefsson <simon@josefsson.org>"
# "Nikos Mavrogiannopoulos <nmav@gnutls.org>
+prepare() {
+ cd ${pkgname}-${pkgver}
+ # fix a broken test
+# sed 's/global_init/gnutls_global_init/g' -i tests/trust-store.c
+}
+
build() {
cd ${pkgname}-${pkgver}
@@ -34,6 +40,7 @@ build() {
--enable-openssl-compatibility \
--enable-guile --with-guile-site-dir=no \
--with-default-trust-store-pkcs11="pkcs11:model=p11-kit-trust;manufacturer=PKCS%2311%20Kit"
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
diff --git a/abs/core/gpm/PKGBUILD b/abs/core/gpm/PKGBUILD
index cb2cd9b..37fd76e 100644
--- a/abs/core/gpm/PKGBUILD
+++ b/abs/core/gpm/PKGBUILD
@@ -1,24 +1,21 @@
-# $Id: PKGBUILD 197717 2013-10-28 22:26:50Z eric $
+# $Id$
# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgname=gpm
pkgver=1.20.7
-pkgrel=4
+pkgrel=8
pkgdesc="A mouse server for the console and xterm"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://www.nico.schottelius.org/software/gpm/"
license=('GPL')
-depends=('bash')
+depends=('bash' 'procps-ng')
options=('!makeflags')
-install=gpm.install
-source=(http://www.nico.schottelius.org/software/gpm/archives/${pkgname}-${pkgver}.tar.lzma \
- gpm.sh gpm.service)
-sha1sums=('8d9f3655c80ce7667d31ede2a100b44986480369'
- '88fe5ff10916c68a87abc8418a56eb0073f69fa9'
- 'f9bde96eb9c78da9f225bcf40822647f6592cf23')
+source=(http://www.nico.schottelius.org/software/gpm/archives/${pkgname}-${pkgver}.tar.lzma
+ gpm.sh gpm.service gpm-1.20.7-glibc-2.26-1.patch)
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -p1 < ${srcdir}/gpm-1.20.7-glibc-2.26-1.patch || return 1
./autogen.sh
./configure --prefix=/usr --sysconfdir=/etc --sbindir=/usr/bin
make
@@ -35,3 +32,7 @@ package() {
ln -s libgpm.so.2.* libgpm.so
chmod 755 "${pkgdir}"/usr/lib/libgpm.so.*
}
+md5sums=('fa8a6fe09826896625ca557ac5e42ed7'
+ 'd73dd7e579192a58e5af72be206ce3c8'
+ '452cd869cfcc2fd9678f59b3757e4f83'
+ 'b3554e7a64402f87dd72473727dcd32e')
diff --git a/abs/core/gpm/__changelog b/abs/core/gpm/__changelog
new file mode 100644
index 0000000..f81c49f
--- /dev/null
+++ b/abs/core/gpm/__changelog
@@ -0,0 +1 @@
+PKGBUILD: add gpm-1.20.7-glibc-2.26-1.patch
diff --git a/abs/core/gpm/gpm-1.20.7-glibc-2.26-1.patch b/abs/core/gpm/gpm-1.20.7-glibc-2.26-1.patch
new file mode 100644
index 0000000..6f63c27
--- /dev/null
+++ b/abs/core/gpm/gpm-1.20.7-glibc-2.26-1.patch
@@ -0,0 +1,58 @@
+diff -Naur gpm-1.20.7-orig/src/daemon/open_console.c gpm-1.20.7/src/daemon/open_console.c
+--- gpm-1.20.7-orig/src/daemon/open_console.c 2012-10-26 21:21:38.000000000 +0000
++++ gpm-1.20.7/src/daemon/open_console.c 2017-08-08 17:58:15.176232558 +0000
+@@ -23,6 +23,10 @@
+ #include <sys/stat.h> /* stat() */
+ #include <sys/ioctl.h> /* ioctl */
+
++#ifdef HAVE_SYS_SYSMACROS_H
++#include <sys/sysmacros.h> /* major() w/newer glibc */
++#endif
++
+ /* Linux specific (to be outsourced in gpm2 */
+ #include <linux/serial.h> /* for serial console check */
+ #include <asm/ioctls.h> /* for serial console check */
+diff -Naur gpm-1.20.7-orig/src/prog/gpm-root.y gpm-1.20.7/src/prog/gpm-root.y
+--- gpm-1.20.7-orig/src/prog/gpm-root.y 2012-10-26 21:21:38.000000000 +0000
++++ gpm-1.20.7/src/prog/gpm-root.y 2017-08-08 18:00:36.442898559 +0000
+@@ -443,6 +443,7 @@
+ }
+
+ /*---------------------------------------------------------------------*/
++#if 0
+ static int f_debug_one(FILE *f, Draw *draw)
+ {
+ DrawItem *ip;
+@@ -465,6 +466,7 @@
+ #undef LINE
+ return 0;
+ }
++#endif
+
+ int f_debug(int mode, DrawItem *self, int uid)
+ {
+@@ -960,10 +962,8 @@
+ /*------------*/
+ static inline void scr_restore(int fd, FILE *f, unsigned char *buffer, int vc)
+ {
+- int x,y, dumpfd;
++ int dumpfd;
+ char dumpname[20];
+-
+- x=buffer[2]; y=buffer[3];
+
+ /* WILL NOT WORK WITH DEVFS! FIXME! */
+ sprintf(dumpname,"/dev/vcsa%i",vc);
+@@ -1196,11 +1196,7 @@
+ LOG_DAEMON : LOG_USER);
+ /* reap your zombies */
+ childaction.sa_handler=reap_children;
+-#if defined(__GLIBC__)
+- __sigemptyset(&childaction.sa_mask);
+-#else /* __GLIBC__ */
+- childaction.sa_mask=0;
+-#endif /* __GLIBC__ */
++ sigemptyset(&childaction.sa_mask);
+ childaction.sa_flags=SA_INTERRUPT; /* need to break the select() call */
+ sigaction(SIGCHLD,&childaction,NULL);
+
diff --git a/abs/core/gpm/gpm.install b/abs/core/gpm/gpm.install
deleted file mode 100644
index 2a1519a..0000000
--- a/abs/core/gpm/gpm.install
+++ /dev/null
@@ -1,16 +0,0 @@
-infodir=/usr/share/info
-file=gpm.info.gz
-
-post_install() {
- [ -x usr/bin/install-info ] || return 0
- install-info $infodir/$file $infodir/dir 2> /dev/null
-}
-
-post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- [ -x usr/bin/install-info ] || return 0
- install-info --delete $infodir/$file $infodir/dir 2> /dev/null
-}
diff --git a/abs/core/gpm/gpm.sh b/abs/core/gpm/gpm.sh
index af35a5f..1aea572 100755
--- a/abs/core/gpm/gpm.sh
+++ b/abs/core/gpm/gpm.sh
@@ -1,3 +1,3 @@
case $( /usr/bin/tty ) in
- /dev/tty[0-9]*) [ -n "$(pgrep gpm)" ] && /usr/bin/disable-paste ;;
+ /dev/tty[0-9]*) [ -n "$(pidof -s gpm)" ] && /usr/bin/disable-paste ;;
esac
diff --git a/abs/core/gssproxy/PKGBUILD b/abs/core/gssproxy/PKGBUILD
new file mode 100644
index 0000000..8270496
--- /dev/null
+++ b/abs/core/gssproxy/PKGBUILD
@@ -0,0 +1,86 @@
+# $Id$
+# Maintainer: AndyRTR <andyrtr@archlinux.org>
+# Contributor: Mantas MikulÄ—nas <grawity@gmail.com>
+
+pkgname=gssproxy
+pkgver=0.8.0
+pkgrel=1
+pkgdesc="GSSAPI Proxy"
+arch=(x86_64)
+url="https://pagure.io/gssproxy"
+license=('custom: MIT')
+depends=('krb5' 'popt' 'ding-libs')
+makedepends=('popt' 'libxslt' 'systemd' 'docbook-xsl' 'doxygen' 'po4a')
+options=('emptydirs' 'makeflags')
+backup=(etc/gssproxy/{gssproxy,24-nfs-server,80-httpd,99-nfs-client}.conf
+ etc/gss/mech.d/gssproxy.conf)
+source=(https://releases.pagure.org/gssproxy/$pkgname-$pkgver.tar.gz)
+sha512sums=('f3b8f053d6750d7ee6ab2bfb6bfc4dc1ac2e2f354f923590340bb3c522f57cc881df5a2850750bc00c0dcacf2ae173549dc3bb9ece4512cf2f39869527afc2ec')
+
+prepare() {
+ cd "$srcdir/gssproxy-$pkgver"
+ # delete unneeded service dependency
+ sed -i "/# GSSPROXY will not be started until syslog is/d" systemd/gssproxy.service.in
+ sed -i "/^After=syslog.target/d" systemd/gssproxy.service.in
+
+ # see http://pkgs.fedoraproject.org/cgit/nfs-utils.git/tree/nfs-utils.spec creating symlinks
+ # rpc-gssd.service is nfs-secure.service
+ sed -i "s/nfs-secure.service/rpc-gssd.service/" systemd/gssproxy.service.in
+ # rpc.svcgssd is nfs-secure-server.service
+ sed -i "s/nfs-secure-server.service/rpc-svcgssd.service/" systemd/gssproxy.service.in
+
+# autoreconf -vfi
+}
+
+build() {
+ cd gssproxy-$pkgver
+ # make it find bundled verto from krb5 without its own pkg-config file
+ export VERTO_CFLAGS="-I/usr/include"
+ export VERTO_LIBS="-L/usr/lib -lverto"
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc \
+ --with-pubconf-path=/etc/gssproxy \
+ --sbindir=/usr/bin \
+ --localstatedir=/var \
+ --without-selinux \
+ --with-initscript=systemd \
+ --with-gpp-default-behavior=REMOTE_FIRST
+
+#LOCAL_FIRST|LOCAL_ONLY|REMOTE_FIRST|REMOTE_ONLY
+# Which default behavior the gssproxy interposer
+# plugin should use [LOCAL_FIRST]
+#--help
+ make
+}
+
+check() {
+ cd $pkgname-$pkgver
+ make test_proxymech
+}
+
+
+package() {
+ cd gssproxy-$pkgver
+ make DESTDIR=$pkgdir install
+
+ # cleanup empty directories
+ rm -rf $pkgdir/usr/include
+ rm -rf $pkgdir/usr/share/doc
+
+ # install default config files
+ install -m644 examples/gssproxy.conf $pkgdir/etc/gssproxy/gssproxy.conf
+ # nfs services
+ install -m644 examples/24-nfs-server.conf $pkgdir/etc/gssproxy/24-nfs-server.conf
+ install -m644 examples/99-nfs-client.conf $pkgdir/etc/gssproxy/99-nfs-client.conf
+ # httpd service / use Arch UID/GID http/33 (by pkg filesystem)
+ install -m644 examples/80-httpd.conf $pkgdir/etc/gssproxy/80-httpd.conf
+ sed -i -e "s:euid = apache:euid = http:" $pkgdir/etc/gssproxy/80-httpd.conf
+
+ install -Dm644 examples/mech $pkgdir/etc/gss/mech.d/gssproxy.conf
+
+ # FS#51574
+ install -m700 -d ${pkgdir}/var/lib/gssproxy/rcache
+
+ install -m755 -d ${pkgdir}/usr/share/licenses/$pkgname
+ install -m644 COPYING ${pkgdir}/usr/share/licenses/$pkgname/
+}
diff --git a/abs/core/gzip/PKGBUILD b/abs/core/gzip/PKGBUILD
index df04137..7b85e26 100644
--- a/abs/core/gzip/PKGBUILD
+++ b/abs/core/gzip/PKGBUILD
@@ -1,33 +1,48 @@
-# $Id: PKGBUILD 162088 2012-06-19 15:43:54Z allan $
-# Maintainer: Allan McRae <allan@archlinux.org>
+# $Id$
+# Mainainer: Sébastien "Seblu" Luttringer <seblu@archlinux.org>
+# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: judd <jvinet@zeroflux.org>
pkgname=gzip
-pkgver=1.5
+pkgver=1.9
pkgrel=1
-pkgdesc="GNU compression utility"
-arch=('i686' 'x86_64')
-url="http://www.gnu.org/software/gzip/"
+pkgdesc='GNU compression utility'
+arch=('x86_64')
+url='https://www.gnu.org/software/gzip/'
license=('GPL3')
-groups=('base')
-depends=('glibc' 'bash')
-install=gzip.install
-source=(ftp://ftp.gnu.org/pub/gnu/gzip/gzip-$pkgver.tar.xz{,.sig})
-md5sums=('2a431e169b6f62f7332ef6d47cc53bae'
- '2de95937a3f65137acf9c55d4ad0447a')
+groups=('base' 'base-devel')
+depends=('glibc' 'bash' 'less')
+validpgpkeys=('155D3FC500C834486D1EEA677FD9FCCB000BEEEE') # Jim Meyering
+source=("https://ftp.gnu.org/pub/gnu/gzip/gzip-$pkgver.tar.xz"{,.sig})
+md5sums=('9492c6ccb2239ff679a5475a7bb543ed'
+ 'SKIP')
+prepare() {
+ cd $pkgname-$pkgver
+ # apply patch from the source array (should be a pacman feature)
+ local filename
+ for filename in "${source[@]}"; do
+ if [[ "$filename" =~ \.patch$ ]]; then
+ msg2 "Applying patch ${filename##*/}"
+ patch -p1 -N -i "$srcdir/${filename##*/}"
+ fi
+ done
+ :
+}
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
+ cd $pkgname-$pkgver
./configure --prefix=/usr
make
}
check() {
- cd "${srcdir}/${pkgname}-${pkgver}"
+ cd $pkgname-$pkgver
make check
}
package() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- make prefix=${pkgdir}/usr install
+ cd $pkgname-$pkgver
+ make prefix="$pkgdir/usr" install
}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/gzip/gzip.install b/abs/core/gzip/gzip.install
deleted file mode 100644
index 43218d9..0000000
--- a/abs/core/gzip/gzip.install
+++ /dev/null
@@ -1,15 +0,0 @@
-infodir=usr/share/info
-
-post_install() {
- [ -x usr/bin/install-info ] || return 0
- usr/bin/install-info $infodir/gzip.info.gz $infodir/dir 2> /dev/null
-}
-
-post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- [ -x usr/bin/install-info ] || return 0
- usr/bin/install-info --delete $infodir/gzip.info.gz $infodir/dir 2> /dev/null
-}
diff --git a/abs/core/imagemagick/PKGBUILD b/abs/core/imagemagick/PKGBUILD
index 4080a3b..fea39d9 100644
--- a/abs/core/imagemagick/PKGBUILD
+++ b/abs/core/imagemagick/PKGBUILD
@@ -2,89 +2,141 @@
# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgbase=imagemagick
-pkgname=('imagemagick' 'imagemagick-doc')
-pkgver=6.9.0.0
+pkgname=(libmagick imagemagick imagemagick-doc)
+pkgver=7.0.7.37
pkgrel=1
-arch=('i686' 'x86_64')
-url="http://www.imagemagick.org/"
-license=('custom')
-makedepends=('libltdl' 'lcms2' 'libxt' 'fontconfig' 'libxext' 'ghostscript'
- 'openexr' 'libwmf' 'librsvg' 'libxml2' 'liblqr' 'openjpeg2'
- 'opencl-headers' 'libcl' 'libwebp' 'subversion')
-#source=(http://www.imagemagick.org/download/ImageMagick-${pkgver%.*}-${pkgver##*.}.tar.xz{,.asc}
-source=(ftp://ftp.sunet.se/pub/multimedia/graphics/ImageMagick/ImageMagick-${pkgver%.*}-${pkgver##*.}.tar.xz{,.asc}
- perlmagick.rpath.patch)
-sha1sums=('6bf4263ceaeea61e00fe15a95db320d49bcc48c4'
- 'SKIP'
- 'e143cf9d530fabf3b58023899b5cc544ba93daec')
+pkgdesc="An image viewing/manipulation program"
+url="https://www.imagemagick.org/"
+arch=(x86_64)
+license=(custom)
+depends=(libltdl lcms2 fontconfig libxext liblqr libraqm libpng libxml2)
+makedepends=(ghostscript openexr libwmf librsvg libxml2 openjpeg2 libraw opencl-headers libwebp
+ chrpath ocl-icd glu ghostpcl ghostxps)
+checkdepends=(gsfonts ttf-dejavu)
+_relname=ImageMagick-${pkgver%%.*}
+_tarname=ImageMagick-${pkgver%.*}-${pkgver##*.}
+source=(https://www.imagemagick.org/download/$_tarname.tar.xz{,.asc}
+ arch-fonts.diff)
+sha256sums=('c722c6de497991023661e6a2e7605f3c6590a9989a170bdf2661328381a67165'
+ 'SKIP'
+ 'a85b744c61b1b563743ecb7c7adad999d7ed9a8af816650e3ab9321b2b102e73')
+validpgpkeys=(D8272EF51DA223E4D05B466989AB63D48277377A) # Lexie Parsimoniae
+
+shopt -s extglob
prepare() {
- cd ImageMagick-${pkgver%.*}-${pkgver##*.}
- sed '/AC_PATH_XTRA/d' -i configure.ac
- autoreconf --force --install
- patch -p0 -i "${srcdir}/perlmagick.rpath.patch"
+ mkdir -p binpkg/usr/lib/pkgconfig {binpkg,docpkg}/usr/share
+
+ cd $_tarname
+
+ # Fix up typemaps to match our packages, where possible
+ patch -Np1 -i ../arch-fonts.diff
+
+ # Don't run auto(re)conf; assumes use of git
}
build() {
- cd ImageMagick-${pkgver%.*}-${pkgver##*.}
- [[ $CARCH = "i686" ]] && EXTRAOPTS="--with-gcc-arch=i686"
- [[ $CARCH = "x86_64" ]] && EXTRAOPTS="--with-gcc-arch=x86-64"
-
- ./configure --prefix=/usr --sysconfdir=/etc --with-modules \
- --enable-hdri --with-wmf --with-openexr --with-xml --with-lcms2 \
- --with-webp --with-gslib --with-gs-font-dir=/usr/share/fonts/Type1 \
- --with-perl --with-perl-options="INSTALLDIRS=vendor" --with-lqr --with-rsvg \
- --enable-opencl --with-openjp2 --without-gvc --without-djvu --without-autotrace \
- --without-jbig --without-fpx --without-dps --without-fftw $EXTRAOPTS
+ cd $_tarname
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --with-dejavu-font-dir=/usr/share/fonts/TTF \
+ --with-gs-font-dir=/usr/share/fonts/gsfonts \
+ PSDelegate=/usr/bin/gs \
+ XPSDelegate=/usr/bin/gxps \
+ PCLDelegate=/usr/bin/gpcl6 \
+ --enable-hdri \
+ --enable-opencl \
+ --with-gslib \
+ --with-lqr \
+ --with-modules \
+ --with-openexr \
+ --with-openjp2 \
+ --with-perl \
+ --with-perl-options=INSTALLDIRS=vendor \
+ --with-rsvg \
+ --with-webp \
+ --with-wmf \
+ --with-xml \
+ --without-autotrace \
+ --without-djvu \
+ --without-dps \
+ --without-fftw \
+ --without-fpx \
+ --without-gcc-arch \
+ --without-gvc \
+ --without-jbig
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
-check() {
- cd ImageMagick-${pkgver%.*}-${pkgver##*.}
-# make check
+check() (
+ cd $_tarname
+ ulimit -n 4096
+ make check
+)
+
+package_libmagick() {
+ pkgdesc+=" (library)"
+ optdepends=('ghostscript: PS/PDF support'
+ 'libraw: DNG support'
+ 'librsvg: SVG support'
+ 'libwebp: WEBP support'
+ 'libwmf: WMF support'
+ 'libxml2: Magick Scripting Language'
+ 'ocl-icd: OpenCL support'
+ 'openexr: OpenEXR support'
+ 'openjpeg2: JPEG2000 support'
+ 'pango: Text rendering')
+ backup=(etc/$_relname/{coder,colors,delegates,log,magic,mime,policy,quantization-table,thresholds,type,type-{dejavu,ghostscript}}.xml)
+ options=('!emptydirs' libtool)
+
+ cd $_tarname
+ make DESTDIR="$pkgdir" install
+
+ rm "$pkgdir"/etc/$_relname/type-{apple,urw-base35,windows}.xml
+ rm "$pkgdir"/usr/lib/*.la
+
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 LICENSE NOTICE
+
+# Split 'imagemagick'
+ cd ../binpkg
+ mv "$pkgdir/usr/bin" usr/
+ mv "$pkgdir/usr/lib/perl5" usr/lib/
+ mv "$pkgdir/usr/share/man" usr/share/
+
+# Split docs
+ mv "$pkgdir/usr/share/doc" "$srcdir/docpkg/usr/share/"
}
package_imagemagick() {
- pkgdesc="An image viewing/manipulation program"
- depends=('perl' 'libltdl' 'lcms2' 'libxt' 'fontconfig' 'libxext' 'liblqr' 'libcl')
- optdepends=('imagemagick-doc: for additional information'
- 'ghostscript: for Ghostscript support'
- 'openexr: for OpenEXR support'
- 'openjpeg2: for JP2 support'
- 'libwmf: for WMF support'
- 'librsvg: for SVG support'
- 'libxml2: for XML support'
- 'libpng: for PNG support'
- 'libwebp: for WEBP support')
- backup=("etc/ImageMagick-${pkgver%%.*}/coder.xml"
- "etc/ImageMagick-${pkgver%%.*}/colors.xml"
- "etc/ImageMagick-${pkgver%%.*}/delegates.xml"
- "etc/ImageMagick-${pkgver%%.*}/log.xml"
- "etc/ImageMagick-${pkgver%%.*}/magic.xml"
- "etc/ImageMagick-${pkgver%%.*}/mime.xml"
- "etc/ImageMagick-${pkgver%%.*}/policy.xml"
- "etc/ImageMagick-${pkgver%%.*}/quantization-table.xml"
- "etc/ImageMagick-${pkgver%%.*}/thresholds.xml"
- "etc/ImageMagick-${pkgver%%.*}/type.xml"
- "etc/ImageMagick-${pkgver%%.*}/type-dejavu.xml"
- "etc/ImageMagick-${pkgver%%.*}/type-ghostscript.xml"
- "etc/ImageMagick-${pkgver%%.*}/type-windows.xml")
- options=('!docs' 'libtool' '!emptydirs')
-
- cd ImageMagick-${pkgver%.*}-${pkgver##*.}
- make -j1 DESTDIR="${pkgdir}" install
- install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/imagemagick/LICENSE"
- install -Dm644 NOTICE "${pkgdir}/usr/share/licenses/imagemagick/NOTICE"
-
-#Cleaning
- rm -f "${pkgdir}"/usr/lib/*.la
+ depends=("libmagick=$pkgver-$pkgrel")
+ optdepends=('imagemagick-doc: manual and API docs')
+ options=('!emptydirs')
+
+ mv binpkg/* "$pkgdir"
+
+ find "$pkgdir/usr/lib/perl5" -name '*.so' -exec chrpath -d {} +
+
+# template start; name=perl-binary-module-dependency; version=1;
+#if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+# _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+# _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+# echo $_perlver_min $_perlver_max
+# depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+#fi
+# template end;
+
+ cd $_tarname
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 LICENSE NOTICE
}
package_imagemagick-doc() {
- pkgdesc="The ImageMagick documentation (utilities manuals and libraries API)"
+ pkgdesc+=" (manual and API docs)"
+ depends=()
+
+ mv docpkg/* "$pkgdir"
- cd ImageMagick-${pkgver%.*}-${pkgver##*.}
- make DESTDIR="${pkgdir}" install-data-html
- install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/imagemagick-doc/LICENSE"
- install -Dm644 NOTICE "${pkgdir}/usr/share/licenses/imagemagick-doc/NOTICE"
+ cd $_tarname
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 LICENSE NOTICE
}
diff --git a/abs/core/imagemagick/arch-fonts.diff b/abs/core/imagemagick/arch-fonts.diff
new file mode 100644
index 0000000..63a547c
--- /dev/null
+++ b/abs/core/imagemagick/arch-fonts.diff
@@ -0,0 +1,107 @@
+diff -u -r ImageMagick-6.9.9-25/config/type-dejavu.xml.in ImageMagick-6.9.9-25-archfonts/config/type-dejavu.xml.in
+--- ImageMagick-6.9.9-25/config/type-dejavu.xml.in 2017-11-30 19:24:05.000000000 +0100
++++ ImageMagick-6.9.9-25-archfonts/config/type-dejavu.xml.in 2017-12-02 18:44:53.410304554 +0100
+@@ -13,27 +13,6 @@
+ ImageMagick DejaVU font configuration.
+ -->
+ <typemap>
+- <type name="DejaVu-LGC-Sans-Bold" fullname="DejaVu LGC Sans Bold" family="DejaVuGC Sans" style="Normal" stretch="Normal" weight="700" glyphs="@dejavu_font_dir@DejaVuLGCSans-Bold.ttf"/>
+- <type name="DejaVu-LGC-Sans-Bold-Oblique" fullname="DejaVu LGC Sans Bold Oblique" family="DejaVuGC Sans" style="Oblique" stretch="Normal" weight="700" glyphs="@dejavu_font_dir@DejaVuLGCSans-BoldOblique.ttf"/>
+- <type name="DejaVu-LGC-Sans-Book" fullname="DejaVu LGC Sans Book" family="DejaVuGC Sans" style="Normal" stretch="Normal" weight="400" glyphs="@dejavu_font_dir@DejaVuLGCSans.ttf"/>
+- <type name="DejaVu-LGC-Sans-Condensed" fullname="DejaVu LGC Sans Condensed" family="DejaVuGC Sans" style="Normal" stretch="SemiCondensed" weight="400" glyphs="@dejavu_font_dir@DejaVuLGCSansCondensed.ttf"/>
+- <type name="DejaVu-LGC-Sans-Condensed-Bold" fullname="DejaVu LGC Sans Condensed Bold" family="DejaVuGC Sans" style="Normal" stretch="SemiCondensed" weight="700" glyphs="@dejavu_font_dir@DejaVuLGCSansCondensed-Bold.ttf"/>
+- <type name="DejaVu-LGC-Sans-Condensed-Bold-Oblique" fullname="DejaVu LGC Sans Condensed Bold Oblique" family="DejaVuGC Sans" style="Oblique" stretch="SemiCondensed" weight="700" glyphs="@dejavu_font_dir@DejaVuLGCSansCondensed-BoldOblique.ttf"/>
+- <type name="DejaVu-LGC-Sans-Condensed-Oblique" fullname="DejaVu LGC Sans Condensed Oblique" family="DejaVuGC Sans" style="Oblique" stretch="SemiCondensed" weight="400" glyphs="@dejavu_font_dir@DejaVuLGCSansCondensed-Oblique.ttf"/>
+- <type name="DejaVu-LGC-Sans-ExtraLight" fullname="DejaVu LGC Sans ExtraLight" family="DejaVuGC Sans" style="Normal" stretch="Normal" weight="200" glyphs="@dejavu_font_dir@DejaVuLGCSans-ExtraLight.ttf"/>
+- <type name="DejaVu-LGC-Sans-Mono-Bold" fullname="DejaVu LGC Sans Mono Bold" family="DejaVuGC Sans Mono" style="Normal" stretch="Normal" weight="700" glyphs="@dejavu_font_dir@DejaVuLGCSansMono-Bold.ttf"/>
+- <type name="DejaVu-LGC-Sans-Mono-Bold-Oblique" fullname="DejaVu LGC Sans Mono Bold Oblique" family="DejaVuGC Sans Mono" style="Oblique" stretch="Normal" weight="700" glyphs="@dejavu_font_dir@DejaVuLGCSansMono-BoldOblique.ttf"/>
+- <type name="DejaVu-LGC-Sans-Mono-Book" fullname="DejaVu LGC Sans Mono Book" family="DejaVuGC Sans Mono" style="Normal" stretch="Normal" weight="400" glyphs="@dejavu_font_dir@DejaVuLGCSansMono.ttf"/>
+- <type name="DejaVu-LGC-Sans-Mono-Oblique" fullname="DejaVu LGC Sans Mono Oblique" family="DejaVuGC Sans Mono" style="Oblique" stretch="Normal" weight="400" glyphs="@dejavu_font_dir@DejaVuLGCSansMono-Oblique.ttf"/>
+- <type name="DejaVu-LGC-Sans-Oblique" fullname="DejaVu LGC Sans Oblique" family="DejaVuGC Sans" style="Oblique" stretch="Normal" weight="400" glyphs="@dejavu_font_dir@DejaVuLGCSans-Oblique.ttf"/>
+- <type name="DejaVu-LGC-Serif-Bold" fullname="DejaVu LGC Serif Bold" family="DejaVuGC Serif" style="Normal" stretch="Normal" weight="700" glyphs="@dejavu_font_dir@DejaVuLGCSerif-Bold.ttf"/>
+- <type name="DejaVu-LGC-Serif-Bold-Italic" fullname="DejaVu LGC Serif Bold Italic" family="DejaVuGC Serif" style="Italic" stretch="Normal" weight="700" glyphs="@dejavu_font_dir@DejaVuLGCSerif-BoldItalic.ttf"/>
+- <type name="DejaVu-LGC-Serif-Book" fullname="DejaVu LGC Serif Book" family="DejaVuGC Serif" style="Normal" stretch="Normal" weight="400" glyphs="@dejavu_font_dir@DejaVuLGCSerif.ttf"/>
+- <type name="DejaVu-LGC-Serif-Condensed" fullname="DejaVu LGC Serif Condensed" family="DejaVuGC Serif" style="Normal" stretch="SemiCondensed" weight="400" glyphs="@dejavu_font_dir@DejaVuLGCSerifCondensed.ttf"/>
+- <type name="DejaVu-LGC-Serif-Condensed-Bold" fullname="DejaVu LGC Serif Condensed Bold" family="DejaVuGC Serif" style="Normal" stretch="SemiCondensed" weight="700" glyphs="@dejavu_font_dir@DejaVuLGCSerifCondensed-Bold.ttf"/>
+- <type name="DejaVu-LGC-Serif-Condensed-Bold-Italic" fullname="DejaVu LGC Serif Condensed Bold Italic" family="DejaVuGC Serif" style="Italic" stretch="SemiCondensed" weight="700" glyphs="@dejavu_font_dir@DejaVuLGCSerifCondensed-BoldItalic.ttf"/>
+- <type name="DejaVu-LGC-Serif-Condensed-Italic" fullname="DejaVu LGC Serif -Condensed Italic" family="DejaVuGC Serif" style="Italic" stretch="SemiCondensed" weight="400" glyphs="@dejavu_font_dir@DejaVuLGCSerifCondensed-Italic.ttf"/>
+- <type name="DejaVu-LGC-Serif-Italic" fullname="DejaVu LGC Serif Italic" family="DejaVuGC Serif" style="Italic" stretch="Normal" weight="400" glyphs="@dejavu_font_dir@DejaVuLGCSerif-Italic.ttf"/>
+ <type name="DejaVu-Sans-Bold" fullname="DejaVu Sans Bold" family="DejaVu Sans" style="Normal" stretch="Normal" weight="700" glyphs="@dejavu_font_dir@DejaVuSans-Bold.ttf"/>
+ <type name="DejaVu-Sans-Bold-Oblique" fullname="DejaVu Sans Bold Oblique" family="DejaVu Sans" style="Oblique" stretch="Normal" weight="700" glyphs="@dejavu_font_dir@DejaVuSans-BoldOblique.ttf"/>
+ <type name="DejaVu-Sans-Book" fullname="DejaVu Sans Book" family="DejaVu Sans" style="Normal" stretch="Normal" weight="400" glyphs="@dejavu_font_dir@DejaVuSans.ttf"/>
+diff -u -r ImageMagick-6.9.9-25/config/type-ghostscript.xml.in ImageMagick-6.9.9-25-archfonts/config/type-ghostscript.xml.in
+--- ImageMagick-6.9.9-25/config/type-ghostscript.xml.in 2017-11-30 19:24:05.000000000 +0100
++++ ImageMagick-6.9.9-25-archfonts/config/type-ghostscript.xml.in 2017-12-02 19:08:05.669243822 +0100
+@@ -13,38 +13,38 @@
+ ImageMagick Ghostscript font configuration.
+ -->
+ <typemap>
+- <type name="AvantGarde-Book" fullname="AvantGarde Book" family="AvantGarde" foundry="URW" weight="400" style="normal" stretch="normal" format="type1" metrics="@ghostscript_font_dir@a010013l.afm" glyphs="@ghostscript_font_dir@a010013l.pfb"/>
+- <type name="AvantGarde-BookOblique" fullname="AvantGarde Book Oblique" family="AvantGarde" foundry="URW" weight="400" style="oblique" stretch="normal" format="type1" metrics="@ghostscript_font_dir@a010033l.afm" glyphs="@ghostscript_font_dir@a010033l.pfb"/>
+- <type name="AvantGarde-Demi" fullname="AvantGarde DemiBold" family="AvantGarde" foundry="URW" weight="600" style="normal" stretch="normal" format="type1" metrics="@ghostscript_font_dir@a010015l.afm" glyphs="@ghostscript_font_dir@a010015l.pfb"/>
+- <type name="AvantGarde-DemiOblique" fullname="AvantGarde DemiOblique" family="AvantGarde" foundry="URW" weight="600" style="oblique" stretch="normal" format="type1" metrics="@ghostscript_font_dir@a010035l.afm" glyphs="@ghostscript_font_dir@a010035l.pfb"/>
+- <type name="Bookman-Demi" fullname="Bookman DemiBold" family="Bookman" foundry="URW" weight="600" style="normal" stretch="normal" format="type1" metrics="@ghostscript_font_dir@b018015l.afm" glyphs="@ghostscript_font_dir@b018015l.pfb"/>
+- <type name="Bookman-DemiItalic" fullname="Bookman DemiBold Italic" family="Bookman" foundry="URW" weight="600" style="italic" stretch="normal" format="type1" metrics="@ghostscript_font_dir@b018035l.afm" glyphs="@ghostscript_font_dir@b018035l.pfb"/>
+- <type name="Bookman-Light" fullname="Bookman Light" family="Bookman" foundry="URW" weight="300" style="normal" stretch="normal" format="type1" metrics="@ghostscript_font_dir@b018012l.afm" glyphs="@ghostscript_font_dir@b018012l.pfb"/>
+- <type name="Bookman-LightItalic" fullname="Bookman Light Italic" family="Bookman" foundry="URW" weight="300" style="italic" stretch="normal" format="type1" metrics="@ghostscript_font_dir@b018032l.afm" glyphs="@ghostscript_font_dir@b018032l.pfb"/>
+- <type name="Courier" fullname="Courier Regular" family="Courier" foundry="URW" weight="400" style="normal" stretch="normal" format="type1" metrics="@ghostscript_font_dir@n022003l.afm" glyphs="@ghostscript_font_dir@n022003l.pfb"/>
+- <type name="Courier-Bold" fullname="Courier Bold" family="Courier" foundry="URW" weight="700" style="normal" stretch="normal" format="type1" metrics="@ghostscript_font_dir@n022004l.afm" glyphs="@ghostscript_font_dir@n022004l.pfb"/>
+- <type name="Courier-Oblique" fullname="Courier Regular Oblique" family="Courier" foundry="URW" weight="400" style="oblique" stretch="normal" format="type1" metrics="@ghostscript_font_dir@n022023l.afm" glyphs="@ghostscript_font_dir@n022023l.pfb"/>
+- <type name="Courier-BoldOblique" fullname="Courier Bold Oblique" family="Courier" foundry="URW" weight="700" style="oblique" stretch="normal" format="type1" metrics="@ghostscript_font_dir@n022024l.afm" glyphs="@ghostscript_font_dir@n022024l.pfb"/>
+- <type name="fixed" fullname="Helvetica Regular" family="Helvetica" foundry="URW" weight="400" style="normal" stretch="normal" format="type1" metrics="@ghostscript_font_dir@n019003l.afm" glyphs="@ghostscript_font_dir@n019003l.pfb"/>
+- <type name="Helvetica" fullname="Helvetica Regular" family="Helvetica" foundry="URW" weight="400" style="normal" stretch="normal" format="type1" metrics="@ghostscript_font_dir@n019003l.afm" glyphs="@ghostscript_font_dir@n019003l.pfb"/>
+- <type name="Helvetica-Bold" fullname="Helvetica Bold" family="Helvetica" foundry="URW" weight="700" style="normal" stretch="normal" format="type1" metrics="@ghostscript_font_dir@n019004l.afm" glyphs="@ghostscript_font_dir@n019004l.pfb"/>
+- <type name="Helvetica-Oblique" fullname="Helvetica Regular Italic" family="Helvetica" foundry="URW" weight="400" style="italic" stretch="normal" format="type1" metrics="@ghostscript_font_dir@n019023l.afm" glyphs="@ghostscript_font_dir@n019023l.pfb"/>
+- <type name="Helvetica-BoldOblique" fullname="Helvetica Bold Italic" family="Helvetica" foundry="URW" weight="700" style="italic" stretch="normal" format="type1" metrics="@ghostscript_font_dir@n019024l.afm" glyphs="@ghostscript_font_dir@n019024l.pfb"/>
+- <type name="Helvetica-Narrow" fullname="Helvetica Narrow" family="Helvetica Narrow" foundry="URW" weight="400" style="normal" stretch="condensed" format="type1" metrics="@ghostscript_font_dir@n019043l.afm" glyphs="@ghostscript_font_dir@n019043l.pfb"/>
+- <type name="Helvetica-Narrow-Oblique" fullname="Helvetica Narrow Oblique" family="Helvetica Narrow" foundry="URW" weight="400" style="oblique" stretch="condensed" format="type1" metrics="@ghostscript_font_dir@n019063l.afm" glyphs="@ghostscript_font_dir@n019063l.pfb"/>
+- <type name="Helvetica-Narrow-Bold" fullname="Helvetica Narrow Bold" family="Helvetica Narrow" foundry="URW" weight="700" style="normal" stretch="condensed" format="type1" metrics="@ghostscript_font_dir@n019044l.afm" glyphs="@ghostscript_font_dir@n019044l.pfb"/>
+- <type name="Helvetica-Narrow-BoldOblique" fullname="Helvetica Narrow Bold Oblique" family="Helvetica Narrow" foundry="URW" weight="700" style="oblique" stretch="condensed" format="type1" metrics="@ghostscript_font_dir@n019064l.afm" glyphs="@ghostscript_font_dir@n019064l.pfb"/>
+- <type name="NewCenturySchlbk-Roman" fullname="New Century Schoolbook" family="NewCenturySchlbk" foundry="URW" weight="400" style="normal" stretch="normal" format="type1" metrics="@ghostscript_font_dir@c059013l.afm" glyphs="@ghostscript_font_dir@c059013l.pfb"/>
+- <type name="NewCenturySchlbk-Italic" fullname="New Century Schoolbook Italic" family="NewCenturySchlbk" foundry="URW" weight="400" style="italic" stretch="normal" format="type1" metrics="@ghostscript_font_dir@c059033l.afm" glyphs="@ghostscript_font_dir@c059033l.pfb"/>
+- <type name="NewCenturySchlbk-Bold" fullname="New Century Schoolbook Bold" family="NewCenturySchlbk" foundry="URW" weight="700" style="normal" stretch="normal" format="type1" metrics="@ghostscript_font_dir@c059016l.afm" glyphs="@ghostscript_font_dir@c059016l.pfb"/>
+- <type name="NewCenturySchlbk-BoldItalic" fullname="New Century Schoolbook Bold Italic" family="NewCenturySchlbk" foundry="URW" weight="700" style="italic" stretch="normal" format="type1" metrics="@ghostscript_font_dir@c059036l.afm" glyphs="@ghostscript_font_dir@c059036l.pfb"/>
+- <type name="Palatino-Roman" fullname="Palatino Regular" family="Palatino" foundry="URW" weight="400" style="normal" stretch="normal" format="type1" metrics="@ghostscript_font_dir@p052003l.afm" glyphs="@ghostscript_font_dir@p052003l.pfb"/>
+- <type name="Palatino-Italic" fullname="Palatino Italic" family="Palatino" foundry="URW" weight="400" style="italic" stretch="normal" format="type1" metrics="@ghostscript_font_dir@p052023l.afm" glyphs="@ghostscript_font_dir@p052023l.pfb"/>
+- <type name="Palatino-Bold" fullname="Palatino Bold" family="Palatino" foundry="URW" weight="700" style="normal" stretch="normal" format="type1" metrics="@ghostscript_font_dir@p052004l.afm" glyphs="@ghostscript_font_dir@p052004l.pfb"/>
+- <type name="Palatino-BoldItalic" fullname="Palatino Bold Italic" family="Palatino" foundry="URW" weight="700" style="italic" stretch="normal" format="type1" metrics="@ghostscript_font_dir@p052024l.afm" glyphs="@ghostscript_font_dir@p052024l.pfb"/>
+- <type name="Times-Roman" fullname="Times Regular" family="Times" foundry="URW" weight="400" style="normal" stretch="normal" format="type1" metrics="@ghostscript_font_dir@n021003l.afm" glyphs="@ghostscript_font_dir@n021003l.pfb"/>
+- <type name="Times-Bold" fullname="Times Medium" family="Times" foundry="URW" weight="700" style="normal" stretch="normal" format="type1" metrics="@ghostscript_font_dir@n021004l.afm" glyphs="@ghostscript_font_dir@n021004l.pfb"/>
+- <type name="Times-Italic" fullname="Times Regular Italic" family="Times" foundry="URW" weight="400" style="italic" stretch="normal" format="type1" metrics="@ghostscript_font_dir@n021023l.afm" glyphs="@ghostscript_font_dir@n021023l.pfb"/>
+- <type name="Times-BoldItalic" fullname="Times Medium Italic" family="Times" foundry="URW" weight="700" style="italic" stretch="normal" format="type1" metrics="@ghostscript_font_dir@n021024l.afm" glyphs="@ghostscript_font_dir@n021024l.pfb"/>
+- <type name="Symbol" fullname="Symbol" family="Symbol" foundry="URW" weight="400" style="normal" stretch="normal" format="type1" metrics="@ghostscript_font_dir@s050000l.afm" glyphs="@ghostscript_font_dir@s050000l.pfb" version="0.1" encoding="AdobeCustom"/>
++ <type name="AvantGarde-Book" fullname="AvantGarde Book" family="AvantGarde" foundry="URW" weight="400" style="normal" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@URWGothic-Book.otf"/>
++ <type name="AvantGarde-BookOblique" fullname="AvantGarde Book Oblique" family="AvantGarde" foundry="URW" weight="400" style="oblique" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@URWGothic-BookOblique.otf"/>
++ <type name="AvantGarde-Demi" fullname="AvantGarde DemiBold" family="AvantGarde" foundry="URW" weight="600" style="normal" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@URWGothic-Demi.otf"/>
++ <type name="AvantGarde-DemiOblique" fullname="AvantGarde DemiOblique" family="AvantGarde" foundry="URW" weight="600" style="oblique" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@URWGothic-DemiOblique.otf"/>
++ <type name="Bookman-Demi" fullname="Bookman DemiBold" family="Bookman" foundry="URW" weight="600" style="normal" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@URWBookman-Demi.otf"/>
++ <type name="Bookman-DemiItalic" fullname="Bookman DemiBold Italic" family="Bookman" foundry="URW" weight="600" style="italic" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@URWBookman-DemiItalic.otf"/>
++ <type name="Bookman-Light" fullname="Bookman Light" family="Bookman" foundry="URW" weight="300" style="normal" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@URWBookman-Light.otf"/>
++ <type name="Bookman-LightItalic" fullname="Bookman Light Italic" family="Bookman" foundry="URW" weight="300" style="italic" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@URWBookman-LightItalic.otf"/>
++ <type name="Courier" fullname="Courier Regular" family="Courier" foundry="URW" weight="400" style="normal" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@NimbusMonoPS-Regular.otf"/>
++ <type name="Courier-Bold" fullname="Courier Bold" family="Courier" foundry="URW" weight="700" style="normal" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@NimbusMonoPS-Bold.otf"/>
++ <type name="Courier-Oblique" fullname="Courier Regular Oblique" family="Courier" foundry="URW" weight="400" style="oblique" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@NimbusMonoPS-Italic.otf"/>
++ <type name="Courier-BoldOblique" fullname="Courier Bold Oblique" family="Courier" foundry="URW" weight="700" style="oblique" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@NimbusMonoPS-BoldItalic.otf"/>
++ <type name="fixed" fullname="Helvetica Regular" family="Helvetica" foundry="URW" weight="400" style="normal" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@NimbusSans-Regular.otf"/>
++ <type name="Helvetica" fullname="Helvetica Regular" family="Helvetica" foundry="URW" weight="400" style="normal" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@NimbusSans-Regular.otf"/>
++ <type name="Helvetica-Bold" fullname="Helvetica Bold" family="Helvetica" foundry="URW" weight="700" style="normal" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@NimbusSans-Bold.otf"/>
++ <type name="Helvetica-Oblique" fullname="Helvetica Regular Italic" family="Helvetica" foundry="URW" weight="400" style="italic" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@NimbusSans-Italic.otf"/>
++ <type name="Helvetica-BoldOblique" fullname="Helvetica Bold Italic" family="Helvetica" foundry="URW" weight="700" style="italic" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@NimbusSans-BoldItalic.otf"/>
++ <type name="Helvetica-Narrow" fullname="Helvetica Narrow" family="Helvetica Narrow" foundry="URW" weight="400" style="normal" stretch="condensed" format="cff" glyphs="@ghostscript_font_dir@NimbusSansNarrow-Regular.otf"/>
++ <type name="Helvetica-Narrow-Oblique" fullname="Helvetica Narrow Oblique" family="Helvetica Narrow" foundry="URW" weight="400" style="oblique" stretch="condensed" format="cff" glyphs="@ghostscript_font_dir@NimbusSansNarrow-Oblique.otf"/>
++ <type name="Helvetica-Narrow-Bold" fullname="Helvetica Narrow Bold" family="Helvetica Narrow" foundry="URW" weight="700" style="normal" stretch="condensed" format="cff" glyphs="@ghostscript_font_dir@NimbusSansNarrow-Bold.otf"/>
++ <type name="Helvetica-Narrow-BoldOblique" fullname="Helvetica Narrow Bold Oblique" family="Helvetica Narrow" foundry="URW" weight="700" style="oblique" stretch="condensed" format="cff" glyphs="@ghostscript_font_dir@NimbusSansNarrow-BdOblique.otf"/>
++ <type name="NewCenturySchlbk-Roman" fullname="New Century Schoolbook" family="NewCenturySchlbk" foundry="URW" weight="400" style="normal" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@C059-Roman.otf"/>
++ <type name="NewCenturySchlbk-Italic" fullname="New Century Schoolbook Italic" family="NewCenturySchlbk" foundry="URW" weight="400" style="italic" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@C059-Italic.otf"/>
++ <type name="NewCenturySchlbk-Bold" fullname="New Century Schoolbook Bold" family="NewCenturySchlbk" foundry="URW" weight="700" style="normal" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@C059-Bold.otf"/>
++ <type name="NewCenturySchlbk-BoldItalic" fullname="New Century Schoolbook Bold Italic" family="NewCenturySchlbk" foundry="URW" weight="700" style="italic" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@C059-BdIta.otf"/>
++ <type name="Palatino-Roman" fullname="Palatino Regular" family="Palatino" foundry="URW" weight="400" style="normal" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@P052-Roman.otf"/>
++ <type name="Palatino-Italic" fullname="Palatino Italic" family="Palatino" foundry="URW" weight="400" style="italic" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@P052-Italic.otf"/>
++ <type name="Palatino-Bold" fullname="Palatino Bold" family="Palatino" foundry="URW" weight="700" style="normal" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@P052-Bold.otf"/>
++ <type name="Palatino-BoldItalic" fullname="Palatino Bold Italic" family="Palatino" foundry="URW" weight="700" style="italic" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@P052-BoldItalic.otf"/>
++ <type name="Times-Roman" fullname="Times Regular" family="Times" foundry="URW" weight="400" style="normal" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@NimbusRoman-Regular.otf"/>
++ <type name="Times-Bold" fullname="Times Medium" family="Times" foundry="URW" weight="700" style="normal" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@NimbusRoman-Bold.otf"/>
++ <type name="Times-Italic" fullname="Times Regular Italic" family="Times" foundry="URW" weight="400" style="italic" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@NimbusRoman-Italic.otf"/>
++ <type name="Times-BoldItalic" fullname="Times Medium Italic" family="Times" foundry="URW" weight="700" style="italic" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@NimbusRoman-BoldItalic.otf"/>
++ <type name="Symbol" fullname="Symbol" family="Symbol" foundry="URW" weight="400" style="normal" stretch="normal" format="cff" glyphs="@ghostscript_font_dir@StandardSymbolsPS.otf" version="2.0" encoding="AdobeCustom"/>
+ </typemap>
diff --git a/abs/core/imagemagick/perlmagick.rpath.patch b/abs/core/imagemagick/perlmagick.rpath.patch
deleted file mode 100644
index a5b1a82..0000000
--- a/abs/core/imagemagick/perlmagick.rpath.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- Makefile.in.orig 2013-02-21 03:26:56.785156600 -0500
-+++ Makefile.in 2013-02-21 03:39:03.102411457 -0500
-@@ -10469,6 +10469,8 @@
-
- @WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@$(PERLMAKEFILE): perl-sources $(MAGICKCORE_LIBS) $(MAGICKWAND_LIBS) $(PERLMAKEMAKER)
- @WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@ cd $(PERLMAGICK) && @PERL@ Makefile.PL $(PERL_MAKE_OPTIONS)
-+@WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@ cd $(PERLMAGICK) && @SED@ -i 's|LD_RUN_PATH|DIE_LD_RUN_PATH_DIE|g' Makefile
-+@WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@ cd $(PERLMAGICK) && @SED@ -i 's|LD_RUN_PATH|DIE_LD_RUN_PATH_DIE|g' quantum/Makefile
-
- @WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@install-exec-perl: $(PERLMAKEFILE)
- @WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@ ( cd $(PERLMAGICK) && $(MAKE) CC='@CC@' && \
diff --git a/abs/core/imap/1006_openssl1.1_autoverify.patch b/abs/core/imap/1006_openssl1.1_autoverify.patch
new file mode 100644
index 0000000..087e747
--- /dev/null
+++ b/abs/core/imap/1006_openssl1.1_autoverify.patch
@@ -0,0 +1,58 @@
+Description: Support OpenSSL 1.1
+ When building with OpenSSL 1.1 and newer, use the new built-in
+ hostname verification instead of code that doesn't compile due to
+ structs having been made opaque.
+Bug-Debian: https://bugs.debian.org/828589
+
+--- a/src/osdep/unix/ssl_unix.c
++++ b/src/osdep/unix/ssl_unix.c
+@@ -227,8 +227,16 @@ static char *ssl_start_work (SSLSTREAM *
+ /* disable certificate validation? */
+ if (flags & NET_NOVALIDATECERT)
+ SSL_CTX_set_verify (stream->context,SSL_VERIFY_NONE,NIL);
+- else SSL_CTX_set_verify (stream->context,SSL_VERIFY_PEER,ssl_open_verify);
++ else {
++#if OPENSSL_VERSION_NUMBER >= 0x10100000
++ X509_VERIFY_PARAM *param = SSL_CTX_get0_param(stream->context);
++ X509_VERIFY_PARAM_set_hostflags(param, X509_CHECK_FLAG_NO_PARTIAL_WILDCARDS);
++ X509_VERIFY_PARAM_set1_host(param, host, 0);
++#endif
++
++ SSL_CTX_set_verify (stream->context,SSL_VERIFY_PEER,ssl_open_verify);
+ /* set default paths to CAs... */
++ }
+ SSL_CTX_set_default_verify_paths (stream->context);
+ /* ...unless a non-standard path desired */
+ if (s = (char *) mail_parameters (NIL,GET_SSLCAPATH,NIL))
+@@ -266,6 +274,7 @@ static char *ssl_start_work (SSLSTREAM *
+ if (SSL_write (stream->con,"",0) < 0)
+ return ssl_last_error ? ssl_last_error : "SSL negotiation failed";
+ /* need to validate host names? */
++#if OPENSSL_VERSION_NUMBER < 0x10100000
+ if (!(flags & NET_NOVALIDATECERT) &&
+ (err = ssl_validate_cert (cert = SSL_get_peer_certificate (stream->con),
+ host))) {
+@@ -275,6 +284,7 @@ static char *ssl_start_work (SSLSTREAM *
+ sprintf (tmp,"*%.128s: %.255s",err,cert ? cert->name : "???");
+ return ssl_last_error = cpystr (tmp);
+ }
++#endif
+ return NIL;
+ }
+
+@@ -313,6 +323,7 @@ static int ssl_open_verify (int ok,X509_
+ * Returns: NIL if validated, else string of error message
+ */
+
++#if OPENSSL_VERSION_NUMBER < 0x10100000
+ static char *ssl_validate_cert (X509 *cert,char *host)
+ {
+ int i,n;
+@@ -342,6 +353,7 @@ static char *ssl_validate_cert (X509 *ce
+ else ret = "Unable to locate common name in certificate";
+ return ret;
+ }
++#endif
+
+ /* Case-independent wildcard pattern match
+ * Accepts: base string
diff --git a/abs/core/imap/PKGBUILD b/abs/core/imap/PKGBUILD
index cad646c..77219da 100644
--- a/abs/core/imap/PKGBUILD
+++ b/abs/core/imap/PKGBUILD
@@ -3,17 +3,18 @@
pkgbase=imap
pkgname=(imap c-client)
pkgver=2007f
-pkgrel=5
-arch=('i686' 'x86_64')
+pkgrel=9
+arch=('x86_64')
license=('APACHE')
url="http://www.washington.edu/imap"
makedepends=('pam')
-source=("ftp://ftp.cac.washington.edu/imap/${pkgname}-${pkgver}.tar.gz"
- 'c-client-2006k_GENTOO_amd64-so-fix.patch'
+source=("https://www.mirrorservice.org/sites/ftp.cac.washington.edu/imap/${pkgname}-${pkgver}.tar.gz"
+ 'c-client-2006k_GENTOO_amd64-so-fix.patch' '1006_openssl1.1_autoverify.patch'
'imap' 'ipop2' 'ipop3')
options=('staticlibs')
md5sums=('2126fd125ea26b73b20f01fcd5940369'
'7f3937a871edd54203fe51f91423e204'
+ 'cc8cc4df43f73bc144b9a41c55ef5991'
'3ae5b3b333bc8ea2da106f6a97d7bd8d'
'448f988dc5f9bdb2223dcea3abc4f5f1'
'1499b13015075f0aafba04324a6f523a')
@@ -28,35 +29,15 @@ prepare() {
-i src/osdep/unix/Makefile
patch -p1 -i $srcdir/c-client-2006k_GENTOO_amd64-so-fix.patch
+ patch -p1 -i $srcdir/1006_openssl1.1_autoverify.patch
}
build() {
cd $srcdir/$pkgbase-$pkgver
# NOTE: if you wish to enforce SSL, use SSLTYPE=unix.nopwd
- yes "y" | make lnp EXTRAAUTHENTICATORS=gss PASSWDTYPE=pam SPECIALAUTHENTICATORS=ssl SSLTYPE=unix EXTRACFLAGS="${CFLAGS} -fPIC -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lpam"
+ yes "y" | make lnp EXTRAAUTHENTICATORS=gss PASSWDTYPE=pam SPECIALAUTHENTICATORS=ssl SSLTYPE=unix EXTRACFLAGS="${CFLAGS} -fPIC -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lpam" EXTRALDFLAGS="${LDFLAGS}"
- # create ssl certs for secure imap
- for i in imapd ipop3d; do
- PEM1=$srcdir/pem1
- PEM2=$srcdir/pem2
- /usr/bin/openssl req -newkey rsa:1024 -keyout $PEM1 \
- -nodes -x509 -days 365 -out $PEM2 << EOF
---
-SomeState
-SomeCity
-SomeOrganization
-SomeOrganizationalUnit
-localhost.localdomain
-root@localhost.localdomain
-EOF
-
- cat $PEM1 > ${i}.pem
- echo "" >> ${i}.pem
- cat $PEM2 >> ${i}.pem
- rm $PEM1 $PEM2
- umask 022
- done
}
package_imap() {
@@ -64,7 +45,8 @@ package_imap() {
depends=('c-client')
provides=('imap-server' 'pop3-server')
conflicts=('courier-mta' 'courier-imap')
- backup=(etc/xinetd.d/{imap,ipop2,ipop3} etc/ssl/certs/{imapd,ipop3d}.pem)
+ backup=(etc/xinetd.d/{imap,ipop2,ipop3})
+ install=imap.install
cd $srcdir/$pkgbase-$pkgver
install -d $pkgdir/usr/bin
@@ -72,10 +54,6 @@ package_imap() {
install -D -m755 ipopd/ipop2d $pkgdir/usr/bin/ipop2d
install -D -m755 ipopd/ipop3d $pkgdir/usr/bin/ipop3d
- # install certs
- install -D -m600 imapd.pem $pkgdir/etc/ssl/certs/imapd.pem
- install -D -m600 ipop3d.pem $pkgdir/etc/ssl/certs/ipop3d.pem
-
# install xinetd.d configs
install -D -m644 ../imap $pkgdir/etc/xinetd.d/imap
install -D -m644 ../ipop2 $pkgdir/etc/xinetd.d/ipop2
diff --git a/abs/core/imap/imap.install b/abs/core/imap/imap.install
new file mode 100644
index 0000000..1f554a8
--- /dev/null
+++ b/abs/core/imap/imap.install
@@ -0,0 +1,40 @@
+post_install() {
+ if [ ! -e /etc/ssl/certs/imapd.pem ]; then
+ generate_certificate imapd
+ fi
+ if [ ! -e /etc/ssl/certs/ipop3d.pem ]; then
+ generate_certificate ipop3d
+ fi
+}
+
+post_upgrade() {
+ post_install
+}
+
+generate_certificate() {
+ t=$1
+ echo -n "Generating $t certificate..."
+
+ umask 077
+ tmpdir=$(mktemp -d)
+ PEM1="$tmpdir/$t.pem1"
+ PEM2="$tmpdir/$t.pem2"
+ cert="$tmpdir/$t.pem"
+ /usr/bin/openssl req -newkey rsa:4096 -keyout "$PEM1" \
+ -nodes -x509 -days 365 -out "$PEM2" >/dev/null 2>&1 << EOF
+--
+SomeState
+SomeCity
+SomeOrganization
+SomeOrganizationalUnit
+localhost.localdomain
+root@localhost.localdomain
+EOF
+
+ cat "$PEM1" > "$cert"
+ echo "" >> "$cert"
+ cat "$PEM2" >> "$cert"
+ install -Dm 600 "$cert" -t /etc/ssl/certs
+ rm -rf "$tmpdir"
+ echo "done."
+}
diff --git a/abs/core/inetutils/PKGBUILD b/abs/core/inetutils/PKGBUILD
index fd85ed1..f972945 100644
--- a/abs/core/inetutils/PKGBUILD
+++ b/abs/core/inetutils/PKGBUILD
@@ -1,28 +1,28 @@
-# $Id: PKGBUILD 201551 2013-12-14 23:02:04Z eric $
+# $Id$
# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgname=inetutils
-pkgver=1.9.1.341
-pkgrel=2
+pkgver=1.9.4
+pkgrel=5
pkgdesc="A collection of common network programs"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://www.gnu.org/software/inetutils/"
license=('GPL3')
groups=('base')
-depends=('pam')
+depends=('pam' 'libcap')
makedepends=('help2man')
backup=('etc/xinetd.d/telnet' 'etc/xinetd.d/talk'
'etc/xinetd.d/rlogin' 'etc/xinetd.d/rsh'
'etc/pam.d/rlogin' 'etc/pam.d/rsh')
options=('!emptydirs')
install=inetutils.install
-source=(ftp://ftp.archlinux.org/other/packages/inetutils/${pkgname}-${pkgver}.tar.xz{,.sig}
- ftpd.service rlogin.pam rlogin@.service rlogin.socket rlogin.xinetd
- rsh.pam rsh@.service rsh.socket rsh.xinetd talk.service talk.socket talk.xinetd
- telnet@.service telnet.socket telnet.xinetd)
-sha1sums=('eaccc1568c9cc624f6cda3a265fb92ec72c7304d'
+source=("https://ftp.gnu.org/gnu/inetutils/${pkgname}-${pkgver}.tar.xz"{,.sig}
+ 'ftpd.service' 'rlogin.pam' 'rlogin@.service' 'rlogin.socket' 'rlogin.xinetd'
+ 'rsh.pam' 'rsh@.service' 'rsh.socket' 'rsh.xinetd' 'talk.service' 'talk.socket'
+ 'talk.xinetd' 'telnet@.service' 'telnet.socket' 'telnet.xinetd')
+sha1sums=('5e515cc9da142cb73bb1beda137b4c2dcf2b528c'
'SKIP'
- 'aa4730d662398b6c33df2b6fc116ab6b5c3cd120'
+ '026181500b71f0c09ef5c262450be718651e5658'
'387b371cbaa3611b95d30f806c0dd08b621a584a'
'6f9a304391610a17b8ae3ad35b742c78c86aee16'
'0455126fa18d2a9422469d79b9e73dd928b15652'
@@ -37,6 +37,7 @@ sha1sums=('eaccc1568c9cc624f6cda3a265fb92ec72c7304d'
'0917dc6b5a80d914bf550065b1733b7da2c776f3'
'a7ac7bbe917ff80fd8cd4357fbc62fab50595c34'
'2b2dd71eb3233e5090f4c2df8abe9b4924d323f3')
+validpgpkeys=('4FBD67621082C4C502448E3B180551BAD95A3C35')
build() {
cd ${pkgname}-${pkgver}
@@ -67,6 +68,8 @@ package() {
cd ${pkgname}-${pkgver}
make DESTDIR="${pkgdir}" install
+ chmod -s "${pkgdir}"/usr/bin/{rcp,rlogin,rsh}
+
install -D -m644 "${srcdir}/telnet.xinetd" "${pkgdir}/etc/xinetd.d/telnet"
install -D -m644 "${srcdir}/talk.xinetd" "${pkgdir}/etc/xinetd.d/talk"
install -D -m644 "${srcdir}/rlogin.xinetd" "${pkgdir}/etc/xinetd.d/rlogin"
diff --git a/abs/core/inetutils/ftpd.service b/abs/core/inetutils/ftpd.service
index 3020804..c1deb0d 100644
--- a/abs/core/inetutils/ftpd.service
+++ b/abs/core/inetutils/ftpd.service
@@ -6,7 +6,7 @@ After=network.target
Type=forking
PIDFile=/run/ftpd.pid
ExecStart=/usr/bin/ftpd -D
-ExecStopPost=/bin/rm -f /run/ftpd.pid
+ExecStopPost=/usr/bin/rm -f /run/ftpd.pid
[Install]
WantedBy=multi-user.target
diff --git a/abs/core/inetutils/inetutils.install b/abs/core/inetutils/inetutils.install
index bd2a283..4776e7e 100644
--- a/abs/core/inetutils/inetutils.install
+++ b/abs/core/inetutils/inetutils.install
@@ -1,20 +1,9 @@
-infodir=usr/share/info
-filelist=(inetutils.info.gz)
-
post_install() {
- [ -x usr/bin/install-info ] || return 0
- for file in ${filelist[@]}; do
- install-info $infodir/$file $infodir/dir 2> /dev/null
- done
+ setcap cap_net_bind_service=+ep usr/bin/rcp 2>/dev/null || chmod +s usr/bin/rcp
+ setcap cap_net_bind_service=+ep usr/bin/rlogin 2>/dev/null || chmod +s usr/bin/rlogin
+ setcap cap_net_bind_service=+ep usr/bin/rsh 2>/dev/null || chmod +s usr/bin/rsh
}
post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- [ -x usr/bin/install-info ] || return 0
- for file in ${filelist[@]}; do
- install-info --delete $infodir/$file $infodir/dir 2> /dev/null
- done
+ post_install
}
diff --git a/abs/core/iproute2/PKGBUILD b/abs/core/iproute2/PKGBUILD
index 566c75b..e26cafa 100644
--- a/abs/core/iproute2/PKGBUILD
+++ b/abs/core/iproute2/PKGBUILD
@@ -3,27 +3,38 @@
# Maintainer: Ronald van Haren <ronald.archlinux.org>
# Contributor: Judd Vinet <jvinet@zeroflux.org>
-pkgbase=iproute2
-#pkgname=(iproute2 iproute2-doc)
-pkgname=(iproute2)
-pkgver=4.9.0
+pkgname=iproute2
+pkgver=4.15.0
pkgrel=1
pkgdesc='IP Routing Utilities'
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('GPL2')
-url='http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2'
-#makedepends=('iptables' 'linux-atm' 'linuxdoc-tools' 'texlive-bin' 'texlive-core' 'texlive-latexextra')
-makedepends=('iptables' 'linux-atm')
-options=('staticlibs' '!makeflags')
+url='https://git.kernel.org/pub/scm/network/iproute2/iproute2.git'
+depends=('glibc' 'iptables' 'libelf')
+optdepends=('linux-atm: ATM support')
+groups=('base')
+provides=('iproute')
+# Upstream commit b2fd7a0e6efa7b85a041b5cb9ea6fc1a6a798fd3 removed old documentation.
+# Add conflict and replace to get rid of the package. TODO: Remove anytime soon.
+conflicts=('iproute' 'iproute2-doc')
+replaces=('iproute' 'iproute2-doc')
+backup=('etc/iproute2/ematch_map'
+ 'etc/iproute2/rt_dsfield'
+ 'etc/iproute2/rt_protos'
+ 'etc/iproute2/rt_realms'
+ 'etc/iproute2/rt_scopes'
+ 'etc/iproute2/rt_tables')
+makedepends=('linux-atm')
+options=('staticlibs')
validpgpkeys=('9F6FC345B05BE7E766B83C8F80A77F6095CDE47E') # Stephen Hemminger
-source=("https://www.kernel.org/pub/linux/utils/net/${pkgbase}/${pkgbase}-${pkgver}.tar."{xz,sign}
+source=("https://www.kernel.org/pub/linux/utils/net/${pkgname}/${pkgname}-${pkgver}.tar."{xz,sign}
'0001-make-iproute2-fhs-compliant.patch')
-sha256sums=('c0f30f043f7767cc1b2cd2197b08d4e9b2392c95823fabe30bbce308c30116c4'
+sha256sums=('48d4616a99d7b609b7b795c0ae8ec57099fb0271ed89253e8772c02327798355'
'SKIP'
'f60fefe4c17d3b768824bb50ae6416292bcebba06d73452e23f4147b46b827d3')
prepare() {
- cd "${srcdir}/${pkgbase}-${pkgver}"
+ cd "${srcdir}/${pkgname}-${pkgver}"
# set correct fhs structure
patch -Np1 -i "${srcdir}/0001-make-iproute2-fhs-compliant.patch"
@@ -34,51 +45,19 @@ prepare() {
}
build() {
- cd "${srcdir}/${pkgbase}-${pkgver}"
+ cd "${srcdir}/${pkgname}-${pkgver}"
./configure
make
-
-# cd "${srcdir}/${pkgbase}-${pkgver}/doc/"
-
-# make html pdf
}
-package_iproute2() {
- depends=('glibc' 'iptables')
- optdepends=('linux-atm: ATM support')
- groups=('base')
- provides=('iproute')
- conflicts=('iproute')
- replaces=('iproute')
- backup=('etc/iproute2/ematch_map' 'etc/iproute2/rt_dsfield' 'etc/iproute2/rt_protos' \
- 'etc/iproute2/rt_realms' 'etc/iproute2/rt_scopes' 'etc/iproute2/rt_tables')
-
- cd "${srcdir}/${pkgbase}-${pkgver}"
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" SBINDIR="/usr/bin" install
- # remove documentation
- rm -rf "${pkgdir}/usr/share/doc/"
-
# libnetlink isn't installed, install it FS#19385
install -Dm0644 include/libnetlink.h "${pkgdir}/usr/include/libnetlink.h"
install -Dm0644 lib/libnetlink.a "${pkgdir}/usr/lib/libnetlink.a"
}
-package_iproute2-doc() {
- pkgdesc='IP Routing Utilities documentation'
-
- cd "${srcdir}/${pkgbase}-${pkgver}"
-
- make DESTDIR="${pkgdir}" install
-
- # documentation is included in default install target... So clean up here.
- find "${pkgdir}/" ! -type d ! -regex '.*examples.*' -delete
- find "${pkgdir}/" -empty -delete
- find "${pkgdir}/" -name '*.sgml' -delete
- find "${pkgdir}/" -name '*.tex' -delete
-
- install -m0644 doc/*.html doc/*.pdf "${pkgdir}/usr/share/doc/iproute2/"
-}
-
diff --git a/abs/core/iproute2/__changelog b/abs/core/iproute2/__changelog
deleted file mode 100644
index fd3fc81..0000000
--- a/abs/core/iproute2/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: disable iproute2-doc and tex doc deps
diff --git a/abs/core/iputils/PKGBUILD b/abs/core/iputils/PKGBUILD
index 9e017fa..3bc5bf8 100644
--- a/abs/core/iputils/PKGBUILD
+++ b/abs/core/iputils/PKGBUILD
@@ -1,59 +1,50 @@
-# $Id: PKGBUILD 192554 2013-08-14 06:31:20Z tpowa $
+# $Id$
# Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
# Contributor: Aaron Griffin <aaron@archlinux.org>
pkgname=iputils
-pkgver=20121221
-pkgrel=3
+# Commit date + git rev-parse --short origin/master
+_rev=1f2bb12
+pkgver=20161105.${_rev}
+pkgrel=2
pkgdesc="Network monitoring tools, including ping"
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('GPL')
url="http://www.skbuff.net/iputils/"
groups=('base')
-depends=('openssl' 'sysfsutils' 'libcap')
+depends=('openssl' 'sysfsutils' 'libcap' 'libidn')
optdepends=('xinetd: for tftpd')
-makedepends=('docbook2x' 'opensp')
+makedepends=('docbook-utils' 'perl-sgmls' 'git')
conflicts=('netkit-base' 'arping' 'netkit-tftpd')
replaces=('netkit-base')
backup=(etc/xinetd.d/tftp)
install=${pkgname}.install
-source=(http://www.skbuff.net/${pkgname}/${pkgname}-s${pkgver}.tar.bz2
+source=("git+https://github.com/iputils/iputils.git#commit=${_rev}"
tftp.xinetd)
-sha1sums=('4d56d8c75d6a5d58f052e4056e975f01ebab9ba9'
+sha1sums=('SKIP'
'fc2ae26f5609725e3f4aeaf4ab82dfa6d2e378fd')
build() {
- cd "${srcdir}/${pkgname}-s${pkgver}"
+ cd "${srcdir}/${pkgname}"
- make USE_GNUTLS=no CCOPTOPT="$CFLAGS"
-
- cd doc
- for file in *.sgml; do
- xf=${file/.sgml/.xml}
- osx -xlower -xno-nl-in-tag $file > $xf || true
- sed -i "s|<refname>\(.*\), \(.*\)</refname>|<refname>\1</refname>, <refname>\2</refname>|g" $xf
- docbook2man $xf
- done
+ make USE_NETTLE=no USE_GNUTLS=no CCOPTOPT="$CFLAGS"
+ # fix perl-sgmls
+ sed -i -e 's#sgmlspl#sgmlspl.pl#g' "${srcdir}/${pkgname}/doc/Makefile"
+ make -C doc man
}
package() {
- cd "${srcdir}/${pkgname}-s${pkgver}"
+ cd "${srcdir}/${pkgname}"
install -dm755 "${pkgdir}"/usr/bin
- install -m755 arping clockdiff rarpd rdisc tftpd tracepath tracepath6 "${pkgdir}"/usr/bin/
-
- install -m755 ping{,6} "${pkgdir}"/usr/bin/
+ install -m755 arping clockdiff ping rarpd rdisc tftpd tracepath "${pkgdir}"/usr/bin/
install -dm755 "${pkgdir}"/usr/share/man/man8
install -m644 doc/{arping,clockdiff,ping,rarpd,rdisc,tftpd,tracepath}.8 \
"${pkgdir}"/usr/share/man/man8/
- cd "${pkgdir}"/usr/share/man/man8
- ln -sf ping.8.gz ping6.8.gz
- ln -sf tracepath.8.gz tracepath6.8.gz
-
# FS#24768
install -dm755 "${pkgdir}"/etc/xinetd.d/
install -m644 "${srcdir}"/tftp.xinetd "${pkgdir}"/etc/xinetd.d/tftp
diff --git a/abs/core/iputils/iputils.install b/abs/core/iputils/iputils.install
index 8e5159e..1684c2e 100644
--- a/abs/core/iputils/iputils.install
+++ b/abs/core/iputils/iputils.install
@@ -1,6 +1,5 @@
post_install() {
setcap cap_net_raw=ep usr/bin/ping 2>/dev/null || chmod +s usr/bin/ping
- setcap cap_net_raw=ep usr/bin/ping6 2>/dev/null || chmod +s usr/bin/ping6
}
post_upgrade() {
diff --git a/abs/core/jade/PKGBUILD b/abs/core/jade/PKGBUILD
deleted file mode 100644
index 1fa51e1..0000000
--- a/abs/core/jade/PKGBUILD
+++ /dev/null
@@ -1,41 +0,0 @@
-# $Id: PKGBUILD 161891 2012-06-16 05:10:30Z eric $
-# Maintainer:
-# Contributor: dorphell <dorphell@archlinux.org>
-# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
-
-pkgname=jade
-pkgver=1.2.1
-pkgrel=8
-_debpatch=47.1
-pkgdesc="James Clark's DSSSL Engine"
-url='http://www.jclark.com/jade/'
-arch=('i686' 'x86_64')
-license=('custom')
-depends=('gcc-libs')
-replaces=('openjade')
-options=('!libtool' '!makeflags')
-source=("ftp://ftp.jclark.com/pub/${pkgname}/${pkgname}-${pkgver}.tar.gz"
- "http://ftp.debian.org/debian/pool/main/j/jade/jade_${pkgver}-${_debpatch}.diff.gz")
-md5sums=('4239670ca6b578bff68b8c2e7cd1225f'
- '6c9c0109e3b6d283cb7a18ec8a672575')
-
-build() {
- cd "${srcdir}"/${pkgname}-${pkgver}
-
- export CXXFLAGS="$CXXFLAGS -fpermissive"
-
- patch -p1 -i "${srcdir}"/jade_${pkgver}-${_debpatch}.diff
-
- chmod 755 configure
- ./configure --prefix=/usr --enable-default-catalog=/usr/share/sgml/catalog
-
- make
-}
-
-package() {
- cd "${srcdir}"/${pkgname}-${pkgver}
- install -d -m755 "${pkgdir}"/usr/lib
- make prefix="${pkgdir}"/usr install
- mv "${pkgdir}"/usr/bin/sx "${pkgdir}"/usr/bin/sgml2xml
- install -Dm644 COPYING "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
-}
diff --git a/abs/core/jade/jade-1.2.1-8.src.tar.gz b/abs/core/jade/jade-1.2.1-8.src.tar.gz
deleted file mode 120000
index cc254e3..0000000
--- a/abs/core/jade/jade-1.2.1-8.src.tar.gz
+++ /dev/null
@@ -1 +0,0 @@
-/data/pkg_repo/src_packages/jade-1.2.1-8.src.tar.gz \ No newline at end of file
diff --git a/abs/core/krb5/PKGBUILD b/abs/core/krb5/PKGBUILD
index 9fce5eb..4f6f841 100644
--- a/abs/core/krb5/PKGBUILD
+++ b/abs/core/krb5/PKGBUILD
@@ -1,56 +1,52 @@
-# $Id: PKGBUILD 162178 2012-06-22 17:24:25Z stephane $
-# Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
+# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org>
pkgname=krb5
-pkgver=1.10.2
-pkgrel=3
-pkgdesc="The Kerberos network authentication system"
-arch=('i686' 'x86_64')
-url="http://web.mit.edu/kerberos/"
+_pkgvermajor=1.16
+pkgver=${_pkgvermajor}
+pkgrel=1
+pkgdesc='The Kerberos network authentication system'
+url='https://web.mit.edu/kerberos/'
+arch=('x86_64')
license=('custom')
depends=('e2fsprogs' 'libldap' 'keyutils')
makedepends=('perl')
backup=('etc/krb5.conf' 'var/lib/krb5kdc/kdc.conf')
-source=(http://web.mit.edu/kerberos/dist/${pkgname}/1.10/${pkgname}-${pkgver}-signed.tar
- krb5-1.10.1-gcc47.patch
- krb5-kadmind
+options=('!emptydirs')
+source=(https://web.mit.edu/kerberos/dist/krb5/${_pkgvermajor}/${pkgname}-${pkgver}.tar.gz{,.asc}
+ krb5-config_LDFLAGS.patch
krb5-kadmind.service
- krb5-kdc
krb5-kdc.service
- krb5-kpropd
krb5-kpropd.service
krb5-kpropd@.service
krb5-kpropd.socket)
-sha1sums=('8b6e2c5bf0c65aacd368b3698add7888f2a7332d'
- '78b759d566b1fdefd9bbcd06df14f07f12effe96'
- '2aa229369079ed1bbb201a1ef72c47bf143f4dbe'
- 'a2a01e7077d9e89cda3457ea0e216debb3dc353c'
- '77d2312ecd8bf12a6e72cc8fd871a8ac93b23393'
- 'f5e4fa073e11b0fcb4e3098a5d58a4f791ec841e'
- '7f402078fa65bb9ff1beb6cbbbb017450df78560'
- '614401dd4ac18e310153240bb26eb32ff1e8cf5b'
- '023a8164f8ee7066ac814486a68bc605e79f6101'
- 'f3677d30dbbd7106c581379c2c6ebb1bf7738912')
-options=('!emptydirs')
+sha512sums=('7e162467b95dad2b6aaa11686d08a00f1cc4eb08247fca8f0e5a8bcaa5f9f7b42cdf00db69c5c6111bdf9eb8063d53cef3bb207ce5d6a287615ca10b710153f9'
+ 'SKIP'
+ '5a3782ff17b383f8cd0415fd13538ab56afd788130d6ad640e9f2682b7deaae7f25713ce358058ed771091040dccf62a3bc87e6fd473d505ec189a95debcc801'
+ 'ae1fa980e8e30a83dfef7fe233be70a9ec530ebaffc344a0e7eba61e7de4c800421b45cf203f1e526cc8351754038d6539184b30aa049a567e2a9e80f0d39841'
+ 'b137ff0154f9af4891e9e78cec692af47ecfd92ca9ce6e00b40ef137d942ba04e8caf483fc5d464b9559ad4a5c4e75ec57b6eab7fc35181115ca1606c0b316c1'
+ 'b57bbe55c19c92a04cd3e8ad569adcc5aedd4246075b2e6dbcc363e523853332a3e7650be85098b91e495799f8b728ea550495ab303f46ccd9298a2260120b2f'
+ 'a31ed42e988fed892dd3f1ca1942c3cd4bf391d894c9cebe5e91f52797392261e129727590ae06e2f727bb7b0f8d73a7aa35e8b983d6bad77f22a099091ee944'
+ '4e7ae175425e0787a1d5ff959471a88bf5af4cd6e213dc6d4048902fab7547c1186a082370b523f9549f5096acfab1fb03b4839e42bd80dc539130ae4bb3ea55')
+validpgpkeys=('2C732B1C0DBEF678AB3AF606A32F17FD0055C305' # Tom Yu <tlyu@mit.edu>
+ 'C4493CB739F4A89F9852CBC20CBA08575F8372DF') # Greg Hudson <ghudson@mit.edu>
-build() {
- tar zxvf ${pkgname}-${pkgver}.tar.gz
- cd "${srcdir}/${pkgname}-${pkgver}/src"
+prepare() {
+ cd ${pkgname}-${pkgver}
- # With gcc47 : deltat.c:1694:12: error: 'yylval' may be used uninitialized
- # in this function [-Werror=maybe-uninitialized]
- # As this is generated code, just ignore the complaint.
- patch -Np2 -i ../../krb5-1.10.1-gcc47.patch
- rm lib/krb5/krb/deltat.c
+ # cf https://bugs.gentoo.org/show_bug.cgi?id=448778
+ patch -p1 < "${srcdir}"/krb5-config_LDFLAGS.patch
- # FS#25384
- sed -i "/KRB5ROOT=/s/\/local//" util/ac_check_krb5.m4
+ # FS#25384
+ sed -i "/KRB5ROOT=/s/\/local//" src/util/ac_check_krb5.m4
+}
+build() {
+ cd ${pkgname}-${pkgver}/src
export CFLAGS+=" -fPIC -fno-strict-aliasing -fstack-protector-all"
export CPPFLAGS+=" -I/usr/include/et"
./configure --prefix=/usr \
- --sbindir=/usr/bin \
- --mandir=/usr/share/man \
+ --sbindir=/usr/bin \
+ --sysconfdir=/etc \
--localstatedir=/var/lib \
--enable-shared \
--with-system-et \
@@ -64,30 +60,24 @@ build() {
}
package() {
- cd "${srcdir}/${pkgname}-${pkgver}/src"
+ cd ${pkgname}-${pkgver}/src
make DESTDIR="${pkgdir}" EXAMPLEDIR=/usr/share/doc/${pkgname}/examples install
# Fix FS#29889
- install -m 644 plugins/kdb/ldap/libkdb_ldap/kerberos.{ldif,schema} "${pkgdir}"/usr/share/doc/${pkgname}/examples
-
- # Sample KDC config file
- install -dm 755 "${pkgdir}"/var/lib/krb5kdc
- install -pm 644 config-files/kdc.conf "${pkgdir}"/var/lib/krb5kdc/kdc.conf
+ install -m 644 plugins/kdb/ldap/libkdb_ldap/kerberos.{ldif,schema} \
+ "${pkgdir}/usr/share/doc/${pkgname}/examples"
- # Default configuration file
- install -dm 755 "${pkgdir}"/etc
- install -pm 644 config-files/krb5.conf "${pkgdir}"/etc/krb5.conf
+ install -Dpm 644 config-files/krb5.conf -t "${pkgdir}/etc"
+ install -Dpm 644 config-files/kdc.conf -t "${pkgdir}/var/lib/krb5kdc"
- install -dm 755 "${pkgdir}"/etc/rc.d
- install -m 755 ../../krb5-{kdc,kadmind,kpropd} "${pkgdir}"/etc/rc.d
+ install -Dm 644 util/ac_check_krb5.m4 -t "${pkgdir}/usr/share/aclocal"
- install -dm 755 "${pkgdir}"/usr/share/aclocal
- install -m 644 util/ac_check_krb5.m4 "${pkgdir}"/usr/share/aclocal
-
- install -Dm644 "${srcdir}"/${pkgname}-${pkgver}/NOTICE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
+ install -Dm 644 "${srcdir}"/${pkgname}-${pkgver}/NOTICE \
+ "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
# systemd stuff
- install -dm 755 "${pkgdir}"/usr/lib/systemd/system
- install -m 644 ../../krb5-{kadmind.service,kdc.service,kpropd.service,kpropd@.service,kpropd.socket} \
- "${pkgdir}"/usr/lib/systemd/system
+ install -Dm 644 "${srcdir}"/krb5-{kadmind.service,kdc.service,kpropd.service,kpropd@.service,kpropd.socket} \
+ -t "${pkgdir}/usr/lib/systemd/system"
}
+
+# vim: ts=2 sw=2 et:
diff --git a/abs/core/krb5/krb5-1.10.1-gcc47.patch b/abs/core/krb5/krb5-1.10.1-gcc47.patch
deleted file mode 100644
index ffd01c2..0000000
--- a/abs/core/krb5/krb5-1.10.1-gcc47.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -Naur krb5-1.10.1.ori/src/lib/krb5/krb/x-deltat.y krb5-1.10.1/src/lib/krb5/krb/x-deltat.y
---- krb5-1.10.1.ori/src/lib/krb5/krb/x-deltat.y 2011-09-06 07:34:32.000000000 -0400
-+++ krb5-1.10.1/src/lib/krb5/krb/x-deltat.y 2012-03-24 13:15:11.543551318 -0400
-@@ -44,6 +44,7 @@
- #ifdef __GNUC__
- #pragma GCC diagnostic push
- #pragma GCC diagnostic ignored "-Wuninitialized"
-+#pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
- #endif
-
- #include <ctype.h>
diff --git a/abs/core/krb5/krb5-config_LDFLAGS.patch b/abs/core/krb5/krb5-config_LDFLAGS.patch
new file mode 100644
index 0000000..1b85086
--- /dev/null
+++ b/abs/core/krb5/krb5-config_LDFLAGS.patch
@@ -0,0 +1,12 @@
+Bug #448778
+--- krb5-1.11/src/build-tools/krb5-config.in 2012-12-18 02:47:04.000000000 +0000
++++ krb5-1.11/src/build-tools/krb5-config.in 2012-12-28 07:13:16.582693363 +0000
+@@ -217,7 +217,7 @@
+ -e 's#\$(PROG_RPATH)#'$libdir'#' \
+ -e 's#\$(PROG_LIBPATH)#'$libdirarg'#' \
+ -e 's#\$(RPATH_FLAG)#'"$RPATH_FLAG"'#' \
+- -e 's#\$(LDFLAGS)#'"$LDFLAGS"'#' \
++ -e 's#\$(LDFLAGS)##' \
+ -e 's#\$(PTHREAD_CFLAGS)#'"$PTHREAD_CFLAGS"'#' \
+ -e 's#\$(CFLAGS)##'`
+
diff --git a/abs/core/krb5/krb5-kadmind b/abs/core/krb5/krb5-kadmind
deleted file mode 100644
index 04df0dc..0000000
--- a/abs/core/krb5/krb5-kadmind
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/bash
-
-# general config
-. /etc/rc.conf
-. /etc/rc.d/functions
-
-PID=`pidof -o %PPID /usr/sbin/kadmind`
-case "$1" in
- start)
- stat_busy "Starting Kerberos Admin Daemon"
- if [ -z "$PID" ]; then
- /usr/sbin/kadmind
- fi
- if [ ! -z "$PID" -o $? -gt 0 ]; then
- stat_fail
- else
- add_daemon krb5-kadmind
- stat_done
- fi
- ;;
- stop)
- stat_busy "Stopping Kerberos Admin Daemon"
- [ ! -z "$PID" ] && kill $PID &> /dev/null
- if [ $? -gt 0 ]; then
- stat_fail
- else
- rm_daemon krb5-kadmind
- stat_done
- fi
- ;;
- restart)
- $0 stop
- sleep 1
- $0 start
- ;;
- *)
- echo "usage: $0 {start|stop|restart}"
- ;;
-esac
-exit 0
diff --git a/abs/core/krb5/krb5-kadmind.service b/abs/core/krb5/krb5-kadmind.service
index f3836c8..4819e0d 100644
--- a/abs/core/krb5/krb5-kadmind.service
+++ b/abs/core/krb5/krb5-kadmind.service
@@ -2,7 +2,7 @@
Description=Kerberos 5 administration server
[Service]
-ExecStart=/usr/sbin/kadmind -nofork
+ExecStart=/usr/bin/kadmind -nofork
[Install]
WantedBy=multi-user.target
diff --git a/abs/core/krb5/krb5-kdc b/abs/core/krb5/krb5-kdc
deleted file mode 100644
index 05a0341..0000000
--- a/abs/core/krb5/krb5-kdc
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/bash
-
-# general config
-. /etc/rc.conf
-. /etc/rc.d/functions
-
-PID=`pidof -o %PPID /usr/sbin/krb5kdc`
-case "$1" in
- start)
- stat_busy "Starting Kerberos Authentication"
- if [ -z "$PID" ]; then
- /usr/sbin/krb5kdc
- fi
- if [ ! -z "$PID" -o $? -gt 0 ]; then
- stat_fail
- else
- add_daemon krb5-kdc
- stat_done
- fi
- ;;
- stop)
- stat_busy "Stopping Kerberos Authentication"
- [ ! -z "$PID" ] && kill $PID &> /dev/null
- if [ $? -gt 0 ]; then
- stat_fail
- else
- rm_daemon krb5-kdc
- stat_done
- fi
- ;;
- restart)
- $0 stop
- sleep 1
- $0 start
- ;;
- *)
- echo "usage: $0 {start|stop|restart}"
- ;;
-esac
-exit 0
diff --git a/abs/core/krb5/krb5-kdc.service b/abs/core/krb5/krb5-kdc.service
index 6ec93bb..4918f60 100644
--- a/abs/core/krb5/krb5-kdc.service
+++ b/abs/core/krb5/krb5-kdc.service
@@ -2,7 +2,7 @@
Description=Kerberos 5 KDC
[Service]
-ExecStart=/usr/sbin/krb5kdc -n
+ExecStart=/usr/bin/krb5kdc -n
Restart=always
[Install]
diff --git a/abs/core/krb5/krb5-kpropd b/abs/core/krb5/krb5-kpropd
deleted file mode 100644
index a0077d6..0000000
--- a/abs/core/krb5/krb5-kpropd
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/bash
-
-# general config
-. /etc/rc.conf
-. /etc/rc.d/functions
-
-PID=`pidof -o %PPID /usr/sbin/kpropd`
-case "$1" in
- start)
- stat_busy "Starting Kerberos Database Propagation Daemon"
- if [ -z "$PID" ]; then
- /usr/sbin/kpropd -S
- fi
- if [ ! -z "$PID" -o $? -gt 0 ]; then
- stat_fail
- else
- add_daemon kpropd
- stat_done
- fi
- ;;
- stop)
- stat_busy "Stopping Kerberos Database Propagation Daemon"
- [ ! -z "$PID" ] && kill $PID &> /dev/null
- if [ $? -gt 0 ]; then
- stat_fail
- else
- rm_daemon kpropd
- stat_done
- fi
- ;;
- restart)
- $0 stop
- sleep 1
- $0 start
- ;;
- *)
- echo "usage: $0 {start|stop|restart}"
- ;;
-esac
-exit 0
diff --git a/abs/core/krb5/krb5-kpropd.service b/abs/core/krb5/krb5-kpropd.service
index a7c5b57..c6c3224 100644
--- a/abs/core/krb5/krb5-kpropd.service
+++ b/abs/core/krb5/krb5-kpropd.service
@@ -2,7 +2,7 @@
Description=Kerberos 5 propagation server
[Service]
-ExecStart=/usr/sbin/kpropd -S
+ExecStart=/usr/bin/kpropd -S
[Install]
WantedBy=multi-user.target
diff --git a/abs/core/krb5/krb5-kpropd@.service b/abs/core/krb5/krb5-kpropd@.service
index 46f7e36..989270f 100644
--- a/abs/core/krb5/krb5-kpropd@.service
+++ b/abs/core/krb5/krb5-kpropd@.service
@@ -3,6 +3,6 @@ Description=Kerberos 5 propagation server
Conflicts=krb5-kpropd.service
[Service]
-ExecStart=/usr/sbin/kpropd
+ExecStart=/usr/bin/kpropd
StandardInput=socket
StandardError=syslog
diff --git a/abs/core/lame/PKGBUILD b/abs/core/lame/PKGBUILD
index 432a519..3e31dfe 100644
--- a/abs/core/lame/PKGBUILD
+++ b/abs/core/lame/PKGBUILD
@@ -4,19 +4,19 @@
# Contributor: Hugo Doria <hugo@archlinux.org>
pkgname=lame
-pkgver=3.99.5
-pkgrel=2
+pkgver=3.100
+pkgrel=1
pkgdesc="A high quality MPEG Audio Layer III (MP3) encoder"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://lame.sourceforge.net/"
depends=('ncurses')
makedepends=('nasm')
license=('LGPL')
source=("http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz")
-md5sums=('84835b313d4a8b68f5349816d33e07ce')
+md5sums=('83e260acbe4389b54fe08e0bdbf7cddb')
build() {
- cd "$srcdir/$pkgname-$pkgver"
+ cd $pkgname-$pkgver
./configure --prefix=/usr \
--enable-nasm \
@@ -25,9 +25,7 @@ build() {
}
package() {
- cd "$srcdir/$pkgname-$pkgver"
+ cd $pkgname-$pkgver
make DESTDIR="$pkgdir" install
}
-
-# vim:set ts=2 sw=2 et:
diff --git a/abs/core/lapack/LICENSE.blas b/abs/core/lapack/LICENSE.blas
deleted file mode 100644
index 79f3838..0000000
--- a/abs/core/lapack/LICENSE.blas
+++ /dev/null
@@ -1,19 +0,0 @@
-From: http://www.netlib.org/blas/faq.html
-
- 2) Are there legal restrictions on the use of BLAS reference
- implementation software?
-
-The reference BLAS is a freely-available software package. It is
-available from netlib via anonymous ftp and the World Wide Web. Thus,
-it can be included in commercial software packages (and has been). We
-only ask that proper credit be given to the authors.
-
-Like all software, it is copyrighted. It is not trademarked, but we do
-ask the following:
-
-If you modify the source for these routines we ask that you change the
-name of the routine and comment the changes made to the original.
-
-We will gladly answer any questions regarding the software. If a
-modification is done, however, it is the responsibility of the person
-who modified the routine to provide support.
diff --git a/abs/core/lapack/Makefile.blas b/abs/core/lapack/Makefile.blas
deleted file mode 100644
index 46b3eeb..0000000
--- a/abs/core/lapack/Makefile.blas
+++ /dev/null
@@ -1,148 +0,0 @@
-include ../../make.inc
-
-#######################################################################
-# This is the makefile to create a library for the BLAS.
-# The files are grouped as follows:
-#
-# SBLAS1 -- Single precision real BLAS routines
-# CBLAS1 -- Single precision complex BLAS routines
-# DBLAS1 -- Double precision real BLAS routines
-# ZBLAS1 -- Double precision complex BLAS routines
-#
-# CB1AUX -- Real BLAS routines called by complex routines
-# ZB1AUX -- D.P. real BLAS routines called by d.p. complex
-# routines
-#
-# ALLBLAS -- Auxiliary routines for Level 2 and 3 BLAS
-#
-# SBLAS2 -- Single precision real BLAS2 routines
-# CBLAS2 -- Single precision complex BLAS2 routines
-# DBLAS2 -- Double precision real BLAS2 routines
-# ZBLAS2 -- Double precision complex BLAS2 routines
-#
-# SBLAS3 -- Single precision real BLAS3 routines
-# CBLAS3 -- Single precision complex BLAS3 routines
-# DBLAS3 -- Double precision real BLAS3 routines
-# ZBLAS3 -- Double precision complex BLAS3 routines
-#
-# The library can be set up to include routines for any combination
-# of the four precisions. To create or add to the library, enter make
-# followed by one or more of the precisions desired. Some examples:
-# make single
-# make single complex
-# make single double complex complex16
-# Note that these commands are not safe for parallel builds.
-#
-# Alternatively, the commands
-# make all
-# or
-# make
-# without any arguments creates a library of all four precisions.
-# The name of the library is held in BLASLIB, which is set in the
-# top-level make.inc
-#
-# To remove the object files after the library is created, enter
-# make clean
-# To force the source files to be recompiled, enter, for example,
-# make single FRC=FRC
-#
-#---------------------------------------------------------------------
-#
-# Edward Anderson, University of Tennessee
-# March 26, 1990
-# Susan Ostrouchov, Last updated September 30, 1994
-# ejr, May 2006.
-#
-#######################################################################
-
-all: $(BLASLIB)
-
-#---------------------------------------------------------
-# Comment out the next 6 definitions if you already have
-# the Level 1 BLAS.
-#---------------------------------------------------------
-SBLAS1 = isamax.o sasum.o saxpy.o scopy.o sdot.o snrm2.o \
- srot.o srotg.o sscal.o sswap.o sdsdot.o srotmg.o srotm.o
-$(SBLAS1): $(FRC)
-
-CBLAS1 = scabs1.o scasum.o scnrm2.o icamax.o caxpy.o ccopy.o \
- cdotc.o cdotu.o csscal.o crotg.o cscal.o cswap.o csrot.o
-$(CBLAS1): $(FRC)
-
-DBLAS1 = idamax.o dasum.o daxpy.o dcopy.o ddot.o dnrm2.o \
- drot.o drotg.o dscal.o dsdot.o dswap.o drotmg.o drotm.o
-$(DBLAS1): $(FRC)
-
-ZBLAS1 = dcabs1.o dzasum.o dznrm2.o izamax.o zaxpy.o zcopy.o \
- zdotc.o zdotu.o zdscal.o zrotg.o zscal.o zswap.o zdrot.o
-$(ZBLAS1): $(FRC)
-
-CB1AUX = isamax.o sasum.o saxpy.o scopy.o snrm2.o sscal.o
-$(CB1AUX): $(FRC)
-
-ZB1AUX = idamax.o dasum.o daxpy.o dcopy.o dnrm2.o dscal.o
-$(ZB1AUX): $(FRC)
-
-#---------------------------------------------------------------------
-# The following line defines auxiliary routines needed by both the
-# Level 2 and Level 3 BLAS. Comment it out only if you already have
-# both the Level 2 and 3 BLAS.
-#---------------------------------------------------------------------
-ALLBLAS = lsame.o xerbla.o xerbla_array.o
-$(ALLBLAS) : $(FRC)
-
-#---------------------------------------------------------
-# Comment out the next 4 definitions if you already have
-# the Level 2 BLAS.
-#---------------------------------------------------------
-SBLAS2 = sgemv.o sgbmv.o ssymv.o ssbmv.o sspmv.o \
- strmv.o stbmv.o stpmv.o strsv.o stbsv.o stpsv.o \
- sger.o ssyr.o sspr.o ssyr2.o sspr2.o
-$(SBLAS2): $(FRC)
-
-CBLAS2 = cgemv.o cgbmv.o chemv.o chbmv.o chpmv.o \
- ctrmv.o ctbmv.o ctpmv.o ctrsv.o ctbsv.o ctpsv.o \
- cgerc.o cgeru.o cher.o chpr.o cher2.o chpr2.o
-$(CBLAS2): $(FRC)
-
-DBLAS2 = dgemv.o dgbmv.o dsymv.o dsbmv.o dspmv.o \
- dtrmv.o dtbmv.o dtpmv.o dtrsv.o dtbsv.o dtpsv.o \
- dger.o dsyr.o dspr.o dsyr2.o dspr2.o
-$(DBLAS2): $(FRC)
-
-ZBLAS2 = zgemv.o zgbmv.o zhemv.o zhbmv.o zhpmv.o \
- ztrmv.o ztbmv.o ztpmv.o ztrsv.o ztbsv.o ztpsv.o \
- zgerc.o zgeru.o zher.o zhpr.o zher2.o zhpr2.o
-$(ZBLAS2): $(FRC)
-
-#---------------------------------------------------------
-# Comment out the next 4 definitions if you already have
-# the Level 3 BLAS.
-#---------------------------------------------------------
-SBLAS3 = sgemm.o ssymm.o ssyrk.o ssyr2k.o strmm.o strsm.o
-$(SBLAS3): $(FRC)
-
-CBLAS3 = cgemm.o csymm.o csyrk.o csyr2k.o ctrmm.o ctrsm.o \
- chemm.o cherk.o cher2k.o
-$(CBLAS3): $(FRC)
-
-DBLAS3 = dgemm.o dsymm.o dsyrk.o dsyr2k.o dtrmm.o dtrsm.o
-$(DBLAS3): $(FRC)
-
-ZBLAS3 = zgemm.o zsymm.o zsyrk.o zsyr2k.o ztrmm.o ztrsm.o \
- zhemm.o zherk.o zher2k.o
-$(ZBLAS3): $(FRC)
-
-ALLOBJ=$(SBLAS1) $(SBLAS2) $(SBLAS3) $(DBLAS1) $(DBLAS2) $(DBLAS3) \
- $(CBLAS1) $(CBLAS2) $(CBLAS3) $(ZBLAS1) \
- $(ZBLAS2) $(ZBLAS3) $(ALLBLAS)
-
-clean:
- rm -f *.o libblas.a libblas.so*
-
-static: $(ALLOBJ)
- ar ruv libblas.a $(ALLOBJ)
- ranlib libblas.a
-
-shared: $(ALLOBJ)
- cc $(CFLAGS) -shared -Wl,-soname,libblas.so.3 -o libblas.so.3.3.0 $(ALLOBJ) -lm -lgfortran -lc
diff --git a/abs/core/lapack/Makefile.lapack b/abs/core/lapack/Makefile.lapack
deleted file mode 100644
index 3443d70..0000000
--- a/abs/core/lapack/Makefile.lapack
+++ /dev/null
@@ -1,411 +0,0 @@
-include ../make.inc
-
-#######################################################################
-# This is the makefile to create a library for LAPACK.
-# The files are organized as follows:
-# ALLAUX -- Auxiliary routines called from all precisions
-#
-# SCLAUX -- Auxiliary routines called from both REAL and COMPLEX.
-# DZLAUX -- Auxiliary routines called from both DOUBLE and COMPLEX*16.
-#
-# DSLASRC -- Double-single mixed precision real routines called from
-# single, single-extra and double precision real LAPACK
-# routines (i.e. from SLASRC, SXLASRC, DLASRC).
-# ZCLASRC -- Double-single mixed precision complex routines called from
-# single, single-extra and double precision complex LAPACK
-# routines (i.e. from CLASRC, CXLASRC, ZLASRC).
-#
-# SLASRC -- Single precision real LAPACK routines
-# SXLASRC -- Single precision real LAPACK routines using extra
-# precision.
-# CLASRC -- Single precision complex LAPACK routines
-# CXLASRC -- Single precision complex LAPACK routines using extra
-# precision.
-# DLASRC -- Double precision real LAPACK routines
-# DXLASRC -- Double precision real LAPACK routines using extra
-# precision.
-# ZLASRC -- Double precision complex LAPACK routines
-# ZXLASRC -- Double precision complex LAPACK routines using extra
-# precision.
-#
-# The library can be set up to include routines for any combination
-# of the four precisions. To create or add to the library, enter make
-# followed by one or more of the precisions desired. Some examples:
-# make single
-# make single complex
-# make single double complex complex16
-# Alternatively, the command
-# make
-# without any arguments creates a library of all four precisions.
-# The library is called
-# lapack.a
-# and is created at the next higher directory level.
-#
-# To remove the object files after the library is created, enter
-# make clean
-# On some systems, you can force the source files to be recompiled by
-# entering (for example)
-# make single FRC=FRC
-#
-# ***Note***
-# The functions lsame, second, dsecnd, slamch, and dlamch may have
-# to be installed before compiling the library. Refer to the
-# installation guide, LAPACK Working Note 41, for instructions.
-#
-#######################################################################
-
-ALLAUX = ilaenv.o ieeeck.o lsamen.o xerbla.o xerbla_array.o iparmq.o \
- ilaprec.o ilatrans.o ilauplo.o iladiag.o chla_transtype.o \
- ../INSTALL/ilaver.o ../INSTALL/lsame.o ../INSTALL/slamch.o
-
-SCLAUX = \
- sbdsdc.o \
- sbdsqr.o sdisna.o slabad.o slacpy.o sladiv.o slae2.o slaebz.o \
- slaed0.o slaed1.o slaed2.o slaed3.o slaed4.o slaed5.o slaed6.o \
- slaed7.o slaed8.o slaed9.o slaeda.o slaev2.o slagtf.o \
- slagts.o slamrg.o slanst.o \
- slapy2.o slapy3.o slarnv.o \
- slarra.o slarrb.o slarrc.o slarrd.o slarre.o slarrf.o slarrj.o \
- slarrk.o slarrr.o slaneg.o \
- slartg.o slaruv.o slas2.o slascl.o \
- slasd0.o slasd1.o slasd2.o slasd3.o slasd4.o slasd5.o slasd6.o \
- slasd7.o slasd8.o slasda.o slasdq.o slasdt.o \
- slaset.o slasq1.o slasq2.o slasq3.o slasq4.o slasq5.o slasq6.o \
- slasr.o slasrt.o slassq.o slasv2.o spttrf.o sstebz.o sstedc.o \
- ssteqr.o ssterf.o slaisnan.o sisnan.o \
- slartgp.o slartgs.o \
- ../INSTALL/second_$(TIMER).o
-
-DZLAUX = \
- dbdsdc.o \
- dbdsqr.o ddisna.o dlabad.o dlacpy.o dladiv.o dlae2.o dlaebz.o \
- dlaed0.o dlaed1.o dlaed2.o dlaed3.o dlaed4.o dlaed5.o dlaed6.o \
- dlaed7.o dlaed8.o dlaed9.o dlaeda.o dlaev2.o dlagtf.o \
- dlagts.o dlamrg.o dlanst.o \
- dlapy2.o dlapy3.o dlarnv.o \
- dlarra.o dlarrb.o dlarrc.o dlarrd.o dlarre.o dlarrf.o dlarrj.o \
- dlarrk.o dlarrr.o dlaneg.o \
- dlartg.o dlaruv.o dlas2.o dlascl.o \
- dlasd0.o dlasd1.o dlasd2.o dlasd3.o dlasd4.o dlasd5.o dlasd6.o \
- dlasd7.o dlasd8.o dlasda.o dlasdq.o dlasdt.o \
- dlaset.o dlasq1.o dlasq2.o dlasq3.o dlasq4.o dlasq5.o dlasq6.o \
- dlasr.o dlasrt.o dlassq.o dlasv2.o dpttrf.o dstebz.o dstedc.o \
- dsteqr.o dsterf.o dlaisnan.o disnan.o \
- dlartgp.o dlartgs.o \
- ../INSTALL/dlamch.o ../INSTALL/dsecnd_$(TIMER).o
-
-SLASRC = \
- sgbbrd.o sgbcon.o sgbequ.o sgbrfs.o sgbsv.o \
- sgbsvx.o sgbtf2.o sgbtrf.o sgbtrs.o sgebak.o sgebal.o sgebd2.o \
- sgebrd.o sgecon.o sgeequ.o sgees.o sgeesx.o sgeev.o sgeevx.o \
- sgegs.o sgegv.o sgehd2.o sgehrd.o sgelq2.o sgelqf.o \
- sgels.o sgelsd.o sgelss.o sgelsx.o sgelsy.o sgeql2.o sgeqlf.o \
- sgeqp3.o sgeqpf.o sgeqr2.o sgeqr2p.o sgeqrf.o sgeqrfp.o sgerfs.o \
- sgerq2.o sgerqf.o sgesc2.o sgesdd.o sgesv.o sgesvd.o sgesvx.o \
- sgetc2.o sgetf2.o sgetri.o \
- sggbak.o sggbal.o sgges.o sggesx.o sggev.o sggevx.o \
- sggglm.o sgghrd.o sgglse.o sggqrf.o \
- sggrqf.o sggsvd.o sggsvp.o sgtcon.o sgtrfs.o sgtsv.o \
- sgtsvx.o sgttrf.o sgttrs.o sgtts2.o shgeqz.o \
- shsein.o shseqr.o slabrd.o slacon.o slacn2.o \
- slaein.o slaexc.o slag2.o slags2.o slagtm.o slagv2.o slahqr.o \
- slahrd.o slahr2.o slaic1.o slaln2.o slals0.o slalsa.o slalsd.o \
- slangb.o slange.o slangt.o slanhs.o slansb.o slansp.o \
- slansy.o slantb.o slantp.o slantr.o slanv2.o \
- slapll.o slapmt.o \
- slaqgb.o slaqge.o slaqp2.o slaqps.o slaqsb.o slaqsp.o slaqsy.o \
- slaqr0.o slaqr1.o slaqr2.o slaqr3.o slaqr4.o slaqr5.o \
- slaqtr.o slar1v.o slar2v.o ilaslr.o ilaslc.o \
- slarf.o slarfb.o slarfg.o slarfgp.o slarft.o slarfx.o slargv.o \
- slarrv.o slartv.o \
- slarz.o slarzb.o slarzt.o slaswp.o slasy2.o slasyf.o \
- slatbs.o slatdf.o slatps.o slatrd.o slatrs.o slatrz.o slatzm.o \
- slauu2.o slauum.o sopgtr.o sopmtr.o sorg2l.o sorg2r.o \
- sorgbr.o sorghr.o sorgl2.o sorglq.o sorgql.o sorgqr.o sorgr2.o \
- sorgrq.o sorgtr.o sorm2l.o sorm2r.o \
- sormbr.o sormhr.o sorml2.o sormlq.o sormql.o sormqr.o sormr2.o \
- sormr3.o sormrq.o sormrz.o sormtr.o spbcon.o spbequ.o spbrfs.o \
- spbstf.o spbsv.o spbsvx.o \
- spbtf2.o spbtrf.o spbtrs.o spocon.o spoequ.o sporfs.o sposv.o \
- sposvx.o spotf2.o spotri.o spstrf.o spstf2.o \
- sppcon.o sppequ.o \
- spprfs.o sppsv.o sppsvx.o spptrf.o spptri.o spptrs.o sptcon.o \
- spteqr.o sptrfs.o sptsv.o sptsvx.o spttrs.o sptts2.o srscl.o \
- ssbev.o ssbevd.o ssbevx.o ssbgst.o ssbgv.o ssbgvd.o ssbgvx.o \
- ssbtrd.o sspcon.o sspev.o sspevd.o sspevx.o sspgst.o \
- sspgv.o sspgvd.o sspgvx.o ssprfs.o sspsv.o sspsvx.o ssptrd.o \
- ssptrf.o ssptri.o ssptrs.o sstegr.o sstein.o sstev.o sstevd.o sstevr.o \
- sstevx.o ssycon.o ssyev.o ssyevd.o ssyevr.o ssyevx.o ssygs2.o \
- ssygst.o ssygv.o ssygvd.o ssygvx.o ssyrfs.o ssysv.o ssysvx.o \
- ssytd2.o ssytf2.o ssytrd.o ssytrf.o ssytri.o ssytri2.o ssytri2x.o \
- ssyswapr.o ssytrs.o ssytrs2.o ssyconv.o stbcon.o \
- stbrfs.o stbtrs.o stgevc.o stgex2.o stgexc.o stgsen.o \
- stgsja.o stgsna.o stgsy2.o stgsyl.o stpcon.o stprfs.o stptri.o \
- stptrs.o \
- strcon.o strevc.o strexc.o strrfs.o strsen.o strsna.o strsyl.o \
- strti2.o strtri.o strtrs.o stzrqf.o stzrzf.o sstemr.o \
- slansf.o spftrf.o spftri.o spftrs.o ssfrk.o stfsm.o stftri.o stfttp.o \
- stfttr.o stpttf.o stpttr.o strttf.o strttp.o \
- sgejsv.o sgesvj.o sgsvj0.o sgsvj1.o \
- sgeequb.o ssyequb.o spoequb.o sgbequb.o \
- sbbcsd.o slapmr.o sorbdb.o sorcsd.o \
- sgeqrt.o sgeqrt2.o sgeqrt3.o sgemqrt.o \
- stpqrt.o stpqrt2.o stpmqrt.o stprfb.o
-
-DSLASRC = spotrs.o sgetrs.o spotrf.o sgetrf.o
-
-ifdef USEXBLAS
-SXLASRC = sgesvxx.o sgerfsx.o sla_gerfsx_extended.o sla_geamv.o \
- sla_gercond.o sla_gerpvgrw.o ssysvxx.o ssyrfsx.o \
- sla_syrfsx_extended.o sla_syamv.o sla_syrcond.o sla_syrpvgrw.o \
- sposvxx.o sporfsx.o sla_porfsx_extended.o sla_porcond.o \
- sla_porpvgrw.o sgbsvxx.o sgbrfsx.o sla_gbrfsx_extended.o \
- sla_gbamv.o sla_gbrcond.o sla_gbrpvgrw.o sla_lin_berr.o slarscl2.o \
- slascl2.o sla_wwaddw.o
-endif
-
-CLASRC = \
- cbdsqr.o cgbbrd.o cgbcon.o cgbequ.o cgbrfs.o cgbsv.o cgbsvx.o \
- cgbtf2.o cgbtrf.o cgbtrs.o cgebak.o cgebal.o cgebd2.o cgebrd.o \
- cgecon.o cgeequ.o cgees.o cgeesx.o cgeev.o cgeevx.o \
- cgegs.o cgegv.o cgehd2.o cgehrd.o cgelq2.o cgelqf.o \
- cgels.o cgelsd.o cgelss.o cgelsx.o cgelsy.o cgeql2.o cgeqlf.o cgeqp3.o \
- cgeqpf.o cgeqr2.o cgeqr2p.o cgeqrf.o cgeqrfp.o cgerfs.o \
- cgerq2.o cgerqf.o cgesc2.o cgesdd.o cgesv.o cgesvd.o \
- cgesvx.o cgetc2.o cgetf2.o cgetri.o \
- cggbak.o cggbal.o cgges.o cggesx.o cggev.o cggevx.o cggglm.o \
- cgghrd.o cgglse.o cggqrf.o cggrqf.o \
- cggsvd.o cggsvp.o \
- cgtcon.o cgtrfs.o cgtsv.o cgtsvx.o cgttrf.o cgttrs.o cgtts2.o chbev.o \
- chbevd.o chbevx.o chbgst.o chbgv.o chbgvd.o chbgvx.o chbtrd.o \
- checon.o cheev.o cheevd.o cheevr.o cheevx.o chegs2.o chegst.o \
- chegv.o chegvd.o chegvx.o cherfs.o chesv.o chesvx.o chetd2.o \
- chetf2.o chetrd.o \
- chetrf.o chetri.o chetri2.o chetri2x.o cheswapr.o \
- chetrs.o chetrs2.o chgeqz.o chpcon.o chpev.o chpevd.o \
- chpevx.o chpgst.o chpgv.o chpgvd.o chpgvx.o chprfs.o chpsv.o \
- chpsvx.o \
- chptrd.o chptrf.o chptri.o chptrs.o chsein.o chseqr.o clabrd.o \
- clacgv.o clacon.o clacn2.o clacp2.o clacpy.o clacrm.o clacrt.o cladiv.o \
- claed0.o claed7.o claed8.o \
- claein.o claesy.o claev2.o clags2.o clagtm.o \
- clahef.o clahqr.o \
- clahrd.o clahr2.o claic1.o clals0.o clalsa.o clalsd.o clangb.o clange.o clangt.o \
- clanhb.o clanhe.o \
- clanhp.o clanhs.o clanht.o clansb.o clansp.o clansy.o clantb.o \
- clantp.o clantr.o clapll.o clapmt.o clarcm.o claqgb.o claqge.o \
- claqhb.o claqhe.o claqhp.o claqp2.o claqps.o claqsb.o \
- claqr0.o claqr1.o claqr2.o claqr3.o claqr4.o claqr5.o \
- claqsp.o claqsy.o clar1v.o clar2v.o ilaclr.o ilaclc.o \
- clarf.o clarfb.o clarfg.o clarft.o clarfgp.o \
- clarfx.o clargv.o clarnv.o clarrv.o clartg.o clartv.o \
- clarz.o clarzb.o clarzt.o clascl.o claset.o clasr.o classq.o \
- claswp.o clasyf.o clatbs.o clatdf.o clatps.o clatrd.o clatrs.o clatrz.o \
- clatzm.o clauu2.o clauum.o cpbcon.o cpbequ.o cpbrfs.o cpbstf.o cpbsv.o \
- cpbsvx.o cpbtf2.o cpbtrf.o cpbtrs.o cpocon.o cpoequ.o cporfs.o \
- cposv.o cposvx.o cpotf2.o cpotri.o cpstrf.o cpstf2.o \
- cppcon.o cppequ.o cpprfs.o cppsv.o cppsvx.o cpptrf.o cpptri.o cpptrs.o \
- cptcon.o cpteqr.o cptrfs.o cptsv.o cptsvx.o cpttrf.o cpttrs.o cptts2.o \
- crot.o cspcon.o cspmv.o cspr.o csprfs.o cspsv.o \
- cspsvx.o csptrf.o csptri.o csptrs.o csrscl.o cstedc.o \
- cstegr.o cstein.o csteqr.o csycon.o csymv.o \
- csyr.o csyrfs.o csysv.o csysvx.o csytf2.o csytrf.o csytri.o csytri2.o csytri2x.o \
- csyswapr.o csytrs.o csytrs2.o csyconv.o ctbcon.o ctbrfs.o ctbtrs.o ctgevc.o ctgex2.o \
- ctgexc.o ctgsen.o ctgsja.o ctgsna.o ctgsy2.o ctgsyl.o ctpcon.o \
- ctprfs.o ctptri.o \
- ctptrs.o ctrcon.o ctrevc.o ctrexc.o ctrrfs.o ctrsen.o ctrsna.o \
- ctrsyl.o ctrti2.o ctrtri.o ctrtrs.o ctzrqf.o ctzrzf.o cung2l.o cung2r.o \
- cungbr.o cunghr.o cungl2.o cunglq.o cungql.o cungqr.o cungr2.o \
- cungrq.o cungtr.o cunm2l.o cunm2r.o cunmbr.o cunmhr.o cunml2.o \
- cunmlq.o cunmql.o cunmqr.o cunmr2.o cunmr3.o cunmrq.o cunmrz.o \
- cunmtr.o cupgtr.o cupmtr.o icmax1.o scsum1.o cstemr.o \
- chfrk.o ctfttp.o clanhf.o cpftrf.o cpftri.o cpftrs.o ctfsm.o ctftri.o \
- ctfttr.o ctpttf.o ctpttr.o ctrttf.o ctrttp.o \
- cgeequb.o cgbequb.o csyequb.o cpoequb.o cheequb.o \
- cbbcsd.o clapmr.o cunbdb.o cuncsd.o \
- cgeqrt.o cgeqrt2.o cgeqrt3.o cgemqrt.o \
- ctpqrt.o ctpqrt2.o ctpmqrt.o ctprfb.o
-
-ifdef USEXBLAS
-CXLASRC = cgesvxx.o cgerfsx.o cla_gerfsx_extended.o cla_geamv.o \
- cla_gercond_c.o cla_gercond_x.o cla_gerpvgrw.o \
- csysvxx.o csyrfsx.o cla_syrfsx_extended.o cla_syamv.o \
- cla_syrcond_c.o cla_syrcond_x.o cla_syrpvgrw.o \
- cposvxx.o cporfsx.o cla_porfsx_extended.o \
- cla_porcond_c.o cla_porcond_x.o cla_porpvgrw.o \
- cgbsvxx.o cgbrfsx.o cla_gbrfsx_extended.o cla_gbamv.o \
- cla_gbrcond_c.o cla_gbrcond_x.o cla_gbrpvgrw.o \
- chesvxx.o cherfsx.o cla_herfsx_extended.o cla_heamv.o \
- cla_hercond_c.o cla_hercond_x.o cla_herpvgrw.o \
- cla_lin_berr.o clarscl2.o clascl2.o cla_wwaddw.o
-endif
-
-ZCLASRC = cpotrs.o cgetrs.o cpotrf.o cgetrf.o
-
-DLASRC = \
- dgbbrd.o dgbcon.o dgbequ.o dgbrfs.o dgbsv.o \
- dgbsvx.o dgbtf2.o dgbtrf.o dgbtrs.o dgebak.o dgebal.o dgebd2.o \
- dgebrd.o dgecon.o dgeequ.o dgees.o dgeesx.o dgeev.o dgeevx.o \
- dgegs.o dgegv.o dgehd2.o dgehrd.o dgelq2.o dgelqf.o \
- dgels.o dgelsd.o dgelss.o dgelsx.o dgelsy.o dgeql2.o dgeqlf.o \
- dgeqp3.o dgeqpf.o dgeqr2.o dgeqr2p.o dgeqrf.o dgeqrfp.o dgerfs.o \
- dgerq2.o dgerqf.o dgesc2.o dgesdd.o dgesv.o dgesvd.o dgesvx.o \
- dgetc2.o dgetf2.o dgetrf.o dgetri.o \
- dgetrs.o dggbak.o dggbal.o dgges.o dggesx.o dggev.o dggevx.o \
- dggglm.o dgghrd.o dgglse.o dggqrf.o \
- dggrqf.o dggsvd.o dggsvp.o dgtcon.o dgtrfs.o dgtsv.o \
- dgtsvx.o dgttrf.o dgttrs.o dgtts2.o dhgeqz.o \
- dhsein.o dhseqr.o dlabrd.o dlacon.o dlacn2.o \
- dlaein.o dlaexc.o dlag2.o dlags2.o dlagtm.o dlagv2.o dlahqr.o \
- dlahrd.o dlahr2.o dlaic1.o dlaln2.o dlals0.o dlalsa.o dlalsd.o \
- dlangb.o dlange.o dlangt.o dlanhs.o dlansb.o dlansp.o \
- dlansy.o dlantb.o dlantp.o dlantr.o dlanv2.o \
- dlapll.o dlapmt.o \
- dlaqgb.o dlaqge.o dlaqp2.o dlaqps.o dlaqsb.o dlaqsp.o dlaqsy.o \
- dlaqr0.o dlaqr1.o dlaqr2.o dlaqr3.o dlaqr4.o dlaqr5.o \
- dlaqtr.o dlar1v.o dlar2v.o iladlr.o iladlc.o \
- dlarf.o dlarfb.o dlarfg.o dlarfgp.o dlarft.o dlarfx.o \
- dlargv.o dlarrv.o dlartv.o \
- dlarz.o dlarzb.o dlarzt.o dlaswp.o dlasy2.o dlasyf.o \
- dlatbs.o dlatdf.o dlatps.o dlatrd.o dlatrs.o dlatrz.o dlatzm.o dlauu2.o \
- dlauum.o dopgtr.o dopmtr.o dorg2l.o dorg2r.o \
- dorgbr.o dorghr.o dorgl2.o dorglq.o dorgql.o dorgqr.o dorgr2.o \
- dorgrq.o dorgtr.o dorm2l.o dorm2r.o \
- dormbr.o dormhr.o dorml2.o dormlq.o dormql.o dormqr.o dormr2.o \
- dormr3.o dormrq.o dormrz.o dormtr.o dpbcon.o dpbequ.o dpbrfs.o \
- dpbstf.o dpbsv.o dpbsvx.o \
- dpbtf2.o dpbtrf.o dpbtrs.o dpocon.o dpoequ.o dporfs.o dposv.o \
- dposvx.o dpotf2.o dpotrf.o dpotri.o dpotrs.o dpstrf.o dpstf2.o \
- dppcon.o dppequ.o \
- dpprfs.o dppsv.o dppsvx.o dpptrf.o dpptri.o dpptrs.o dptcon.o \
- dpteqr.o dptrfs.o dptsv.o dptsvx.o dpttrs.o dptts2.o drscl.o \
- dsbev.o dsbevd.o dsbevx.o dsbgst.o dsbgv.o dsbgvd.o dsbgvx.o \
- dsbtrd.o dspcon.o dspev.o dspevd.o dspevx.o dspgst.o \
- dspgv.o dspgvd.o dspgvx.o dsprfs.o dspsv.o dspsvx.o dsptrd.o \
- dsptrf.o dsptri.o dsptrs.o dstegr.o dstein.o dstev.o dstevd.o dstevr.o \
- dstevx.o dsycon.o dsyev.o dsyevd.o dsyevr.o \
- dsyevx.o dsygs2.o dsygst.o dsygv.o dsygvd.o dsygvx.o dsyrfs.o \
- dsysv.o dsysvx.o \
- dsytd2.o dsytf2.o dsytrd.o dsytrf.o dsytri.o dsytri2.o dsytri2x.o \
- dsyswapr.o dsytrs.o dsytrs2.o dsyconv.o dtbcon.o \
- dtbrfs.o dtbtrs.o dtgevc.o dtgex2.o dtgexc.o dtgsen.o \
- dtgsja.o dtgsna.o dtgsy2.o dtgsyl.o dtpcon.o dtprfs.o dtptri.o \
- dtptrs.o \
- dtrcon.o dtrevc.o dtrexc.o dtrrfs.o dtrsen.o dtrsna.o dtrsyl.o \
- dtrti2.o dtrtri.o dtrtrs.o dtzrqf.o dtzrzf.o dstemr.o \
- dsgesv.o dsposv.o dlag2s.o slag2d.o dlat2s.o \
- dlansf.o dpftrf.o dpftri.o dpftrs.o dsfrk.o dtfsm.o dtftri.o dtfttp.o \
- dtfttr.o dtpttf.o dtpttr.o dtrttf.o dtrttp.o \
- dgejsv.o dgesvj.o dgsvj0.o dgsvj1.o \
- dgeequb.o dsyequb.o dpoequb.o dgbequb.o \
- dbbcsd.o dlapmr.o dorbdb.o dorcsd.o \
- dgeqrt.o dgeqrt2.o dgeqrt3.o dgemqrt.o \
- dtpqrt.o dtpqrt2.o dtpmqrt.o dtprfb.o
-
-ifdef USEXBLAS
-DXLASRC = dgesvxx.o dgerfsx.o dla_gerfsx_extended.o dla_geamv.o \
- dla_gercond.o dla_gerpvgrw.o dsysvxx.o dsyrfsx.o \
- dla_syrfsx_extended.o dla_syamv.o dla_syrcond.o dla_syrpvgrw.o \
- dposvxx.o dporfsx.o dla_porfsx_extended.o dla_porcond.o \
- dla_porpvgrw.o dgbsvxx.o dgbrfsx.o dla_gbrfsx_extended.o \
- dla_gbamv.o dla_gbrcond.o dla_gbrpvgrw.o dla_lin_berr.o dlarscl2.o \
- dlascl2.o dla_wwaddw.o
-endif
-
-ZLASRC = \
- zbdsqr.o zgbbrd.o zgbcon.o zgbequ.o zgbrfs.o zgbsv.o zgbsvx.o \
- zgbtf2.o zgbtrf.o zgbtrs.o zgebak.o zgebal.o zgebd2.o zgebrd.o \
- zgecon.o zgeequ.o zgees.o zgeesx.o zgeev.o zgeevx.o \
- zgegs.o zgegv.o zgehd2.o zgehrd.o zgelq2.o zgelqf.o \
- zgels.o zgelsd.o zgelss.o zgelsx.o zgelsy.o zgeql2.o zgeqlf.o zgeqp3.o \
- zgeqpf.o zgeqr2.o zgeqr2p.o zgeqrf.o zgeqrfp.o zgerfs.o zgerq2.o zgerqf.o \
- zgesc2.o zgesdd.o zgesv.o zgesvd.o zgesvx.o zgetc2.o zgetf2.o zgetrf.o \
- zgetri.o zgetrs.o \
- zggbak.o zggbal.o zgges.o zggesx.o zggev.o zggevx.o zggglm.o \
- zgghrd.o zgglse.o zggqrf.o zggrqf.o \
- zggsvd.o zggsvp.o \
- zgtcon.o zgtrfs.o zgtsv.o zgtsvx.o zgttrf.o zgttrs.o zgtts2.o zhbev.o \
- zhbevd.o zhbevx.o zhbgst.o zhbgv.o zhbgvd.o zhbgvx.o zhbtrd.o \
- zhecon.o zheev.o zheevd.o zheevr.o zheevx.o zhegs2.o zhegst.o \
- zhegv.o zhegvd.o zhegvx.o zherfs.o zhesv.o zhesvx.o zhetd2.o \
- zhetf2.o zhetrd.o \
- zhetrf.o zhetri.o zhetri2.o zhetri2x.o zheswapr.o \
- zhetrs.o zhetrs2.o zhgeqz.o zhpcon.o zhpev.o zhpevd.o \
- zhpevx.o zhpgst.o zhpgv.o zhpgvd.o zhpgvx.o zhprfs.o zhpsv.o \
- zhpsvx.o \
- zhptrd.o zhptrf.o zhptri.o zhptrs.o zhsein.o zhseqr.o zlabrd.o \
- zlacgv.o zlacon.o zlacn2.o zlacp2.o zlacpy.o zlacrm.o zlacrt.o zladiv.o \
- zlaed0.o zlaed7.o zlaed8.o \
- zlaein.o zlaesy.o zlaev2.o zlags2.o zlagtm.o \
- zlahef.o zlahqr.o \
- zlahrd.o zlahr2.o zlaic1.o zlals0.o zlalsa.o zlalsd.o zlangb.o zlange.o \
- zlangt.o zlanhb.o \
- zlanhe.o \
- zlanhp.o zlanhs.o zlanht.o zlansb.o zlansp.o zlansy.o zlantb.o \
- zlantp.o zlantr.o zlapll.o zlapmt.o zlaqgb.o zlaqge.o \
- zlaqhb.o zlaqhe.o zlaqhp.o zlaqp2.o zlaqps.o zlaqsb.o \
- zlaqr0.o zlaqr1.o zlaqr2.o zlaqr3.o zlaqr4.o zlaqr5.o \
- zlaqsp.o zlaqsy.o zlar1v.o zlar2v.o ilazlr.o ilazlc.o \
- zlarcm.o zlarf.o zlarfb.o \
- zlarfg.o zlarft.o zlarfgp.o \
- zlarfx.o zlargv.o zlarnv.o zlarrv.o zlartg.o zlartv.o \
- zlarz.o zlarzb.o zlarzt.o zlascl.o zlaset.o zlasr.o \
- zlassq.o zlaswp.o zlasyf.o \
- zlatbs.o zlatdf.o zlatps.o zlatrd.o zlatrs.o zlatrz.o zlatzm.o zlauu2.o \
- zlauum.o zpbcon.o zpbequ.o zpbrfs.o zpbstf.o zpbsv.o \
- zpbsvx.o zpbtf2.o zpbtrf.o zpbtrs.o zpocon.o zpoequ.o zporfs.o \
- zposv.o zposvx.o zpotf2.o zpotrf.o zpotri.o zpotrs.o zpstrf.o zpstf2.o \
- zppcon.o zppequ.o zpprfs.o zppsv.o zppsvx.o zpptrf.o zpptri.o zpptrs.o \
- zptcon.o zpteqr.o zptrfs.o zptsv.o zptsvx.o zpttrf.o zpttrs.o zptts2.o \
- zrot.o zspcon.o zspmv.o zspr.o zsprfs.o zspsv.o \
- zspsvx.o zsptrf.o zsptri.o zsptrs.o zdrscl.o zstedc.o \
- zstegr.o zstein.o zsteqr.o zsycon.o zsymv.o \
- zsyr.o zsyrfs.o zsysv.o zsysvx.o zsytf2.o zsytrf.o zsytri.o zsytri2.o zsytri2x.o \
- zsyswapr.o zsytrs.o zsytrs2.o zsyconv.o ztbcon.o ztbrfs.o ztbtrs.o ztgevc.o ztgex2.o \
- ztgexc.o ztgsen.o ztgsja.o ztgsna.o ztgsy2.o ztgsyl.o ztpcon.o \
- ztprfs.o ztptri.o \
- ztptrs.o ztrcon.o ztrevc.o ztrexc.o ztrrfs.o ztrsen.o ztrsna.o \
- ztrsyl.o ztrti2.o ztrtri.o ztrtrs.o ztzrqf.o ztzrzf.o zung2l.o \
- zung2r.o zungbr.o zunghr.o zungl2.o zunglq.o zungql.o zungqr.o zungr2.o \
- zungrq.o zungtr.o zunm2l.o zunm2r.o zunmbr.o zunmhr.o zunml2.o \
- zunmlq.o zunmql.o zunmqr.o zunmr2.o zunmr3.o zunmrq.o zunmrz.o \
- zunmtr.o zupgtr.o \
- zupmtr.o izmax1.o dzsum1.o zstemr.o \
- zcgesv.o zcposv.o zlag2c.o clag2z.o zlat2c.o \
- zhfrk.o ztfttp.o zlanhf.o zpftrf.o zpftri.o zpftrs.o ztfsm.o ztftri.o \
- ztfttr.o ztpttf.o ztpttr.o ztrttf.o ztrttp.o \
- zgeequb.o zgbequb.o zsyequb.o zpoequb.o zheequb.o \
- zbbcsd.o zlapmr.o zunbdb.o zuncsd.o \
- zgeqrt.o zgeqrt2.o zgeqrt3.o zgemqrt.o \
- ztpqrt.o ztpqrt2.o ztpmqrt.o ztprfb.o
-
-ifdef USEXBLAS
-ZXLASRC = zgesvxx.o zgerfsx.o zla_gerfsx_extended.o zla_geamv.o \
- zla_gercond_c.o zla_gercond_x.o zla_gerpvgrw.o zsysvxx.o zsyrfsx.o \
- zla_syrfsx_extended.o zla_syamv.o zla_syrcond_c.o zla_syrcond_x.o \
- zla_syrpvgrw.o zposvxx.o zporfsx.o zla_porfsx_extended.o \
- zla_porcond_c.o zla_porcond_x.o zla_porpvgrw.o zgbsvxx.o zgbrfsx.o \
- zla_gbrfsx_extended.o zla_gbamv.o zla_gbrcond_c.o zla_gbrcond_x.o \
- zla_gbrpvgrw.o zhesvxx.o zherfsx.o zla_herfsx_extended.o \
- zla_heamv.o zla_hercond_c.o zla_hercond_x.o zla_herpvgrw.o \
- zla_lin_berr.o zlarscl2.o zlascl2.o zla_wwaddw.o
-endif
-
-all: ../$(LAPACKLIB)
-
-ifdef USEXBLAS
-ALLXOBJ=$(SXLASRC) $(DXLASRC) $(CXLASRC) $(ZXLASRC) $(ALLXAUX)
-endif
-
-ALLOBJ=$(SLASRC) $(DLASRC) $(DSLASRC) $(CLASRC) $(ZLASRC) $(ZCLASRC) \
- $(SCLAUX) $(DZLAUX) $(ALLAUX)
-
-clean:
- rm -f *.o liblapack*
-
-static: $(ALLOBJ) $(ALLXOBJ)
- ar ruv liblapack.a $(ALLOBJ)
- ranlib liblapack.a
-
-shared: $(ALLOBJ) $(ALLXOBJ)
- cc $(CFLAGS) -shared -Wl,-soname,liblapack.so.3 -o liblapack.so.3.4.0 $(ALLOBJ) -L.. -lblas -lm -lgfortran -lc
diff --git a/abs/core/lapack/PKGBUILD b/abs/core/lapack/PKGBUILD
deleted file mode 100644
index cef5ff2..0000000
--- a/abs/core/lapack/PKGBUILD
+++ /dev/null
@@ -1,54 +0,0 @@
-# $Id: PKGBUILD 147948 2012-01-28 21:21:33Z ronald $
-# Maintainer: Ronald van Haren <ronald.archlinux.org>
-# Contributor: Jan de Groot <jgc@archlinux.org>
-# Contributor: damir <damir@archlinux.org>
-# Contributor: Jason Taylor <jftaylor21@gmail.com>
-
-pkgname=lapack
-pkgver=3.4.0
-pkgrel=1
-url="http://www.netlib.org/lapack"
-pkgdesc="Linear Algebra PACKage"
-makedepends=('gcc-fortran')
-depends=("blas=${pkgver}")
-arch=('i686' 'x86_64')
-license=("custom")
-source=(http://www.netlib.org/${pkgname}/${pkgname}-${pkgver}.tgz
- Makefile.lapack)
-sha1sums=('910109a931524f8dcc2734ce23fe927b00ca199f'
- '2bedfe0d778b401b24d1fbf0eb1dc576d374be28')
-
-
-build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- cp -f INSTALL/make.inc.gfortran make.inc
- cp -f "${srcdir}/Makefile.lapack" SRC/Makefile
-
- export FC=gfortran
-
- pushd INSTALL
- make clean
- make NOOPT="${CFLAGS/-O?/-O0} -fPIC" OPTS="${CFLAGS} -fPIC"
- popd
- # make sure no files with '_', *vxx.o *vfx.o and *2.O as defined in *ASRC
- # are in OBJS
- pushd SRC
- make clean
-
- make FFLAGS="${CFLAGS} -fPIC" CFLAGS="${CFLAGS} -fPIC" shared
- cp liblapack.so.${pkgver} "${srcdir}/${pkgname}-${pkgver}/"
- popd
-}
-
-package() {
- install -m755 -d "${pkgdir}/usr/lib"
- install -m755 "${srcdir}/${pkgname}-${pkgver}/liblapack.so.${pkgver}" \
- "${pkgdir}/usr/lib/"
- ln -sf liblapack.so.${pkgver} "${pkgdir}/usr/lib/liblapack.so"
- ln -sf liblapack.so.${pkgver} "${pkgdir}/usr/lib/liblapack.so.3"
-
- install -m755 -d "${pkgdir}/usr/share/licenses/lapack"
- install -m644 "${srcdir}/${pkgname}-${pkgver}/LICENSE" \
- "${pkgdir}/usr/share/licenses/lapack/"
-}
-
diff --git a/abs/core/lapack/lapack-3.1.1-make.inc.patch b/abs/core/lapack/lapack-3.1.1-make.inc.patch
deleted file mode 100644
index c807ccb..0000000
--- a/abs/core/lapack/lapack-3.1.1-make.inc.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- lapack-3.1.1/INSTALL/make.inc.gfortran.BAD 2007-05-25 15:34:55.000000000 -0500
-+++ lapack-3.1.1/INSTALL/make.inc.gfortran 2007-05-25 15:35:51.000000000 -0500
-@@ -8,7 +8,7 @@ SHELL = /bin/sh
- #
- # The machine (platform) identifier to append to the library names
- #
--PLAT = _LINUX
-+PLAT =
- #
- # Modify the FORTRAN and OPTS definitions to refer to the
- # compiler and desired compiler options for your machine. NOOPT
-@@ -17,9 +17,9 @@ PLAT = _LINUX
- # desired load options for your machine.
- #
- FORTRAN = gfortran
--OPTS = -O2
-+#OPTS = -O2
- DRVOPTS = $(OPTS)
--NOOPT = -O0
-+NOOPT =
- LOADER = gfortran
- LOADOPTS =
- #
diff --git a/abs/core/ldns/PKGBUILD b/abs/core/ldns/PKGBUILD
index 7ed8319..7604cc2 100644
--- a/abs/core/ldns/PKGBUILD
+++ b/abs/core/ldns/PKGBUILD
@@ -4,23 +4,23 @@
# Contributor: jiribb <jiribb@gmail.com>
pkgname=ldns
-pkgver=1.6.17
-pkgrel=3
+pkgver=1.7.0
+pkgrel=4
pkgdesc='Fast DNS library supporting recent RFCs'
-url='http://www.nlnetlabs.nl/projects/ldns/'
+url='https://www.nlnetlabs.nl/projects/ldns/'
license=('custom:BSD')
-arch=('i686' 'x86_64')
+arch=('x86_64')
depends=('openssl' 'dnssec-anchors')
optdepends=('libpcap: ldns-dpa tool')
makedepends=('libpcap')
-source=("http://www.nlnetlabs.nl/downloads/${pkgname}/${pkgname}-${pkgver}.tar.gz"
- 'perl-recent.patch')
-sha1sums=('4218897b3c002aadfc7280b3f40cda829e05c9a4'
- '026b276a360d29b3bd3690293a27178262a0b3dc')
+source=("https://www.nlnetlabs.nl/downloads/${pkgname}/${pkgname}-${pkgver}.tar.gz"
+ 'pc.patch')
+sha256sums=('c19f5b1b4fb374cfe34f4845ea11b1e0551ddc67803bd6ddd5d2a20f0997a6cc'
+ '3586302eed28269c7fa6013785c0a017689aa9d4ff24ff8d7735fa23a3732cb7')
prepare() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -p1 -i ../perl-recent.patch
+ patch -p1 -i ../pc.patch
}
build() {
diff --git a/abs/core/ldns/pc.patch b/abs/core/ldns/pc.patch
new file mode 100644
index 0000000..a37b1c3
--- /dev/null
+++ b/abs/core/ldns/pc.patch
@@ -0,0 +1,60 @@
+From 2a38f26ed5695c3ad737de082b56a296240dd51a Mon Sep 17 00:00:00 2001
+From: Willem Toorop <willem@nlnetlabs.nl>
+Date: Thu, 19 Jan 2017 09:41:51 +0100
+Subject: bugfix #1209: make install ldns.pc file
+
+---
+ Changelog | 4 ++++
+ Makefile.in | 16 ++++++++++++++--
+ 2 files changed, 18 insertions(+), 2 deletions(-)
+
+diff --git a/Changelog b/Changelog
+index 0bd3658..efda95e 100644
+--- a/Changelog
++++ b/Changelog
+@@ -1,3 +1,7 @@
++1.7.1 ????-??-??
++ * bugfix #1209: make install ldns.pc file
++ Thanks Oleksandr Natalenko
++
+ 1.7.0 2016-12-20
+ * Fix lookup of relative names in ldns_resolver_search.
+ * bugfix #548: Double free for answers > 4096 in ldns_resolver_send_pkt
+diff --git a/Makefile.in b/Makefile.in
+index 04f683b..853777e 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -308,9 +308,9 @@ clean-p5-dns-ldns: $(p5_dns_ldns_dir)/Makefile
+ test-p5-dns-ldns: $(p5_dns_ldns_dir)/Makefile
+ cd $(p5_dns_ldns_dir); $(MAKE) test
+
+-install: install-h install-lib @INSTALL_CONFIG@ install-manpages $(pyldns_inst) $(pyldnsx_inst) @INSTALL_P5_DNS_LDNS@ @INSTALL_DRILL@ @INSTALL_EXAMPLES@
++install: install-h install-lib install-pc @INSTALL_CONFIG@ install-manpages $(pyldns_inst) $(pyldnsx_inst) @INSTALL_P5_DNS_LDNS@ @INSTALL_DRILL@ @INSTALL_EXAMPLES@
+
+-uninstall: uninstall-manpages @UNINSTALL_CONFIG@ uninstall-h uninstall-lib $(pyldns_uninst) $(pyldnsx_uninst) @UNINSTALL_P5_DNS_LDNS@ @UNINSTALL_DRILL@ @UNINSTALL_EXAMPLES@
++uninstall: uninstall-manpages @UNINSTALL_CONFIG@ uninstall-h uninstall-lib uninstall-pc $(pyldns_uninst) $(pyldnsx_uninst) @UNINSTALL_P5_DNS_LDNS@ @UNINSTALL_DRILL@ @UNINSTALL_EXAMPLES@
+
+ destclean: uninstall
+
+@@ -355,6 +355,18 @@ uninstall-h:
+ test ! -d $(DESTDIR)$(includedir)/ldns || rmdir -p $(DESTDIR)$(includedir)/ldns || echo "ok, dir already gone"
+ exit 0
+
++packaging/libldns.pc: packaging/libldns.pc.in
++ ./config.status $@
++
++install-pc: packaging/libldns.pc
++ $(INSTALL) -m 644 packaging/libldns.pc $(DESTDIR)$(libdir)/pkgconfig/ldns.pc
++
++uninstall-pc:
++ $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/pkgconfig/ldns.pc
++ test ! -d $(DESTDIR)$(libdir)/pkgconfig || rmdir -p $(DESTDIR)$(libdir)/pkgconfig || echo "ok, dir already gone"
++ test ! -d $(DESTDIR)$(libdir) || rmdir -p $(DESTDIR)$(libdir) || echo "ok, dir already gone"
++
++
+ install-lib: lib
+ $(INSTALL) -m 755 -d $(DESTDIR)$(libdir)
+ $(LIBTOOL) --mode=install cp libldns.la $(DESTDIR)$(libdir)
+--
+cgit v0.11.2
+
diff --git a/abs/core/ldns/perl-recent.patch b/abs/core/ldns/perl-recent.patch
deleted file mode 100644
index ddf711c..0000000
--- a/abs/core/ldns/perl-recent.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur old/doc/doxyparse.pl new/doc/doxyparse.pl
---- old/doc/doxyparse.pl 2014-01-11 06:04:41.000000000 +0900
-+++ new/doc/doxyparse.pl 2015-08-08 22:29:34.216889652 +0900
-@@ -273,7 +273,7 @@
-
- print MAN $MAN_MIDDLE;
-
-- if (defined(@$also)) {
-+ if (@$also) {
- print MAN "\n.SH SEE ALSO\n\\fI";
- print MAN join "\\fR, \\fI", @$also;
- print MAN "\\fR.\nAnd ";
diff --git a/abs/core/less/PKGBUILD b/abs/core/less/PKGBUILD
index c833986..a3a080a 100644
--- a/abs/core/less/PKGBUILD
+++ b/abs/core/less/PKGBUILD
@@ -5,10 +5,10 @@
pkgname=less
pkgver=487
-pkgrel=1
+pkgrel=2
pkgdesc='A terminal based program for viewing text files'
license=('GPL3')
-arch=('i686' 'x86_64')
+arch=('x86_64')
url='http://www.greenwoodsoftware.com/less'
groups=('base')
depends=('glibc' 'ncurses' 'pcre')
diff --git a/abs/core/libassuan/PKGBUILD b/abs/core/libassuan/PKGBUILD
index 12e79ce..5bfce59 100644
--- a/abs/core/libassuan/PKGBUILD
+++ b/abs/core/libassuan/PKGBUILD
@@ -1,31 +1,32 @@
-# $Id: PKGBUILD 146745 2012-01-16 22:52:52Z dreisner $
-# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
+# $Id$
+# Contributor: Tobias Powalowski <tpowa@archlinux.org>
+# Maintainer: Gaetan Bisson <bisson@archlinux.org>
pkgname=libassuan
-pkgver=2.0.3
+pkgver=2.5.1
pkgrel=1
-pkgdesc="A IPC library used by some GnuPG related software"
-arch=('i686' 'x86_64')
+pkgdesc='IPC library used by some GnuPG related software'
+url='http://www.gnupg.org/related_software/libassuan/'
+arch=('x86_64')
license=('GPL')
-url="http://www.gnupg.org/related_software/libassuan"
depends=('libgpg-error')
-options=('!libtool')
-source=(ftp://ftp.gnupg.org/gcrypt/$pkgname/$pkgname-$pkgver.tar.bz2)
-install=libassuan.install
+validpgpkeys=('D8692123C4065DEA5E0F3AB5249B39D24F25E3B6') # Werner Koch
+source=("https://gnupg.org/ftp/gcrypt/${pkgname}/${pkgname}-${pkgver}.tar.bz2"{,.sig})
+sha256sums=('47f96c37b4f2aac289f0bc1bacfa8bd8b4b209a488d3d15e2229cb6cc9b26449'
+ 'SKIP')
build() {
- cd ${srcdir}/${pkgname}-${pkgver}
- ./configure --prefix=/usr
- make
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure --prefix=/usr
+ make
}
check() {
- cd ${srcdir}/${pkgname}-${pkgver}
- make check
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make check
}
package() {
- cd ${srcdir}/${pkgname}-${pkgver}
- make DESTDIR=${pkgdir} install
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
-md5sums=('179d1918325fdb928c7bd90b8a514fc7')
diff --git a/abs/core/libassuan/libassuan.install b/abs/core/libassuan/libassuan.install
deleted file mode 100644
index 07e2672..0000000
--- a/abs/core/libassuan/libassuan.install
+++ /dev/null
@@ -1,20 +0,0 @@
-infodir=usr/share/info
-filelist=(assuan.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/abs/core/libcaca/PKGBUILD b/abs/core/libcaca/PKGBUILD
index 40bc0ab..4d436eb 100644
--- a/abs/core/libcaca/PKGBUILD
+++ b/abs/core/libcaca/PKGBUILD
@@ -1,27 +1,28 @@
-# $Id: PKGBUILD 71245 2010-03-05 16:17:11Z jgc $
+# $Id$
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=libcaca
-pkgver=0.99.beta17
-pkgrel=2
+pkgver=0.99.beta19
+pkgrel=1
pkgdesc="Color AsCii Art library"
-arch=('i686' 'x86_64')
-license=('LGPL')
-url="http://libcaca.zoy.org/"
-depends=('imlib2' 'ncurses>=5.7')
-options=(!libtool !emptydirs)
+arch=('x86_64')
+license=('custom:WTFPL')
+url="http://caca.zoy.org/wiki/libcaca"
+depends=('imlib2' 'ncurses')
+options=(!emptydirs)
source=(http://libcaca.zoy.org/files/libcaca/${pkgname}-${pkgver}.tar.gz)
-md5sums=('790d6e26b7950e15909fdbeb23a7ea87')
+md5sums=('a3d4441cdef488099f4a92f4c6c1da00')
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
+ cd $pkgname-$pkgver
./configure --prefix=/usr --mandir=/usr/share/man \
- --enable-shared --disable-doc --disable-java \
- --disable-cxx --disable-gl --disable-csharp || return 1
- make || return 1
+ --enable-shared --disable-doc --disable-java \
+ --disable-cxx --disable-gl --disable-csharp --disable-static
+ make
}
package() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- make DESTDIR="${pkgdir}" install || return 1
+ cd $pkgname-$pkgver
+ make DESTDIR="${pkgdir}" install
+ install -Dm644 COPYING "${pkgdir}/usr/share/licenses/libcaca/COPYING"
}
diff --git a/abs/core/libcec/PKGBUILD b/abs/core/libcec/PKGBUILD
index fc0c6c4..23c0a3a 100644
--- a/abs/core/libcec/PKGBUILD
+++ b/abs/core/libcec/PKGBUILD
@@ -4,16 +4,16 @@
# vim: ft=sh:
pkgname=libcec
-pkgver=3.1.0
-pkgrel=2
+pkgver=4.0.2
+pkgrel=1
pkgdesc="Pulse-Eight's libcec for the Pulse-Eight USB-CEC adapter"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://libcec.pulse-eight.com/"
license=('GPL')
makedepends=('cmake')
depends=('udev' 'lockdev' 'p8-platform' 'libxrandr')
source=("$pkgname-$pkgver.tar.gz::https://github.com/Pulse-Eight/$pkgname/archive/$pkgname-$pkgver.tar.gz")
-sha256sums=('09109d21a1b03f42c9e341d12600f2e4c41038d640269fa75408e2d36126f921')
+sha256sums=('b8b8dd31f3ebdd5472f03ab7d401600ea0d959b1288b9ca24bf457ef60e2ba27')
build() {
cd "$pkgname-$pkgname-$pkgver"
diff --git a/abs/core/libdrm/PKGBUILD b/abs/core/libdrm/PKGBUILD
index 964dc57..59dd0ab 100644
--- a/abs/core/libdrm/PKGBUILD
+++ b/abs/core/libdrm/PKGBUILD
@@ -2,20 +2,24 @@
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=libdrm
-pkgver=2.4.81
-pkgrel=1
+pkgver=2.4.90
+pkgrel=3
pkgdesc="Userspace interface to kernel DRM services"
-arch=(i686 x86_64)
+url="https://dri.freedesktop.org/"
+arch=(x86_64)
license=('custom')
depends=('libpciaccess')
-makedepends=('valgrind' 'xorg-util-macros' 'libxslt' 'docbook-xsl')
+makedepends=('valgrind' 'libxslt' 'docbook-xsl' 'meson')
checkdepends=('cairo')
replaces=('libdrm-new' 'libdrm-nouveau')
-url="http://dri.freedesktop.org/"
source=(https://dri.freedesktop.org/$pkgname/$pkgname-$pkgver.tar.bz2{,.sig}
+ no-drmdevice-test.diff
+ fix_mistake_in_initial_hole_size_calculation.diff
COPYING)
-sha512sums=('5f7a1524acad59890d3f890bed90a660a424e18a88d587ca356223bde4a7446d1c540f97ec11cb10d2e7ed1b4ae86127957634354a1be6d04199295ab24782e5'
+sha512sums=('3d32d60c44ffdcb58667d0926e6af8d375332add1f243d8b2d37567aeef4e4b26d786294aeecf46c3dea94fc002fb73756567c457300703acfc21e32ffbd458c'
'SKIP'
+ 'f1dd5d8c2270c092ccb8e4f92a0da9ab27706dfa22dcedd3fb2414b968ced9333c8bf62baf0219b822e43dce0d804d1dd5cc27d09b0afe8c01967c1784d4a4bb'
+ '679ba7ef4f29cc4d511d5fbb7b505d8eade4cd3fc16eceaed2d1aa47947ebf31bac113ead5f2a1db8f5626ba290e9e1ffeab28c2abb924d0c85efe816c1201f8'
'b0ca349b882a4326b19f81f22804fabdb6fb7aef31cdc7b16b0a7ae191bfbb50c7daddb2fc4e6c33f1136af06d060a273de36f6f3412ea326f16fa4309fda660')
validpgpkeys=('B97BD6A80CAC4981091AE547FE558C72A67013C3') # Maarten Lankhorst <maarten.lankhorst@canonical.com>
validpgpkeys+=('215DEE688925CCB965BE5DA97C03D7797B6E1AE2') # Damien Lespiau <damien.lespiau@intel.com>
@@ -28,21 +32,31 @@ validpgpkeys+=('3BB639E56F861FA2E86505690FDD682D974CA72A') # Matt Turner <mattst
validpgpkeys+=('C20F5C4490D7D64B4C9A09998CD1DF552975297B') # Robert Bragg <robert@sixbynine.org>
validpgpkeys+=('CD47C5341A375F33BEF7BAFAFDD15D5ACEF0F2B1') # Marek Olšák <maraeo@gmail.com>
validpgpkeys+=('A66D805F7C9329B4C5D82767CCC4F07FAC641EFF') # Daniel Stone <daniels@collabora.com>
+validpgpkeys+=('CFD0E654BCBE5DD2D030D222CFCC297C6D0A120B') # Lucas Stach <l.stach@pengutronix.de>
-build() {
+prepare() {
cd $pkgname-$pkgver
- ./configure --prefix=/usr --enable-udev
- make
+
+ # Fix version
+ sed -i 's/2\.4\.89/2.4.90/' meson.build
+
+ # Fails in a container; autotools skipped this one already
+ patch -Np1 -i ../no-drmdevice-test.diff
+ # FS#57576; fix amdgpu cards
+ patch -Np1 -i ../fix_mistake_in_initial_hole_size_calculation.diff
+}
+
+build() {
+ arch-meson $pkgname-$pkgver build -Dudev=true
+ ninja -C build
}
check() {
- cd $pkgname-$pkgver
- make -k check
+ cd build
+ meson test
}
package() {
- cd $pkgname-$pkgver
- make DESTDIR="$pkgdir" install
- install -m755 -d "$pkgdir/usr/share/licenses/$pkgname"
- install -m644 ../COPYING "$pkgdir/usr/share/licenses/$pkgname/"
+ DESTDIR="$pkgdir" ninja -C build install
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 COPYING
}
diff --git a/abs/core/libdrm/fix_mistake_in_initial_hole_size_calculation.diff b/abs/core/libdrm/fix_mistake_in_initial_hole_size_calculation.diff
new file mode 100644
index 0000000..8998e45
--- /dev/null
+++ b/abs/core/libdrm/fix_mistake_in_initial_hole_size_calculation.diff
@@ -0,0 +1,39 @@
+From 33a2851ab9bc3cd8a68bedf4cf0fdc549b0f3596 Mon Sep 17 00:00:00 2001
+From: Andrey Grodzovsky <andrey.grodzovsky@amd.com>
+Date: Mon, 19 Feb 2018 02:18:36 -0500
+Subject: amdgpu: Fix mistake in initial hole size calculation.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Andrey Grodzovsky <andrey.grodzovsky@amd.com>
+Acked-by: Christian König <christian.koenig@amd.com>
+---
+ amdgpu/amdgpu_vamgr.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/amdgpu/amdgpu_vamgr.c b/amdgpu/amdgpu_vamgr.c
+index 722067f..5840042 100644
+--- a/amdgpu/amdgpu_vamgr.c
++++ b/amdgpu/amdgpu_vamgr.c
+@@ -57,7 +57,7 @@ drm_private void amdgpu_vamgr_init(struct amdgpu_bo_va_mgr *mgr, uint64_t start,
+ pthread_mutex_init(&mgr->bo_va_mutex, NULL);
+ pthread_mutex_lock(&mgr->bo_va_mutex);
+ n = calloc(1, sizeof(struct amdgpu_bo_va_hole));
+- n->size = mgr->va_max;
++ n->size = mgr->va_max - start;
+ n->offset = start;
+ list_add(&n->list, &mgr->va_holes);
+ pthread_mutex_unlock(&mgr->bo_va_mutex);
+@@ -80,6 +80,7 @@ amdgpu_vamgr_find_va(struct amdgpu_bo_va_mgr *mgr, uint64_t size,
+ struct amdgpu_bo_va_hole *hole, *n;
+ uint64_t offset = 0, waste = 0;
+
++
+ alignment = MAX2(alignment, mgr->va_alignment);
+ size = ALIGN(size, mgr->va_alignment);
+
+--
+cgit v1.1
+
+
diff --git a/abs/core/libdrm/no-drmdevice-test.diff b/abs/core/libdrm/no-drmdevice-test.diff
new file mode 100644
index 0000000..f60df04
--- /dev/null
+++ b/abs/core/libdrm/no-drmdevice-test.diff
@@ -0,0 +1,9 @@
+diff --git i/tests/meson.build w/tests/meson.build
+index fdf950b7..a6a2f1f1 100644
+--- i/tests/meson.build
++++ w/tests/meson.build
+@@ -83,4 +83,3 @@ drmdevice = executable(
+ test('random', random, timeout : 240)
+ test('hash', hash)
+ test('drmsl', drmsl)
+-test('drmdevice', drmdevice)
diff --git a/abs/core/libedit/PKGBUILD b/abs/core/libedit/PKGBUILD
index 3ea5bbf..40df793 100644
--- a/abs/core/libedit/PKGBUILD
+++ b/abs/core/libedit/PKGBUILD
@@ -1,30 +1,31 @@
-# $Id: PKGBUILD 153493 2012-03-15 00:07:12Z bisson $
+# $Id$
# Maintainer: Gaetan Bisson <bisson@archlinux.org>
# Maintainer: Vesa Kaihlavirta <vesa@archlinux.org>
# Contributor: Roman Cheplyaka <roma@ro-che.info>
pkgname=libedit
-pkgver=20120311_3.0
+_pkgver=20170329-3.1
+pkgver=${_pkgver/-/_}
pkgrel=1
pkgdesc='Command line editor library providing generic line editing, history, and tokenization functions'
-url='http://www.thrysoee.dk/editline/'
-arch=('i686' 'x86_64')
+url='http://thrysoee.dk/editline/'
+arch=('x86_64')
license=('BSD')
depends=('ncurses')
-options=('!libtool')
-source=("http://www.thrysoee.dk/editline/libedit-${pkgver/_/-}.tar.gz")
-sha1sums=('2a4be10c33af5e3b09c1d3c8829b02fe5b41796b')
+source=("http://thrysoee.dk/editline/libedit-${_pkgver}.tar.gz")
+sha256sums=('91f2d90fbd2a048ff6dad7131d9a39e690fd8a8fd982a353f1333dd4017dd4be')
build() {
- cd "${srcdir}/${pkgname}-${pkgver/_/-}"
- ./configure --prefix=/usr --enable-widec --enable-static=no
+ cd "${srcdir}/${pkgname}-${_pkgver}"
+ ./configure --prefix=/usr --enable-widec
make
}
package() {
- cd "${srcdir}/${pkgname}-${pkgver/_/-}"
+ cd "${srcdir}/${pkgname}-${_pkgver}"
make prefix="${pkgdir}"/usr install
+ rm "${pkgdir}"/usr/share/man/man3/history.3 # conflicts with readline
cp "${pkgdir}"/usr/share/man/man3/editline.3 "${pkgdir}"/usr/share/man/man3/el.3
install -Dm644 COPYING "${pkgdir}"/usr/share/licenses/libedit/LICENSE
}
diff --git a/abs/core/libevent/PKGBUILD b/abs/core/libevent/PKGBUILD
index a697da6..c7251c5 100644
--- a/abs/core/libevent/PKGBUILD
+++ b/abs/core/libevent/PKGBUILD
@@ -1,34 +1,36 @@
-# $Id: PKGBUILD 159369 2012-05-22 19:07:09Z tomegun $
+# $Id$
# Maintainer: Tom Gundersen <teg@jklm.no>
# Contributor: Judd <jvinet@zeroflux.org>
pkgname=libevent
-pkgver=2.0.19
+pkgver=2.1.8
pkgrel=1
pkgdesc="An event notification library"
-arch=('i686' 'x86_64')
-url="http://www.monkey.org/~provos/libevent/"
+arch=('x86_64')
+url="http://libevent.org/"
license=('BSD')
depends=('openssl')
optdepends=('python2: to use event_rpcgen.py')
-options=('!libtool')
-source=(https://github.com/downloads/${pkgname}/${pkgname}/${pkgname}-$pkgver-stable.tar.gz{,.asc})
+source=(https://github.com/libevent/libevent/releases/download/release-$pkgver-stable/$pkgname-$pkgver-stable.tar.gz{,.asc})
+sha256sums=('965cc5a8bb46ce4199a47e9b2c9e1cae3b137e8356ffdad6d94d3b9069b71dc2'
+ 'SKIP')
+validpgpkeys=('B35BF85BF19489D04E28C33C21194EBB165733EA'
+ '9E3AC83A27974B84D1B3401DB86086848EF8686D')
build() {
- cd "${srcdir}/${pkgname}-${pkgver}-stable"
- sed -i 's#python#python2#' event_rpcgen.py
- ./configure --prefix=/usr --sysconfdir=/etc
+ cd ${pkgname}-${pkgver}-stable
+ ./autogen.sh
+ ./configure --prefix=/usr --sysconfdir=/etc --disable-libevent-regress
make
}
check() {
- cd "${srcdir}/${pkgname}-${pkgver}-stable"
- make check || true # this never worked, should be taken upstream
+ cd ${pkgname}-${pkgver}-stable
+ make -j1 check
}
package() {
- cd "${srcdir}/${pkgname}-${pkgver}-stable"
+ cd ${pkgname}-${pkgver}-stable
make DESTDIR="${pkgdir}" install
+ install -Dm 644 LICENSE "${pkgdir}"/usr/share/licenses/libevent/LICENSE
}
-md5sums=('91111579769f46055b0a438f5cc59572'
- 'a211997b20913954f744a665f31f77d2')
diff --git a/abs/core/libgcrypt/PKGBUILD b/abs/core/libgcrypt/PKGBUILD
index e3a887b..aea1f81 100644
--- a/abs/core/libgcrypt/PKGBUILD
+++ b/abs/core/libgcrypt/PKGBUILD
@@ -1,35 +1,53 @@
-# $Id: PKGBUILD 156348 2012-04-17 15:57:54Z andyrtr $
+# $Id$
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
+# after a .so bump first rebuild dirmngr
+# with sudo testing-x86_64-build -- -I libgcrypt-1.6.0-1-x86_64.pkg.tar.xz
+# then cp /usr/lib/libgcrypt.so.11 /var/lib/archbuild/staging-x86_64/root/usr/lib/ and do staging-x86_64-build
+
pkgname=libgcrypt
-pkgver=1.5.0
-pkgrel=3
-pkgdesc="a general purpose crypto library based on the code used"
-arch=(i686 x86_64)
+pkgver=1.8.2
+pkgrel=1
+pkgdesc="General purpose cryptographic library based on the code from GnuPG"
+arch=(x86_64)
url="http://www.gnupg.org"
license=('LGPL')
-depends=('libgpg-error>=1.10-2')
-options=('!libtool' '!emptydirs')
-install=$pkgname.install
-source=(ftp://ftp.gnupg.org/gcrypt/${pkgname}/${pkgname}-${pkgver}.tar.bz2
- #ftp://ftp.franken.de/pub/crypt/mirror/ftp.gnupg.org/gcrypt/libgcrypt/${pkgname}-${pkgver}.tar.bz2
-)
-sha1sums=('3e776d44375dc1a710560b98ae8437d5da6e32cf')
+depends=('libgpg-error')
+options=('!emptydirs')
+# https://www.gnupg.org/download/integrity_check.html
+source=(https://gnupg.org/ftp/gcrypt/${pkgname}/${pkgname}-${pkgver}.tar.bz2{,.sig})
+sha1sums=('ab8aae5d7a68f8e0988f90e11e7f6a4805af5c8d'
+ 'SKIP')
+validpgpkeys=('031EC2536E580D8EA286A9F22071B08A33BD3F06' # "NIIBE Yutaka (GnuPG Release Key) <gniibe@fsij.org>"
+ 'D8692123C4065DEA5E0F3AB5249B39D24F25E3B6') # Werner Koch
+options=(!makeflags)
+
+prepare() {
+ cd ${pkgname}-${pkgver}
+ # tests fail due to systemd+libseccomp preventing memory syscalls when building in chroots
+ # t-secmem: line 176: gcry_control (GCRYCTL_INIT_SECMEM, pool_size, 0) failed: General error
+ # FAIL: t-secmem
+ # t-sexp: line 1174: gcry_control (GCRYCTL_INIT_SECMEM, 16384, 0) failed: General error
+ # FAIL: t-sexp
+ sed -i "s:t-secmem::" tests/Makefile.am
+ sed -i "s:t-sexp::" tests/Makefile.am
+ autoreconf -vfi
+}
build() {
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${pkgname}-${pkgver}
./configure --prefix=/usr \
--disable-static \
- --disable-padlock-support #$EXTRAFLAGS
+ --disable-padlock-support
make
}
check() {
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${pkgname}-${pkgver}
make check
}
package() {
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${pkgname}-${pkgver}
make DESTDIR=${pkgdir} install
}
diff --git a/abs/core/libgcrypt/libgcrypt.install b/abs/core/libgcrypt/libgcrypt.install
deleted file mode 100644
index 79b8782..0000000
--- a/abs/core/libgcrypt/libgcrypt.install
+++ /dev/null
@@ -1,20 +0,0 @@
-infodir=/usr/share/info
-filelist=(gcrypt.info.gz gcrypt.info-1.gz)
-
-post_install() {
- [ -x usr/bin/install-info ] || return 0
- for file in ${filelist[@]}; do
- install-info $infodir/$file $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 $infodir/dir 2> /dev/null
- done
-}
diff --git a/abs/core/libglvnd/LICENSE b/abs/core/libglvnd/LICENSE
new file mode 100644
index 0000000..57bc4f4
--- /dev/null
+++ b/abs/core/libglvnd/LICENSE
@@ -0,0 +1,26 @@
+Copyright (c) 2013, NVIDIA CORPORATION.
+
+Permission is hereby granted, free of charge, to any person obtaining a
+copy of this software and/or associated documentation files (the
+"Materials"), to deal in the Materials without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Materials, and to
+permit persons to whom the Materials are furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be included
+unaltered in all copies or substantial portions of the Materials.
+Any additions, deletions, or changes to the original source files
+must be clearly indicated in accompanying documentation.
+
+If only executable code is distributed, then the accompanying
+documentation must state that "this software is based in part on the
+work of the Khronos Group."
+
+THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
+CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. \ No newline at end of file
diff --git a/abs/core/libglvnd/PKGBUILD b/abs/core/libglvnd/PKGBUILD
new file mode 100644
index 0000000..e589b42
--- /dev/null
+++ b/abs/core/libglvnd/PKGBUILD
@@ -0,0 +1,33 @@
+# $Id: PKGBUILD 249779 2015-10-27 00:47:25Z eric $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgname=libglvnd
+pkgver=1.0.0
+pkgrel=1
+pkgdesc="The GL Vendor-Neutral Dispatch library"
+arch=('x86_64')
+url="https://github.com/NVIDIA/libglvnd"
+license=('custom:BSD-like')
+makedepends=('libxext' 'libx11' 'glproto' 'python2')
+provides=('libgl' 'libegl' 'libgles')
+source=("$pkgname-$pkgver.tar.gz::https://github.com/NVIDIA/libglvnd/archive/v$pkgver.tar.gz"
+ LICENSE)
+sha512sums=('c6040b0a508a6b74d7113f8e375fcaf93ec6f2875504953f30e2882e58e22f954bd4027a7d9ab8ac41abef266039e5834fdaf4ce2a69d5d98acf3bbdd54f04b6'
+ 'bf0f4a7e04220a407400f89226ecc1f798cc43035f2538cc8860e5088e1f84140baf0d4b0b28f66e4b802d4d6925769a1297c24e1ba39c1c093902b2931781a5')
+
+build() {
+ cd $pkgname-$pkgver
+ ./autogen.sh
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ # libglvnd needs mesa for indirect rendering
+ depends=('libxext' 'mesa' 'opengl-driver')
+
+ cd $pkgname-$pkgver
+ make DESTDIR="$pkgdir" install
+
+ install -Dm644 ../LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
diff --git a/abs/core/libglvnd/__changelog b/abs/core/libglvnd/__changelog
new file mode 100644
index 0000000..99dab7b
--- /dev/null
+++ b/abs/core/libglvnd/__changelog
@@ -0,0 +1 @@
+PKGBUILD: change python dep to python2
diff --git a/abs/core/libgpg-error/PKGBUILD b/abs/core/libgpg-error/PKGBUILD
index 5f3d0bb..03e6ea6 100644
--- a/abs/core/libgpg-error/PKGBUILD
+++ b/abs/core/libgpg-error/PKGBUILD
@@ -1,31 +1,34 @@
-# $Id: PKGBUILD 197822 2013-10-30 11:04:47Z allan $
-# Maintainer: judd <jvinet@zeroflux.org>
+# $Id$
+# Maintainer: Andreas Radke <andyrtr@archlinux.org>
+# Contributor: judd <jvinet@zeroflux.org>
pkgname=libgpg-error
-pkgver=1.12
+pkgver=1.27
pkgrel=1
pkgdesc="Support library for libgcrypt"
-arch=(i686 x86_64)
-url="http://www.gnupg.org"
+arch=(x86_64)
+url="https://www.gnupg.org"
license=('LGPL')
depends=('glibc' 'sh')
source=(ftp://ftp.gnupg.org/gcrypt/libgpg-error/${pkgname}-${pkgver}.tar.bz2{,.sig})
#ftp://ftp.franken.de/pub/crypt/mirror/ftp.gnupg.org/gcrypt/libgpg-error/${pkgname}-${pkgver}.tar.bz2)
-sha1sums=('259f359cd1440b21840c3a78e852afd549c709b8'
+# https://www.gnupg.org/download/integrity_check.html
+sha1sums=('a428758999ff573e62d06892e3d2c0b0f335787c'
'SKIP')
-
+validpgpkeys=('D8692123C4065DEA5E0F3AB5249B39D24F25E3B6' # Werner Koch
+ '031EC2536E580D8EA286A9F22071B08A33BD3F06') # NIIBE Yutaka (GnuPG Release Key) <gniibe@fsij.org>
build() {
- cd "${srcdir}"/${pkgname}-${pkgver}
+ cd ${pkgname}-${pkgver}
./configure --prefix=/usr
make
}
check() {
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${pkgname}-${pkgver}
make check
}
package() {
- cd "${srcdir}"/${pkgname}-${pkgver}
+ cd ${pkgname}-${pkgver}
make DESTDIR="${pkgdir}/" install
}
diff --git a/abs/core/libgusb/PKGBUILD b/abs/core/libgusb/PKGBUILD
index 4c38e81..62252a9 100644
--- a/abs/core/libgusb/PKGBUILD
+++ b/abs/core/libgusb/PKGBUILD
@@ -1,27 +1,46 @@
-# $Id: PKGBUILD 198178 2013-10-30 13:16:56Z allan $
-# Maintainer: Ionut Biru <ibiru@archlinux.org>
+# $Id$
+# Maintainer: Maxime Gauduin <alucryd@archlinux.org>
+# Contributor: Ionut Biru <ibiru@archlinux.org>
pkgname=libgusb
-pkgver=0.1.6
+pkgver=0.2.11
pkgrel=1
-pkgdesc="GLib wrapper around libusb1"
-arch=('i686' 'x86_64')
-url="https://gitorious.org/gusb/"
+pkgdesc='GObject wrapper for libusb1'
+url='https://github.com/hughsie/libgusb'
+arch=('x86_64')
license=('LGPL2.1')
-depends=('udev' 'libusbx')
-makedepends=('gobject-introspection')
-source=(http://people.freedesktop.org/~hughsient/releases/$pkgname-$pkgver.tar.xz)
-sha256sums=('900103ff24a851ef8395b992236ced0aedb4c265ef2264f6ad8349300095198b')
+depends=('glib2' 'glibc' 'libusb')
+makedepends=('git' 'gobject-introspection' 'gtk-doc' 'python2' 'vala')
+_commit='732b49b528cc69bf4c8999e088835ecab9d5c05c'
+source=("git+https://github.com/hughsie/libgusb#commit=$_commit")
+sha256sums=('SKIP')
+
+pkgver() {
+ cd libgusb
+
+ git describe --tags | sed 's/^gusb_//;s/_/./g;s/-/+/g'
+}
+
+prepare() {
+ cd libgusb
+
+ NOCONFIGURE=1 ./autogen.sh
+}
build() {
- cd $pkgname-$pkgver
- ./configure --prefix=/usr --disable-static
+ cd libgusb
+
+ ./configure \
+ --prefix='/usr' \
+ --enable-gtk-doc \
+ --disable-static
make
}
package() {
- cd $pkgname-$pkgver
- make DESTDIR="$pkgdir" install
+ cd libgusb
+
+ make DESTDIR="${pkgdir}" install
}
-# vim:set ts=2 sw=2 et:
+# vim: ts=2 sw=2 et:
diff --git a/abs/core/libidn/PKGBUILD b/abs/core/libidn/PKGBUILD
index 42aaa09..c911e6b 100644
--- a/abs/core/libidn/PKGBUILD
+++ b/abs/core/libidn/PKGBUILD
@@ -1,29 +1,43 @@
-# $Id: PKGBUILD 162005 2012-06-18 08:51:29Z ronald $
+# $Id$
# Maintainer: Ronald van Haren <ronald.archlinux.org>
# Contributor: Jan de Groot <jgc.archlinux.org>
# Contributor: Eric Johnson <eric.archlinux.org>
pkgname=libidn
-pkgver=1.25
-pkgrel=1
+pkgver=1.33
+pkgrel=2
pkgdesc="Implementation of the Stringprep, Punycode and IDNA specifications"
-url="http://www.gnu.org/software/libidn/"
-arch=('i686' 'x86_64')
+url="https://www.gnu.org/software/libidn/"
+arch=('x86_64')
license=('GPL3' 'LGPL')
-depends=('glibc' 'texinfo')
-makedepends=('pkgconfig')
-options=('!libtool')
-source=(http://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz)
-install=libidn.install
-sha1sums=('92e64fd5a6428bda6ade2c3cde475b76455cd7dd')
-
+depends=('glibc')
+source=(https://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz{,.sig}
+ gcc7_buildfix.diff)
+sha256sums=('44a7aab635bb721ceef6beecc4d49dfd19478325e1b47f3196f7d2acc4930e19'
+ 'SKIP'
+ '1b539ba3916fe8982d596f4de9a65138ae9a35a042e1673328a092a478b7fb33')
+validpgpkeys=('9AA9BDB11BB1B99A21285A330664A76954265E8C') # "Simon Josefsson <simon@josefsson.org>"
+
+prepare() {
+ cd ${pkgname}-${pkgver}
+ # fix build with gcc7
+ patch -Np1 -i ../gcc7_buildfix.diff
+}
+
build() {
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${pkgname}-${pkgver}
./configure --prefix=/usr
make
}
+check() {
+ cd ${pkgname}-${pkgver}
+ make check
+}
package() {
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${pkgname}-${pkgver}
make DESTDIR=${pkgdir} install
+ # doc html installation - gtk-doc isn't supported anymore - FS#55151
+ mkdir -p ${pkgdir}/usr/share/gtk-doc/html/${pkgname}
+ cp -r -v doc/reference/html/* ${pkgdir}/usr/share/gtk-doc/html/${pkgname}
}
diff --git a/abs/core/libidn/gcc7_buildfix.diff b/abs/core/libidn/gcc7_buildfix.diff
new file mode 100644
index 0000000..1ed5b18
--- /dev/null
+++ b/abs/core/libidn/gcc7_buildfix.diff
@@ -0,0 +1,327 @@
+From: Tim Rühsen <tim.ruehsen@gmx.de>
+Date: Wed, 1 Feb 2017 09:44:36 +0000 (+0100)
+Subject: Update intprops.h for gcc-7 compatibility
+X-Git-Url: http://git.savannah.gnu.org/gitweb/?p=libidn.git;a=commitdiff_plain;h=230930b3bc3e431b819eb45420cb42475d83ca93
+
+Update intprops.h for gcc-7 compatibility
+---
+
+diff --git a/gl/intprops.h b/gl/intprops.h
+index e1fce5c..eb06b69 100644
+--- a/gl/intprops.h
++++ b/gl/intprops.h
+@@ -1,18 +1,18 @@
+ /* intprops.h -- properties of integer types
+
+- Copyright (C) 2001-2016 Free Software Foundation, Inc.
++ Copyright (C) 2001-2017 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify it
+- under the terms of the GNU General Public License as published
+- by the Free Software Foundation; either version 3 of the License, or
++ under the terms of the GNU Lesser General Public License as published
++ by the Free Software Foundation; either version 2.1 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- GNU General Public License for more details.
++ GNU Lesser General Public License for more details.
+
+- You should have received a copy of the GNU General Public License
++ You should have received a copy of the GNU Lesser General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+ /* Written by Paul Eggert. */
+@@ -47,12 +47,16 @@
+
+ /* Minimum and maximum values for integer types and expressions. */
+
++/* The width in bits of the integer type or expression T.
++ Padding bits are not supported; this is checked at compile-time below. */
++#define TYPE_WIDTH(t) (sizeof (t) * CHAR_BIT)
++
+ /* The maximum and minimum values for the integer type T. */
+ #define TYPE_MINIMUM(t) ((t) ~ TYPE_MAXIMUM (t))
+ #define TYPE_MAXIMUM(t) \
+ ((t) (! TYPE_SIGNED (t) \
+ ? (t) -1 \
+- : ((((t) 1 << (sizeof (t) * CHAR_BIT - 2)) - 1) * 2 + 1)))
++ : ((((t) 1 << (TYPE_WIDTH (t) - 2)) - 1) * 2 + 1)))
+
+ /* The maximum and minimum values for the type of the expression E,
+ after integer promotion. E should not have side effects. */
+@@ -65,7 +69,13 @@
+ ? _GL_SIGNED_INT_MAXIMUM (e) \
+ : _GL_INT_NEGATE_CONVERT (e, 1))
+ #define _GL_SIGNED_INT_MAXIMUM(e) \
+- (((_GL_INT_CONVERT (e, 1) << (sizeof ((e) + 0) * CHAR_BIT - 2)) - 1) * 2 + 1)
++ (((_GL_INT_CONVERT (e, 1) << (TYPE_WIDTH ((e) + 0) - 2)) - 1) * 2 + 1)
++
++/* Work around OpenVMS incompatibility with C99. */
++#if !defined LLONG_MAX && defined __INT64_MAX
++# define LLONG_MAX __INT64_MAX
++# define LLONG_MIN __INT64_MIN
++#endif
+
+ /* This include file assumes that signed types are two's complement without
+ padding bits; the above macros have undefined behavior otherwise.
+@@ -84,10 +94,15 @@ verify (TYPE_MAXIMUM (long int) == LONG_MAX);
+ verify (TYPE_MINIMUM (long long int) == LLONG_MIN);
+ verify (TYPE_MAXIMUM (long long int) == LLONG_MAX);
+ #endif
++/* Similarly, sanity-check one ISO/IEC TS 18661-1:2014 macro if defined. */
++#ifdef UINT_WIDTH
++verify (TYPE_WIDTH (unsigned int) == UINT_WIDTH);
++#endif
+
+ /* Does the __typeof__ keyword work? This could be done by
+ 'configure', but for now it's easier to do it by hand. */
+-#if (2 <= __GNUC__ || defined __IBM__TYPEOF__ \
++#if (2 <= __GNUC__ \
++ || (1210 <= __IBMC__ && defined __IBM__TYPEOF__) \
+ || (0x5110 <= __SUNPRO_C && !__STDC__))
+ # define _GL_HAVE___TYPEOF__ 1
+ #else
+@@ -116,8 +131,7 @@ verify (TYPE_MAXIMUM (long long int) == LLONG_MAX);
+ signed, this macro may overestimate the true bound by one byte when
+ applied to unsigned types of size 2, 4, 16, ... bytes. */
+ #define INT_STRLEN_BOUND(t) \
+- (INT_BITS_STRLEN_BOUND (sizeof (t) * CHAR_BIT \
+- - _GL_SIGNED_TYPE_OR_EXPR (t)) \
++ (INT_BITS_STRLEN_BOUND (TYPE_WIDTH (t) - _GL_SIGNED_TYPE_OR_EXPR (t)) \
+ + _GL_SIGNED_TYPE_OR_EXPR (t))
+
+ /* Bound on buffer size needed to represent an integer type or expression T,
+@@ -222,20 +236,23 @@ verify (TYPE_MAXIMUM (long long int) == LLONG_MAX);
+ ? (a) < (min) >> (b) \
+ : (max) >> (b) < (a))
+
+-/* True if __builtin_add_overflow (A, B, P) works when P is null. */
+-#define _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL (7 <= __GNUC__)
++/* True if __builtin_add_overflow (A, B, P) works when P is non-null. */
++#define _GL_HAS_BUILTIN_OVERFLOW (5 <= __GNUC__)
++
++/* True if __builtin_add_overflow_p (A, B, C) works. */
++#define _GL_HAS_BUILTIN_OVERFLOW_P (7 <= __GNUC__)
+
+ /* The _GL*_OVERFLOW macros have the same restrictions as the
+ *_RANGE_OVERFLOW macros, except that they do not assume that operands
+ (e.g., A and B) have the same type as MIN and MAX. Instead, they assume
+ that the result (e.g., A + B) has that type. */
+-#if _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL
+-# define _GL_ADD_OVERFLOW(a, b, min, max)
+- __builtin_add_overflow (a, b, (__typeof__ ((a) + (b)) *) 0)
+-# define _GL_SUBTRACT_OVERFLOW(a, b, min, max)
+- __builtin_sub_overflow (a, b, (__typeof__ ((a) - (b)) *) 0)
+-# define _GL_MULTIPLY_OVERFLOW(a, b, min, max)
+- __builtin_mul_overflow (a, b, (__typeof__ ((a) * (b)) *) 0)
++#if _GL_HAS_BUILTIN_OVERFLOW_P
++# define _GL_ADD_OVERFLOW(a, b, min, max) \
++ __builtin_add_overflow_p (a, b, (__typeof__ ((a) + (b))) 0)
++# define _GL_SUBTRACT_OVERFLOW(a, b, min, max) \
++ __builtin_sub_overflow_p (a, b, (__typeof__ ((a) - (b))) 0)
++# define _GL_MULTIPLY_OVERFLOW(a, b, min, max) \
++ __builtin_mul_overflow_p (a, b, (__typeof__ ((a) * (b))) 0)
+ #else
+ # define _GL_ADD_OVERFLOW(a, b, min, max) \
+ ((min) < 0 ? INT_ADD_RANGE_OVERFLOW (a, b, min, max) \
+@@ -315,7 +332,7 @@ verify (TYPE_MAXIMUM (long long int) == LLONG_MAX);
+ _GL_BINARY_OP_OVERFLOW (a, b, _GL_ADD_OVERFLOW)
+ #define INT_SUBTRACT_OVERFLOW(a, b) \
+ _GL_BINARY_OP_OVERFLOW (a, b, _GL_SUBTRACT_OVERFLOW)
+-#if _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL
++#if _GL_HAS_BUILTIN_OVERFLOW_P
+ # define INT_NEGATE_OVERFLOW(a) INT_SUBTRACT_OVERFLOW (0, a)
+ #else
+ # define INT_NEGATE_OVERFLOW(a) \
+@@ -349,10 +366,6 @@ verify (TYPE_MAXIMUM (long long int) == LLONG_MAX);
+ #define INT_MULTIPLY_WRAPV(a, b, r) \
+ _GL_INT_OP_WRAPV (a, b, r, *, __builtin_mul_overflow, INT_MULTIPLY_OVERFLOW)
+
+-#ifndef __has_builtin
+-# define __has_builtin(x) 0
+-#endif
+-
+ /* Nonzero if this compiler has GCC bug 68193 or Clang bug 25390. See:
+ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68193
+ https://llvm.org/bugs/show_bug.cgi?id=25390
+@@ -369,7 +382,7 @@ verify (TYPE_MAXIMUM (long long int) == LLONG_MAX);
+ the operation. BUILTIN is the builtin operation, and OVERFLOW the
+ overflow predicate. Return 1 if the result overflows. See above
+ for restrictions. */
+-#if 5 <= __GNUC__ || __has_builtin (__builtin_add_overflow)
++#if _GL_HAS_BUILTIN_OVERFLOW
+ # define _GL_INT_OP_WRAPV(a, b, r, op, builtin, overflow) builtin (a, b, r)
+ #elif 201112 <= __STDC_VERSION__ && !_GL__GENERIC_BOGUS
+ # define _GL_INT_OP_WRAPV(a, b, r, op, builtin, overflow) \
+@@ -412,7 +425,7 @@ verify (TYPE_MAXIMUM (long long int) == LLONG_MAX);
+ # else
+ # define _GL_INT_OP_WRAPV_LONGISH(a, b, r, op, overflow) \
+ _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \
+- long int, LONG_MIN, LONG_MAX))
++ long int, LONG_MIN, LONG_MAX)
+ # endif
+ #endif
+
+diff --git a/lib/gltests/intprops.h b/lib/gltests/intprops.h
+index e1fce5c..eb06b69 100644
+--- a/lib/gltests/intprops.h
++++ b/lib/gltests/intprops.h
+@@ -1,18 +1,18 @@
+ /* intprops.h -- properties of integer types
+
+- Copyright (C) 2001-2016 Free Software Foundation, Inc.
++ Copyright (C) 2001-2017 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify it
+- under the terms of the GNU General Public License as published
+- by the Free Software Foundation; either version 3 of the License, or
++ under the terms of the GNU Lesser General Public License as published
++ by the Free Software Foundation; either version 2.1 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+- GNU General Public License for more details.
++ GNU Lesser General Public License for more details.
+
+- You should have received a copy of the GNU General Public License
++ You should have received a copy of the GNU Lesser General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+ /* Written by Paul Eggert. */
+@@ -47,12 +47,16 @@
+
+ /* Minimum and maximum values for integer types and expressions. */
+
++/* The width in bits of the integer type or expression T.
++ Padding bits are not supported; this is checked at compile-time below. */
++#define TYPE_WIDTH(t) (sizeof (t) * CHAR_BIT)
++
+ /* The maximum and minimum values for the integer type T. */
+ #define TYPE_MINIMUM(t) ((t) ~ TYPE_MAXIMUM (t))
+ #define TYPE_MAXIMUM(t) \
+ ((t) (! TYPE_SIGNED (t) \
+ ? (t) -1 \
+- : ((((t) 1 << (sizeof (t) * CHAR_BIT - 2)) - 1) * 2 + 1)))
++ : ((((t) 1 << (TYPE_WIDTH (t) - 2)) - 1) * 2 + 1)))
+
+ /* The maximum and minimum values for the type of the expression E,
+ after integer promotion. E should not have side effects. */
+@@ -65,7 +69,13 @@
+ ? _GL_SIGNED_INT_MAXIMUM (e) \
+ : _GL_INT_NEGATE_CONVERT (e, 1))
+ #define _GL_SIGNED_INT_MAXIMUM(e) \
+- (((_GL_INT_CONVERT (e, 1) << (sizeof ((e) + 0) * CHAR_BIT - 2)) - 1) * 2 + 1)
++ (((_GL_INT_CONVERT (e, 1) << (TYPE_WIDTH ((e) + 0) - 2)) - 1) * 2 + 1)
++
++/* Work around OpenVMS incompatibility with C99. */
++#if !defined LLONG_MAX && defined __INT64_MAX
++# define LLONG_MAX __INT64_MAX
++# define LLONG_MIN __INT64_MIN
++#endif
+
+ /* This include file assumes that signed types are two's complement without
+ padding bits; the above macros have undefined behavior otherwise.
+@@ -84,10 +94,15 @@ verify (TYPE_MAXIMUM (long int) == LONG_MAX);
+ verify (TYPE_MINIMUM (long long int) == LLONG_MIN);
+ verify (TYPE_MAXIMUM (long long int) == LLONG_MAX);
+ #endif
++/* Similarly, sanity-check one ISO/IEC TS 18661-1:2014 macro if defined. */
++#ifdef UINT_WIDTH
++verify (TYPE_WIDTH (unsigned int) == UINT_WIDTH);
++#endif
+
+ /* Does the __typeof__ keyword work? This could be done by
+ 'configure', but for now it's easier to do it by hand. */
+-#if (2 <= __GNUC__ || defined __IBM__TYPEOF__ \
++#if (2 <= __GNUC__ \
++ || (1210 <= __IBMC__ && defined __IBM__TYPEOF__) \
+ || (0x5110 <= __SUNPRO_C && !__STDC__))
+ # define _GL_HAVE___TYPEOF__ 1
+ #else
+@@ -116,8 +131,7 @@ verify (TYPE_MAXIMUM (long long int) == LLONG_MAX);
+ signed, this macro may overestimate the true bound by one byte when
+ applied to unsigned types of size 2, 4, 16, ... bytes. */
+ #define INT_STRLEN_BOUND(t) \
+- (INT_BITS_STRLEN_BOUND (sizeof (t) * CHAR_BIT \
+- - _GL_SIGNED_TYPE_OR_EXPR (t)) \
++ (INT_BITS_STRLEN_BOUND (TYPE_WIDTH (t) - _GL_SIGNED_TYPE_OR_EXPR (t)) \
+ + _GL_SIGNED_TYPE_OR_EXPR (t))
+
+ /* Bound on buffer size needed to represent an integer type or expression T,
+@@ -222,20 +236,23 @@ verify (TYPE_MAXIMUM (long long int) == LLONG_MAX);
+ ? (a) < (min) >> (b) \
+ : (max) >> (b) < (a))
+
+-/* True if __builtin_add_overflow (A, B, P) works when P is null. */
+-#define _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL (7 <= __GNUC__)
++/* True if __builtin_add_overflow (A, B, P) works when P is non-null. */
++#define _GL_HAS_BUILTIN_OVERFLOW (5 <= __GNUC__)
++
++/* True if __builtin_add_overflow_p (A, B, C) works. */
++#define _GL_HAS_BUILTIN_OVERFLOW_P (7 <= __GNUC__)
+
+ /* The _GL*_OVERFLOW macros have the same restrictions as the
+ *_RANGE_OVERFLOW macros, except that they do not assume that operands
+ (e.g., A and B) have the same type as MIN and MAX. Instead, they assume
+ that the result (e.g., A + B) has that type. */
+-#if _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL
+-# define _GL_ADD_OVERFLOW(a, b, min, max)
+- __builtin_add_overflow (a, b, (__typeof__ ((a) + (b)) *) 0)
+-# define _GL_SUBTRACT_OVERFLOW(a, b, min, max)
+- __builtin_sub_overflow (a, b, (__typeof__ ((a) - (b)) *) 0)
+-# define _GL_MULTIPLY_OVERFLOW(a, b, min, max)
+- __builtin_mul_overflow (a, b, (__typeof__ ((a) * (b)) *) 0)
++#if _GL_HAS_BUILTIN_OVERFLOW_P
++# define _GL_ADD_OVERFLOW(a, b, min, max) \
++ __builtin_add_overflow_p (a, b, (__typeof__ ((a) + (b))) 0)
++# define _GL_SUBTRACT_OVERFLOW(a, b, min, max) \
++ __builtin_sub_overflow_p (a, b, (__typeof__ ((a) - (b))) 0)
++# define _GL_MULTIPLY_OVERFLOW(a, b, min, max) \
++ __builtin_mul_overflow_p (a, b, (__typeof__ ((a) * (b))) 0)
+ #else
+ # define _GL_ADD_OVERFLOW(a, b, min, max) \
+ ((min) < 0 ? INT_ADD_RANGE_OVERFLOW (a, b, min, max) \
+@@ -315,7 +332,7 @@ verify (TYPE_MAXIMUM (long long int) == LLONG_MAX);
+ _GL_BINARY_OP_OVERFLOW (a, b, _GL_ADD_OVERFLOW)
+ #define INT_SUBTRACT_OVERFLOW(a, b) \
+ _GL_BINARY_OP_OVERFLOW (a, b, _GL_SUBTRACT_OVERFLOW)
+-#if _GL_HAS_BUILTIN_OVERFLOW_WITH_NULL
++#if _GL_HAS_BUILTIN_OVERFLOW_P
+ # define INT_NEGATE_OVERFLOW(a) INT_SUBTRACT_OVERFLOW (0, a)
+ #else
+ # define INT_NEGATE_OVERFLOW(a) \
+@@ -349,10 +366,6 @@ verify (TYPE_MAXIMUM (long long int) == LLONG_MAX);
+ #define INT_MULTIPLY_WRAPV(a, b, r) \
+ _GL_INT_OP_WRAPV (a, b, r, *, __builtin_mul_overflow, INT_MULTIPLY_OVERFLOW)
+
+-#ifndef __has_builtin
+-# define __has_builtin(x) 0
+-#endif
+-
+ /* Nonzero if this compiler has GCC bug 68193 or Clang bug 25390. See:
+ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68193
+ https://llvm.org/bugs/show_bug.cgi?id=25390
+@@ -369,7 +382,7 @@ verify (TYPE_MAXIMUM (long long int) == LLONG_MAX);
+ the operation. BUILTIN is the builtin operation, and OVERFLOW the
+ overflow predicate. Return 1 if the result overflows. See above
+ for restrictions. */
+-#if 5 <= __GNUC__ || __has_builtin (__builtin_add_overflow)
++#if _GL_HAS_BUILTIN_OVERFLOW
+ # define _GL_INT_OP_WRAPV(a, b, r, op, builtin, overflow) builtin (a, b, r)
+ #elif 201112 <= __STDC_VERSION__ && !_GL__GENERIC_BOGUS
+ # define _GL_INT_OP_WRAPV(a, b, r, op, builtin, overflow) \
+@@ -412,7 +425,7 @@ verify (TYPE_MAXIMUM (long long int) == LLONG_MAX);
+ # else
+ # define _GL_INT_OP_WRAPV_LONGISH(a, b, r, op, overflow) \
+ _GL_INT_OP_CALC (a, b, r, op, overflow, unsigned long int, \
+- long int, LONG_MIN, LONG_MAX))
++ long int, LONG_MIN, LONG_MAX)
+ # endif
+ #endif
+
+
diff --git a/abs/core/libidn/libidn.install b/abs/core/libidn/libidn.install
deleted file mode 100644
index a0366eb..0000000
--- a/abs/core/libidn/libidn.install
+++ /dev/null
@@ -1,19 +0,0 @@
-info_dir=/usr/share/info
-info_files=(libidn.info)
-
-post_install() {
- for f in ${info_files[@]}; do
- install-info ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null
- done
-}
-
-post_upgrade() {
- post_install
-}
-
-pre_remove() {
- for f in ${info_files[@]}; do
- install-info --delete ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null
- done
-}
-
diff --git a/abs/core/libidn2/PKGBUILD b/abs/core/libidn2/PKGBUILD
new file mode 100644
index 0000000..c0a1a25
--- /dev/null
+++ b/abs/core/libidn2/PKGBUILD
@@ -0,0 +1,40 @@
+# $Id$
+# Maintainer: Evangelos Foutras <evangelos@foutrelis.com>
+# Contributor: Daurnimator <quae@daurnimator.com>
+
+pkgname=libidn2
+pkgver=2.0.4
+pkgrel=2
+pkgdesc="Free software implementation of IDNA2008, Punycode and TR46"
+arch=('x86_64')
+url="https://www.gnu.org/software/libidn/#libidn2"
+license=('GPL2' 'LGPL3')
+depends=('libunistring')
+makedepends=('gtk-doc' 'ruby-ronn')
+source=(https://ftp.gnu.org/gnu/libidn/$pkgname-$pkgver.tar.gz{,.sig})
+sha256sums=('644b6b03b285fb0ace02d241d59483d98bc462729d8bb3608d5cad5532f3d2f0'
+ 'SKIP')
+validpgpkeys=('1CB27DBC98614B2D5841646D08302DB6A2670428')
+
+prepare() {
+ cd $pkgname-$pkgver
+ # https://gitlab.com/libidn/libidn2/issues/39
+ autoreconf -fvi
+}
+
+build() {
+ cd $pkgname-$pkgver
+ ./configure --prefix=/usr
+ make
+}
+
+check() {
+ cd $pkgname-$pkgver
+ make check
+}
+package() {
+ cd $pkgname-$pkgver
+ make DESTDIR="$pkgdir" install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/libksba/PKGBUILD b/abs/core/libksba/PKGBUILD
index 505a606..fc40a23 100644
--- a/abs/core/libksba/PKGBUILD
+++ b/abs/core/libksba/PKGBUILD
@@ -1,19 +1,19 @@
-# $Id: PKGBUILD 149815 2012-02-11 07:14:25Z tpowa $
-# Maintainer: damir <damir@archlinux.org>
+# $Id$
+# Maintainer:
# Contributor: Damir Perisa <damir.perisa@bluewin.ch>
pkgname=libksba
-pkgver=1.2.0
-pkgrel=2
+pkgver=1.3.5
+pkgrel=1
pkgdesc="A CMS and X.509 access library"
-arch=(i686 x86_64)
+arch=(x86_64)
license=('GPL')
-url="ftp://ftp.gnupg.org/gcrypt/alpha/libksba"
+url="https://www.gnupg.org/related_software/libksba/index.html"
depends=('bash' 'libgpg-error' 'glibc')
-source=(ftp://ftp.gnupg.org/gcrypt/$pkgname/$pkgname-$pkgver.tar.bz2)
-options=(!libtool)
-install=libksba.install
-
+source=(https://www.gnupg.org/ftp/gcrypt/$pkgname/$pkgname-$pkgver.tar.bz2{,.sig})
+sha1sums=('a98385734a0c3f5b713198e8d6e6e4aeb0b76fde'
+ 'SKIP')
+validpgpkeys=('D8692123C4065DEA5E0F3AB5249B39D24F25E3B6') # Werner Koch
build() {
cd $srcdir/$pkgname-$pkgver
./configure --prefix=/usr
@@ -29,4 +29,3 @@ package() {
cd $srcdir/$pkgname-$pkgver
make DESTDIR=$pkgdir install
}
-md5sums=('e797f370b69b4dc776499d6a071ae137')
diff --git a/abs/core/libksba/libksba.install b/abs/core/libksba/libksba.install
deleted file mode 100644
index 3715b89..0000000
--- a/abs/core/libksba/libksba.install
+++ /dev/null
@@ -1,20 +0,0 @@
-infodir=usr/share/info
-filelist=(ksba.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/abs/core/libmpc/PKGBUILD b/abs/core/libmpc/PKGBUILD
index 8def5f5..d67f225 100644
--- a/abs/core/libmpc/PKGBUILD
+++ b/abs/core/libmpc/PKGBUILD
@@ -1,19 +1,18 @@
-# $Id: PKGBUILD 166514 2012-09-09 07:34:43Z allan $
+# $Id$
# Maintainer: Allan McRae <allan@archlinux.org>
pkgname=libmpc
-pkgver=1.0.1
+pkgver=1.1.0
pkgrel=1
pkgdesc="Library for the arithmetic of complex numbers with arbitrarily high precision"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://www.multiprecision.org/"
license=('LGPL')
-depends=('mpfr>=3.0.0')
-options=('!libtool')
-install=libmpc.install
-source=(http://www.multiprecision.org/mpc/download/mpc-${pkgver/_/-}.tar.gz{,.sig})
-md5sums=('b32a2e1a3daa392372fbd586d1ed3679'
- 'c064863fbbb5831ba4f75f1181333862')
+depends=('mpfr')
+source=(https://ftp.gnu.org/gnu/mpc/mpc-${pkgver/_/-}.tar.gz{,.sig})
+md5sums=('4125404e41e482ec68282a2e687f6c73'
+ 'SKIP')
+validpgpkeys=('AD17A21EF8AED8F1CC02DBD9F7D5C9BF765C61E3') # Andreas Enge
build() {
cd "${srcdir}/mpc-${pkgver}"
diff --git a/abs/core/libmpc/libmpc-0.9-configure_cflags_egrep_issue.patch b/abs/core/libmpc/libmpc-0.9-configure_cflags_egrep_issue.patch
deleted file mode 100644
index 3bf3247..0000000
--- a/abs/core/libmpc/libmpc-0.9-configure_cflags_egrep_issue.patch
+++ /dev/null
@@ -1,63 +0,0 @@
---- trunk/configure.ac 2011/02/21 12:18:31 932
-+++ trunk/configure.ac 2011/02/21 16:41:09 936
-@@ -33,7 +33,7 @@
- AC_CANONICAL_HOST
- AC_CONFIG_MACRO_DIR([m4])
-
--dnl Extra arguments to configure
-+# Extra arguments to configure
- AC_ARG_WITH([mpfr_include],
- [AC_HELP_STRING([--with-mpfr-include=DIR],
- [MPFR include directory])],
-@@ -85,18 +85,19 @@
- )
-
-
--dnl Setup CC and CFLAGS
-+# Setup CC and CFLAGS
-+AC_PROG_CC
-+AC_LANG(C)
-
--dnl Check for user specification of CC or CFLAGS
-+# Set up LibTool
-+AC_PROG_LIBTOOL
-+
-+# Check for user specification of CC or CFLAGS
- if test -n "$CFLAGS" || test -n "$CC" ; then
- user_redefine_cc=yes
- fi
-
--# Check for programs
--AC_PROG_CC
--AC_LANG(C)
--
--dnl Check GMP Header
-+# Check GMP Header
- AC_MSG_CHECKING(for gmp.h)
- AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
- #include "gmp.h"
-@@ -105,22 +106,19 @@
- AC_MSG_ERROR([gmp.h can't be found, or is unusable.])
- ])
-
--dnl Check for GMP CFLAGS in gmp.h
-+# Check for GMP CFLAGS in gmp.h
- if test -z "$user_redefine_cc" ; then
- MPC_GMP_CC_CFLAGS
- fi
-
-
--dnl Configs for Windows DLLs
-+# Configs for Windows DLLs
- case $host in
- *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
- MPC_WINDOWS
- esac
-
-
--dnl Finally set up LibTool
--AC_PROG_LIBTOOL
--
- # Checks for header files.
- AC_HEADER_STDC
- AC_CHECK_HEADERS([complex.h locale.h inttypes.h stdint.h limits.h unistd.h sys/time.h])
diff --git a/abs/core/libmpc/libmpc.install b/abs/core/libmpc/libmpc.install
deleted file mode 100644
index b0718c7..0000000
--- a/abs/core/libmpc/libmpc.install
+++ /dev/null
@@ -1,20 +0,0 @@
-infodir=usr/share/info
-filelist=(libmpc.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/abs/core/libnghttp2/PKGBUILD b/abs/core/libnghttp2/PKGBUILD
new file mode 100644
index 0000000..592082b
--- /dev/null
+++ b/abs/core/libnghttp2/PKGBUILD
@@ -0,0 +1,39 @@
+# $Id: PKGBUILD 289632 2017-02-27 17:36:38Z anatolik $
+# Maintainer: Anatol Pomozov
+# Contributor: Zhuoyun Wei <wzyboy@wzyboy.org>
+
+pkgname=libnghttp2
+pkgver=1.30.0
+pkgrel=1
+pkgdesc='Framing layer of HTTP/2 is implemented as a reusable C library'
+arch=(x86_64)
+url='https://nghttp2.org/'
+license=(MIT)
+depends=(glibc)
+conflicts=('nghttp2<1.20.0-2')
+source=(https://github.com/nghttp2/nghttp2/releases/download/v$pkgver/nghttp2-$pkgver.tar.xz)
+sha256sums=('089afb4c22a53f72384b71ea06194be255a8a73b50b1412589105d0e683c52ac')
+
+build() {
+ cd nghttp2-$pkgver
+
+ autoreconf -i
+ ./configure \
+ --prefix=/usr \
+ --disable-examples \
+ --disable-python-bindings \
+ --enable-lib-only
+ make
+}
+
+check() {
+ cd nghttp2-$pkgver
+ make check
+}
+
+package() {
+ cd nghttp2-$pkgver/lib
+
+ make DESTDIR="$pkgdir" install
+ install -Dm644 ../COPYING "$pkgdir/usr/share/licenses/libnghttp2/COPYING"
+}
diff --git a/abs/core/libpsl/PKGBUILD b/abs/core/libpsl/PKGBUILD
new file mode 100644
index 0000000..5689be0
--- /dev/null
+++ b/abs/core/libpsl/PKGBUILD
@@ -0,0 +1,47 @@
+# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org>
+# Contributor: Darshit Shah <darnir@gmail.com>
+
+pkgname=libpsl
+pkgver=0.19.1
+pkgrel=1
+pkgdesc='Public Suffix List library'
+url='https://github.com/rockdaboot/libpsl'
+arch=('x86_64')
+license=('MIT')
+depends=('libidn2' 'libunistring')
+makedepends=('libxslt' 'python' 'publicsuffix-list' 'gtk-doc')
+source=(https://github.com/rockdaboot/libpsl/releases/download/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.gz)
+sha512sums=('86bb2f35764491c65cacec8cd5de97c7d7e1c4d1cc2590d54f394ed17acc75922494115019631b2d930d64dbdc73c266efb323036ac7e52131111287ee6381d5')
+
+prepare() {
+ cd ${pkgname}-${pkgver}
+ rm -frv list
+ autoreconf -fiv
+}
+
+build() {
+ cd ${pkgname}-${pkgver}
+ ./configure \
+ --prefix=/usr \
+ --disable-static \
+ --disable-dependency-tracking \
+ --enable-man \
+ --enable-gtk-doc \
+ --enable-{builtin,runtime}=libidn2 \
+ --with-psl-file=/usr/share/publicsuffix/effective_tld_names.dat \
+ --with-psl-testfile=/usr/share/publicsuffix/test_psl.txt
+ LC_CTYPE=en_US.UTF-8 make
+}
+
+check() {
+ cd ${pkgname}-${pkgver}
+ make check
+}
+
+package() {
+ cd ${pkgname}-${pkgver}
+ make DESTDIR="${pkgdir}" install
+ install -Dm 644 COPYING -t "${pkgdir}/usr/share/licenses/${pkgname}"
+}
+
+# vim: ts=2 sw=2 et:
diff --git a/abs/core/libsasl/0003_saslauthd_mdoc.patch b/abs/core/libsasl/0003_saslauthd_mdoc.patch
deleted file mode 100644
index 694f4bb..0000000
--- a/abs/core/libsasl/0003_saslauthd_mdoc.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-0003_saslauthd_mdoc.dpatch by <fabbe@debian.org>
-
-Use the correct path for the saslauthd.conf file, and use another
-date format (cosmetic).
-
-diff -urNad trunk~/saslauthd/saslauthd.mdoc trunk/saslauthd/saslauthd.mdoc
---- trunk~/saslauthd/saslauthd.mdoc 2006-05-29 22:52:42.000000000 +0300
-+++ trunk/saslauthd/saslauthd.mdoc 2006-07-12 15:05:25.000000000 +0300
-@@ -10,7 +10,7 @@
- .\" manpage in saslauthd.8 whenever you change this source
- .\" version. Only the pre-formatted manpage is installed.
- .\"
--.Dd 10 24 2002
-+.Dd October 24 2002
- .Dt SASLAUTHD 8
- .Os "CMU-SASL"
- .Sh NAME
-@@ -216,7 +216,7 @@
- .Em (All platforms that support OpenLDAP 2.0 or higher)
- .Pp
- Authenticate against an ldap server. The ldap configuration parameters are
--read from /usr/local/etc/saslauthd.conf. The location of this file can be
-+read from /etc/saslauthd.conf. The location of this file can be
- changed with the -O parameter. See the LDAP_SASLAUTHD file included with the
- distribution for the list of available parameters.
- .It Li sia
-@@ -249,7 +249,7 @@
- .Bl -tag -width "/var/run/saslauthd/mux"
- .It Pa /var/run/saslauthd/mux
- The default communications socket.
--.It Pa /usr/local/etc/saslauthd.conf
-+.It Pa /etc/saslauthd.conf
- The default configuration file for ldap support.
- .El
- .Sh SEE ALSO
diff --git a/abs/core/libsasl/0012_xopen_crypt_prototype.patch b/abs/core/libsasl/0012_xopen_crypt_prototype.patch
deleted file mode 100644
index d50ec83..0000000
--- a/abs/core/libsasl/0012_xopen_crypt_prototype.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-0012_xopen_crypt_prototype.dpatch by <dannf@debian.org>
-
-When _XOPEN_SOURCE is defined, the subsequent #include <unistd.h>
-will define a correct function prototype for the crypt function.
-This avoids segfaults on architectures where the size of a pointer
-is greater than the size of an integer (ia64 and amd64 are examples).
-This may be detected by looking for build log lines such as the
-following:
-auth_shadow.c:183: warning: implicit declaration of function ‘crypt’
-auth_shadow.c:183: warning: cast to pointer from integer of different
-size
-
-diff -urNad trunk~/saslauthd/auth_shadow.c trunk/saslauthd/auth_shadow.c
---- trunk~/saslauthd/auth_shadow.c 2006-05-29 22:52:42.000000000 +0300
-+++ trunk/saslauthd/auth_shadow.c 2006-11-08 13:44:23.000000000 +0200
-@@ -1,3 +1,4 @@
-+#define _XOPEN_SOURCE
- #define PWBUFSZ 256 /***SWB***/
-
- /* MODULE: auth_shadow */
diff --git a/abs/core/libsasl/0016_pid_file_lock_creation_mask.patch b/abs/core/libsasl/0016_pid_file_lock_creation_mask.patch
deleted file mode 100644
index e9170ce..0000000
--- a/abs/core/libsasl/0016_pid_file_lock_creation_mask.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-0016_pid_file_lock_creation_mask.dpatch by Sam Hocevar <sam@zoy.org>
-
-pid_file_lock is created with a mask of 644 instead of 0644.
-This patch fixes this octal/decimal confusion as well as the
-(harmless) one in the previous umask() call.
-
-diff -urNad trunk~/saslauthd/saslauthd-main.c trunk/saslauthd/saslauthd-main.c
---- trunk~/saslauthd/saslauthd-main.c 2006-05-29 22:52:42.000000000 +0300
-+++ trunk/saslauthd/saslauthd-main.c 2007-06-26 12:07:10.000000000 +0300
-@@ -276,7 +276,7 @@
- exit(1);
- }
-
-- umask(077);
-+ umask(0077);
-
- pid_file_size = strlen(run_path) + sizeof(PID_FILE_LOCK) + 1;
- if ((pid_file_lock = malloc(pid_file_size)) == NULL) {
-@@ -287,7 +287,7 @@
- strlcpy(pid_file_lock, run_path, pid_file_size);
- strlcat(pid_file_lock, PID_FILE_LOCK, pid_file_size);
-
-- if ((pid_file_lock_fd = open(pid_file_lock, O_CREAT|O_TRUNC|O_RDWR, 644)) < 0) {
-+ if ((pid_file_lock_fd = open(pid_file_lock, O_CREAT|O_TRUNC|O_RDWR, 0644)) < 0) {
- rc = errno;
- logger(L_ERR, L_FUNC, "could not open pid lock file: %s", pid_file_lock);
- logger(L_ERR, L_FUNC, "open: %s", strerror(rc));
diff --git a/abs/core/libsasl/0018_auth_rimap_quotes.patch b/abs/core/libsasl/0018_auth_rimap_quotes.patch
deleted file mode 100644
index 13fa999..0000000
--- a/abs/core/libsasl/0018_auth_rimap_quotes.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-0016_auth_rimap_quotes.dpatch by <fabbe@debian.org>
-
-All lines beginning with `## DP:' are a description of the patch.
-Avoid infinite loop when username/password has a double quote character.
-Upstream change: https://bugzilla.andrew.cmu.edu/cgi-bin/cvsweb.cgi/src/sasl/saslauthd/auth_rimap.c.diff?r1=1.12;r2=1.13
-
-diff -urNad etch~/saslauthd/auth_rimap.c etch/saslauthd/auth_rimap.c
---- etch~/saslauthd/auth_rimap.c 2007-03-29 15:16:20.000000000 +0300
-+++ etch/saslauthd/auth_rimap.c 2008-02-13 13:42:53.000000000 +0200
-@@ -162,6 +162,7 @@
- num_quotes = 0;
- p1 = s;
- while ((p1 = strchr(p1, '"')) != NULL) {
-+ p1++;
- num_quotes++;
- }
-
-@@ -438,7 +439,7 @@
- syslog(LOG_WARNING, "auth_rimap: writev: %m");
- memset(qlogin, 0, strlen(qlogin));
- free(qlogin);
-- memset(qpass, 0, strlen(qlogin));
-+ memset(qpass, 0, strlen(qpass));
- free(qpass);
- (void)close(s);
- return strdup(RESP_IERROR);
-@@ -447,7 +448,7 @@
- /* don't need these any longer */
- memset(qlogin, 0, strlen(qlogin));
- free(qlogin);
-- memset(qpass, 0, strlen(qlogin));
-+ memset(qpass, 0, strlen(qpass));
- free(qpass);
-
- /* read and parse the LOGIN response */
diff --git a/abs/core/libsasl/0019_ldap_deprecated.patch b/abs/core/libsasl/0019_ldap_deprecated.patch
deleted file mode 100644
index 8825256..0000000
--- a/abs/core/libsasl/0019_ldap_deprecated.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-0019_ldap_deprecated.dpatch by dann frazier <dannf@debian.org>
-
-The function ldap_get_values, used in saslauthd/lak.c, is deprecated.
-Therefore, its prototype is not included by default when compiling
-against the ldap.h headers. As a result, the compiler cannot know the
-return type of the function at compile time, and will implicitly
-convert to a pointer. This has implications on 64-bit systems.
-This patch sets the deprecation mode on, so that the function prototype
-gets included when compiling.
-(Description by Fabian Fagerholm <fabbe@debian.org>)
-
-diff -urNad trunk~/saslauthd/lak.c trunk/saslauthd/lak.c
---- trunk~/saslauthd/lak.c 2006-06-04 12:26:20.000000000 +0300
-+++ trunk/saslauthd/lak.c 2008-02-15 14:32:11.000000000 +0200
-@@ -55,6 +55,7 @@
- #include <openssl/des.h>
- #endif
-
-+#define LDAP_DEPRECATED 1
- #include <ldap.h>
- #include <lber.h>
- #include <sasl.h>
diff --git a/abs/core/libsasl/0022_gcc4.4_preprocessor_syntax.patch b/abs/core/libsasl/0022_gcc4.4_preprocessor_syntax.patch
deleted file mode 100644
index a49b553..0000000
--- a/abs/core/libsasl/0022_gcc4.4_preprocessor_syntax.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-0022_gcc4.4_preprocessor_syntax.dpatch by <fabbe@paniq.net>
-
-The #elif preprocessor directive requires a test condition.
-GCC 4.4 enforces this rule.
-
-diff -urNad trunk~/plugins/digestmd5.c trunk/plugins/digestmd5.c
---- trunk~/plugins/digestmd5.c 2006-06-04 12:26:19.000000000 +0300
-+++ trunk/plugins/digestmd5.c 2009-01-26 13:29:40.000000000 +0200
-@@ -2715,7 +2715,7 @@
- "DIGEST-MD5", /* mech_name */
- #ifdef WITH_RC4
- 128, /* max_ssf */
--#elif WITH_DES
-+#elif defined(WITH_DES)
- 112,
- #else
- 1,
-@@ -4034,7 +4034,7 @@
- "DIGEST-MD5",
- #ifdef WITH_RC4 /* mech_name */
- 128, /* max ssf */
--#elif WITH_DES
-+#elif defined(WITH_DES)
- 112,
- #else
- 1,
diff --git a/abs/core/libsasl/0027_db5_support.patch b/abs/core/libsasl/0027_db5_support.patch
deleted file mode 100644
index 5228240..0000000
--- a/abs/core/libsasl/0027_db5_support.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Author: Ondřej Surý <ondrej@debian.org>
-Description: Support newer Berkeley DB versions
---- a/sasldb/db_berkeley.c
-+++ b/sasldb/db_berkeley.c
-@@ -101,7 +101,7 @@ static int berkeleydb_open(const sasl_ut
- ret = db_create(mbdb, NULL, 0);
- if (ret == 0 && *mbdb != NULL)
- {
--#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1
-+#if (DB_VERSION_MAJOR > 4) || ((DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 1))
- ret = (*mbdb)->open(*mbdb, NULL, path, NULL, DB_HASH, flags, 0660);
- #else
- ret = (*mbdb)->open(*mbdb, path, NULL, DB_HASH, flags, 0660);
---- a/utils/dbconverter-2.c
-+++ b/utils/dbconverter-2.c
-@@ -214,7 +214,7 @@ static int berkeleydb_open(const char *p
- ret = db_create(mbdb, NULL, 0);
- if (ret == 0 && *mbdb != NULL)
- {
--#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1
-+#if (DB_VERSION_MAJOR > 4) || ((DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 1))
- ret = (*mbdb)->open(*mbdb, NULL, path, NULL, DB_HASH, DB_CREATE, 0664);
- #else
- ret = (*mbdb)->open(*mbdb, path, NULL, DB_HASH, DB_CREATE, 0664);
diff --git a/abs/core/libsasl/CVE-2013-4122.patch b/abs/core/libsasl/CVE-2013-4122.patch
new file mode 100644
index 0000000..d6b9800
--- /dev/null
+++ b/abs/core/libsasl/CVE-2013-4122.patch
@@ -0,0 +1,116 @@
+From dedad73e5e7a75d01a5f3d5a6702ab8ccd2ff40d Mon Sep 17 00:00:00 2001
+From: mancha <mancha1@hush.com>
+Date: Thu, 11 Jul 2013 09:08:07 +0000
+Subject: Handle NULL returns from glibc 2.17+ crypt()
+
+Starting with glibc 2.17 (eglibc 2.17), crypt() fails with EINVAL
+(w/ NULL return) if the salt violates specifications. Additionally,
+on FIPS-140 enabled Linux systems, DES/MD5-encrypted passwords
+passed to crypt() fail with EPERM (w/ NULL return).
+
+When using glibc's crypt(), check return value to avoid a possible
+NULL pointer dereference.
+
+Patch by mancha1@hush.com.
+---
+diff --git a/pwcheck/pwcheck_getpwnam.c b/pwcheck/pwcheck_getpwnam.c
+index 4b34222..400289c 100644
+--- a/pwcheck/pwcheck_getpwnam.c
++++ b/pwcheck/pwcheck_getpwnam.c
+@@ -32,6 +32,7 @@ char *userid;
+ char *password;
+ {
+ char* r;
++ char* crpt_passwd;
+ struct passwd *pwd;
+
+ pwd = getpwnam(userid);
+@@ -41,7 +42,7 @@ char *password;
+ else if (pwd->pw_passwd[0] == '*') {
+ r = "Account disabled";
+ }
+- else if (strcmp(pwd->pw_passwd, crypt(password, pwd->pw_passwd)) != 0) {
++ else if (!(crpt_passwd = crypt(password, pwd->pw_passwd)) || strcmp(pwd->pw_passwd, (const char *)crpt_passwd) != 0) {
+ r = "Incorrect password";
+ }
+ else {
+diff --git a/pwcheck/pwcheck_getspnam.c b/pwcheck/pwcheck_getspnam.c
+index 2b11286..6d607bb 100644
+--- a/pwcheck/pwcheck_getspnam.c
++++ b/pwcheck/pwcheck_getspnam.c
+@@ -32,13 +32,15 @@ char *userid;
+ char *password;
+ {
+ struct spwd *pwd;
++ char *crpt_passwd;
+
+ pwd = getspnam(userid);
+ if (!pwd) {
+ return "Userid not found";
+ }
+
+- if (strcmp(pwd->sp_pwdp, crypt(password, pwd->sp_pwdp)) != 0) {
++ crpt_passwd = crypt(password, pwd->sp_pwdp);
++ if (!crpt_passwd || strcmp(pwd->sp_pwdp, (const char *)crpt_passwd) != 0) {
+ return "Incorrect password";
+ }
+ else {
+diff --git a/saslauthd/auth_getpwent.c b/saslauthd/auth_getpwent.c
+index fc8029d..d4ebe54 100644
+--- a/saslauthd/auth_getpwent.c
++++ b/saslauthd/auth_getpwent.c
+@@ -77,6 +77,7 @@ auth_getpwent (
+ {
+ /* VARIABLES */
+ struct passwd *pw; /* pointer to passwd file entry */
++ char *crpt_passwd; /* encrypted password */
+ int errnum;
+ /* END VARIABLES */
+
+@@ -105,7 +106,8 @@ auth_getpwent (
+ }
+ }
+
+- if (strcmp(pw->pw_passwd, (const char *)crypt(password, pw->pw_passwd))) {
++ crpt_passwd = crypt(password, pw->pw_passwd);
++ if (!crpt_passwd || strcmp(pw->pw_passwd, (const char *)crpt_passwd)) {
+ if (flags & VERBOSE) {
+ syslog(LOG_DEBUG, "DEBUG: auth_getpwent: %s: invalid password", login);
+ }
+diff --git a/saslauthd/auth_shadow.c b/saslauthd/auth_shadow.c
+index 677131b..1988afd 100644
+--- a/saslauthd/auth_shadow.c
++++ b/saslauthd/auth_shadow.c
+@@ -210,8 +210,8 @@ auth_shadow (
+ RETURN("NO Insufficient permission to access NIS authentication database (saslauthd)");
+ }
+
+- cpw = strdup((const char *)crypt(password, sp->sp_pwdp));
+- if (strcmp(sp->sp_pwdp, cpw)) {
++ cpw = crypt(password, sp->sp_pwdp);
++ if (!cpw || strcmp(sp->sp_pwdp, (const char *)cpw)) {
+ if (flags & VERBOSE) {
+ /*
+ * This _should_ reveal the SHADOW_PW_LOCKED prefix to an
+@@ -221,10 +221,8 @@ auth_shadow (
+ syslog(LOG_DEBUG, "DEBUG: auth_shadow: pw mismatch: '%s' != '%s'",
+ sp->sp_pwdp, cpw);
+ }
+- free(cpw);
+ RETURN("NO Incorrect password");
+ }
+- free(cpw);
+
+ /*
+ * The following fields will be set to -1 if:
+@@ -286,7 +284,7 @@ auth_shadow (
+ RETURN("NO Invalid username");
+ }
+
+- if (strcmp(upw->upw_passwd, crypt(password, upw->upw_passwd)) != 0) {
++ if (!(cpw = crypt(password, upw->upw_passwd)) || (strcmp(upw->upw_passwd, (const char *)cpw) != 0)) {
+ if (flags & VERBOSE) {
+ syslog(LOG_DEBUG, "auth_shadow: pw mismatch: %s != %s",
+ password, upw->upw_passwd);
+--
+cgit v0.9.2
diff --git a/abs/core/libsasl/PKGBUILD b/abs/core/libsasl/PKGBUILD
index 2d2de46..d755f72 100644
--- a/abs/core/libsasl/PKGBUILD
+++ b/abs/core/libsasl/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 146449 2012-01-11 15:21:04Z stephane $
+# $Id$
# Maintainer: Jan de Groot <jgc@archlinux.org>
# This package spans multiple repositories.
@@ -7,54 +7,68 @@
#pkgbase=('cyrus-sasl')
#pkgname=('cyrus-sasl' 'cyrus-sasl-gssapi' 'cyrus-sasl-ldap' 'cyrus-sasl-sql')
pkgname=libsasl
-pkgver=2.1.23
-pkgrel=10
+pkgver=2.1.26
+pkgrel=12
pkgdesc="Cyrus Simple Authentication Service Layer (SASL) library"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://cyrusimap.web.cmu.edu/"
license=('custom')
-options=('!makeflags' '!libtool')
-makedepends=('postgresql-libs' 'libmysqlclient' 'libldap' 'krb5' 'openssl')
-source=(ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-sasl-${pkgver}.tar.gz
- cyrus-sasl-2.1.19-checkpw.c.patch
- cyrus-sasl-2.1.22-crypt.patch
+options=('!makeflags')
+makedepends=('postgresql-libs' 'libmariadbclient' 'libldap' 'krb5' 'openssl' 'sqlite')
+source=(ftp://ftp.cyrusimap.org/cyrus-sasl/cyrus-sasl-${pkgver}.tar.gz
cyrus-sasl-2.1.22-qa.patch
- cyrus-sasl-2.1.22-automake-1.10.patch
- cyrus-sasl-2.1.23-authd-fix.patch
- 0003_saslauthd_mdoc.patch
+ cyrus-sasl-2.1.26-size_t.patch
0010_maintainer_mode.patch
0011_saslauthd_ac_prog_libtool.patch
- 0012_xopen_crypt_prototype.patch
- 0016_pid_file_lock_creation_mask.patch
- 0018_auth_rimap_quotes.patch
- 0019_ldap_deprecated.patch
- 0022_gcc4.4_preprocessor_syntax.patch
0025_ld_as_needed.patch
0026_drop_krb5support_dependency.patch
- 0027_db5_support.patch
0030-dont_use_la_files_for_opening_plugins.patch
+ saslauthd.service
saslauthd.conf.d
- saslauthd)
+ tmpfiles.conf
+ CVE-2013-4122.patch
+ cyrus-sasl-sql.patch
+ cyrus-sasl-gssapi.patch
+ cyrus-sasl-2.1.27-openssl-1.1.0.patch
+ fix-pkgconfig.patch)
+md5sums=('a7f4e5e559a0e37b3ffc438c9456e425'
+ '79b8a5e8689989e2afd4b7bda595a7b1'
+ 'f45aa8c42b32e0569ab3d14a83485b37'
+ 'f45d8b60e8f74dd7f7c2ec1665fa602a'
+ '9d93880514cb5ff5da969f1ceb64a661'
+ '62bf892fe4d1df41ff748e91a1afaf67'
+ 'b7848957357e7c02d6490102be496bf9'
+ '8e7106f32e495e9ade69014fd1b3352a'
+ '3499dcd610ad1ad58e0faffde2aa7a23'
+ '49219af5641150edec288a3fdb65e7c1'
+ '45bb0192d2f188066240b9a66ee6365f'
+ 'c5f0ec88c584a75c14d7f402eaeed7ef'
+ '82c0f66fdc5c1145eb48ea9116c27931'
+ '0363b1a0337474a57b1f75f72fe88fa3'
+ 'c8a385bbca9bd79910c6bda3dd02845c'
+ '409727695f9f28a3c43e340232462ff6')
+
+prepare() {
+ cd cyrus-sasl-$pkgver
+ patch -Np1 -i ../cyrus-sasl-2.1.22-qa.patch
+ patch -Np1 -i ../cyrus-sasl-2.1.26-size_t.patch
+ patch -Np1 -i ../0010_maintainer_mode.patch
+ patch -Np1 -i ../0011_saslauthd_ac_prog_libtool.patch
+ patch -Np1 -i ../0025_ld_as_needed.patch
+ patch -Np1 -i ../0026_drop_krb5support_dependency.patch
+ patch -Np1 -i ../0030-dont_use_la_files_for_opening_plugins.patch
+ patch -Np1 -i ../CVE-2013-4122.patch
+ patch -Np0 -i ../cyrus-sasl-sql.patch
+ patch -Np1 -i ../cyrus-sasl-gssapi.patch
+ patch -Np1 -i ../cyrus-sasl-2.1.27-openssl-1.1.0.patch
+ patch -Np1 -i ../fix-pkgconfig.patch
+
+ sed -e 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/' -e 's/libmysqlclient.a/libmysqlclient.so/' -i configure.in
+}
build() {
- cd "${srcdir}/cyrus-sasl-${pkgver}"
- patch -Np1 -i "${srcdir}/cyrus-sasl-2.1.19-checkpw.c.patch"
- patch -Np1 -i "${srcdir}/cyrus-sasl-2.1.22-crypt.patch"
- patch -Np1 -i "${srcdir}/cyrus-sasl-2.1.22-qa.patch"
- patch -Np1 -i "${srcdir}/cyrus-sasl-2.1.22-automake-1.10.patch"
- patch -Np0 -i "${srcdir}/cyrus-sasl-2.1.23-authd-fix.patch"
- patch -Np1 -i "${srcdir}/0003_saslauthd_mdoc.patch"
- patch -Np1 -i "${srcdir}/0010_maintainer_mode.patch"
- patch -Np1 -i "${srcdir}/0011_saslauthd_ac_prog_libtool.patch"
- patch -Np1 -i "${srcdir}/0012_xopen_crypt_prototype.patch"
- patch -Np1 -i "${srcdir}/0016_pid_file_lock_creation_mask.patch"
- patch -Np1 -i "${srcdir}/0018_auth_rimap_quotes.patch"
- patch -Np1 -i "${srcdir}/0019_ldap_deprecated.patch"
- patch -Np1 -i "${srcdir}/0022_gcc4.4_preprocessor_syntax.patch"
- patch -Np1 -i "${srcdir}/0025_ld_as_needed.patch"
- patch -Np1 -i "${srcdir}/0026_drop_krb5support_dependency.patch"
- patch -Np1 -i "${srcdir}/0027_db5_support.patch"
- patch -Np1 -i "${srcdir}/0030-dont_use_la_files_for_opening_plugins.patch"
+ export CFLAGS="$CFLAGS -fPIC"
+ cd cyrus-sasl-$pkgver
rm -f config/config.guess config/config.sub
rm -f config/ltconfig config/ltmain.sh config/libtool.m4
@@ -77,7 +91,7 @@ build() {
popd
./configure --prefix=/usr \
- --sbin=/usr/bin \
+ --sbin=/usr/bin \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--disable-static \
@@ -98,11 +112,15 @@ build() {
--enable-ntlm \
--disable-passdss \
--enable-sql \
+ --with-mysql=/usr \
+ --with-pgsql=/usr/lib \
+ --with-sqlite3=/usr/lib \
--enable-ldapdb \
--disable-macos-framework \
--with-pam \
--with-saslauthd=/var/run/saslauthd \
--with-ldap \
+ --with-dblib=gdbm \
--with-configdir=/etc/sasl2:/etc/sasl:/usr/lib/sasl2 \
--sysconfdir=/etc \
--with-devrandom=/dev/urandom
@@ -114,7 +132,8 @@ package_libsasl() {
depends=('openssl')
conflicts=('cyrus-sasl-plugins')
- cd "${srcdir}/cyrus-sasl-${pkgver}"
+ cd cyrus-sasl-$pkgver
+ make DESTDIR="$pkgdir" install-pkgconfigDATA
for dir in include lib sasldb plugins utils; do
pushd ${dir}
make DESTDIR="${pkgdir}" install
@@ -123,21 +142,21 @@ package_libsasl() {
rm -f "${pkgdir}"/usr/lib/sasl2/libsql.so*
rm -f "${pkgdir}"/usr/lib/sasl2/libgssapiv2.so*
rm -f "${pkgdir}"/usr/lib/sasl2/libldapdb.so*
+ rm -f "${pkgdir}"/usr/lib/sasl2/libgs2.so*
install -m755 -d "${pkgdir}/usr/share/licenses/libsasl"
install -m644 COPYING "${pkgdir}/usr/share/licenses/libsasl/"
}
package_cyrus-sasl() {
- depends=("libsasl=${pkgver}-${pkgrel}")
+ depends=("libsasl=${pkgver}" 'krb5')
pkgdesc="Cyrus saslauthd SASL authentication daemon"
backup=('etc/conf.d/saslauthd')
- cd "${srcdir}/cyrus-sasl-${pkgver}/saslauthd"
+ cd cyrus-sasl-$pkgver/saslauthd
make DESTDIR="${pkgdir}" install
- install -m755 -d "${pkgdir}/etc/rc.d"
- install -m755 -d "${pkgdir}/etc/conf.d"
- install -m755 "${srcdir}/saslauthd" "${pkgdir}/etc/rc.d/"
- install -m644 "${srcdir}/saslauthd.conf.d" "${pkgdir}/etc/conf.d/saslauthd"
+ install -Dm644 "${srcdir}/saslauthd.conf.d" "${pkgdir}/etc/conf.d/saslauthd"
+ install -Dm644 "${srcdir}/saslauthd.service" "${pkgdir}/usr/lib/systemd/system/saslauthd.service"
+ install -Dm644 "${srcdir}/tmpfiles.conf" "${pkgdir}/usr/lib/tmpfiles.d/saslauthd.conf"
install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl"
ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl/"
@@ -145,12 +164,13 @@ package_cyrus-sasl() {
package_cyrus-sasl-gssapi() {
pkgdesc="GSSAPI authentication mechanism for Cyrus SASL"
- depends=("libsasl=${pkgver}-${pkgrel}" 'krb5')
+ depends=("libsasl=${pkgver}" 'krb5')
replaces=('cyrus-sasl-plugins')
- cd "${srcdir}/cyrus-sasl-${pkgver}/plugins"
+ cd cyrus-sasl-$pkgver/plugins
install -m755 -d "${pkgdir}/usr/lib/sasl2"
cp -a .libs/libgssapiv2.so* "${pkgdir}/usr/lib/sasl2/"
+ cp -a .libs/libgs2.so* "${pkgdir}/usr/lib/sasl2/"
install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl-gssapi"
ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl-gssapi/"
@@ -158,10 +178,10 @@ package_cyrus-sasl-gssapi() {
package_cyrus-sasl-ldap() {
pkgdesc="ldapdb auxprop module for Cyrus SASL"
- depends=("libsasl=${pkgver}-${pkgrel}" 'libldap')
+ depends=("libsasl=${pkgver}" 'libldap')
replaces=('cyrus-sasl-plugins')
- cd "${srcdir}/cyrus-sasl-${pkgver}/plugins"
+ cd cyrus-sasl-$pkgver/plugins
install -m755 -d "${pkgdir}/usr/lib/sasl2"
cp -a .libs/libldapdb.so* "${pkgdir}/usr/lib/sasl2/"
@@ -171,33 +191,13 @@ package_cyrus-sasl-ldap() {
package_cyrus-sasl-sql() {
pkgdesc="SQL auxprop module for Cyrus SASL"
- depends=("libsasl=${pkgver}-${pkgrel}" 'postgresql-libs' 'libmysqlclient')
+ depends=("libsasl=${pkgver}" 'postgresql-libs' 'libmariadbclient' 'sqlite')
replaces=('cyrus-sasl-plugins')
- cd "${srcdir}/cyrus-sasl-${pkgver}/plugins"
+ cd cyrus-sasl-$pkgver/plugins
install -m755 -d "${pkgdir}/usr/lib/sasl2"
cp -a .libs/libsql.so* "${pkgdir}/usr/lib/sasl2/"
install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl-sql"
ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl-sql/"
}
-md5sums=('2eb0e48106f0e9cd8001e654f267ecbc'
- 'e27ddff076342e7a3041c4759817d04b'
- 'd7e6886e88af04d05f3dec7f0a59ccf7'
- '79b8a5e8689989e2afd4b7bda595a7b1'
- 'f4131b077ddb5240b375d749162f1b7a'
- 'c7ad2c70c1ef814eb4b119f316c064f2'
- 'caeeac3feba19cbbd36e7345cc805600'
- 'f45d8b60e8f74dd7f7c2ec1665fa602a'
- '9d93880514cb5ff5da969f1ceb64a661'
- 'dfdc052a7e678db9f687482c5d52f34e'
- '4a09f6b24b91f8450892a78e378860da'
- '213abe7c5dfe0d7f446992787da1e780'
- '5a0321177ad30cb5518c8b6812e3961a'
- '0c965748970eea29fa295524821d43f0'
- '62bf892fe4d1df41ff748e91a1afaf67'
- 'b7848957357e7c02d6490102be496bf9'
- 'd86a5aa2e3b5b7c1bad6f8b548b7ea36'
- '8e7106f32e495e9ade69014fd1b3352a'
- '49219af5641150edec288a3fdb65e7c1'
- '75542f613185d5a90520ad0d7d926a20')
diff --git a/abs/core/libsasl/cyrus-sasl-2.1.19-checkpw.c.patch b/abs/core/libsasl/cyrus-sasl-2.1.19-checkpw.c.patch
deleted file mode 100644
index f7bf44b..0000000
--- a/abs/core/libsasl/cyrus-sasl-2.1.19-checkpw.c.patch
+++ /dev/null
@@ -1,170 +0,0 @@
-diff -ur ../cyrus-sasl-2.1.19.orig/lib/Makefile.in ./lib/Makefile.in
---- ../cyrus-sasl-2.1.19.orig/lib/Makefile.in 2004-07-02 21:40:15.000000000 +0200
-+++ ./lib/Makefile.in 2004-09-07 13:21:22.746680576 +0200
-@@ -120,7 +120,7 @@
- JAVA_TRUE = @JAVA_TRUE@
- LDFLAGS = @LDFLAGS@
- LIBOBJS = @LIBOBJS@
--LIBS = @LIBS@
-+LIBS = -lcrypt @LIBS@
- LIBTOOL = @LIBTOOL@
- LIB_CRYPT = @LIB_CRYPT@
- LIB_DES = @LIB_DES@
-diff -ur ../cyrus-sasl-2.1.19.orig/lib/checkpw.c ./lib/checkpw.c
---- ../cyrus-sasl-2.1.19.orig/lib/checkpw.c 2004-03-17 14:58:13.000000000 +0100
-+++ ./lib/checkpw.c 2004-09-07 13:21:12.645916147 +0200
-@@ -94,6 +94,23 @@
- # endif
- #endif
-
-+/******************************
-+ * crypt(3) patch start *
-+ ******************************/
-+char *crypt(const char *key, const char *salt);
-+
-+/* cleartext password formats */
-+#define PASSWORD_FORMAT_CLEARTEXT 1
-+#define PASSWORD_FORMAT_CRYPT 2
-+#define PASSWORD_FORMAT_CRYPTTRAD 3
-+#define PASSWORD_SALT_BUF_LEN 22
-+
-+/* weeds out crypt(3) password's salt */
-+int _sasl_get_salt (char *dest, char *src, int format);
-+
-+/******************************
-+ * crypt(3) patch stop *
-+ ******************************/
-
- /* we store the following secret to check plaintext passwords:
- *
-@@ -143,7 +160,51 @@
- "*cmusaslsecretPLAIN",
- NULL };
- struct propval auxprop_values[3];
--
-+
-+ /******************************
-+ * crypt(3) patch start *
-+ * for password format check *
-+ ******************************/
-+ sasl_getopt_t *getopt;
-+ void *context;
-+ const char *p = NULL;
-+ /**
-+ * MD5: 12 char salt
-+ * BLOWFISH: 16 char salt
-+ */
-+ char salt[PASSWORD_SALT_BUF_LEN];
-+ int password_format;
-+
-+ /* get password format from auxprop configuration */
-+ if (_sasl_getcallback(conn, SASL_CB_GETOPT, &getopt, &context) == SASL_OK) {
-+ getopt(context, NULL, "password_format", &p, NULL);
-+ }
-+
-+ /* set password format */
-+ if (p) {
-+ /*
-+ memset(pass_format_str, '\0', PASSWORD_FORMAT_STR_LEN);
-+ strncpy(pass_format_str, p, (PASSWORD_FORMAT_STR_LEN - 1));
-+ */
-+ /* modern, modular crypt(3) */
-+ if (strncmp(p, "crypt", 11) == 0)
-+ password_format = PASSWORD_FORMAT_CRYPT;
-+ /* traditional crypt(3) */
-+ else if (strncmp(p, "crypt_trad", 11) == 0)
-+ password_format = PASSWORD_FORMAT_CRYPTTRAD;
-+ /* cleartext password */
-+ else
-+ password_format = PASSWORD_FORMAT_CLEARTEXT;
-+ } else {
-+ /* cleartext password */
-+ password_format = PASSWORD_FORMAT_CLEARTEXT;
-+ }
-+
-+ /******************************
-+ * crypt(3) patch stop *
-+ * for password format check *
-+ ******************************/
-+
- if (!conn || !userstr)
- return SASL_BADPARAM;
-
-@@ -180,14 +241,31 @@
- goto done;
- }
-
-- /* At the point this has been called, the username has been canonified
-- * and we've done the auxprop lookup. This should be easy. */
-- if(auxprop_values[0].name
-- && auxprop_values[0].values
-- && auxprop_values[0].values[0]
-- && !strcmp(auxprop_values[0].values[0], passwd)) {
-- /* We have a plaintext version and it matched! */
-- return SASL_OK;
-+
-+ /******************************
-+ * crypt(3) patch start *
-+ ******************************/
-+
-+ /* get salt */
-+ _sasl_get_salt(salt, (char *) auxprop_values[0].values[0], password_format);
-+
-+ /* crypt(3)-ed password? */
-+ if (password_format != PASSWORD_FORMAT_CLEARTEXT) {
-+ /* compare password */
-+ if (auxprop_values[0].name && auxprop_values[0].values && auxprop_values[0].values[0] && strcmp(crypt(passwd, salt), auxprop_values[0].values[0]) == 0)
-+ return SASL_OK;
-+ else
-+ ret = SASL_BADAUTH;
-+ }
-+ else if (password_format == PASSWORD_FORMAT_CLEARTEXT) {
-+ /* compare passwords */
-+ if (auxprop_values[0].name && auxprop_values[0].values && auxprop_values[0].values[0] && strcmp(auxprop_values[0].values[0], passwd) == 0)
-+ return SASL_OK;
-+ else
-+ ret = SASL_BADAUTH;
-+ /******************************
-+ * crypt(3) patch stop *
-+ ******************************/
- } else if(auxprop_values[1].name
- && auxprop_values[1].values
- && auxprop_values[1].values[0]) {
-@@ -975,3 +1053,37 @@
- #endif
- { NULL, NULL }
- };
-+
-+/* weeds out crypt(3) password's salt */
-+int _sasl_get_salt (char *dest, char *src, int format) {
-+ int num; /* how many characters is salt long? */
-+ switch (format) {
-+ case PASSWORD_FORMAT_CRYPT:
-+ /* md5 crypt */
-+ if (src[1] == '1')
-+ num = 12;
-+ /* blowfish crypt */
-+ else if (src[1] == '2')
-+ num = (src[1] == '2' && src[2] == 'a') ? 17 : 16;
-+ /* traditional crypt */
-+ else
-+ num = 2;
-+ break;
-+
-+ case PASSWORD_FORMAT_CRYPTTRAD:
-+ num = 2;
-+ break;
-+
-+ default:
-+ return 1;
-+ }
-+
-+ /* destroy destination */
-+ memset(dest, '\0', (num + 1));
-+
-+ /* copy salt to destination */
-+ strncpy(dest, src, num);
-+
-+ return 1;
-+}
-+
diff --git a/abs/core/libsasl/cyrus-sasl-2.1.22-automake-1.10.patch b/abs/core/libsasl/cyrus-sasl-2.1.22-automake-1.10.patch
deleted file mode 100644
index 8cd71c0..0000000
--- a/abs/core/libsasl/cyrus-sasl-2.1.22-automake-1.10.patch
+++ /dev/null
@@ -1,94 +0,0 @@
-Re-merged patch by Robert Scheck <redhat@linuxnetz.de> for cyrus-sasl >= 2.1.22, which was
-originally written by Jacek Konieczny <jajcus@pld-linux.org> and makes cyrus-sasl building
-using automake 1.10.
-
---- cyrus-sasl-2.1.22/plugins/Makefile.am 2006-05-17 18:46:16.000000000 +0200
-+++ cyrus-sasl-2.1.22/plugins/Makefile.am.am110 2007-02-16 15:42:07.000000000 +0100
-@@ -82,73 +82,73 @@
- libntlm.la libpassdss.la libsasldb.la libsql.la libldapdb.la
-
- libplain_la_SOURCES = plain.c plain_init.c $(common_sources)
--libplain_la_LDFLAGS = -version-info $(plain_version)
-+libplain_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(plain_version)
- libplain_la_DEPENDENCIES = $(COMPAT_OBJS)
- libplain_la_LIBADD = $(PLAIN_LIBS) $(COMPAT_OBJS)
-
- libanonymous_la_SOURCES = anonymous.c anonymous_init.c $(common_sources)
--libanonymous_la_LDFLAGS = -version-info $(anonymous_version)
-+libanonymous_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(anonymous_version)
- libanonymous_la_DEPENDENCIES = $(COMPAT_OBJS)
- libanonymous_la_LIBADD = $(COMPAT_OBJS)
-
- libkerberos4_la_SOURCES = kerberos4.c kerberos4_init.c $(common_sources)
--libkerberos4_la_LDFLAGS = -version-info $(kerberos4_version)
-+libkerberos4_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(kerberos4_version)
- libkerberos4_la_DEPENDENCIES = $(COMPAT_OBJS)
- libkerberos4_la_LIBADD = $(SASL_KRB_LIB) $(LIB_SOCKET) $(COMPAT_OBJS)
-
- libgssapiv2_la_SOURCES = gssapi.c gssapiv2_init.c $(common_sources)
--libgssapiv2_la_LDFLAGS = -version-info $(gssapiv2_version)
-+libgssapiv2_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(gssapiv2_version)
- libgssapiv2_la_DEPENDENCIES = $(COMPAT_OBJS)
- libgssapiv2_la_LIBADD = $(GSSAPIBASE_LIBS) $(GSSAPI_LIBS) $(LIB_SOCKET) $(COMPAT_OBJS)
-
- libcrammd5_la_SOURCES = cram.c crammd5_init.c $(common_sources)
--libcrammd5_la_LDFLAGS = -version-info $(crammd5_version)
-+libcrammd5_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(crammd5_version)
- libcrammd5_la_DEPENDENCIES = $(COMPAT_OBJS)
- libcrammd5_la_LIBADD = $(COMPAT_OBJS)
-
- libdigestmd5_la_SOURCES = digestmd5.c digestmd5_init.c $(common_sources)
--libdigestmd5_la_LDFLAGS = -version-info $(digestmd5_version)
-+libdigestmd5_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(digestmd5_version)
- libdigestmd5_la_DEPENDENCIES = $(COMPAT_OBJS)
- libdigestmd5_la_LIBADD = $(LIB_DES) $(LIB_SOCKET) $(COMPAT_OBJS)
-
- liblogin_la_SOURCES = login.c login_init.c $(common_sources)
--liblogin_la_LDFLAGS = -version-info $(login_version)
-+liblogin_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(login_version)
- liblogin_la_DEPENDENCIES = $(COMPAT_OBJS)
- liblogin_la_LIBADD = $(PLAIN_LIBS) $(COMPAT_OBJS)
-
- libsrp_la_SOURCES = srp.c srp_init.c $(common_sources)
--libsrp_la_LDFLAGS = -version-info $(srp_version)
-+libsrp_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(srp_version)
- libsrp_la_DEPENDENCIES = $(COMPAT_OBJS)
- libsrp_la_LIBADD = $(SRP_LIBS) $(COMPAT_OBJS)
-
- libotp_la_SOURCES = otp.c otp_init.c otp.h $(common_sources)
--libotp_la_LDFLAGS = -version-info $(otp_version)
-+libotp_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(otp_version)
- libotp_la_DEPENDENCIES = $(COMPAT_OBJS)
- libotp_la_LIBADD = $(OTP_LIBS) $(COMPAT_OBJS)
-
- libntlm_la_SOURCES = ntlm.c ntlm_init.c $(common_sources)
--libntlm_la_LDFLAGS = -version-info $(ntlm_version)
-+libntlm_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(ntlm_version)
- libntlm_la_DEPENDENCIES = $(COMPAT_OBJS)
- libntlm_la_LIBADD = $(NTLM_LIBS) $(COMPAT_OBJS)
-
- libpassdss_la_SOURCES = passdss.c passdss_init.c $(common_sources)
--libpassdss_la_LDFLAGS = -version-info $(passdss_version)
-+libpassdss_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(passdss_version)
- libpassdss_la_DEPENDENCIES = $(COMPAT_OBJS)
- libpassdss_la_LIBADD = $(PASSDSS_LIBS) $(COMPAT_OBJS)
-
- # Auxprop Plugins
- libsasldb_la_SOURCES = sasldb.c sasldb_init.c $(common_sources)
--libsasldb_la_LDFLAGS = -version-info $(sasldb_version)
-+libsasldb_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(sasldb_version)
- libsasldb_la_DEPENDENCIES = $(COMPAT_OBJS)
- libsasldb_la_LIBADD = ../sasldb/libsasldb.la $(SASL_DB_LIB) $(COMPAT_OBJS)
-
- libldapdb_la_SOURCES = ldapdb.c ldapdb_init.c $(common_sources)
--libldapdb_la_LDFLAGS = $(LIB_LDAP) -version-info $(ldapdb_version)
-+libldapdb_la_LDFLAGS = $(AM_LDFLAGS) $(LIB_LDAP) -version-info $(ldapdb_version)
- libldapdb_la_DEPENDENCIES = $(COMPAT_OBJS)
- libldapdb_la_LIBADD = $(COMPAT_OBJS)
-
- libsql_la_SOURCES = sql.c sql_init.c $(common_sources)
--libsql_la_LDFLAGS = $(LIB_MYSQL) $(LIB_PGSQL) $(LIB_SQLITE) -version-info $(sql_version)
-+libsql_la_LDFLAGS = $(AM_LDFLAGS) $(LIB_MYSQL) $(LIB_PGSQL) $(LIB_SQLITE) -version-info $(sql_version)
- libsql_la_DEPENDENCIES = $(COMPAT_OBJS)
- libsql_la_LIBADD = $(COMPAT_OBJS)
-
diff --git a/abs/core/libsasl/cyrus-sasl-2.1.22-crypt.patch b/abs/core/libsasl/cyrus-sasl-2.1.22-crypt.patch
deleted file mode 100644
index fd35632..0000000
--- a/abs/core/libsasl/cyrus-sasl-2.1.22-crypt.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-http://bugs.gentoo.org/152544
-
---- cyrus-sasl-2.1.22/lib/Makefile.am
-+++ cyrus-sasl-2.1.22/lib/Makefile.am
-@@ -45,6 +45,7 @@ sasl_version = 2:22:0
-
- INCLUDES=-I$(top_srcdir)/include -I$(top_srcdir)/plugins -I$(top_builddir)/include -I$(top_srcdir)/sasldb
-
-+AM_CFLAGS = -fPIC
- EXTRA_DIST = windlopen.c staticopen.h NTMakefile
- EXTRA_LIBRARIES = libsasl2.a
- noinst_LIBRARIES = @SASL_STATIC_LIBS@
---- cyrus-sasl-2.1.22/plugins/Makefile.am
-+++ cyrus-sasl-2.1.22/plugins/Makefile.am
-@@ -63,6 +63,7 @@ srp_version = 2:22:0
-
- INCLUDES=-I$(top_srcdir)/include -I$(top_srcdir)/lib -I$(top_srcdir)/sasldb -I$(top_builddir)/include
- AM_LDFLAGS = -module -export-dynamic -rpath $(plugindir)
-+AM_CFLAGS = -fPIC
-
- COMPAT_OBJS = @LTGETADDRINFOOBJS@ @LTGETNAMEINFOOBJS@ @LTSNPRINTFOBJS@
-
---- cyrus-sasl-2.1.22/sasldb/Makefile.am
-+++ cyrus-sasl-2.1.22/sasldb/Makefile.am
-@@ -48,6 +48,7 @@ INCLUDES=-I$(top_srcdir)/include -I$(top
-
- extra_common_sources = db_none.c db_ndbm.c db_gdbm.c db_berkeley.c
-
-+AM_CFLAGS = -fPIC
- EXTRA_DIST = NTMakefile
-
- noinst_LTLIBRARIES = libsasldb.la
---- cyrus-sasl-2.1.22/utils/Makefile.am
-+++ cyrus-sasl-2.1.22/utils/Makefile.am
-@@ -42,7 +42,7 @@
- #
- ################################################################
-
--all_sasl_libs = ../lib/libsasl2.la $(SASL_DB_LIB) $(LIB_SOCKET)
-+all_sasl_libs = ../lib/libsasl2.la $(SASL_DB_LIB) $(LIB_SOCKET) $(LIB_CRYPT)
- all_sasl_static_libs = ../lib/.libs/libsasl2.a $(SASL_DB_LIB) $(LIB_SOCKET) $(GSSAPIBASE_LIBS) $(GSSAPI_LIBS) $(SASL_KRB_LIB) $(LIB_DES) $(PLAIN_LIBS) $(SRP_LIBS) $(LIB_MYSQL) $(LIB_PGSQL) $(LIB_SQLITE)
-
- sbin_PROGRAMS = @SASL_DB_UTILS@ @SMTPTEST_PROGRAM@ pluginviewer
---- cyrus-sasl-2.1.22/sample/Makefile.am
-+++ cyrus-sasl-2.1.22/sample/Makefile.am
-@@ -54,10 +54,10 @@ sample_server_SOURCES = sample-server.c
- server_SOURCES = server.c common.c common.h
- client_SOURCES = client.c common.c common.h
-
--server_LDADD = ../lib/libsasl2.la $(LIB_SOCKET)
--client_LDADD = ../lib/libsasl2.la $(LIB_SOCKET)
-+server_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) $(LIB_CRYPT)
-+client_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) $(LIB_CRYPT)
-
--sample_client_LDADD = ../lib/libsasl2.la $(LIB_SOCKET)
--sample_server_LDADD = ../lib/libsasl2.la $(LIB_SOCKET)
-+sample_client_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) $(LIB_CRYPT)
-+sample_server_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) $(LIB_CRYPT)
-
- EXTRA_DIST = NTMakefile
---- cyrus-sasl-2.1.22/lib/Makefile.am
-+++ cyrus-sasl-2.1.22/lib/Makefile.am
-@@ -63,7 +63,7 @@ lib_LTLIBRARIES = libsasl2.la
- libsasl2_la_SOURCES = $(common_sources) $(common_headers)
- libsasl2_la_LDFLAGS = -version-info $(sasl_version)
- libsasl2_la_DEPENDENCIES = $(LTLIBOBJS)
--libsasl2_la_LIBADD = $(LTLIBOBJS) $(SASL_DL_LIB) $(LIB_SOCKET) $(LIB_DOOR)
-+libsasl2_la_LIBADD = $(LTLIBOBJS) $(SASL_DL_LIB) $(LIB_SOCKET) $(LIB_DOOR) $(LIB_CRYPT)
-
- if MACOSX
- framedir = /Library/Frameworks/SASL2.framework
diff --git a/abs/core/libsasl/cyrus-sasl-2.1.23-authd-fix.patch b/abs/core/libsasl/cyrus-sasl-2.1.23-authd-fix.patch
deleted file mode 100644
index f5f372d..0000000
--- a/abs/core/libsasl/cyrus-sasl-2.1.23-authd-fix.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-fix warnings:
-
-auth_sasldb.c: In function ‘auth_sasldb’:
-auth_sasldb.c:144: warning: implicit declaration of function ‘gethostname’
-
-auth_sasldb.c:153: warning: passing argument 8 of ‘_sasldb_getdata’ from incompatible pointer type
-../sasldb/sasldb.h:60: note: expected ‘size_t *’ but argument is of type ‘int *’
-
---- saslauthd/auth_sasldb.c
-+++ saslauthd/auth_sasldb.c
-@@ -41,6 +41,7 @@
- #include <string.h>
- #include <stdlib.h>
- #include <pwd.h>
-+#include <unistd.h>
- /* END PUBLIC DEPENDENCIES */
-
- #define RETURN(x) return strdup(x)
-@@ -131,7 +132,8 @@
- /* VARIABLES */
- char pw[1024]; /* pointer to passwd file entry */
- sasl_utils_t utils;
-- int ret, outsize;
-+ int ret;
-+ size_t outsize;
- const char *use_realm;
- char realm_buf[MAXHOSTNAMELEN];
- /* END VARIABLES */
diff --git a/abs/core/libsasl/cyrus-sasl-2.1.26-size_t.patch b/abs/core/libsasl/cyrus-sasl-2.1.26-size_t.patch
new file mode 100644
index 0000000..3a4820f
--- /dev/null
+++ b/abs/core/libsasl/cyrus-sasl-2.1.26-size_t.patch
@@ -0,0 +1,11 @@
+--- cyrus-sasl-2.1.26/include/sasl.h 2012-10-12 09:05:48.000000000 -0500
++++ cyrus-sasl-2.1.26/include/sasl.h 2013-01-31 13:21:04.007739327 -0600
+@@ -223,6 +223,8 @@ extern "C" {
+ * they must be called before all other SASL functions:
+ */
+
++#include <sys/types.h>
++
+ /* memory allocation functions which may optionally be replaced:
+ */
+ typedef void *sasl_malloc_t(size_t);
diff --git a/abs/core/libsasl/cyrus-sasl-2.1.27-openssl-1.1.0.patch b/abs/core/libsasl/cyrus-sasl-2.1.27-openssl-1.1.0.patch
new file mode 100644
index 0000000..c02a214
--- /dev/null
+++ b/abs/core/libsasl/cyrus-sasl-2.1.27-openssl-1.1.0.patch
@@ -0,0 +1,435 @@
+diff -up cyrus-sasl-2.1.26/plugins/ntlm.c.openssl110 cyrus-sasl-2.1.26/plugins/ntlm.c
+--- cyrus-sasl-2.1.26/plugins/ntlm.c.openssl110 2012-01-28 00:31:36.000000000 +0100
++++ cyrus-sasl-2.1.26/plugins/ntlm.c 2016-11-07 16:15:57.498259304 +0100
+@@ -417,6 +417,29 @@ static unsigned char *P24(unsigned char
+ return P24;
+ }
+
++static HMAC_CTX *_plug_HMAC_CTX_new(const sasl_utils_t *utils)
++{
++ utils->log(NULL, SASL_LOG_DEBUG, "_plug_HMAC_CTX_new()");
++
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++ return HMAC_CTX_new();
++#else
++ return utils->malloc(sizeof(HMAC_CTX));
++#endif
++}
++
++static void _plug_HMAC_CTX_free(HMAC_CTX *ctx, const sasl_utils_t *utils)
++{
++ utils->log(NULL, SASL_LOG_DEBUG, "_plug_HMAC_CTX_free()");
++
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++ HMAC_CTX_free(ctx);
++#else
++ HMAC_cleanup(ctx);
++ utils->free(ctx);
++#endif
++}
++
+ static unsigned char *V2(unsigned char *V2, sasl_secret_t *passwd,
+ const char *authid, const char *target,
+ const unsigned char *challenge,
+@@ -424,7 +447,7 @@ static unsigned char *V2(unsigned char *
+ const sasl_utils_t *utils,
+ char **buf, unsigned *buflen, int *result)
+ {
+- HMAC_CTX ctx;
++ HMAC_CTX *ctx = NULL;
+ unsigned char hash[EVP_MAX_MD_SIZE];
+ char *upper;
+ unsigned int len;
+@@ -435,6 +458,10 @@ static unsigned char *V2(unsigned char *
+ SETERROR(utils, "cannot allocate NTLMv2 hash");
+ *result = SASL_NOMEM;
+ }
++ else if ((ctx = _plug_HMAC_CTX_new(utils)) == NULL) {
++ SETERROR(utils, "cannot allocate HMAC CTX");
++ *result = SASL_NOMEM;
++ }
+ else {
+ /* NTLMv2hash = HMAC-MD5(NTLMhash, unicode(ucase(authid + domain))) */
+ P16_nt(hash, passwd, utils, buf, buflen, result);
+@@ -449,17 +476,18 @@ static unsigned char *V2(unsigned char *
+ HMAC(EVP_md5(), hash, MD4_DIGEST_LENGTH, *buf, 2 * len, hash, &len);
+
+ /* V2 = HMAC-MD5(NTLMv2hash, challenge + blob) + blob */
+- HMAC_Init(&ctx, hash, len, EVP_md5());
+- HMAC_Update(&ctx, challenge, NTLM_NONCE_LENGTH);
+- HMAC_Update(&ctx, blob, bloblen);
+- HMAC_Final(&ctx, V2, &len);
+- HMAC_cleanup(&ctx);
++ HMAC_Init_ex(ctx, hash, len, EVP_md5(), NULL);
++ HMAC_Update(ctx, challenge, NTLM_NONCE_LENGTH);
++ HMAC_Update(ctx, blob, bloblen);
++ HMAC_Final(ctx, V2, &len);
+
+ /* the blob is concatenated outside of this function */
+
+ *result = SASL_OK;
+ }
+
++ if (ctx) _plug_HMAC_CTX_free(ctx, utils);
++
+ return V2;
+ }
+
+diff -up cyrus-sasl-2.1.26/plugins/otp.c.openssl110 cyrus-sasl-2.1.26/plugins/otp.c
+--- cyrus-sasl-2.1.26/plugins/otp.c.openssl110 2012-10-12 16:05:48.000000000 +0200
++++ cyrus-sasl-2.1.26/plugins/otp.c 2016-11-07 16:13:54.374327601 +0100
+@@ -96,6 +96,28 @@ static algorithm_option_t algorithm_opti
+ {NULL, 0, NULL}
+ };
+
++static EVP_MD_CTX *_plug_EVP_MD_CTX_new(const sasl_utils_t *utils)
++{
++ utils->log(NULL, SASL_LOG_DEBUG, "_plug_EVP_MD_CTX_new()");
++
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++ return EVP_MD_CTX_new();
++#else
++ return utils->malloc(sizeof(EVP_MD_CTX));
++#endif
++}
++
++static void _plug_EVP_MD_CTX_free(EVP_MD_CTX *ctx, const sasl_utils_t *utils)
++{
++ utils->log(NULL, SASL_LOG_DEBUG, "_plug_EVP_MD_CTX_free()");
++
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++ EVP_MD_CTX_free(ctx);
++#else
++ utils->free(ctx);
++#endif
++}
++
+ /* Convert the binary data into ASCII hex */
+ void bin2hex(unsigned char *bin, int binlen, char *hex)
+ {
+@@ -116,17 +138,16 @@ void bin2hex(unsigned char *bin, int bin
+ * swabbing bytes if necessary.
+ */
+ static void otp_hash(const EVP_MD *md, char *in, size_t inlen,
+- unsigned char *out, int swab)
++ unsigned char *out, int swab, EVP_MD_CTX *mdctx)
+ {
+- EVP_MD_CTX mdctx;
+- char hash[EVP_MAX_MD_SIZE];
++ unsigned char hash[EVP_MAX_MD_SIZE];
+ unsigned int i;
+ int j;
+ unsigned hashlen;
+
+- EVP_DigestInit(&mdctx, md);
+- EVP_DigestUpdate(&mdctx, in, inlen);
+- EVP_DigestFinal(&mdctx, hash, &hashlen);
++ EVP_DigestInit(mdctx, md);
++ EVP_DigestUpdate(mdctx, in, inlen);
++ EVP_DigestFinal(mdctx, hash, &hashlen);
+
+ /* Fold the result into 64 bits */
+ for (i = OTP_HASH_SIZE; i < hashlen; i++) {
+@@ -149,7 +170,9 @@ static int generate_otp(const sasl_utils
+ char *secret, char *otp)
+ {
+ const EVP_MD *md;
+- char *key;
++ EVP_MD_CTX *mdctx = NULL;
++ char *key = NULL;
++ int r = SASL_OK;
+
+ if (!(md = EVP_get_digestbyname(alg->evp_name))) {
+ utils->seterror(utils->conn, 0,
+@@ -157,23 +180,32 @@ static int generate_otp(const sasl_utils
+ return SASL_FAIL;
+ }
+
++ if ((mdctx = _plug_EVP_MD_CTX_new(utils)) == NULL) {
++ SETERROR(utils, "cannot allocate MD CTX");
++ r = SASL_NOMEM;
++ goto done;
++ }
++
+ if ((key = utils->malloc(strlen(seed) + strlen(secret) + 1)) == NULL) {
+ SETERROR(utils, "cannot allocate OTP key");
+- return SASL_NOMEM;
++ r = SASL_NOMEM;
++ goto done;
+ }
+
+ /* initial step */
+ strcpy(key, seed);
+ strcat(key, secret);
+- otp_hash(md, key, strlen(key), otp, alg->swab);
++ otp_hash(md, key, strlen(key), otp, alg->swab, mdctx);
+
+ /* computation step */
+ while (seq-- > 0)
+- otp_hash(md, otp, OTP_HASH_SIZE, otp, alg->swab);
+-
+- utils->free(key);
++ otp_hash(md, otp, OTP_HASH_SIZE, otp, alg->swab, mdctx);
++
++ done:
++ if (key) utils->free(key);
++ if (mdctx) _plug_EVP_MD_CTX_free(mdctx, utils);
+
+- return SASL_OK;
++ return r;
+ }
+
+ static int parse_challenge(const sasl_utils_t *utils,
+@@ -693,7 +725,8 @@ static int strptrcasecmp(const void *arg
+
+ /* Convert the 6 words into binary data */
+ static int word2bin(const sasl_utils_t *utils,
+- char *words, unsigned char *bin, const EVP_MD *md)
++ char *words, unsigned char *bin, const EVP_MD *md,
++ EVP_MD_CTX *mdctx)
+ {
+ int i, j;
+ char *c, *word, buf[OTP_RESPONSE_MAX+1];
+@@ -752,13 +785,12 @@ static int word2bin(const sasl_utils_t *
+
+ /* alternate dictionary */
+ if (alt_dict) {
+- EVP_MD_CTX mdctx;
+- char hash[EVP_MAX_MD_SIZE];
+- int hashlen;
++ unsigned char hash[EVP_MAX_MD_SIZE];
++ unsigned hashlen;
+
+- EVP_DigestInit(&mdctx, md);
+- EVP_DigestUpdate(&mdctx, word, strlen(word));
+- EVP_DigestFinal(&mdctx, hash, &hashlen);
++ EVP_DigestInit(mdctx, md);
++ EVP_DigestUpdate(mdctx, word, strlen(word));
++ EVP_DigestFinal(mdctx, hash, &hashlen);
+
+ /* use lowest 11 bits */
+ x = ((hash[hashlen-2] & 0x7) << 8) | hash[hashlen-1];
+@@ -802,6 +834,7 @@ static int verify_response(server_contex
+ char *response)
+ {
+ const EVP_MD *md;
++ EVP_MD_CTX *mdctx = NULL;
+ char *c;
+ int do_init = 0;
+ unsigned char cur_otp[OTP_HASH_SIZE], prev_otp[OTP_HASH_SIZE];
+@@ -815,6 +848,11 @@ static int verify_response(server_contex
+ return SASL_FAIL;
+ }
+
++ if ((mdctx = _plug_EVP_MD_CTX_new(utils)) == NULL) {
++ SETERROR(utils, "cannot allocate MD CTX");
++ return SASL_NOMEM;
++ }
++
+ /* eat leading whitespace */
+ c = response;
+ while (isspace((int) *c)) c++;
+@@ -824,7 +862,7 @@ static int verify_response(server_contex
+ r = hex2bin(c+strlen(OTP_HEX_TYPE), cur_otp, OTP_HASH_SIZE);
+ }
+ else if (!strncasecmp(c, OTP_WORD_TYPE, strlen(OTP_WORD_TYPE))) {
+- r = word2bin(utils, c+strlen(OTP_WORD_TYPE), cur_otp, md);
++ r = word2bin(utils, c+strlen(OTP_WORD_TYPE), cur_otp, md, mdctx);
+ }
+ else if (!strncasecmp(c, OTP_INIT_HEX_TYPE,
+ strlen(OTP_INIT_HEX_TYPE))) {
+@@ -834,7 +872,7 @@ static int verify_response(server_contex
+ else if (!strncasecmp(c, OTP_INIT_WORD_TYPE,
+ strlen(OTP_INIT_WORD_TYPE))) {
+ do_init = 1;
+- r = word2bin(utils, c+strlen(OTP_INIT_WORD_TYPE), cur_otp, md);
++ r = word2bin(utils, c+strlen(OTP_INIT_WORD_TYPE), cur_otp, md, mdctx);
+ }
+ else {
+ SETERROR(utils, "unknown OTP extended response type");
+@@ -843,14 +881,15 @@ static int verify_response(server_contex
+ }
+ else {
+ /* standard response, try word first, and then hex */
+- r = word2bin(utils, c, cur_otp, md);
++ r = word2bin(utils, c, cur_otp, md, mdctx);
+ if (r != SASL_OK)
+ r = hex2bin(c, cur_otp, OTP_HASH_SIZE);
+ }
+
+ if (r == SASL_OK) {
+ /* do one more hash (previous otp) and compare to stored otp */
+- otp_hash(md, cur_otp, OTP_HASH_SIZE, prev_otp, text->alg->swab);
++ otp_hash(md, (char *) cur_otp, OTP_HASH_SIZE,
++ prev_otp, text->alg->swab, mdctx);
+
+ if (!memcmp(prev_otp, text->otp, OTP_HASH_SIZE)) {
+ /* update the secret with this seq/otp */
+@@ -879,23 +918,28 @@ static int verify_response(server_contex
+ *new_resp++ = '\0';
+ }
+
+- if (!(new_chal && new_resp))
+- return SASL_BADAUTH;
++ if (!(new_chal && new_resp)) {
++ r = SASL_BADAUTH;
++ goto done;
++ }
+
+ if ((r = parse_challenge(utils, new_chal, &alg, &seq, seed, 1))
+ != SASL_OK) {
+- return r;
++ goto done;
+ }
+
+- if (seq < 1 || !strcasecmp(seed, text->seed))
+- return SASL_BADAUTH;
++ if (seq < 1 || !strcasecmp(seed, text->seed)) {
++ r = SASL_BADAUTH;
++ goto done;
++ }
+
+ /* find the MDA */
+ if (!(md = EVP_get_digestbyname(alg->evp_name))) {
+ utils->seterror(utils->conn, 0,
+ "OTP algorithm %s is not available",
+ alg->evp_name);
+- return SASL_BADAUTH;
++ r = SASL_BADAUTH;
++ goto done;
+ }
+
+ if (!strncasecmp(c, OTP_INIT_HEX_TYPE, strlen(OTP_INIT_HEX_TYPE))) {
+@@ -903,7 +947,7 @@ static int verify_response(server_contex
+ }
+ else if (!strncasecmp(c, OTP_INIT_WORD_TYPE,
+ strlen(OTP_INIT_WORD_TYPE))) {
+- r = word2bin(utils, new_resp, new_otp, md);
++ r = word2bin(utils, new_resp, new_otp, md, mdctx);
+ }
+
+ if (r == SASL_OK) {
+@@ -914,7 +958,10 @@ static int verify_response(server_contex
+ memcpy(text->otp, new_otp, OTP_HASH_SIZE);
+ }
+ }
+-
++
++ done:
++ if (mdctx) _plug_EVP_MD_CTX_free(mdctx, utils);
++
+ return r;
+ }
+
+diff -up cyrus-sasl-2.1.26/saslauthd/lak.c.openssl110 cyrus-sasl-2.1.26/saslauthd/lak.c
+--- cyrus-sasl-2.1.26/saslauthd/lak.c.openssl110 2016-11-07 16:13:54.347327616 +0100
++++ cyrus-sasl-2.1.26/saslauthd/lak.c 2016-11-07 16:18:42.283167898 +0100
+@@ -61,6 +61,35 @@
+ #include <sasl.h>
+ #include "lak.h"
+
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
++static EVP_MD_CTX *EVP_MD_CTX_new(void)
++{
++ return EVP_MD_CTX_create();
++}
++static void EVP_MD_CTX_free(EVP_MD_CTX *ctx)
++{
++ if (ctx == NULL)
++ return;
++
++ EVP_MD_CTX_destroy(ctx);
++}
++
++static EVP_ENCODE_CTX *EVP_ENCODE_CTX_new(void)
++{
++ EVP_ENCODE_CTX *ctx = OPENSSL_malloc(sizeof(*ctx));
++
++ if (ctx != NULL) {
++ memset(ctx, 0, sizeof(*ctx));
++ }
++ return ctx;
++}
++static void EVP_ENCODE_CTX_free(EVP_ENCODE_CTX *ctx)
++{
++ OPENSSL_free(ctx);
++ return;
++}
++#endif
++
+ typedef struct lak_auth_method {
+ int method;
+ int (*check) (LAK *lak, const char *user, const char *service, const char *realm, const char *password) ;
+@@ -1720,20 +1749,28 @@ static int lak_base64_decode(
+
+ int rc, i, tlen = 0;
+ char *text;
+- EVP_ENCODE_CTX EVP_ctx;
++ EVP_ENCODE_CTX *enc_ctx = EVP_ENCODE_CTX_new();
+
+- text = (char *)malloc(((strlen(src)+3)/4 * 3) + 1);
+ if (text == NULL)
+ return LAK_NOMEM;
+
+- EVP_DecodeInit(&EVP_ctx);
+- rc = EVP_DecodeUpdate(&EVP_ctx, text, &i, (char *)src, strlen(src));
++ text = (char *)malloc(((strlen(src)+3)/4 * 3) + 1);
++ if (text == NULL) {
++ EVP_ENCODE_CTX_free(enc_ctx);
++ return LAK_NOMEM;
++ }
++
++ EVP_DecodeInit(enc_ctx);
++ rc = EVP_DecodeUpdate(enc_ctx, (unsigned char *) text, &i, (const unsigned char *)src, strlen(src));
+ if (rc < 0) {
++ EVP_ENCODE_CTX_free(enc_ctx);
+ free(text);
+ return LAK_FAIL;
+ }
+ tlen += i;
+- EVP_DecodeFinal(&EVP_ctx, text, &i);
++ EVP_DecodeFinal(enc_ctx, (unsigned char *) text, &i);
++
++ EVP_ENCODE_CTX_free(enc_ctx);
+
+ *ret = text;
+ if (rlen != NULL)
+@@ -1749,7 +1786,7 @@ static int lak_check_hashed(
+ {
+ int rc, clen;
+ LAK_HASH_ROCK *hrock = (LAK_HASH_ROCK *) rock;
+- EVP_MD_CTX mdctx;
++ EVP_MD_CTX *mdctx;
+ const EVP_MD *md;
+ unsigned char digest[EVP_MAX_MD_SIZE];
+ char *cred;
+@@ -1758,17 +1795,24 @@ static int lak_check_hashed(
+ if (!md)
+ return LAK_FAIL;
+
++ mdctx = EVP_MD_CTX_new();
++ if (!mdctx)
++ return LAK_NOMEM;
++
+ rc = lak_base64_decode(hash, &cred, &clen);
+- if (rc != LAK_OK)
++ if (rc != LAK_OK) {
++ EVP_MD_CTX_free(mdctx);
+ return rc;
++ }
+
+- EVP_DigestInit(&mdctx, md);
+- EVP_DigestUpdate(&mdctx, passwd, strlen(passwd));
++ EVP_DigestInit(mdctx, md);
++ EVP_DigestUpdate(mdctx, passwd, strlen(passwd));
+ if (hrock->salted) {
+- EVP_DigestUpdate(&mdctx, &cred[EVP_MD_size(md)],
++ EVP_DigestUpdate(mdctx, &cred[EVP_MD_size(md)],
+ clen - EVP_MD_size(md));
+ }
+- EVP_DigestFinal(&mdctx, digest, NULL);
++ EVP_DigestFinal(mdctx, digest, NULL);
++ EVP_MD_CTX_free(mdctx);
+
+ rc = memcmp((char *)cred, (char *)digest, EVP_MD_size(md));
+ free(cred);
diff --git a/abs/core/libsasl/cyrus-sasl-gssapi.patch b/abs/core/libsasl/cyrus-sasl-gssapi.patch
new file mode 100644
index 0000000..cfbcd8b
--- /dev/null
+++ b/abs/core/libsasl/cyrus-sasl-gssapi.patch
@@ -0,0 +1,16 @@
+diff -aur cyrus-sasl-2.1.26.orig/plugins/gssapi.c cyrus-sasl-2.1.26/plugins/gssapi.c
+--- cyrus-sasl-2.1.26.orig/plugins/gssapi.c 2016-06-10 13:55:25.985676293 -0700
++++ cyrus-sasl-2.1.26/plugins/gssapi.c 2016-06-10 13:58:00.687337430 -0700
+@@ -1583,10 +1583,10 @@
+ }
+
+ /* Setup req_flags properly */
+- req_flags = GSS_C_INTEG_FLAG;
++ req_flags = GSS_C_MUTUAL_FLAG | GSS_C_SEQUENCE_FLAG;
+ if (params->props.max_ssf > params->external_ssf) {
+ /* We are requesting a security layer */
+- req_flags |= GSS_C_MUTUAL_FLAG | GSS_C_SEQUENCE_FLAG;
++ req_flags |= GSS_C_INTEG_FLAG;
+ /* Any SSF bigger than 1 is confidentiality. */
+ /* Let's check if the client of the API requires confidentiality,
+ and it wasn't already provided by an external layer */
diff --git a/abs/core/libsasl/cyrus-sasl-sql.patch b/abs/core/libsasl/cyrus-sasl-sql.patch
new file mode 100644
index 0000000..2dcdad8
--- /dev/null
+++ b/abs/core/libsasl/cyrus-sasl-sql.patch
@@ -0,0 +1,39 @@
+--- configure.in 2012-10-12 16:05:48.000000000 +0200
++++ configure.in 2013-05-11 18:48:59.021848013 +0200
+@@ -861,9 +860,9 @@
+ notfound) AC_WARN([SQLite Library not found]); true;;
+ *)
+ if test -d ${with_sqlite}/lib; then
+- LIB_SQLITE="-L${with_sqlite}/lib -R${with_sqlite}/lib"
++ LIB_SQLITE="-L${with_sqlite}/lib"
+ else
+- LIB_SQLITE="-L${with_sqlite} -R${with_sqlite}"
++ LIB_SQLITE="-L${with_sqlite}"
+ fi
+
+ LIB_SQLITE_DIR=$LIB_SQLITE
+@@ -913,9 +912,9 @@
+ notfound) AC_WARN([SQLite3 Library not found]); true;;
+ *)
+ if test -d ${with_sqlite3}/lib; then
+- LIB_SQLITE3="-L${with_sqlite3}/lib -R${with_sqlite3}/lib"
++ LIB_SQLITE3="-L${with_sqlite3}/lib"
+ else
+- LIB_SQLITE3="-L${with_sqlite3} -R${with_sqlite3}"
++ LIB_SQLITE3="-L${with_sqlite3}"
+ fi
+
+ LIB_SQLITE3_DIR=$LIB_SQLITE3
+--- configure.in
++++ configure.in
+@@ -674,7 +674,9 @@
+ LIB_PGSQL_DIR=$LIB_PGSQL
+ LIB_PGSQL="$LIB_PGSQL -lpq"
+
+- if test -d ${with_pgsql}/include/pgsql; then
++ if test -d ${with_pgsql}/include/postgresql/pgsql; then
++ CPPFLAGS="${CPPFLAGS} -I${with_pgsql}/include/postgresql/pgsql"
++ elif test -d ${with_pgsql}/include/pgsql; then
+ CPPFLAGS="${CPPFLAGS} -I${with_pgsql}/include/pgsql"
+ elif test -d ${with_pgsql}/pgsql/include; then
+ CPPFLAGS="${CPPFLAGS} -I${with_pgsql}/pgsql/include"
diff --git a/abs/core/libsasl/fix-pkgconfig.patch b/abs/core/libsasl/fix-pkgconfig.patch
new file mode 100644
index 0000000..3b1c38e
--- /dev/null
+++ b/abs/core/libsasl/fix-pkgconfig.patch
@@ -0,0 +1,27 @@
+From 3f42b7d7f3ef52056c79b31529d1a5be695c74c1 Mon Sep 17 00:00:00 2001
+From: Ignacio Casal Quinteiro <icq@gnome.org>
+Date: Fri, 20 Nov 2015 11:16:31 +0100
+Subject: [PATCH] Fix up pkgconfig pc file
+
+---
+ libsasl2.pc.in | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/libsasl2.pc.in b/libsasl2.pc.in
+index 40bea37..ddad76d 100644
+--- a/libsasl2.pc.in
++++ b/libsasl2.pc.in
+@@ -1,8 +1,12 @@
+-libdir = @libdir@
++prefix=@prefix@
++exec_prefix=@exec_prefix@
++libdir=@libdir@
++includedir=@includedir@
+
+ Name: Cyrus SASL
+ Description: Cyrus SASL implementation
+ URL: http://www.cyrussasl.org/
+ Version: @VERSION@
++Cflags: -I${includedir}
+ Libs: -L${libdir} -lsasl2
+ Libs.private: @LIB_DOOR@ @SASL_DL_LIB@ @LIBS@
diff --git a/abs/core/libsasl/saslauthd b/abs/core/libsasl/saslauthd
deleted file mode 100644
index 6afafae..0000000
--- a/abs/core/libsasl/saslauthd
+++ /dev/null
@@ -1,49 +0,0 @@
-#!/bin/bash
-
-# source application-specific settings
-[ -f /etc/conf.d/saslauthd ] && . /etc/conf.d/saslauthd
-
-. /etc/rc.conf
-. /etc/rc.d/functions
-
-DAEMON_NAME="saslauthd"
-SASLAUTHD_BIN=/usr/sbin/saslauthd
-SASLAUTHD_RUN=/var/run/saslauthd
-SASLAUTHD_PID=$SASLAUTHD_RUN/saslauthd.pid
-
-case "$1" in
- start)
- stat_busy "Starting $DAEMON_NAME"
- [ ! -d /var/run/saslauthd ] && install -d /var/run/saslauthd
- if $SASLAUTHD_BIN $SASLAUTHD_OPTS >/dev/null; then
- add_daemon $DAEMON_NAME
- stat_done
- else
- stat_fail
- exit 1
- fi
- ;;
-
- stop)
- stat_busy "Stopping $DAEMON_NAME"
- [ -f $SASLAUTHD_PID ] && kill `cat $SASLAUTHD_PID` &>/dev/null
- if [ $? -gt 0 ]; then
- stat_fail
- exit 1
- else
- rm_daemon $DAEMON_NAME
- stat_done
- fi
- ;;
-
- restart)
- $0 stop
- sleep 1
- $0 start
- ;;
-
- *)
- echo "usage: $0 {start|stop|restart}"
-esac
-exit 0
-# vim: ts=2 sw=2 et ft=sh
diff --git a/abs/core/libsasl/saslauthd.service b/abs/core/libsasl/saslauthd.service
new file mode 100644
index 0000000..978dbd3
--- /dev/null
+++ b/abs/core/libsasl/saslauthd.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Cyrus SASL authentication daemon
+
+[Service]
+Type=forking
+EnvironmentFile=/etc/conf.d/saslauthd
+ExecStart=/usr/sbin/saslauthd $SASLAUTHD_OPTS
+PIDFile=/var/run/saslauthd/saslauthd.pid
+
+[Install]
+WantedBy=multi-user.target
diff --git a/abs/core/libsasl/tmpfiles.conf b/abs/core/libsasl/tmpfiles.conf
new file mode 100644
index 0000000..7258b1a
--- /dev/null
+++ b/abs/core/libsasl/tmpfiles.conf
@@ -0,0 +1 @@
+d /run/saslauthd 0755 root root - -
diff --git a/abs/core/libsm/PKGBUILD b/abs/core/libsm/PKGBUILD
index 945778b..14aab58 100644
--- a/abs/core/libsm/PKGBUILD
+++ b/abs/core/libsm/PKGBUILD
@@ -1,27 +1,26 @@
-# $Id: PKGBUILD 151850 2012-03-03 13:43:52Z andyrtr $
+# $Id$
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=libsm
-pkgver=1.2.1
-pkgrel=1
+pkgver=1.2.2
+pkgrel=2
pkgdesc="X11 Session Management library"
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('custom')
-url="http://xorg.freedesktop.org/"
-depends=('libice' 'util-linux-ng')
+url="https://xorg.freedesktop.org/"
+depends=('libice' 'util-linux')
makedepends=('xorg-util-macros' 'xtrans')
-options=('!libtool')
source=(${url}/releases/individual/lib/libSM-${pkgver}.tar.bz2)
-sha1sums=('8d354a165e330022ffd3606aba562b8c8154213d')
+sha256sums=('0baca8c9f5d934450a70896c4ad38d06475521255ca63b717a6510fdb6e287bd')
build() {
- cd "${srcdir}/libSM-${pkgver}"
+ cd libSM-${pkgver}
./configure --prefix=/usr --sysconfdir=/etc
make
}
package() {
- cd "${srcdir}/libSM-${pkgver}"
+ cd libSM-${pkgver}
make DESTDIR="${pkgdir}" install
install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/COPYING"
diff --git a/abs/core/libssh2/PKGBUILD b/abs/core/libssh2/PKGBUILD
index d9b7d82..695c448 100644
--- a/abs/core/libssh2/PKGBUILD
+++ b/abs/core/libssh2/PKGBUILD
@@ -6,18 +6,20 @@
# Contributor: ice-man <icemanf@gmail.com>
pkgname=libssh2
-pkgver=1.4.3
+pkgver=1.8.0
pkgrel=2
pkgdesc="A library implementing the SSH2 protocol as defined by Internet Drafts"
-url="http://www.libssh2.org/"
-arch=('i686' 'x86_64')
+url="https://www.libssh2.org/"
+arch=('x86_64')
license=('BSD')
depends=('openssl')
makedepends=('zlib')
provides=('libssh2.so')
-source=("http://www.libssh2.org/download/$pkgname-$pkgver.tar.gz"{,.asc})
-md5sums=('071004c60c5d6f90354ad1b701013a0b'
- 'bd01eca1e58c15233d69dae411dd2656')
+validpgpkeys=('27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2' # Daniel Stenberg
+ '914C533DF9B2ADA2204F586D78E11C6B279D5C91') # Daniel Stenberg (old key)
+source=("https://www.libssh2.org/download/$pkgname-$pkgver.tar.gz"{,.asc})
+md5sums=('3d1147cae66e2959ea5441b183de1b1c'
+ 'SKIP')
build() {
cd "$pkgname-$pkgver"
diff --git a/abs/core/libstatgrab/PKGBUILD b/abs/core/libstatgrab/PKGBUILD
index a531c26..14ca612 100644
--- a/abs/core/libstatgrab/PKGBUILD
+++ b/abs/core/libstatgrab/PKGBUILD
@@ -1,28 +1,30 @@
-# $Id: PKGBUILD 22416 2010-07-21 18:45:21Z jlichtblau $
+# $Id$
# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
# Contributor: Eric Belanger <eric@archlinux.org>
# Contributor: Hugo Ideler <hugoideler@dse.nl>
pkgname=libstatgrab
-pkgver=0.16
+pkgver=0.91
pkgrel=2
pkgdesc="A library that provides cross platform access to statistics about the system on which it's run"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://www.i-scream.org/libstatgrab"
license=('LGPL' 'GPL')
depends=('ncurses' 'perl')
-options=('!libtool' '!makeflags')
+options=('!makeflags')
changelog=$pkgname.changelog
-source=(http://www.mirrorservice.org/sites/ftp.i-scream.org/pub/i-scream/libstatgrab/$pkgname-$pkgver.tar.gz)
-md5sums=('77582438274679a9641d043ddcccdd4e')
+source=(http://www.mirrorservice.org/sites/ftp.i-scream.org/pub/i-scream/$pkgname/$pkgname-$pkgver.tar.gz)
+sha256sums=('03e9328e4857c2c9dcc1b0347724ae4cd741a72ee11acc991784e8ef45b7f1ab')
build() {
- cd ${srcdir}/$pkgname-$pkgver
+ cd "${srcdir}"/$pkgname-$pkgver
./configure --prefix=/usr
- make || return 1
+ make
}
+
package() {
- cd ${srcdir}/$pkgname-$pkgver
- make DESTDIR=${pkgdir} install
+ cd "${srcdir}"/$pkgname-$pkgver
+
+ make DESTDIR="${pkgdir}" install
}
diff --git a/abs/core/libstatgrab/libstatgrab.changelog b/abs/core/libstatgrab/libstatgrab.changelog
index b65782f..25a2ef3 100644
--- a/abs/core/libstatgrab/libstatgrab.changelog
+++ b/abs/core/libstatgrab/libstatgrab.changelog
@@ -1,3 +1,12 @@
+2014-11-06 Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
+ * libstatgrab 0.91-1
+
+2013-12-25 Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
+ * libstatgrab 0.17-4 static library removal
+
+2011-01-27 Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
+ * libstatgrab 0.17-1
+
2010-07-21 Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
* rebuild for correct package naming
@@ -6,3 +15,4 @@
* libstatgrab 0.16-1
* Upstream update
* Added ChangeLog
+
diff --git a/abs/core/libtasn1/PKGBUILD b/abs/core/libtasn1/PKGBUILD
index 0942ca5..d6ca02f 100644
--- a/abs/core/libtasn1/PKGBUILD
+++ b/abs/core/libtasn1/PKGBUILD
@@ -4,17 +4,16 @@
# Contributor: judd <jvinet@zeroflux.org>
pkgname=libtasn1
-pkgver=4.7
+pkgver=4.13
pkgrel=1
pkgdesc="The ASN.1 library used in GNUTLS"
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('GPL3' 'LGPL')
-url="http://www.gnu.org/software/libtasn1/"
-depends=('glibc' 'texinfo')
-install=libtasn1.install
-source=(http://ftp.gnu.org/gnu/libtasn1/${pkgname}-${pkgver}.tar.gz{,.sig})
-md5sums=('12d10ca4ae0a3b95f7aa06a076da39ec'
- 'SKIP')
+url="https://www.gnu.org/software/libtasn1/"
+depends=('glibc')
+source=(https://ftp.gnu.org/gnu/libtasn1/${pkgname}-${pkgver}.tar.gz{,.sig})
+sha256sums=('7e528e8c317ddd156230c4e31d082cd13e7ddeb7a54824be82632209550c8cca'
+ 'SKIP')
validpgpkeys=('1F42418905D8206AA754CCDC29EE58B996865171') #Nikos Mavrogiannopoulos <nmav@gnutls.org>
build() {
@@ -34,4 +33,5 @@ check() {
package() {
cd ${pkgname}-${pkgver}
make DESTDIR="${pkgdir}" install
+ make -C doc/reference DESTDIR="${pkgdir}" install-data-local
}
diff --git a/abs/core/libtasn1/libtasn1.install b/abs/core/libtasn1/libtasn1.install
deleted file mode 100644
index 2d1ecc0..0000000
--- a/abs/core/libtasn1/libtasn1.install
+++ /dev/null
@@ -1,18 +0,0 @@
-info_dir=/usr/share/info
-info_files=(libtasn1.info)
-
-post_install() {
- for f in ${info_files[@]}; do
- install-info ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null
- done
-}
-
-post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- for f in ${info_files[@]}; do
- install-info --delete ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null
- done
-}
diff --git a/abs/core/libtirpc/PKGBUILD b/abs/core/libtirpc/PKGBUILD
index 6035cdb..5219fba 100644
--- a/abs/core/libtirpc/PKGBUILD
+++ b/abs/core/libtirpc/PKGBUILD
@@ -1,42 +1,28 @@
-# $Id: PKGBUILD 133597 2011-07-29 21:03:33Z tpowa $
-# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
+# $Id$
+# Maintainer: Tom Gundersen <teg@jklm.no>
+# Contributor: Tobias Powalowski <tpowa@archlinux.org>
pkgname=libtirpc
-pkgver=0.2.2
-pkgrel=2
+pkgver=1.0.3
+pkgrel=1
pkgdesc="Transport Independent RPC library (SunRPC replacement)"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://libtirpc.sourceforge.net/"
license=('BSD')
-depends=('libgssglue')
+depends=('krb5')
backup=('etc/netconfig')
-options=('!libtool')
-source=(http://downloads.sourceforge.net/sourceforge/libtirpc/${pkgname}-${pkgver}.tar.bz2
- libtirpc-0.2.1-fortify.patch
- libtirpc-0.2.3rc1.patch
- libtirpc-fix-segfault-0.2.2.patch)
-md5sums=('74c41c15c2909f7d11d9c7bfa7db6273'
- '2e5c067f1651469dfbbdc91d3c9c60e8'
- 'ac2a1657b44f4a99c37d8265b05b9133'
- '5a3ab55934cad4e8b38fc90c54756472')
+# git tree: git://linux-nfs.org/~steved/libtirpc
+source=(http://downloads.sourceforge.net/sourceforge/libtirpc/${pkgname}-${pkgver}.tar.bz2)
+sha1sums=('48adb32dc7c3b73c66f001c239da76b8398abf11')
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- # fix http://bugs.gentoo.org/293593
- # https://bugs.archlinux.org/task/20082
- patch -Np1 -i ../libtirpc-0.2.1-fortify.patch
- # add patches from fedora git to make nfs-utils compile again
- patch -Np1 -i ../libtirpc-0.2.3rc1.patch
- patch -Np1 -i ../libtirpc-fix-segfault-0.2.2.patch
- sh autogen.sh
- autoreconf -fisv
- ./configure --prefix=/usr --enable-gss
+ cd ${pkgname}-${pkgver}
+ ./configure --prefix=/usr --sysconf=/etc
make
}
package() {
- cd "${srcdir}/${pkgname}-${pkgver}"
+ cd ${pkgname}-${pkgver}
make DESTDIR="${pkgdir}" install
- install -D -m644 doc/etc_netconfig "${pkgdir}"/etc/netconfig
install -D -m644 COPYING "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
}
diff --git a/abs/core/libtirpc/libtirpc-0.2.1-fortify.patch b/abs/core/libtirpc/libtirpc-0.2.1-fortify.patch
deleted file mode 100644
index 7375bf8..0000000
--- a/abs/core/libtirpc/libtirpc-0.2.1-fortify.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Index: libtirpc-0.2.1/src/getrpcport.c
-===================================================================
---- libtirpc-0.2.1.orig/src/getrpcport.c
-+++ libtirpc-0.2.1/src/getrpcport.c
-@@ -54,11 +54,11 @@ getrpcport(host, prognum, versnum, proto
-
- if ((hp = gethostbyname(host)) == NULL)
- return (0);
-+ if (hp->h_length != sizeof(addr.sin_addr.s_addr))
-+ return (0);
- memset(&addr, 0, sizeof(addr));
- addr.sin_family = AF_INET;
- addr.sin_port = 0;
-- if (hp->h_length > sizeof(addr))
-- hp->h_length = sizeof(addr);
- memcpy(&addr.sin_addr.s_addr, hp->h_addr, (size_t)hp->h_length);
- /* Inconsistent interfaces need casts! :-( */
- return (pmap_getport(&addr, (u_long)prognum, (u_long)versnum,
diff --git a/abs/core/libtirpc/libtirpc-0.2.3rc1.patch b/abs/core/libtirpc/libtirpc-0.2.3rc1.patch
deleted file mode 100644
index d57a59e..0000000
--- a/abs/core/libtirpc/libtirpc-0.2.3rc1.patch
+++ /dev/null
@@ -1,637 +0,0 @@
-diff --git a/src/Makefile.am b/src/Makefile.am
-index 7ee8cbc..6731ff9 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -50,7 +50,7 @@ libtirpc_la_SOURCES = auth_none.c auth_unix.c authunix_prot.c bindresvport.c cln
- rpc_callmsg.c rpc_generic.c rpc_soc.c rpcb_clnt.c rpcb_prot.c \
- rpcb_st_xdr.c svc.c svc_auth.c svc_dg.c svc_auth_unix.c svc_generic.c \
- svc_raw.c svc_run.c svc_simple.c svc_vc.c getpeereid.c \
-- auth_time.c auth_des.c authdes_prot.c des_crypt.c
-+ auth_time.c auth_des.c authdes_prot.c
-
- ## XDR
- libtirpc_la_SOURCES += xdr.c xdr_rec.c xdr_array.c xdr_float.c xdr_mem.c xdr_reference.c xdr_stdio.c
-diff --git a/src/auth_des.c b/src/auth_des.c
-index 37e7667..f0c8b8c 100644
---- a/src/auth_des.c
-+++ b/src/auth_des.c
-@@ -223,6 +223,7 @@ authdes_pk_seccreate(const char *servername, netobj *pkey, u_int window,
- goto failed;
- }
- ad->ad_nis_srvr = NULL; /* not needed any longer */
-+ auth_get(auth); /* Reference for caller */
- return (auth);
-
- failed:
-@@ -472,6 +473,12 @@ authdes_destroy(AUTH *auth)
- FREE(auth, sizeof(AUTH));
- }
-
-+static bool_t
-+authdes_wrap(AUTH *auth, XDR *xdrs, xdrproc_t xfunc, caddr_t xwhere)
-+{
-+ return ((*xfunc)(xdrs, xwhere));
-+}
-+
- static struct auth_ops *
- authdes_ops(void)
- {
-@@ -487,6 +494,8 @@ authdes_ops(void)
- ops.ah_validate = authdes_validate;
- ops.ah_refresh = authdes_refresh;
- ops.ah_destroy = authdes_destroy;
-+ ops.ah_wrap = authdes_wrap;
-+ ops.ah_unwrap = authdes_wrap;
- }
- mutex_unlock(&authdes_ops_lock);
- return (&ops);
-diff --git a/src/auth_gss.c b/src/auth_gss.c
-index df3017a..a992049 100644
---- a/src/auth_gss.c
-+++ b/src/auth_gss.c
-@@ -200,6 +200,8 @@ authgss_create(CLIENT *clnt, gss_name_t name, struct rpc_gss_sec *sec)
-
- if (!authgss_refresh(auth))
- auth = NULL;
-+ else
-+ auth_get(auth); /* Reference for caller */
-
- clnt->cl_auth = save_auth;
-
-@@ -555,9 +557,20 @@ authgss_destroy_context(AUTH *auth)
-
- if (gd->gc.gc_ctx.length != 0) {
- if (gd->established) {
-+ AUTH *save_auth = NULL;
-+
-+ /* Make sure we use the right auth_ops */
-+ if (gd->clnt->cl_auth != auth) {
-+ save_auth = gd->clnt->cl_auth;
-+ gd->clnt->cl_auth = auth;
-+ }
-+
- gd->gc.gc_proc = RPCSEC_GSS_DESTROY;
- clnt_call(gd->clnt, NULLPROC, (xdrproc_t)xdr_void, NULL,
- (xdrproc_t)xdr_void, NULL, AUTH_TIMEOUT);
-+
-+ if (save_auth != NULL)
-+ gd->clnt->cl_auth = save_auth;
- }
- gss_release_buffer(&min_stat, &gd->gc.gc_ctx);
- /* XXX ANDROS check size of context - should be 8 */
-diff --git a/src/auth_none.c b/src/auth_none.c
-index a439ec6..008c589 100644
---- a/src/auth_none.c
-+++ b/src/auth_none.c
-@@ -155,6 +155,12 @@ authnone_destroy(AUTH *client)
- {
- }
-
-+static bool_t
-+authnone_wrap(AUTH *auth, XDR *xdrs, xdrproc_t xfunc, caddr_t xwhere)
-+{
-+ return ((*xfunc)(xdrs, xwhere));
-+}
-+
- static struct auth_ops *
- authnone_ops()
- {
-@@ -170,6 +176,8 @@ authnone_ops()
- ops.ah_validate = authnone_validate;
- ops.ah_refresh = authnone_refresh;
- ops.ah_destroy = authnone_destroy;
-+ ops.ah_wrap = authnone_wrap;
-+ ops.ah_unwrap = authnone_wrap;
- }
- mutex_unlock(&ops_lock);
- return (&ops);
-diff --git a/src/auth_unix.c b/src/auth_unix.c
-index c2469da..4b9b13f 100644
---- a/src/auth_unix.c
-+++ b/src/auth_unix.c
-@@ -162,6 +162,7 @@ authunix_create(machname, uid, gid, len, aup_gids)
- */
- auth->ah_cred = au->au_origcred;
- marshal_new_auth(auth);
-+ auth_get(auth); /* Reference for caller */
- return (auth);
- #ifndef _KERNEL
- cleanup_authunix_create:
-@@ -396,6 +397,12 @@ marshal_new_auth(auth)
- XDR_DESTROY(xdrs);
- }
-
-+static bool_t
-+authunix_wrap(AUTH *auth, XDR *xdrs, xdrproc_t xfunc, caddr_t xwhere)
-+{
-+ return ((*xfunc)(xdrs, xwhere));
-+}
-+
- static struct auth_ops *
- authunix_ops()
- {
-@@ -411,6 +418,8 @@ authunix_ops()
- ops.ah_validate = authunix_validate;
- ops.ah_refresh = authunix_refresh;
- ops.ah_destroy = authunix_destroy;
-+ ops.ah_wrap = authunix_wrap;
-+ ops.ah_unwrap = authunix_wrap;
- }
- mutex_unlock(&ops_lock);
- return (&ops);
-diff --git a/src/authgss_prot.c b/src/authgss_prot.c
-index 9d7fa09..0168318 100644
---- a/src/authgss_prot.c
-+++ b/src/authgss_prot.c
-@@ -161,6 +161,7 @@ xdr_rpc_gss_wrap_data(XDR *xdrs, xdrproc_t xdr_func, caddr_t xdr_ptr,
- databuflen = end - start - 4;
- XDR_SETPOS(xdrs, start + 4);
- databuf.value = XDR_INLINE(xdrs, databuflen);
-+ databuf.length = databuflen;
-
- xdr_stat = FALSE;
-
-@@ -169,7 +170,6 @@ xdr_rpc_gss_wrap_data(XDR *xdrs, xdrproc_t xdr_func, caddr_t xdr_ptr,
- XDR_SETPOS(xdrs, start);
- if (!xdr_u_int(xdrs, (u_int *)&databuflen))
- return (FALSE);
-- databuf.length = databuflen;
-
- /* Checksum rpc_gss_data_t. */
- maj_stat = gss_get_mic(&min_stat, ctx, qop,
-diff --git a/src/clnt_dg.c b/src/clnt_dg.c
-index 79fed5d..4a1f60a 100644
---- a/src/clnt_dg.c
-+++ b/src/clnt_dg.c
-@@ -366,7 +366,7 @@ call_again:
-
- if ((! XDR_PUTINT32(xdrs, (int32_t *)&proc)) ||
- (! AUTH_MARSHALL(cl->cl_auth, xdrs)) ||
-- (! (*xargs)(xdrs, argsp))) {
-+ (! AUTH_WRAP(cl->cl_auth, xdrs, xargs, argsp))) {
- cu->cu_error.re_status = RPC_CANTENCODEARGS;
- goto out;
- }
-@@ -400,8 +400,8 @@ get_reply:
- * (We assume that this is actually only executed once.)
- */
- reply_msg.acpted_rply.ar_verf = _null_auth;
-- reply_msg.acpted_rply.ar_results.where = resultsp;
-- reply_msg.acpted_rply.ar_results.proc = xresults;
-+ reply_msg.acpted_rply.ar_results.where = NULL;
-+ reply_msg.acpted_rply.ar_results.proc = (xdrproc_t)xdr_void;
-
- fd.fd = cu->cu_fd;
- fd.events = POLLIN;
-@@ -512,6 +512,10 @@ get_reply:
- &reply_msg.acpted_rply.ar_verf)) {
- cu->cu_error.re_status = RPC_AUTHERROR;
- cu->cu_error.re_why = AUTH_INVALIDRESP;
-+ } else if (! AUTH_UNWRAP(cl->cl_auth, &reply_xdrs,
-+ xresults, resultsp)) {
-+ if (cu->cu_error.re_status == RPC_SUCCESS)
-+ cu->cu_error.re_status = RPC_CANTDECODERES;
- }
- if (reply_msg.acpted_rply.ar_verf.oa_base != NULL) {
- xdrs->x_op = XDR_FREE;
-diff --git a/src/clnt_vc.c b/src/clnt_vc.c
-index 359063c..097cae8 100644
---- a/src/clnt_vc.c
-+++ b/src/clnt_vc.c
-@@ -364,7 +364,7 @@ call_again:
- if ((! XDR_PUTBYTES(xdrs, ct->ct_u.ct_mcallc, ct->ct_mpos)) ||
- (! XDR_PUTINT32(xdrs, (int32_t *)&proc)) ||
- (! AUTH_MARSHALL(cl->cl_auth, xdrs)) ||
-- (! (*xdr_args)(xdrs, args_ptr))) {
-+ (! AUTH_WRAP(cl->cl_auth, xdrs, xdr_args, args_ptr))) {
- if (ct->ct_error.re_status == RPC_SUCCESS)
- ct->ct_error.re_status = RPC_CANTENCODEARGS;
- (void)xdrrec_endofrecord(xdrs, TRUE);
-@@ -420,7 +420,8 @@ call_again:
- &reply_msg.acpted_rply.ar_verf)) {
- ct->ct_error.re_status = RPC_AUTHERROR;
- ct->ct_error.re_why = AUTH_INVALIDRESP;
-- } else if (! (*xdr_results)(xdrs, results_ptr)) {
-+ } else if (! AUTH_UNWRAP(cl->cl_auth, xdrs,
-+ xdr_results, results_ptr)) {
- if (ct->ct_error.re_status == RPC_SUCCESS)
- ct->ct_error.re_status = RPC_CANTDECODERES;
- }
-diff --git a/src/svc.c b/src/svc.c
-index b4a63d0..08cd6c9 100644
---- a/src/svc.c
-+++ b/src/svc.c
-@@ -77,9 +77,6 @@ static struct svc_callout
-
- extern rwlock_t svc_lock;
- extern rwlock_t svc_fd_lock;
--#ifdef HAVE_LIBGSSAPI
--extern struct svc_auth_ops svc_auth_gss_ops;
--#endif
-
- static struct svc_callout *svc_find (rpcprog_t, rpcvers_t,
- struct svc_callout **, char *);
-@@ -717,11 +714,9 @@ svc_getreq_common (fd)
- SVC_DESTROY (xprt);
- break;
- }
-- else if ((xprt->xp_auth != NULL)
--#ifdef HAVE_LIBGSSAPI
-- && (xprt->xp_auth->svc_ah_ops != &svc_auth_gss_ops)
--#endif
-- ) {
-+ else if ((xprt->xp_auth != NULL) &&
-+ (xprt->xp_auth->svc_ah_private == NULL))
-+ {
- xprt->xp_auth = NULL;
- }
- }
-diff --git a/src/svc_auth.c b/src/svc_auth.c
-index c6b3a0b..e80d5f9 100644
---- a/src/svc_auth.c
-+++ b/src/svc_auth.c
-@@ -98,8 +98,8 @@ _authenticate(rqst, msg)
- rqst->rq_xprt->xp_verf.oa_length = 0;
- cred_flavor = rqst->rq_cred.oa_flavor;
- switch (cred_flavor) {
-- case AUTH_NULL:
-- dummy = _svcauth_null(rqst, msg);
-+ case AUTH_NONE:
-+ dummy = _svcauth_none(rqst, msg);
- return (dummy);
- case AUTH_SYS:
- dummy = _svcauth_unix(rqst, msg);
-@@ -132,15 +132,6 @@ _authenticate(rqst, msg)
- return (AUTH_REJECTEDCRED);
- }
-
--/*ARGSUSED*/
--enum auth_stat
--_svcauth_null(rqst, msg)
-- struct svc_req *rqst;
-- struct rpc_msg *msg;
--{
-- return (AUTH_OK);
--}
--
- /*
- * Allow the rpc service to register new authentication types that it is
- * prepared to handle. When an authentication flavor is registered,
-diff --git a/src/svc_auth_unix.c b/src/svc_auth_unix.c
-index ce83859..9585069 100644
---- a/src/svc_auth_unix.c
-+++ b/src/svc_auth_unix.c
-@@ -43,6 +43,8 @@
-
- #include <rpc/rpc.h>
-
-+extern SVCAUTH svc_auth_none;
-+
- /*
- * Unix longhand authenticator
- */
-@@ -67,6 +69,8 @@ _svcauth_unix(rqst, msg)
- assert(rqst != NULL);
- assert(msg != NULL);
-
-+ rqst->rq_xprt->xp_auth = &svc_auth_none;
-+
- area = (struct area *) rqst->rq_clntcred;
- aup = &area->area_aup;
- aup->aup_machname = area->area_machname;
-@@ -142,5 +146,6 @@ _svcauth_short(rqst, msg)
- struct svc_req *rqst;
- struct rpc_msg *msg;
- {
-+ rqst->rq_xprt->xp_auth = &svc_auth_none;
- return (AUTH_REJECTEDCRED);
- }
-diff --git a/src/svc_dg.c b/src/svc_dg.c
-index 66a56ee..5ef9df2 100644
---- a/src/svc_dg.c
-+++ b/src/svc_dg.c
-@@ -134,6 +134,7 @@ svc_dg_create(fd, sendsize, recvsize)
- su->su_cache = NULL;
- xprt->xp_fd = fd;
- xprt->xp_p2 = su;
-+ xprt->xp_auth = NULL;
- xprt->xp_verf.oa_base = su->su_verfbody;
- svc_dg_ops(xprt);
- xprt->xp_rtaddr.maxlen = sizeof (struct sockaddr_storage);
-@@ -234,10 +235,27 @@ svc_dg_reply(xprt, msg)
- bool_t stat = FALSE;
- size_t slen;
-
-+ xdrproc_t xdr_results;
-+ caddr_t xdr_location;
-+ bool_t has_args;
-+
-+ if (msg->rm_reply.rp_stat == MSG_ACCEPTED &&
-+ msg->rm_reply.rp_acpt.ar_stat == SUCCESS) {
-+ has_args = TRUE;
-+ xdr_results = msg->acpted_rply.ar_results.proc;
-+ xdr_location = msg->acpted_rply.ar_results.where;
-+
-+ msg->acpted_rply.ar_results.proc = (xdrproc_t)xdr_void;
-+ msg->acpted_rply.ar_results.where = NULL;
-+ } else
-+ has_args = FALSE;
-+
- xdrs->x_op = XDR_ENCODE;
- XDR_SETPOS(xdrs, 0);
- msg->rm_xid = su->su_xid;
-- if (xdr_replymsg(xdrs, msg)) {
-+ if (xdr_replymsg(xdrs, msg) &&
-+ (!has_args ||
-+ (SVCAUTH_WRAP(xprt->xp_auth, xdrs, xdr_results, xdr_location)))) {
- struct msghdr *msg = &su->su_msghdr;
- struct iovec iov;
-
-@@ -264,7 +282,12 @@ svc_dg_getargs(xprt, xdr_args, args_ptr)
- xdrproc_t xdr_args;
- void *args_ptr;
- {
-- return (*xdr_args)(&(su_data(xprt)->su_xdrs), args_ptr);
-+ if (! SVCAUTH_UNWRAP(xprt->xp_auth, &(su_data(xprt)->su_xdrs),
-+ xdr_args, args_ptr)) {
-+ (void)svc_freeargs(xprt, xdr_args, args_ptr);
-+ return FALSE;
-+ }
-+ return TRUE;
- }
-
- static bool_t
-@@ -288,6 +311,10 @@ svc_dg_destroy(xprt)
- xprt_unregister(xprt);
- if (xprt->xp_fd != -1)
- (void)close(xprt->xp_fd);
-+ if (xprt->xp_auth != NULL) {
-+ SVCAUTH_DESTROY(xprt->xp_auth);
-+ xprt->xp_auth = NULL;
-+ }
- XDR_DESTROY(&(su->su_xdrs));
- (void) mem_free(rpc_buffer(xprt), su->su_iosz);
- (void) mem_free(su, sizeof (*su));
-diff --git a/src/svc_vc.c b/src/svc_vc.c
-index aaaf2d7..74632e2 100644
---- a/src/svc_vc.c
-+++ b/src/svc_vc.c
-@@ -172,6 +172,7 @@ svc_vc_create(fd, sendsize, recvsize)
- xprt->xp_p1 = r;
- xprt->xp_p2 = NULL;
- xprt->xp_p3 = NULL;
-+ xprt->xp_auth = NULL;
- xprt->xp_verf = _null_auth;
- svc_vc_rendezvous_ops(xprt);
- xprt->xp_port = (u_short)-1; /* It is the rendezvouser */
-@@ -283,6 +284,7 @@ makefd_xprt(fd, sendsize, recvsize)
- xdrrec_create(&(cd->xdrs), sendsize, recvsize,
- xprt, read_vc, write_vc);
- xprt->xp_p1 = cd;
-+ xprt->xp_auth = NULL;
- xprt->xp_verf.oa_base = cd->verf_body;
- svc_vc_ops(xprt); /* truely deals with calls */
- xprt->xp_port = 0; /* this is a connection, not a rendezvouser */
-@@ -412,6 +414,10 @@ __svc_vc_dodestroy(xprt)
- XDR_DESTROY(&(cd->xdrs));
- mem_free(cd, sizeof(struct cf_conn));
- }
-+ if (xprt->xp_auth != NULL) {
-+ SVCAUTH_DESTROY(xprt->xp_auth);
-+ xprt->xp_auth = NULL;
-+ }
- if (xprt->xp_rtaddr.buf)
- mem_free(xprt->xp_rtaddr.buf, xprt->xp_rtaddr.maxlen);
- if (xprt->xp_ltaddr.buf)
-@@ -610,7 +616,11 @@ svc_vc_recv(xprt, msg)
- }
-
- xdrs->x_op = XDR_DECODE;
-- (void)xdrrec_skiprecord(xdrs);
-+ /*
-+ * No need skip records with nonblocking connections
-+ */
-+ if (cd->nonblock == FALSE)
-+ (void)xdrrec_skiprecord(xdrs);
- if (xdr_callmsg(xdrs, msg)) {
- cd->x_id = msg->rm_xid;
- return (TRUE);
-@@ -628,8 +638,13 @@ svc_vc_getargs(xprt, xdr_args, args_ptr)
-
- assert(xprt != NULL);
- /* args_ptr may be NULL */
-- return ((*xdr_args)(&(((struct cf_conn *)(xprt->xp_p1))->xdrs),
-- args_ptr));
-+
-+ if (! SVCAUTH_UNWRAP(xprt->xp_auth,
-+ &(((struct cf_conn *)(xprt->xp_p1))->xdrs),
-+ xdr_args, args_ptr)) {
-+ return FALSE;
-+ }
-+ return TRUE;
- }
-
- static bool_t
-@@ -658,15 +673,35 @@ svc_vc_reply(xprt, msg)
- XDR *xdrs;
- bool_t rstat;
-
-+ xdrproc_t xdr_results;
-+ caddr_t xdr_location;
-+ bool_t has_args;
-+
- assert(xprt != NULL);
- assert(msg != NULL);
-
- cd = (struct cf_conn *)(xprt->xp_p1);
- xdrs = &(cd->xdrs);
-
-+ if (msg->rm_reply.rp_stat == MSG_ACCEPTED &&
-+ msg->rm_reply.rp_acpt.ar_stat == SUCCESS) {
-+ has_args = TRUE;
-+ xdr_results = msg->acpted_rply.ar_results.proc;
-+ xdr_location = msg->acpted_rply.ar_results.where;
-+
-+ msg->acpted_rply.ar_results.proc = (xdrproc_t)xdr_void;
-+ msg->acpted_rply.ar_results.where = NULL;
-+ } else
-+ has_args = FALSE;
-+
- xdrs->x_op = XDR_ENCODE;
- msg->rm_xid = cd->x_id;
-- rstat = xdr_replymsg(xdrs, msg);
-+ rstat = FALSE;
-+ if (xdr_replymsg(xdrs, msg) &&
-+ (!has_args ||
-+ (SVCAUTH_WRAP(xprt->xp_auth, xdrs, xdr_results, xdr_location)))) {
-+ rstat = TRUE;
-+ }
- (void)xdrrec_endofrecord(xdrs, TRUE);
- return (rstat);
- }
-diff --git a/src/xdr_rec.c b/src/xdr_rec.c
-index 4e815d7..2aca623 100644
---- a/src/xdr_rec.c
-+++ b/src/xdr_rec.c
-@@ -64,7 +64,6 @@
- #include <rpc/clnt.h>
- #include <stddef.h>
- #include "rpc_com.h"
--#include <unistd.h>
- static bool_t xdrrec_getlong(XDR *, long *);
- static bool_t xdrrec_putlong(XDR *, const long *);
- static bool_t xdrrec_getbytes(XDR *, char *, u_int);
-@@ -330,22 +329,22 @@ xdrrec_getpos(xdrs)
- RECSTREAM *rstrm = (RECSTREAM *)xdrs->x_private;
- off_t pos;
-
-- pos = lseek((int)(u_long)rstrm->tcp_handle, (off_t)0, 1);
-- if (pos != -1)
-- switch (xdrs->x_op) {
-+ switch (xdrs->x_op) {
-
-- case XDR_ENCODE:
-- pos += rstrm->out_finger - rstrm->out_base;
-- break;
-+ case XDR_ENCODE:
-+ pos = rstrm->out_finger - rstrm->out_base
-+ - BYTES_PER_XDR_UNIT;
-+ break;
-
-- case XDR_DECODE:
-- pos -= rstrm->in_boundry - rstrm->in_finger;
-- break;
-+ case XDR_DECODE:
-+ pos = rstrm->in_boundry - rstrm->in_finger
-+ - BYTES_PER_XDR_UNIT;
-+ break;
-
-- default:
-- pos = (off_t) -1;
-- break;
-- }
-+ default:
-+ pos = (off_t) -1;
-+ break;
-+ }
- return ((u_int) pos);
- }
-
-diff --git a/tirpc/rpc/auth.h b/tirpc/rpc/auth.h
-index 734e6b9..5f66e67 100644
---- a/tirpc/rpc/auth.h
-+++ b/tirpc/rpc/auth.h
-@@ -203,8 +203,22 @@ typedef struct __auth {
-
- } *ah_ops;
- void *ah_private;
-+ int ah_refcnt;
- } AUTH;
-
-+static __inline int
-+auth_get(AUTH *auth)
-+{
-+ return __sync_add_and_fetch(&auth->ah_refcnt, 1);
-+}
-+
-+static __inline int
-+auth_put(AUTH *auth)
-+{
-+ return __sync_sub_and_fetch(&auth->ah_refcnt, 1);
-+}
-+
-+
-
- /*
- * Authentication ops.
-@@ -234,10 +248,23 @@ typedef struct __auth {
- #define auth_refresh(auth, msg) \
- ((*((auth)->ah_ops->ah_refresh))(auth, msg))
-
--#define AUTH_DESTROY(auth) \
-- ((*((auth)->ah_ops->ah_destroy))(auth))
--#define auth_destroy(auth) \
-- ((*((auth)->ah_ops->ah_destroy))(auth))
-+#define AUTH_DESTROY(auth) \
-+ do { \
-+ int refs; \
-+ if ((refs = auth_put((auth))) == 0) \
-+ ((*((auth)->ah_ops->ah_destroy))(auth));\
-+ log_debug("%s: auth_put(), refs %d\n", \
-+ __func__, refs); \
-+ } while (0)
-+
-+#define auth_destroy(auth) \
-+ do { \
-+ int refs; \
-+ if ((refs = auth_put((auth))) == 0) \
-+ ((*((auth)->ah_ops->ah_destroy))(auth));\
-+ log_debug("%s: auth_put(), refs %d\n", \
-+ __func__, refs); \
-+ } while (0)
-
- #define AUTH_WRAP(auth, xdrs, xfunc, xwhere) \
- ((*((auth)->ah_ops->ah_wrap))(auth, xdrs, \
-@@ -373,7 +400,7 @@ __END_DECLS
- __BEGIN_DECLS
- struct svc_req;
- struct rpc_msg;
--enum auth_stat _svcauth_null (struct svc_req *, struct rpc_msg *);
-+enum auth_stat _svcauth_none (struct svc_req *, struct rpc_msg *);
- enum auth_stat _svcauth_short (struct svc_req *, struct rpc_msg *);
- enum auth_stat _svcauth_unix (struct svc_req *, struct rpc_msg *);
- __END_DECLS
-diff --git a/tirpc/rpc/des.h b/tirpc/rpc/des.h
-index e3d6897..d2881ad 100644
---- a/tirpc/rpc/des.h
-+++ b/tirpc/rpc/des.h
-@@ -33,6 +33,9 @@
- * Copyright (c) 1986 by Sun Microsystems, Inc.
- */
-
-+#ifndef _RPC_DES_H_
-+#define _RPC_DES_H_
-+
- #define DES_MAXLEN 65536 /* maximum # of bytes to encrypt */
- #define DES_QUICKLEN 16 /* maximum # of bytes to encrypt quickly */
-
-@@ -80,3 +83,5 @@ struct desparams {
- * Software DES.
- */
- extern int _des_crypt( char *, int, struct desparams * );
-+
-+#endif
-diff --git a/tirpc/rpc/svc_auth.h b/tirpc/rpc/svc_auth.h
-index 659e90c..14269d1 100644
---- a/tirpc/rpc/svc_auth.h
-+++ b/tirpc/rpc/svc_auth.h
-@@ -44,17 +44,23 @@
- /*
- * Interface to server-side authentication flavors.
- */
--typedef struct {
-+typedef struct SVCAUTH {
- struct svc_auth_ops {
-- int (*svc_ah_wrap)(void);
-- int (*svc_ah_unwrap)(void);
-- int (*svc_ah_destroy)(void);
-+ int (*svc_ah_wrap)(struct SVCAUTH *, XDR *, xdrproc_t,
-+ caddr_t);
-+ int (*svc_ah_unwrap)(struct SVCAUTH *, XDR *, xdrproc_t,
-+ caddr_t);
-+ int (*svc_ah_destroy)(struct SVCAUTH *);
- } *svc_ah_ops;
- caddr_t svc_ah_private;
- } SVCAUTH;
-
--#define SVCAUTH_DESTROY(cred) ((*(cred)->svc_ah_ops->svc_ah_destroy)())
--#define svcauth_destroy(cred) ((*(cred)->svc_ah_ops->svc_ah_destroy)())
-+#define SVCAUTH_WRAP(auth, xdrs, xfunc, xwhere) \
-+ ((*((auth)->svc_ah_ops->svc_ah_wrap))(auth, xdrs, xfunc, xwhere))
-+#define SVCAUTH_UNWRAP(auth, xdrs, xfunc, xwhere) \
-+ ((*((auth)->svc_ah_ops->svc_ah_unwrap))(auth, xdrs, xfunc, xwhere))
-+#define SVCAUTH_DESTROY(auth) \
-+ ((*((auth)->svc_ah_ops->svc_ah_destroy))(auth))
-
- /*
- * Server side authenticator
diff --git a/abs/core/libtirpc/libtirpc-fix-segfault-0.2.2.patch b/abs/core/libtirpc/libtirpc-fix-segfault-0.2.2.patch
deleted file mode 100644
index 8a04c16..0000000
--- a/abs/core/libtirpc/libtirpc-fix-segfault-0.2.2.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-diff -up libtirpc-0.2.2/src/svc_dg.c.orig libtirpc-0.2.2/src/svc_dg.c
---- libtirpc-0.2.2/src/svc_dg.c.orig 2011-07-19 15:02:41.087631000 -0400
-+++ libtirpc-0.2.2/src/svc_dg.c 2011-07-19 15:04:43.154243000 -0400
-@@ -254,8 +254,8 @@ svc_dg_reply(xprt, msg)
- XDR_SETPOS(xdrs, 0);
- msg->rm_xid = su->su_xid;
- if (xdr_replymsg(xdrs, msg) &&
-- (!has_args ||
-- (SVCAUTH_WRAP(xprt->xp_auth, xdrs, xdr_results, xdr_location)))) {
-+ (!has_args || (xprt->xp_auth &&
-+ SVCAUTH_WRAP(xprt->xp_auth, xdrs, xdr_results, xdr_location)))) {
- struct msghdr *msg = &su->su_msghdr;
- struct iovec iov;
-
-diff -up libtirpc-0.2.2/src/svc_vc.c.orig libtirpc-0.2.2/src/svc_vc.c
---- libtirpc-0.2.2/src/svc_vc.c.orig 2011-07-19 15:05:28.577588000 -0400
-+++ libtirpc-0.2.2/src/svc_vc.c 2011-07-19 15:05:40.058928000 -0400
-@@ -698,8 +698,8 @@ svc_vc_reply(xprt, msg)
- msg->rm_xid = cd->x_id;
- rstat = FALSE;
- if (xdr_replymsg(xdrs, msg) &&
-- (!has_args ||
-- (SVCAUTH_WRAP(xprt->xp_auth, xdrs, xdr_results, xdr_location)))) {
-+ (!has_args || (xprt->xp_auth &&
-+ SVCAUTH_WRAP(xprt->xp_auth, xdrs, xdr_results, xdr_location)))) {
- rstat = TRUE;
- }
- (void)xdrrec_endofrecord(xdrs, TRUE);
diff --git a/abs/core/libtool/PKGBUILD b/abs/core/libtool/PKGBUILD
index 07fcee8..31abf0d 100644
--- a/abs/core/libtool/PKGBUILD
+++ b/abs/core/libtool/PKGBUILD
@@ -1,41 +1,51 @@
# $Id$
-# Maintainer: Allan McRae <allan@archlinux.org>
+# Maintainer: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
+# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: judd <jvinet@zeroflux.org>
# NOTE: requires rebuilt with each new gcc version
pkgname=libtool
-pkgver=2.4.6
+pkgver=2.4.6+40+g6ca5e224
pkgrel=4
-_gccver=5.3.0
-pkgdesc="A generic library support script"
-arch=('i686' 'x86_64')
-url="http://www.gnu.org/software/libtool"
-license=('GPL')
-groups=('base-devel')
-depends=('sh' 'tar' 'glibc')
-makedepends=("gcc=$_gccver")
+_gccver=7.3.0
+pkgdesc='A generic library support script'
+arch=(x86_64)
+url='http://www.gnu.org/software/libtool'
+license=(GPL)
+groups=(base-devel)
+depends=(sh tar glibc)
+makedepends=("gcc=$_gccver" git help2man)
provides=("libltdl=$pkgver" "libtool-multilib=$pkgver")
conflicts=('libltdl' 'libtool-multilib')
replaces=('libltdl' 'libtool-multilib')
-install=libtool.install
-source=(ftp://ftp.gnu.org/pub/gnu/libtool/${pkgname}-${pkgver}.tar.xz{,.sig})
-md5sums=('1bfb9b923f2c1339b4d2ce1807064aa5'
- 'SKIP')
-validpgpkeys=('CFE2BE707B538E8B26757D84151308092983D606') # Gary Vaughan
+_commit=6ca5e224bc7bcc114a9ba2cf5dcf0fbf0ec40c9f
+source=(git+https://git.savannah.gnu.org/git/libtool.git#commit=$_commit)
+md5sums=('SKIP')
+
+
+pkgver() {
+ cd libtool
+ git describe --tags | sed 's/-/+/g;s/^v//'
+}
+
+prepare() {
+ cd libtool
+ ./bootstrap
+}
build() {
- cd ${srcdir}/${pkgbase}-${pkgver}
+ cd libtool
./configure --prefix=/usr lt_cv_sys_lib_dlsearch_path_spec="/usr/lib /usr/lib32"
make
}
check() {
- cd ${srcdir}/${pkgbase}-${pkgver}
- make check
+ cd libtool
+ make check || :
}
package() {
- cd ${srcdir}/${pkgbase}-${pkgver}
- make DESTDIR=${pkgdir} install
+ cd libtool
+ make DESTDIR="$pkgdir" install
}
diff --git a/abs/core/libtool/libtool.install b/abs/core/libtool/libtool.install
deleted file mode 100644
index 73cf564..0000000
--- a/abs/core/libtool/libtool.install
+++ /dev/null
@@ -1,20 +0,0 @@
-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/abs/core/libusb/PKGBUILD b/abs/core/libusb/PKGBUILD
index 2702179..3a092d4 100644
--- a/abs/core/libusb/PKGBUILD
+++ b/abs/core/libusb/PKGBUILD
@@ -3,23 +3,24 @@
# Contributor: Tobias Powalowski <tpowa@archlinux.org>
pkgname=libusb
-pkgver=1.0.21
+pkgver=1.0.22
pkgrel=1
pkgdesc='Library that provides generic access to USB devices'
-arch=('i686' 'x86_64')
+arch=(x86_64)
url='http://libusb.info/'
-license=('LGPL')
-depends=('glibc' 'systemd')
-replaces=('libusb1' 'libusbx')
-provides=("libusbx=$pkgver")
-conflicts=('libusbx')
+license=(LGPL)
+depends=(glibc libsystemd)
+makedepends=(systemd)
+replaces=(libusb1 libusbx)
+provides=("libusbx=$pkgver" libusb-1.0.so)
+conflicts=(libusbx)
source=(https://github.com/libusb/libusb/releases/download/v$pkgver/libusb-$pkgver.tar.bz2)
-md5sums=('1da9ea3c27b3858fa85c5f4466003e44')
+md5sums=('466267889daead47674df933cea9cacb')
build() {
cd $pkgname-$pkgver
./configure --prefix=/usr
- make -j1
+ make
}
check() {
diff --git a/abs/core/libxml2/PKGBUILD b/abs/core/libxml2/PKGBUILD
index fe3e82c..2ab74b4 100644
--- a/abs/core/libxml2/PKGBUILD
+++ b/abs/core/libxml2/PKGBUILD
@@ -1,45 +1,61 @@
# $Id$
# Maintainer: Jan de Groot <jgc@archlinux.org>
-# Maintainer: Tom Gundersen <teg@jklm.no>
+# Contributor: Tom Gundersen <teg@jklm.no>
# Contributor: John Proctor <jproctor@prium.net>
pkgname=libxml2
-pkgver=2.9.3
+pkgver=2.9.8
pkgrel=1
pkgdesc="XML parsing library, version 2"
-arch=(i686 x86_64)
-license=('MIT')
-depends=('zlib' 'readline' 'ncurses' 'xz')
-makedepends=('python2')
-optdepends=('python2: python bindings to libxml')
url="http://www.xmlsoft.org/"
-source=(ftp://ftp.xmlsoft.org/${pkgname}/${pkgname}-${pkgver}.tar.gz
- http://www.w3.org/XML/Test/xmlts20080827.tar.gz)
-md5sums=('daece17e045f1c107610e137ab50c179'
- 'ae3d1ebe000a3972afa104ca7f0e1b4a')
+arch=(x86_64)
+license=(MIT)
+depends=(zlib readline ncurses xz icu)
+makedepends=(python2 python git)
+_commit=18890f471c420411aa3c989e104d090966ec9dbf # tags/v2.9.8^0
+source=(git+https://git.gnome.org/browse/libxml2#commit=$_commit
+ https://www.w3.org/XML/Test/xmlts20130923.tar.gz)
+sha256sums=('SKIP'
+ '9b61db9f5dbffa545f4b8d78422167083a8568c59bd1129f94138f936cf6fc1f')
-prepare() {
- cd ${pkgname}-${pkgver}
- sed -e 's|/usr/bin/python -u|/usr/bin/python2 -u|g' -e 's|/usr/bin/python$|/usr/bin/python2|g' -i python/tests/*.py
- mv ../xmlconf .
+pkgver() {
+ cd $pkgname
+ git describe --tags | sed 's/-rc/rc/;s/^v//;s/-/+/g'
}
-build() {
- cd ${pkgname}-${pkgver}
- ./configure --prefix=/usr --with-threads --with-history --with-python=/usr/bin/python2
+prepare() {
+ mkdir build-py{2,3}
- sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0 /g' -e 's/ if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then/ func_append compile_command " -Wl,-O1,--as-needed"\n func_append finalize_command " -Wl,-O1,--as-needed"\n\0/' libtool
+ cd $pkgname
+ NOCONFIGURE=1 ./autogen.sh
+}
+
+_build() (
+ cd build-py$1
+ ../$pkgname/configure \
+ --prefix=/usr \
+ --with-threads \
+ --with-history \
+ --with-python=/usr/bin/python$1 \
+ --with-icu
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0 /g' libtool
+ PYTHONHASHSEED=0 make
+ find doc -type f -exec chmod 0644 {} +
+)
- make
+build() {
+ _build 2
+ _build 3
}
check() {
- cd ${pkgname}-${pkgver}
+ cd build-py2
+ ln -s ../xmlconf
make check
}
package() {
- cd ${pkgname}-${pkgver}
- make DESTDIR="${pkgdir}" install
- install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/COPYING"
+ make -C build-py2 DESTDIR="$pkgdir" install
+ make -C build-py3/python DESTDIR="$pkgdir" install
+ install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 build-py2/COPYING
}
diff --git a/abs/core/libxml2/libxml2-2.9.4-remove-pyverify_fd.patch b/abs/core/libxml2/libxml2-2.9.4-remove-pyverify_fd.patch
new file mode 100644
index 0000000..d05d4cb
--- /dev/null
+++ b/abs/core/libxml2/libxml2-2.9.4-remove-pyverify_fd.patch
@@ -0,0 +1,12 @@
+diff -Nur libxml2-2.9.4.orig/python/types.c libxml2-2.9.4/python/types.c
+--- libxml2-2.9.4.orig/python/types.c 2016-02-09 03:17:33.000000000 -0700
++++ libxml2-2.9.4/python/types.c 2016-12-21 12:34:06.755650986 -0700
+@@ -31,8 +31,6 @@
+ const char *mode;
+
+ fd = PyObject_AsFileDescriptor(f);
+- if (!_PyVerify_fd(fd))
+- return(NULL);
+ /*
+ * Get the flags on the fd to understand how it was opened
+ */
diff --git a/abs/core/libxslt/CVE-2011-1202.patch b/abs/core/libxslt/CVE-2011-1202.patch
deleted file mode 100644
index 61ea213..0000000
--- a/abs/core/libxslt/CVE-2011-1202.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From ecb6bcb8d1b7e44842edde3929f412d46b40c89f Mon Sep 17 00:00:00 2001
-From: Daniel Veillard <veillard@redhat.com>
-Date: Tue, 22 Feb 2011 02:14:23 +0000
-Subject: Fix generate-id() to not expose object addresses
-
-As pointed out by Chris Evans <scarybeasts@gmail.com> it's better
-security wise to not expose object addresses directly, use a diff
-w.r.t. the document root own address to avoid this
-* libxslt/functions.c: fix IDs generation code
----
-diff --git a/libxslt/functions.c b/libxslt/functions.c
-index 4720c7a..de962f4 100644
---- a/libxslt/functions.c
-+++ b/libxslt/functions.c
-@@ -654,8 +654,9 @@ xsltFormatNumberFunction(xmlXPathParserContextPtr ctxt, int nargs)
- void
- xsltGenerateIdFunction(xmlXPathParserContextPtr ctxt, int nargs){
- xmlNodePtr cur = NULL;
-- unsigned long val;
-- xmlChar str[20];
-+ long val;
-+ xmlChar str[30];
-+ xmlDocPtr doc;
-
- if (nargs == 0) {
- cur = ctxt->context->node;
-@@ -694,9 +695,24 @@ xsltGenerateIdFunction(xmlXPathParserContextPtr ctxt, int nargs){
- * Okay this is ugly but should work, use the NodePtr address
- * to forge the ID
- */
-- val = (unsigned long)((char *)cur - (char *)0);
-- val /= sizeof(xmlNode);
-- sprintf((char *)str, "id%ld", val);
-+ if (cur->type != XML_NAMESPACE_DECL)
-+ doc = cur->doc;
-+ else {
-+ xmlNsPtr ns = (xmlNsPtr) cur;
-+
-+ if (ns->context != NULL)
-+ doc = ns->context;
-+ else
-+ doc = ctxt->context->doc;
-+
-+ }
-+
-+ val = (long)((char *)cur - (char *)doc);
-+ if (val >= 0) {
-+ sprintf((char *)str, "idp%ld", val);
-+ } else {
-+ sprintf((char *)str, "idm%ld", -val);
-+ }
- valuePush(ctxt, xmlXPathNewString(str));
- }
-
---
-cgit v0.9.0.2
diff --git a/abs/core/libxslt/PKGBUILD b/abs/core/libxslt/PKGBUILD
index 7cdc5e9..3f8af1b 100644
--- a/abs/core/libxslt/PKGBUILD
+++ b/abs/core/libxslt/PKGBUILD
@@ -1,42 +1,51 @@
-# $Id: PKGBUILD 149384 2012-02-07 12:34:45Z jgc $
+# $Id$
# Maintainer: Eric Belanger <eric@archlinux.org>
# Contributor: John Proctor <jproctor@prium.net>
pkgname=libxslt
-pkgver=1.1.26
-pkgrel=3
+pkgver=1.1.32+3+g32c8821
+pkgrel=1
pkgdesc="XML stylesheet transformation library"
-arch=('i686' 'x86_64')
url="http://xmlsoft.org/XSLT/"
-license=('custom')
-depends=('libxml2' 'libgcrypt')
-makedepends=('python2')
-checkdepends=('docbook-xml')
-options=('!libtool')
-source=(ftp://xmlsoft.org/libxslt/${pkgname}-${pkgver}.tar.gz
- CVE-2011-1202.patch)
-md5sums=('e61d0364a30146aaa3001296f853b2b9'
- 'ce9744943575efaa6b5501668899b753')
+arch=(x86_64)
+license=(custom)
+depends=(libxml2 libgcrypt)
+makedepends=(python2 git)
+checkdepends=(docbook-xml python)
+_commit=32c88216ddbaa0f3491f45bc84ee89285c6a1129 # master
+source=("git+https://git.gnome.org/browse/libxslt#commit=$_commit")
+sha256sums=('SKIP')
+
+pkgver() {
+ cd $pkgname
+ git describe --tags | sed 's/^v//;s/-/+/g'
+}
+
+prepare() {
+ cd $pkgname
+
+ sed -e 's|/usr/bin/python -u|/usr/bin/python2 -u|g' \
+ -e 's|/usr/bin/python$|/usr/bin/python2|g' \
+ -i python/tests/*.py
+
+ NOCONFIGURE=1 ./autogen.sh
+}
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np1 -i "${srcdir}/CVE-2011-1202.patch"
- sed -e 's|/usr/bin/python -u|/usr/bin/python2 -u|g' -e 's|/usr/bin/python$|/usr/bin/python2|g' -i python/tests/*.py
+ cd $pkgname
./configure --prefix=/usr --with-python=/usr/bin/python2
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
check() {
- cd "${srcdir}/${pkgname}-${pkgver}"
+ cd $pkgname
make check
}
package() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- make DESTDIR="${pkgdir}" install
-
- install -d "${pkgdir}/usr/share/licenses/${pkgname}"
- install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/"
-
- rm -f "${pkgdir}"/usr/lib/python*/site-packages/*.a
+ cd $pkgname
+ make DESTDIR="$pkgdir" install
+ install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+ find "$pkgdir" -name '*.a' -print -delete
}
diff --git a/abs/core/libxtst/PKGBUILD b/abs/core/libxtst/PKGBUILD
index 810b6d1..4a728de 100644
--- a/abs/core/libxtst/PKGBUILD
+++ b/abs/core/libxtst/PKGBUILD
@@ -1,18 +1,20 @@
-# $Id: PKGBUILD 152793 2012-03-09 16:30:31Z andyrtr $
+# $Id$
+# Maintainer: AndyRTR <andyrtr@archlinux.org>
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=libxtst
-pkgver=1.2.1
+pkgver=1.2.3
pkgrel=1
pkgdesc="X11 Testing -- Resource extension library"
-arch=('i686' 'x86_64')
-url="http://xorg.freedesktop.org/"
+arch=('x86_64')
+url="https://xorg.freedesktop.org/"
license=('custom')
-depends=('libxext' 'libxi' 'recordproto' 'inputproto')
+depends=('libxext' 'libxi' 'recordproto' 'inputproto' 'libxfixes')
makedepends=('xorg-util-macros')
-options=('!libtool')
-source=("${url}/releases/individual/lib/libXtst-${pkgver}.tar.bz2")
-sha1sums=('44e19899f9938d3db5546e51c338d6f86d88cfe2')
+source=(${url}/releases/individual/lib/libXtst-${pkgver}.tar.bz2{,.sig})
+sha256sums=('4655498a1b8e844e3d6f21f3b2c4e2b571effb5fd83199d428a6ba7ea4bf5204'
+ 'SKIP')
+validpgpkeys=('C41C985FDCF1E5364576638B687393EE37D128F8') # Matthieu Herrb <matthieu.herrb@laas.fr>
build() {
cd "${srcdir}/libXtst-${pkgver}"
diff --git a/abs/core/lighttpd/PKGBUILD b/abs/core/lighttpd/PKGBUILD
index 4801dab..365d92e 100644
--- a/abs/core/lighttpd/PKGBUILD
+++ b/abs/core/lighttpd/PKGBUILD
@@ -2,8 +2,8 @@
# Maintainer: Pierre Schmitz <pierre@archlinux.de>
pkgname=lighttpd
-pkgver=1.4.45
-pkgrel=2
+pkgver=1.4.48
+pkgrel=1
pkgdesc='A secure, fast, compliant and very flexible web-server'
license=('custom')
arch=('i686' 'x86_64')
@@ -62,7 +62,7 @@ package() {
install -D -m644 COPYING ${pkgdir}/usr/share/licenses/${pkgname}/COPYING
}
-md5sums=('98b97852441fc6b1942dfa9cf5c0beba'
+md5sums=('fe9ea4dccacd9738be03245c364bc055'
'42d106b101d21ffd76ed9f3f1621e164'
'fd4afd737fd16a82ba99b9a99533d34b'
'62779511e3f1127c3cc9b94c49f99c29'
diff --git a/abs/core/linhes-theme/PKGBUILD b/abs/core/linhes-theme/PKGBUILD
index d45b85e..35a8d82 100755
--- a/abs/core/linhes-theme/PKGBUILD
+++ b/abs/core/linhes-theme/PKGBUILD
@@ -1,6 +1,6 @@
pkgname=linhes-theme
pkgver=8.5.1
-pkgrel=4
+pkgrel=10
pkgdesc="Default LinHES MythTV theme"
arch=('i686' 'x86_64')
license=('GPL2')
@@ -19,6 +19,7 @@ patches=('readme.txt.patch' 'osd.xml.patch' 'base.xml.patch' 'browser-ui.xml.pat
#The LinHES theme is based on TintedGlass 4.56 by Harley Peters
source=(`echo ${patches[@]:0}` 'themeinfo.xml' 'install-ui.xml' 'osd_subtitle.xml'
'bubble_background.png' 'preview.png' 'blank_coverart.png'
+ 'gg-left-arrow-large.png' 'gg-right-arrow-large.png'
'checkmark.png' 'error.png' 'gears.png' 'question.png' 'warning.png'
'image-ui.xml' 'standardsetting-ui.xml'
'LHLogo.png' 'LHLogoAndText.png')
@@ -66,6 +67,8 @@ package() {
rm -r $pkgdir/$THEMEROOT/LinHES/osd.xml.alt
rsync -pL $srcdir/bubble_background.png $pkgdir/$THEMEROOT/LinHES/images/backgrounds/background.png
rsync -pL $srcdir/blank_coverart.png $pkgdir/$THEMEROOT/LinHES/images/
+ rsync -pL $srcdir/gg-left-arrow-large.png $pkgdir/$THEMEROOT/LinHES/images/
+ rsync -pL $srcdir/gg-right-arrow-large.png $pkgdir/$THEMEROOT/LinHES/images/
rsync -pL $srcdir/checkmark.png $pkgdir/$THEMEROOT/LinHES/images/
rsync -pL $srcdir/error.png $pkgdir/$THEMEROOT/LinHES/images/
rsync -pL $srcdir/gears.png $pkgdir/$THEMEROOT/LinHES/images/
@@ -99,9 +102,9 @@ package() {
}
md5sums=('2dca856c2a4d1f959473512c94e43b60'
'3fc2c8838a9e331a2d19c114760a5acb'
- 'b534a456304ed75d0082e04e4fd7a965'
+ '391f8e5d43ca846b04a5e8119dccc8cf'
'd1d54968a2297924673d9653f707df33'
- 'b7ab73f7e445b617b1ea293ca40ef4e4'
+ '25ff929dc4aca3b2a0bd38d9ded5a6b8'
'26a6db272dee225b9e4dc282f1494e51'
'b90b745c72a057c78ebd0b6f2c5530b9'
'a0ea2d3e386c0b483b31aa1a2703f9eb'
@@ -112,12 +115,12 @@ md5sums=('2dca856c2a4d1f959473512c94e43b60'
'643e7d548587b8742ed5accb6d736257'
'dd1e013e806efc26049ea89637a51f83'
'9fe3371a8b964a7028126405cfaa330b'
- '958d25f7b932c923cf9f8376063eeb57'
- 'a0b6733e4a6734a3c24e8dc3b0c14e74'
+ '814b52b7ad9a6918585764f5790d1c3b'
+ 'a65ab8c1c409e89358373aa51f0b3eb3'
'384871202030f41148536e2e89bb1801'
- '979cdd540b672e3383b33188ccb247b6'
+ '8efbd524cef4dd3f5fbe5b7d5ad854f0'
'8312aff444945f80a76100696c81cb2e'
- '81a2706cd36a16a1e0c54d87f3a0857b'
+ '2803a328cd276393964240842da03010'
'4125880d1739b196a8041ecc3d773ee2'
'5a8fb2a5f0e657d52be6f0a6a006ce72'
'274b6f8cb5cd82c5ce28422decd7754b'
@@ -125,6 +128,8 @@ md5sums=('2dca856c2a4d1f959473512c94e43b60'
'326a71eb795b322a9ea26f116d890c87'
'8fcd0acc11f4db33a9442949fb1a293d'
'699e3abe05523f454db3561bfc08b4b2'
+ 'c3b17c90d85e9e9908d194570f2da3ac'
+ '39c3c560ed4d8779326f4e63861d8f33'
'60cb915909c477dbc2e18233ee6424d9'
'30ea7d2001b8562177b8f85f34f050a2'
'e8dee86a10ce7c4423a97305b38b4668'
diff --git a/abs/core/linhes-theme/base.xml.patch b/abs/core/linhes-theme/base.xml.patch
index fb6091f..1357b37 100644
--- a/abs/core/linhes-theme/base.xml.patch
+++ b/abs/core/linhes-theme/base.xml.patch
@@ -1,5 +1,5 @@
---- base.xml.orig 2017-12-01 19:19:20.906194024 +0000
-+++ base.xml 2017-12-01 19:13:11.344053140 +0000
+--- base.xml.orig 2018-04-17 14:44:34.438582684 +0000
++++ base.xml 2018-05-24 19:32:20.152603456 +0000
@@ -3,55 +3,55 @@
<mythuitheme>
@@ -485,7 +485,27 @@
</statetype>
<statetype name="background">
<state name="active" />
-@@ -2186,7 +2199,7 @@
+@@ -1916,6 +1929,9 @@
+ <group name="select_bar" from="base_spinbox_select_bar_selectedactive_group">
+ <area>0,0,100%,100%</area>
+ </group>
++ <textarea name="buttontext">
++ <font>basesmallyellow</font>
++ </textarea>
+ </state>
+ <state name="selectedinactive" from="active" />
+ <state name="disabled" from="active">
+@@ -1992,6 +2008,9 @@
+ <group name="select_bar" from="base_selector_select_bar_selectedactive_group">
+ <area>0,0,100%,100%</area>
+ </group>
++ <textarea name="buttontext">
++ <font>basesmallyellow</font>
++ </textarea>
+ </state>
+ <state name="selectedinactive" from="active" />
+ <state name="disabled">
+@@ -2186,7 +2205,7 @@
</shape>
<shape name="popup-seperator-line" from="base_line">
@@ -494,7 +514,7 @@
</shape>
<shape name="popup-third-line" from="base_highlight_line">
-@@ -2202,23 +2215,23 @@
+@@ -2202,23 +2221,23 @@
</shape>
<shape name="popup-arrows-backdrop" from="base_arrows_backdrop">
@@ -523,7 +543,7 @@
</textarea>
<imagetype name="buttonarrow">
<position>560,8</position>
-@@ -2227,7 +2240,8 @@
+@@ -2227,7 +2246,8 @@
<state name="selectedactive">
<area>0,0,100%,34</area>
<textarea name="buttontext">
@@ -533,7 +553,7 @@
</textarea>
<imagetype name="buttonarrow">
<position>560,8</position>
-@@ -2236,7 +2250,7 @@
+@@ -2236,7 +2256,7 @@
<state name="selectedinactive">
<area>0,0,100%,34</area>
<textarea name="buttontext">
@@ -542,7 +562,7 @@
</textarea>
<imagetype name="buttonarrow">
<position>560,8</position>
-@@ -2244,10 +2258,10 @@
+@@ -2244,10 +2264,10 @@
</state>
</statetype>
<statetype name="upscrollarrow">
@@ -555,7 +575,7 @@
</statetype>
</buttonlist>
</window>
-@@ -2299,7 +2313,7 @@
+@@ -2299,7 +2319,7 @@
</shape>
<shape name="large-dialogbox-arrows-backdrop" from="base_arrows_backdrop">
@@ -564,7 +584,7 @@
</shape>
<textarea name="messagearea" from="basetextarea">
-@@ -2332,10 +2346,10 @@
+@@ -2332,10 +2352,10 @@
</state>
</statetype>
<statetype name="upscrollarrow">
@@ -577,7 +597,7 @@
</statetype>
</buttonlist>
</window>
-@@ -2486,7 +2500,7 @@
+@@ -2486,7 +2506,7 @@
<textarea name="message" from="basetextarea">
<area>8,8,571,127</area>
@@ -586,7 +606,7 @@
<align>allcenter</align>
<multiline>yes</multiline>
<cutdown>no</cutdown>
-@@ -2501,6 +2515,7 @@
+@@ -2501,6 +2521,7 @@
<area>338,151,150,35</area>
<value>OK</value>
</button>
@@ -594,7 +614,7 @@
</window>
<!-- Popup search dialog used to search button lists -->
-@@ -2630,12 +2645,12 @@
+@@ -2630,12 +2651,12 @@
<textarea name="message" from="basetextarea">
<area>10,14,567,36</area>
@@ -609,7 +629,7 @@
</textedit>
<button name="ok" from="base_button">
-@@ -2708,6 +2723,63 @@
+@@ -2708,6 +2729,63 @@
</window>
@@ -673,7 +693,7 @@
<window name="MythSearchDialog">
<area>-1,-1,602,488</area>
-@@ -2795,10 +2867,10 @@
+@@ -2795,10 +2873,10 @@
</state>
</statetype>
<statetype name="upscrollarrow">
@@ -686,7 +706,84 @@
</statetype>
</buttonlist>
-@@ -2819,7 +2891,7 @@
+@@ -2813,13 +2891,84 @@
+ </button>
+ </window>
+
++ <!-- Popup dialog to enter into a spin box -->
++ <window name="SpinBoxEntryDialog">
++ <area>-1,-1,587,178</area>
++
++ <animation trigger="AboutToShow">
++ <section>
++ <alpha start="0" end="255" easingcurve="OutQuart"/>
++ <zoom start="0" end="100" easingcurve="OutQuart"/>
++ </section>
++ </animation>
++
++ <animation trigger="AboutToHide">
++ <section>
++ <alpha start="255" end="0" easingcurve="InQuart"/>
++ <zoom start="100" end="0" easingcurve="InQuart"/>
++ </section>
++ </animation>
++
++ <shape name="spinbox-entry-backdrop" from="base_popup_backdrop">
++ <area>0,0,587,178</area>
++ </shape>
++
++ <shape name="spinbox-entry-backdrop-line" from="base_backdrop_line">
++ <area>1,1,585,176</area>
++ </shape>
++
++ <shape name="spinbox-entry-dialog-top-line" from="base_highlight_line">
++ <area>2,2,583,2</area>
++ </shape>
++
++ <shape name="spinbox-entry-dialog-bottom-line" from="base_highlight_line">
++ <area>2,174,583,2</area>
++ </shape>
++
++ <shape name="spinbox-entry-dialog-left-line" from="base_highlight_vertical_line">
++ <area>2,4,2,170</area>
++ </shape>
++
++ <shape name="spinbox-entry-dialog-right-line" from="base_highlight_vertical_line">
++ <area>583,4,2,170</area>
++ </shape>
++<!--
++ <textarea name="title" from="basetextarea">
++ <area>10,14,567,36</area>
++ <font>basesmall</font>
++ <align>allcenter</align>
++ <value>Enter a value:</value>
++ </textarea>
++-->
++ <textarea name="rules" from="basetextarea">
++ <area>10,14,567,36</area>
++ <font>basesmall</font>
++ <align>allcenter</align>
++ <template>Enter %LOW% to %HIGH% in increments of %STEP%:</template>
++ </textarea>
++
++ <textedit name="entry" from="base_textedit">
++ <area>50,62,487,40</area>
++ </textedit>
++<!--
++ <button name="cancel" from="base_button">
++ <area>50,124,150,35</area>
++ <value>Cancel</value>
++ </button>
++-->
++ <button name="ok" from="base_button">
++ <area>218,124,150,35</area>
++ <value>OK</value>
++ </button>
++ </window>
++
+ <window name="MythFileBrowser">
+ <area>0,0,1280,720</area>
+
<group name="fanart-group" from="base_fanart_group" />
<textarea name="heading" from="base_heading">
@@ -695,7 +792,7 @@
</textarea>
<shape name="fullpath-backdrop" from="base_backdrop">
-@@ -2836,87 +2908,85 @@
+@@ -2836,87 +2985,85 @@
</shape>
<shape name="file-browser-preview-backdrop" from="base_backdrop">
@@ -804,7 +901,7 @@
<statetype name="buttonitem">
<state name="active">
<area>0,0,599,54</area>
-@@ -3029,52 +3099,53 @@
+@@ -3029,52 +3176,53 @@
</buttonlist>
<textedit name="location" from="base_textedit">
diff --git a/abs/core/linhes-theme/config-ui.xml.patch b/abs/core/linhes-theme/config-ui.xml.patch
index 0ce47cf..6203f79 100644
--- a/abs/core/linhes-theme/config-ui.xml.patch
+++ b/abs/core/linhes-theme/config-ui.xml.patch
@@ -1,6 +1,68 @@
---- config-ui.xml.orig 2017-12-01 19:19:08.627784142 +0000
-+++ config-ui.xml 2017-12-01 19:10:38.513844323 +0000
-@@ -645,7 +645,7 @@
+--- config-ui.xml.orig 2018-04-17 14:44:54.355990144 +0000
++++ config-ui.xml 2018-04-17 21:15:29.208674746 +0000
+@@ -151,7 +151,7 @@
+ <area>0,0,1280,720</area>
+
+ <textarea name="heading" from="base_heading">
+- <value>Edit Channels</value>
++ <value>Channel Editor</value>
+ </textarea>
+
+ <shape name="edit-channels-top-backdrop" from="base_backdrop">
+@@ -261,13 +261,7 @@
+ <align>right,vcenter</align>
+ </textarea>
+ </state>
+- <state name="selectedinactive" from="selectedactive">
+- <group name="select_bar" from="base_select_bar_selectedinactive_group">
+- <area>0,0,100%,100%</area>
+- <shape name="select_bar_bottom_highlight">
+- <area>0,70,100%,2</area>
+- </shape>
+- </group>
++ <state name="selectedinactive" from="active">
+ </state>
+ </statetype>
+ <statetype name="upscrollarrow">
+@@ -301,7 +295,7 @@
+ </textarea>
+
+ <buttonlist name="sorting" from="base_selector">
+- <area>415,460,580,40</area>
++ <area>415,460,560,40</area>
+ </buttonlist>
+
+ <textarea name="sourcelabel" from="sortlabel">
+@@ -310,21 +304,21 @@
+ </textarea>
+
+ <buttonlist name="source" from="sorting">
+- <area>415,515,580,40</area>
++ <area>415,515,560,40</area>
+ </buttonlist>
+
+ <button name="delete" from="base_button">
+- <area>1030,517,150,35</area>
+- <value>Delete</value>
++ <area>1010,517,200,35</area>
++ <value>Delete Source</value>
+ </button>
+
+- <textarea name="nochannumlabel" from="basetextarea">
+- <area>450,575,500,60</area>
+- <value>Hide Channels without channel number.</value>
++ <textarea name="nochannumlabel" from="sortlabel">
++ <area>245,575,425,30</area>
++ <value>Hide Channels Without Channel Number:</value>
+ </textarea>
+
+ <checkbox name="nochannum" from="base_checkbox">
+- <position>410,572</position>
++ <position>685,575</position>
+ </checkbox>
+
+ <button name="scan" from="base_button">
+@@ -645,7 +639,7 @@
<textarea name="helptext" from="basetextarea">
<area>231,372,818,227</area>
<multiline>yes</multiline>
@@ -9,7 +71,7 @@
<align>allcenter</align>
</textarea>
-@@ -734,7 +734,7 @@
+@@ -734,7 +728,7 @@
<textarea name="helptext" from="basetextarea">
<area>231,372,818,227</area>
<multiline>yes</multiline>
@@ -18,7 +80,7 @@
<align>allcenter</align>
</textarea>
-@@ -901,7 +901,7 @@
+@@ -901,7 +895,7 @@
<textarea name="helptext" from="basetextarea">
<area>233,488,814,111</area>
<multiline>yes</multiline>
@@ -27,7 +89,7 @@
<align>allcenter</align>
</textarea>
-@@ -1000,7 +1000,7 @@
+@@ -1000,7 +994,7 @@
<textarea name="helptext" from="basetextarea">
<area>231,372,818,227</area>
<multiline>yes</multiline>
@@ -36,7 +98,7 @@
<align>allcenter</align>
</textarea>
-@@ -1016,4 +1016,369 @@
+@@ -1016,4 +1010,572 @@
</window>
@@ -405,4 +467,207 @@
+ </button>
+ </window>
+
++ <window name="channelscanner">
++ <area>0,0,1280,720</area>
++
++ <textarea name="heading" from="base_heading">
++ <value>Channel Scanner</value>
++ </textarea>
++
++ <shape name="status-backdrop" from="base_backdrop">
++ <area>0,37,1280,44</area>
++ <type>box</type>
++ </shape>
++
++ <shape name="status-top-line" from="base_line">
++ <area>0,38,1280,2</area>
++ </shape>
++
++ <shape name="status-bottom-line" from="base_line">
++ <area>0,77,1280,2</area>
++ </shape>
++
++ <shape name="scanner-progress-backdrop" from="base_backdrop">
++ <area>645,92,615,592</area>
++ </shape>
++
++ <shape name="scanner-progress-backdrop-line" from="base_backdrop_line">
++ <area>646,93,613,590</area>
++ </shape>
++
++ <shape name="scanner-progress-top-line" from="base_highlight_line">
++ <area>647,94,611,2</area>
++ </shape>
++
++ <shape name="scanner-progress-bottom-line" from="base_highlight_line">
++ <area>647,680,611,2</area>
++ </shape>
++
++ <shape name="scanner-progress-left-line" from="base_highlight_vertical_line">
++ <area>647,96,2,584</area>
++ </shape>
++
++ <shape name="scanner-progress-right-line" from="base_highlight_vertical_line">
++ <area>1256,96,2,584</area>
++ </shape>
++
++ <shape name="scanner-channels-backdrop" from="base_backdrop">
++ <area>20,92,615,592</area>
++ </shape>
++
++ <shape name="scanner-channels-backdrop-line" from="base_backdrop_line">
++ <area>21,93,613,590</area>
++ </shape>
++
++ <shape name="scanner-channels-top-line" from="base_highlight_line">
++ <area>22,94,611,2</area>
++ </shape>
++
++ <shape name="scanner-channels-bottom-line" from="base_highlight_line">
++ <area>22,680,611,2</area>
++ </shape>
++
++ <shape name="scanner-channels-left-line" from="base_highlight_vertical_line">
++ <area>22,96,2,584</area>
++ </shape>
++
++ <shape name="scanner-channels-right-line" from="base_highlight_vertical_line">
++ <area>631,96,2,584</area>
++ </shape>
++
++ <shape name="scanner-channels-arrows-backdrop" from="base_arrows_backdrop">
++ <area>1207,684,50,10</area>
++ </shape>
++
++ <textarea name="status">
++ <area>265,39,460,40</area>
++ <font>basesmall</font>
++ <align>right,vcenter</align>
++ <template>%1</template>
++ </textarea>
++
++ <textarea name="signallock" from="status">
++ <area>735,39,300,40</area>
++ <align>left,vcenter</align>
++ <template>[%1]</template>
++ </textarea>
++
++ <textarea name="scanprogresstext" from="status">
++ <area>945,39,300,40</area>
++ <template>Channels%1</template>
++ </textarea>
++
++ <textarea name="progress_label">
++ <area>60,190,535,30</area>
++ <font>basesmall</font>
++ <align>left,vcenter</align>
++ <value>Scan Progress</value>
++ </textarea>
++
++ <textarea name="progresstext" from="progress_label">
++ <area>60,240,535,30</area>
++ <font>basesmall</font>
++ <align>allcenter</align>
++ </textarea>
++
++ <progressbar name="scanprogress" from="baseprogressbar">
++ <position>60,225</position>
++ </progressbar>
++
++ <group name="noisegroup" depends="signalnoise">
++ <area>60,300,535,200</area>
++ <textarea name="signalnoise_label">
++ <area>0,0,100%,30</area>
++ <align>left,vcenter</align>
++ <font>basesmall</font>
++ <value>Signal/Noise</value>
++ </textarea>
++ <textarea name="signalnoisetext">
++ <area>0,50,100%,30</area>
++ <font>basesmall</font>
++ <align>allcenter</align>
++ </textarea>
++ <progressbar name="signalnoise" from="smallprogressbar">
++ <position>0,35</position>
++ </progressbar>
++ </group>
++
++ <group name="strengthgroup" depends="signalstrength">
++ <area>60,400,535,200</area>
++ <textarea name="signalstrength_label">
++ <area>0,0,100%,30</area>
++ <align>left,vcenter</align>
++ <font>basesmall</font>
++ <value>Signal Strength</value>
++ </textarea>
++ <textarea name="signalstrengthtext">
++ <area>0,50,100%,30</area>
++ <font>basesmall</font>
++ <align>allcenter</align>
++ </textarea>
++ <progressbar name="signalstrength" from="smallprogressbar">
++ <position>0,35</position>
++ </progressbar>
++ </group>
++
++ <group name="rotatorgroup" depends="rotorprogress">
++ <area>60,500,535,200</area>
++ <textarea name="rotorprogress_label">
++ <area>0,0,100%,30</area>
++ <align>left,vcenter</align>
++ <font>basesmall</font>
++ <value>Rotor Movement</value>
++ </textarea>
++ <textarea name="rotatorprogresstext">
++ <area>0,50,100%,30</area>
++ <font>basesmall</font>
++ <align>allcenter</align>
++ </textarea>
++ <progressbar name="rotorprogress" from="smallprogressbar">
++ <position>0,35</position>
++ </progressbar>
++ </group>
++
++ <buttonlist name="log" from="base_list">
++ <area>653,100,599,578</area>
++ <statetype name="buttonitem">
++ <state name="active">
++ <area>0,0,599,54</area>
++ <textarea name="buttontext">
++ <area>0,0,100%,100%</area>
++ <font>basesmaller</font>
++ <multiline>yes</multiline>
++ <align>allcenter</align>
++ </textarea>
++ </state>
++ <state name="selectedactive" from="active">
++ <area>0,0,599,112</area>
++ <group name="select_bar" from="base_select_bar_selectedactive_group">
++ <area>0,0,100%,100%</area>
++ <shape name="select_bar_bottom_highlight">
++ <area>0,110,100%,2</area>
++ </shape>
++ </group>
++ <textarea name="buttontext">
++ <font>basesmalleryellow</font>
++ </textarea>
++ </state>
++ <state name="selectedinactive" from="selectedactive">
++ <group name="select_bar" from="base_select_bar_selectedinactive_group">
++ <area>0,0,100%,100%</area>
++ <shape name="select_bar_bottom_highlight">
++ <area>0,110,100%,2</area>
++ </shape>
++ </group>
++ </state>
++ </statetype>
++ <statetype name="upscrollarrow">
++ <position>561,585</position>
++ </statetype>
++ <statetype name="downscrollarrow">
++ <position>581,585</position>
++ </statetype>
++ </buttonlist>
++ </window>
++
</mythuitheme>
diff --git a/abs/core/linhes-theme/gg-left-arrow-large.png b/abs/core/linhes-theme/gg-left-arrow-large.png
new file mode 100644
index 0000000..7d44070
--- /dev/null
+++ b/abs/core/linhes-theme/gg-left-arrow-large.png
Binary files differ
diff --git a/abs/core/linhes-theme/gg-right-arrow-large.png b/abs/core/linhes-theme/gg-right-arrow-large.png
new file mode 100644
index 0000000..8ff318a
--- /dev/null
+++ b/abs/core/linhes-theme/gg-right-arrow-large.png
Binary files differ
diff --git a/abs/core/linhes-theme/recordings-ui.xml.patch b/abs/core/linhes-theme/recordings-ui.xml.patch
index e70625a..15d80fc 100644
--- a/abs/core/linhes-theme/recordings-ui.xml.patch
+++ b/abs/core/linhes-theme/recordings-ui.xml.patch
@@ -1,5 +1,5 @@
---- recordings-ui.xml.orig 2017-12-19 19:51:38.610985722 +0000
-+++ recordings-ui.xml 2017-12-19 19:51:28.052356436 +0000
+--- recordings-ui.xml.orig 2018-05-25 17:44:18.266763054 +0000
++++ recordings-ui.xml 2018-05-25 17:43:56.879526676 +0000
@@ -105,19 +105,11 @@
</shape>
@@ -84,7 +84,7 @@
<font state="normal">baseextrasmall</font>
<align>right,vcenter</align>
</textarea>
-@@ -606,57 +601,48 @@
+@@ -606,60 +601,51 @@
</statetype>
</buttonlist>
@@ -153,7 +153,11 @@
+ <area>38,665,833,20</area>
<font>basesupersmallyellow</font>
<align>allcenter</align>
- <template>Disk space: %1</template>
+- <template>Disk space: %1</template>
++ <template>Disk Space: %1</template>
+ </textarea>
+
+ <imagetype name="no_preview_image_without_fanart" depends="!fanart">
@@ -688,7 +674,7 @@
<textarea name="norecordings">
<area>350,87,906,351</area>
diff --git a/abs/core/linhes-theme/schedule-ui.xml.patch b/abs/core/linhes-theme/schedule-ui.xml.patch
index 00e1066..729b250 100644
--- a/abs/core/linhes-theme/schedule-ui.xml.patch
+++ b/abs/core/linhes-theme/schedule-ui.xml.patch
@@ -1,7 +1,17 @@
---- schedule-ui.xml.orig 2017-01-12 02:24:06.812272686 +0000
-+++ schedule-ui.xml 2017-10-26 17:04:02.976373390 +0000
-@@ -126,7 +126,7 @@
- <conflictingcolor>#ff6600</conflictingcolor>
+--- schedule-ui.xml.orig 2018-06-06 17:48:28.091163462 +0000
++++ schedule-ui.xml 2018-06-06 18:04:00.119905930 +0000
+@@ -119,14 +119,14 @@
+ <channels>6</channels>
+ <timeslots>5</timeslots>
+ <solidcolor>#003256</solidcolor>
+- <selector type="roundbox" linecolor="#d6d6d6" />
++ <selector type="highlight" linecolor="#e6e6e6" fillcolor="#000000"/>
+ <showcategories>yes</showcategories>
+ <categoryalpha>130</categoryalpha>
+- <recordingcolor>#00aa00</recordingcolor>
+- <conflictingcolor>#ff6600</conflictingcolor>
++ <recordingcolor>#80d400</recordingcolor>
++ <conflictingcolor>#d97616</conflictingcolor>
<cutdown>no</cutdown>
<multiline>yes</multiline>
- <textoffset>6,7</textoffset>
@@ -9,6 +19,86 @@
<recordstatus type="SingleRecord" image="images/gg-rs-single.png"></recordstatus>
<recordstatus type="TimeslotRecord" image="images/gg-rs-timeslot.png"></recordstatus>
<recordstatus type="ChannelRecord" image="images/gg-rs-channel.png"></recordstatus>
+@@ -134,8 +134,8 @@
+ <recordstatus type="WeekslotRecord" image="images/gg-rs-weekslot.png"></recordstatus>
+ <recordstatus type="FindOneRecord" image="images/gg-rs-findone.png"></recordstatus>
+ <recordstatus type="OverrideRecord" image="images/gg-rs-override.png"></recordstatus>
+- <arrow direction="left" image="images/gg-arrow-left.png"></arrow>
+- <arrow direction="right" image="imaages/gg-arrow-right.png"></arrow>
++ <arrow direction="left" image="images/gg-left-arrow-large.png"></arrow>
++ <arrow direction="right" image="images/gg-right-arrow-large.png"></arrow>
+ <font>basesmall</font>
+ </guidegrid>
+
+@@ -146,7 +146,7 @@
+ <buttonarea>0,0,1019,41</buttonarea>
+ <statetype name="buttonitem">
+ <state name="active">
+- <area>-1,0,203,41</area>
++ <area>0,0,203,41</area>
+ <shape name="separator" from="base_vertical_line">
+ <area>0,5,2,31</area>
+ </shape>
+@@ -301,7 +301,7 @@
+ <area>0,0,1280,720</area>
+
+ <textarea name="heading" from="base_heading">
+- <value>Program Guide Video</value>
++ <value>Program Guide</value>
+ </textarea>
+
+ <shape name="guide-top-backdrop" from="base_backdrop">
+@@ -434,14 +434,14 @@
+ <channels>5</channels>
+ <timeslots>5</timeslots>
+ <solidcolor>#003256</solidcolor>
+- <selector type="roundbox" linecolor="#d6d6d6" />
++ <selector type="highlight" linecolor="#e6e6e6" fillcolor="#000000"/>
+ <showcategories>yes</showcategories>
+ <categoryalpha>130</categoryalpha>
+- <recordingcolor>#00aa00</recordingcolor>
+- <conflictingcolor>#ff6600</conflictingcolor>
++ <recordingcolor>#80d400</recordingcolor>
++ <conflictingcolor>#d97616</conflictingcolor>
+ <cutdown>no</cutdown>
+ <multiline>yes</multiline>
+- <textoffset>6,7</textoffset>
++ <textoffset>6,2</textoffset>
+ <recordstatus type="SingleRecord" image="images/gg-rs-single.png"></recordstatus>
+ <recordstatus type="TimeslotRecord" image="images/gg-rs-timeslot.png"></recordstatus>
+ <recordstatus type="ChannelRecord" image="images/gg-rs-channel.png"></recordstatus>
+@@ -449,24 +449,24 @@
+ <recordstatus type="WeekslotRecord" image="images/gg-rs-weekslot.png"></recordstatus>
+ <recordstatus type="FindOneRecord" image="images/gg-rs-findone.png"></recordstatus>
+ <recordstatus type="OverrideRecord" image="images/gg-rs-override.png"></recordstatus>
+- <arrow direction="left" image="images/gg-arrow-left.png"></arrow>
+- <arrow direction="right" image="imaages/gg-arrow-right.png"></arrow>
++ <arrow direction="left" image="images/gg-left-arrow-large.png"></arrow>
++ <arrow direction="right" image="images/gg-right-arrow-large.png"></arrow>
+ <font>basesmall</font>
+ </guidegrid>
+
+ <buttonlist name="timelist">
+- <area>238,40,1019,42</area>
++ <area>238,40,1019,41</area>
+ <layout>horizontal</layout>
+ <spacing>0</spacing>
+- <buttonarea>0,0,1019,42</buttonarea>
++ <buttonarea>0,0,1019,41</buttonarea>
+ <statetype name="buttonitem">
+ <state name="active">
+- <area>-1,0,203,42</area>
++ <area>0,0,203,41</area>
+ <shape name="separator" from="base_vertical_line">
+- <area>0,5,2,30</area>
++ <area>0,5,2,31</area>
+ </shape>
+ <textarea name="buttontext" from="basetextarea">
+- <area>0,0,203,42</area>
++ <area>0,1,203,41</area>
+ <font>basesmall</font>
+ <align>allcenter</align>
+ </textarea>
@@ -1084,7 +1084,7 @@
<textarea name="helptext">
diff --git a/abs/core/linhes-theme/status-ui.xml.patch b/abs/core/linhes-theme/status-ui.xml.patch
index 400f14c..f50061e 100644
--- a/abs/core/linhes-theme/status-ui.xml.patch
+++ b/abs/core/linhes-theme/status-ui.xml.patch
@@ -1,29 +1,33 @@
---- status-ui.xml.orig 2018-01-03 21:51:16.028700351 +0000
-+++ status-ui.xml 2018-01-03 21:21:37.423911248 +0000
-@@ -170,100 +170,140 @@
+--- status-ui.xml.orig 2018-06-01 18:03:53.259163788 +0000
++++ status-ui.xml 2018-06-01 18:02:26.000483611 +0000
+@@ -170,100 +170,152 @@
</window>
<window name="standbymode">
- <area>-1,-1,568,320</area>
+ <area>0,0,1280,720</area>
-- <animation trigger="AboutToShow">
+ <animation trigger="AboutToShow">
- <section>
- <alpha start="0" end="255" easingcurve="OutQuart"/>
- <zoom start="0" end="100" easingcurve="OutQuart"/>
-- </section>
-- </animation>
--
-- <animation trigger="AboutToHide">
-- <section>
++ <section duration="400">
++ <alpha start="0" end="255" easingcurve="InQuart"/>
+ </section>
+ </animation>
+
+ <animation trigger="AboutToHide">
+ <section>
- <alpha start="255" end="0" easingcurve="InQuart"/>
- <zoom start="100" end="0" easingcurve="InQuart"/>
-- </section>
-- </animation>
++ <alpha start="255" end="0" easingcurve="OutQuart"/>
+ </section>
+ </animation>
+
+ <textarea name="heading" from="base_heading">
+ <value>Standby</value>
+ </textarea>
-
++
<shape name="standbymode-backdrop" from="base_backdrop">
- <area>0,0,568,320</area>
+ <area>20,36,1240,649</area>
diff --git a/abs/core/linhes-theme/video-ui.xml.patch b/abs/core/linhes-theme/video-ui.xml.patch
index e3a9f7d..2a336ef 100644
--- a/abs/core/linhes-theme/video-ui.xml.patch
+++ b/abs/core/linhes-theme/video-ui.xml.patch
@@ -1,8 +1,54 @@
---- video-ui.xml.orig 2016-12-13 20:43:30.600314830 +0000
-+++ video-ui.xml 2017-10-26 19:57:07.944986189 +0000
-@@ -171,6 +171,7 @@
+--- video-ui.xml.orig 2018-04-17 14:44:43.827360598 +0000
++++ video-ui.xml 2018-04-17 14:47:36.544853593 +0000
+@@ -58,8 +58,8 @@
+ <textarea name="label" from="basetextarea">
+ <area>10,4,543,70</area>
+ <align>allcenter</align>
+- <font>baselargedarkyellow</font>
+- <value>Cast Members</value>
++ <font>baselarge</font>
++ <value>Cast</value>
+ </textarea>
+
+ <buttonlist name="cast" from="base_button_list">
+@@ -98,10 +98,10 @@
+ </state>
+ </statetype>
+ <statetype name="upscrollarrow">
+- <position>0,368</position>
++ <position>507,368</position>
+ </statetype>
+ <statetype name="downscrollarrow">
+- <position>20,368</position>
++ <position>527,368</position>
+ </statetype>
+ </buttonlist>
+
+@@ -154,7 +154,7 @@
+ </shape>
+
+ <shape name="full-plot-seperator-first-line" from="base_line">
+- <area>23,45,517,2</area>
++ <area>23,74,517,2</area>
+ </shape>
+
+ <shape name="full-plot-seperator-second-line" from="base_line">
+@@ -162,15 +162,16 @@
+ </shape>
+
+ <textarea name="label" from="basetextarea">
+- <area>24,4,515,41</area>
++ <area>10,4,543,70</area>
+ <align>allcenter</align>
+- <font>basesmalldarkyellow</font>
+- <value>Full Plot</value>
++ <font>baselarge</font>
++ <value>Plot</value>
+ </textarea>
+
<textarea name="description" from="basetextarea">
- <area>24,51,515,393</area>
+- <area>24,51,515,393</area>
++ <area>24,78,515,358</area>
<multiline>yes</multiline>
+ <scroll direction="up" rate="20" startdelay="5"/>
<font>basesmall</font>
@@ -144,16 +190,19 @@
</statetype>
<textarea name="dirlbl" from="basetextarea">
- <area>44,453,132,40</area>
+- <area>44,453,132,40</area>
- <font>basesmall</font>
++ <area>44,453,122,40</area>
+ <font>basesmallblue</font>
<align>left,vcenter</align>
- <value>Directed By:</value>
+- <value>Directed By:</value>
++ <value>Director:</value>
</textarea>
<textarea name="director" from="basetextarea">
- <area>186,453,611,40</area>
+- <area>186,453,611,40</area>
- <font>basesmallblue</font>
++ <area>176,453,621,40</area>
+ <font>basesmall</font>
<align>left,vcenter</align>
</textarea>
@@ -528,16 +577,19 @@
</statetype>
<textarea name="dirlbl" from="basetextarea">
- <area>44,448,132,34</area>
+- <area>44,448,132,34</area>
- <font>basesmall</font>
++ <area>44,448,122,34</area>
+ <font>basesmallblue</font>
<align>left,vcenter</align>
- <value>Directed By:</value>
+- <value>Directed By:</value>
++ <value>Director:</value>
</textarea>
<textarea name="director" from="basetextarea">
- <area>186,448,621,34</area>
+- <area>186,448,621,34</area>
- <font>basesmallblue</font>
++ <area>176,448,631,34</area>
+ <font>basesmall</font>
<align>left,vcenter</align>
</textarea>
@@ -862,18 +914,22 @@
<area>-165,3,158,24</area>
<font>basesmallred</font>
<cutdown>no</cutdown>
-@@ -1887,210 +1951,210 @@
+@@ -1886,211 +1950,211 @@
+ </statetype>
<textarea name="dirlbl" from="basetextarea">
- <area>40,444,132,42</area>
+- <area>40,444,132,42</area>
- <font>basesmall</font>
++ <area>40,444,102,42</area>
+ <font>basesmallblue</font>
<align>left,vcenter</align>
- <value>Directed By:</value>
+- <value>Directed By:</value>
++ <value>Director:</value>
</textarea>
<textarea name="director" from="basetextarea">
- <area>187,444,407,42</area>
+- <area>187,444,407,42</area>
++ <area>152,444,441,42</area>
+ <font>basesmall</font>
+ <align>left,vcenter</align>
+ </textarea>
@@ -1225,7 +1281,23 @@
</window>
<window name="edit_metadata">
-@@ -2947,82 +3011,84 @@
+@@ -2367,13 +2431,13 @@
+ </textedit>
+
+ <textarea name="director_text" from="basetextarea">
+- <area>40,126,124,36</area>
++ <area>40,126,114,36</area>
+ <value>Director:</value>
+ <align>right,vcenter</align>
+ </textarea>
+
+ <textedit name="director_edit" from="base_textedit">
+- <area>177,126,366,36</area>
++ <area>167,126,366,36</area>
+ </textedit>
+
+ <textarea name="tagline_text" from="basetextarea">
+@@ -2947,83 +3011,85 @@
<multiline>no</multiline>
<font>basesmalldarkyellow</font>
<align>allcenter</align>
@@ -1234,7 +1306,8 @@
</textarea>
<textarea name="description" from="basetextarea">
- <area>23,54,527,214</area>
+- <area>23,54,527,214</area>
++ <area>23,60,527,202</area>
<multiline>yes</multiline>
<font>basesmaller</font>
+ <scroll direction="up" rate="20" startdelay="5"/>
@@ -1242,7 +1315,7 @@
<textarea name="cast" from="basetextarea">
- <area>23,275,527,48</area>
-+ <area>25,275,527,43</area>
++ <area>25,279,527,38</area>
<multiline>yes</multiline>
- <font>basesmaller</font>
+ <font>baseextrasmall</font>
@@ -1250,17 +1323,20 @@
</textarea>
<textarea name="dirlbl" from="basetextarea">
- <area>23,325,112,24</area>
+- <area>23,325,112,24</area>
- <font>basesmaller</font>
+- <value>Directed by:</value>
+- <align>left,vcenter</align>
++ <area>23,325,82,24</area>
+ <font>basesmallerblue</font>
- <value>Directed by:</value>
- <align>left,vcenter</align>
++ <value>Director:</value>
++ <align>right,vcenter</align>
</textarea>
<textarea name="director" from="basetextarea">
- <area>145,326,405,24</area>
- <font>basesmallerblue</font>
-+ <area>145,325,405,24</area>
++ <area>115,325,435,24</area>
+ <font>basesmaller</font>
<align>left,vcenter</align>
</textarea>
@@ -1268,16 +1344,17 @@
<textarea name="yearlbl" from="basetextarea">
- <area>23,354,46,24</area>
- <font>basesmaller</font>
-+ <area>23,354,47,24</area>
+- <align>left,vcenter</align>
++ <area>23,354,82,24</area>
+ <font>basesmallerblue</font>
- <align>left,vcenter</align>
++ <align>right,vcenter</align>
<value>Year:</value>
</textarea>
<textarea name="year" from="basetextarea">
- <area>79,356,80,24</area>
- <font>basesmallerblue</font>
-+ <area>79,354,80,24</area>
++ <area>115,354,150,24</area>
+ <font>basesmaller</font>
</textarea>
@@ -1298,36 +1375,63 @@
</textarea>
<textarea name="seasonlbl" from="basetextarea">
- <area>88,382,90,20</area>
+- <area>88,382,90,20</area>
- <font>baseextrasmall</font>
-+ <font>baseextrasmallblue</font>
++ <area>23,380,82,24</area>
++ <font>basesmallerblue</font>
<value>Season:</value>
<align>right,vcenter</align>
</textarea>
<textarea name="season" from="basetextarea">
- <area>188,382,110,20</area>
+- <area>188,382,110,20</area>
- <font>baseextrasmallblue</font>
-+ <font>baseextrasmall</font>
- <align>vcenter</align>
+- <align>vcenter</align>
++ <area>115,380,150,24</area>
++ <font>basesmaller</font>
++ <align>left,vcenter</align>
</textarea>
<textarea name="episodelbl" from="basetextarea">
- <area>331,382,94,20</area>
+- <area>331,382,94,20</area>
- <font>baseextrasmall</font>
-+ <font>baseextrasmallblue</font>
++ <area>331,380,94,24</area>
++ <font>basesmallerblue</font>
<align>right,vcenter</align>
<value>Episode:</value>
</textarea>
<textarea name="episode" from="basetextarea">
- <area>435,382,110,20</area>
+- <area>435,382,110,20</area>
- <font>baseextrasmallblue</font>
-+ <font>baseextrasmall</font>
- <align>vcenter</align>
+- <align>vcenter</align>
++ <area>435,380,110,24</area>
++ <font>basesmaller</font>
++ <align>left,vcenter</align>
</textarea>
-@@ -3200,12 +3266,13 @@
+ <imagetype name="coverart">
+@@ -3050,6 +3116,9 @@
+ <group name="select_bar" from="base_button_select_bar_selected_group">
+ <area>0,0,100%,100%</area>
+ </group>
++ <textarea name="buttontext">
++ <font>basesmallyellow</font>
++ </textarea>
+ </state>
+ <state name="pushed" from="active">
+ <group name="select_bar" from="base_button_select_bar_pushed_group">
+@@ -3080,6 +3149,9 @@
+ <group name="select_bar" from="base_button_select_bar_selected_group">
+ <area>0,0,100%,100%</area>
+ </group>
++ <textarea name="buttontext">
++ <font>basesmallyellow</font>
++ </textarea>
+ </state>
+ <state name="pushed" from="active">
+ <group name="select_bar" from="base_button_select_bar_pushed_group">
+@@ -3200,12 +3272,13 @@
</buttonlist>
<checkbox name="altcheck" from="base_checkbox">
@@ -1343,7 +1447,7 @@
<value>Enable Alternate Player:</value>
</textarea>
-@@ -3221,19 +3288,19 @@
+@@ -3221,19 +3294,19 @@
<textarea name="helptext" from="basetextarea">
<area>239,551,802,61</area>
@@ -1368,7 +1472,7 @@
</button>
</window>
-@@ -3313,7 +3380,7 @@
+@@ -3313,7 +3386,7 @@
<position>390,175</position>
</checkbox>
@@ -1377,7 +1481,7 @@
<area>245,259,175,40</area>
<value>Trailers to Play:</value>
<align>right,vcenter</align>
-@@ -3345,21 +3412,21 @@
+@@ -3345,21 +3418,21 @@
<textarea name="helptext" from="basetextarea">
<area>239,523,802,76</area>
diff --git a/abs/core/linux-api-headers/PKGBUILD b/abs/core/linux-api-headers/PKGBUILD
index a1ef29c..dfda3b4 100644
--- a/abs/core/linux-api-headers/PKGBUILD
+++ b/abs/core/linux-api-headers/PKGBUILD
@@ -1,46 +1,45 @@
# $Id$
-# Maintainer: Allan McRae <allan@archlinux.org>
+# Maintainer: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
+# Contributor: Allan McRae <allan@archlinux.org>
# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc
pkgname=linux-api-headers
-pkgver=4.9.20
-_basever=4.9
+pkgver=4.14.8
+_basever=${pkgver%.*}
pkgrel=1
-pkgdesc="Kernel headers sanitized for use in userspace"
-arch=('i686' 'x86_64')
-url="http://www.gnu.org/software/libc"
-license=('GPL2')
-source=(http://www.kernel.org/pub/linux/kernel/v4.x/linux-${_basever}.tar.xz
- http://www.kernel.org/pub/linux/kernel/v4.x/linux-${_basever}.tar.sign
- http://www.kernel.org/pub/linux/kernel/v4.x/patch-${pkgver}.xz
- http://www.kernel.org/pub/linux/kernel/v4.x/patch-${pkgver}.sign)
-md5sums=('0a68ef3615c64bd5ee54a3320e46667d'
+pkgdesc='Kernel headers sanitized for use in userspace'
+arch=(any)
+url='http://www.gnu.org/software/libc'
+license=(GPL2)
+source=(https://www.kernel.org/pub/linux/kernel/v4.x/linux-${_basever}.tar.{xz,sign}
+ https://www.kernel.org/pub/linux/kernel/v4.x/patch-${pkgver}.{xz,sign})
+md5sums=('bacdb9ffdcd922aa069a5e1520160e24'
'SKIP'
- '1d336b33f01320e3bdbdc2d9b52aadbd'
+ 'e4a4d2abd61516d4eaf4789ca5e113ff'
'SKIP')
validpgpkeys=('ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds
'647F28654894E3BD457199BE38DBBDC86092693E') # Greg Kroah-Hartman
prepare() {
- cd ${srcdir}/linux-${_basever}
- [[ $pkgver != $_basever ]] && patch -p1 -i ${srcdir}/patch-${pkgver} || true
+ cd linux-${_basever}
+ [[ $pkgver != $_basever ]] && patch -p1 -i "$srcdir/patch-$pkgver"
}
build() {
- cd ${srcdir}/linux-${_basever}
+ cd linux-${_basever}
make mrproper
make headers_check
}
package() {
- cd ${srcdir}/linux-${_basever}
- make INSTALL_HDR_PATH=${pkgdir}/usr headers_install
+ cd linux-${_basever}
+ make INSTALL_HDR_PATH="$pkgdir/usr" headers_install
# use headers from libdrm
- rm -r ${pkgdir}/usr/include/drm
+ rm -r "$pkgdir/usr/include/drm"
# clean-up unnecessary files generated during install
- find ${pkgdir} \( -name .install -o -name ..install.cmd \) -delete
+ find "$pkgdir" \( -name .install -o -name ..install.cmd \) -delete
}
diff --git a/abs/core/linux/PKGBUILD b/abs/core/linux/PKGBUILD
index 914d8b2..2e481b0 100644
--- a/abs/core/linux/PKGBUILD
+++ b/abs/core/linux/PKGBUILD
@@ -4,7 +4,7 @@
pkgbase=linux
#pkgbase=linux-custom
_srcname=linux-4.9
-pkgver=4.9.73
+pkgver=4.9.109
pkgrel=1
arch=('x86_64')
url="https://www.kernel.org/"
@@ -25,9 +25,9 @@ source=(https://www.kernel.org/pub/linux/kernel/v4.x/${_srcname}.tar.{xz,sign}
# https://www.kernel.org/pub/linux/kernel/v4.x/sha256sums.asc
sha256sums=('029098dcffab74875e086ae970e3828456838da6e0ba22ce3f64ef764f3d7f1a'
'SKIP'
- '2af9c1806d1c4a6b90f5b105bdb6eedba8e0610712d0bab8a906bb015b2993f3'
+ 'e688e9626b60b6e3ded8545803f6c9a81ee8dcdc12c908bba757793d3ea2e427'
'SKIP'
- '2bafc851b494310056bdc1a8bd3f5342f18c50a83594f5e5bf603406c5144ae4'
+ 'a11c6643d5b39bd4a37caa1ff3135cecdd1239348580b36e0abaaa425b5ced07'
'834bd254b56ab71d73f59b3221f056c72f559553c04718e350ab2a3e2991afe0'
'1f036f7464da54ae510630f0edb69faa115287f86d9f17641197ffda8cfd49e0'
'f8f6c9e9d82fac0ad1333a15418df81e2186e6a2e257aa670d1da57b4a15cafe'
diff --git a/abs/core/linux/config b/abs/core/linux/config
index c700de9..44f0716 100644
--- a/abs/core/linux/config
+++ b/abs/core/linux/config
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 4.9.53-1 Kernel Configuration
+# Linux/x86 4.9.77-1 Kernel Configuration
#
CONFIG_64BIT=y
CONFIG_X86_64=y
@@ -222,6 +222,7 @@ CONFIG_SIGNALFD=y
CONFIG_TIMERFD=y
CONFIG_EVENTFD=y
CONFIG_BPF_SYSCALL=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_SHMEM=y
CONFIG_AIO=y
CONFIG_ADVISE_SYSCALLS=y
@@ -415,6 +416,7 @@ CONFIG_X86_FAST_FEATURE_TESTS=y
CONFIG_X86_X2APIC=y
CONFIG_X86_MPPARSE=y
# CONFIG_GOLDFISH is not set
+CONFIG_RETPOLINE=y
# CONFIG_X86_EXTENDED_PLATFORM is not set
CONFIG_X86_INTEL_LPSS=y
# CONFIG_X86_AMD_PLATFORM_DEVICE is not set
@@ -837,7 +839,6 @@ CONFIG_IA32_EMULATION=y
CONFIG_COMPAT=y
CONFIG_COMPAT_FOR_U64_ALIGNMENT=y
CONFIG_SYSVIPC_COMPAT=y
-CONFIG_KEYS_COMPAT=y
CONFIG_X86_DEV_DMA_OPS=y
CONFIG_PMC_ATOM=y
CONFIG_NET=y
@@ -1788,6 +1789,7 @@ CONFIG_DEV_COREDUMP=y
CONFIG_SYS_HYPERVISOR=y
# CONFIG_GENERIC_CPU_DEVICES is not set
CONFIG_GENERIC_CPU_AUTOPROBE=y
+CONFIG_GENERIC_CPU_VULNERABILITIES=y
CONFIG_REGMAP=y
CONFIG_REGMAP_I2C=y
CONFIG_REGMAP_SPI=y
@@ -7621,6 +7623,7 @@ CONFIG_DEFAULT_IO_DELAY_TYPE=0
# Security options
#
CONFIG_KEYS=y
+CONFIG_KEYS_COMPAT=y
CONFIG_PERSISTENT_KEYRINGS=y
# CONFIG_BIG_KEYS is not set
CONFIG_TRUSTED_KEYS=m
@@ -7628,6 +7631,7 @@ CONFIG_ENCRYPTED_KEYS=m
CONFIG_KEY_DH_OPERATIONS=y
# CONFIG_SECURITY_DMESG_RESTRICT is not set
CONFIG_SECURITY=y
+CONFIG_PAGE_TABLE_ISOLATION=y
CONFIG_SECURITYFS=y
# CONFIG_SECURITY_NETWORK is not set
CONFIG_SECURITY_PATH=y
diff --git a/abs/core/linux/linux.install.pkg b/abs/core/linux/linux.install.pkg
index 9229cc6..c9b1687 100644
--- a/abs/core/linux/linux.install.pkg
+++ b/abs/core/linux/linux.install.pkg
@@ -2,7 +2,7 @@
# arg 2: the old package version
KERNEL_NAME=
-KERNEL_VERSION=4.9.73-1-ARCH
+KERNEL_VERSION=4.9.109-1-ARCH
post_install () {
# updating module dependencies
diff --git a/abs/core/lirc/PKGBUILD b/abs/core/lirc/PKGBUILD
index c9b70c1..2734220 100644
--- a/abs/core/lirc/PKGBUILD
+++ b/abs/core/lirc/PKGBUILD
@@ -1,48 +1,55 @@
-# Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de>
+# Maintainer: Lukas Fleischer <lfleischer@archlinux.org>
# Contributor: Paul Mattal <paul@archlinux.org>
pkgname=lirc
-_pkgver=0.9.2a
+_pkgver=0.10.1
[[ $_pkgver =~ [a-z]$ ]] && pkgver="${_pkgver:0:-1}.${_pkgver: -1}" || pkgver="$_pkgver"
-pkgrel=2
+pkgrel=1
epoch=1
-pkgdesc="Linux Infrared Remote Control utils"
-arch=('i686' 'x86_64')
+pkgdesc="Linux Infrared Remote Control utilities"
+arch=('x86_64')
url="http://www.lirc.org/"
license=('GPL')
-depends=('alsa-lib' 'libx11' 'libftdi-compat' 'libirman' 'iguanair')
-makedepends=('help2man' 'alsa-lib' 'libx11' 'libftdi-compat' 'libirman' 'python2')
-#optdepends=('python: for lirc-setup, irdb-get and pronto2lirc')
+depends=('alsa-lib' 'iguanair' 'libx11' 'libftdi' 'libusb-compat')
+makedepends=('help2man' 'alsa-lib' 'libx11' 'libxslt' 'python' 'python-setuptools')
+optdepends=('python: for lirc-setup, irdb-get and pronto2lirc')
provides=('lirc-utils')
conflicts=('lirc-utils')
replaces=('lirc-utils')
-#backup=('etc/lirc/lirc_options.conf' 'etc/lirc/lircd.conf' 'etc/lirc/lircmd.conf')
-install=lirc.install
+backup=('etc/lirc/lirc_options.conf' 'etc/lirc/lircd.conf' 'etc/lirc/lircmd.conf')
source=("http://prdownloads.sourceforge.net/${pkgname}/${pkgname}-${_pkgver}.tar.bz2"
+ lirc-0.10-build-fix.patch
lirc.logrotate
lirc.tmpfiles)
-md5sums=('639a14ed0b3b34ae227a047b952ea368'
- '3deb02604b37811d41816e9b4385fcc3'
- 'febf25c154a7d36f01159e84f26c2d9a')
+sha1sums=('9d6f6d18ac566a96ef4ca1d6909a4e8bc517d48a'
+ '952ce902c94d822b0113d8e74bc6fda6a551ad7e'
+ '4342b004eb53d51fcbb9af2cf136bb4990874608'
+ '5cd3f206e6e60632d9bea2ce9d22dbe5283eb129')
-build() {
+prepare() {
cd "${srcdir}/lirc-${_pkgver}"
- # don't user python3
- sed -i 's:#!/usr/bin/env python3:#!/usr/bin/env python:' ./tools/make_rel_symlink.py
+ patch -p1 -i ../lirc-0.10-build-fix.patch
+
+ autoreconf -fi
+ automake -ac
+}
+
+build() {
+ cd "${srcdir}/lirc-${_pkgver}"
- ./configure --prefix=/usr --sbindir=/usr/bin --sysconfdir=/etc --localstatedir=/var \
- --with-transmitter --enable-sandboxed
+ HAVE_UINPUT=1 ./configure --prefix=/usr --sbindir=/usr/bin --sysconfdir=/etc --localstatedir=/var
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
package() {
cd "${srcdir}/lirc-${_pkgver}"
- make DESTDIR="${pkgdir}" install
+ make DESTDIR="${pkgdir}" -j1 install
install -Dm644 "${srcdir}"/lirc.tmpfiles "${pkgdir}"/usr/lib/tmpfiles.d/lirc.conf
install -Dm644 "${srcdir}"/lirc.logrotate "${pkgdir}"/etc/logrotate.d/lirc
- rmdir "${pkgdir}"/var/{run/lirc/,run/,}
+ rmdir "${pkgdir}"/var/{run/lirc/,run/}
}
diff --git a/abs/core/lirc/__changelog b/abs/core/lirc/__changelog
index 5d3d026..fa92350 100644
--- a/abs/core/lirc/__changelog
+++ b/abs/core/lirc/__changelog
@@ -1,5 +1 @@
PKGBUILD: add 'iguanair' to depends
-PKGBUILD: change dep python to python2
-PKGBUILD: comment out optdepends
-PKGBUILD: add sed to not use python3
-lirc.install: comment out service message
diff --git a/abs/core/lirc/lirc-0.10-build-fix.patch b/abs/core/lirc/lirc-0.10-build-fix.patch
new file mode 100644
index 0000000..41353db
--- /dev/null
+++ b/abs/core/lirc/lirc-0.10-build-fix.patch
@@ -0,0 +1,30 @@
+diff --git a/configure.ac b/configure.ac
+index 58347d8..8c7fca2 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -77,15 +77,10 @@ AC_TYPE_UINT64_T
+
+ dnl AC_TYPE_GETGROUPS seems broken on recent MacOS, so:
+ AC_MSG_CHECKING([Figure out if getgrouplist() needs gid_t or int])
+-oldcflags="$CFLAGS"
+-export CFLAGS=-Werror
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+ #include <unistd.h>
+-#include <grp.h>
+- ]], [[
+-gid_t groups[32]; int ngroups; const char* user = "root";
+-getgrouplist(user, 1, groups, &ngroups);
+- ]])],[
++int getgroups(int gidsetsize, gid_t grouplist[]);
++ ]], [[ ]])],[
+ AC_MSG_RESULT(gid_t)
+ AC_DEFINE(GETGROUPS_T,[gid_t])
+ ],[
+@@ -93,7 +88,6 @@ getgrouplist(user, 1, groups, &ngroups);
+ AC_DEFINE(GETGROUPS_T,[int])
+ ]
+ )
+-export CFLAGS="$oldcflags"
+
+ dnl Checks for library functions.
+ AC_CHECK_FUNCS(gethostname gettimeofday mkfifo select socket strdup \
diff --git a/abs/core/lirc/lirc.install b/abs/core/lirc/lirc.install
deleted file mode 100644
index cc5d931..0000000
--- a/abs/core/lirc/lirc.install
+++ /dev/null
@@ -1,13 +0,0 @@
-post_install() {
- systemd-tmpfiles --create lirc.conf
-}
-
-post_upgrade() {
- post_install
-
-# if [[ "$(vercmp $2 1:0.9.1-1)" -lt 0 ]]; then
-# echo ':: lirc.service and lircm.service have been replaced'
-# echo ' by the upstream unit files lircd.service and'
-# echo ' lircmd.service.'
-# fi
-}
diff --git a/abs/core/lockdev/PKGBUILD b/abs/core/lockdev/PKGBUILD
index 946f55d..5398e7a 100644
--- a/abs/core/lockdev/PKGBUILD
+++ b/abs/core/lockdev/PKGBUILD
@@ -1,27 +1,45 @@
+# $Id$
+# Maintainer: Lukas Fleischer <lfleischer@archlinux.org>
+# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Andreas Wagner <a.wagner@stud.uni-frankfurt.de>
+
pkgname=lockdev
-pkgver=1.0.3_1.5
+pkgver=1.0.3_1.6
_pkgver=1.0.3
-pkgrel=3
+pkgrel=4
pkgdesc='Run-time shared library for locking devices, using _both_ FSSTND and SVr4 methods.'
url='http://packages.qa.debian.org/l/lockdev.html'
license=("GPL")
-arch=('i686' 'x86_64')
+arch=('x86_64')
+depends=('glibc' 'systemd')
source=("http://ftp.debian.org/debian/pool/main/l/${pkgname}/${pkgname}_${_pkgver}.orig.tar.gz"
- "http://ftp.debian.org/debian/pool/main/l/${pkgname}/${pkgname}_${pkgver/_/-}.diff.gz")
+ "http://ftp.debian.org/debian/pool/main/l/${pkgname}/${pkgname}_${pkgver/_/-}.diff.gz"
+ 'build.patch'
+ 'gcc-4.7.patch')
+md5sums=('64b9c1b87b125fc348e892e24625524a'
+ '5ef6267c42fca9145e0af006ccb6aff7'
+ '2db93cadf6670ddcd01de4bfc22a35e1'
+ 'e16faebfa2d162d40830ef6f2700b7ba')
-build() {
+prepare() {
cd "${pkgname}-${_pkgver}"
-
patch -p1 -i "../${pkgname}_${pkgver/_/-}.diff"
sed -i "s|CFLAGS = -g|CFLAGS = -g -fPIC|" Makefile
+ patch -p1 -i ../build.patch # FS#33280
+ patch -p1 -i ../gcc-4.7.patch # FS#34457
+}
- make shared
- make static
+build() {
+ cd "${pkgname}-${_pkgver}"
+ make CFLAGS="${CFLAGS} -D_PATH_LOCK=\\\"/run/lock/lockdev\\\" -fPIC"
}
package() {
cd "${pkgname}-${_pkgver}"
make basedir="${pkgdir}/usr" install
+
+ # Setup lock directory
+ install -dm755 "$pkgdir"/usr/lib/{sysusers,tmpfiles}.d
+ echo 'g lock - - -' > "$pkgdir/usr/lib/sysusers.d/$pkgname.conf"
+ echo 'd /run/lock/lockdev 0775 root lock -' > "$pkgdir/usr/lib/tmpfiles.d/$pkgname.conf"
}
-md5sums=('64b9c1b87b125fc348e892e24625524a'
- 'c4e8a5a2e46b76b48339c232b358f579')
diff --git a/abs/core/lockdev/build.patch b/abs/core/lockdev/build.patch
new file mode 100644
index 0000000..f1053d0
--- /dev/null
+++ b/abs/core/lockdev/build.patch
@@ -0,0 +1,30 @@
+commit 0dd47123655c52d68185f06b9da8fb0e1b925400
+Author: Ludwig Nussel <ludwig.nussel@suse.de>
+Date: Tue Feb 9 14:56:23 2010 +0100
+
+ RedHat patch 2
+
+ - change library file name
+ - install devel symlink
+
+diff --git a/Makefile b/Makefile
+index b7b4d1f..3b351dd 100644
+--- a/Makefile
++++ b/Makefile
+@@ -11,7 +11,7 @@ VER = $(shell expr `pwd` : '.*-\([0-9.]*\)')
+ MVER = ${shell expr `pwd` : '.*-\([0-9]*\).[0-9]*'}
+
+ static = ${libname}.a
+-shared = ${libname}.${VER}.so
++shared = ${libname}.so.${VER}
+ soname = ${libname}.so.${MVER}
+
+ # overwritten by caller (e.g.: debian/rules)
+@@ -76,6 +76,7 @@ install_doc: docs/lockdev.3
+ install_run: ${shared}
+ install -m755 -d ${libdir}
+ install -m644 ${shared} ${libdir}
++ ln -s ${shared} ${libdir}/liblockdev.so
+
+ .PHONY: clean distclean perl-clean mostyclean
+ perl-clean: clean
diff --git a/abs/core/lockdev/gcc-4.7.patch b/abs/core/lockdev/gcc-4.7.patch
new file mode 100644
index 0000000..3b11e0b
--- /dev/null
+++ b/abs/core/lockdev/gcc-4.7.patch
@@ -0,0 +1,18 @@
+diff -Naur lockdev-1.0.3.orig/src/ttylock.h lockdev-1.0.3/src/ttylock.h
+--- lockdev-1.0.3.orig/src/ttylock.h 2013-12-13 15:34:52.195877321 +0000
++++ lockdev-1.0.3/src/ttylock.h 2013-12-13 15:38:16.131190480 +0000
+@@ -36,10 +36,10 @@
+
+ /* API of the library */
+
+-int ttylock (char * devname);
+-int ttywait (char * devname);
+-int ttyunlock (char * devname);
+-int ttylocked (char * devname);
++static inline int ttylock (char * devname);
++static inline int ttywait (char * devname);
++static inline int ttyunlock (char * devname);
++static inline int ttylocked (char * devname);
+
+
+ static inline int
diff --git a/abs/core/lsof/PKGBUILD b/abs/core/lsof/PKGBUILD
index 7d25f4c..bcbde94 100644
--- a/abs/core/lsof/PKGBUILD
+++ b/abs/core/lsof/PKGBUILD
@@ -6,16 +6,16 @@
# Contributor: Jochem Kossen <j.kossen@home.nl>
pkgname=lsof
-pkgver=4.89
+pkgver=4.90
pkgrel=1
pkgdesc="Lists open files for running Unix processes"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://people.freebsd.org/~abe/"
license=('custom')
depends=('glibc')
source=(ftp://ftp.fu-berlin.de/pub/unix/tools/lsof/lsof_$pkgver.tar.bz2
license.txt)
-sha1sums=('ea8fb2588c9732f1b22d73ffab17dd055590df2c'
+sha1sums=('9980f2ed68242c292f7aeb077d450c1e911ded88'
'db6b6d90ce895e4053f91ad25c7761fbf9a37dd6')
#validpgpkeys=(9AFD62A840BD3D55) It is PGP-2 key
diff --git a/abs/core/lvm2/PKGBUILD b/abs/core/lvm2/PKGBUILD
index e31f8a8..a449821 100644
--- a/abs/core/lvm2/PKGBUILD
+++ b/abs/core/lvm2/PKGBUILD
@@ -1,82 +1,105 @@
-# $Id: PKGBUILD 199802 2013-11-16 17:53:26Z thomas $
+# $Id$
# Maintainer: Eric Bélanger <eric@archlinux.org>
# Maintainer: Thomas Bächler <thomas@archlinux.org>
pkgbase=lvm2
pkgname=('lvm2' 'device-mapper')
-pkgver=2.02.104
-pkgrel=1
-arch=('i686' 'x86_64')
+pkgver=2.02.177
+pkgrel=4
+arch=('x86_64')
url="http://sourceware.org/lvm2/"
license=('GPL2' 'LGPL2.1')
makedepends=('systemd' 'thin-provisioning-tools')
groups=('base')
-source=(ftp://sources.redhat.com/pub/lvm2/LVM2.${pkgver}.tgz{,.asc}
- lvm2_install
- lvm2_hook
- sd-lvm2
- 11-dm-initramfs.rules
- lvm2.conf
- dmeventd.service
- dmeventd.socket
- lvm-monitoring.service
- lvmetad.service
- lvmetad.socket)
-sha1sums=('4c296453e10deafe02004fde40075cdb3792eeb2'
- 'SKIP'
- '76e83966d1bc84f9a1e30bcaff84b8b8fefbca0f'
- 'ff0fdf0a3005a41acd4b36865056109effc3474b'
- '30777d42e31cb7fe1f4fadc1e8f4c4d4cdd8ffed'
- 'f6a554eea9557c3c236df2943bb6e7e723945c41'
- 'ccefad65fde3d50331a42b0e90a1539dc7c8b9e4'
- '01782ce8e10718c1513e3906b126f30f682f5cab'
- '1d56f47a81350ae37ffbf61ee036fe31f4c5d504'
- 'aad90fce0e12eda41d38571d8eb27c5d5a8c59ec'
- 'f857a4a63fcc604a981e56875edda91767d4f1bf'
- 'fcfc265e3b10294cc4b10949a342e9db4310b186')
+validpgpkeys=('88437EF5C077BD113D3B7224228191C1567E2C17') # Alasdair G Kergon <agk@redhat.com>
+source=("https://mirrors.kernel.org/sourceware/lvm2/releases/LVM2.${pkgver}.tgz"{,.asc}
+ 'lvm2_install'
+ 'lvm2_hook'
+ 'sd-lvm2_install'
+ '11-dm-initramfs.rules')
+sha256sums=('4025a23ec9b15c2cb7486d151c29dc953b75efc4d452cfe9dbbc7c0fac8e80f2'
+ 'SKIP'
+ '5129f87a8b30d5a8621e9c1c0664910a588bdd77bff09473afb73efb41305cbb'
+ '97d7c92e4954bc0108e7cd183b2eb5fe7ecc97e6f56369669e6537cb6ed45d80'
+ 'cc1ed670a7ca21ee2ab32ad6b5ab7a6a5e86d0651ea2e1593e289a82c87aa4da'
+ 'e10f24b57582d6e2da71f7c80732a62e0ee2e3b867fe84591ccdb53e80fa92e0')
prepare() {
cd LVM2.${pkgver}
+
# enable lvmetad
sed -i 's|use_lvmetad = 0|use_lvmetad = 1|' conf/example.conf.in
+
+ # remove install section from systemd units that are enabled by default
+ sed -i -e '/^\[Install\]$/,$d' \
+ scripts/dm_event_systemd_red_hat.socket.in \
+ scripts/lvm2_lvmetad_systemd_red_hat.socket.in \
+ scripts/lvm2_lvmpolld_systemd_red_hat.socket.in \
+ scripts/lvm2_monitoring_systemd_red_hat.service.in
}
build() {
+ local CONFIGUREOPTS=(
+ --prefix=/usr
+ --sbindir=/usr/bin
+ --sysconfdir=/etc
+ --localstatedir=/var
+ --enable-applib
+ --enable-cmdlib
+ --enable-dmeventd
+ --enable-lvmetad
+ --enable-lvmpolld
+ --enable-pkgconfig
+ --enable-readline
+ --enable-udev_rules
+ --enable-udev_sync
+ --with-cache=internal
+ --with-default-dm-run-dir=/run
+ --with-default-locking-dir=/run/lock/lvm
+ --with-default-pid-dir=/run
+ --with-default-run-dir=/run/lvm
+ --with-systemdsystemunitdir=/usr/lib/systemd/system
+ --with-thin=internal
+ --with-udev-prefix=/usr
+ )
+
+ cp -a LVM2.${pkgver} LVM2-initramfs
+
cd LVM2.${pkgver}
- unset LDFLAGS
- ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --sbindir=/usr/bin \
- --with-udev-prefix=/usr --with-systemdsystemunitdir=/usr/lib/systemd/system \
- --with-default-pid-dir=/run --with-default-dm-run-dir=/run --with-default-run-dir=/run/lvm \
- --enable-pkgconfig --enable-readline --enable-dmeventd --enable-cmdlib --enable-applib \
- --enable-udev_sync --enable-udev_rules --with-default-locking-dir=/run/lock/lvm \
- --enable-lvmetad --with-thin=internal
+ ./configure "${CONFIGUREOPTS[@]}" --enable-udev-systemd-background-jobs
make
+
+ # Build legacy udev rule for initramfs
+ cd ../LVM2-initramfs
+ ./configure "${CONFIGUREOPTS[@]}" --enable-udev-systemd-background-jobs=no
+ cd udev
+ make 69-dm-lvm-metad.rules
}
package_device-mapper() {
pkgdesc="Device mapper userspace library and tools"
url="http://sourceware.org/dm/"
- depends=('glibc' 'systemd')
+ depends=('glibc' 'libsystemd')
cd LVM2.${pkgver}
make DESTDIR="${pkgdir}" install_device-mapper
# extra udev rule for device-mapper in initramfs
install -D -m644 "${srcdir}/11-dm-initramfs.rules" "${pkgdir}/usr/lib/initcpio/udev/11-dm-initramfs.rules"
# Install dmeventd socket and service
- install -D -m644 "${srcdir}/dmeventd.service" "${pkgdir}/usr/lib/systemd/system/dmeventd.service"
- install -D -m644 "${srcdir}/dmeventd.socket" "${pkgdir}/usr/lib/systemd/system/dmeventd.socket"
+ make DESTDIR="${pkgdir}" install_systemd_units
+ rm -f "${pkgdir}/usr/lib/systemd/system/"{blk-availability.service,lvm2-*}
install -d -m755 "${pkgdir}/usr/lib/systemd/system/sockets.target.wants"
- ln -sf /usr/lib/systemd/system/dmeventd.socket "${pkgdir}/usr/lib/systemd/system/sockets.target.wants/dmeventd.socket"
+ ln -sf ../dm-event.socket "${pkgdir}/usr/lib/systemd/system/sockets.target.wants/dm-event.socket"
}
package_lvm2() {
pkgdesc="Logical Volume Manager 2 utilities"
- depends=('bash' "device-mapper>=${pkgver}" 'systemd' 'readline')
+ depends=('bash' "device-mapper>=${pkgver}" 'libsystemd' 'readline' 'thin-provisioning-tools')
conflicts=('lvm' 'mkinitcpio<0.7')
- backup=('etc/lvm/lvm.conf')
+ backup=('etc/lvm/lvm.conf'
+ 'etc/lvm/lvmlocal.conf')
options=('!makeflags')
- optdepends=('thin-provisioning-tools: For thin provisioning support.')
install=lvm2.install
cd LVM2.${pkgver}
@@ -88,12 +111,15 @@ package_lvm2() {
# mkinitcpio hook
install -D -m644 "${srcdir}/lvm2_hook" "${pkgdir}/usr/lib/initcpio/hooks/lvm2"
install -D -m644 "${srcdir}/lvm2_install" "${pkgdir}/usr/lib/initcpio/install/lvm2"
- install -D -m644 "${srcdir}/sd-lvm2" "${pkgdir}/usr/lib/initcpio/install/sd-lvm2"
+ install -D -m644 "${srcdir}/sd-lvm2_install" "${pkgdir}/usr/lib/initcpio/install/sd-lvm2"
+ # extra udev rule for lvmetad in non-systemd initramfs
+ install -D -m644 "${srcdir}/LVM2-initramfs/udev/69-dm-lvm-metad.rules" "${pkgdir}/usr/lib/initcpio/udev/69-dm-lvm-metad.rules"
# systemd support
- install -D -m644 "${srcdir}/lvm2.conf" "${pkgdir}/usr/lib/tmpfiles.d/lvm2.conf"
- install -D -m644 "${srcdir}/lvm-monitoring.service" "${pkgdir}/usr/lib/systemd/system/lvm-monitoring.service"
- install -D -m644 "${srcdir}/lvmetad.service" "${pkgdir}/usr/lib/systemd/system/lvmetad.service"
- install -D -m644 "${srcdir}/lvmetad.socket" "${pkgdir}/usr/lib/systemd/system/lvmetad.socket"
- install -d -m755 "${pkgdir}/usr/lib/systemd/system/sockets.target.wants"
- ln -sf /usr/lib/systemd/system/lvmetad.socket "${pkgdir}/usr/lib/systemd/system/sockets.target.wants/lvmetad.socket"
+ make DESTDIR="${pkgdir}" install_systemd_units
+ rm -f "${pkgdir}/usr/lib/systemd/system/"dm-*
+ install -d -m755 "${pkgdir}/usr/lib/systemd/system/sysinit.target.wants"
+ ln -sf ../lvm2-lvmetad.socket "${pkgdir}/usr/lib/systemd/system/sysinit.target.wants/lvm2-lvmetad.socket"
+ ln -sf ../lvm2-lvmpolld.socket "${pkgdir}/usr/lib/systemd/system/sysinit.target.wants/lvm2-lvmpolld.socket"
+ ln -sf ../lvm2-monitor.service "${pkgdir}/usr/lib/systemd/system/sysinit.target.wants/lvm2-monitor.service"
+ make DESTDIR="${pkgdir}" install_systemd_generators
}
diff --git a/abs/core/lvm2/dmeventd.service b/abs/core/lvm2/dmeventd.service
deleted file mode 100644
index e0b1b33..0000000
--- a/abs/core/lvm2/dmeventd.service
+++ /dev/null
@@ -1,14 +0,0 @@
-[Unit]
-Description=Device-mapper event daemon
-Documentation=man:dmeventd(8)
-Requires=dmeventd.socket
-After=dmeventd.socket
-DefaultDependencies=no
-
-[Service]
-Type=forking
-ExecStart=/usr/bin/dmeventd
-ExecReload=/usr/bin/dmeventd -R
-Environment=SD_ACTIVATION=1
-PIDFile=/run/dmeventd.pid
-OOMScoreAdjust=-1000
diff --git a/abs/core/lvm2/dmeventd.socket b/abs/core/lvm2/dmeventd.socket
deleted file mode 100644
index 726d112..0000000
--- a/abs/core/lvm2/dmeventd.socket
+++ /dev/null
@@ -1,11 +0,0 @@
-[Unit]
-Description=Device-mapper event daemon FIFOs
-Documentation=man:dmeventd(8)
-Before=sockets.target
-DefaultDependencies=no
-Conflicts=shutdown.target
-
-[Socket]
-ListenFIFO=/run/dmeventd-server
-ListenFIFO=/run/dmeventd-client
-SocketMode=0600
diff --git a/abs/core/lvm2/lvm-monitoring.service b/abs/core/lvm2/lvm-monitoring.service
deleted file mode 100644
index 14b2d1d..0000000
--- a/abs/core/lvm2/lvm-monitoring.service
+++ /dev/null
@@ -1,17 +0,0 @@
-[Unit]
-Description=Monitoring of LVM2 mirrors, snapshots etc. using dmeventd or progress polling
-Documentation=man:dmeventd(8) man:lvcreate(8) man:lvchange(8) man:vgchange(8)
-Requires=dmeventd.socket
-After=dmeventd.socket lvmetad.socket
-DefaultDependencies=no
-Conflicts=shutdown.target
-
-[Service]
-Type=oneshot
-Environment=LVM_SUPPRESS_LOCKING_FAILURE_MESSAGES=1
-ExecStart=/usr/bin/lvm vgchange --monitor y
-ExecStop=/usr/bin/lvm vgchange --monitor n
-RemainAfterExit=yes
-
-[Install]
-WantedBy=sysinit.target
diff --git a/abs/core/lvm2/lvm2.conf b/abs/core/lvm2/lvm2.conf
deleted file mode 100644
index 1298245..0000000
--- a/abs/core/lvm2/lvm2.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-d /run/lock/lvm 0755 root root -
-d /run/lvm 0755 root root -
diff --git a/abs/core/lvm2/lvm2.install b/abs/core/lvm2/lvm2.install
index 7faf708..e11834d 100644
--- a/abs/core/lvm2/lvm2.install
+++ b/abs/core/lvm2/lvm2.install
@@ -11,6 +11,15 @@ post_upgrade() {
echo " into /etc/lvm/lvm.conf or LVM will fail to work."
fi
fi
+
+ if [ $(vercmp $2 2.02.106-2) -lt 0 ]; then
+ if [ -L /etc/systemd/system/sysinit.target.wants/lvm-monitoring.service ]; then
+ echo "rm /etc/systemd/system/sysinit.target.wants/lvm-monitoring.service"
+ rm /etc/systemd/system/sysinit.target.wants/lvm-monitoring.service
+ echo "ln -s /usr/lib/systemd/system/lvm2-monitor.service /etc/systemd/system/sysinit.target.wants/lvm2-monitor.service"
+ ln -s /usr/lib/systemd/system/lvm2-monitor.service /etc/systemd/system/sysinit.target.wants/lvm2-monitor.service
+ fi
+ fi
}
# vim:set ts=2 sw=2 et:
diff --git a/abs/core/lvm2/lvm2_hook b/abs/core/lvm2/lvm2_hook
index 65de7bd..3c28d67 100644
--- a/abs/core/lvm2/lvm2_hook
+++ b/abs/core/lvm2/lvm2_hook
@@ -5,6 +5,19 @@ run_earlyhook() {
lvmetad
}
+# We are suffering a race condition in non-systemd initramfs: If lvmetad is
+# killed before pvscan processes finish we have stale processes and
+# uninitialized physical volumes. So wait for pvscan processes to finish.
+# Break after 10 seconds (50*0.2s) to avaid infinite loop.
+run_latehook() {
+ local i=50
+
+ while pgrep -f pvscan >/dev/null 2>/dev/null && [ $i -gt 0 ]; do
+ sleep 0.2
+ i=$((i - 1))
+ done
+}
+
run_cleanuphook() {
kill $(cat /run/lvmetad.pid)
}
diff --git a/abs/core/lvm2/lvm2_install b/abs/core/lvm2/lvm2_install
index 6f3c1cb..e0be711 100644
--- a/abs/core/lvm2/lvm2_install
+++ b/abs/core/lvm2/lvm2_install
@@ -2,18 +2,37 @@
build() {
local mod
- for mod in dm-mod dm-snapshot dm-mirror; do
+ local symlink
+
+ # device mapper modules
+ for mod in dm-mod dm-snapshot dm-mirror dm-cache dm-cache-smq dm-thin-pool; do
add_module "$mod"
done
+ # binaries from lvm2
add_binary "/usr/bin/lvm"
add_binary "/usr/bin/lvmetad"
+
+ # beinaries from device-mapper
add_binary "/usr/bin/dmsetup"
+ add_binary "/usr/bin/dmeventd"
+
+ # these are dlopen()ed
+ for library in libdevmapper-event-lvm2{mirror,raid,snapshot,thin}; do
+ add_binary "/usr/lib/${library}.so"
+ done
+
+ # from thin-provisioning-tools
+ add_binary "/usr/bin/pdata_tools"
+ for symlink in cache_{check,dump,metadata_size,repair,restore} thin_{check,delta,dump,ls,metadata_size,repair,restore,rmap,trim}; do
+ add_symlink "/usr/bin/${symlink}" "pdata_tools"
+ done
+
add_file "/usr/lib/udev/rules.d/10-dm.rules"
add_file "/usr/lib/udev/rules.d/13-dm-disk.rules"
add_file "/usr/lib/udev/rules.d/95-dm-notify.rules"
add_file "/usr/lib/udev/rules.d/11-dm-lvm.rules"
- add_file "/usr/lib/udev/rules.d/69-dm-lvm-metad.rules"
+ add_file "/usr/lib/initcpio/udev/69-dm-lvm-metad.rules" "/usr/lib/udev/rules.d/69-dm-lvm-metad.rules"
add_file "/usr/lib/initcpio/udev/11-dm-initramfs.rules" "/usr/lib/udev/rules.d/11-dm-initramfs.rules"
add_file "/etc/lvm/lvm.conf"
diff --git a/abs/core/lvm2/lvmetad.service b/abs/core/lvm2/lvmetad.service
deleted file mode 100644
index 4be520a..0000000
--- a/abs/core/lvm2/lvmetad.service
+++ /dev/null
@@ -1,16 +0,0 @@
-[Unit]
-Description=LVM2 metadata daemon
-Documentation=man:lvmetad(8)
-Requires=lvmetad.socket
-After=lvmetad.socket
-DefaultDependencies=no
-Conflicts=shutdown.target
-
-[Service]
-Type=forking
-NonBlocking=true
-ExecStart=/usr/bin/lvmetad
-ExecReload=/usr/bin/lvmetad -R
-Environment=SD_ACTIVATION=1
-Restart=on-abort
-PIDFile=/run/lvmetad.pid
diff --git a/abs/core/lvm2/lvmetad.socket b/abs/core/lvm2/lvmetad.socket
deleted file mode 100644
index 9c0ffa5..0000000
--- a/abs/core/lvm2/lvmetad.socket
+++ /dev/null
@@ -1,10 +0,0 @@
-[Unit]
-Description=LVM2 metadata daemon socket
-Documentation=man:lvmetad(8)
-Before=sockets.target systemd-udev-trigger.service
-DefaultDependencies=no
-Conflicts=shutdown.target
-
-[Socket]
-ListenStream=/run/lvm/lvmetad.socket
-SocketMode=0600
diff --git a/abs/core/lvm2/sd-lvm2 b/abs/core/lvm2/sd-lvm2
deleted file mode 100644
index 07cb19a..0000000
--- a/abs/core/lvm2/sd-lvm2
+++ /dev/null
@@ -1,31 +0,0 @@
-#!/usr/bin/bash
-
-build() {
- local mod
- for mod in dm-mod dm-snapshot dm-mirror; do
- add_module "$mod"
- done
-
- add_binary "/usr/bin/lvm"
- add_binary "/usr/bin/lvmetad"
- add_binary "/usr/bin/dmsetup"
- add_file "/usr/lib/udev/rules.d/10-dm.rules"
- add_file "/usr/lib/udev/rules.d/13-dm-disk.rules"
- add_file "/usr/lib/udev/rules.d/95-dm-notify.rules"
- add_file "/usr/lib/udev/rules.d/11-dm-lvm.rules"
- add_file "/usr/lib/udev/rules.d/69-dm-lvm-metad.rules"
- add_file "/usr/lib/initcpio/udev/11-dm-initramfs.rules" "/usr/lib/udev/rules.d/11-dm-initramfs.rules"
- add_file "/etc/lvm/lvm.conf"
-
- add_file "/usr/lib/systemd/system/lvmetad.service"
- add_file "/usr/lib/systemd/system/lvmetad.socket"
- add_symlink "/usr/lib/systemd/system/sockets.target.wants/lvmetad.socket"
-}
-
-help() {
- cat <<HELPEOF
-This hook enables LVM2 volumes in systemd-based initramfs.
-HELPEOF
-}
-
-# vim: set ft=sh ts=4 sw=4 et:
diff --git a/abs/core/lvm2/sd-lvm2_install b/abs/core/lvm2/sd-lvm2_install
new file mode 100644
index 0000000..f90cc82
--- /dev/null
+++ b/abs/core/lvm2/sd-lvm2_install
@@ -0,0 +1,49 @@
+#!/usr/bin/bash
+
+build() {
+ local mod
+ local symlink
+
+ # device mapper modules
+ for mod in dm-mod dm-snapshot dm-mirror dm-cache dm-cache-smq dm-thin-pool; do
+ add_module "$mod"
+ done
+
+ # device mapper and lvm2 systemd units
+ # binaries and libraries are pull automatically, except ...
+ add_systemd_unit "dm-event.service"
+ add_systemd_unit "lvm2-lvmetad.service"
+ add_systemd_unit "lvm2-pvscan@.service"
+ add_symlink "/usr/lib/systemd/system/sysinit.target.wants/lvm2-lvmetad.socket"
+
+ # ... dmsetup and ...
+ add_binary "dmsetup"
+
+ # ... these, which are dlopen()ed
+ for library in libdevmapper-event-lvm2{mirror,raid,snapshot,thin}; do
+ add_binary "/usr/lib/${library}.so"
+ done
+
+ # from thin-provisioning-tools
+ add_binary "pdata_tools"
+ for symlink in cache_{check,dump,metadata_size,repair,restore} thin_{check,delta,dump,ls,metadata_size,repair,restore,rmap,trim}; do
+ add_symlink "/usr/bin/${symlink}" "pdata_tools"
+ done
+
+ # udev rules and lvm configuration
+ add_file "/usr/lib/udev/rules.d/10-dm.rules"
+ add_file "/usr/lib/udev/rules.d/13-dm-disk.rules"
+ add_file "/usr/lib/udev/rules.d/95-dm-notify.rules"
+ add_file "/usr/lib/udev/rules.d/11-dm-lvm.rules"
+ add_file "/usr/lib/udev/rules.d/69-dm-lvm-metad.rules"
+ add_file "/usr/lib/initcpio/udev/11-dm-initramfs.rules" "/usr/lib/udev/rules.d/11-dm-initramfs.rules"
+ add_file "/etc/lvm/lvm.conf"
+}
+
+help() {
+ cat <<HELPEOF
+This hook enables LVM2 volumes in systemd-based initramfs.
+HELPEOF
+}
+
+# vim: set ft=sh ts=4 sw=4 et:
diff --git a/abs/core/make/PKGBUILD b/abs/core/make/PKGBUILD
index 91f2da8..4d6b494 100644
--- a/abs/core/make/PKGBUILD
+++ b/abs/core/make/PKGBUILD
@@ -4,18 +4,25 @@
pkgname=make
pkgver=4.2.1
-pkgrel=1
+pkgrel=2
pkgdesc="GNU make utility to maintain groups of programs"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://www.gnu.org/software/make"
license=('GPL3')
groups=('base-devel')
depends=('glibc' 'guile')
-source=(ftp://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.bz2{,.sig})
+source=(ftp://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.bz2{,.sig}
+ guile-2.2.patch)
md5sums=('15b012617e7c44c0ed482721629577ac'
- 'SKIP')
+ 'SKIP'
+ '89bbbe3f806f208608e117665feb562b')
validpgpkeys=('3D2554F0A15338AB9AF1BB9D96B047156338B6D4') # Paul Smith
+prepare() {
+ cd ${pkgname}-${pkgver}
+ patch -p1 -i ${srcdir}/guile-2.2.patch
+ autoreconf -fi
+}
build() {
cd ${pkgname}-${pkgver}
diff --git a/abs/core/make/guile-2.2.patch b/abs/core/make/guile-2.2.patch
new file mode 100644
index 0000000..8e4cbc0
--- /dev/null
+++ b/abs/core/make/guile-2.2.patch
@@ -0,0 +1,15 @@
+diff --git a/configure.ac b/configure.ac
+index 64ec870..eb1139f 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -168,8 +168,8 @@ AC_ARG_WITH([guile], [AS_HELP_STRING([--with-guile],
+ # comes with it's own PC file so we have to specify them as individual
+ # packages. Ugh.
+ AS_IF([test "x$with_guile" != xno],
+-[ PKG_CHECK_MODULES([GUILE], [guile-2.0], [have_guile=yes],
+- [PKG_CHECK_MODULES([GUILE], [guile-1.8], [have_guile=yes],
++[ PKG_CHECK_MODULES([GUILE], [guile-2.2], [have_guile=yes],
++ [PKG_CHECK_MODULES([GUILE], [guile-2.0], [have_guile=yes],
+ [have_guile=no])])
+ ])
+
diff --git a/abs/core/mesa-demos/PKGBUILD b/abs/core/mesa-demos/PKGBUILD
index 68d27a5..a54101b 100644
--- a/abs/core/mesa-demos/PKGBUILD
+++ b/abs/core/mesa-demos/PKGBUILD
@@ -3,28 +3,35 @@
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
pkgname='mesa-demos'
-pkgver=8.2.0
-pkgrel=3
-arch=('i686' 'x86_64')
-pkgdesc="Mesa demos and tools"
-url="http://mesa3d.sourceforge.net"
+pkgver=8.4.0
+pkgrel=1
+arch=('x86_64')
+pkgdesc="Mesa demos and tools incl. glxinfo + glxgears"
+url="https://www.mesa3d.org/"
license=('custom')
depends=('libgl' 'glew' 'freeglut')
-source=("ftp://ftp.freedesktop.org/pub/mesa/demos/${pkgver}/mesa-demos-${pkgver}.tar.bz2"
+makedepends=('mesa' 'freetype2' 'git')
+source=(https://mesa.freedesktop.org/archive/demos/mesa-demos-$pkgver.tar.bz2{,.sig}
'LICENSE')
-sha256sums=('e4bfecb5816ddd4b7b37c1bc876b63f1f7f06fda5879221a9774d0952f90ba92'
- '7fdc119cf53c8ca65396ea73f6d10af641ba41ea1dd2bd44a824726e01c8b3f2')
+sha512sums=('b72d03cad36e0535ff18dcfb222ec4200064b9264f6da51a6e5f03b0dd912abe188bc1d600b6698de3ce6f63b28d2ce01565886ca8e7079edc4967fbf2fb0957'
+ 'SKIP'
+ '25da77914dded10c1f432ebcbf29941124138824ceecaf1367b3deedafaecabc082d463abcfa3d15abff59f177491472b505bcb5ba0c4a51bb6b93b4721a23c2')
+validpgpkeys=('E390B9700582FAEA959ACAD41EEF53D38A3A9C67') # "Andreas Boll <andreas.boll.dev@gmail.com>"
build() {
- cd mesa-demos-${pkgver}
+ cd mesa-demos-$pkgver
./configure --prefix=/usr \
--with-system-data-files=/usr/share/mesa-demos
make
}
package() {
- cd mesa-demos-${pkgver}
+ cd mesa-demos-$pkgver
make DESTDIR="${pkgdir}" install
+
+ # add missing egl files
+ install -m 0755 src/egl/opengl/{eglgears_x11,eglinfo,eglkms,egltri_x11,peglgears,xeglgears,xeglthreads} "${pkgdir}/usr/bin/"
+
install -m755 -d "${pkgdir}/usr/share/licenses/mesa-demos"
install -m755 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/mesa-demos/"
}
diff --git a/abs/core/mesa/0001-Fix-linkage-against-shared-glapi.patch b/abs/core/mesa/0001-Fix-linkage-against-shared-glapi.patch
deleted file mode 100644
index 7f8f716..0000000
--- a/abs/core/mesa/0001-Fix-linkage-against-shared-glapi.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 1b5a187c3c31513ae39cd2a917a3234c2c5f87fc Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax@redhat.com>
-Date: Wed, 12 Oct 2016 13:41:33 -0400
-Subject: [PATCH] Fix linkage against shared glapi
-
-Signed-off-by: Adam Jackson <ajax@redhat.com>
----
- src/gallium/targets/osmesa/Makefile.am | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/src/gallium/targets/osmesa/Makefile.am b/src/gallium/targets/osmesa/Makefile.am
-index 5d39486..04add87 100644
---- a/src/gallium/targets/osmesa/Makefile.am
-+++ b/src/gallium/targets/osmesa/Makefile.am
-@@ -63,7 +63,7 @@ lib@OSMESA_LIB@_la_LIBADD = \
- $(top_builddir)/src/gallium/drivers/trace/libtrace.la \
- $(top_builddir)/src/gallium/drivers/softpipe/libsoftpipe.la \
- $(top_builddir)/src/gallium/state_trackers/osmesa/libosmesa.la \
-- $(top_builddir)/src/mapi/glapi/libglapi.la \
-+ $(top_builddir)/src/mapi/shared-glapi/libglapi.la \
- $(SHARED_GLAPI_LIB) \
- $(OSMESA_LIB_DEPS) \
- $(CLOCK_LIB)
---
-2.9.3
-
diff --git a/abs/core/mesa/0002-glvnd-fix-gl-dot-pc.patch b/abs/core/mesa/0001-glvnd-fix-gl-dot-pc.patch
index 68118f4..68118f4 100644
--- a/abs/core/mesa/0002-glvnd-fix-gl-dot-pc.patch
+++ b/abs/core/mesa/0001-glvnd-fix-gl-dot-pc.patch
diff --git a/abs/core/mesa/PKGBUILD b/abs/core/mesa/PKGBUILD
index 3c0f62b..504d32b 100644
--- a/abs/core/mesa/PKGBUILD
+++ b/abs/core/mesa/PKGBUILD
@@ -4,23 +4,21 @@
pkgbase=mesa
pkgname=('opencl-mesa' 'vulkan-intel' 'vulkan-radeon' 'libva-mesa-driver' 'mesa-vdpau' 'mesa')
-pkgver=17.1.2
+pkgver=17.3.6
pkgrel=1
-arch=('i686' 'x86_64')
+arch=('x86_64')
makedepends=('python2-mako' 'libxml2' 'libx11' 'glproto' 'libdrm' 'dri2proto' 'dri3proto' 'presentproto'
- 'libxshmfence' 'libxxf86vm' 'libxdamage' 'libvdpau' 'libva' 'wayland' 'elfutils' 'llvm'
- 'libomxil-bellagio' 'libclc' 'clang' 'libglvnd' 'libunwind' 'lm_sensors')
-url="http://mesa3d.sourceforge.net"
+ 'libxshmfence' 'libxxf86vm' 'libxdamage' 'libvdpau' 'libva' 'wayland' 'wayland-protocols'
+ 'elfutils' 'llvm' 'libomxil-bellagio' 'libclc' 'clang' 'libglvnd' 'libunwind' 'lm_sensors')
+url="https://www.mesa3d.org/"
license=('custom')
source=(https://mesa.freedesktop.org/archive/mesa-${pkgver}.tar.xz{,.sig}
LICENSE
- 0001-Fix-linkage-against-shared-glapi.patch
- 0002-glvnd-fix-gl-dot-pc.patch)
-sha256sums=('0937804f43746339b1f9540d8f9c8b4a1bb3d3eec0e4020eac283b8799798239'
+ 0001-glvnd-fix-gl-dot-pc.patch)
+sha512sums=('5164ed5a1d3d25031b712a9f443f0e467a29b2bca0a1aa11324ed5c10279411979c9c7482825053926a813e76c58b78a3439c7c81fcd51a7808f53977080828f'
'SKIP'
- '7fdc119cf53c8ca65396ea73f6d10af641ba41ea1dd2bd44a824726e01c8b3f2'
- 'c68d1522f9bce4ce31c92aa7a688da49f13043f5bb2254795b76dea8f47130b7'
- '64a77944a28026b066c1682c7258d02289d257b24b6f173a9f7580c48beed966')
+ '25da77914dded10c1f432ebcbf29941124138824ceecaf1367b3deedafaecabc082d463abcfa3d15abff59f177491472b505bcb5ba0c4a51bb6b93b4721a23c2'
+ '75849eca72ca9d01c648d5ea4f6371f1b8737ca35b14be179e14c73cc51dca0739c333343cdc228a6d464135f4791bcdc21734e2debecd29d57023c8c088b028')
validpgpkeys=('8703B6700E7EE06D7A39B8D6EDAE37B02CEB490D') # Emil Velikov <emil.l.velikov@gmail.com>
validpgpkeys+=('946D09B5E4C9845E63075FF1D961C596A7203456') # Andres Gomez <tanty@igalia.com>
validpgpkeys+=('E3E8F480C52ADD73B278EE78E1ECBE07D7D70895') # Juan Antonio Suárez Romero (Igalia, S.L.) <jasuarez@igalia.com>"
@@ -30,9 +28,8 @@ prepare() {
# glvnd support patches - from Fedora
# non-upstreamed ones
- patch -Np1 -i ../0001-Fix-linkage-against-shared-glapi.patch
- patch -Np1 -i ../0002-glvnd-fix-gl-dot-pc.patch
-
+ patch -Np1 -i ../0001-glvnd-fix-gl-dot-pc.patch
+
autoreconf -fiv
}
@@ -41,7 +38,6 @@ build() {
./configure --prefix=/usr \
--sysconfdir=/etc \
- --with-dri-driverdir=/usr/lib/xorg/modules/dri \
--with-gallium-drivers=r300,r600,radeonsi,nouveau,svga,swrast,virgl,swr \
--with-dri-drivers=i915,i965,r200,radeon,nouveau,swrast \
--with-platforms=x11,drm,wayland \
@@ -65,7 +61,7 @@ build() {
--enable-texture-float \
--enable-xa \
--enable-vdpau \
- --enable-omx \
+ --enable-omx-bellagio \
--enable-nine \
--enable-opencl \
--enable-opencl-icd \
@@ -130,8 +126,8 @@ package_libva-mesa-driver() {
pkgdesc="VA-API implementation for gallium"
depends=('libdrm' 'libx11' 'llvm-libs' 'expat' 'libelf' 'libxshmfence' 'lm_sensors' 'libunwind')
- install -m755 -d ${pkgdir}/usr/lib
- cp -rv ${srcdir}/fakeinstall/usr/lib/dri ${pkgdir}/usr/lib
+ install -m755 -d ${pkgdir}/usr/lib/dri
+ cp -av ${srcdir}/fakeinstall/usr/lib/dri/*_drv_video.so ${pkgdir}/usr/lib/dri
install -m755 -d "${pkgdir}/usr/share/licenses/libva-mesa-driver"
install -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/libva-mesa-driver/"
@@ -141,8 +137,8 @@ package_mesa-vdpau() {
pkgdesc="Mesa VDPAU drivers"
depends=('libdrm' 'libx11' 'llvm-libs' 'expat' 'libelf' 'libxshmfence' 'lm_sensors' 'libunwind')
- install -m755 -d ${pkgdir}/usr/lib
- cp -rv ${srcdir}/fakeinstall/usr/lib/vdpau ${pkgdir}/usr/lib
+ install -m755 -d ${pkgdir}/usr/lib/vdpau
+ cp -av ${srcdir}/fakeinstall/usr/lib/vdpau/* ${pkgdir}/usr/lib/vdpau
install -m755 -d "${pkgdir}/usr/share/licenses/mesa-vdpau"
install -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/mesa-vdpau/"
@@ -151,13 +147,14 @@ package_mesa-vdpau() {
package_mesa() {
pkgdesc="an open-source implementation of the OpenGL specification"
depends=('libdrm' 'wayland' 'libxxf86vm' 'libxdamage' 'libxshmfence' 'libelf'
- 'libomxil-bellagio' 'libtxc_dxtn' 'libunwind' 'llvm-libs' 'lm_sensors' 'libglvnd')
+ 'libomxil-bellagio' 'libunwind' 'llvm-libs' 'lm_sensors' 'libglvnd')
optdepends=('opengl-man-pages: for the OpenGL API man pages'
'mesa-vdpau: for accelerated video playback'
'libva-mesa-driver: for accelerated video playback')
provides=('ati-dri' 'intel-dri' 'nouveau-dri' 'svga-dri' 'mesa-dri' 'mesa-libgl' 'opengl-driver')
conflicts=('ati-dri' 'intel-dri' 'nouveau-dri' 'svga-dri' 'mesa-dri' 'mesa-libgl')
replaces=('ati-dri' 'intel-dri' 'nouveau-dri' 'svga-dri' 'mesa-dri' 'mesa-libgl')
+ backup=('etc/drirc')
install -m755 -d ${pkgdir}/etc
cp -rv ${srcdir}/fakeinstall/etc/drirc ${pkgdir}/etc
@@ -165,9 +162,9 @@ package_mesa() {
install -m755 -d ${pkgdir}/usr/share/glvnd/egl_vendor.d
cp -rv ${srcdir}/fakeinstall/usr/share/glvnd/egl_vendor.d/50_mesa.json ${pkgdir}/usr/share/glvnd/egl_vendor.d/
- install -m755 -d ${pkgdir}/usr/lib/xorg/modules/dri
+ install -m755 -d ${pkgdir}/usr/lib/dri
# ati-dri, nouveau-dri, intel-dri, svga-dri, swrast
- cp -av ${srcdir}/fakeinstall/usr/lib/xorg/modules/dri/* ${pkgdir}/usr/lib/xorg/modules/dri
+ cp -av ${srcdir}/fakeinstall/usr/lib/dri/*_dri.so ${pkgdir}/usr/lib/dri
cp -rv ${srcdir}/fakeinstall/usr/lib/bellagio ${pkgdir}/usr/lib
cp -rv ${srcdir}/fakeinstall/usr/lib/d3d ${pkgdir}/usr/lib
diff --git a/abs/core/mfdb-json-git/PKGBUILD b/abs/core/mfdb-json-git/PKGBUILD
deleted file mode 100644
index aca7a60..0000000
--- a/abs/core/mfdb-json-git/PKGBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Maintainer: Jameson Pugh <imntreal@gmail.com>
-
-pkgname=mfdb-json-git
-pkgver=6e5d774
-pkgrel=1
-pkgdesc="mythfilldatabase replacement for new SchedulesDirect format"
-arch=('i686' 'x86_64')
-url="https://github.com/SchedulesDirect/mfdb-json"
-license=('GPLv2')
-depends=('php-composer')
-provides=(mfdb-json)
-conflicts=(mfdb-json)
-source=("mfdb-json-git::git://github.com/SchedulesDirect/mfdb-json#branch=API-20140530")
-sha256sums=('SKIP')
-
-pkgver() {
- cd ${pkgname}
- git describe --always | sed 's|-|.|g'
-}
-
-package() {
- cd "${srcdir}/${pkgname}"
-
- composer install
- install -dm 755 "${pkgdir}/opt/mfdb-json"
- install -dm 755 "${pkgdir}/usr/bin"
- cp -rv ./* "${pkgdir}/opt/mfdb-json"
- ln -s /opt/mfdb-json/sd-utility.php "${pkgdir}/usr/bin/sd-utility"
- ln -s /opt/mfdb-json/mfdb-json.php "${pkgdir}/usr/bin/mfdb-json"
-}
-
-# vim: set ts=2 sw=2 ft=sh noet:
diff --git a/abs/core/mpfr/PKGBUILD b/abs/core/mpfr/PKGBUILD
index 4912c45..0f21bef 100644
--- a/abs/core/mpfr/PKGBUILD
+++ b/abs/core/mpfr/PKGBUILD
@@ -1,36 +1,33 @@
-# $Id: PKGBUILD 163011 2012-07-05 13:48:54Z allan $
+# $Id$
# Maintainer: Allan McRae <allan@archlinux.org>
# Contributor: damir <damir@archlinux.org>
pkgname=mpfr
-_pkgver=3.1.1
-#_patchlevel=p1
-#pkgver=${_pkgver}.${_patchlevel}
-pkgver=${_pkgver}
+pkgver=4.0.1
pkgrel=1
-pkgdesc="Multiple-precision floating-point library"
-arch=('i686' 'x86_64')
-url="http://www.mpfr.org/"
-license=('LGPL')
+pkgdesc='Multiple-precision floating-point library'
+arch=(x86_64)
+url='http://www.mpfr.org/'
+license=(LGPL)
depends=('gmp>=5.0')
-options=('!libtool')
-install=mpfr.install
-source=(http://www.mpfr.org/mpfr-current/mpfr-${_pkgver}.tar.xz{,.asc})
-md5sums=('91d51c41fcf2799e4ee7a7126fc95c17'
- '91b187a2229211e543ba6fb82a079b2c')
+source=(http://www.mpfr.org/mpfr-$pkgver/mpfr-${pkgver}.tar.xz{,.asc})
+validpgpkeys=('07F3DBBECC1A39605078094D980C197698C3739D')
+sha256sums=('67874a60826303ee2fb6affc6dc0ddd3e749e9bfcb4c8655e3953d0458a6e16e'
+ 'SKIP')
build() {
- cd "${srcdir}/${pkgname}-${_pkgver}"
+ cd $pkgname-$pkgver
./configure --prefix=/usr --enable-thread-safe --enable-shared
make
}
check() {
- cd "${srcdir}/${pkgname}-${_pkgver}"
+ cd $pkgname-$pkgver
make check
+ make check-exported-symbols
}
package() {
- cd "${srcdir}/${pkgname}-${_pkgver}"
- make DESTDIR="${pkgdir}" install
+ cd $pkgname-$pkgver
+ make DESTDIR="$pkgdir" install
}
diff --git a/abs/core/mpfr/mpfr-3.1.0.p10.patch b/abs/core/mpfr/mpfr-3.1.0.p10.patch
deleted file mode 100644
index 0073be7..0000000
--- a/abs/core/mpfr/mpfr-3.1.0.p10.patch
+++ /dev/null
@@ -1,1896 +0,0 @@
-diff -Naurd mpfr-3.1.0-a/PATCHES mpfr-3.1.0-b/PATCHES
---- mpfr-3.1.0-a/PATCHES 2011-10-05 21:39:57.000000000 +0000
-+++ mpfr-3.1.0-b/PATCHES 2011-10-05 21:39:57.000000000 +0000
-@@ -0,0 +1 @@
-+mpfr_unlikely
-diff -Naurd mpfr-3.1.0-a/VERSION mpfr-3.1.0-b/VERSION
---- mpfr-3.1.0-a/VERSION 2011-10-03 08:17:15.000000000 +0000
-+++ mpfr-3.1.0-b/VERSION 2011-10-05 21:39:57.000000000 +0000
-@@ -1 +1 @@
--3.1.0
-+3.1.0-p1
-diff -Naurd mpfr-3.1.0-a/src/mpfr-impl.h mpfr-3.1.0-b/src/mpfr-impl.h
---- mpfr-3.1.0-a/src/mpfr-impl.h 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/mpfr-impl.h 2011-10-05 21:39:57.000000000 +0000
-@@ -988,10 +988,11 @@
- ******************************************************/
-
- /* Theses macros help the compiler to determine if a test is
-- * likely or unlikely. */
-+ likely or unlikely. The !! is necessary in case x is larger
-+ than a long. */
- #if __MPFR_GNUC(3,0) || __MPFR_ICC(8,1,0)
- # define MPFR_LIKELY(x) (__builtin_expect(!!(x),1))
--# define MPFR_UNLIKELY(x) (__builtin_expect((x),0))
-+# define MPFR_UNLIKELY(x) (__builtin_expect(!!(x),0))
- #else
- # define MPFR_LIKELY(x) (x)
- # define MPFR_UNLIKELY(x) (x)
-diff -Naurd mpfr-3.1.0-a/src/mpfr.h mpfr-3.1.0-b/src/mpfr.h
---- mpfr-3.1.0-a/src/mpfr.h 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/mpfr.h 2011-10-05 21:39:57.000000000 +0000
-@@ -27,7 +27,7 @@
- #define MPFR_VERSION_MAJOR 3
- #define MPFR_VERSION_MINOR 1
- #define MPFR_VERSION_PATCHLEVEL 0
--#define MPFR_VERSION_STRING "3.1.0"
-+#define MPFR_VERSION_STRING "3.1.0-p1"
-
- /* Macros dealing with MPFR VERSION */
- #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
-diff -Naurd mpfr-3.1.0-a/src/version.c mpfr-3.1.0-b/src/version.c
---- mpfr-3.1.0-a/src/version.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/version.c 2011-10-05 21:39:57.000000000 +0000
-@@ -25,5 +25,5 @@
- const char *
- mpfr_get_version (void)
- {
-- return "3.1.0";
-+ return "3.1.0-p1";
- }
-diff -Naurd mpfr-3.1.0-a/PATCHES mpfr-3.1.0-b/PATCHES
---- mpfr-3.1.0-a/PATCHES 2011-10-14 10:43:32.000000000 +0000
-+++ mpfr-3.1.0-b/PATCHES 2011-10-14 10:43:32.000000000 +0000
-@@ -0,0 +1 @@
-+lib-search-path
-diff -Naurd mpfr-3.1.0-a/VERSION mpfr-3.1.0-b/VERSION
---- mpfr-3.1.0-a/VERSION 2011-10-05 21:39:57.000000000 +0000
-+++ mpfr-3.1.0-b/VERSION 2011-10-14 10:43:32.000000000 +0000
-@@ -1 +1 @@
--3.1.0-p1
-+3.1.0-p2
-diff -Naurd mpfr-3.1.0-a/src/mpfr.h mpfr-3.1.0-b/src/mpfr.h
---- mpfr-3.1.0-a/src/mpfr.h 2011-10-05 21:39:57.000000000 +0000
-+++ mpfr-3.1.0-b/src/mpfr.h 2011-10-14 10:43:32.000000000 +0000
-@@ -27,7 +27,7 @@
- #define MPFR_VERSION_MAJOR 3
- #define MPFR_VERSION_MINOR 1
- #define MPFR_VERSION_PATCHLEVEL 0
--#define MPFR_VERSION_STRING "3.1.0-p1"
-+#define MPFR_VERSION_STRING "3.1.0-p2"
-
- /* Macros dealing with MPFR VERSION */
- #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
-diff -Naurd mpfr-3.1.0-a/src/version.c mpfr-3.1.0-b/src/version.c
---- mpfr-3.1.0-a/src/version.c 2011-10-05 21:39:57.000000000 +0000
-+++ mpfr-3.1.0-b/src/version.c 2011-10-14 10:43:32.000000000 +0000
-@@ -25,5 +25,5 @@
- const char *
- mpfr_get_version (void)
- {
-- return "3.1.0-p1";
-+ return "3.1.0-p2";
- }
-diff -Naurd mpfr-3.1.0-a/tests/Makefile.am mpfr-3.1.0-b/tests/Makefile.am
---- mpfr-3.1.0-a/tests/Makefile.am 2011-10-03 08:17:14.000000000 +0000
-+++ mpfr-3.1.0-b/tests/Makefile.am 2011-10-03 08:17:14.000000000 +0000
-@@ -65,8 +65,24 @@
- TESTS = $(check_PROGRAMS)
- TESTS_ENVIRONMENT = MPFR_QUIET=1 $(VALGRIND)
-
--# Option to prevent libtool from generating wrapper scripts for the tests.
-+# The -no-install option prevents libtool from generating wrapper scripts
-+# for the tests.
- # This is useful to easily run the test scripts under valgrind or gdb.
- # See discussion http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/28033
- # http://article.gmane.org/gmane.comp.lib.gnulib.bugs/28140 in particular.
--AM_LDFLAGS = -no-install
-+#
-+# The -L$(top_builddir)/src/.libs option is necessary for some platforms,
-+# such as HP-UX, when --with-gmp or --with-gmp-lib is used and an old MPFR
-+# library is already installed in the corresponding lib directory: its
-+# purpose is to make sure that the local .libs comes first in the library
-+# search path (otherwise the tests are linked against the old MPFR library
-+# by the LINK command -- see the generated Makefile). See:
-+# http://websympa.loria.fr/wwsympa/arc/mpfr/2011-10/msg00042.html
-+# http://websympa.loria.fr/wwsympa/arc/mpfr/2011-10/msg00043.html
-+# http://websympa.loria.fr/wwsympa/arc/mpfr/2011-10/msg00044.html
-+# http://websympa.loria.fr/wwsympa/arc/mpfr/2011-10/msg00066.html
-+# http://websympa.loria.fr/wwsympa/arc/mpfr/2011-10/msg00065.html
-+# and
-+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9728
-+#
-+AM_LDFLAGS = -no-install -L$(top_builddir)/src/.libs
-diff -Naurd mpfr-3.1.0-a/tests/Makefile.in mpfr-3.1.0-b/tests/Makefile.in
---- mpfr-3.1.0-a/tests/Makefile.in 2011-10-03 08:17:35.000000000 +0000
-+++ mpfr-3.1.0-b/tests/Makefile.in 2011-10-03 08:17:35.000000000 +0000
-@@ -1124,11 +1124,27 @@
- TESTS = $(check_PROGRAMS)
- TESTS_ENVIRONMENT = MPFR_QUIET=1 $(VALGRIND)
-
--# Option to prevent libtool from generating wrapper scripts for the tests.
-+# The -no-install option prevents libtool from generating wrapper scripts
-+# for the tests.
- # This is useful to easily run the test scripts under valgrind or gdb.
- # See discussion http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/28033
- # http://article.gmane.org/gmane.comp.lib.gnulib.bugs/28140 in particular.
--AM_LDFLAGS = -no-install
-+#
-+# The -L$(top_builddir)/src/.libs option is necessary for some platforms,
-+# such as HP-UX, when --with-gmp or --with-gmp-lib is used and an old MPFR
-+# library is already installed in the corresponding lib directory: its
-+# purpose is to make sure that the local .libs comes first in the library
-+# search path (otherwise the tests are linked against the old MPFR library
-+# by the LINK command -- see the generated Makefile). See:
-+# http://websympa.loria.fr/wwsympa/arc/mpfr/2011-10/msg00042.html
-+# http://websympa.loria.fr/wwsympa/arc/mpfr/2011-10/msg00043.html
-+# http://websympa.loria.fr/wwsympa/arc/mpfr/2011-10/msg00044.html
-+# http://websympa.loria.fr/wwsympa/arc/mpfr/2011-10/msg00066.html
-+# http://websympa.loria.fr/wwsympa/arc/mpfr/2011-10/msg00065.html
-+# and
-+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9728
-+#
-+AM_LDFLAGS = -no-install -L$(top_builddir)/src/.libs
- all: all-am
-
- .SUFFIXES:
-diff -Naurd mpfr-3.1.0-a/PATCHES mpfr-3.1.0-b/PATCHES
---- mpfr-3.1.0-a/PATCHES 2011-11-03 15:15:11.000000000 +0000
-+++ mpfr-3.1.0-b/PATCHES 2011-11-03 15:15:11.000000000 +0000
-@@ -0,0 +1 @@
-+vasprintf
-diff -Naurd mpfr-3.1.0-a/VERSION mpfr-3.1.0-b/VERSION
---- mpfr-3.1.0-a/VERSION 2011-10-14 10:43:32.000000000 +0000
-+++ mpfr-3.1.0-b/VERSION 2011-11-03 15:15:11.000000000 +0000
-@@ -1 +1 @@
--3.1.0-p2
-+3.1.0-p3
-diff -Naurd mpfr-3.1.0-a/src/mpfr.h mpfr-3.1.0-b/src/mpfr.h
---- mpfr-3.1.0-a/src/mpfr.h 2011-10-14 10:43:32.000000000 +0000
-+++ mpfr-3.1.0-b/src/mpfr.h 2011-11-03 15:15:11.000000000 +0000
-@@ -27,7 +27,7 @@
- #define MPFR_VERSION_MAJOR 3
- #define MPFR_VERSION_MINOR 1
- #define MPFR_VERSION_PATCHLEVEL 0
--#define MPFR_VERSION_STRING "3.1.0-p2"
-+#define MPFR_VERSION_STRING "3.1.0-p3"
-
- /* Macros dealing with MPFR VERSION */
- #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
-diff -Naurd mpfr-3.1.0-a/src/vasprintf.c mpfr-3.1.0-b/src/vasprintf.c
---- mpfr-3.1.0-a/src/vasprintf.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/vasprintf.c 2011-11-03 15:15:11.000000000 +0000
-@@ -1178,7 +1178,7 @@
- mpfr_exp_t exp;
- char * str;
- const int spec_g = (spec.spec == 'g' || spec.spec == 'G');
-- const int keep_trailing_zeros = spec_g && spec.alt;
-+ const int keep_trailing_zeros = !spec_g || spec.alt;
-
- /* WARNING: an empty precision field is forbidden (it means precision = 6
- and it should have been changed to 6 before the function call) */
-@@ -1356,7 +1356,7 @@
- else
- /* 1 <= |p| */
- {
-- size_t nsd; /* Number of significant digits */
-+ size_t str_len;
-
- /* Determine the position of the most significant decimal digit. */
- exp = floor_log10 (p);
-@@ -1365,12 +1365,10 @@
- /* P is too large to print all its integral part digits */
- return -1;
-
-- np->ip_size = exp + 1;
--
-- nsd = spec.prec + np->ip_size;
- if (dec_info == NULL)
-- {
-- str = mpfr_get_str (NULL, &exp, 10, nsd, p, spec.rnd_mode);
-+ { /* this case occurs with mpfr_printf ("%.0RUf", x) with x=9.5 */
-+ str =
-+ mpfr_get_str (NULL, &exp, 10, spec.prec+exp+1, p, spec.rnd_mode);
- register_string (np->sl, str);
- }
- else
-@@ -1379,81 +1377,60 @@
- str = dec_info->str;
- }
- np->ip_ptr = MPFR_IS_NEG (p) ? ++str : str; /* skip sign */
-+ str_len = strlen (str);
-+
-+ /* integral part */
-+ if (exp > str_len)
-+ /* mpfr_get_str gives no trailing zero when p is rounded up to the next
-+ power of 10 (p integer, so no fractional part) */
-+ {
-+ np->ip_trailing_zeros = exp - str_len;
-+ np->ip_size = str_len;
-+ }
-+ else
-+ np->ip_size = exp;
-
- if (spec.group)
- /* thousands separator in integral part */
- np->thousands_sep = MPFR_THOUSANDS_SEPARATOR;
-
-- if (nsd == 0 || (spec_g && !spec.alt))
-- /* compute how much non-zero digits in integral and fractional
-- parts */
-+ /* fractional part */
-+ str += np->ip_size;
-+ str_len -= np->ip_size;
-+ if (!keep_trailing_zeros)
-+ /* remove trailing zeros, if any */
- {
-- size_t str_len;
-- str_len = strlen (str); /* note: the sign has been skipped */
--
-- if (exp > str_len)
-- /* mpfr_get_str doesn't give the trailing zeros when p is a
-- multiple of 10 (p integer, so no fractional part) */
-- {
-- np->ip_trailing_zeros = exp - str_len;
-- np->ip_size = str_len;
-- if (spec.alt)
-- np->point = MPFR_DECIMAL_POINT;
-- }
-- else
-- /* str may contain some digits which are in fractional part */
-+ char *ptr = str + str_len - 1; /* pointer to the last digit of
-+ str */
-+ while ((*ptr == '0') && (str_len != 0))
- {
-- char *ptr;
--
-- ptr = str + str_len - 1; /* points to the end of str */
-- str_len -= np->ip_size; /* number of digits in fractional
-- part */
--
-- if (!keep_trailing_zeros)
-- /* remove trailing zeros, if any */
-- {
-- while ((*ptr == '0') && (str_len != 0))
-- {
-- --ptr;
-- --str_len;
-- }
-- }
--
-- if (str_len > INT_MAX)
-- /* too many digits in fractional part */
-- return -1;
--
-- if (str_len != 0)
-- /* some digits in fractional part */
-- {
-- np->point = MPFR_DECIMAL_POINT;
-- np->fp_ptr = str + np->ip_size;
-- np->fp_size = str_len;
-- }
-+ --ptr;
-+ --str_len;
- }
- }
-- else
-- /* spec.prec digits in fractional part */
-+
-+ if (str_len > 0)
-+ /* some nonzero digits in fractional part */
- {
-- if (np->ip_size == exp - 1)
-- /* the absolute value of the number has been rounded up to a power
-- of ten.
-- Insert an additional zero in integral part and put the rest of
-- them in fractional part. */
-- np->ip_trailing_zeros = 1;
-+ if (str_len > INT_MAX)
-+ /* too many digits in fractional part */
-+ return -1;
-
-- if (spec.prec != 0)
-- {
-- MPFR_ASSERTD (np->ip_size + np->ip_trailing_zeros == exp);
-- MPFR_ASSERTD (np->ip_size + spec.prec == nsd);
-+ np->point = MPFR_DECIMAL_POINT;
-+ np->fp_ptr = str;
-+ np->fp_size = str_len;
-+ }
-
-- np->point = MPFR_DECIMAL_POINT;
-- np->fp_ptr = str + np->ip_size;
-- np->fp_size = spec.prec;
-- }
-- else if (spec.alt)
-- np->point = MPFR_DECIMAL_POINT;
-+ if (keep_trailing_zeros && str_len < spec.prec)
-+ /* add missing trailing zeros */
-+ {
-+ np->point = MPFR_DECIMAL_POINT;
-+ np->fp_trailing_zeros = spec.prec - np->fp_size;
- }
-+
-+ if (spec.alt)
-+ /* add decimal point even if no digits follow it */
-+ np->point = MPFR_DECIMAL_POINT;
- }
-
- return 0;
-diff -Naurd mpfr-3.1.0-a/src/version.c mpfr-3.1.0-b/src/version.c
---- mpfr-3.1.0-a/src/version.c 2011-10-14 10:43:32.000000000 +0000
-+++ mpfr-3.1.0-b/src/version.c 2011-11-03 15:15:11.000000000 +0000
-@@ -25,5 +25,5 @@
- const char *
- mpfr_get_version (void)
- {
-- return "3.1.0-p2";
-+ return "3.1.0-p3";
- }
-diff -Naurd mpfr-3.1.0-a/tests/tsprintf.c mpfr-3.1.0-b/tests/tsprintf.c
---- mpfr-3.1.0-a/tests/tsprintf.c 2011-10-03 08:17:14.000000000 +0000
-+++ mpfr-3.1.0-b/tests/tsprintf.c 2011-11-03 15:15:11.000000000 +0000
-@@ -475,6 +475,18 @@
- check_sprintf ("-1.", "%- #0.1RG", x);
-
- /* precision zero */
-+ mpfr_set_d (x, 9.5, MPFR_RNDN);
-+ check_sprintf ("9", "%.0RDf", x);
-+ check_sprintf ("10", "%.0RUf", x);
-+
-+ mpfr_set_d (x, 19.5, MPFR_RNDN);
-+ check_sprintf ("19", "%.0RDf", x);
-+ check_sprintf ("20", "%.0RUf", x);
-+
-+ mpfr_set_d (x, 99.5, MPFR_RNDN);
-+ check_sprintf ("99", "%.0RDf", x);
-+ check_sprintf ("100", "%.0RUf", x);
-+
- mpfr_set_d (x, -9.5, MPFR_RNDN);
- check_sprintf ("-10", "%.0RDf", x);
- check_sprintf ("-10", "%.0RYf", x);
-@@ -1078,6 +1090,23 @@
- mpfr_clear (x);
- }
-
-+static void
-+bug20111102 (void)
-+{
-+ mpfr_t t;
-+ char s[100];
-+
-+ mpfr_init2 (t, 84);
-+ mpfr_set_str (t, "999.99999999999999999999", 10, MPFR_RNDN);
-+ mpfr_sprintf (s, "%.20RNg", t);
-+ if (strcmp (s, "1000") != 0)
-+ {
-+ printf ("Error in bug20111102, expected 1000, got %s\n", s);
-+ exit (1);
-+ }
-+ mpfr_clear (t);
-+}
-+
- /* In particular, the following test makes sure that the rounding
- * for %Ra and %Rb is not done on the MPFR number itself (as it
- * would overflow). Note: it has been reported on comp.std.c that
-@@ -1161,6 +1190,7 @@
- locale = setlocale (LC_ALL, "C");
- #endif
-
-+ bug20111102 ();
- native_types ();
- hexadecimal ();
- binary ();
-diff -Naurd mpfr-3.1.0-a/PATCHES mpfr-3.1.0-b/PATCHES
---- mpfr-3.1.0-a/PATCHES 2011-11-28 12:22:52.000000000 +0000
-+++ mpfr-3.1.0-b/PATCHES 2011-11-28 12:22:52.000000000 +0000
-@@ -0,0 +1 @@
-+gmp41compat
-diff -Naurd mpfr-3.1.0-a/VERSION mpfr-3.1.0-b/VERSION
---- mpfr-3.1.0-a/VERSION 2011-11-03 15:15:11.000000000 +0000
-+++ mpfr-3.1.0-b/VERSION 2011-11-28 12:22:52.000000000 +0000
-@@ -1 +1 @@
--3.1.0-p3
-+3.1.0-p4
-diff -Naurd mpfr-3.1.0-a/doc/mpfr.info mpfr-3.1.0-b/doc/mpfr.info
---- mpfr-3.1.0-a/doc/mpfr.info 2011-10-03 09:43:04.000000000 +0000
-+++ mpfr-3.1.0-b/doc/mpfr.info 2011-11-28 12:22:52.000000000 +0000
-@@ -2994,11 +2994,12 @@
-
- * `mpfr_urandom' and `mpfr_urandomb' changed in MPFR 3.1. Their
- behavior no longer depends on the platform (assuming this is also
-- true for GMP's random generator). As a consequence, the returned
-- values can be different between MPFR 3.1 and previous MPFR
-- versions. Note: as the reproducibility of these functions was not
-- specified before MPFR 3.1, the MPFR 3.1 behavior is _not_ regarded
-- as backward incompatible with previous versions.
-+ true for GMP's random generator, which is not the case between GMP
-+ 4.1 and 4.2 if `gmp_randinit_default' is used). As a consequence,
-+ the returned values can be different between MPFR 3.1 and previous
-+ MPFR versions. Note: as the reproducibility of these functions
-+ was not specified before MPFR 3.1, the MPFR 3.1 behavior is _not_
-+ regarded as backward incompatible with previous versions.
-
-
- 
-@@ -4239,13 +4240,13 @@
- Node: Type and Macro Changes129308
- Node: Added Functions132029
- Node: Changed Functions134972
--Node: Removed Functions139167
--Node: Other Changes139579
--Node: Contributors141108
--Node: References143574
--Node: GNU Free Documentation License145315
--Node: Concept Index167758
--Node: Function and Type Index173677
-+Node: Removed Functions139253
-+Node: Other Changes139665
-+Node: Contributors141194
-+Node: References143660
-+Node: GNU Free Documentation License145401
-+Node: Concept Index167844
-+Node: Function and Type Index173763
- 
- End Tag Table
-
-diff -Naurd mpfr-3.1.0-a/doc/mpfr.texi mpfr-3.1.0-b/doc/mpfr.texi
---- mpfr-3.1.0-a/doc/mpfr.texi 2011-10-03 08:17:14.000000000 +0000
-+++ mpfr-3.1.0-b/doc/mpfr.texi 2011-11-28 12:22:52.000000000 +0000
-@@ -3466,8 +3466,9 @@
- a lack of specification.
-
- @item @code{mpfr_urandom} and @code{mpfr_urandomb} changed in MPFR 3.1.
--Their behavior no longer depends on the platform (assuming this is also
--true for GMP's random generator). As a consequence, the returned values
-+Their behavior no longer depends on the platform (assuming this is also true
-+for GMP's random generator, which is not the case between GMP 4.1 and 4.2 if
-+@code{gmp_randinit_default} is used). As a consequence, the returned values
- can be different between MPFR 3.1 and previous MPFR versions.
- Note: as the reproducibility of these functions was not specified
- before MPFR 3.1, the MPFR 3.1 behavior is @emph{not} regarded as
-diff -Naurd mpfr-3.1.0-a/src/mpfr.h mpfr-3.1.0-b/src/mpfr.h
---- mpfr-3.1.0-a/src/mpfr.h 2011-11-03 15:15:11.000000000 +0000
-+++ mpfr-3.1.0-b/src/mpfr.h 2011-11-28 12:22:52.000000000 +0000
-@@ -27,7 +27,7 @@
- #define MPFR_VERSION_MAJOR 3
- #define MPFR_VERSION_MINOR 1
- #define MPFR_VERSION_PATCHLEVEL 0
--#define MPFR_VERSION_STRING "3.1.0-p3"
-+#define MPFR_VERSION_STRING "3.1.0-p4"
-
- /* Macros dealing with MPFR VERSION */
- #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
-diff -Naurd mpfr-3.1.0-a/src/version.c mpfr-3.1.0-b/src/version.c
---- mpfr-3.1.0-a/src/version.c 2011-11-03 15:15:11.000000000 +0000
-+++ mpfr-3.1.0-b/src/version.c 2011-11-28 12:22:52.000000000 +0000
-@@ -25,5 +25,5 @@
- const char *
- mpfr_get_version (void)
- {
-- return "3.1.0-p3";
-+ return "3.1.0-p4";
- }
-diff -Naurd mpfr-3.1.0-a/tests/trandom.c mpfr-3.1.0-b/tests/trandom.c
---- mpfr-3.1.0-a/tests/trandom.c 2011-10-03 08:17:14.000000000 +0000
-+++ mpfr-3.1.0-b/tests/trandom.c 2011-11-28 12:22:52.000000000 +0000
-@@ -114,21 +114,29 @@
- mpfr_t x;
- gmp_randstate_t s;
-
-+#if __MPFR_GMP(4,2,0)
-+# define C1 "0.895943"
-+# define C2 "0.848824"
-+#else
-+# define C1 "0.479652"
-+# define C2 "0.648529"
-+#endif
-+
- gmp_randinit_default (s);
- gmp_randseed_ui (s, 42);
- mpfr_init2 (x, 17);
- mpfr_urandomb (x, s);
-- if (mpfr_cmp_str1 (x, "0.895943") != 0)
-+ if (mpfr_cmp_str1 (x, C1) != 0)
- {
-- printf ("Error in bug20100914, expected 0.895943, got ");
-+ printf ("Error in bug20100914, expected " C1 ", got ");
- mpfr_out_str (stdout, 10, 0, x, MPFR_RNDN);
- printf ("\n");
- exit (1);
- }
- mpfr_urandomb (x, s);
-- if (mpfr_cmp_str1 (x, "0.848824") != 0)
-+ if (mpfr_cmp_str1 (x, C2) != 0)
- {
-- printf ("Error in bug20100914, expected 0.848824, got ");
-+ printf ("Error in bug20100914, expected " C2 ", got ");
- mpfr_out_str (stdout, 10, 0, x, MPFR_RNDN);
- printf ("\n");
- exit (1);
-diff -Naurd mpfr-3.1.0-a/tests/turandom.c mpfr-3.1.0-b/tests/turandom.c
---- mpfr-3.1.0-a/tests/turandom.c 2011-10-03 08:17:14.000000000 +0000
-+++ mpfr-3.1.0-b/tests/turandom.c 2011-11-28 12:22:52.000000000 +0000
-@@ -160,23 +160,29 @@
- mpfr_t x;
- gmp_randstate_t s;
-
-+#if __MPFR_GMP(4,2,0)
-+# define C1 "0.8488312"
-+# define C2 "0.8156509"
-+#else
-+# define C1 "0.6485367"
-+# define C2 "0.9362717"
-+#endif
-+
- gmp_randinit_default (s);
- gmp_randseed_ui (s, 42);
- mpfr_init2 (x, 17);
- mpfr_urandom (x, s, MPFR_RNDN);
-- /* the following values are obtained on a 32-bit computer, we should get
-- the same values on a 64-bit computer */
-- if (mpfr_cmp_str1 (x, "0.8488312") != 0)
-+ if (mpfr_cmp_str1 (x, C1) != 0)
- {
-- printf ("Error in bug20100914, expected 0.8488312, got ");
-+ printf ("Error in bug20100914, expected " C1 ", got ");
- mpfr_out_str (stdout, 10, 0, x, MPFR_RNDN);
- printf ("\n");
- exit (1);
- }
- mpfr_urandom (x, s, MPFR_RNDN);
-- if (mpfr_cmp_str1 (x, "0.8156509") != 0)
-+ if (mpfr_cmp_str1 (x, C2) != 0)
- {
-- printf ("Error in bug20100914, expected 0.8156509, got ");
-+ printf ("Error in bug20100914, expected " C2 ", got ");
- mpfr_out_str (stdout, 10, 0, x, MPFR_RNDN);
- printf ("\n");
- exit (1);
-diff -Naurd mpfr-3.1.0-a/PATCHES mpfr-3.1.0-b/PATCHES
---- mpfr-3.1.0-a/PATCHES 2012-02-24 12:44:49.000000000 +0000
-+++ mpfr-3.1.0-b/PATCHES 2012-02-24 12:44:49.000000000 +0000
-@@ -0,0 +1 @@
-+logging-freeze
-diff -Naurd mpfr-3.1.0-a/VERSION mpfr-3.1.0-b/VERSION
---- mpfr-3.1.0-a/VERSION 2011-11-28 12:22:52.000000000 +0000
-+++ mpfr-3.1.0-b/VERSION 2012-02-24 12:44:49.000000000 +0000
-@@ -1 +1 @@
--3.1.0-p4
-+3.1.0-p5
-diff -Naurd mpfr-3.1.0-a/src/add_d.c mpfr-3.1.0-b/src/add_d.c
---- mpfr-3.1.0-a/src/add_d.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/add_d.c 2012-02-24 12:44:49.000000000 +0000
-@@ -34,7 +34,7 @@
- (("b[%Pu]=%.*Rg c=%.20g rnd=%d",
- mpfr_get_prec(b), mpfr_log_prec, b, c, rnd_mode),
- ("a[%Pu]=%.*Rg inexact=%d",
-- mpfr_get_prec (a), mpfr_get_prec, a, inexact));
-+ mpfr_get_prec (a), mpfr_log_prec, a, inexact));
-
- MPFR_SAVE_EXPO_MARK (expo);
-
-diff -Naurd mpfr-3.1.0-a/src/add_ui.c mpfr-3.1.0-b/src/add_ui.c
---- mpfr-3.1.0-a/src/add_ui.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/add_ui.c 2012-02-24 12:44:49.000000000 +0000
-@@ -29,7 +29,7 @@
- MPFR_LOG_FUNC
- (("x[%Pu]=%.*Rg u=%d rnd=%d",
- mpfr_get_prec(x), mpfr_log_prec, x, u, rnd_mode),
-- ("y[%Pu]=%.*Rg", mpfr_get_prec (y), mpfr_get_prec, y));
-+ ("y[%Pu]=%.*Rg", mpfr_get_prec (y), mpfr_log_prec, y));
-
- if (MPFR_LIKELY(u != 0) ) /* if u=0, do nothing */
- {
-diff -Naurd mpfr-3.1.0-a/src/mpfr.h mpfr-3.1.0-b/src/mpfr.h
---- mpfr-3.1.0-a/src/mpfr.h 2011-11-28 12:22:52.000000000 +0000
-+++ mpfr-3.1.0-b/src/mpfr.h 2012-02-24 12:44:49.000000000 +0000
-@@ -27,7 +27,7 @@
- #define MPFR_VERSION_MAJOR 3
- #define MPFR_VERSION_MINOR 1
- #define MPFR_VERSION_PATCHLEVEL 0
--#define MPFR_VERSION_STRING "3.1.0-p4"
-+#define MPFR_VERSION_STRING "3.1.0-p5"
-
- /* Macros dealing with MPFR VERSION */
- #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
-diff -Naurd mpfr-3.1.0-a/src/mul_d.c mpfr-3.1.0-b/src/mul_d.c
---- mpfr-3.1.0-a/src/mul_d.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/mul_d.c 2012-02-24 12:44:49.000000000 +0000
-@@ -34,7 +34,7 @@
- (("b[%Pu]=%.*Rg c=%.20g rnd=%d",
- mpfr_get_prec(b), mpfr_log_prec, b, c, rnd_mode),
- ("a[%Pu]=%.*Rg inexact=%d",
-- mpfr_get_prec (a), mpfr_get_prec, a, inexact));
-+ mpfr_get_prec (a), mpfr_log_prec, a, inexact));
-
- MPFR_SAVE_EXPO_MARK (expo);
-
-diff -Naurd mpfr-3.1.0-a/src/version.c mpfr-3.1.0-b/src/version.c
---- mpfr-3.1.0-a/src/version.c 2011-11-28 12:22:52.000000000 +0000
-+++ mpfr-3.1.0-b/src/version.c 2012-02-24 12:44:49.000000000 +0000
-@@ -25,5 +25,5 @@
- const char *
- mpfr_get_version (void)
- {
-- return "3.1.0-p4";
-+ return "3.1.0-p5";
- }
-diff -Naurd mpfr-3.1.0-a/PATCHES mpfr-3.1.0-b/PATCHES
---- mpfr-3.1.0-a/PATCHES 2012-02-24 13:50:05.000000000 +0000
-+++ mpfr-3.1.0-b/PATCHES 2012-02-24 13:50:05.000000000 +0000
-@@ -0,0 +1 @@
-+logging-varfmt
-diff -Naurd mpfr-3.1.0-a/VERSION mpfr-3.1.0-b/VERSION
---- mpfr-3.1.0-a/VERSION 2012-02-24 12:44:49.000000000 +0000
-+++ mpfr-3.1.0-b/VERSION 2012-02-24 13:50:05.000000000 +0000
-@@ -1 +1 @@
--3.1.0-p5
-+3.1.0-p6
-diff -Naurd mpfr-3.1.0-a/src/mpfr-impl.h mpfr-3.1.0-b/src/mpfr-impl.h
---- mpfr-3.1.0-a/src/mpfr-impl.h 2011-10-05 21:39:57.000000000 +0000
-+++ mpfr-3.1.0-b/src/mpfr-impl.h 2012-02-24 13:50:05.000000000 +0000
-@@ -1592,7 +1592,7 @@
- do \
- if ((MPFR_LOG_INTERNAL_F & mpfr_log_type) && \
- (mpfr_log_current <= mpfr_log_level)) \
-- LOG_PRINT ("%s.%d:%s[%#Pu]=%.*Rf\n", __func__, __LINE__, \
-+ LOG_PRINT ("%s.%d:%s[%#Pu]=%.*Rg\n", __func__, __LINE__, \
- #x, mpfr_get_prec (x), mpfr_log_prec, x); \
- while (0)
-
-diff -Naurd mpfr-3.1.0-a/src/mpfr.h mpfr-3.1.0-b/src/mpfr.h
---- mpfr-3.1.0-a/src/mpfr.h 2012-02-24 12:44:49.000000000 +0000
-+++ mpfr-3.1.0-b/src/mpfr.h 2012-02-24 13:50:05.000000000 +0000
-@@ -27,7 +27,7 @@
- #define MPFR_VERSION_MAJOR 3
- #define MPFR_VERSION_MINOR 1
- #define MPFR_VERSION_PATCHLEVEL 0
--#define MPFR_VERSION_STRING "3.1.0-p5"
-+#define MPFR_VERSION_STRING "3.1.0-p6"
-
- /* Macros dealing with MPFR VERSION */
- #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
-diff -Naurd mpfr-3.1.0-a/src/version.c mpfr-3.1.0-b/src/version.c
---- mpfr-3.1.0-a/src/version.c 2012-02-24 12:44:49.000000000 +0000
-+++ mpfr-3.1.0-b/src/version.c 2012-02-24 13:50:05.000000000 +0000
-@@ -25,5 +25,5 @@
- const char *
- mpfr_get_version (void)
- {
-- return "3.1.0-p5";
-+ return "3.1.0-p6";
- }
-diff -Naurd mpfr-3.1.0-a/PATCHES mpfr-3.1.0-b/PATCHES
---- mpfr-3.1.0-a/PATCHES 2012-03-08 15:17:03.000000000 +0000
-+++ mpfr-3.1.0-b/PATCHES 2012-03-08 15:17:03.000000000 +0000
-@@ -0,0 +1 @@
-+large-prec
-diff -Naurd mpfr-3.1.0-a/VERSION mpfr-3.1.0-b/VERSION
---- mpfr-3.1.0-a/VERSION 2012-02-24 13:50:05.000000000 +0000
-+++ mpfr-3.1.0-b/VERSION 2012-03-08 15:17:03.000000000 +0000
-@@ -1 +1 @@
--3.1.0-p6
-+3.1.0-p7
-diff -Naurd mpfr-3.1.0-a/src/add1.c mpfr-3.1.0-b/src/add1.c
---- mpfr-3.1.0-a/src/add1.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/add1.c 2012-03-08 15:17:03.000000000 +0000
-@@ -44,12 +44,12 @@
- bq = MPFR_PREC(b);
- cq = MPFR_PREC(c);
-
-- an = (aq-1)/GMP_NUMB_BITS+1; /* number of limbs of a */
-+ an = MPFR_PREC2LIMBS (aq); /* number of limbs of a */
- aq2 = (mpfr_prec_t) an * GMP_NUMB_BITS;
- sh = aq2 - aq; /* non-significant bits in low limb */
-
-- bn = (bq-1)/GMP_NUMB_BITS+1; /* number of limbs of b */
-- cn = (cq-1)/GMP_NUMB_BITS+1; /* number of limbs of c */
-+ bn = MPFR_PREC2LIMBS (bq); /* number of limbs of b */
-+ cn = MPFR_PREC2LIMBS (cq); /* number of limbs of c */
-
- ap = MPFR_MANT(a);
- bp = MPFR_MANT(b);
-@@ -124,7 +124,7 @@
- dif = aq2 - diff_exp;
- /* dif is the number of bits of c which overlap with a' */
-
-- difn = (dif-1)/GMP_NUMB_BITS + 1;
-+ difn = MPFR_PREC2LIMBS (dif);
- /* only the highest difn limbs from c have to be considered */
- if (MPFR_UNLIKELY(difn > cn))
- {
-diff -Naurd mpfr-3.1.0-a/src/add1sp.c mpfr-3.1.0-b/src/add1sp.c
---- mpfr-3.1.0-a/src/add1sp.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/add1sp.c 2012-03-08 15:17:03.000000000 +0000
-@@ -107,7 +107,7 @@
-
- /* Read prec and num of limbs */
- p = MPFR_PREC(b);
-- n = (p+GMP_NUMB_BITS-1)/GMP_NUMB_BITS;
-+ n = MPFR_PREC2LIMBS (p);
- MPFR_UNSIGNED_MINUS_MODULO(sh, p);
- bx = MPFR_GET_EXP(b);
- d = (mpfr_uexp_t) (bx - MPFR_GET_EXP(c));
-diff -Naurd mpfr-3.1.0-a/src/agm.c mpfr-3.1.0-b/src/agm.c
---- mpfr-3.1.0-a/src/agm.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/agm.c 2012-03-08 15:17:03.000000000 +0000
-@@ -91,7 +91,7 @@
- q = MPFR_PREC(r);
- p = q + MPFR_INT_CEIL_LOG2(q) + 15;
- MPFR_ASSERTD (p >= 7); /* see algorithms.tex */
-- s = (p - 1) / GMP_NUMB_BITS + 1;
-+ s = MPFR_PREC2LIMBS (p);
-
- /* b (op2) and a (op1) are the 2 operands but we want b >= a */
- compare = mpfr_cmp (op1, op2);
-@@ -285,7 +285,7 @@
-
- /* Next iteration */
- MPFR_ZIV_NEXT (loop, p);
-- s = (p - 1) / GMP_NUMB_BITS + 1;
-+ s = MPFR_PREC2LIMBS (p);
- }
- MPFR_ZIV_FREE (loop);
-
-diff -Naurd mpfr-3.1.0-a/src/eq.c mpfr-3.1.0-b/src/eq.c
---- mpfr-3.1.0-a/src/eq.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/eq.c 2012-03-08 15:17:03.000000000 +0000
-@@ -56,8 +56,8 @@
- if (uexp != vexp)
- return 0; /* no bit agree */
-
-- usize = (MPFR_PREC(u) - 1) / GMP_NUMB_BITS + 1;
-- vsize = (MPFR_PREC(v) - 1) / GMP_NUMB_BITS + 1;
-+ usize = MPFR_LIMB_SIZE (u);
-+ vsize = MPFR_LIMB_SIZE (v);
-
- if (vsize > usize) /* exchange u and v */
- {
-diff -Naurd mpfr-3.1.0-a/src/exp.c mpfr-3.1.0-b/src/exp.c
---- mpfr-3.1.0-a/src/exp.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/exp.c 2012-03-08 15:17:03.000000000 +0000
-@@ -133,7 +133,7 @@
- mp_size_t yn;
- int sh;
-
-- yn = 1 + (MPFR_PREC(y) - 1) / GMP_NUMB_BITS;
-+ yn = MPFR_LIMB_SIZE (y);
- sh = (mpfr_prec_t) yn * GMP_NUMB_BITS - MPFR_PREC(y);
- MPFR_MANT(y)[0] += MPFR_LIMB_ONE << sh;
- inexact = 1;
-diff -Naurd mpfr-3.1.0-a/src/get_d.c mpfr-3.1.0-b/src/get_d.c
---- mpfr-3.1.0-a/src/get_d.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/get_d.c 2012-03-08 15:17:03.000000000 +0000
-@@ -100,7 +100,7 @@
- nbits += (1021 + e);
- MPFR_ASSERTD (nbits >= 1);
- }
-- np = (nbits + GMP_NUMB_BITS - 1) / GMP_NUMB_BITS;
-+ np = MPFR_PREC2LIMBS (nbits);
- MPFR_ASSERTD ( np <= MPFR_LIMBS_PER_DOUBLE );
- carry = mpfr_round_raw_4 (tp, MPFR_MANT(src), MPFR_PREC(src), negative,
- nbits, rnd_mode);
-diff -Naurd mpfr-3.1.0-a/src/get_flt.c mpfr-3.1.0-b/src/get_flt.c
---- mpfr-3.1.0-a/src/get_flt.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/get_flt.c 2012-03-08 15:17:03.000000000 +0000
-@@ -92,7 +92,7 @@
- nbits += (125 + e);
- MPFR_ASSERTD (nbits >= 1);
- }
-- np = (nbits + GMP_NUMB_BITS - 1) / GMP_NUMB_BITS;
-+ np = MPFR_PREC2LIMBS (nbits);
- MPFR_ASSERTD(np <= MPFR_LIMBS_PER_FLT);
- carry = mpfr_round_raw_4 (tp, MPFR_MANT(src), MPFR_PREC(src), negative,
- nbits, rnd_mode);
-diff -Naurd mpfr-3.1.0-a/src/get_str.c mpfr-3.1.0-b/src/get_str.c
---- mpfr-3.1.0-a/src/get_str.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/get_str.c 2012-03-08 15:17:03.000000000 +0000
-@@ -2351,7 +2351,7 @@
-
- /* the first digit will contain only r bits */
- prec = (m - 1) * pow2 + r; /* total number of bits */
-- n = (prec - 1) / GMP_NUMB_BITS + 1;
-+ n = MPFR_PREC2LIMBS (prec);
-
- MPFR_TMP_MARK (marker);
- x1 = MPFR_TMP_LIMBS_ALLOC (n + 1);
-@@ -2417,12 +2417,12 @@
- exact = 1;
-
- /* number of limbs */
-- n = 1 + (prec - 1) / GMP_NUMB_BITS;
-+ n = MPFR_PREC2LIMBS (prec);
-
- /* a will contain the approximation of the mantissa */
- a = MPFR_TMP_LIMBS_ALLOC (n);
-
-- nx = 1 + (MPFR_PREC(x) - 1) / GMP_NUMB_BITS;
-+ nx = MPFR_LIMB_SIZE (x);
-
- if ((mpfr_exp_t) m == g) /* final exponent is 0, no multiplication or
- division to perform */
-diff -Naurd mpfr-3.1.0-a/src/init2.c mpfr-3.1.0-b/src/init2.c
---- mpfr-3.1.0-a/src/init2.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/init2.c 2012-03-08 15:17:03.000000000 +0000
-@@ -51,7 +51,7 @@
- which both have an odd mantissa */
- MPFR_ASSERTN(p >= MPFR_PREC_MIN && p <= MPFR_PREC_MAX);
-
-- xsize = (mp_size_t) ((p - 1) / GMP_NUMB_BITS) + 1;
-+ xsize = MPFR_PREC2LIMBS (p);
- tmp = (mpfr_limb_ptr) (*__gmp_allocate_func)(MPFR_MALLOC_SIZE(xsize));
-
- MPFR_PREC(x) = p; /* Set prec */
-diff -Naurd mpfr-3.1.0-a/src/lngamma.c mpfr-3.1.0-b/src/lngamma.c
---- mpfr-3.1.0-a/src/lngamma.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/lngamma.c 2012-03-08 15:17:03.000000000 +0000
-@@ -67,7 +67,7 @@
-
- /* Now, the unit bit is represented. */
-
-- prec = ((prec - 1) / GMP_NUMB_BITS + 1) * GMP_NUMB_BITS - expo;
-+ prec = MPFR_PREC2LIMBS (prec) * GMP_NUMB_BITS - expo;
- /* number of represented fractional bits (including the trailing 0's) */
-
- x0 = *(MPFR_MANT (x) + prec / GMP_NUMB_BITS);
-diff -Naurd mpfr-3.1.0-a/src/mpfr-impl.h mpfr-3.1.0-b/src/mpfr-impl.h
---- mpfr-3.1.0-a/src/mpfr-impl.h 2012-02-24 13:50:05.000000000 +0000
-+++ mpfr-3.1.0-b/src/mpfr-impl.h 2012-03-09 12:06:26.000000000 +0000
-@@ -646,10 +646,24 @@
- **************** mpfr_t properties *******************
- ******************************************************/
-
-+/* In the following macro, p is usually a mpfr_prec_t, but this macro
-+ works with other integer types (without integer overflow). Checking
-+ that p >= 1 in debug mode is useful here because this macro can be
-+ used on a computed precision (in particular, this formula does not
-+ work for a degenerate case p = 0, and could give different results
-+ on different platforms). But let us not use an assertion checking
-+ in the MPFR_LAST_LIMB() and MPFR_LIMB_SIZE() macros below to avoid
-+ too much expansion for assertions (in practice, this should be a
-+ problem just when testing MPFR with the --enable-assert configure
-+ option and the -ansi -pedantic-errors gcc compiler flags). */
-+#define MPFR_PREC2LIMBS(p) \
-+ (MPFR_ASSERTD ((p) >= 1), ((p) - 1) / GMP_NUMB_BITS + 1)
-+
- #define MPFR_PREC(x) ((x)->_mpfr_prec)
- #define MPFR_EXP(x) ((x)->_mpfr_exp)
- #define MPFR_MANT(x) ((x)->_mpfr_d)
--#define MPFR_LIMB_SIZE(x) ((MPFR_PREC((x))-1)/GMP_NUMB_BITS+1)
-+#define MPFR_LAST_LIMB(x) ((MPFR_PREC (x) - 1) / GMP_NUMB_BITS)
-+#define MPFR_LIMB_SIZE(x) (MPFR_LAST_LIMB (x) + 1)
-
-
- /******************************************************
-@@ -749,7 +763,8 @@
- #define MPFR_IS_FP(x) (!MPFR_IS_NAN(x) && !MPFR_IS_INF(x))
- #define MPFR_IS_SINGULAR(x) (MPFR_EXP(x) <= MPFR_EXP_INF)
- #define MPFR_IS_PURE_FP(x) (!MPFR_IS_SINGULAR(x) && \
-- (MPFR_ASSERTD (MPFR_MANT(x)[MPFR_LIMB_SIZE(x)-1] & MPFR_LIMB_HIGHBIT), 1))
-+ (MPFR_ASSERTD ((MPFR_MANT(x)[MPFR_LAST_LIMB(x)] \
-+ & MPFR_LIMB_HIGHBIT) != 0), 1))
-
- #define MPFR_ARE_SINGULAR(x,y) \
- (MPFR_UNLIKELY(MPFR_IS_SINGULAR(x)) || MPFR_UNLIKELY(MPFR_IS_SINGULAR(y)))
-@@ -1061,7 +1076,7 @@
- /* Set a number to 1 (Fast) - It doesn't check if 1 is in the exponent range */
- #define MPFR_SET_ONE(x) \
- do { \
-- mp_size_t _size = MPFR_LIMB_SIZE(x) - 1; \
-+ mp_size_t _size = MPFR_LAST_LIMB(x); \
- MPFR_SET_POS(x); \
- MPFR_EXP(x) = 1; \
- MPN_ZERO ( MPFR_MANT(x), _size); \
-@@ -1213,8 +1228,8 @@
- _destp = MPFR_MANT (dest); \
- if (MPFR_UNLIKELY (_destprec >= _srcprec)) \
- { \
-- _srcs = (_srcprec + GMP_NUMB_BITS-1)/GMP_NUMB_BITS; \
-- _dests = (_destprec + GMP_NUMB_BITS-1)/GMP_NUMB_BITS - _srcs; \
-+ _srcs = MPFR_PREC2LIMBS (_srcprec); \
-+ _dests = MPFR_PREC2LIMBS (_destprec) - _srcs; \
- MPN_COPY (_destp + _dests, srcp, _srcs); \
- MPN_ZERO (_destp, _dests); \
- inexact = 0; \
-@@ -1227,8 +1242,8 @@
- mp_limb_t _rb, _sb, _ulp; \
- \
- /* Compute Position and shift */ \
-- _srcs = (_srcprec + GMP_NUMB_BITS-1)/GMP_NUMB_BITS; \
-- _dests = (_destprec + GMP_NUMB_BITS-1)/GMP_NUMB_BITS; \
-+ _srcs = MPFR_PREC2LIMBS (_srcprec); \
-+ _dests = MPFR_PREC2LIMBS (_destprec); \
- MPFR_UNSIGNED_MINUS_MODULO (_sh, _destprec); \
- _sp = (srcp) + _srcs - _dests; \
- \
-@@ -1372,7 +1387,7 @@
- if (MPFR_LIKELY (MPFR_PREC (dest) == MPFR_PREC (src))) \
- { \
- MPN_COPY (MPFR_MANT (dest), MPFR_MANT (src), \
-- (MPFR_PREC (src) + GMP_NUMB_BITS-1)/GMP_NUMB_BITS); \
-+ MPFR_LIMB_SIZE (src)); \
- inexact = 0; \
- } \
- else \
-@@ -1682,7 +1697,7 @@
- MPFR_ASSERTD (_prec >= MPFR_PREC_MIN); \
- if (MPFR_UNLIKELY (_prec > MPFR_PREC_MAX)) \
- mpfr_abort_prec_max (); \
-- _size = (mpfr_prec_t) (_prec + GMP_NUMB_BITS - 1) / GMP_NUMB_BITS; \
-+ _size = MPFR_PREC2LIMBS (_prec); \
- if (MPFR_UNLIKELY (_size * (num) > MPFR_GROUP_STATIC_SIZE)) \
- { \
- (g).alloc = (num) * _size * sizeof (mp_limb_t); \
-@@ -1733,7 +1748,7 @@
- MPFR_ASSERTD (_prec >= MPFR_PREC_MIN); \
- if (MPFR_UNLIKELY (_prec > MPFR_PREC_MAX)) \
- mpfr_abort_prec_max (); \
-- _size = (mpfr_prec_t) (_prec + GMP_NUMB_BITS - 1) / GMP_NUMB_BITS; \
-+ _size = MPFR_PREC2LIMBS (_prec); \
- (g).alloc = (num) * _size * sizeof (mp_limb_t); \
- if (MPFR_LIKELY (_oalloc == 0)) \
- (g).mant = (mp_limb_t *) (*__gmp_allocate_func) ((g).alloc); \
-@@ -1886,7 +1901,7 @@
- MPFR_NORETURN_ATTR;
-
- __MPFR_DECLSPEC void mpfr_rand_raw _MPFR_PROTO((mpfr_limb_ptr, gmp_randstate_t,
-- unsigned long));
-+ mpfr_prec_t));
-
- __MPFR_DECLSPEC mpz_t* mpfr_bernoulli_internal _MPFR_PROTO((mpz_t*,
- unsigned long));
-diff -Naurd mpfr-3.1.0-a/src/mpfr.h mpfr-3.1.0-b/src/mpfr.h
---- mpfr-3.1.0-a/src/mpfr.h 2012-02-24 13:50:05.000000000 +0000
-+++ mpfr-3.1.0-b/src/mpfr.h 2012-03-08 15:17:03.000000000 +0000
-@@ -27,7 +27,7 @@
- #define MPFR_VERSION_MAJOR 3
- #define MPFR_VERSION_MINOR 1
- #define MPFR_VERSION_PATCHLEVEL 0
--#define MPFR_VERSION_STRING "3.1.0-p6"
-+#define MPFR_VERSION_STRING "3.1.0-p7"
-
- /* Macros dealing with MPFR VERSION */
- #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
-diff -Naurd mpfr-3.1.0-a/src/mul.c mpfr-3.1.0-b/src/mul.c
---- mpfr-3.1.0-a/src/mul.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/mul.c 2012-03-08 15:17:03.000000000 +0000
-@@ -93,15 +93,15 @@
-
- ax = MPFR_GET_EXP (b) + MPFR_GET_EXP (c);
-
-- bq = MPFR_PREC(b);
-- cq = MPFR_PREC(c);
-+ bq = MPFR_PREC (b);
-+ cq = MPFR_PREC (c);
-
-- MPFR_ASSERTD(bq+cq > bq); /* PREC_MAX is /2 so no integer overflow */
-+ MPFR_ASSERTN ((mpfr_uprec_t) bq + cq <= MPFR_PREC_MAX);
-
-- bn = (bq+GMP_NUMB_BITS-1)/GMP_NUMB_BITS; /* number of limbs of b */
-- cn = (cq+GMP_NUMB_BITS-1)/GMP_NUMB_BITS; /* number of limbs of c */
-+ bn = MPFR_PREC2LIMBS (bq); /* number of limbs of b */
-+ cn = MPFR_PREC2LIMBS (cq); /* number of limbs of c */
- k = bn + cn; /* effective nb of limbs used by b*c (= tn or tn+1) below */
-- tn = (bq + cq + GMP_NUMB_BITS - 1) / GMP_NUMB_BITS;
-+ tn = MPFR_PREC2LIMBS (bq + cq);
- /* <= k, thus no int overflow */
- MPFR_ASSERTD(tn <= k);
-
-@@ -292,12 +292,12 @@
- bq = MPFR_PREC (b);
- cq = MPFR_PREC (c);
-
-- MPFR_ASSERTD (bq+cq > bq); /* PREC_MAX is /2 so no integer overflow */
-+ MPFR_ASSERTN ((mpfr_uprec_t) bq + cq <= MPFR_PREC_MAX);
-
-- bn = (bq+GMP_NUMB_BITS-1)/GMP_NUMB_BITS; /* number of limbs of b */
-- cn = (cq+GMP_NUMB_BITS-1)/GMP_NUMB_BITS; /* number of limbs of c */
-+ bn = MPFR_PREC2LIMBS (bq); /* number of limbs of b */
-+ cn = MPFR_PREC2LIMBS (cq); /* number of limbs of c */
- k = bn + cn; /* effective nb of limbs used by b*c (= tn or tn+1) below */
-- tn = (bq + cq + GMP_NUMB_BITS - 1) / GMP_NUMB_BITS;
-+ tn = MPFR_PREC2LIMBS (bq + cq);
- MPFR_ASSERTD (tn <= k); /* tn <= k, thus no int overflow */
-
- /* Check for no size_t overflow*/
-diff -Naurd mpfr-3.1.0-a/src/pow.c mpfr-3.1.0-b/src/pow.c
---- mpfr-3.1.0-a/src/pow.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/pow.c 2012-03-08 15:17:03.000000000 +0000
-@@ -136,7 +136,7 @@
- (b) all the 'z' bits are zero
- */
-
-- prec = ((prec - 1) / GMP_NUMB_BITS + 1) * GMP_NUMB_BITS - expo;
-+ prec = MPFR_PREC2LIMBS (prec) * GMP_NUMB_BITS - expo;
- /* number of z+0 bits */
-
- yn = prec / GMP_NUMB_BITS;
-diff -Naurd mpfr-3.1.0-a/src/print_raw.c mpfr-3.1.0-b/src/print_raw.c
---- mpfr-3.1.0-a/src/print_raw.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/print_raw.c 2012-03-08 15:17:03.000000000 +0000
-@@ -84,7 +84,7 @@
- int i;
- mpfr_prec_t count = 0;
- char c;
-- mp_size_t n = (r - 1) / GMP_NUMB_BITS + 1;
-+ mp_size_t n = MPFR_PREC2LIMBS (r);
-
- printf("%s ", str);
- for(n-- ; n>=0 ; n--)
-@@ -109,7 +109,7 @@
- int i;
- mpfr_prec_t count = 0;
- char c;
-- mp_size_t n = (r - 1) / GMP_NUMB_BITS + 1;
-+ mp_size_t n = MPFR_PREC2LIMBS (r);
-
- for(n-- ; n>=0 ; n--)
- {
-diff -Naurd mpfr-3.1.0-a/src/round_prec.c mpfr-3.1.0-b/src/round_prec.c
---- mpfr-3.1.0-a/src/round_prec.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/round_prec.c 2012-03-08 15:17:03.000000000 +0000
-@@ -55,12 +55,12 @@
-
- MPFR_ASSERTN(prec >= MPFR_PREC_MIN && prec <= MPFR_PREC_MAX);
-
-- nw = 1 + (prec - 1) / GMP_NUMB_BITS; /* needed allocated limbs */
-+ nw = MPFR_PREC2LIMBS (prec); /* needed allocated limbs */
-
- /* check if x has enough allocated space for the significand */
- /* Get the number of limbs from the precision.
- (Compatible with all allocation methods) */
-- ow = (MPFR_PREC (x) + GMP_NUMB_BITS - 1) / GMP_NUMB_BITS;
-+ ow = MPFR_LIMB_SIZE (x);
- if (nw > ow)
- {
- /* FIXME: Variable can't be created using custom allocation,
-diff -Naurd mpfr-3.1.0-a/src/round_raw_generic.c mpfr-3.1.0-b/src/round_raw_generic.c
---- mpfr-3.1.0-a/src/round_raw_generic.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/round_raw_generic.c 2012-03-08 15:17:03.000000000 +0000
-@@ -80,7 +80,7 @@
- (xprec <= yprec || MPFR_IS_LIKE_RNDZ (rnd_mode, neg)))
- return 0;
-
-- xsize = (xprec-1)/GMP_NUMB_BITS + 1;
-+ xsize = MPFR_PREC2LIMBS (xprec);
- nw = yprec / GMP_NUMB_BITS;
- rw = yprec & (GMP_NUMB_BITS - 1);
-
-diff -Naurd mpfr-3.1.0-a/src/set.c mpfr-3.1.0-b/src/set.c
---- mpfr-3.1.0-a/src/set.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/set.c 2012-03-08 15:17:03.000000000 +0000
-@@ -48,8 +48,7 @@
- /* Same precision and b is not singular:
- * just copy the mantissa, and set the exponent and the sign
- * The result is exact. */
-- MPN_COPY (MPFR_MANT (a), MPFR_MANT (b),
-- (MPFR_PREC (b) + GMP_NUMB_BITS-1)/GMP_NUMB_BITS);
-+ MPN_COPY (MPFR_MANT (a), MPFR_MANT (b), MPFR_LIMB_SIZE (b));
- MPFR_RET (0);
- }
- else
-diff -Naurd mpfr-3.1.0-a/src/set_f.c mpfr-3.1.0-b/src/set_f.c
---- mpfr-3.1.0-a/src/set_f.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/set_f.c 2012-03-08 15:17:03.000000000 +0000
-@@ -43,7 +43,7 @@
- if (SIZ(x) * MPFR_FROM_SIGN_TO_INT(MPFR_SIGN(y)) < 0)
- MPFR_CHANGE_SIGN (y);
-
-- sy = 1 + (MPFR_PREC(y) - 1) / GMP_NUMB_BITS;
-+ sy = MPFR_LIMB_SIZE (y);
- my = MPFR_MANT(y);
- mx = PTR(x);
-
-diff -Naurd mpfr-3.1.0-a/src/set_prec.c mpfr-3.1.0-b/src/set_prec.c
---- mpfr-3.1.0-a/src/set_prec.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/set_prec.c 2012-03-08 15:17:03.000000000 +0000
-@@ -32,7 +32,7 @@
- MPFR_ASSERTN (p >= MPFR_PREC_MIN && p <= MPFR_PREC_MAX);
-
- /* Calculate the new number of limbs */
-- xsize = (p - 1) / GMP_NUMB_BITS + 1;
-+ xsize = MPFR_PREC2LIMBS (p);
-
- /* Realloc only if the new size is greater than the old */
- xoldsize = MPFR_GET_ALLOC_SIZE (x);
-diff -Naurd mpfr-3.1.0-a/src/setmax.c mpfr-3.1.0-b/src/setmax.c
---- mpfr-3.1.0-a/src/setmax.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/setmax.c 2012-03-08 15:17:03.000000000 +0000
-@@ -32,7 +32,7 @@
- mp_limb_t *xp;
-
- MPFR_SET_EXP (x, e);
-- xn = 1 + (MPFR_PREC(x) - 1) / GMP_NUMB_BITS;
-+ xn = MPFR_LIMB_SIZE (x);
- sh = (mpfr_prec_t) xn * GMP_NUMB_BITS - MPFR_PREC(x);
- xp = MPFR_MANT(x);
- xp[0] = MP_LIMB_T_MAX << sh;
-diff -Naurd mpfr-3.1.0-a/src/sqr.c mpfr-3.1.0-b/src/sqr.c
---- mpfr-3.1.0-a/src/sqr.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/sqr.c 2012-03-08 15:17:03.000000000 +0000
-@@ -56,11 +56,11 @@
- ax = 2 * MPFR_GET_EXP (b);
- bq = MPFR_PREC(b);
-
-- MPFR_ASSERTD (2 * bq > bq); /* PREC_MAX is /2 so no integer overflow */
-+ MPFR_ASSERTN (2 * (mpfr_uprec_t) bq <= MPFR_PREC_MAX);
-
-- bn = MPFR_LIMB_SIZE(b); /* number of limbs of b */
-- tn = 1 + (2 * bq - 1) / GMP_NUMB_BITS; /* number of limbs of square,
-- 2*bn or 2*bn-1 */
-+ bn = MPFR_LIMB_SIZE (b); /* number of limbs of b */
-+ tn = MPFR_PREC2LIMBS (2 * bq); /* number of limbs of square,
-+ 2*bn or 2*bn-1 */
-
- if (MPFR_UNLIKELY(bn > MPFR_SQR_THRESHOLD))
- return mpfr_mul (a, b, b, rnd_mode);
-diff -Naurd mpfr-3.1.0-a/src/stack_interface.c mpfr-3.1.0-b/src/stack_interface.c
---- mpfr-3.1.0-a/src/stack_interface.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/stack_interface.c 2012-03-08 15:17:03.000000000 +0000
-@@ -26,7 +26,7 @@
- size_t
- mpfr_custom_get_size (mpfr_prec_t prec)
- {
-- return (prec + GMP_NUMB_BITS -1) / GMP_NUMB_BITS * BYTES_PER_MP_LIMB;
-+ return MPFR_PREC2LIMBS (prec) * BYTES_PER_MP_LIMB;
- }
-
- #undef mpfr_custom_init
-diff -Naurd mpfr-3.1.0-a/src/strtofr.c mpfr-3.1.0-b/src/strtofr.c
---- mpfr-3.1.0-a/src/strtofr.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/strtofr.c 2012-03-08 15:17:03.000000000 +0000
-@@ -467,7 +467,7 @@
- /* Set y to the value of the ~prec most significant bits of pstr->mant
- (as long as we guarantee correct rounding, we don't need to get
- exactly prec bits). */
-- ysize = (prec - 1) / GMP_NUMB_BITS + 1;
-+ ysize = MPFR_PREC2LIMBS (prec);
- /* prec bits corresponds to ysize limbs */
- ysize_bits = ysize * GMP_NUMB_BITS;
- /* and to ysize_bits >= prec > MPFR_PREC (x) bits */
-diff -Naurd mpfr-3.1.0-a/src/sub1sp.c mpfr-3.1.0-b/src/sub1sp.c
---- mpfr-3.1.0-a/src/sub1sp.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/sub1sp.c 2012-03-08 15:17:03.000000000 +0000
-@@ -155,8 +155,8 @@
- MPFR_ASSERTD(MPFR_IS_PURE_FP(c));
-
- /* Read prec and num of limbs */
-- p = MPFR_PREC(b);
-- n = (p-1)/GMP_NUMB_BITS+1;
-+ p = MPFR_PREC (b);
-+ n = MPFR_PREC2LIMBS (p);
-
- /* Fast cmp of |b| and |c|*/
- bx = MPFR_GET_EXP (b);
-diff -Naurd mpfr-3.1.0-a/src/urandomb.c mpfr-3.1.0-b/src/urandomb.c
---- mpfr-3.1.0-a/src/urandomb.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/urandomb.c 2012-03-08 15:17:03.000000000 +0000
-@@ -31,13 +31,20 @@
- a sufficient number of limbs */
- void
- mpfr_rand_raw (mpfr_limb_ptr mp, gmp_randstate_t rstate,
-- unsigned long int nbits)
-+ mpfr_prec_t nbits)
- {
- mpz_t z;
-
-+ MPFR_ASSERTN (nbits >= 1);
- /* To be sure to avoid the potential allocation of mpz_urandomb */
-- ALLOC(z) = SIZ(z) = ((nbits - 1) / GMP_NUMB_BITS) + 1;
-+ ALLOC(z) = SIZ(z) = MPFR_PREC2LIMBS (nbits);
- PTR(z) = mp;
-+#if __MPFR_GMP(5,0,0)
-+ /* Check for integer overflow (unless mp_bitcnt_t is signed,
-+ but according to the GMP manual, this shouldn't happen).
-+ Note: mp_bitcnt_t has been introduced in GMP 5.0.0. */
-+ MPFR_ASSERTN ((mp_bitcnt_t) -1 < 0 || nbits <= (mp_bitcnt_t) -1);
-+#endif
- mpz_urandomb (z, rstate, nbits);
- }
-
-diff -Naurd mpfr-3.1.0-a/src/version.c mpfr-3.1.0-b/src/version.c
---- mpfr-3.1.0-a/src/version.c 2012-02-24 13:50:05.000000000 +0000
-+++ mpfr-3.1.0-b/src/version.c 2012-03-08 15:17:03.000000000 +0000
-@@ -25,5 +25,5 @@
- const char *
- mpfr_get_version (void)
- {
-- return "3.1.0-p6";
-+ return "3.1.0-p7";
- }
-diff -Naurd mpfr-3.1.0-a/tests/tinits.c mpfr-3.1.0-b/tests/tinits.c
---- mpfr-3.1.0-a/tests/tinits.c 2011-10-03 08:17:14.000000000 +0000
-+++ mpfr-3.1.0-b/tests/tinits.c 2012-03-08 15:17:03.000000000 +0000
-@@ -1,4 +1,4 @@
--/* Test file for mpfr_inits, mpfr_inits2 and mpfr_clears.
-+/* Test file for mpfr_init2, mpfr_inits, mpfr_inits2 and mpfr_clears.
-
- Copyright 2003, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
- Contributed by the Arenaire and Caramel projects, INRIA.
-@@ -20,18 +20,43 @@
- http://www.gnu.org/licenses/ or write to the Free Software Foundation, Inc.,
- 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. */
-
-+#include <stdlib.h>
-+
- #include "mpfr-test.h"
-
- int
- main (void)
- {
- mpfr_t a, b, c;
-+ long large_prec;
-
- tests_start_mpfr ();
-+
- mpfr_inits (a, b, c, (mpfr_ptr) 0);
- mpfr_clears (a, b, c, (mpfr_ptr) 0);
- mpfr_inits2 (200, a, b, c, (mpfr_ptr) 0);
- mpfr_clears (a, b, c, (mpfr_ptr) 0);
-+
-+ /* test for precision 2^31-1, see
-+ https://gforge.inria.fr/tracker/index.php?func=detail&aid=13918 */
-+ large_prec = 2147483647;
-+ if (getenv ("MPFR_CHECK_LARGEMEM") != NULL)
-+ {
-+ /* We assume that the precision won't be increased internally. */
-+ if (large_prec > MPFR_PREC_MAX)
-+ large_prec = MPFR_PREC_MAX;
-+ mpfr_inits2 (large_prec, a, b, (mpfr_ptr) 0);
-+ mpfr_set_ui (a, 17, MPFR_RNDN);
-+ mpfr_set (b, a, MPFR_RNDN);
-+ if (mpfr_get_ui (a, MPFR_RNDN) != 17)
-+ {
-+ printf ("Error in mpfr_init2 with precision 2^31-1\n");
-+ exit (1);
-+ }
-+ mpfr_clears (a, b, (mpfr_ptr) 0);
-+ }
-+
- tests_end_mpfr ();
-+
- return 0;
- }
-diff -Naurd mpfr-3.1.0-a/PATCHES mpfr-3.1.0-b/PATCHES
---- mpfr-3.1.0-a/PATCHES 2012-03-12 11:59:47.000000000 +0000
-+++ mpfr-3.1.0-b/PATCHES 2012-03-12 11:59:47.000000000 +0000
-@@ -0,0 +1 @@
-+__gmp_const
-diff -Naurd mpfr-3.1.0-a/VERSION mpfr-3.1.0-b/VERSION
---- mpfr-3.1.0-a/VERSION 2012-03-08 15:17:03.000000000 +0000
-+++ mpfr-3.1.0-b/VERSION 2012-03-12 11:59:47.000000000 +0000
-@@ -1 +1 @@
--3.1.0-p7
-+3.1.0-p8
-diff -Naurd mpfr-3.1.0-a/src/mpfr.h mpfr-3.1.0-b/src/mpfr.h
---- mpfr-3.1.0-a/src/mpfr.h 2012-03-08 15:17:03.000000000 +0000
-+++ mpfr-3.1.0-b/src/mpfr.h 2012-03-12 11:59:47.000000000 +0000
-@@ -27,7 +27,7 @@
- #define MPFR_VERSION_MAJOR 3
- #define MPFR_VERSION_MINOR 1
- #define MPFR_VERSION_PATCHLEVEL 0
--#define MPFR_VERSION_STRING "3.1.0-p7"
-+#define MPFR_VERSION_STRING "3.1.0-p8"
-
- /* Macros dealing with MPFR VERSION */
- #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
-@@ -39,6 +39,18 @@
- # include <gmp.h>
- #endif
-
-+/* GMP's internal __gmp_const macro has been removed on 2012-03-04:
-+ http://gmplib.org:8000/gmp/rev/d287cfaf6732
-+ const is standard and now assumed to be available. If the __gmp_const
-+ definition is no longer present in GMP, this probably means that GMP
-+ assumes that const is available; thus let's define it to const.
-+ Note: this is a temporary fix that can be backported to previous MPFR
-+ versions. In the future, __gmp_const should be replaced by const like
-+ in GMP. */
-+#ifndef __gmp_const
-+# define __gmp_const const
-+#endif
-+
- /* Avoid some problems with macro expansion if the user defines macros
- with the same name as keywords. By convention, identifiers and macro
- names starting with mpfr_ are reserved by MPFR. */
-diff -Naurd mpfr-3.1.0-a/src/version.c mpfr-3.1.0-b/src/version.c
---- mpfr-3.1.0-a/src/version.c 2012-03-08 15:17:03.000000000 +0000
-+++ mpfr-3.1.0-b/src/version.c 2012-03-12 11:59:47.000000000 +0000
-@@ -25,5 +25,5 @@
- const char *
- mpfr_get_version (void)
- {
-- return "3.1.0-p7";
-+ return "3.1.0-p8";
- }
-diff -Naurd mpfr-3.1.0-a/PATCHES mpfr-3.1.0-b/PATCHES
---- mpfr-3.1.0-a/PATCHES 2012-04-27 01:13:15.000000000 +0000
-+++ mpfr-3.1.0-b/PATCHES 2012-04-27 01:13:15.000000000 +0000
-@@ -0,0 +1 @@
-+gamma-underflow
-diff -Naurd mpfr-3.1.0-a/VERSION mpfr-3.1.0-b/VERSION
---- mpfr-3.1.0-a/VERSION 2012-03-12 11:59:47.000000000 +0000
-+++ mpfr-3.1.0-b/VERSION 2012-04-27 01:13:15.000000000 +0000
-@@ -1 +1 @@
--3.1.0-p8
-+3.1.0-p9
-diff -Naurd mpfr-3.1.0-a/src/gamma.c mpfr-3.1.0-b/src/gamma.c
---- mpfr-3.1.0-a/src/gamma.c 2011-10-03 08:17:09.000000000 +0000
-+++ mpfr-3.1.0-b/src/gamma.c 2012-04-27 01:13:15.000000000 +0000
-@@ -296,7 +296,7 @@
- /* we want an upper bound for x * [log(2-x)-1].
- since x < 0, we need a lower bound on log(2-x) */
- mpfr_ui_sub (xp, 2, x, MPFR_RNDD);
-- mpfr_log2 (xp, xp, MPFR_RNDD);
-+ mpfr_log (xp, xp, MPFR_RNDD);
- mpfr_sub_ui (xp, xp, 1, MPFR_RNDD);
- mpfr_mul (xp, xp, x, MPFR_RNDU);
-
-diff -Naurd mpfr-3.1.0-a/src/mpfr.h mpfr-3.1.0-b/src/mpfr.h
---- mpfr-3.1.0-a/src/mpfr.h 2012-03-12 11:59:47.000000000 +0000
-+++ mpfr-3.1.0-b/src/mpfr.h 2012-04-27 01:13:15.000000000 +0000
-@@ -27,7 +27,7 @@
- #define MPFR_VERSION_MAJOR 3
- #define MPFR_VERSION_MINOR 1
- #define MPFR_VERSION_PATCHLEVEL 0
--#define MPFR_VERSION_STRING "3.1.0-p8"
-+#define MPFR_VERSION_STRING "3.1.0-p9"
-
- /* Macros dealing with MPFR VERSION */
- #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
-diff -Naurd mpfr-3.1.0-a/src/version.c mpfr-3.1.0-b/src/version.c
---- mpfr-3.1.0-a/src/version.c 2012-03-12 11:59:47.000000000 +0000
-+++ mpfr-3.1.0-b/src/version.c 2012-04-27 01:13:15.000000000 +0000
-@@ -25,5 +25,5 @@
- const char *
- mpfr_get_version (void)
- {
-- return "3.1.0-p8";
-+ return "3.1.0-p9";
- }
-diff -Naurd mpfr-3.1.0-a/tests/tgamma.c mpfr-3.1.0-b/tests/tgamma.c
---- mpfr-3.1.0-a/tests/tgamma.c 2011-10-03 08:17:14.000000000 +0000
-+++ mpfr-3.1.0-b/tests/tgamma.c 2012-04-27 01:13:15.000000000 +0000
-@@ -478,6 +478,36 @@
- mpfr_clear (x);
- }
-
-+/* bug found by Giridhar Tammana */
-+static void
-+test20120426 (void)
-+{
-+ mpfr_t xa, xb;
-+ int i;
-+ mpfr_exp_t emin;
-+
-+ mpfr_init2 (xa, 53);
-+ mpfr_init2 (xb, 53);
-+ mpfr_set_d (xb, -168.5, MPFR_RNDN);
-+ emin = mpfr_get_emin ();
-+ mpfr_set_emin (-1073);
-+ i = mpfr_gamma (xa, xb, MPFR_RNDN);
-+ i = mpfr_subnormalize (xa, i, MPFR_RNDN); /* new ternary value */
-+ mpfr_set_str (xb, "-9.5737343987585366746184749943e-304", 10, MPFR_RNDN);
-+ if (!((i > 0) && (mpfr_cmp (xa, xb) == 0)))
-+ {
-+ printf ("Error in test20120426, i=%d\n", i);
-+ printf ("expected ");
-+ mpfr_print_binary (xb); putchar ('\n');
-+ printf ("got ");
-+ mpfr_print_binary (xa); putchar ('\n');
-+ exit (1);
-+ }
-+ mpfr_set_emin (emin);
-+ mpfr_clear (xa);
-+ mpfr_clear (xb);
-+}
-+
- static void
- exprange (void)
- {
-@@ -821,6 +851,7 @@
- gamma_integer ();
- test20071231 ();
- test20100709 ();
-+ test20120426 ();
-
- data_check ("data/gamma", mpfr_gamma, "mpfr_gamma");
-
-diff -Naurd mpfr-3.1.0-a/PATCHES mpfr-3.1.0-b/PATCHES
---- mpfr-3.1.0-a/PATCHES 2012-05-07 18:52:45.000000000 +0000
-+++ mpfr-3.1.0-b/PATCHES 2012-05-07 18:52:45.000000000 +0000
-@@ -0,0 +1 @@
-+gamma-overunderflow
-diff -Naurd mpfr-3.1.0-a/VERSION mpfr-3.1.0-b/VERSION
---- mpfr-3.1.0-a/VERSION 2012-04-27 01:13:15.000000000 +0000
-+++ mpfr-3.1.0-b/VERSION 2012-05-07 18:52:45.000000000 +0000
-@@ -1 +1 @@
--3.1.0-p9
-+3.1.0-p10
-diff -Naurd mpfr-3.1.0-a/src/gamma.c mpfr-3.1.0-b/src/gamma.c
---- mpfr-3.1.0-a/src/gamma.c 2012-04-27 01:13:15.000000000 +0000
-+++ mpfr-3.1.0-b/src/gamma.c 2012-05-07 18:52:45.000000000 +0000
-@@ -100,7 +100,8 @@
- mpfr_t xp, GammaTrial, tmp, tmp2;
- mpz_t fact;
- mpfr_prec_t realprec;
-- int compared, inex, is_integer;
-+ int compared, is_integer;
-+ int inex = 0; /* 0 means: result gamma not set yet */
- MPFR_GROUP_DECL (group);
- MPFR_SAVE_EXPO_DECL (expo);
- MPFR_ZIV_DECL (loop);
-@@ -377,6 +378,15 @@
- mpfr_mul (GammaTrial, tmp2, xp, MPFR_RNDN); /* Pi*(2-x), error (1+u)^2 */
- err_g = MPFR_GET_EXP(GammaTrial);
- mpfr_sin (GammaTrial, GammaTrial, MPFR_RNDN); /* sin(Pi*(2-x)) */
-+ /* If tmp is +Inf, we compute exp(lngamma(x)). */
-+ if (mpfr_inf_p (tmp))
-+ {
-+ inex = mpfr_explgamma (gamma, x, &expo, tmp, tmp2, rnd_mode);
-+ if (inex)
-+ goto end;
-+ else
-+ goto ziv_next;
-+ }
- err_g = err_g + 1 - MPFR_GET_EXP(GammaTrial);
- /* let g0 the true value of Pi*(2-x), g the computed value.
- We have g = g0 + h with |h| <= |(1+u^2)-1|*g.
-@@ -411,11 +421,16 @@
- if (MPFR_LIKELY (MPFR_CAN_ROUND (GammaTrial, realprec - err_g,
- MPFR_PREC(gamma), rnd_mode)))
- break;
-+
-+ ziv_next:
- MPFR_ZIV_NEXT (loop, realprec);
- }
-+
-+ end:
- MPFR_ZIV_FREE (loop);
-
-- inex = mpfr_set (gamma, GammaTrial, rnd_mode);
-+ if (inex == 0)
-+ inex = mpfr_set (gamma, GammaTrial, rnd_mode);
- MPFR_GROUP_CLEAR (group);
- mpz_clear (fact);
-
-diff -Naurd mpfr-3.1.0-a/src/lngamma.c mpfr-3.1.0-b/src/lngamma.c
---- mpfr-3.1.0-a/src/lngamma.c 2012-03-08 15:17:03.000000000 +0000
-+++ mpfr-3.1.0-b/src/lngamma.c 2012-05-07 18:52:45.000000000 +0000
-@@ -49,9 +49,72 @@
- mpfr_set_ui_2exp (s, 9, -1, MPFR_RNDN); /* 4.5 */
- }
-
--#ifndef IS_GAMMA
-+#ifdef IS_GAMMA
-+
-+/* This function is called in case of intermediate overflow/underflow.
-+ The s1 and s2 arguments are temporary MPFR numbers, having the
-+ working precision. If the result could be determined, then the
-+ flags are updated via pexpo, y is set to the result, and the
-+ (non-zero) ternary value is returned. Otherwise 0 is returned
-+ in order to perform the next Ziv iteration. */
- static int
--unit_bit (mpfr_srcptr (x))
-+mpfr_explgamma (mpfr_ptr y, mpfr_srcptr x, mpfr_save_expo_t *pexpo,
-+ mpfr_ptr s1, mpfr_ptr s2, mpfr_rnd_t rnd)
-+{
-+ mpfr_t t1, t2;
-+ int inex1, inex2, sign;
-+ MPFR_BLOCK_DECL (flags1);
-+ MPFR_BLOCK_DECL (flags2);
-+ MPFR_GROUP_DECL (group);
-+
-+ MPFR_BLOCK (flags1, inex1 = mpfr_lgamma (s1, &sign, x, MPFR_RNDD));
-+ MPFR_ASSERTN (inex1 != 0);
-+ /* s1 = RNDD(lngamma(x)), inexact */
-+ if (MPFR_UNLIKELY (MPFR_OVERFLOW (flags1)))
-+ {
-+ if (MPFR_SIGN (s1) > 0)
-+ {
-+ MPFR_SAVE_EXPO_UPDATE_FLAGS (*pexpo, MPFR_FLAGS_OVERFLOW);
-+ return mpfr_overflow (y, rnd, sign);
-+ }
-+ else
-+ {
-+ MPFR_SAVE_EXPO_UPDATE_FLAGS (*pexpo, MPFR_FLAGS_UNDERFLOW);
-+ return mpfr_underflow (y, rnd == MPFR_RNDN ? MPFR_RNDZ : rnd, sign);
-+ }
-+ }
-+
-+ mpfr_set (s2, s1, MPFR_RNDN); /* exact */
-+ mpfr_nextabove (s2); /* v = RNDU(lngamma(z0)) */
-+
-+ if (sign < 0)
-+ rnd = MPFR_INVERT_RND (rnd); /* since the result with be negated */
-+ MPFR_GROUP_INIT_2 (group, MPFR_PREC (y), t1, t2);
-+ MPFR_BLOCK (flags1, inex1 = mpfr_exp (t1, s1, rnd));
-+ MPFR_BLOCK (flags2, inex2 = mpfr_exp (t2, s2, rnd));
-+ /* t1 is the rounding with mode 'rnd' of a lower bound on |Gamma(x)|,
-+ t2 is the rounding with mode 'rnd' of an upper bound, thus if both
-+ are equal, so is the wanted result. If t1 and t2 differ or the flags
-+ differ, at some point of Ziv's loop they should agree. */
-+ if (mpfr_equal_p (t1, t2) && flags1 == flags2)
-+ {
-+ MPFR_ASSERTN ((inex1 > 0 && inex2 > 0) || (inex1 < 0 && inex2 < 0));
-+ mpfr_set4 (y, t1, MPFR_RNDN, sign); /* exact */
-+ if (sign < 0)
-+ inex1 = - inex1;
-+ MPFR_SAVE_EXPO_UPDATE_FLAGS (*pexpo, flags1);
-+ }
-+ else
-+ inex1 = 0; /* couldn't determine the result */
-+ MPFR_GROUP_CLEAR (group);
-+
-+ return inex1;
-+}
-+
-+#else
-+
-+static int
-+unit_bit (mpfr_srcptr x)
- {
- mpfr_exp_t expo;
- mpfr_prec_t prec;
-@@ -75,6 +138,7 @@
-
- return (x0 >> (prec % GMP_NUMB_BITS)) & 1;
- }
-+
- #endif
-
- /* lngamma(x) = log(gamma(x)).
-@@ -99,12 +163,14 @@
- mpfr_t s, t, u, v, z;
- unsigned long m, k, maxm;
- mpz_t *INITIALIZED(B); /* variable B declared as initialized */
-- int inexact, compared;
-+ int compared;
-+ int inexact = 0; /* 0 means: result y not set yet */
- mpfr_exp_t err_s, err_t;
- unsigned long Bm = 0; /* number of allocated B[] */
- unsigned long oldBm;
- double d;
- MPFR_SAVE_EXPO_DECL (expo);
-+ MPFR_ZIV_DECL (loop);
-
- compared = mpfr_cmp_ui (z0, 1);
-
-@@ -122,7 +188,7 @@
- if (MPFR_EXP(z0) <= - (mpfr_exp_t) MPFR_PREC(y))
- {
- mpfr_t l, h, g;
-- int ok, inex2;
-+ int ok, inex1, inex2;
- mpfr_prec_t prec = MPFR_PREC(y) + 14;
- MPFR_ZIV_DECL (loop);
-
-@@ -157,14 +223,14 @@
- mpfr_sub (h, h, g, MPFR_RNDD);
- mpfr_mul (g, z0, z0, MPFR_RNDU);
- mpfr_add (h, h, g, MPFR_RNDU);
-- inexact = mpfr_prec_round (l, MPFR_PREC(y), rnd);
-+ inex1 = mpfr_prec_round (l, MPFR_PREC(y), rnd);
- inex2 = mpfr_prec_round (h, MPFR_PREC(y), rnd);
- /* Caution: we not only need l = h, but both inexact flags should
- agree. Indeed, one of the inexact flags might be zero. In that
- case if we assume lngamma(z0) cannot be exact, the other flag
- should be correct. We are conservative here and request that both
- inexact flags agree. */
-- ok = SAME_SIGN (inexact, inex2) && mpfr_cmp (l, h) == 0;
-+ ok = SAME_SIGN (inex1, inex2) && mpfr_cmp (l, h) == 0;
- if (ok)
- mpfr_set (y, h, rnd); /* exact */
- mpfr_clear (l);
-@@ -172,8 +238,9 @@
- mpfr_clear (g);
- if (ok)
- {
-+ MPFR_ZIV_FREE (loop);
- MPFR_SAVE_EXPO_FREE (expo);
-- return mpfr_check_range (y, inexact, rnd);
-+ return mpfr_check_range (y, inex1, rnd);
- }
- /* since we have log|gamma(x)| = - log|x| - gamma*x + O(x^2),
- if x ~ 2^(-n), then we have a n-bit approximation, thus
-@@ -205,9 +272,10 @@
- thus lngamma(x) = log(Pi*(x-1)/sin(Pi*(2-x))) - lngamma(2-x) */
-
- w = precy + MPFR_INT_CEIL_LOG2 (precy);
-+ w += MPFR_INT_CEIL_LOG2 (w) + 14;
-+ MPFR_ZIV_INIT (loop, w);
- while (1)
- {
-- w += MPFR_INT_CEIL_LOG2 (w) + 14;
- MPFR_ASSERTD(w >= 3);
- mpfr_set_prec (s, w);
- mpfr_set_prec (t, w);
-@@ -288,7 +356,9 @@
- + (rnd == MPFR_RNDN)))
- goto end;
- }
-+ MPFR_ZIV_NEXT (loop, w);
- }
-+ MPFR_ZIV_FREE (loop);
- }
-
- /* now z0 > 1 */
-@@ -298,10 +368,10 @@
- /* since k is O(w), the value of log(z0*...*(z0+k-1)) is about w*log(w),
- so there is a cancellation of ~log(w) in the argument reconstruction */
- w = precy + MPFR_INT_CEIL_LOG2 (precy);
--
-- do
-+ w += MPFR_INT_CEIL_LOG2 (w) + 13;
-+ MPFR_ZIV_INIT (loop, w);
-+ while (1)
- {
-- w += MPFR_INT_CEIL_LOG2 (w) + 13;
- MPFR_ASSERTD (w >= 3);
-
- /* argument reduction: we compute gamma(z0 + k), where the series
-@@ -441,6 +511,15 @@
- #ifdef IS_GAMMA
- err_s = MPFR_GET_EXP(s);
- mpfr_exp (s, s, MPFR_RNDN);
-+ /* If s is +Inf, we compute exp(lngamma(z0)). */
-+ if (mpfr_inf_p (s))
-+ {
-+ inexact = mpfr_explgamma (y, z0, &expo, s, t, rnd);
-+ if (inexact)
-+ goto end0;
-+ else
-+ goto ziv_next;
-+ }
- /* before the exponential, we have s = s0 + h where
- |h| <= (2m+48)*ulp(s), thus exp(s0) = exp(s) * exp(-h).
- For |h| <= 1/4, we have |exp(h)-1| <= 1.2*|h| thus
-@@ -480,16 +559,26 @@
- err_s = (err_t == err_s) ? 1 + err_s : ((err_t > err_s) ? err_t : err_s);
- err_s += 1 - MPFR_GET_EXP(s);
- #endif
-+ if (MPFR_LIKELY (MPFR_CAN_ROUND (s, w - err_s, precy, rnd)))
-+ break;
-+#ifdef IS_GAMMA
-+ ziv_next:
-+#endif
-+ MPFR_ZIV_NEXT (loop, w);
- }
-- while (MPFR_UNLIKELY (!MPFR_CAN_ROUND (s, w - err_s, precy, rnd)));
-
-+#ifdef IS_GAMMA
-+ end0:
-+#endif
- oldBm = Bm;
- while (Bm--)
- mpz_clear (B[Bm]);
- (*__gmp_free_func) (B, oldBm * sizeof (mpz_t));
-
- end:
-- inexact = mpfr_set (y, s, rnd);
-+ if (inexact == 0)
-+ inexact = mpfr_set (y, s, rnd);
-+ MPFR_ZIV_FREE (loop);
-
- mpfr_clear (s);
- mpfr_clear (t);
-diff -Naurd mpfr-3.1.0-a/src/mpfr.h mpfr-3.1.0-b/src/mpfr.h
---- mpfr-3.1.0-a/src/mpfr.h 2012-04-27 01:13:15.000000000 +0000
-+++ mpfr-3.1.0-b/src/mpfr.h 2012-05-07 18:52:45.000000000 +0000
-@@ -27,7 +27,7 @@
- #define MPFR_VERSION_MAJOR 3
- #define MPFR_VERSION_MINOR 1
- #define MPFR_VERSION_PATCHLEVEL 0
--#define MPFR_VERSION_STRING "3.1.0-p9"
-+#define MPFR_VERSION_STRING "3.1.0-p10"
-
- /* Macros dealing with MPFR VERSION */
- #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
-diff -Naurd mpfr-3.1.0-a/src/version.c mpfr-3.1.0-b/src/version.c
---- mpfr-3.1.0-a/src/version.c 2012-04-27 01:13:15.000000000 +0000
-+++ mpfr-3.1.0-b/src/version.c 2012-05-07 18:52:45.000000000 +0000
-@@ -25,5 +25,5 @@
- const char *
- mpfr_get_version (void)
- {
-- return "3.1.0-p9";
-+ return "3.1.0-p10";
- }
-diff -Naurd mpfr-3.1.0-a/tests/tgamma.c mpfr-3.1.0-b/tests/tgamma.c
---- mpfr-3.1.0-a/tests/tgamma.c 2012-04-27 01:13:15.000000000 +0000
-+++ mpfr-3.1.0-b/tests/tgamma.c 2012-05-07 18:52:45.000000000 +0000
-@@ -838,6 +838,175 @@
- exit (1);
- }
-
-+/* Test mpfr_gamma in precision p1 by comparing it with exp(lgamma(x))
-+ computing with a working precision p2. Assume that x is not an
-+ integer <= 2. */
-+static void
-+exp_lgamma (mpfr_t x, mpfr_prec_t p1, mpfr_prec_t p2)
-+{
-+ mpfr_t yd, yu, zd, zu;
-+ int inexd, inexu, sign;
-+ int underflow = -1, overflow = -1; /* -1: we don't know */
-+ int got_underflow, got_overflow;
-+
-+ if (mpfr_integer_p (x) && mpfr_cmp_si (x, 2) <= 0)
-+ {
-+ printf ("Warning! x is an integer <= 2 in exp_lgamma: ");
-+ mpfr_out_str (stdout, 10, 0, x, MPFR_RNDN); putchar ('\n');
-+ return;
-+ }
-+ mpfr_inits2 (p2, yd, yu, (mpfr_ptr) 0);
-+ inexd = mpfr_lgamma (yd, &sign, x, MPFR_RNDD);
-+ mpfr_set (yu, yd, MPFR_RNDN); /* exact */
-+ if (inexd)
-+ mpfr_nextabove (yu);
-+ mpfr_clear_flags ();
-+ mpfr_exp (yd, yd, MPFR_RNDD);
-+ if (! mpfr_underflow_p ())
-+ underflow = 0;
-+ if (mpfr_overflow_p ())
-+ overflow = 1;
-+ mpfr_clear_flags ();
-+ mpfr_exp (yu, yu, MPFR_RNDU);
-+ if (mpfr_underflow_p ())
-+ underflow = 1;
-+ if (! mpfr_overflow_p ())
-+ overflow = 0;
-+ if (sign < 0)
-+ {
-+ mpfr_neg (yd, yd, MPFR_RNDN); /* exact */
-+ mpfr_neg (yu, yu, MPFR_RNDN); /* exact */
-+ mpfr_swap (yd, yu);
-+ }
-+ /* yd < Gamma(x) < yu (strict inequalities since x != 1 and x != 2) */
-+ mpfr_inits2 (p1, zd, zu, (mpfr_ptr) 0);
-+ mpfr_clear_flags ();
-+ inexd = mpfr_gamma (zd, x, MPFR_RNDD); /* zd <= Gamma(x) < yu */
-+ got_underflow = underflow == -1 ? -1 : !! mpfr_underflow_p ();
-+ got_overflow = overflow == -1 ? -1 : !! mpfr_overflow_p ();
-+ if (! mpfr_less_p (zd, yu) || inexd > 0 ||
-+ got_underflow != underflow ||
-+ got_overflow != overflow)
-+ {
-+ printf ("Error in exp_lgamma on x = ");
-+ mpfr_out_str (stdout, 16, 0, x, MPFR_RNDN); putchar ('\n');
-+ printf ("yu = ");
-+ mpfr_dump (yu);
-+ printf ("zd = ");
-+ mpfr_dump (zd);
-+ printf ("got inexd = %d, expected <= 0\n", inexd);
-+ printf ("got underflow = %d, expected %d\n", got_underflow, underflow);
-+ printf ("got overflow = %d, expected %d\n", got_overflow, overflow);
-+ exit (1);
-+ }
-+ mpfr_clear_flags ();
-+ inexu = mpfr_gamma (zu, x, MPFR_RNDU); /* zu >= Gamma(x) > yd */
-+ got_underflow = underflow == -1 ? -1 : !! mpfr_underflow_p ();
-+ got_overflow = overflow == -1 ? -1 : !! mpfr_overflow_p ();
-+ if (! mpfr_greater_p (zu, yd) || inexu < 0 ||
-+ got_underflow != underflow ||
-+ got_overflow != overflow)
-+ {
-+ printf ("Error in exp_lgamma on x = ");
-+ mpfr_out_str (stdout, 16, 0, x, MPFR_RNDN); putchar ('\n');
-+ printf ("yd = ");
-+ mpfr_dump (yd);
-+ printf ("zu = ");
-+ mpfr_dump (zu);
-+ printf ("got inexu = %d, expected >= 0\n", inexu);
-+ printf ("got underflow = %d, expected %d\n", got_underflow, underflow);
-+ printf ("got overflow = %d, expected %d\n", got_overflow, overflow);
-+ exit (1);
-+ }
-+ if (mpfr_equal_p (zd, zu))
-+ {
-+ if (inexd != 0 || inexu != 0)
-+ {
-+ printf ("Error in exp_lgamma on x = ");
-+ mpfr_out_str (stdout, 16, 0, x, MPFR_RNDN); putchar ('\n');
-+ printf ("zd = zu, thus exact, but inexd = %d and inexu = %d\n",
-+ inexd, inexu);
-+ exit (1);
-+ }
-+ MPFR_ASSERTN (got_underflow == 0);
-+ MPFR_ASSERTN (got_overflow == 0);
-+ }
-+ else if (inexd == 0 || inexu == 0)
-+ {
-+ printf ("Error in exp_lgamma on x = ");
-+ mpfr_out_str (stdout, 16, 0, x, MPFR_RNDN); putchar ('\n');
-+ printf ("zd != zu, thus inexact, but inexd = %d and inexu = %d\n",
-+ inexd, inexu);
-+ exit (1);
-+ }
-+ mpfr_clears (yd, yu, zd, zu, (mpfr_ptr) 0);
-+}
-+
-+static void
-+exp_lgamma_tests (void)
-+{
-+ mpfr_t x;
-+ mpfr_exp_t emin, emax;
-+ int i;
-+
-+ emin = mpfr_get_emin ();
-+ emax = mpfr_get_emax ();
-+ set_emin (MPFR_EMIN_MIN);
-+ set_emax (MPFR_EMAX_MAX);
-+
-+ mpfr_init2 (x, 96);
-+ for (i = 3; i <= 8; i++)
-+ {
-+ mpfr_set_ui (x, i, MPFR_RNDN);
-+ exp_lgamma (x, 53, 64);
-+ mpfr_nextbelow (x);
-+ exp_lgamma (x, 53, 64);
-+ mpfr_nextabove (x);
-+ mpfr_nextabove (x);
-+ exp_lgamma (x, 53, 64);
-+ }
-+ mpfr_set_str (x, "1.7", 10, MPFR_RNDN);
-+ exp_lgamma (x, 53, 64);
-+ mpfr_set_str (x, "-4.6308260837372266e+07", 10, MPFR_RNDN);
-+ exp_lgamma (x, 53, 64);
-+ mpfr_set_str (x, "-90.6308260837372266e+15", 10, MPFR_RNDN);
-+ exp_lgamma (x, 53, 64);
-+ /* The following test gives a large positive result < +Inf */
-+ mpfr_set_str (x, "1.2b13fc45a92dea1@14", 16, MPFR_RNDN);
-+ exp_lgamma (x, 53, 64);
-+ /* Idem for a large negative result > -Inf */
-+ mpfr_set_str (x, "-1.2b13fc45a92de81@14", 16, MPFR_RNDN);
-+ exp_lgamma (x, 53, 64);
-+ /* The following two tests trigger an endless loop in r8186
-+ on 64-bit machines (64-bit exponent). The second one (due
-+ to undetected overflow) is a direct consequence of the
-+ first one, due to the call of Gamma(2-x) if x < 1. */
-+ mpfr_set_str (x, "1.2b13fc45a92dec8@14", 16, MPFR_RNDN);
-+ exp_lgamma (x, 53, 64);
-+ mpfr_set_str (x, "-1.2b13fc45a92dea8@14", 16, MPFR_RNDN);
-+ exp_lgamma (x, 53, 64);
-+ /* Similar tests (overflow threshold) for 32-bit machines. */
-+ mpfr_set_str (x, "2ab68d8.657542f855111c61", 16, MPFR_RNDN);
-+ exp_lgamma (x, 12, 64);
-+ mpfr_set_str (x, "-2ab68d6.657542f855111c61", 16, MPFR_RNDN);
-+ exp_lgamma (x, 12, 64);
-+ /* The following test is an overflow on 32-bit and 64-bit machines.
-+ Revision r8189 fails on 64-bit machines as the flag is unset. */
-+ mpfr_set_str (x, "1.2b13fc45a92ded8@14", 16, MPFR_RNDN);
-+ exp_lgamma (x, 53, 64);
-+ /* On the following tests, with r8196, one gets an underflow on
-+ 32-bit machines, while a normal result is expected (see FIXME
-+ in gamma.c:382). */
-+ mpfr_set_str (x, "-2ab68d6.657542f855111c6104", 16, MPFR_RNDN);
-+ exp_lgamma (x, 12, 64); /* failure on 32-bit machines */
-+ mpfr_set_str (x, "-12b13fc45a92deb.1c6c5bc964", 16, MPFR_RNDN);
-+ exp_lgamma (x, 12, 64); /* failure on 64-bit machines */
-+ mpfr_clear (x);
-+
-+ set_emin (emin);
-+ set_emax (emax);
-+}
-+
- int
- main (int argc, char *argv[])
- {
-@@ -852,6 +1021,7 @@
- test20071231 ();
- test20100709 ();
- test20120426 ();
-+ exp_lgamma_tests ();
-
- data_check ("data/gamma", mpfr_gamma, "mpfr_gamma");
-
diff --git a/abs/core/mpfr/mpfr-3.1.6-p1.patch b/abs/core/mpfr/mpfr-3.1.6-p1.patch
new file mode 100644
index 0000000..5c742f0
--- /dev/null
+++ b/abs/core/mpfr/mpfr-3.1.6-p1.patch
@@ -0,0 +1,285 @@
+diff -Naurd mpfr-3.1.6-a/PATCHES mpfr-3.1.6-b/PATCHES
+--- mpfr-3.1.6-a/PATCHES 2017-10-26 13:55:51.168013439 +0000
++++ mpfr-3.1.6-b/PATCHES 2017-10-26 13:55:51.236013121 +0000
+@@ -0,0 +1 @@
++mpfr_get
+diff -Naurd mpfr-3.1.6-a/VERSION mpfr-3.1.6-b/VERSION
+--- mpfr-3.1.6-a/VERSION 2017-09-07 11:36:44.000000000 +0000
++++ mpfr-3.1.6-b/VERSION 2017-10-26 13:55:51.236013121 +0000
+@@ -1 +1 @@
+-3.1.6
++3.1.6-p1
+diff -Naurd mpfr-3.1.6-a/src/get_ld.c mpfr-3.1.6-b/src/get_ld.c
+--- mpfr-3.1.6-a/src/get_ld.c 2017-01-01 01:39:09.000000000 +0000
++++ mpfr-3.1.6-b/src/get_ld.c 2017-10-26 13:55:51.208013252 +0000
+@@ -41,6 +41,9 @@
+ mpfr_exp_t sh; /* exponent shift, so that x/2^sh is in the double range */
+ mpfr_t y, z;
+ int sign;
++ MPFR_SAVE_EXPO_DECL (expo);
++
++ MPFR_SAVE_EXPO_MARK (expo);
+
+ /* first round x to the target long double precision, so that
+ all subsequent operations are exact (this avoids double rounding
+@@ -103,6 +106,7 @@
+ }
+ if (sign < 0)
+ r = -r;
++ MPFR_SAVE_EXPO_FREE (expo);
+ return r;
+ }
+ }
+diff -Naurd mpfr-3.1.6-a/src/get_si.c mpfr-3.1.6-b/src/get_si.c
+--- mpfr-3.1.6-a/src/get_si.c 2017-01-01 01:39:09.000000000 +0000
++++ mpfr-3.1.6-b/src/get_si.c 2017-10-26 13:55:51.208013252 +0000
+@@ -28,6 +28,7 @@
+ mpfr_prec_t prec;
+ long s;
+ mpfr_t x;
++ MPFR_SAVE_EXPO_DECL (expo);
+
+ if (MPFR_UNLIKELY (!mpfr_fits_slong_p (f, rnd)))
+ {
+@@ -39,14 +40,22 @@
+ if (MPFR_IS_ZERO (f))
+ return (long) 0;
+
+- /* determine prec of long */
+- for (s = LONG_MIN, prec = 0; s != 0; s /= 2, prec++)
++ /* Determine the precision of long. |LONG_MIN| may have one more bit
++ as an integer, but in this case, this is a power of 2, thus fits
++ in a precision-prec floating-point number. */
++ for (s = LONG_MAX, prec = 0; s != 0; s /= 2, prec++)
+ { }
+
++ MPFR_SAVE_EXPO_MARK (expo);
++
+ /* first round to prec bits */
+ mpfr_init2 (x, prec);
+ mpfr_rint (x, f, rnd);
+
++ /* The flags from mpfr_rint are the wanted ones. In particular,
++ it sets the inexact flag when necessary. */
++ MPFR_SAVE_EXPO_UPDATE_FLAGS (expo, __gmpfr_flags);
++
+ /* warning: if x=0, taking its exponent is illegal */
+ if (MPFR_UNLIKELY (MPFR_IS_ZERO(x)))
+ s = 0;
+@@ -65,5 +74,7 @@
+
+ mpfr_clear (x);
+
++ MPFR_SAVE_EXPO_FREE (expo);
++
+ return s;
+ }
+diff -Naurd mpfr-3.1.6-a/src/get_sj.c mpfr-3.1.6-b/src/get_sj.c
+--- mpfr-3.1.6-a/src/get_sj.c 2017-01-01 01:39:09.000000000 +0000
++++ mpfr-3.1.6-b/src/get_sj.c 2017-10-26 13:55:51.208013252 +0000
+@@ -35,6 +35,7 @@
+ intmax_t r;
+ mpfr_prec_t prec;
+ mpfr_t x;
++ MPFR_SAVE_EXPO_DECL (expo);
+
+ if (MPFR_UNLIKELY (!mpfr_fits_intmax_p (f, rnd)))
+ {
+@@ -46,20 +47,24 @@
+ if (MPFR_IS_ZERO (f))
+ return (intmax_t) 0;
+
+- /* determine the precision of intmax_t */
+- for (r = MPFR_INTMAX_MIN, prec = 0; r != 0; r /= 2, prec++)
++ /* Determine the precision of intmax_t. |INTMAX_MIN| may have one
++ more bit as an integer, but in this case, this is a power of 2,
++ thus fits in a precision-prec floating-point number. */
++ for (r = MPFR_INTMAX_MAX, prec = 0; r != 0; r /= 2, prec++)
+ { }
+- /* Note: though INTMAX_MAX would have been sufficient for the conversion,
+- we chose INTMAX_MIN so that INTMAX_MIN - 1 is always representable in
+- precision prec; this is useful to detect overflows in MPFR_RNDZ (will
+- be needed later). */
+
+- /* Now, r = 0. */
++ MPFR_ASSERTD (r == 0);
++
++ MPFR_SAVE_EXPO_MARK (expo);
+
+ mpfr_init2 (x, prec);
+ mpfr_rint (x, f, rnd);
+ MPFR_ASSERTN (MPFR_IS_FP (x));
+
++ /* The flags from mpfr_rint are the wanted ones. In particular,
++ it sets the inexact flag when necessary. */
++ MPFR_SAVE_EXPO_UPDATE_FLAGS (expo, __gmpfr_flags);
++
+ if (MPFR_NOTZERO (x))
+ {
+ mp_limb_t *xp;
+@@ -67,15 +72,15 @@
+
+ xp = MPFR_MANT (x);
+ sh = MPFR_GET_EXP (x);
+- MPFR_ASSERTN ((mpfr_prec_t) sh <= prec);
++ MPFR_ASSERTN ((mpfr_prec_t) sh <= prec + 1);
+ if (MPFR_INTMAX_MIN + MPFR_INTMAX_MAX != 0
+- && MPFR_UNLIKELY ((mpfr_prec_t) sh == prec))
++ && MPFR_UNLIKELY ((mpfr_prec_t) sh > prec))
+ {
+ /* 2's complement and x <= INTMAX_MIN: in the case mp_limb_t
+ has the same size as intmax_t, we cannot use the code in
+ the for loop since the operations would be performed in
+ unsigned arithmetic. */
+- MPFR_ASSERTN (MPFR_IS_NEG (x) && (mpfr_powerof2_raw (x)));
++ MPFR_ASSERTN (MPFR_IS_NEG (x) && mpfr_powerof2_raw (x));
+ r = MPFR_INTMAX_MIN;
+ }
+ else if (MPFR_IS_POS (x))
+@@ -117,6 +122,8 @@
+
+ mpfr_clear (x);
+
++ MPFR_SAVE_EXPO_FREE (expo);
++
+ return r;
+ }
+
+diff -Naurd mpfr-3.1.6-a/src/get_ui.c mpfr-3.1.6-b/src/get_ui.c
+--- mpfr-3.1.6-a/src/get_ui.c 2017-01-01 01:39:09.000000000 +0000
++++ mpfr-3.1.6-b/src/get_ui.c 2017-10-26 13:55:51.208013252 +0000
+@@ -30,6 +30,7 @@
+ mpfr_t x;
+ mp_size_t n;
+ mpfr_exp_t exp;
++ MPFR_SAVE_EXPO_DECL (expo);
+
+ if (MPFR_UNLIKELY (!mpfr_fits_ulong_p (f, rnd)))
+ {
+@@ -44,10 +45,16 @@
+ for (s = ULONG_MAX, prec = 0; s != 0; s /= 2, prec ++)
+ { }
+
++ MPFR_SAVE_EXPO_MARK (expo);
++
+ /* first round to prec bits */
+ mpfr_init2 (x, prec);
+ mpfr_rint (x, f, rnd);
+
++ /* The flags from mpfr_rint are the wanted ones. In particular,
++ it sets the inexact flag when necessary. */
++ MPFR_SAVE_EXPO_UPDATE_FLAGS (expo, __gmpfr_flags);
++
+ /* warning: if x=0, taking its exponent is illegal */
+ if (MPFR_IS_ZERO(x))
+ s = 0;
+@@ -61,5 +68,7 @@
+
+ mpfr_clear (x);
+
++ MPFR_SAVE_EXPO_FREE (expo);
++
+ return s;
+ }
+diff -Naurd mpfr-3.1.6-a/src/get_uj.c mpfr-3.1.6-b/src/get_uj.c
+--- mpfr-3.1.6-a/src/get_uj.c 2017-01-01 01:39:09.000000000 +0000
++++ mpfr-3.1.6-b/src/get_uj.c 2017-10-26 13:55:51.208013252 +0000
+@@ -35,6 +35,7 @@
+ uintmax_t r;
+ mpfr_prec_t prec;
+ mpfr_t x;
++ MPFR_SAVE_EXPO_DECL (expo);
+
+ if (MPFR_UNLIKELY (!mpfr_fits_uintmax_p (f, rnd)))
+ {
+@@ -50,12 +51,18 @@
+ for (r = MPFR_UINTMAX_MAX, prec = 0; r != 0; r /= 2, prec++)
+ { }
+
+- /* Now, r = 0. */
++ MPFR_ASSERTD (r == 0);
++
++ MPFR_SAVE_EXPO_MARK (expo);
+
+ mpfr_init2 (x, prec);
+ mpfr_rint (x, f, rnd);
+ MPFR_ASSERTN (MPFR_IS_FP (x));
+
++ /* The flags from mpfr_rint are the wanted ones. In particular,
++ it sets the inexact flag when necessary. */
++ MPFR_SAVE_EXPO_UPDATE_FLAGS (expo, __gmpfr_flags);
++
+ if (MPFR_NOTZERO (x))
+ {
+ mp_limb_t *xp;
+@@ -76,6 +83,8 @@
+
+ mpfr_clear (x);
+
++ MPFR_SAVE_EXPO_FREE (expo);
++
+ return r;
+ }
+
+diff -Naurd mpfr-3.1.6-a/src/get_z.c mpfr-3.1.6-b/src/get_z.c
+--- mpfr-3.1.6-a/src/get_z.c 2017-01-01 01:39:09.000000000 +0000
++++ mpfr-3.1.6-b/src/get_z.c 2017-10-26 13:55:51.208013252 +0000
+@@ -29,6 +29,7 @@
+ int inex;
+ mpfr_t r;
+ mpfr_exp_t exp;
++ MPFR_SAVE_EXPO_DECL (expo);
+
+ if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (f)))
+ {
+@@ -41,6 +42,8 @@
+ return 0;
+ }
+
++ MPFR_SAVE_EXPO_MARK (expo);
++
+ exp = MPFR_GET_EXP (f);
+ /* if exp <= 0, then |f|<1, thus |o(f)|<=1 */
+ MPFR_ASSERTN (exp < 0 || exp <= MPFR_PREC_MAX);
+@@ -50,6 +53,11 @@
+ MPFR_ASSERTN (inex != 1 && inex != -1); /* integral part of f is
+ representable in r */
+ MPFR_ASSERTN (MPFR_IS_FP (r));
++
++ /* The flags from mpfr_rint are the wanted ones. In particular,
++ it sets the inexact flag when necessary. */
++ MPFR_SAVE_EXPO_UPDATE_FLAGS (expo, __gmpfr_flags);
++
+ exp = mpfr_get_z_2exp (z, r);
+ if (exp >= 0)
+ mpz_mul_2exp (z, z, exp);
+@@ -57,5 +65,7 @@
+ mpz_fdiv_q_2exp (z, z, -exp);
+ mpfr_clear (r);
+
++ MPFR_SAVE_EXPO_FREE (expo);
++
+ return inex;
+ }
+diff -Naurd mpfr-3.1.6-a/src/mpfr.h mpfr-3.1.6-b/src/mpfr.h
+--- mpfr-3.1.6-a/src/mpfr.h 2017-09-07 11:36:44.000000000 +0000
++++ mpfr-3.1.6-b/src/mpfr.h 2017-10-26 13:55:51.232013138 +0000
+@@ -27,7 +27,7 @@
+ #define MPFR_VERSION_MAJOR 3
+ #define MPFR_VERSION_MINOR 1
+ #define MPFR_VERSION_PATCHLEVEL 6
+-#define MPFR_VERSION_STRING "3.1.6"
++#define MPFR_VERSION_STRING "3.1.6-p1"
+
+ /* Macros dealing with MPFR VERSION */
+ #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
+diff -Naurd mpfr-3.1.6-a/src/version.c mpfr-3.1.6-b/src/version.c
+--- mpfr-3.1.6-a/src/version.c 2017-09-07 11:36:44.000000000 +0000
++++ mpfr-3.1.6-b/src/version.c 2017-10-26 13:55:51.232013138 +0000
+@@ -25,5 +25,5 @@
+ const char *
+ mpfr_get_version (void)
+ {
+- return "3.1.6";
++ return "3.1.6-p1";
+ }
diff --git a/abs/core/mpfr/mpfr.install b/abs/core/mpfr/mpfr.install
deleted file mode 100644
index d6dd047..0000000
--- a/abs/core/mpfr/mpfr.install
+++ /dev/null
@@ -1,20 +0,0 @@
-info_dir=usr/share/info
-info_files=(mpfr.info)
-
-post_install() {
- [ -x usr/bin/install-info ] || return 0
- for f in ${info_files[@]}; do
- install-info ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null
- done
-}
-
-post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- [ -x usr/bin/install-info ] || return 0
- for f in ${info_files[@]}; do
- install-info --delete ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null
- done
-}
diff --git a/abs/core/mplayer-wrapper/PKGBUILD b/abs/core/mplayer-wrapper/PKGBUILD
index 5fa1f99..8c70913 100644
--- a/abs/core/mplayer-wrapper/PKGBUILD
+++ b/abs/core/mplayer-wrapper/PKGBUILD
@@ -1,6 +1,6 @@
pkgname=mplayer-wrapper
pkgver=1
-pkgrel=11
+pkgrel=12
pkgdesc="wrapper for mplayer and mplayer derivatives"
arch=('i686' 'x86_64')
depends=('perl' 'vdpauinfo')
@@ -14,4 +14,4 @@ package() {
# executables
install -m0755 -D $srcdir/*.pl $pkgdir/$LH_ROOT/bin/
}
-md5sums=('da888009e5937e7e3046f5adcb2a604c')
+md5sums=('af150ea192ce97a95ebf38b5dc15f233')
diff --git a/abs/core/mplayer-wrapper/mplayer-wrapper.pl b/abs/core/mplayer-wrapper/mplayer-wrapper.pl
index d938fbf..6b07892 100644
--- a/abs/core/mplayer-wrapper/mplayer-wrapper.pl
+++ b/abs/core/mplayer-wrapper/mplayer-wrapper.pl
@@ -238,7 +238,7 @@ sub dynamic_parameters () {
# Finally, if no bookmarking players can be found, a barebones mplayer is used.
sub pick_player () {
#my @possible_players = ("smplayer", "mplayer-resumer.pl", "mplayer");
- my @possible_players = ("mplayer-resumer.pl", "mplayer");
+ my @possible_players = ("mplayer");
my $command;
my $candidate_player;
foreach (@possible_players) {
@@ -256,7 +256,8 @@ sub pick_player () {
# Calls player
sub player () {
my($player,$parameters,$mediafile)=@_;
- my $command = "$player $parameters \"$mediafile\" 2>&1 |";
+ #my $command = "$player $parameters \"$mediafile\" 2>&1 |";
+ my $command = "$player $parameters \"$mediafile\" > /tmp/.mplayer-status |";
print "DEBUG: $0's player command is: *** $command ***\n";
open(SHELL, $command);
diff --git a/abs/core/mplayer/PKGBUILD b/abs/core/mplayer/PKGBUILD
index 4d95801..c59bebe 100644
--- a/abs/core/mplayer/PKGBUILD
+++ b/abs/core/mplayer/PKGBUILD
@@ -1,46 +1,43 @@
-# $Id$
-# Maintainer: Ionut Biru <ibiru@archlinux.org>
+# Maintainer: Levente Polyak <anthraxx@archlinux.org>
+# Contributor: Ionut Biru <ibiru@archlinux.org>
# Contributor: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor: Hugo Doria <hugo@archlinux.org>
pkgbase=mplayer
pkgname=('mplayer' 'mencoder')
-pkgver=37857
-pkgrel=2
-arch=('i686' 'x86_64')
-makedepends=(
- 'libxxf86dga' 'libmad' 'libxinerama'
- 'libmng' 'libxss' 'smbclient' 'aalib' 'libcaca'
- 'faac' 'faad2' 'lirc' 'libxvmc' 'enca' 'libdca' 'a52dec' 'libvpx' 'unzip' 'mesa'
- 'live-media' 'yasm' 'git' 'mpg123' 'ladspa'
- 'libcdio-paranoia' 'subversion' 'x264' 'libx264' 'rtmpdump'
- 'libdvdcss' 'libdvdread' 'libdvdnav' 'ffmpeg'
-)
-license=('GPL')
+pkgver=38017
+pkgrel=1
+pkgdesc='Media player for Linux'
url='http://www.mplayerhq.hu/'
-options=('!buildflags' '!emptydirs')
-source=($pkgbase-$pkgver::svn://svn.mplayerhq.hu/mplayer/trunk#revision=$pkgver
+arch=('x86_64')
+license=('GPL')
+makedepends=('libxxf86dga' 'libmad' 'libxinerama' 'libmng' 'libxss' 'smbclient' 'aalib'
+ 'libcaca' 'faac' 'faad2' 'lirc' 'libxvmc' 'enca' 'libdca' 'a52dec' 'libvpx' 'unzip'
+ 'mesa' 'live-media' 'yasm' 'git' 'mpg123' 'ladspa' 'libcdio-paranoia' 'subversion'
+ 'x264' 'libx264' 'rtmpdump' 'libdvdcss' 'libdvdread' 'libdvdnav' 'ffmpeg')
+options=('!emptydirs')
+source=(${pkgbase}-${pkgver}::"svn://svn.mplayerhq.hu/mplayer/trunk#revision=${pkgver}"
mplayer.desktop
include-samba-4.0.patch
revert-icl-fixes.patch)
-md5sums=('SKIP'
- '62f44a58f072b2b1a3c3d3e4976d64b3'
- '868a92bdef148df7f38bfa992b26ce9d'
- '3579402002b7302fdf2d146639333efd')
+sha512sums=('SKIP'
+ 'd3c5cbf0035279c6f307e4e225473d7b77f9b56566537a26aa694e68446b9e3240333296da627ad5af83b04cc8f476d1a3f8c05e4cf81cd6e77153feb4ed74bc'
+ '9debb8c58b996f6c716c22c86c720bf9dc49b4ee9b76c57519f791667ae1de2cc6f5add878fbf4ac02c6b6fd1865e1bcfa6105e75de4bf7ec596c338ed0cae99'
+ '0cae0b26d3d97fd4c962962c43a481de20335369cbca406cadfc9bda1a0608b32f5374e76c477cb9a85bda83a568a1ed17126df224ae61579d0a402c1824aea8')
prepare() {
- cd $pkgbase-$pkgver
-# mv ../ffmpeg-*/ ./ffmpeg
-
- patch -Np1 -i ../include-samba-4.0.patch
- patch -Np0 -i ../revert-icl-fixes.patch
-
+ cd ${pkgbase}-${pkgver}
+ patch -p1 < "../include-samba-4.0.patch"
+ patch -p0 < "../revert-icl-fixes.patch"
./version.sh
}
build() {
- cd $pkgbase-$pkgver
-
+ cd ${pkgbase}-${pkgver}
+ export CFLAGS="${CFLAGS/-march=x86-64/}"
+ export CFLAGS="${CFLAGS/-mtune=generic/}"
+ export LDFLAGS="${LDFLAGS/,O1/}"
+ export LDFLAGS="${LDFLAGS/,--sort-common/}"
./configure --prefix=/usr \
--enable-runtime-cpudetection \
--disable-gui \
@@ -60,42 +57,36 @@ build() {
--enable-radio-capture \
--enable-smb \
--language=all \
- --confdir=/etc/mplayer
- [[ "$CARCH" = "i686" ]] && sed 's|-march=i486|-march=i686|g' -i config.mak
-
+ --confdir=/etc/mplayer \
+ --extra-cflags="${CFLAGS}" \
+ --extra-ldflags="${LDFLAGS}"
+ [[ "${CARCH}" = "i686" ]] && sed 's|-march=i486|-march=i686|g' -i config.mak
make
}
package_mplayer() {
pkgdesc='Media player for Linux'
backup=('etc/mplayer/codecs.conf' 'etc/mplayer/input.conf')
- depends=(
- 'desktop-file-utils' 'ttf-font' 'enca' 'libxss' 'a52dec' 'libvpx'
- 'lirc' 'libx264' 'libmng' 'libdca' 'aalib' 'libxinerama' 'smbclient'
- 'libmad' 'libcaca' 'libxxf86dga' 'faac' 'faad2' 'libxvmc' 'mpg123'
- 'libcdio-paranoia' 'rtmpdump' 'libdvdnav' 'ffmpeg'
- )
+ depends=('desktop-file-utils' 'ttf-font' 'enca' 'libxss' 'a52dec' 'libvpx'
+ 'lirc' 'libx264' 'libmng' 'libdca' 'aalib' 'libxinerama' 'smbclient'
+ 'libmad' 'libcaca' 'libxxf86dga' 'faac' 'faad2' 'libxvmc' 'mpg123'
+ 'libcdio-paranoia' 'rtmpdump' 'libdvdnav' 'ffmpeg')
- cd $pkgbase-$pkgver
- make DESTDIR="$pkgdir" install-mplayer install-mplayer-man
+ cd ${pkgbase}-${pkgver}
+ make DESTDIR="${pkgdir}" install-mplayer install-mplayer-man
- install -Dm644 etc/{codecs.conf,input.conf,example.conf} \
- "$pkgdir/etc/mplayer/"
-
- # desktop file (FS#14770)
- install -Dm644 ../mplayer.desktop \
- "$pkgdir"/usr/share/applications/mplayer.desktop
- install -Dm644 etc/mplayer256x256.png \
- "$pkgdir"/usr/share/pixmaps/mplayer.png
+ install -Dm 644 etc/{codecs.conf,input.conf,example.conf} "${pkgdir}/etc/mplayer"
+ install -Dm 644 "${srcdir}/mplayer.desktop" -t "${pkgdir}/usr/share/applications"
+ install -Dm 644 etc/mplayer256x256.png "${pkgdir}/usr/share/pixmaps/mplayer.png"
}
package_mencoder() {
pkgdesc='Free command line video decoding, encoding and filtering tool'
- depends=(
- 'enca' 'a52dec' 'libvpx' 'libx264' 'libmng' 'libdca' 'smbclient' 'libmad' 'faac' 'faad2'
- 'mpg123' 'libcdio-paranoia' 'rtmpdump' 'libdvdnav' 'ffmpeg'
- )
+ depends=('enca' 'a52dec' 'libvpx' 'libx264' 'libmng' 'libdca' 'smbclient' 'libmad'
+ 'faac' 'faad2' 'mpg123' 'libcdio-paranoia' 'rtmpdump' 'libdvdnav' 'ffmpeg')
- make -C $pkgbase-$pkgver DESTDIR="$pkgdir" install-mencoder install-mencoder-man
- find "$pkgdir"/usr/share/man -name mplayer.1 -exec rename mplayer.1 mencoder.1 {} +
+ make -C ${pkgbase}-${pkgver} DESTDIR="${pkgdir}" install-mencoder install-mencoder-man
+ find "${pkgdir}/usr/share/man" -name mplayer.1 -exec rename mplayer.1 mencoder.1 {} +
}
+
+# vim: ts=2 sw=2 et:
diff --git a/abs/core/mplayer/cdio-includes.patch b/abs/core/mplayer/cdio-includes.patch
deleted file mode 100644
index f714728..0000000
--- a/abs/core/mplayer/cdio-includes.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Index: configure
-===================================================================
---- configure (revision 35421)
-+++ configure (working copy)
-@@ -5968,8 +5968,8 @@
- cat > $TMPC << EOF
- #include <stdio.h>
- #include <cdio/version.h>
--#include <cdio/cdda.h>
--#include <cdio/paranoia.h>
-+#include <cdio/paranoia/cdda.h>
-+#include <cdio/paranoia/paranoia.h>
- int main(void) {
- void *test = cdda_verbose_set;
- printf("%s\n", CDIO_VERSION);
-Index: gui/win32/interface.c
-===================================================================
---- gui/win32/interface.c (revision 35421)
-+++ gui/win32/interface.c (working copy)
-@@ -24,7 +24,7 @@
- #include "config.h"
-
- #if defined(CONFIG_LIBCDIO)
--#include <cdio/cdda.h>
-+#include <cdio/paranoia/cdda.h>
- #elif defined(CONFIG_CDDA)
- #include <cdda_interface.h>
- #endif
-Index: stream/stream_cdda.c
-===================================================================
---- stream/stream_cdda.c (revision 35421)
-+++ stream/stream_cdda.c (working copy)
-@@ -21,8 +21,8 @@
- #include <cdda_interface.h>
- #include <cdda_paranoia.h>
- #else
--#include <cdio/cdda.h>
--#include <cdio/paranoia.h>
-+#include <cdio/paranoia/cdda.h>
-+#include <cdio/paranoia/paranoia.h>
- #endif
- #include <stdio.h>
- #include <stdlib.h>
diff --git a/abs/core/mplayer/mplayer.png b/abs/core/mplayer/mplayer.png
deleted file mode 100644
index 7997693..0000000
--- a/abs/core/mplayer/mplayer.png
+++ /dev/null
Binary files differ
diff --git a/abs/core/mysql/PKGBUILD b/abs/core/mysql/PKGBUILD
index 0c3a45f..2a74619 100644
--- a/abs/core/mysql/PKGBUILD
+++ b/abs/core/mysql/PKGBUILD
@@ -5,11 +5,11 @@
pkgname=('mysql' 'libmysqlclient' 'mysql-clients')
pkgbase=mysql
-pkgver=5.6.35
+pkgver=5.6.39
pkgrel=1
pkgdesc="Fast SQL database server, community edition"
arch=('i686' 'x86_64')
-makedepends=('openssl' 'zlib' 'cmake' 'systemd-tools' 'libaio' 'jemalloc')
+makedepends=('zlib' 'cmake' 'systemd-tools' 'libaio' 'jemalloc')
license=('GPL')
url="https://www.mysql.com/products/community/"
options=('!libtool')
@@ -53,7 +53,7 @@ build() {
-DINSTALL_DOCDIR=share/mysql/docs \
-DINSTALL_SHAREDIR=share/mysql \
-DWITH_ZLIB=system \
- -DWITH_SSL=system \
+ -DWITH_SSL=bundled \
-DWITH_LIBWRAP=OFF \
-DCMAKE_EXE_LINKER_FLAGS='-ljemalloc' \
-DWITH_EXTRA_CHARSETS=complex \
@@ -169,7 +169,7 @@ package_mysql(){
rm "${pkgdir}/usr/share/man/man1/mysql-test-run.pl.1"
}
-md5sums=('e4f170f6f73aa94c0d8da90019545908'
+md5sums=('abcee03992647d508ac5c2568c6cc802'
'b79e65a5aa536e6b5bc60988eb0b78a2'
'2fa6e456964d4ff5e6d4f9ff0126aed6'
'81b62df0f569935109c1b107dfe9f9fa'
diff --git a/abs/core/mythinstall/PKGBUILD b/abs/core/mythinstall/PKGBUILD
index 64486cd..75ffe99 100644
--- a/abs/core/mythinstall/PKGBUILD
+++ b/abs/core/mythinstall/PKGBUILD
@@ -1,7 +1,7 @@
# Maintainer: Jams
pkgname=mythinstall
pkgver=8.5.1
-pkgrel=2
+pkgrel=4
pkgdesc="LinHES installer/systemconfig GUI."
arch=('i686' 'x86_64')
depends=('mythtv>=29' 'LinHES-config')
diff --git a/abs/core/mythtv/stable-29/git_src/git_hash b/abs/core/mythtv/stable-29/git_src/git_hash
index 1aef815..524ff49 100644
--- a/abs/core/mythtv/stable-29/git_src/git_hash
+++ b/abs/core/mythtv/stable-29/git_src/git_hash
@@ -1 +1 @@
-9b7b96283458073007a8f3801d5284fb59af3979
+e5fc66e822072037aeaf8c54c4292f17f65cef56
diff --git a/abs/core/mythtv/stable-29/git_src/git_hash_web b/abs/core/mythtv/stable-29/git_src/git_hash_web
index 38dfcdc..22e5e67 100644
--- a/abs/core/mythtv/stable-29/git_src/git_hash_web
+++ b/abs/core/mythtv/stable-29/git_src/git_hash_web
@@ -1 +1 @@
-99838ff4323d7dfc20fd720d4ed3a2042592df69
+6a6eb1a4a9e48a3f7fcf3006cb4404051e572911
diff --git a/abs/core/mythtv/stable-29/mythplugins/PKGBUILD b/abs/core/mythtv/stable-29/mythplugins/PKGBUILD
index ed4036c..7dcae9e 100644
--- a/abs/core/mythtv/stable-29/mythplugins/PKGBUILD
+++ b/abs/core/mythtv/stable-29/mythplugins/PKGBUILD
@@ -9,22 +9,23 @@ pkgname=('mytharchive'
'mythweather'
'mythzoneminder')
pkgver=29.1
-pkgrel=1
-arch=('i686' 'x86_64')
+pkgrel=9
+arch=('x86_64')
url="http://www.mythtv.org"
license=('GPL')
makedepends=('cdrkit' 'dcraw' 'dvdauthor' 'dvd+rw-tools' 'ffmpeg' 'flac' 'libexif'
'libvorbis' 'mesa' 'libgl' 'mplayer' "mythtv>=${pkgver}"
'perl-datetime-format-iso8601' 'perl-date-manip' 'perl-image-size'
'perl-json' 'perl-libwww' 'perl-soap-lite' 'perl-xml-sax'
- 'perl-xml-simple' 'perl-xml-xpath' 'python-oauth' 'python2-pillow'
- 'python-pycurl' 'zlib')
+ 'perl-xml-simple' 'perl-xml-xpath' 'python2-oauth' 'python2-pillow'
+ 'python2-pycurl' 'zlib')
source=('mythburn.py-aspectratio.patch'
+ 'mythburn.cpp-python2.patch'
'cdparanoia.patch'
'0317-0336-MythMusic-Fix-Playlist-copyTracks-and-removeAllTrack.patch'
)
-build() {
+prepare() {
if [ -e ${srcdir}/mythplugins ]
then
msg "Removing old mythplugins src"
@@ -38,14 +39,21 @@ build() {
cd ${srcdir}
patch -Np1 -i "$srcdir/0317-0336-MythMusic-Fix-Playlist-copyTracks-and-removeAllTrack.patch"
- msg "Patching configure"
+ msg "Change python to python2"
+ find . -name '*.py' -type f | xargs sed -i 's@^#!.*python$@#!/usr/bin/python2@'
+ patch -Np1 -i "$srcdir/mythburn.cpp-python2.patch"
+
+ msg "Patching Configure"
cd ${srcdir}/${pkgbase}
patch -Np1 -i "$srcdir/cdparanoia.patch"
+}
+build() {
+ cd ${srcdir}/${pkgbase}
msg "Configuring mythplugins"
./configure --prefix=/usr \
--enable-all \
- --python=/usr/bin/python2
+ --python=python2
msg "Compiling mythplugins"
qmake-qt5 mythplugins.pro || return 1
@@ -93,7 +101,7 @@ package_mythmusic() {
package_mythnetvision() {
pkgdesc="MythNetvision plugin for MythTV"
- depends=("mythtv>=${pkgver}" 'python-pycurl' 'python-oauth'
+ depends=("mythtv>=${pkgver}" 'python2-pycurl' 'python2-oauth'
'python2-lxml' 'python2')
cd "${srcdir}/${_gitname}/${pkgbase}/mythnetvision"
make INSTALL_ROOT="${pkgdir}" install || return 1
@@ -124,5 +132,6 @@ package_mythzoneminder() {
}
md5sums=('e98c2a09bcb051fdde959fb4bb2e5ab2'
+ 'b9edd8f7da64ffa74baa91092bd48cc9'
'5de8dd79d0b8a2b006f3c3258938b6b7'
'0299d0214c0d3a452c0284352435d698')
diff --git a/abs/core/mythtv/stable-29/mythplugins/mythburn.cpp-python2.patch b/abs/core/mythtv/stable-29/mythplugins/mythburn.cpp-python2.patch
new file mode 100644
index 0000000..2c43f9e
--- /dev/null
+++ b/abs/core/mythtv/stable-29/mythplugins/mythburn.cpp-python2.patch
@@ -0,0 +1,13 @@
+diff --git a/mythplugins/mytharchive/mytharchive/mythburn.cpp b/mythplugins/mytharchive/mytharchive/mythburn.cpp
+index 4188579bb0..639f17abe9 100644
+--- a/mythplugins/mytharchive/mytharchive/mythburn.cpp
++++ b/mythplugins/mytharchive/mytharchive/mythburn.cpp
+@@ -950,7 +950,7 @@ void MythBurn::runScript()
+ QFile::remove(logDir + "/mythburncancel.lck");
+
+ createConfigFile(configDir + "/mydata.xml");
+- commandline = "python " + GetShareDir() + "mytharchive/scripts/mythburn.py";
++ commandline = "python2 " + GetShareDir() + "mytharchive/scripts/mythburn.py";
+ commandline += " -j " + configDir + "/mydata.xml"; // job file
+ commandline += " -l " + logDir + "/progress.log"; // progress log
+ commandline += " > " + logDir + "/mythburn.log 2>&1 &"; // Logs
diff --git a/abs/core/mythtv/stable-29/mythtv/0259-0117-UI-Provide-dbase-cache-for-RegisterKey-and-RegisterJ.patch b/abs/core/mythtv/stable-29/mythtv/0259-0117-UI-Provide-dbase-cache-for-RegisterKey-and-RegisterJ.patch
deleted file mode 100644
index 79169e4..0000000
--- a/abs/core/mythtv/stable-29/mythtv/0259-0117-UI-Provide-dbase-cache-for-RegisterKey-and-RegisterJ.patch
+++ /dev/null
@@ -1,276 +0,0 @@
-From 53ab06dc745938d2ea74214fc10a2b5446bac01a Mon Sep 17 00:00:00 2001
-From: Lawrence Rust <lvr@softsystem.co.uk>
-Date: Wed, 5 Jun 2013 16:07:56 +0100
-Subject: [PATCH 117/333] UI: Provide dbase cache for RegisterKey and
- RegisterJump to speed startup
-
-Signed-off-by: Lawrence Rust <lvr@softsystem.co.uk>
----
- mythtv/libs/libmythui/mythmainwindow.cpp | 211 +++++++++++++++++++++---------
- 1 file changed, 147 insertions(+), 64 deletions(-)
-
-diff --git a/mythtv/libs/libmythui/mythmainwindow.cpp b/mythtv/libs/libmythui/mythmainwindow.cpp
-index c765279..226454a 100644
---- a/mythtv/libs/libmythui/mythmainwindow.cpp
-+++ b/mythtv/libs/libmythui/mythmainwindow.cpp
-@@ -25,6 +25,9 @@ using namespace std;
- #include <QKeyEvent>
- #include <QKeySequence>
- #include <QSize>
-+#include <QPair>
-+#include <QMap>
-+#include <QMutexLocker>
-
- // Platform headers
- #include "unistd.h"
-@@ -1765,67 +1768,107 @@ void MythMainWindow::BindKey(const QString &context, const QString &action,
- void MythMainWindow::RegisterKey(const QString &context, const QString &action,
- const QString &description, const QString &key)
- {
-- QString keybind = key;
--
-- MSqlQuery query(MSqlQuery::InitCon());
-+ typedef QPair< QString,QString > key_t; // context, action
-+ typedef QPair< QString,QString > val_t; // keybind, description
-+ typedef QMap< key_t,val_t > cache_t;
-+ static cache_t s_cache;
-+ static QMutex s_mutex;
-
-- if (d->m_useDB && query.isConnected())
-+ if (s_cache.empty() && d->m_useDB)
- {
-- query.prepare("SELECT keylist, description FROM keybindings WHERE "
-- "context = :CONTEXT AND action = :ACTION AND "
-- "hostname = :HOSTNAME ;");
-- query.bindValue(":CONTEXT", context);
-- query.bindValue(":ACTION", action);
-- query.bindValue(":HOSTNAME", GetMythDB()->GetHostName());
--
-- if (query.exec() && query.next())
-+ MSqlQuery query(MSqlQuery::InitCon());
-+ if (query.isConnected())
- {
-- keybind = query.value(0).toString();
-- QString db_description = query.value(1).toString();
--
-- // Update keybinding description if changed
-- if (db_description != description)
-+ query.prepare("SELECT context, action, keylist, description "
-+ "FROM keybindings WHERE hostname = :HOSTNAME ;");
-+ query.bindValue(":HOSTNAME", GetMythDB()->GetHostName());
-+ if (query.exec())
- {
-- LOG(VB_GENERAL, LOG_NOTICE,
-- "Updating keybinding description...");
-- query.prepare(
-- "UPDATE keybindings "
-- "SET description = :DESCRIPTION "
-- "WHERE context = :CONTEXT AND "
-- " action = :ACTION AND "
-- " hostname = :HOSTNAME");
--
-- query.bindValue(":DESCRIPTION", description);
-- query.bindValue(":CONTEXT", context);
-- query.bindValue(":ACTION", action);
-- query.bindValue(":HOSTNAME", GetMythDB()->GetHostName());
--
-- if (!query.exec() && !(GetMythDB()->SuppressDBMessages()))
-+ QMutexLocker locker(&s_mutex);
-+ while (query.next())
- {
-- MythDB::DBError("Update Keybinding", query);
-+ key_t k(query.value(0).toString(), query.value(1).toString());
-+ val_t v(query.value(2).toString(), query.value(3).toString());
-+ s_cache[k] = v;
- }
- }
-+ else if (!GetMythDB()->SuppressDBMessages())
-+ MythDB::DBError("RegisterKey", query);
- }
-- else
-+ }
-+
-+ QString keybind = key;
-+ QString db_description;
-+ bool bFound = false;
-+ {
-+ QMutexLocker locker(&s_mutex);
-+ cache_t::const_iterator it = s_cache.find(key_t(context, action));
-+ if (it != s_cache.end())
- {
-- QString inskey = keybind;
--
-- query.prepare("INSERT INTO keybindings (context, action, "
-- "description, keylist, hostname) VALUES "
-- "( :CONTEXT, :ACTION, :DESCRIPTION, :KEYLIST, "
-- ":HOSTNAME );");
-- query.bindValue(":CONTEXT", context);
-- query.bindValue(":ACTION", action);
-+ keybind = it->first;
-+ db_description = it->second;
-+ bFound = true;
-+ }
-+ }
-+
-+ if (bFound)
-+ {
-+ // Update keybinding description if changed
-+ if (db_description != description && d->m_useDB)
-+ {
-+ LOG(VB_GENERAL, LOG_NOTICE, "Updating keybinding description...");
-+
-+ MSqlQuery query(MSqlQuery::InitCon());
-+
-+ query.prepare(
-+ "UPDATE keybindings "
-+ "SET description = :DESCRIPTION "
-+ "WHERE context = :CONTEXT AND "
-+ " action = :ACTION AND "
-+ " hostname = :HOSTNAME");
-+
- query.bindValue(":DESCRIPTION", description);
-- query.bindValue(":KEYLIST", inskey);
-- query.bindValue(":HOSTNAME", GetMythDB()->GetHostName());
-+ query.bindValue(":CONTEXT", context);
-+ query.bindValue(":ACTION", action);
-+ query.bindValue(":HOSTNAME", GetMythDB()->GetHostName());
-
- if (!query.exec() && !(GetMythDB()->SuppressDBMessages()))
- {
-- MythDB::DBError("Insert Keybinding", query);
-+ MythDB::DBError("Update Keybinding", query);
- }
- }
- }
-+ else if (d->m_useDB)
-+ {
-+ LOG(VB_GENERAL, LOG_NOTICE, QString("Add keybinding %1::%2 = %3")
-+ .arg(context).arg(action).arg(keybind) );
-+
-+ MSqlQuery query(MSqlQuery::InitCon());
-+
-+ QString inskey = keybind;
-+
-+ query.prepare("INSERT INTO keybindings (context, action, "
-+ "description, keylist, hostname) VALUES "
-+ "( :CONTEXT, :ACTION, :DESCRIPTION, :KEYLIST, "
-+ ":HOSTNAME );");
-+ query.bindValue(":CONTEXT", context);
-+ query.bindValue(":ACTION", action);
-+ query.bindValue(":DESCRIPTION", description);
-+ query.bindValue(":KEYLIST", inskey);
-+ query.bindValue(":HOSTNAME", GetMythDB()->GetHostName());
-+
-+ if (!query.exec() && !(GetMythDB()->SuppressDBMessages()))
-+ {
-+ MythDB::DBError("Insert Keybinding", query);
-+ }
-+ else
-+ {
-+ QMutexLocker locker(&s_mutex);
-+ key_t k(context, action);
-+ val_t v(keybind, description);
-+ s_cache[k] = v;
-+ }
-+ }
-
- BindKey(context, action, keybind);
- d->actionText[context][action] = description;
-@@ -1930,35 +1973,75 @@ void MythMainWindow::RegisterJump(const QString &destination,
- const QString &key, void (*callback)(void),
- bool exittomain, QString localAction)
- {
-- QString keybind = key;
-+ typedef QPair< QString,QString > val_t; // keylist, description
-+ typedef QMap< QString,val_t > cache_t; // destination -> keylist, description
-+ static cache_t s_cache;
-+ static QMutex s_mutex;
-
-- MSqlQuery query(MSqlQuery::InitCon());
-- if (query.isConnected())
-+ if (s_cache.empty() && d->m_useDB)
- {
-- query.prepare("SELECT keylist FROM jumppoints WHERE "
-- "destination = :DEST and hostname = :HOST ;");
-- query.bindValue(":DEST", destination);
-- query.bindValue(":HOST", GetMythDB()->GetHostName());
--
-- if (query.exec() && query.next())
-+ MSqlQuery query(MSqlQuery::InitCon());
-+ if (query.isConnected())
- {
-- keybind = query.value(0).toString();
-+ query.prepare("SELECT destination, keylist, description "
-+ "FROM jumppoints WHERE hostname = :HOSTNAME ;");
-+ query.bindValue(":HOSTNAME", GetMythDB()->GetHostName());
-+ if (query.exec())
-+ {
-+ QMutexLocker locker(&s_mutex);
-+ while (query.next())
-+ {
-+ val_t v(query.value(1).toString(), query.value(2).toString());
-+ s_cache.insert(query.value(0).toString(), v);
-+ }
-+ }
-+ else if (!GetMythDB()->SuppressDBMessages())
-+ MythDB::DBError("RegisterJump", query);
- }
-- else
-+ }
-+
-+ QString keybind = key;
-+ bool bFound = false;
-+ {
-+ QMutexLocker locker(&s_mutex);
-+ cache_t::const_iterator it = s_cache.find(destination);
-+ if (it != s_cache.end())
- {
-- QString inskey = keybind;
-+ keybind = it->first;
-+ bFound = true;
-+ }
-+ }
-
-- query.prepare("INSERT INTO jumppoints (destination, description, "
-- "keylist, hostname) VALUES ( :DEST, :DESC, :KEYLIST, "
-- ":HOST );");
-+ if (!bFound)
-+ {
-+ MSqlQuery query(MSqlQuery::InitCon());
-+ if (query.isConnected())
-+ {
-+ query.prepare("SELECT keylist FROM jumppoints WHERE "
-+ "destination = :DEST and hostname = :HOST ;");
- query.bindValue(":DEST", destination);
-- query.bindValue(":DESC", description);
-- query.bindValue(":KEYLIST", inskey);
- query.bindValue(":HOST", GetMythDB()->GetHostName());
-
-- if (!query.exec() || !query.isActive())
-+ if (query.exec() && query.next())
- {
-- MythDB::DBError("Insert Jump Point", query);
-+ keybind = query.value(0).toString();
-+ }
-+ else
-+ {
-+ QString inskey = keybind;
-+
-+ query.prepare("INSERT INTO jumppoints (destination, description, "
-+ "keylist, hostname) VALUES ( :DEST, :DESC, :KEYLIST, "
-+ ":HOST );");
-+ query.bindValue(":DEST", destination);
-+ query.bindValue(":DESC", description);
-+ query.bindValue(":KEYLIST", inskey);
-+ query.bindValue(":HOST", GetMythDB()->GetHostName());
-+
-+ if (!query.exec() || !query.isActive())
-+ {
-+ MythDB::DBError("Insert Jump Point", query);
-+ }
- }
- }
- }
---
-1.7.9.5
-
diff --git a/abs/core/mythtv/stable-29/mythtv/PKGBUILD b/abs/core/mythtv/stable-29/mythtv/PKGBUILD
index 070ca76..a850229 100644
--- a/abs/core/mythtv/stable-29/mythtv/PKGBUILD
+++ b/abs/core/mythtv/stable-29/mythtv/PKGBUILD
@@ -1,6 +1,6 @@
pkgname=mythtv
pkgver=29.1
-pkgrel=1
+pkgrel=9
commit_hash=`cat ../git_src/git_hash`
pkgdesc="A Homebrew PVR project $commit_hash"
arch=('x86_64')
@@ -33,18 +33,18 @@ patches=(
'defaultThemeLinHES.patch'
'addEnableDisableAutoShutdownToSystemMenu.patch'
'mythfrontend_en_us.ts_Title_Case.patch'
+ 'fixTranslations.patch'
'pull103-Add-heuristic-in-TMDB-script-to-detect-movie-release-years.patch'
'0006-cardutil_show_displayname.patch'
+ '0287-MythUiImage-Don-t-block-UI-when-exiting-screens.patch'
'0292-UPnP-Reduce-startup-latency-by-moving-blocking-code-to-own-thread.patch'
'0294-0283-FE-Add-network-status-to-machine-status-dialog.patch'
- '0287-MythUiImage-Don-t-block-UI-when-exiting-screens.patch'
- '0259-0117-UI-Provide-dbase-cache-for-RegisterKey-and-RegisterJ.patch'
)
optdepends=()
source=(`echo ${patches[@]:0}` 'recordings')
-build() {
+prepare() {
if [ -e ${srcdir}/mythtv ]
then
msg "Removing old mythtv src"
@@ -61,14 +61,20 @@ build() {
for i in `echo ${patches[@]:0}`
do
echo applying $i
- patch -Np2 -i ${startdir}/src/$i || return 1
+ patch -Np2 -i ${startdir}/src/$i || return 1
echo "-----------------------------"
done
msg "--------------------------done applying patches-------------------------"
+ msg "Change python to python2"
+ find 'bindings/python' 'contrib' 'programs/scripts' -type f | xargs sed -i 's@^#!.*python$@#!/usr/bin/python2@'
+
msg "Updating en_us Translation"
cd ${srcdir}/$pkgname/i18n
lrelease -removeidentical mythfrontend_en_us.ts
+}
+
+build() {
cd ${srcdir}/$pkgname
msg "Configuring mythtv"
@@ -132,11 +138,11 @@ md5sums=('fb5a87c52a31168a0c8fdde72f27cc45'
'6add9c16bbb988067e82029327e567b2'
'b0b238320fa78a4928dce2cea7c85071'
'8e4492d1777234a021f368bd6ee964ee'
- 'e7c148608832563b418ffaad5f8498eb'
+ 'f2cb8dc8c4bff42102563a9e80011e19'
+ 'a1c7fb6a3bd11b7b21f2ea8327a843e1'
'd05eaf66c434a131c8efb4d87e99b402'
'5f2bd4065b145b7b7ff09dfd6f08276c'
+ '3cccbab70c7615bc47e51790e024d5bf'
'1f0dbd44f8c1a89b86bb331086f58578'
'abaef221b00690b329f4dca18676bcd6'
- '3cccbab70c7615bc47e51790e024d5bf'
- '4b5f00a19006b915b7ee5ab7f861599a'
'633cd853a89aeee5388daaad21ccec28')
diff --git a/abs/core/mythtv/stable-29/mythtv/fixTranslations.patch b/abs/core/mythtv/stable-29/mythtv/fixTranslations.patch
new file mode 100644
index 0000000..b013470
--- /dev/null
+++ b/abs/core/mythtv/stable-29/mythtv/fixTranslations.patch
@@ -0,0 +1,91 @@
+diff --git a/mythtv/programs/mythfrontend/audiogeneralsettings.h b/mythtv/programs/mythfrontend/audiogeneralsettings.h
+index 79aa41dd8d..46421a84c2 100644
+--- a/mythtv/programs/mythfrontend/audiogeneralsettings.h
++++ b/mythtv/programs/mythfrontend/audiogeneralsettings.h
+@@ -19,6 +19,8 @@ class AudioTest;
+
+ class AudioConfigScreen : public StandardSettingDialog
+ {
++ Q_OBJECT
++
+ public:
+ AudioConfigScreen(MythScreenStack *parent, const char *name,
+ GroupSetting *groupSetting);
+diff --git a/mythtv/programs/mythfrontend/globalsettings.cpp b/mythtv/programs/mythfrontend/globalsettings.cpp
+index 4507619170..0618f9762b 100644
+--- a/mythtv/programs/mythfrontend/globalsettings.cpp
++++ b/mythtv/programs/mythfrontend/globalsettings.cpp
+@@ -3871,7 +3871,7 @@ class PlayBackScaling : public GroupSetting
+ PlayBackScaling::PlayBackScaling()
+ :GroupSetting()
+ {
+- setLabel(tr("Scaling"));
++ setLabel(PlaybackSettings::tr("Scaling"));
+ addChild(m_VertScan = VertScanPercentage());
+ addChild(m_YScan = YScanDisplacement());
+ addChild(m_HorizScan = HorizScanPercentage());
+@@ -3894,7 +3894,7 @@ void PlayBackScaling::updateButton(MythUIButtonListItem *item)
+ m_HorizScan->getValue() == "0" &&
+ m_YScan->getValue() == "0" &&
+ m_XScan->getValue() == "0")
+- item->SetText(tr("No scaling"),"value");
++ item->SetText(PlaybackSettings::tr("No scaling"),"value");
+ else
+ item->SetText(QString("%1%x%2%+%3%+%4%")
+ .arg(m_HorizScan->getValue())
+@@ -4364,7 +4364,7 @@ ChannelCheckBoxSetting::ChannelCheckBoxSetting(uint chanid,
+ m_channelId(chanid)
+ {
+ setLabel(QString("%1 %2").arg(channum).arg(channame));
+- setHelpText(tr("Select/Unselect channels for this channel group"));
++ setHelpText(ChannelGroupSettings::tr("Select/Unselect channels for this channel group"));
+ }
+
+ ChannelGroupSetting::ChannelGroupSetting(const QString &groupName,
+diff --git a/mythtv/programs/mythfrontend/globalsettings.h b/mythtv/programs/mythfrontend/globalsettings.h
+index e069ec1cfb..8c1de7a02e 100644
+--- a/mythtv/programs/mythfrontend/globalsettings.h
++++ b/mythtv/programs/mythfrontend/globalsettings.h
+@@ -259,6 +259,8 @@ class PlaybackProfileConfig : public GroupSetting
+
+ class ChannelGroupSetting : public GroupSetting
+ {
++ Q_OBJECT
++
+ public:
+ ChannelGroupSetting(const QString &groupName, int groupId);
+ virtual void Load();
+diff --git a/mythtv/programs/mythtv-setup/backendsettings.cpp b/mythtv/programs/mythtv-setup/backendsettings.cpp
+index 6de0bae49d..bf24cc4f1a 100644
+--- a/mythtv/programs/mythtv-setup/backendsettings.cpp
++++ b/mythtv/programs/mythtv-setup/backendsettings.cpp
+@@ -126,11 +126,12 @@ class IpAddressSettings : public HostCheckBoxSetting
+ explicit IpAddressSettings(/*Setting* trigger*/) :
+ HostCheckBoxSetting("ListenOnAllIps")
+ {
+- setLabel(QObject::tr("Listen on All IP Addresses"));
++ setLabel(BackendSettings::tr("Listen on All IP Addresses"));
+ setValue(true);
+- setHelpText(tr("Allow this backend to receive connections on any IP "
+- "Address assigned to it. Recommended for most users "
+- "for ease and reliability."));
++ setHelpText(BackendSettings::tr("Allow this backend to receive "
++ "connections on any IP Address assigned to it. "
++ "Recommended for most users for ease and "
++ "reliability."));
+
+ localServerIP = LocalServerIP();
+ localServerIP6 = LocalServerIP6();
+diff --git a/mythtv/i18n/translate.pro b/mythtv/i18n/translate.pro
+index 210d9907f1..d51ec37ee5 100644
+--- a/mythtv/i18n/translate.pro
++++ b/mythtv/i18n/translate.pro
+@@ -10,6 +10,8 @@ SOURCES += ../libs/libmyth/audio/*.cpp
+ SOURCES += ../libs/libmyth/audio/*.h
+ SOURCES += ../libs/libmythmetadata/*.cpp
+ SOURCES += ../libs/libmythmetadata/*.h
++SOURCES += ../libs/libmythservicecontracts/enums/*.cpp
++SOURCES += ../libs/libmythservicecontracts/enums/*.h
+ SOURCES += ../libs/libmythtv/*.cpp
+ SOURCES += ../libs/libmythtv/*.h
+ SOURCES += ../libs/libmythtv/AirPlay/*.cpp
diff --git a/abs/core/mythtv/stable-29/mythtv/mythfrontend_en_us.ts_Title_Case.patch b/abs/core/mythtv/stable-29/mythtv/mythfrontend_en_us.ts_Title_Case.patch
index c4ce70a..59024b7 100644
--- a/abs/core/mythtv/stable-29/mythtv/mythfrontend_en_us.ts_Title_Case.patch
+++ b/abs/core/mythtv/stable-29/mythtv/mythfrontend_en_us.ts_Title_Case.patch
@@ -1,5 +1,5 @@
---- src/mythtv/i18n/mythfrontend_en_us.ts.orig 2018-01-25 13:58:55.277053891 +0000
-+++ src/mythtv/i18n/mythfrontend_en_us.ts 2018-01-25 13:58:44.968390548 +0000
+--- src/mythtv/i18n/mythfrontend_en_us.ts.orig 2018-05-23 18:35:11.221352872 +0000
++++ src/mythtv/i18n/mythfrontend_en_us.ts 2018-06-19 04:42:01.650264282 +0000
@@ -573,7 +573,7 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="400"/>
@@ -75,7 +75,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="492"/>
-@@ -715,32 +715,31 @@
+@@ -715,32 +715,32 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="494"/>
<source>Holiday-children</source>
@@ -83,11 +83,10 @@
+ <translation>Holiday-Children</translation>
</message>
<message>
-- <location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="496"/>
-- <source>Holiday-children special</source>
+ <location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="496"/>
+ <source>Holiday-children special</source>
- <translation>Holiday-children special</translation>
-+ <source>Holiday-Children Special</source>
-+ <translation type="vanished">Holiday-Children Special</translation>
++ <translation>Holiday-Children Special</translation>
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="498"/>
@@ -115,7 +114,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="510"/>
-@@ -765,12 +764,12 @@
+@@ -765,12 +765,12 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="524"/>
<source>Music special</source>
@@ -130,19 +129,8 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="528"/>
-@@ -778,9 +777,18 @@
- <translation>Musical</translation>
- </message>
+@@ -780,7 +780,7 @@
<message>
-+ <source>Musical Comedy</source>
-+ <translation type="vanished">Musical comedy</translation>
-+ </message>
-+ <message>
-+ <location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="496"/>
-+ <source>Holiday-children special</source>
-+ <translation>Holiday-Chidren Special</translation>
-+ </message>
-+ <message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="530"/>
<source>Musical comedy</source>
- <translation>Musical comedy</translation>
@@ -150,7 +138,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="538"/>
-@@ -795,7 +803,7 @@
+@@ -795,7 +795,7 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="542"/>
<source>Public affairs</source>
@@ -159,7 +147,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="544"/>
-@@ -810,7 +818,7 @@
+@@ -810,7 +810,7 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="552"/>
<source>Romance-comedy</source>
@@ -168,7 +156,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="554"/>
-@@ -825,12 +833,12 @@
+@@ -825,12 +825,12 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="560"/>
<source>Science fiction</source>
@@ -183,7 +171,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="566"/>
-@@ -860,12 +868,12 @@
+@@ -860,12 +860,12 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="578"/>
<source>Sports non-event</source>
@@ -198,7 +186,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="584"/>
-@@ -875,7 +883,7 @@
+@@ -875,7 +875,7 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="590"/>
<source>Track/field</source>
@@ -207,7 +195,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="596"/>
-@@ -920,7 +928,7 @@
+@@ -920,7 +920,7 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="616"/>
<source>Arts/crafts</source>
@@ -216,7 +204,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="618"/>
-@@ -930,12 +938,12 @@
+@@ -930,12 +930,12 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="620"/>
<source>Auto racing</source>
@@ -231,7 +219,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="624"/>
-@@ -945,7 +953,7 @@
+@@ -945,7 +945,7 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="626"/>
<source>Bicycle racing</source>
@@ -240,7 +228,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="628"/>
-@@ -965,12 +973,12 @@
+@@ -965,12 +965,12 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="636"/>
<source>Dog show</source>
@@ -255,7 +243,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="642"/>
-@@ -986,12 +994,12 @@
+@@ -986,12 +986,12 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="646"/>
<source>Field hockey</source>
@@ -270,7 +258,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="652"/>
-@@ -1001,7 +1009,7 @@
+@@ -1001,7 +1001,7 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="654"/>
<source>Home improvement</source>
@@ -279,7 +267,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="656"/>
-@@ -1011,7 +1019,7 @@
+@@ -1011,7 +1011,7 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="658"/>
<source>Hydroplane racing</source>
@@ -288,7 +276,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="660"/>
-@@ -1021,7 +1029,7 @@
+@@ -1021,7 +1021,7 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="662"/>
<source>Motorcycle racing</source>
@@ -297,7 +285,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="664"/>
-@@ -1047,7 +1055,7 @@
+@@ -1047,7 +1047,7 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="674"/>
<source>Pro wrestling</source>
@@ -306,7 +294,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="676"/>
-@@ -1092,7 +1100,7 @@
+@@ -1092,7 +1092,7 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="694"/>
<source>Card games</source>
@@ -315,7 +303,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="696"/>
-@@ -1107,12 +1115,12 @@
+@@ -1107,12 +1107,12 @@
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="702"/>
<source>Mixed martial arts</source>
@@ -330,7 +318,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dishdescriptors.cpp" line="706"/>
-@@ -1144,7 +1152,7 @@
+@@ -1144,7 +1144,7 @@
<message>
<location filename="../libs/libmythtv/mpeg/dvbdescriptors.cpp" line="326"/>
<source>Soap/melodrama/folkloric</source>
@@ -339,7 +327,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dvbdescriptors.cpp" line="333"/>
-@@ -1160,12 +1168,12 @@
+@@ -1160,12 +1160,12 @@
<message>
<location filename="../libs/libmythtv/mpeg/dvbdescriptors.cpp" line="341"/>
<source>News/weather report</source>
@@ -354,7 +342,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dvbdescriptors.cpp" line="347"/>
-@@ -1380,7 +1388,7 @@
+@@ -1380,7 +1380,7 @@
<message>
<location filename="../libs/libmythtv/mpeg/dvbdescriptors.cpp" line="447"/>
<source>Nature/animals/Environment</source>
@@ -363,7 +351,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dvbdescriptors.cpp" line="449"/>
-@@ -1440,7 +1448,7 @@
+@@ -1440,7 +1440,7 @@
<message>
<location filename="../libs/libmythtv/mpeg/dvbdescriptors.cpp" line="473"/>
<source>Advertizement/Shopping</source>
@@ -372,7 +360,7 @@
</message>
<message>
<location filename="../libs/libmythtv/mpeg/dvbdescriptors.cpp" line="475"/>
-@@ -1471,124 +1479,132 @@
+@@ -1471,124 +1471,132 @@
<context>
<name>(ChannelSettings)</name>
<message>
@@ -537,7 +525,7 @@
</message>
<message>
<location filename="../libs/libmythtv/channelsettings.cpp" line="417"/>
-@@ -1601,22 +1617,22 @@
+@@ -1601,22 +1609,22 @@
<translation>Value to be added to your desired frequency (in kHz) for &apos;fine tuning&apos;.</translation>
</message>
<message>
@@ -564,7 +552,7 @@
<source>Channel Options - Raw Transport Stream</source>
<translation>Channel Options - Raw Transport Stream</translation>
</message>
-@@ -1624,39 +1640,37 @@
+@@ -1624,39 +1632,37 @@
<context>
<name>(Common)</name>
<message>
@@ -617,7 +605,7 @@
<source>Cancel</source>
<translation>Cancel</translation>
</message>
-@@ -1699,7 +1713,7 @@
+@@ -1699,7 +1705,7 @@
<message numerus="yes">
<location filename="../libs/libmythmetadata/metadatacommon.cpp" line="481"/>
<location filename="../libs/libmythmetadata/metadatacommon.cpp" line="493"/>
@@ -626,7 +614,7 @@
<source>%n second(s)</source>
<translation>
<numerusform>%n second</numerusform>
-@@ -1724,31 +1738,29 @@
+@@ -1724,31 +1730,29 @@
<translation>No</translation>
</message>
<message>
@@ -665,7 +653,7 @@
<source>Channel Name</source>
<translation>Channel Name</translation>
</message>
-@@ -1758,51 +1770,56 @@
+@@ -1758,65 +1762,70 @@
<translation>Channel Number</translation>
</message>
<message>
@@ -726,14 +714,32 @@
<translation>Hue</translation>
</message>
<message>
- <location filename="../libs/libmythtv/recorders/dvbsignalmonitor.cpp" line="51"/>
+- <location filename="../libs/libmythtv/recorders/dvbsignalmonitor.cpp" line="51"/>
++ <location filename="../libs/libmythtv/recorders/dvbsignalmonitor.cpp" line="52"/>
<source>Signal To Noise</source>
- <translation>Signal To Noise</translation>
+ <translation>Signal to Noise</translation>
</message>
<message>
- <location filename="../libs/libmythtv/recorders/signalmonitor.cpp" line="222"/>
-@@ -1842,81 +1859,75 @@
+- <location filename="../libs/libmythtv/recorders/signalmonitor.cpp" line="222"/>
++ <location filename="../libs/libmythtv/recorders/signalmonitor.cpp" line="235"/>
+ <location filename="../libs/libmythtv/signalmonitorvalue.cpp" line="28"/>
+ <source>Signal Lock</source>
+ <translation>Signal Lock</translation>
+ </message>
+ <message>
+- <location filename="../libs/libmythtv/recorders/signalmonitor.cpp" line="224"/>
++ <location filename="../libs/libmythtv/recorders/signalmonitor.cpp" line="237"/>
+ <source>Signal Power</source>
+ <translation>Signal Power</translation>
+ </message>
+ <message>
+- <location filename="../libs/libmythtv/recorders/signalmonitor.cpp" line="226"/>
++ <location filename="../libs/libmythtv/recorders/signalmonitor.cpp" line="239"/>
+ <source>Script Status</source>
+ <translation>Script Status</translation>
+ </message>
+@@ -1842,81 +1851,75 @@
<translation>MythTV</translation>
</message>
<message>
@@ -831,7 +837,7 @@
<source>There are no configured tuners.</source>
<translation>There are no configured tuners.</translation>
</message>
-@@ -2061,7 +2072,7 @@
+@@ -2061,7 +2064,7 @@
<message>
<location filename="../libs/libmythtv/channelscan/modulationsetting.h" line="56"/>
<location filename="../libs/libmythtv/channelscan/modulationsetting.h" line="89"/>
@@ -840,7 +846,7 @@
<source>Modulation</source>
<translation>Modulation</translation>
</message>
-@@ -2076,17 +2087,17 @@
+@@ -2076,17 +2079,17 @@
<translation>Modulation (Default: Auto)</translation>
</message>
<message>
@@ -861,7 +867,7 @@
<source>Modulation, QPSK, 8PSK, QAM-16. Most DVB-S transponders use QPSK, while DVB-S2 use 8PSK. QAM-16 is not available for DVB-S2 transports.</source>
<translation>Modulation, QPSK, 8PSK, QAM-16. Most DVB-S transponders use QPSK, while DVB-S2 use 8PSK. QAM-16 is not available for DVB-S2 transports.</translation>
</message>
-@@ -2094,32 +2105,32 @@
+@@ -2094,32 +2097,32 @@
<context>
<name>(MythFrontendMain)</name>
<message>
@@ -902,7 +908,7 @@
<source>MythTV Frontend</source>
<comment>Main window title</comment>
<translation>MythTV Frontend</translation>
-@@ -2180,7 +2191,7 @@
+@@ -2180,7 +2183,7 @@
<message>
<location filename="../libs/libmythbase/storagegroup.cpp" line="35"/>
<source>MusicArt</source>
@@ -911,7 +917,7 @@
</message>
</context>
<context>
-@@ -2215,48 +2226,48 @@
+@@ -2215,48 +2218,48 @@
<context>
<name>(mythcommflag)</name>
<message>
@@ -976,7 +982,7 @@
</message>
<message>
<location filename="../programs/mythcommflag/main.cpp" line="420"/>
-@@ -2274,7 +2285,7 @@
+@@ -2274,7 +2277,7 @@
<location filename="../programs/mythcommflag/main.cpp" line="1211"/>
<source>Failed with exit status %1</source>
<comment>Job status</comment>
@@ -985,7 +991,7 @@
</message>
<message numerus="yes">
<location filename="../programs/mythcommflag/main.cpp" line="1217"/>
-@@ -2282,347 +2293,357 @@
+@@ -2282,347 +2285,357 @@
<source>%n commercial break(s)</source>
<comment>Job status</comment>
<translation>
@@ -1000,13 +1006,13 @@
<name>ASIConfigurationGroup</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1963"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1978"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1981"/>
<source>Not a valid DVEO ASI card</source>
<translation>Not a valid DVEO ASI card</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1968"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1983"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1986"/>
<source>Valid DVEO ASI card</source>
- <translation>Valid DVEO ASI card</translation>
+ <translation>Valid DVEO ASI Card</translation>
@@ -1446,7 +1452,7 @@
<source>Localization</source>
<translation>Localization</translation>
</message>
-@@ -2630,350 +2651,491 @@
+@@ -2630,350 +2643,491 @@
<context>
<name>AudioAdvancedSettings</name>
<message>
@@ -1738,7 +1744,8 @@
- <location filename="../programs/mythfrontend/audiogeneralsettings.cpp" line="510"/>
+ <location filename="../programs/mythfrontend/audiogeneralsettings.cpp" line="484"/>
<source>Enable if your amplifier or sound decoder supports DTS. You must use a digital connection. Uncheck if using an analog connection</source>
- <translation>Enable if your amplifier or sound decoder supports DTS. You must use a digital connection. Uncheck if using an analog connection</translation>
+- <translation>Enable if your amplifier or sound decoder supports DTS. You must use a digital connection. Uncheck if using an analog connection</translation>
++ <translation>Enable if your amplifier or sound decoder supports DTS. You must use a digital connection. Uncheck if using an analog connection.</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/audiogeneralsettings.cpp" line="520"/>
@@ -2048,7 +2055,7 @@
</message>
</context>
<context>
-@@ -2981,29 +3143,29 @@
+@@ -2981,29 +3135,29 @@
<message>
<location filename="../libs/libmyth/audio/audiooutput.cpp" line="325"/>
<source>Invalid or unuseable audio device</source>
@@ -2083,7 +2090,7 @@
</message>
<message>
<location filename="../libs/libmyth/audio/audiooutput.cpp" line="476"/>
-@@ -3013,7 +3175,7 @@
+@@ -3013,7 +3167,7 @@
<message>
<location filename="../libs/libmyth/audio/audiooutput.cpp" line="507"/>
<source>CoreAudio default output</source>
@@ -2092,34 +2099,34 @@
</message>
<message>
<location filename="../libs/libmyth/audio/audiooutput.cpp" line="556"/>
-@@ -3072,22 +3234,22 @@
+@@ -3072,22 +3226,22 @@
<message>
<location filename="../libs/libmyth/audio/audiooutputjack.cpp" line="181"/>
<source>Error while registering new jack port: %1</source>
- <translation>Error while registering new jack port: %1</translation>
-+ <translation>ERROR: While registering new jack port: %1</translation>
++ <translation>ERROR: Registering new jack port: %1</translation>
</message>
<message>
<location filename="../libs/libmyth/audio/audiooutputjack.cpp" line="202"/>
<source>Error. Unable to set process callback?!</source>
- <translation>Error. Unable to set process callback?!</translation>
-+ <translation>ERROR: Unable to set process callback?!</translation>
++ <translation>ERROR: Unable to set process callback!</translation>
</message>
<message>
<location filename="../libs/libmyth/audio/audiooutputjack.cpp" line="204"/>
<source>Error. Unable to set xrun callback?!</source>
- <translation>Error. Unable to set xrun callback?!</translation>
-+ <translation>ERROR: Unable to set xrun callback?!</translation>
++ <translation>ERROR: Unable to set xrun callback!</translation>
</message>
<message>
<location filename="../libs/libmyth/audio/audiooutputjack.cpp" line="206"/>
<source>Error. Unable to set graph order change callback?!</source>
- <translation>Error. Unable to set graph order change callback?!</translation>
-+ <translation>ERROR: Unable to set graph order change callback?!</translation>
++ <translation>ERROR: Unable to set graph order change callback!</translation>
</message>
<message>
<location filename="../libs/libmyth/audio/audiooutputjack.cpp" line="211"/>
-@@ -3103,7 +3265,7 @@
+@@ -3103,7 +3257,7 @@
<message>
<location filename="../libs/libmyth/audio/audiooutputjack.cpp" line="634"/>
<source>Error closing Jack output device. Error: %1</source>
@@ -2128,7 +2135,7 @@
</message>
</context>
<context>
-@@ -3129,7 +3291,7 @@
+@@ -3129,7 +3283,7 @@
<message>
<location filename="../programs/mythfrontend/setupwizard_audio.cpp" line="94"/>
<source>Select from one of the audio devices detected on your system. When satisfied, you can test audio before moving on. If you fail to configure audio, video playback may fail as well.</source>
@@ -2137,7 +2144,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/setupwizard_audio.cpp" line="99"/>
-@@ -3139,27 +3301,27 @@
+@@ -3139,27 +3293,27 @@
<message>
<location filename="../programs/mythfrontend/setupwizard_audio.cpp" line="103"/>
<source>Select this checkbox if your receiver is capable of playing DTS.</source>
@@ -2170,7 +2177,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/setupwizard_audio.cpp" line="115"/>
-@@ -3185,10 +3347,10 @@
+@@ -3185,10 +3339,10 @@
<message>
<location filename="../programs/mythfrontend/setupwizard_audio.cpp" line="128"/>
<source>Discovering audio devices...</source>
@@ -2183,7 +2190,7 @@
<source>Stop Speaker Test</source>
<translation>Stop Speaker Test</translation>
</message>
-@@ -3196,88 +3358,130 @@
+@@ -3196,88 +3350,130 @@
<context>
<name>AudioTest</name>
<message>
@@ -2337,7 +2344,7 @@
<source>Audio device is invalid or not useable.</source>
<translation>Audio device is invalid or not useable.</translation>
</message>
-@@ -3285,7 +3489,7 @@
+@@ -3285,7 +3481,7 @@
<context>
<name>AudioTestThread</name>
<message>
@@ -2346,7 +2353,7 @@
<source>Unable to create AudioOutput.</source>
<translation>Unable to create AudioOutput.</translation>
</message>
-@@ -3293,7 +3497,7 @@
+@@ -3293,7 +3489,7 @@
<context>
<name>BDInfo</name>
<message>
@@ -2355,7 +2362,7 @@
<source>Could not open Blu-ray device: %1</source>
<translation>Could not open Blu-ray device: %1</translation>
</message>
-@@ -3301,29 +3505,29 @@
+@@ -3301,29 +3497,29 @@
<context>
<name>BDRingBuffer</name>
<message>
@@ -2394,34 +2401,41 @@
</message>
</context>
<context>
-@@ -3336,159 +3540,162 @@
+@@ -3336,159 +3532,172 @@
<message>
<location filename="../libs/libmyth/backendselect.cpp" line="358"/>
<source>Please enter the backend access PIN</source>
- <translation>Please enter the backend access PIN</translation>
+ <translation>Please enter the backend access PIN:</translation>
++ </message>
++</context>
++<context>
++ <name>BackendSettings</name>
++ <message>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="129"/>
++ <source>Listen on All IP Addresses</source>
++ <translation>Listen on All IP Addresses</translation>
++ </message>
++ <message>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="131"/>
++ <source>Allow this backend to receive connections on any IP Address assigned to it. Recommended for most users for ease and reliability.</source>
++ <translation>Allow this backend to receive connections on any IP Address assigned to it. Recommended for most users for ease and reliability.</translation>
++ </message>
++ <message>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="884"/>
++ <source>Host Address Backend Setup</source>
++ <translation>Host Address Backend Setup</translation>
</message>
</context>
<context>
-- <name>BookmarkDialog</name>
-+ <name>BackendSettings</name>
+ <name>BookmarkDialog</name>
<message>
- <location filename="../programs/mythfrontend/main.cpp" line="205"/>
-- <source>DVD/Video contains a bookmark</source>
-- <translation>DVD/Video contains a bookmark</translation>
-- </message>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="883"/>
-+ <source>Host Address Backend Setup</source>
-+ <translation>Host Address Backend Setup</translation>
-+ </message>
-+</context>
-+<context>
-+ <name>BookmarkDialog</name>
-+ <message>
+ <location filename="../programs/mythfrontend/main.cpp" line="213"/>
-+ <source>DVD/Video contains a bookmark</source>
+ <source>DVD/Video contains a bookmark</source>
+- <translation>DVD/Video contains a bookmark</translation>
+ <translation>DVD/Video Contains a Bookmark</translation>
-+ </message>
+ </message>
<message>
- <location filename="../programs/mythfrontend/main.cpp" line="206"/>
+ <location filename="../programs/mythfrontend/main.cpp" line="214"/>
@@ -2441,19 +2455,20 @@
<name>CaptureCardEditor</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3752"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3741"/>
+- <source>Capture cards</source>
+- <translation>Capture cards</translation>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3751"/>
+ <source>New capture card</source>
+ <translation>New Capture Card</translation>
+ </message>
+ <message>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3773"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3783"/>
+ <source>Error getting list of cards for this host. Unable to delete capturecards for %1</source>
+ <translation>Error getting list of cards for this host. Unable to delete capture cards for %1.</translation>
+ </message>
+ <message>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3790"/>
- <source>Capture cards</source>
-- <translation>Capture cards</translation>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3800"/>
++ <source>Capture cards</source>
+ <translation>Capture Cards</translation>
</message>
<message>
@@ -2476,7 +2491,7 @@
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3815"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3721"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3731"/>
<source>Are you sure you want to delete ALL capture cards on %1?</source>
<translation>Are you sure you want to delete ALL capture cards on %1?</translation>
</message>
@@ -2509,7 +2524,7 @@
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3850"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3731"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3741"/>
<source>Are you sure you want to delete ALL capture cards?</source>
<translation>Are you sure you want to delete ALL capture cards?</translation>
</message>
@@ -2530,33 +2545,33 @@
<name>CardInput</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3456"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3346"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3356"/>
<source>Scan for channels</source>
- <translation>Scan for channels</translation>
+ <translation>Scan for Channels</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3458"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3380"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3390"/>
<source>Use channel scanner to find channels for this input.</source>
<translation>Use channel scanner to find channels for this input.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3460"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3347"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3357"/>
<source>Fetch channels from listings source</source>
- <translation>Fetch channels from listings source</translation>
+ <translation>Fetch Channels from Listings Source</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3462"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3383"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3393"/>
<source>This uses the listings data source to provide the channels for this input.</source>
<translation>This uses the listings data source to provide the channels for this input.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3464"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3385"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3395"/>
<source>This can take a long time to run.</source>
<translation>This can take a long time to run.</translation>
</message>
@@ -2568,7 +2583,7 @@
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3546"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3473"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3483"/>
<source>Enter new group name</source>
- <translation>Enter new group name</translation>
+ <translation>Enter group name:</translation>
@@ -2582,14 +2597,14 @@
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3555"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3489"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3499"/>
<source>Sorry, this Input Group name cannot be blank.</source>
- <translation>Sorry, this Input Group name cannot be blank.</translation>
+ <translation>Sorry, the name cannot be blank.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3578"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3509"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3519"/>
<source>Sorry, this Input Group name is already in use.</source>
- <translation>Sorry, this Input Group name is already in use.</translation>
+ <translation>Sorry, this name is already in use.</translation>
@@ -2599,7 +2614,7 @@
<name>CardInputEditor</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3987"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3858"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3868"/>
<source>Input connections</source>
- <translation>Input connections</translation>
+ <translation>Input Connections</translation>
@@ -2609,22 +2624,22 @@
<name>CetonConfigurationGroup</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2426"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2381"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2384"/>
<source>Description</source>
<translation>Description</translation>
</message>
-@@ -3496,141 +3703,147 @@
+@@ -3496,141 +3705,146 @@
<context>
<name>CetonDeviceID</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2377"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2338"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2341"/>
<source>Device ID</source>
<translation>Device ID</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2378"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2339"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2342"/>
<source>Device ID of Ceton device</source>
- <translation>Device ID of Ceton device</translation>
+ <translation>Device ID of Ceton Tuner</translation>
@@ -2649,10 +2664,9 @@
+ <name>ChannelCheckBoxSetting</name>
<message>
- <location filename="../libs/libmythtv/channelgroupsettings.cpp" line="92"/>
-+ <location filename="../programs/mythfrontend/globalsettings.cpp" line="4367"/>
<source>Select/Unselect channels for this channel group</source>
- <translation>Select/Unselect channels for this channel group</translation>
-+ <translation>Select/Unselect Channels for this Channel Group</translation>
++ <translation type="vanished">Select channels for this channel group.</translation>
</message>
</context>
<context>
@@ -2802,7 +2816,7 @@
</message>
</context>
<context>
-@@ -3644,87 +3857,105 @@
+@@ -3644,87 +3858,110 @@
<context>
<name>ChannelGroupConfig</name>
<message>
@@ -2901,6 +2915,11 @@
- <translation>Default channel group to be shown in the EPG. Pressing GUIDE key will toggle channel group.</translation>
+ <translation>Default channel group to be shown in the EPG. Pressing GUIDE key will toggle channel group.</translation>
+ </message>
++ <message>
++ <location filename="../programs/mythfrontend/globalsettings.cpp" line="4367"/>
++ <source>Select/Unselect channels for this channel group</source>
++ <translation>Select channels for this channel group.</translation>
++ </message>
+</context>
+<context>
+ <name>ChannelGroupsSetting</name>
@@ -2939,7 +2958,7 @@
<source>Channel Importer</source>
<translation>Channel Importer</translation>
</message>
-@@ -3732,8 +3963,8 @@
+@@ -3732,8 +3969,8 @@
<location filename="../libs/libmythtv/channelscan/channelimporter.cpp" line="49"/>
<source>Found %n channel(s)</source>
<translation>
@@ -2950,7 +2969,7 @@
</translation>
</message>
<message>
-@@ -3800,7 +4031,7 @@
+@@ -3800,7 +4037,7 @@
</translation>
</message>
<message numerus="yes">
@@ -2959,7 +2978,7 @@
<source>Found %n transport(s):
</source>
<extracomment>%n is the number of transports</extracomment>
-@@ -3812,148 +4043,159 @@
+@@ -3812,148 +4049,159 @@
</translation>
</message>
<message>
@@ -3171,7 +3190,7 @@
<source>Please enter a non-conflicting channel number (or type &apos;%1&apos; to skip, &apos;%2&apos; to skip all): </source>
<extracomment>%1 is the translation of &quot;cancel&quot;, %2 of &quot;cancel all&quot;</extracomment>
<translation>Please enter a non-conflicting channel number (or type &apos;%1&apos; to skip, &apos;%2&apos; to skip all): </translation>
-@@ -3978,32 +4220,32 @@
+@@ -3978,32 +4226,32 @@
<location filename="../libs/libmythtv/channelscan/channelscanner.cpp" line="192"/>
<location filename="../libs/libmythtv/channelscan/channelscanner.cpp" line="225"/>
<source>Error tuning to transport</source>
@@ -3210,7 +3229,7 @@
</message>
<message>
<location filename="../libs/libmythtv/channelscan/channelscanner.cpp" line="375"/>
-@@ -4013,7 +4255,7 @@
+@@ -4013,7 +4261,7 @@
<message>
<location filename="../libs/libmythtv/channelscan/channelscanner.cpp" line="454"/>
<source>Programmer Error: Channel not created</source>
@@ -3219,7 +3238,7 @@
</message>
<message>
<location filename="../libs/libmythtv/channelscan/channelscanner.cpp" line="465"/>
-@@ -4024,72 +4266,80 @@
+@@ -4024,72 +4272,80 @@
<context>
<name>ChannelScannerGUI</name>
<message>
@@ -3323,7 +3342,7 @@
</message>
</context>
<context>
-@@ -4104,7 +4354,7 @@
+@@ -4104,7 +4360,7 @@
<context>
<name>ChannelWizard</name>
<message>
@@ -3332,7 +3351,7 @@
<source>Channel Options</source>
<translation>Channel Options</translation>
</message>
-@@ -4116,7 +4366,7 @@
+@@ -4116,7 +4372,7 @@
<location filename="../libs/libmythtv/commbreakmap.cpp" line="368"/>
<source>Skip %1</source>
<extracomment>%1 is the skip time</extracomment>
@@ -3341,7 +3360,7 @@
</message>
<message>
<location filename="../libs/libmythtv/commbreakmap.cpp" line="241"/>
-@@ -4127,19 +4377,19 @@
+@@ -4127,19 +4383,19 @@
<message>
<location filename="../libs/libmythtv/commbreakmap.cpp" line="272"/>
<source>Skipping Back.</source>
@@ -3364,7 +3383,7 @@
</message>
<message>
<location filename="../libs/libmythtv/commbreakmap.cpp" line="362"/>
-@@ -4163,124 +4413,124 @@
+@@ -4163,124 +4419,124 @@
<message>
<location filename="../programs/mythfrontend/customedit.cpp" line="129"/>
<source>&lt;New rule&gt;</source>
@@ -3513,7 +3532,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/customedit.cpp" line="783"/>
-@@ -4290,82 +4540,82 @@
+@@ -4290,82 +4546,82 @@
<message>
<location filename="../programs/mythfrontend/customedit.cpp" line="787"/>
<source>Power Search rules cannot include semicolon ( ; ) </source>
@@ -3612,41 +3631,41 @@
</message>
<message>
<location filename="../programs/mythfrontend/customedit.cpp" line="507"/>
-@@ -4375,7 +4625,7 @@
+@@ -4375,7 +4631,7 @@
<message>
<location filename="../programs/mythfrontend/customedit.cpp" line="517"/>
<source>Multiple sports teams (complete example)</source>
- <translation>Multiple sports teams (complete example)</translation>
-+ <translation>MultipleSports Teams (complete example)</translation>
++ <translation>Multiple Sports Teams (complete example)</translation>
</message>
<message>
<location filename="../programs/mythfrontend/customedit.cpp" line="525"/>
-@@ -4590,29 +4840,28 @@
+@@ -4590,52 +4846,51 @@
<context>
<name>DVBConfigurationGroup</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="4124"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3976"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3986"/>
<source>Could not open card %1</source>
- <translation>Could not open card %1</translation>
+ <translation>Could Not Open Card %1</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="4125"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3977"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3987"/>
<source>Could not get card info for card %1</source>
- <translation>Could not get card info for card %1</translation>
+ <translation>Could Not Get Card Info for %1</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="4330"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="4149"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="4159"/>
<source>DiSEqC (Switch, LNB, and Rotor Configuration)</source>
<translation>DiSEqC (Switch, LNB, and Rotor Configuration)</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="4331"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="4150"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="4160"/>
<source>Input and satellite settings.</source>
<translation>Input and satellite settings.</translation>
</message>
@@ -3658,16 +3677,35 @@
</message>
</context>
<context>
-@@ -4635,7 +4884,7 @@
+ <name>DVBSignalMonitor</name>
+ <message>
+- <location filename="../libs/libmythtv/recorders/dvbsignalmonitor.cpp" line="54"/>
++ <location filename="../libs/libmythtv/recorders/dvbsignalmonitor.cpp" line="55"/>
+ <source>Bit Error Rate</source>
+ <translation>Bit Error Rate</translation>
+ </message>
<message>
- <location filename="../libs/libmythtv/recorders/dvbsignalmonitor.cpp" line="224"/>
+- <location filename="../libs/libmythtv/recorders/dvbsignalmonitor.cpp" line="56"/>
++ <location filename="../libs/libmythtv/recorders/dvbsignalmonitor.cpp" line="57"/>
+ <source>Uncorrected Blocks</source>
+ <translation>Uncorrected Blocks</translation>
+ </message>
+ <message>
+- <location filename="../libs/libmythtv/recorders/dvbsignalmonitor.cpp" line="58"/>
++ <location filename="../libs/libmythtv/recorders/dvbsignalmonitor.cpp" line="59"/>
+ <source>Rotor Progress</source>
+ <translation>Rotor Progress</translation>
+ </message>
+ <message>
+- <location filename="../libs/libmythtv/recorders/dvbsignalmonitor.cpp" line="224"/>
++ <location filename="../libs/libmythtv/recorders/dvbsignalmonitor.cpp" line="225"/>
<source>Error: stream handler died</source>
- <translation>Error: stream handler died</translation>
+ <translation>Error: Stream Handler Died</translation>
</message>
</context>
<context>
-@@ -4643,7 +4892,7 @@
+@@ -4643,7 +4898,7 @@
<message>
<location filename="../libs/libmythtv/DVD/dvdringbuffer.cpp" line="63"/>
<source>Failed to open device at %1</source>
@@ -3676,7 +3714,7 @@
</message>
</context>
<context>
-@@ -4651,227 +4900,238 @@
+@@ -4651,227 +4906,238 @@
<message>
<location filename="../libs/libmythtv/DVD/dvdringbuffer.cpp" line="474"/>
<source>Title %1 chapter %2</source>
@@ -3709,12 +3747,12 @@
+ <message>
+ <location filename="../libs/libmythtv/videosource.cpp" line="532"/>
+ <source>Fetching of lineups failed</source>
-+ <translation>Fetching of Lineups Failed</translation>
++ <translation>Fetching Lineups Failed</translation>
+ </message>
+ <message>
+ <location filename="../libs/libmythtv/videosource.cpp" line="546"/>
+ <source>Fetching of lineups complete</source>
-+ <translation>Fetching of Lineups Complete</translation>
++ <translation>Fetching Lineups Complete</translation>
</message>
</context>
<context>
@@ -3988,7 +4026,7 @@
</message>
</context>
<context>
-@@ -4879,12 +5139,12 @@
+@@ -4879,12 +5145,12 @@
<message>
<location filename="../libs/libmythtv/deletemap.cpp" line="82"/>
<source>(Nothing to undo)</source>
@@ -4003,7 +4041,7 @@
</message>
<message>
<location filename="../libs/libmythtv/deletemap.cpp" line="99"/>
-@@ -4903,7 +5163,7 @@
+@@ -4903,7 +5169,7 @@
</message>
<message>
<location filename="../libs/libmythtv/deletemap.cpp" line="124"/>
@@ -4012,7 +4050,7 @@
<source>Delete</source>
<extracomment>Delete the current cut or preserved region</extracomment>
<translation>Delete</translation>
-@@ -4975,35 +5235,35 @@
+@@ -4975,35 +5241,35 @@
<translation>Reverse Cuts</translation>
</message>
<message>
@@ -4056,7 +4094,7 @@
<source>If enabled, move deleted recordings to the &apos;Deleted&apos; recgroup and turn on autoexpire instead of deleting immediately.</source>
<translation>If enabled, move deleted recordings to the &apos;Deleted&apos; recgroup and turn on autoexpire instead of deleting immediately.</translation>
</message>
-@@ -5011,256 +5271,258 @@
+@@ -5011,256 +5277,258 @@
<context>
<name>DemoConfigurationGroup</name>
<message>
@@ -4064,42 +4102,42 @@
<source>A local MPEG file used to simulate a recording. Must be entered as file:/path/movie.mpg</source>
- <translation>A local MPEG file used to simulate a recording. Must be entered as file:/path/movie.mpg</translation>
+ <translation type="vanished">A local MPEG file used to simulate a recording. Must be entered as file:/path/movie.mpg</translation>
-+ </message>
-+ <message>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2505"/>
-+ <source>A local MPEG file used to simulate a recording.</source>
-+ <translation></translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2560"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2512"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2508"/>
++ <source>A local MPEG file used to simulate a recording.</source>
++ <translation>A local MPEG file used to simulate a recording.</translation>
++ </message>
++ <message>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2515"/>
<source>File info</source>
- <translation>File info</translation>
+ <translation>File Info</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2563"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2516"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2519"/>
<source>File size</source>
- <translation>File size</translation>
+ <translation>File Size</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2589"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2535"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2538"/>
<source>%1 MB</source>
<translation>%1 MB</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2592"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2538"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2541"/>
<source>File not readable</source>
- <translation>File not readable</translation>
+ <translation>File Not Readable</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2596"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2542"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2545"/>
<source>File does not exist</source>
- <translation>File does not exist</translation>
+ <translation>File Does Not Exist</translation>
@@ -4379,7 +4417,7 @@
<source>Universal (Europe)</source>
<translation>Universal (Europe)</translation>
</message>
-@@ -5275,128 +5537,132 @@
+@@ -5275,128 +5543,132 @@
<translation>The Cartesian longitude for your location. Use negative numbers for western coordinates.</translation>
</message>
<message>
@@ -4539,7 +4577,7 @@
<source>This defines the offset the frequency coming from the LNB will be in low setting. For bandstacked LNBs this is the vertical/right polarization band.</source>
<translation>This defines the offset the frequency coming from the LNB will be in low setting. For bandstacked LNBs this is the vertical/right polarization band.</translation>
</message>
-@@ -5411,77 +5677,75 @@
+@@ -5411,77 +5683,75 @@
<translation>This defines the offset the frequency coming from the LNB will be in high setting. For bandstacked LNBs this is the horizontal/left polarization band.</translation>
</message>
<message>
@@ -4632,7 +4670,7 @@
<source>DTV Device Configuration</source>
<translation>DTV Device Configuration</translation>
</message>
-@@ -5489,29 +5753,33 @@
+@@ -5489,29 +5759,33 @@
<context>
<name>EPGSettings</name>
<message>
@@ -4674,7 +4712,7 @@
</message>
</context>
<context>
-@@ -5529,12 +5797,12 @@
+@@ -5529,12 +5803,12 @@
<message>
<location filename="../programs/mythfrontend/editvideometadata.cpp" line="500"/>
<source>Enter new category</source>
@@ -4689,7 +4727,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/editvideometadata.cpp" line="663"/>
-@@ -5545,22 +5813,22 @@
+@@ -5545,22 +5819,22 @@
<message>
<location filename="../programs/mythfrontend/editvideometadata.cpp" line="682"/>
<source>Downloading selected artwork...</source>
@@ -4716,7 +4754,7 @@
</message>
</context>
<context>
-@@ -5611,7 +5879,7 @@
+@@ -5611,7 +5885,7 @@
<message>
<location filename="../programs/mythfrontend/exitprompt.cpp" line="227"/>
<source>Yes, Exit now</source>
@@ -4725,7 +4763,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/exitprompt.cpp" line="229"/>
-@@ -5644,12 +5912,12 @@
+@@ -5644,12 +5918,12 @@
<message>
<location filename="../programs/mythtv-setup/exitprompt.cpp" line="85"/>
<source>Yes please</source>
@@ -4740,48 +4778,70 @@
</message>
</context>
<context>
-@@ -5668,32 +5936,32 @@
+@@ -5668,34 +5942,51 @@
<context>
<name>ExternalConfigurationGroup</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2611"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2557"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2560"/>
++ <source>Command path</source>
++ <translation>Command Path</translation>
++ </message>
++ <message>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2561"/>
<source>A &apos;black box&apos; application controlled via stdin, status on stderr and TransportStream read from stdout</source>
- <translation>A &apos;black box&apos; application controlled via stdin, status on stderr and TransportStream read from stdout</translation>
+ <translation>A &apos;black box&apos; application controlled via stdin, status on stderr and TransportStream read from stdout.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2616"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2562"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2566"/>
<source>File info</source>
- <translation>File info</translation>
+ <translation>File Info</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2638"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2582"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2589"/>
<source>&apos;%1&apos; is valid.</source>
<translation>&apos;%1&apos; is valid.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2640"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2584"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2591"/>
++ <source>WARNING: &apos;%1&apos; is not readable.</source>
++ <translation>WARNING: &apos;%1&apos; is not readable.</translation>
++ </message>
++ <message>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2594"/>
++ <source>WARNING: &apos;%1&apos; is not executable.</source>
++ <translation>WARNING: &apos;%1&apos; is not executable.</translation>
++ </message>
++ <message>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2599"/>
++ <source>WARNING: &apos;%1&apos; does not exist.</source>
++ <translation>WARNING: &apos;%1&apos; does not exist.</translation>
++ </message>
++ <message>
<source>&apos;%1&apos; is not readable.</source>
- <translation>&apos;%1&apos; is not readable.</translation>
+- <translation>&apos;%1&apos; is not readable.</translation>
++ <translation type="vanished">&apos;%1&apos; is not readable.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2642"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2586"/>
<source>&apos;%1&apos; is not executable.</source>
- <translation>&apos;%1&apos; is not executable.</translation>
+- <translation>&apos;%1&apos; is not executable.</translation>
++ <translation type="vanished">&apos;%1&apos; is not executable.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2646"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2590"/>
<source>&apos;%1&apos; does not exist.</source>
- <translation>&apos;%1&apos; does not exist.</translation>
+- <translation>&apos;%1&apos; does not exist.</translation>
++ <translation type="vanished">&apos;%1&apos; does not exist.</translation>
</message>
-@@ -5708,22 +5976,22 @@
+ </context>
+ <context>
+@@ -5708,22 +5999,22 @@
<message>
<location filename="../programs/mythfrontend/videofileassoc.cpp" line="375"/>
<source>The command to use when playing this kind of file. To use MythTV&apos;s Internal player, use &quot;Internal&quot; as the player. For all other players, you can use %s to substitute the filename.</source>
@@ -4808,7 +4868,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/videofileassoc.cpp" line="384"/>
-@@ -5738,7 +6006,7 @@
+@@ -5738,7 +6029,7 @@
<message>
<location filename="../programs/mythfrontend/videofileassoc.cpp" line="444"/>
<source>Enter the new extension:</source>
@@ -4817,7 +4877,7 @@
</message>
</context>
<context>
-@@ -5747,45 +6015,45 @@
+@@ -5747,45 +6038,45 @@
<location filename="../libs/libmythtv/fileringbuffer.cpp" line="304"/>
<source>Could not open %1</source>
<extracomment>%1 is the filename</extracomment>
@@ -4844,7 +4904,8 @@
+ <translation>Cannot Seek in File</translation>
</message>
<message>
- <location filename="../libs/libmythtv/fileringbuffer.cpp" line="374"/>
+- <location filename="../libs/libmythtv/fileringbuffer.cpp" line="374"/>
++ <location filename="../libs/libmythtv/fileringbuffer.cpp" line="376"/>
<source>Failed to open remote file %1</source>
<extracomment>%1 is the filename</extracomment>
- <translation>Failed to open remote file %1</translation>
@@ -4871,12 +4932,12 @@
<source>Complete</source>
<translation>Complete</translation>
</message>
-@@ -5793,15 +6061,88 @@
+@@ -5793,15 +6084,88 @@
<context>
<name>FirewireDesc</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1255"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1294"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1297"/>
<source>Description</source>
<translation>Description</translation>
</message>
@@ -4951,7 +5012,7 @@
+ <message>
+ <location filename="../programs/mythfrontend/galleryconfig.cpp" line="214"/>
+ <source>Warning! This will erase settings for: hidden images, directory covers and re-orientations. You will have to set them again after re-scanning.</source>
-+ <translation>Warning! This will erase settings for: hidden images, directory covers and re-orientations. You will have to set them again after re-scanning.</translation>
++ <translation>Warning! This will erase settings for hidden images, directory covers, and re-orientations. You will have to set them again after re-scanning.</translation>
+ </message>
+</context>
+<context>
@@ -4962,7 +5023,7 @@
<source>Gallery Settings</source>
<translation>Gallery Settings</translation>
</message>
-@@ -5809,135 +6150,135 @@
+@@ -5809,135 +6173,135 @@
<context>
<name>GallerySlideView</name>
<message>
@@ -5126,7 +5187,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/galleryslideview.cpp" line="654"/>
-@@ -5950,7 +6291,7 @@
+@@ -5950,7 +6314,7 @@
<translation>Start</translation>
</message>
<message>
@@ -5135,7 +5196,7 @@
<source>End</source>
<extracomment>Slideshow has reached last slide</extracomment>
<translation>End</translation>
-@@ -5959,12 +6300,12 @@
+@@ -5959,12 +6323,12 @@
<context>
<name>GalleryThumbView</name>
<message>
@@ -5150,7 +5211,7 @@
<source>No images found.
Scan storage group using menu,
or insert/mount local media.
-@@ -5975,477 +6316,477 @@
+@@ -5975,477 +6339,477 @@
</translation>
</message>
<message>
@@ -5746,7 +5807,7 @@
<source>Import command failed.
Error: %1</source>
<translation>Import command failed.
-@@ -6455,117 +6796,117 @@
+@@ -6455,117 +6819,117 @@
<context>
<name>GeneralRecPrioritiesSettings</name>
<message>
@@ -5895,7 +5956,7 @@
<source>Accessibility Options</source>
<translation>Accessibility Options</translation>
</message>
-@@ -6573,270 +6914,271 @@
+@@ -6573,270 +6937,271 @@
<context>
<name>GeneralSettings</name>
<message>
@@ -6250,7 +6311,7 @@
<source>General (Channel Groups)</source>
<translation>General (Channel Groups)</translation>
</message>
-@@ -6866,7 +7208,7 @@
+@@ -6866,7 +7231,7 @@
<message>
<location filename="../programs/mythfrontend/setupwizard_general.cpp" line="66"/>
<source>Exit this wizard, save no changes.</source>
@@ -6259,7 +6320,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/setupwizard_general.cpp" line="133"/>
-@@ -6876,7 +7218,7 @@
+@@ -6876,7 +7241,7 @@
<message>
<location filename="../programs/mythfrontend/setupwizard_general.cpp" line="151"/>
<source>Submitting your hardware profile...</source>
@@ -6268,7 +6329,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/setupwizard_general.cpp" line="159"/>
-@@ -6911,7 +7253,7 @@
+@@ -6911,7 +7276,7 @@
<message>
<location filename="../programs/mythfrontend/setupwizard_general.cpp" line="253"/>
<source>Deleting your hardware profile...</source>
@@ -6277,7 +6338,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/setupwizard_general.cpp" line="261"/>
-@@ -6944,12 +7286,12 @@
+@@ -6944,12 +7309,12 @@
<message>
<location filename="../programs/mythfrontend/grabbersettings.cpp" line="62"/>
<source>Save your changes and close this window.</source>
@@ -6292,7 +6353,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/grabbersettings.cpp" line="65"/>
-@@ -6959,159 +7301,159 @@
+@@ -6959,159 +7324,159 @@
<message>
<location filename="../programs/mythfrontend/grabbersettings.cpp" line="76"/>
<source>Searching for data sources...</source>
@@ -6328,14 +6389,15 @@
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1102"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1924"/>
+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1107"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1940"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1942"/>
<source>Change to Channel</source>
<translation>Change to Channel</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1104"/>
+- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1928"/>
+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1109"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1928"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1930"/>
<source>Watch This Channel</source>
<translation>Watch This Channel</translation>
</message>
@@ -6343,7 +6405,7 @@
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1106"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1920"/>
+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1111"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1936"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1938"/>
<source>Record This</source>
<translation>Record This</translation>
</message>
@@ -6353,7 +6415,7 @@
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1961"/>
+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1113"/>
+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1143"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1971"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1973"/>
<source>Recording Options</source>
<translation>Recording Options</translation>
</message>
@@ -6361,7 +6423,7 @@
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1112"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1965"/>
+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1117"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1975"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1977"/>
<source>Jump to Time</source>
<translation>Jump to Time</translation>
</message>
@@ -6369,7 +6431,7 @@
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1116"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1944"/>
+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1121"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1954"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1956"/>
<source>Channel Search</source>
<translation>Channel Search</translation>
</message>
@@ -6377,7 +6439,7 @@
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1151"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1972"/>
+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1156"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1982"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1984"/>
<source>Edit Recording Status</source>
<translation>Edit Recording Status</translation>
</message>
@@ -6385,7 +6447,7 @@
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1152"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1976"/>
+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1157"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1986"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1988"/>
<source>Edit Schedule</source>
<translation>Edit Schedule</translation>
</message>
@@ -6393,7 +6455,7 @@
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1154"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1984"/>
+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1159"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1994"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1996"/>
<source>Previously Recorded</source>
<translation>Previously Recorded</translation>
</message>
@@ -6402,17 +6464,17 @@
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1863"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="2235"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="2236"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1704"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1871"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2242"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2243"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1706"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1873"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2244"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2245"/>
<source>Unknown</source>
<comment>Unknown program title</comment>
<translation>Unknown</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="2730"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2737"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2739"/>
<source>Jump to a specific date and time in the guide</source>
- <translation>Jump to a specific date and time in the guide</translation>
+ <translation>Jump to a Specific Date and Time in the Guide</translation>
@@ -6421,7 +6483,7 @@
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1110"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1934"/>
+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1115"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1944"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1946"/>
<source>Program Details</source>
<translation>Program Details</translation>
</message>
@@ -6429,7 +6491,7 @@
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1153"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1980"/>
+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1158"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1990"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1992"/>
<source>Show Upcoming</source>
<translation>Show Upcoming</translation>
</message>
@@ -6437,7 +6499,7 @@
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1155"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1988"/>
+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1160"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1998"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2000"/>
<source>Custom Edit</source>
<translation>Custom Edit</translation>
</message>
@@ -6445,7 +6507,7 @@
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1158"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1992"/>
+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1163"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2002"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2004"/>
<source>Delete Rule</source>
<translation>Delete Rule</translation>
</message>
@@ -6453,7 +6515,7 @@
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1114"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1938"/>
+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1119"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1948"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1950"/>
<source>Reverse Channel Order</source>
<translation>Reverse Channel Order</translation>
</message>
@@ -6461,7 +6523,7 @@
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1123"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1948"/>
+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1128"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1958"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1960"/>
<source>Add To Channel Group</source>
- <translation>Add To Channel Group</translation>
+ <translation>Add to Channel Group</translation>
@@ -6470,7 +6532,7 @@
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1125"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1953"/>
+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1130"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1963"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1965"/>
<source>Remove from Channel Group</source>
<translation>Remove from Channel Group</translation>
</message>
@@ -6478,55 +6540,55 @@
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1120"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="1957"/>
+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1125"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1967"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="1969"/>
<source>Choose Channel Group</source>
<translation>Choose Channel Group</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="2289"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2296"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2298"/>
<source>You don&apos;t have any channel groups defined</source>
<translation>You don&apos;t have any channel groups defined</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="2303"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2310"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2312"/>
<source>Select Channel Group</source>
<translation>Select Channel Group</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="2588"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2595"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2597"/>
<source>Delete &apos;%1&apos; %2 rule?</source>
<translation>Delete &apos;%1&apos; %2 rule?</translation>
</message>
-@@ -7119,12 +7461,12 @@
+@@ -7119,12 +7484,12 @@
<context>
<name>HDHomeRunConfigurationGroup</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2067"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2074"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2077"/>
<source>Description</source>
<translation>Description</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2082"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2089"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2092"/>
<source>Recording Options</source>
<translation>Recording Options</translation>
</message>
-@@ -7132,22 +7474,22 @@
+@@ -7132,22 +7497,22 @@
<context>
<name>HDHomeRunDeviceID</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1415"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1441"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1444"/>
<source>Device ID</source>
<translation>Device ID</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1416"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1442"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1445"/>
<source>Device ID of HDHomeRun device</source>
- <translation>Device ID of HDHomeRun device</translation>
+ <translation>Device ID of HDHomeRun Device</translation>
@@ -6538,32 +6600,32 @@
- <location filename="../libs/libmythtv/videosource.cpp" line="1509"/>
- <location filename="../libs/libmythtv/videosource.cpp" line="1565"/>
- <location filename="../libs/libmythtv/videosource.cpp" line="1575"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1538"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1596"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1606"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1541"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1599"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1609"/>
<source>Manually Enter IP Address</source>
<translation>Manually Enter IP Address</translation>
</message>
-@@ -7155,122 +7497,122 @@
+@@ -7155,122 +7520,122 @@
<context>
<name>HDPVRConfigurationGroup</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2662"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2608"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2618"/>
<source>Probed info</source>
- <translation>Probed info</translation>
+ <translation>Probed Info</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2679"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2626"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2636"/>
<source>Failed to open</source>
- <translation>Failed to open</translation>
+ <translation>Failed to Open</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2685"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2632"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2642"/>
<source>Failed to probe</source>
- <translation>Failed to probe</translation>
+ <translation>Failed to Probe</translation>
@@ -6590,7 +6652,7 @@
+ <location filename="../programs/mythfrontend/playbackbox.cpp" line="5549"/>
<source>The program is able to auto-expire</source>
- <translation>The program is able to auto-expire</translation>
-+ <translation>Program Is Set to Auto-expire</translation>
++ <translation>Program is Set to Auto-expire</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/playbackbox.cpp" line="5519"/>
@@ -6702,7 +6764,7 @@
</message>
</context>
<context>
-@@ -7296,7 +7638,7 @@
+@@ -7296,7 +7661,7 @@
<message>
<location filename="../html/htmlstrings.h" line="24"/>
<source>Package installed</source>
@@ -6711,7 +6773,7 @@
</message>
<message>
<location filename="../html/htmlstrings.h" line="25"/>
-@@ -7747,7 +8089,7 @@
+@@ -7747,7 +8112,7 @@
<message>
<location filename="../html/htmlstrings.h" line="163"/>
<source>Use Link-Local</source>
@@ -6720,7 +6782,7 @@
</message>
<message>
<location filename="../html/htmlstrings.h" line="165"/>
-@@ -8060,7 +8402,7 @@
+@@ -8060,7 +8425,7 @@
<message>
<location filename="../html/htmlstrings.h" line="240"/>
<source>Auto-Expire</source>
@@ -6729,7 +6791,7 @@
</message>
<message>
<location filename="../html/htmlstrings.h" line="241"/>
-@@ -8080,7 +8422,7 @@
+@@ -8080,7 +8445,7 @@
<message>
<location filename="../html/htmlstrings.h" line="245"/>
<source>Delete and Re-Record</source>
@@ -6738,7 +6800,7 @@
</message>
<message>
<location filename="../html/htmlstrings.h" line="246"/>
-@@ -8165,7 +8507,7 @@
+@@ -8165,7 +8530,7 @@
<message>
<location filename="../html/htmlstrings.h" line="272"/>
<source>Allow Auto-Expire</source>
@@ -6747,7 +6809,7 @@
</message>
<message>
<location filename="../html/htmlstrings.h" line="275"/>
-@@ -8449,7 +8791,7 @@
+@@ -8449,7 +8814,7 @@
<message>
<location filename="../html/htmlstrings.h" line="12"/>
<source>Loading ...</source>
@@ -6756,7 +6818,7 @@
</message>
<message>
<location filename="../html/htmlstrings.h" line="14"/>
-@@ -8661,7 +9003,7 @@
+@@ -8661,7 +9026,7 @@
<message>
<location filename="../libs/libmythtv/channelscan/iptvchannelfetcher.cpp" line="335"/>
<source>Encountered malformed channel</source>
@@ -6765,52 +6827,52 @@
</message>
</context>
<context>
-@@ -8691,34 +9033,34 @@
+@@ -8691,34 +9056,34 @@
<context>
<name>ImportConfigurationGroup</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1980"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1996"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1999"/>
<source>A local file used to simulate a recording. Leave empty to use MythEvents to trigger an external program to import recording files.</source>
<translation>A local file used to simulate a recording. Leave empty to use MythEvents to trigger an external program to import recording files.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1988"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2004"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2007"/>
<source>File info</source>
- <translation>File info</translation>
+ <translation>File Info</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1991"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2008"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2011"/>
<source>File size</source>
- <translation>File size</translation>
+ <translation>File Size</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2014"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2032"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2035"/>
<source>%1 MB</source>
<translation>%1 MB</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2017"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2035"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2038"/>
<source>File not readable</source>
- <translation>File not readable</translation>
+ <translation>File Not Readable</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2021"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2039"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2042"/>
<source>File %1 does not exist</source>
- <translation>File %1 does not exist</translation>
+ <translation>File %1 Does Not Exist</translation>
</message>
</context>
<context>
-@@ -8726,27 +9068,27 @@
+@@ -8726,27 +9091,27 @@
<message>
<location filename="../programs/mythtv-setup/importicons.cpp" line="94"/>
<source>Name of the icon file</source>
@@ -6843,7 +6905,7 @@
</message>
<message>
<location filename="../programs/mythtv-setup/importicons.cpp" line="139"/>
-@@ -8761,7 +9103,7 @@
+@@ -8761,7 +9126,7 @@
<message>
<location filename="../programs/mythtv-setup/importicons.cpp" line="173"/>
<source>No matches found for &quot;%1&quot;</source>
@@ -6852,7 +6914,7 @@
</message>
<message>
<location filename="../programs/mythtv-setup/importicons.cpp" line="411"/>
-@@ -8772,7 +9114,7 @@
+@@ -8772,7 +9137,7 @@
<message>
<location filename="../programs/mythtv-setup/importicons.cpp" line="483"/>
<source>No matches found for %1</source>
@@ -6861,7 +6923,7 @@
</message>
<message>
<location filename="../programs/mythtv-setup/importicons.cpp" line="218"/>
-@@ -8787,12 +9129,12 @@
+@@ -8787,12 +9152,12 @@
<message>
<location filename="../programs/mythtv-setup/importicons.cpp" line="319"/>
<source>Initializing, please wait...</source>
@@ -6876,7 +6938,7 @@
</message>
<message numerus="yes">
<location filename="../programs/mythtv-setup/importicons.cpp" line="423"/>
-@@ -8805,20 +9147,20 @@
+@@ -8805,20 +9170,20 @@
<message>
<location filename="../programs/mythtv-setup/importicons.cpp" line="479"/>
<source>Choose icon for channel %1</source>
@@ -6901,7 +6963,7 @@
<source>Icon choices submitted successfully.</source>
<translation>Icon choices submitted successfully.</translation>
</message>
-@@ -8826,17 +9168,17 @@
+@@ -8826,17 +9191,17 @@
<context>
<name>ImportSettings</name>
<message>
@@ -6922,7 +6984,7 @@
<source>Command/script that can be run from the menu.
%TMPDIR% will be replaced by a new temporary directory, which the import dialog will show automatically. The directory will be removed when Gallery exits.</source>
<translation>Command/script that can be run from the menu.
-@@ -8877,7 +9219,7 @@
+@@ -8877,7 +9242,7 @@
<message>
<location filename="../programs/mythfrontend/galleryinfo.cpp" line="168"/>
<source>Dir size</source>
@@ -6931,7 +6993,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/galleryinfo.cpp" line="176"/>
-@@ -8913,7 +9255,7 @@
+@@ -8913,7 +9278,7 @@
<message>
<location filename="../programs/mythfrontend/galleryinfo.cpp" line="243"/>
<source>Last scan</source>
@@ -6940,7 +7002,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/galleryinfo.cpp" line="251"/>
-@@ -8923,7 +9265,7 @@
+@@ -8923,7 +9288,7 @@
<message>
<location filename="../programs/mythfrontend/galleryinfo.cpp" line="257"/>
<source>File size</source>
@@ -6949,22 +7011,21 @@
</message>
<message>
<location filename="../programs/mythfrontend/galleryinfo.cpp" line="258"/>
-@@ -8940,6 +9282,14 @@
+@@ -8940,6 +9305,13 @@
</message>
</context>
<context>
+ <name>IpAddressSettings</name>
+ <message>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="131"/>
+ <source>Allow this backend to receive connections on any IP Address assigned to it. Recommended for most users for ease and reliability.</source>
-+ <translation>Allow this backend to receive connections on any IP Address assigned to it. Recommended for most users for ease and reliability.</translation>
++ <translation type="vanished">Allow this backend to receive connections on any IP Address assigned to it. Recommended for most users for ease and reliability.</translation>
+ </message>
+</context>
+<context>
<name>JobQueue</name>
<message>
<location filename="../libs/libmythtv/jobqueue.cpp" line="1109"/>
-@@ -8954,7 +9304,7 @@
+@@ -8954,7 +9326,7 @@
<message>
<location filename="../libs/libmythtv/jobqueue.cpp" line="1111"/>
<source>Look up Metadata</source>
@@ -6973,7 +7034,7 @@
</message>
<message>
<location filename="../libs/libmythtv/jobqueue.cpp" line="1121"/>
-@@ -8969,12 +9319,12 @@
+@@ -8969,12 +9341,12 @@
<message>
<location filename="../libs/libmythtv/jobqueue.cpp" line="1678"/>
<source>Unable to retrieve program info from database</source>
@@ -6988,7 +7049,7 @@
</message>
<message>
<location filename="../libs/libmythtv/jobqueue.cpp" line="1733"/>
-@@ -8989,7 +9339,7 @@
+@@ -8989,7 +9361,7 @@
<message>
<location filename="../libs/libmythtv/jobqueue.cpp" line="2028"/>
<source>Finished.</source>
@@ -6997,7 +7058,7 @@
</message>
<message>
<location filename="../libs/libmythtv/jobqueue.cpp" line="2040"/>
-@@ -9005,12 +9355,12 @@
+@@ -9005,12 +9377,12 @@
<message>
<location filename="../libs/libmythtv/jobqueue.cpp" line="2096"/>
<source>Retry limit exceeded</source>
@@ -7012,7 +7073,7 @@
</message>
<message>
<location filename="../libs/libmythtv/jobqueue.cpp" line="2155"/>
-@@ -9020,12 +9370,12 @@
+@@ -9020,12 +9392,12 @@
<message>
<location filename="../libs/libmythtv/jobqueue.cpp" line="2181"/>
<source>Unable to find mythmetadatalookup</source>
@@ -7027,7 +7088,7 @@
</message>
<message>
<location filename="../libs/libmythtv/jobqueue.cpp" line="2211"/>
-@@ -9036,7 +9386,7 @@
+@@ -9036,7 +9408,7 @@
<message>
<location filename="../libs/libmythtv/jobqueue.cpp" line="2273"/>
<source>Could not open new database connection for commercial detector.</source>
@@ -7036,7 +7097,7 @@
</message>
<message>
<location filename="../libs/libmythtv/jobqueue.cpp" line="2280"/>
-@@ -9046,7 +9396,7 @@
+@@ -9046,7 +9418,7 @@
<message>
<location filename="../libs/libmythtv/jobqueue.cpp" line="2318"/>
<source>Unable to find mythcommflag</source>
@@ -7045,7 +7106,7 @@
</message>
<message>
<location filename="../libs/libmythtv/jobqueue.cpp" line="2440"/>
-@@ -9061,32 +9411,32 @@
+@@ -9061,32 +9433,32 @@
<message>
<location filename="../libs/libmythtv/jobqueue.cpp" line="2464"/>
<source>Successfully Completed.</source>
@@ -7084,7 +7145,7 @@
</translation>
</message>
<message>
-@@ -9181,43 +9531,43 @@
+@@ -9181,43 +9553,43 @@
<message>
<location filename="../programs/mythfrontend/keygrabber.cpp" line="49"/>
<source>Waiting for key press</source>
@@ -7136,7 +7197,7 @@
<source>RECORDING|</source>
<translation>RECORDING|</translation>
</message>
-@@ -9227,170 +9577,169 @@
+@@ -9227,170 +9599,169 @@
<message>
<location filename="../libs/libmyth/langsettings.cpp" line="76"/>
<source>Preferred language</source>
@@ -7352,7 +7413,7 @@
</message>
</context>
<context>
-@@ -9405,47 +9754,46 @@
+@@ -9405,47 +9776,46 @@
<location filename="../libs/libmythmetadata/lyricsdata.cpp" line="95"/>
<location filename="../libs/libmythmetadata/lyricsdata.cpp" line="230"/>
<source>No lyrics found for this track</source>
@@ -7364,21 +7425,21 @@
<name>MPEGConfigurationGroup</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2513"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2464"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2467"/>
<source>Probed info</source>
- <translation>Probed info</translation>
+ <translation>Probed Info</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2528"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2480"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2483"/>
<source>Failed to open</source>
- <translation>Failed to open</translation>
+ <translation>Failed to Open</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2535"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2487"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2490"/>
<source>Failed to probe</source>
- <translation>Failed to probe</translation>
+ <translation>Failed to Probe</translation>
@@ -7413,7 +7474,7 @@
<source>Video on the desktop will skip this many frames for each frame drawn. Set to 0 to show every frame.</source>
<translation>Video on the desktop will skip this many frames for each frame drawn. Set to 0 to show every frame.</translation>
</message>
-@@ -9453,23 +9801,22 @@
+@@ -9453,23 +9823,22 @@
<context>
<name>MacDockSettings</name>
<message>
@@ -7443,7 +7504,7 @@
<source>Video in the dock icon will skip this many frames for each frame drawn. Set to 0 to show every frame.</source>
<translation>Video in the dock icon will skip this many frames for each frame drawn. Set to 0 to show every frame.</translation>
</message>
-@@ -9477,33 +9824,32 @@
+@@ -9477,33 +9846,32 @@
<context>
<name>MacFloatSettings</name>
<message>
@@ -7485,7 +7546,7 @@
<source>The opacity of the floating window. Set to 100 for completely opaque, set to 0 for completely transparent.</source>
<translation>The opacity of the floating window. Set to 100 for completely opaque, set to 0 for completely transparent.</translation>
</message>
-@@ -9511,33 +9857,32 @@
+@@ -9511,33 +9879,32 @@
<context>
<name>MacMainSettings</name>
<message>
@@ -7527,7 +7588,7 @@
<source>The opacity of the main window. Set to 100 for completely opaque, set to 0 for completely transparent.</source>
<translation>The opacity of the main window. Set to 100 for completely opaque, set to 0 for completely transparent.</translation>
</message>
-@@ -9545,252 +9890,269 @@
+@@ -9545,252 +9912,269 @@
<context>
<name>MainGeneralSettings</name>
<message>
@@ -7778,14 +7839,14 @@
<source>Your iPhone, iPad, iPod Touch, or iTunes on your computer will prompt you for this password when required</source>
- <translation>Your iPhone, iPad, iPod Touch, or iTunes on your computer will prompt you for this password when required</translation>
+ <translation>Your iPhone, iPad, iPod Touch, or iTunes on your computer will prompt you for this password when required.</translation>
- </message>
- <message>
-- <location filename="../programs/mythfrontend/globalsettings.cpp" line="3140"/>
++ </message>
++ <message>
+ <location filename="../programs/mythfrontend/globalsettings.cpp" line="3137"/>
+ <source>AirPlay - Password</source>
+ <translation>AirPlay - Password</translation>
-+ </message>
-+ <message>
+ </message>
+ <message>
+- <location filename="../programs/mythfrontend/globalsettings.cpp" line="3140"/>
+ <location filename="../programs/mythfrontend/globalsettings.cpp" line="3148"/>
<source>AirPlay full screen playback</source>
- <translation>AirPlay full screen playback</translation>
@@ -7833,14 +7894,14 @@
+ <location filename="../programs/mythfrontend/globalsettings.cpp" line="3325"/>
+ <source>This enables support for monitoring your CD/DVD drives for new disks and launching the proper plugin to handle them. Requires restart.</source>
+ <translation>This enables support for monitoring your CD/DVD drives for new disks and launching the proper plugin to handle them. Requires restart.</translation>
- </message>
- <message>
-- <location filename="../programs/mythfrontend/globalsettings.cpp" line="3848"/>
++ </message>
++ <message>
+ <location filename="../programs/mythfrontend/globalsettings.cpp" line="3808"/>
+ <source>Main Settings</source>
+ <translation>Main Settings</translation>
-+ </message>
-+ <message>
+ </message>
+ <message>
+- <location filename="../programs/mythfrontend/globalsettings.cpp" line="3848"/>
+ <location filename="../programs/mythfrontend/globalsettings.cpp" line="3813"/>
<source>Settings Access</source>
<translation>Settings Access</translation>
@@ -7875,7 +7936,7 @@
<source>Shutdown/Reboot Settings</source>
<translation>Shutdown/Reboot Settings</translation>
</message>
-@@ -9800,135 +10162,132 @@
+@@ -9800,135 +10184,132 @@
<message>
<location filename="../programs/mythfrontend/manualschedule.cpp" line="93"/>
<source>5 weekdays if daily</source>
@@ -8054,7 +8115,7 @@
</message>
</context>
<context>
-@@ -9961,12 +10320,12 @@
+@@ -9961,12 +10342,12 @@
<message>
<location filename="../programs/mythfrontend/videometadatasettings.cpp" line="114"/>
<source>Exit without saving settings</source>
@@ -8069,7 +8130,7 @@
</message>
</context>
<context>
-@@ -10004,7 +10363,7 @@
+@@ -10004,7 +10385,7 @@
<translation>Unknown Genre</translation>
</message>
<message>
@@ -8078,7 +8139,7 @@
<source>Never Played</source>
<translation>Never Played</translation>
</message>
-@@ -10014,7 +10373,7 @@
+@@ -10014,7 +10395,7 @@
<message>
<location filename="../libs/libmythtv/AirPlay/mythairplayserver.cpp" line="593"/>
<source>Client disconnected</source>
@@ -8087,7 +8148,7 @@
</message>
<message>
<location filename="../libs/libmythtv/AirPlay/mythairplayserver.cpp" line="593"/>
-@@ -10050,1505 +10409,1509 @@
+@@ -10050,1505 +10431,1509 @@
<context>
<name>MythControls</name>
<message>
@@ -9147,7 +9208,7 @@
+ <location filename="../libs/libmythtv/tv_play.cpp" line="953"/>
<source>Toggle OSD playback information</source>
- <translation>Toggle OSD playback information</translation>
-+ <translation>Toggle Osd Playback Information</translation>
++ <translation>Toggle OSD Playback Information</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="955"/>
@@ -9283,14 +9344,14 @@
+ <location filename="../libs/libmythtv/tv_play.cpp" line="914"/>
<source>Jump back 10x the normal amount</source>
- <translation>Jump back 10x the normal amount</translation>
-+ <translation>Jump Back 10x the Normal Amount</translation>
++ <translation>Jump Back 10x Normal</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="914"/>
+ <location filename="../libs/libmythtv/tv_play.cpp" line="916"/>
<source>Jump forward 10x the normal amount</source>
- <translation>Jump forward 10x the normal amount</translation>
-+ <translation>Jump Forward 10x the Normal Amount</translation>
++ <translation>Jump Forward 10x Normal</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="920"/>
@@ -9594,7 +9655,7 @@
+ <location filename="../libs/libmythui/mythmainwindow.cpp" line="1321"/>
<source>Turn the display on</source>
- <translation>Turn the display on</translation>
-+ <translation>Turn the Display on</translation>
++ <translation>Turn the Display On</translation>
</message>
<message>
- <location filename="../libs/libmythui/mythmainwindow.cpp" line="1318"/>
@@ -9668,7 +9729,7 @@
+ <location filename="../libs/libmythui/mythmainwindow.cpp" line="1348"/>
<source>Zoom in on browser window</source>
- <translation>Zoom in on browser window</translation>
-+ <translation>Zoom in on Browser Window</translation>
++ <translation>Zoom In on Browser Window</translation>
</message>
<message>
- <location filename="../libs/libmythui/mythmainwindow.cpp" line="1345"/>
@@ -9682,7 +9743,7 @@
+ <location filename="../libs/libmythui/mythmainwindow.cpp" line="1352"/>
<source>Toggle where keyboard input goes to</source>
- <translation>Toggle where keyboard input goes to</translation>
-+ <translation>Toggle Where Keyboard Input Goes to</translation>
++ <translation>Toggle Where Keyboard Input Goes To</translation>
</message>
<message>
- <location filename="../libs/libmythui/mythmainwindow.cpp" line="1350"/>
@@ -9724,28 +9785,28 @@
+ <location filename="../libs/libmythui/mythmainwindow.cpp" line="1366"/>
<source>Scroll down half a page</source>
- <translation>Scroll down half a page</translation>
-+ <translation>Scroll Down Half a Page</translation>
++ <translation>Scroll Down Half Page</translation>
</message>
<message>
- <location filename="../libs/libmythui/mythmainwindow.cpp" line="1363"/>
+ <location filename="../libs/libmythui/mythmainwindow.cpp" line="1368"/>
<source>Scroll up half a page</source>
- <translation>Scroll up half a page</translation>
-+ <translation>Scroll Up Half a Page</translation>
++ <translation>Scroll Up Half Page</translation>
</message>
<message>
- <location filename="../libs/libmythui/mythmainwindow.cpp" line="1365"/>
+ <location filename="../libs/libmythui/mythmainwindow.cpp" line="1370"/>
<source>Scroll left half a page</source>
- <translation>Scroll left half a page</translation>
-+ <translation>Scroll Left Half a Page</translation>
++ <translation>Scroll Left Half Page</translation>
</message>
<message>
- <location filename="../libs/libmythui/mythmainwindow.cpp" line="1367"/>
+ <location filename="../libs/libmythui/mythmainwindow.cpp" line="1372"/>
<source>Scroll right half a page</source>
- <translation>Scroll right half a page</translation>
-+ <translation>Scroll Right Half a Page</translation>
++ <translation>Scroll Right Half Page</translation>
</message>
<message>
- <location filename="../libs/libmythui/mythmainwindow.cpp" line="1370"/>
@@ -9991,7 +10052,7 @@
+ <location filename="../programs/mythfrontend/main.cpp" line="1552"/>
<source>Zoom image in</source>
- <translation>Zoom image in</translation>
-+ <translation>Zoom Image in</translation>
++ <translation>Zoom Image In</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/main.cpp" line="1462"/>
@@ -10072,7 +10133,7 @@
<source>MythImage Media Handler 2/2</source>
<translation>MythImage Media Handler 2/2</translation>
</message>
-@@ -11576,12 +11939,12 @@
+@@ -11576,12 +11961,12 @@
<message>
<location filename="../programs/mythfrontend/mythcontrols.cpp" line="234"/>
<source>Actions By Context</source>
@@ -10087,7 +10148,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/mythcontrols.cpp" line="236"/>
-@@ -11642,57 +12005,57 @@
+@@ -11642,57 +12027,57 @@
<translation>Keys</translation>
</message>
<message>
@@ -10095,7 +10156,7 @@
+ <location filename="../programs/mythwelcome/main.cpp" line="38"/>
<source>Open an Xterm window</source>
- <translation>Open an Xterm window</translation>
-+ <translation>Open an Xterm Window</translation>
++ <translation>Open Xterm Window</translation>
</message>
<message>
- <location filename="../programs/mythwelcome/main.cpp" line="39"/>
@@ -10162,7 +10223,7 @@
<source>MythDVD DVD Media Handler</source>
<translation>MythDVD DVD Media Handler</translation>
</message>
-@@ -11700,9 +12063,9 @@
+@@ -11700,9 +12085,9 @@
<context>
<name>MythCoreContext</name>
<message>
@@ -10174,7 +10235,7 @@
</message>
</context>
<context>
-@@ -11721,184 +12084,183 @@
+@@ -11721,184 +12106,183 @@
<context>
<name>MythPlayer</name>
<message>
@@ -10209,14 +10270,14 @@
+ <location filename="../libs/libmythtv/mythplayer.cpp" line="980"/>
<source>Could not find an A/V decoder</source>
- <translation>Could not find an A/V decoder</translation>
-+ <translation>Could Not Find an A/V Decoder</translation>
++ <translation>Could Not Find a Decoder</translation>
</message>
<message>
- <location filename="../libs/libmythtv/mythplayer.cpp" line="977"/>
+ <location filename="../libs/libmythtv/mythplayer.cpp" line="989"/>
<source>Could not initialize A/V decoder</source>
- <translation>Could not initialize A/V decoder</translation>
-+ <translation>Could Not Initialize A/V Decoder</translation>
++ <translation>Could Not Initialize Decoder</translation>
</message>
<message>
- <location filename="../libs/libmythtv/mythplayer.cpp" line="1002"/>
@@ -10417,7 +10478,7 @@
<source>%n second(s)</source>
<translation>
<numerusform>%n second</numerusform>
-@@ -11906,42 +12268,42 @@
+@@ -11906,42 +12290,42 @@
</translation>
</message>
<message>
@@ -10470,7 +10531,7 @@
<source>Disabled Night Mode</source>
<translation>Disabled Night Mode</translation>
</message>
-@@ -11964,7 +12326,7 @@
+@@ -11964,7 +12348,7 @@
<message>
<location filename="../libs/libmythtv/AirPlay/mythraopconnection.cpp" line="1500"/>
<source>Failed to read key from: %1</source>
@@ -10479,7 +10540,7 @@
</message>
<message>
<location filename="../libs/libmythtv/AirPlay/mythraopconnection.cpp" line="1517"/>
-@@ -12019,7 +12381,7 @@
+@@ -12019,7 +12403,7 @@
<message>
<location filename="../programs/mythwelcome/welcomesettings.cpp" line="136"/>
<source>Wakeup time format</source>
@@ -10488,7 +10549,7 @@
</message>
<message>
<location filename="../programs/mythwelcome/welcomesettings.cpp" line="139"/>
-@@ -12039,7 +12401,7 @@
+@@ -12039,7 +12423,7 @@
<message>
<location filename="../programs/mythwelcome/welcomesettings.cpp" line="163"/>
<source>Command to reboot</source>
@@ -10497,7 +10558,7 @@
</message>
<message>
<location filename="../programs/mythwelcome/welcomesettings.cpp" line="165"/>
-@@ -12049,7 +12411,7 @@
+@@ -12049,7 +12433,7 @@
<message>
<location filename="../programs/mythwelcome/welcomesettings.cpp" line="172"/>
<source>Command to shutdown</source>
@@ -10506,7 +10567,7 @@
</message>
<message>
<location filename="../programs/mythwelcome/welcomesettings.cpp" line="174"/>
-@@ -12059,7 +12421,7 @@
+@@ -12059,7 +12443,7 @@
<message>
<location filename="../programs/mythwelcome/welcomesettings.cpp" line="181"/>
<source>Command to run to start the Frontend</source>
@@ -10515,7 +10576,7 @@
</message>
<message>
<location filename="../programs/mythwelcome/welcomesettings.cpp" line="184"/>
-@@ -12069,7 +12431,7 @@
+@@ -12069,7 +12453,7 @@
<message>
<location filename="../programs/mythwelcome/welcomesettings.cpp" line="191"/>
<source>Command to run Xterm</source>
@@ -10524,7 +10585,7 @@
</message>
<message>
<location filename="../programs/mythwelcome/welcomesettings.cpp" line="193"/>
-@@ -12085,212 +12447,217 @@
+@@ -12085,212 +12469,217 @@
<context>
<name>MythSystemEventEditor</name>
<message>
@@ -10539,14 +10600,14 @@
<source>Recording pending</source>
- <translation>Recording pending</translation>
+ <translation>Recording Pending</translation>
- </message>
- <message>
-- <location filename="../libs/libmythtv/mythsystemevent.cpp" line="385"/>
++ </message>
++ <message>
+ <location filename="../libs/libmythtv/mythsystemevent.cpp" line="388"/>
+ <source>Recording about to fail</source>
+ <translation>Recording About to Fail</translation>
-+ </message>
-+ <message>
+ </message>
+ <message>
+- <location filename="../libs/libmythtv/mythsystemevent.cpp" line="385"/>
+ <location filename="../libs/libmythtv/mythsystemevent.cpp" line="390"/>
<source>Recording failing</source>
- <translation>Recording failing</translation>
@@ -10823,7 +10884,7 @@
</message>
</context>
<context>
-@@ -12303,12 +12670,12 @@
+@@ -12303,12 +12692,12 @@
<message>
<location filename="../libs/libmythui/myththemedmenu.cpp" line="322"/>
<source>Enter standby mode</source>
@@ -10838,7 +10899,7 @@
</message>
<message>
<location filename="../libs/libmythui/myththemedmenu.cpp" line="333"/>
-@@ -12339,12 +12706,12 @@
+@@ -12339,12 +12728,12 @@
<message>
<location filename="../libs/libmythui/myththemedmenu.cpp" line="377"/>
<source>Ok</source>
@@ -10853,7 +10914,7 @@
</message>
<message>
<location filename="../libs/libmythui/myththemedmenu.cpp" line="626"/>
-@@ -12390,8 +12757,8 @@
+@@ -12390,8 +12779,8 @@
<context>
<name>MythUISearchDialog</name>
<message numerus="yes">
@@ -10864,7 +10925,7 @@
<source>%n match(es)</source>
<translation>
<numerusform>%n match</numerusform>
-@@ -12402,76 +12769,76 @@
+@@ -12402,76 +12791,76 @@
<context>
<name>MythUIWebBrowser</name>
<message>
@@ -10965,7 +11026,7 @@
<source>Cancel</source>
<translation>Cancel</translation>
</message>
-@@ -12482,7 +12849,7 @@
+@@ -12482,7 +12871,7 @@
<location filename="../programs/mythwelcome/welcomesettings.cpp" line="14"/>
<location filename="../programs/mythwelcome/welcomesettings.cpp" line="34"/>
<source>Period %1 start time</source>
@@ -10974,7 +11035,7 @@
</message>
<message>
<location filename="../programs/mythwelcome/welcomesettings.cpp" line="15"/>
-@@ -12494,7 +12861,7 @@
+@@ -12494,7 +12883,7 @@
<location filename="../programs/mythwelcome/welcomesettings.cpp" line="24"/>
<location filename="../programs/mythwelcome/welcomesettings.cpp" line="44"/>
<source>Period %1 end time</source>
@@ -10983,7 +11044,7 @@
</message>
<message>
<location filename="../programs/mythwelcome/welcomesettings.cpp" line="25"/>
-@@ -12541,7 +12908,7 @@
+@@ -12541,7 +12930,7 @@
<location filename="../programs/mythwelcome/welcomesettings.cpp" line="96"/>
<location filename="../programs/mythwelcome/welcomesettings.cpp" line="101"/>
<source>Daily Wakeup/ShutDown Period %1</source>
@@ -10992,7 +11053,7 @@
</message>
</context>
<context>
-@@ -12570,7 +12937,7 @@
+@@ -12570,7 +12959,7 @@
<context>
<name>NetworkControl</name>
<message>
@@ -11001,7 +11062,7 @@
<source>Network Control</source>
<translation>Network Control</translation>
</message>
-@@ -12578,87 +12945,87 @@
+@@ -12578,87 +12967,87 @@
<context>
<name>OSDSettings</name>
<message>
@@ -11114,7 +11175,7 @@
<source>On-screen Display</source>
<translation>On-screen Display</translation>
</message>
-@@ -12719,7 +13086,7 @@
+@@ -12719,7 +13108,7 @@
<context>
<name>PaneATSC</name>
<message>
@@ -11123,7 +11184,7 @@
<source>Scanning Range</source>
<translation>Scanning Range</translation>
</message>
-@@ -12727,12 +13094,12 @@
+@@ -12727,12 +13116,12 @@
<context>
<name>PaneDVBUtilsImport</name>
<message>
@@ -11139,20 +11200,18 @@
<source>Location of the channels.conf file.</source>
<translation>Location of the channels.conf file.</translation>
</message>
-@@ -12802,67 +13169,80 @@
+@@ -12802,67 +13191,78 @@
</message>
</context>
<context>
+ <name>PlayBackScaling</name>
+ <message>
-+ <location filename="../programs/mythfrontend/globalsettings.cpp" line="3874"/>
+ <source>Scaling</source>
-+ <translation>Scaling</translation>
++ <translation type="vanished">Scaling</translation>
+ </message>
+ <message>
-+ <location filename="../programs/mythfrontend/globalsettings.cpp" line="3897"/>
+ <source>No scaling</source>
-+ <translation>No Scaling</translation>
++ <translation type="vanished">No Scaling</translation>
+ </message>
+</context>
+<context>
@@ -11240,7 +11299,7 @@
<source>%1 Group</source>
<comment>Play Group</comment>
<extracomment>%1 is the name of the playgroup</extracomment>
-@@ -12872,410 +13252,417 @@
+@@ -12872,631 +13272,651 @@
<context>
<name>PlayGroupEditor</name>
<message>
@@ -11553,7 +11612,7 @@
+ <location filename="../programs/mythfrontend/playbackbox.cpp" line="2375"/>
<source>This recording is already being deleted</source>
- <translation>This recording is already being deleted</translation>
-+ <translation>This Recording Is Already Being Deleted</translation>
++ <translation>This Recording is Already Being Deleted</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/playbackbox.cpp" line="2450"/>
@@ -11570,7 +11629,7 @@
+ <location filename="../programs/mythfrontend/playbackbox.cpp" line="2735"/>
<source>This recording is currently Available</source>
- <translation>This recording is currently Available</translation>
-+ <translation>This Recording Is Currently Available</translation>
++ <translation>This Recording is Currently Available</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/playbackbox.cpp" line="2709"/>
@@ -11593,14 +11652,14 @@
+ <location filename="../programs/mythfrontend/playbackbox.cpp" line="2742"/>
<source>This recording is currently being deleted and is unavailable</source>
- <translation>This recording is currently being deleted and is unavailable</translation>
-+ <translation>This Recording Is Currently Being Deleted and Is Unavailable</translation>
++ <translation>This Recording is Currently Being Deleted and is Unavailable</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/playbackbox.cpp" line="2717"/>
+ <location filename="../programs/mythfrontend/playbackbox.cpp" line="2748"/>
<source>This recording has been deleted and is unavailable</source>
- <translation>This recording has been deleted and is unavailable</translation>
-+ <translation>This Recording Has Been Deleted and Is Unavailable</translation>
++ <translation>This Recording Has Been Deleted and is Unavailable</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/playbackbox.cpp" line="2723"/>
@@ -11614,14 +11673,14 @@
+ <location filename="../programs/mythfrontend/playbackbox.cpp" line="2760"/>
<source>The file for this recording is empty.</source>
- <translation>The file for this recording is empty.</translation>
-+ <translation>The File for This Recording Is Empty</translation>
++ <translation>The File for This Recording is Empty</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/playbackbox.cpp" line="2735"/>
+ <location filename="../programs/mythfrontend/playbackbox.cpp" line="2766"/>
<source>This recording is not yet available.</source>
- <translation>This recording is not yet available.</translation>
-+ <translation>This Recording Is Not Yet Available</translation>
++ <translation>This Recording is Not Yet Available</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/playbackbox.cpp" line="2747"/>
@@ -11802,8 +11861,10 @@
+ <location filename="../programs/mythfrontend/playbackbox.cpp" line="2824"/>
<source>There is %n item(s) in the playlist. Actions affect all items in the playlist</source>
<translation>
- <numerusform>There is %n item in the playlist. Actions affect all items in the playlist</numerusform>
-@@ -13283,220 +13670,233 @@
+- <numerusform>There is %n item in the playlist. Actions affect all items in the playlist</numerusform>
+- <numerusform>There are %n items in the playlist. Actions affect all items in the playlist</numerusform>
++ <numerusform>There is %n item in the playlist. Actions affect all items in the playlist.</numerusform>
++ <numerusform>There are %n items in the playlist. Actions affect all items in the playlist.</numerusform>
</translation>
</message>
<message>
@@ -11846,14 +11907,14 @@
+ <numerusform>There is %n recording in this display group, which consumes %1 GiB.</numerusform>
+ <numerusform>There are %n recordings in this display group, which consume %1 GiB.</numerusform>
+ </translation>
- </message>
- <message>
-- <location filename="../programs/mythfrontend/playbackbox.cpp" line="2996"/>
++ </message>
++ <message>
+ <location filename="../programs/mythfrontend/playbackbox.cpp" line="744"/>
+ <source>There is no recording in this display group.</source>
+ <translation>There Are No Recordings in This Display Group</translation>
-+ </message>
-+ <message>
+ </message>
+ <message>
+- <location filename="../programs/mythfrontend/playbackbox.cpp" line="2996"/>
+ <location filename="../programs/mythfrontend/playbackbox.cpp" line="3027"/>
<source>Do not preserve this episode</source>
- <translation>Do not preserve this episode</translation>
@@ -12108,7 +12169,7 @@
<source>%1 [%n item(s)]</source>
<translation>
<numerusform>%1 [%n item]</numerusform>
-@@ -13504,32 +13904,32 @@
+@@ -13504,32 +13924,32 @@
</translation>
</message>
<message>
@@ -12147,7 +12208,7 @@
<source>New Recording Group</source>
<translation>New Recording Group</translation>
</message>
-@@ -13537,18 +13937,22 @@
+@@ -13537,18 +13957,22 @@
<context>
<name>PlaybackProfileConfig</name>
<message>
@@ -12174,7 +12235,7 @@
<source>Add New Entry</source>
<translation>Add New Entry</translation>
</message>
-@@ -13556,662 +13960,798 @@
+@@ -13556,662 +13980,808 @@
<context>
<name>PlaybackProfileConfigs</name>
<message>
@@ -13066,6 +13127,16 @@
<message>
- <location filename="../programs/mythfrontend/globalsettings.cpp" line="3909"/>
- <location filename="../programs/mythfrontend/globalsettings.cpp" line="3941"/>
++ <location filename="../programs/mythfrontend/globalsettings.cpp" line="3874"/>
++ <source>Scaling</source>
++ <translation>Scaling</translation>
++ </message>
++ <message>
++ <location filename="../programs/mythfrontend/globalsettings.cpp" line="3897"/>
++ <source>No scaling</source>
++ <translation>No Scaling</translation>
++ </message>
++ <message>
+ <location filename="../programs/mythfrontend/globalsettings.cpp" line="4001"/>
+ <source>Playback settings</source>
+ <translation>Playback Settings</translation>
@@ -13179,7 +13250,7 @@
</message>
</context>
<context>
-@@ -14224,12 +14764,12 @@
+@@ -14224,12 +14794,12 @@
<message>
<location filename="../programs/mythfrontend/videoplayersettings.cpp" line="92"/>
<source>This can be any command to launch a DVD player. Internal is the default. For other players, %d will be substituted for the DVD device (e.g. /dev/dvd).</source>
@@ -13194,7 +13265,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/videoplayersettings.cpp" line="101"/>
-@@ -14249,12 +14789,12 @@
+@@ -14249,12 +14819,12 @@
<message>
<location filename="../programs/mythfrontend/videoplayersettings.cpp" line="112"/>
<source>Exit without saving settings</source>
@@ -13209,7 +13280,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/videoplayersettings.cpp" line="170"/>
-@@ -14308,12 +14848,21 @@
+@@ -14308,12 +14878,21 @@
<context>
<name>ProfileGroup</name>
<message>
@@ -13222,19 +13293,19 @@
+ <location filename="../libs/libmythtv/profilegroup.cpp" line="47"/>
+ <source>Profile Group</source>
+ <translation>Profile Group</translation>
- </message>
- <message>
-- <location filename="../libs/libmythtv/profilegroup.cpp" line="168"/>
++ </message>
++ <message>
+ <location filename="../libs/libmythtv/profilegroup.cpp" line="171"/>
+ <source>Profiles</source>
+ <translation>Profiles</translation>
-+ </message>
-+ <message>
+ </message>
+ <message>
+- <location filename="../libs/libmythtv/profilegroup.cpp" line="168"/>
+ <location filename="../libs/libmythtv/profilegroup.cpp" line="180"/>
<source>Transcoders</source>
<translation>Transcoders</translation>
</message>
-@@ -14321,52 +14870,52 @@
+@@ -14321,52 +14900,52 @@
<context>
<name>ProfileGroupEditor</name>
<message>
@@ -13301,7 +13372,7 @@
<source>%n star(s)</source>
<translation>
<numerusform>%n star</numerusform>
-@@ -14374,199 +14923,208 @@
+@@ -14374,199 +14953,204 @@
</translation>
</message>
<message>
@@ -13372,10 +13443,6 @@
</message>
<message>
- <location filename="../programs/mythfrontend/progdetails.cpp" line="328"/>
-+ <source>Damaged</source>
-+ <translation type="vanished">Damaged</translation>
-+ </message>
-+ <message>
+ <location filename="../programs/mythfrontend/progdetails.cpp" line="291"/>
<source>CC</source>
<comment>Closed Captioned</comment>
@@ -13549,7 +13616,7 @@
<source>%n hour(s)</source>
<translation>
<numerusform>%n hour</numerusform>
-@@ -14574,133 +15132,126 @@
+@@ -14574,133 +15158,126 @@
</translation>
</message>
<message>
@@ -13709,7 +13776,7 @@
</message>
</context>
<context>
-@@ -14794,7 +15345,7 @@
+@@ -14794,7 +15371,7 @@
<message>
<location filename="../programs/mythfrontend/progfind.cpp" line="371"/>
<source>Select a letter...</source>
@@ -13718,7 +13785,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/progfind.cpp" line="373"/>
-@@ -14804,7 +15355,7 @@
+@@ -14804,7 +15381,7 @@
<message>
<location filename="../programs/mythfrontend/progfind.cpp" line="382"/>
<source>Select a program...</source>
@@ -13727,7 +13794,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/progfind.cpp" line="384"/>
-@@ -14951,7 +15502,7 @@
+@@ -14951,7 +15528,7 @@
<message>
<location filename="../programs/mythfrontend/proglist.cpp" line="519"/>
<source>Start search from date and time</source>
@@ -13736,7 +13803,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/proglist.cpp" line="766"/>
-@@ -14971,12 +15522,12 @@
+@@ -14971,12 +15548,12 @@
<message>
<location filename="../programs/mythfrontend/proglist.cpp" line="326"/>
<source>Sort By Title</source>
@@ -13751,7 +13818,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/proglist.cpp" line="489"/>
-@@ -15001,7 +15552,7 @@
+@@ -15001,7 +15578,7 @@
<message>
<location filename="../programs/mythfrontend/proglist.cpp" line="494"/>
<source>Select a search stored from</source>
@@ -13760,7 +13827,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/proglist.cpp" line="495"/>
-@@ -15027,14 +15578,14 @@
+@@ -15027,14 +15604,14 @@
</translation>
</message>
<message>
@@ -13778,7 +13845,7 @@
<source>%1 of %2</source>
<comment>Current position in list where %1 is the position, %2 is the total count</comment>
<translation>%1 of %2</translation>
-@@ -15062,22 +15613,22 @@
+@@ -15062,22 +15639,22 @@
<message>
<location filename="../programs/mythfrontend/proglist.cpp" line="761"/>
<source>Allow this episode to re-record</source>
@@ -13805,7 +13872,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/proglist.cpp" line="940"/>
-@@ -15211,43 +15762,43 @@
+@@ -15211,43 +15788,43 @@
<location filename="../programs/mythfrontend/programrecpriority.cpp" line="663"/>
<location filename="../programs/mythfrontend/programrecpriority.cpp" line="743"/>
<source>Sort By Title</source>
@@ -13856,7 +13923,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/programrecpriority.cpp" line="728"/>
-@@ -15284,13 +15835,13 @@
+@@ -15284,13 +15861,13 @@
<context>
<name>QObject</name>
<message>
@@ -13868,35 +13935,35 @@
<message numerus="yes">
- <location filename="../libs/libmyth/programinfo.cpp" line="1697"/>
- <location filename="../libs/libmyth/programinfo.cpp" line="1702"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="1720"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="1725"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="1711"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="1716"/>
<source>%n hour(s)</source>
<translation>
<numerusform>%n hour</numerusform>
-@@ -15298,8 +15849,8 @@
+@@ -15298,8 +15875,8 @@
</translation>
</message>
<message numerus="yes">
- <location filename="../libs/libmyth/programinfo.cpp" line="1686"/>
- <location filename="../libs/libmyth/programinfo.cpp" line="1695"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="1700"/>
+ <location filename="../libs/libmyth/programinfo.cpp" line="1709"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="1718"/>
<source>%n minute(s)</source>
<translation>
<numerusform>%n minute</numerusform>
-@@ -15307,24 +15858,24 @@
+@@ -15307,24 +15884,25 @@
</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="1035"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="1036"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="1027"/>
+ <location filename="../libs/libmythmetadata/metadatacommon.h" line="255"/>
<source>Manual Record</source>
<translation>Manual Record</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="1725"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="1748"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="1739"/>
<source>Re-Record</source>
- <translation>Re-Record</translation>
+ <translation>Re-record</translation>
@@ -13905,18 +13972,19 @@
- <location filename="../libs/libmyth/programinfo.cpp" line="1767"/>
- <location filename="../libs/libmyth/programinfo.cpp" line="1772"/>
- <location filename="../libs/libmyth/programtypes.cpp" line="212"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="1790"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="1795"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="1781"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="1786"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="172"/>
<source>Repeat</source>
<translation>Repeat</translation>
</message>
<message numerus="yes">
- <location filename="../libs/libmyth/programinfo.cpp" line="1795"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="1818"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="1809"/>
<source>%n star(s)</source>
<translation>
<numerusform>%n star</numerusform>
-@@ -15333,60 +15884,57 @@
+@@ -15333,60 +15911,60 @@
</message>
<message>
<location filename="../libs/libmythtv/channelinfo.cpp" line="280"/>
@@ -13937,8 +14005,10 @@
- <location filename="../libs/libmyth/programinfo.cpp" line="4980"/>
- <location filename="../libs/libmyth/programtypes.cpp" line="228"/>
- <location filename="../libs/libmyth/programtypes.cpp" line="231"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="3134"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5003"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="3125"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="4994"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="188"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="191"/>
<location filename="../libs/libmythtv/videoouttypes.h" line="137"/>
<location filename="../libs/libmythtv/videoouttypes.h" line="160"/>
- <location filename="../programs/mythfrontend/statusbox.cpp" line="1053"/>
@@ -13948,48 +14018,49 @@
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="3115"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="3138"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="3129"/>
<source>Playing</source>
<translation>Playing</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="3122"/>
- <location filename="../libs/libmyth/programtypes.cpp" line="185"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="3145"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="3136"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="143"/>
<source>Recording</source>
<translation>Recording</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="3130"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="3153"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="3144"/>
<source>Transcoding</source>
<translation>Transcoding</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="3117"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="3140"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="3131"/>
<source>PIP</source>
<translation>PIP</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="1847"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="1870"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="1861"/>
<source>Blu-ray Disc</source>
<translation>Blu-ray Disc</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="3119"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="3142"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="3133"/>
<source>PBP</source>
<translation>PBP</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="3124"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="3147"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="3138"/>
<source>File transfer</source>
<translation>File transfer</translation>
</message>
-@@ -15436,47 +15984,47 @@
+@@ -15436,47 +16014,47 @@
<message>
<location filename="../libs/libmyth/recordingtypes.cpp" line="55"/>
<source>Record only this showing</source>
@@ -14046,711 +14117,723 @@
</message>
<message>
<location filename="../libs/libmyth/recordingtypes.cpp" line="137"/>
-@@ -15513,655 +16061,585 @@
+@@ -15513,655 +16091,665 @@
<translation>Override Recording</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="176"/>
<location filename="../libs/libmyth/recordingtypes.cpp" line="45"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="134"/>
<source>Not Recording</source>
<translation>Not Recording</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="181"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="139"/>
<source>Aborted</source>
-- <translation>Aborted</translation>
-+ <translation type="vanished">Aborted</translation>
+ <translation>Aborted</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="183"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="141"/>
<source>Recorded</source>
-- <translation>Recorded</translation>
-+ <translation type="vanished">Recorded</translation>
+ <translation>Recorded</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="187"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="145"/>
<source>Tuning</source>
-- <translation>Tuning</translation>
-+ <translation type="vanished">Tuning</translation>
+ <translation>Tuning</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="191"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="149"/>
<source>Will Record</source>
-- <translation>Will Record</translation>
-+ <translation type="vanished">Will Record</translation>
+ <translation>Will Record</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="193"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="151"/>
++ <source>Pending</source>
++ <translation>Pending</translation>
++ </message>
++ <message>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="153"/>
<source>Don&apos;t Record</source>
-- <translation>Don&apos;t Record</translation>
-+ <translation type="vanished">Don&apos;t Record</translation>
+ <translation>Don&apos;t Record</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="195"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="155"/>
<source>Previously Recorded</source>
-- <translation>Previously Recorded</translation>
-+ <translation type="vanished">Previously Recorded</translation>
+ <translation>Previously Recorded</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="197"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="157"/>
<source>Currently Recorded</source>
-- <translation>Currently Recorded</translation>
-+ <translation type="vanished">Currently Recorded</translation>
+ <translation>Currently Recorded</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="199"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="159"/>
<source>Earlier Showing</source>
-- <translation>Earlier Showing</translation>
-+ <translation type="vanished">Earlier Showing</translation>
+ <translation>Earlier Showing</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="201"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="161"/>
<source>Max Recordings</source>
-- <translation>Max Recordings</translation>
-+ <translation type="vanished">Max Recordings</translation>
+ <translation>Max Recordings</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="203"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="163"/>
<source>Manual Cancel</source>
-- <translation>Manual Cancel</translation>
-+ <translation type="vanished">Manual Cancel</translation>
+ <translation>Manual Cancel</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="206"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="166"/>
<source>Missed</source>
-- <translation>Missed</translation>
-+ <translation type="vanished">Missed</translation>
+ <translation>Missed</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="208"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="168"/>
<source>Conflicting</source>
-- <translation>Conflicting</translation>
-+ <translation type="vanished">Conflicting</translation>
+ <translation>Conflicting</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="210"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="170"/>
<source>Later Showing</source>
-- <translation>Later Showing</translation>
-+ <translation type="vanished">Later Showing</translation>
+ <translation>Later Showing</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="214"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="174"/>
<source>Inactive</source>
-- <translation>Inactive</translation>
-+ <translation type="vanished">Inactive</translation>
+ <translation>Inactive</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="216"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="176"/>
<source>Low Disk Space</source>
-- <translation>Low Disk Space</translation>
-+ <translation type="vanished">Low Disk Space</translation>
+ <translation>Low Disk Space</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="218"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="178"/>
<source>Tuner Busy</source>
-- <translation>Tuner Busy</translation>
-+ <translation type="vanished">Tuner Busy</translation>
+ <translation>Tuner Busy</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="220"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="180"/>
<source>Recorder Failed</source>
-- <translation>Recorder Failed</translation>
-+ <translation type="vanished">Recorder Failed</translation>
+ <translation>Recorder Failed</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="222"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="182"/>
<source>Not Listed</source>
-- <translation>Not Listed</translation>
-+ <translation type="vanished">Not Listed</translation>
+ <translation>Not Listed</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="224"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="184"/>
<source>Never Record</source>
-- <translation>Never Record</translation>
-+ <translation type="vanished">Never Record</translation>
+ <translation>Never Record</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="226"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="186"/>
<source>Recorder Off-Line</source>
-- <translation>Recorder Off-Line</translation>
-+ <translation type="vanished">Recorder Off-Line</translation>
+ <translation>Recorder Off-Line</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="239"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="199"/>
<source>This showing is not scheduled to record</source>
- <translation>This showing is not scheduled to record</translation>
-+ <translation type="vanished">This showing is not scheduled to record</translation>
++ <translation>This showing is not scheduled to record.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="249"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="209"/>
<source>This showing will be recorded.</source>
-- <translation>This showing will be recorded.</translation>
-+ <translation type="vanished">This showing will be recorded.</translation>
+ <translation>This showing will be recorded.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="252"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="212"/>
++ <source>This showing is about to record.</source>
++ <translation>This showing is about to record.</translation>
++ </message>
++ <message>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="215"/>
<source>This showing is being recorded.</source>
-- <translation>This showing is being recorded.</translation>
-+ <translation type="vanished">This showing is being recorded.</translation>
+ <translation>This showing is being recorded.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="262"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="225"/>
<source>This showing was recorded.</source>
-- <translation>This showing was recorded.</translation>
-+ <translation type="vanished">This showing was recorded.</translation>
+ <translation>This showing was recorded.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="265"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="228"/>
<source>This showing was recorded but was aborted before completion.</source>
-- <translation>This showing was recorded but was aborted before completion.</translation>
-+ <translation type="vanished">This showing was recorded but was aborted before completion.</translation>
+ <translation>This showing was recorded but was aborted before completion.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="270"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="233"/>
<source>This showing was not recorded because the master backend was not running.</source>
-- <translation>This showing was not recorded because the master backend was not running.</translation>
-+ <translation type="vanished">This showing was not recorded because the master backend was not running.</translation>
+ <translation>This showing was not recorded because the master backend was not running.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="278"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="241"/>
<source>This showing was not recorded because there wasn&apos;t enough disk space.</source>
-- <translation>This showing was not recorded because there wasn&apos;t enough disk space.</translation>
-+ <translation type="vanished">This showing was not recorded because there wasn&apos;t enough disk space.</translation>
+ <translation>This showing was not recorded because there wasn&apos;t enough disk space.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="282"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="245"/>
<source>This showing was not recorded because the recorder was already in use.</source>
-- <translation>This showing was not recorded because the recorder was already in use.</translation>
-+ <translation type="vanished">This showing was not recorded because the recorder was already in use.</translation>
+ <translation>This showing was not recorded because the recorder was already in use.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="286"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="249"/>
<source>This showing was not recorded because the recorder failed.</source>
-- <translation>This showing was not recorded because the recorder failed.</translation>
-+ <translation type="vanished">This showing was not recorded because the recorder failed.</translation>
+ <translation>This showing was not recorded because the recorder failed.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="330"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="293"/>
<source>this episode will be recorded at a later time instead.</source>
-- <translation>this episode will be recorded at a later time instead.</translation>
-+ <translation type="vanished">this episode will be recorded at a later time instead.</translation>
+ <translation>this episode will be recorded at a later time instead.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="347"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="310"/>
<source>the required recorder is off-line.</source>
-- <translation>the required recorder is off-line.</translation>
-+ <translation type="vanished">the required recorder is off-line.</translation>
+ <translation>the required recorder is off-line.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="274"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="237"/>
<source>This showing was not recorded because it was manually cancelled.</source>
-- <translation>This showing was not recorded because it was manually cancelled.</translation>
-+ <translation type="vanished">This showing was not recorded because it was manually cancelled.</translation>
+ <translation>This showing was not recorded because it was manually cancelled.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="96"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="51"/>
<source>A</source>
<comment>RecStatusChar RecStatus::Aborted</comment>
-- <translation>A</translation>
-+ <translation type="vanished">A</translation>
+ <translation>A</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="99"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="54"/>
<source>R</source>
<comment>RecStatusChar RecStatus::Recorded</comment>
-- <translation>R</translation>
-+ <translation type="vanished">R</translation>
+ <translation>R</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="114"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="72"/>
<source>X</source>
<comment>RecStatusChar RecStatus::DontRecord</comment>
-- <translation>X</translation>
-+ <translation type="vanished">X</translation>
+ <translation>X</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="117"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="75"/>
<source>P</source>
<comment>RecStatusChar RecStatus::PreviousRecording</comment>
-- <translation>P</translation>
-+ <translation type="vanished">P</translation>
+ <translation>P</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="120"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="78"/>
<source>R</source>
<comment>RecStatusChar RecStatus::CurrentRecording</comment>
-- <translation>R</translation>
-+ <translation type="vanished">R</translation>
+ <translation>R</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="123"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="81"/>
<source>E</source>
<comment>RecStatusChar RecStatus::EarlierShowing</comment>
-- <translation>E</translation>
-+ <translation type="vanished">E</translation>
+ <translation>E</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="126"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="84"/>
<source>T</source>
<comment>RecStatusChar RecStatus::TooManyRecordings</comment>
-- <translation>T</translation>
-+ <translation type="vanished">T</translation>
+ <translation>T</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="129"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="87"/>
<source>c</source>
<comment>RecStatusChar RecStatus::Cancelled</comment>
-- <translation>c</translation>
-+ <translation type="vanished">c</translation>
+ <translation>c</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="133"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="91"/>
<source>M</source>
<comment>RecStatusChar RecStatus::Missed</comment>
-- <translation>M</translation>
-+ <translation type="vanished">M</translation>
+ <translation>M</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="136"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="94"/>
<source>C</source>
<comment>RecStatusChar RecStatus::Conflict</comment>
-- <translation>C</translation>
-+ <translation type="vanished">C</translation>
+ <translation>C</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="139"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="97"/>
<source>L</source>
<comment>RecStatusChar RecStatus::LaterShowing</comment>
-- <translation>L</translation>
-+ <translation type="vanished">L</translation>
+ <translation>L</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="142"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="100"/>
<source>r</source>
<comment>RecStatusChar RecStatus::Repeat</comment>
-- <translation>r</translation>
-+ <translation type="vanished">r</translation>
+ <translation>r</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="145"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="103"/>
<source>x</source>
<comment>RecStatusChar RecStatus::Inactive</comment>
-- <translation>x</translation>
-+ <translation type="vanished">x</translation>
+ <translation>x</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="148"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="106"/>
<source>K</source>
<comment>RecStatusChar RecStatus::LowDiskSpace</comment>
-- <translation>K</translation>
-+ <translation type="vanished">K</translation>
+ <translation>K</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="151"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="109"/>
<source>B</source>
<comment>RecStatusChar RecStatus::TunerBusy</comment>
-- <translation>B</translation>
-+ <translation type="vanished">B</translation>
+ <translation>B</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="154"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="112"/>
<source>f</source>
<comment>RecStatusChar RecStatus::Failed</comment>
-- <translation>f</translation>
-+ <translation type="vanished">f</translation>
+ <translation>f</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="157"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="115"/>
<source>N</source>
<comment>RecStatusChar RecStatus::NotListed</comment>
-- <translation>N</translation>
-+ <translation type="vanished">N</translation>
+ <translation>N</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="160"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="118"/>
<source>V</source>
<comment>RecStatusChar RecStatus::NeverRecord</comment>
-- <translation>V</translation>
-+ <translation type="vanished">V</translation>
+ <translation>V</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="163"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="121"/>
<source>F</source>
<comment>RecStatusChar RecStatus::Offline</comment>
-- <translation>F</translation>
-+ <translation type="vanished">F</translation>
+ <translation>F</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="189"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="147"/>
<source>Failing</source>
-- <translation>Failing</translation>
-+ <translation type="vanished">Failing</translation>
+ <translation>Failing</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="258"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="221"/>
<source>The showing is failing to record because of errors.</source>
-- <translation>The showing is failing to record because of errors.</translation>
-+ <translation type="vanished">The showing is failing to record because of errors.</translation>
+ <translation>The showing is failing to record because of errors.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="351"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="314"/>
<source>This showing will not be recorded.</source>
-- <translation>This showing will not be recorded.</translation>
-+ <translation type="vanished">This showing will not be recorded.</translation>
+ <translation>This showing will not be recorded.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="353"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="316"/>
<source>This showing was not recorded.</source>
-- <translation>This showing was not recorded.</translation>
-+ <translation type="vanished">This showing was not recorded.</translation>
+ <translation>This showing was not recorded.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="290"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="253"/>
<source>The status of this showing is unknown.</source>
-- <translation>The status of this showing is unknown.</translation>
-+ <translation type="vanished">The status of this showing is unknown.</translation>
+ <translation>The status of this showing is unknown.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="255"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="218"/>
<source>The showing is being tuned.</source>
-- <translation>The showing is being tuned.</translation>
-+ <translation type="vanished">The showing is being tuned.</translation>
+ <translation>The showing is being tuned.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="298"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="261"/>
<source>This showing will not be recorded because </source>
-- <translation>This showing will not be recorded because </translation>
-+ <translation type="vanished">This showing will not be recorded because </translation>
+ <translation>This showing will not be recorded because </translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="300"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="263"/>
<source>This showing was not recorded because </source>
-- <translation>This showing was not recorded because </translation>
-+ <translation type="vanished">This showing was not recorded because </translation>
+ <translation>This showing was not recorded because </translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="305"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="268"/>
<source>it was manually set to not record.</source>
-- <translation>it was manually set to not record.</translation>
-+ <translation type="vanished">it was manually set to not record.</translation>
+ <translation>it was manually set to not record.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="308"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="271"/>
<source>this episode was previously recorded according to the duplicate policy chosen for this title.</source>
-- <translation>this episode was previously recorded according to the duplicate policy chosen for this title.</translation>
-+ <translation type="vanished">this episode was previously recorded according to the duplicate policy chosen for this title.</translation>
+ <translation>this episode was previously recorded according to the duplicate policy chosen for this title.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="313"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="276"/>
<source>this episode was previously recorded and is still available in the list of recordings.</source>
-- <translation>this episode was previously recorded and is still available in the list of recordings.</translation>
-+ <translation type="vanished">this episode was previously recorded and is still available in the list of recordings.</translation>
+ <translation>this episode was previously recorded and is still available in the list of recordings.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="318"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="281"/>
<source>this episode will be recorded at an earlier time instead.</source>
-- <translation>this episode will be recorded at an earlier time instead.</translation>
-+ <translation type="vanished">this episode will be recorded at an earlier time instead.</translation>
+ <translation>this episode will be recorded at an earlier time instead.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="322"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="285"/>
<source>too many recordings of this program have already been recorded.</source>
-- <translation>too many recordings of this program have already been recorded.</translation>
-+ <translation type="vanished">too many recordings of this program have already been recorded.</translation>
+ <translation>too many recordings of this program have already been recorded.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="326"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="289"/>
<source>another program with a higher priority will be recorded.</source>
-- <translation>another program with a higher priority will be recorded.</translation>
-+ <translation type="vanished">another program with a higher priority will be recorded.</translation>
+ <translation>another program with a higher priority will be recorded.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="334"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="297"/>
<source>this episode is a repeat.</source>
-- <translation>this episode is a repeat.</translation>
-+ <translation type="vanished">this episode is a repeat.</translation>
+ <translation>this episode is a repeat.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="337"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="300"/>
<source>this recording rule is inactive.</source>
-- <translation>this recording rule is inactive.</translation>
-+ <translation type="vanished">this recording rule is inactive.</translation>
+ <translation>this recording rule is inactive.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="340"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="303"/>
<source>this rule does not match any showings in the current program listings.</source>
-- <translation>this rule does not match any showings in the current program listings.</translation>
-+ <translation type="vanished">this rule does not match any showings in the current program listings.</translation>
+ <translation>this rule does not match any showings in the current program listings.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programtypes.cpp" line="344"/>
++ <location filename="../libs/libmythservicecontracts/enums/recStatus.cpp" line="307"/>
<source>it was marked to never be recorded.</source>
-- <translation>it was marked to never be recorded.</translation>
-+ <translation type="vanished">it was marked to never be recorded.</translation>
+ <translation>it was marked to never be recorded.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5223"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5246"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5190"/>
<source>Default</source>
<comment>Recording Profile Default</comment>
<translation>Default</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5224"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5247"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5191"/>
<source>High Quality</source>
<comment>Recording Profile High Quality</comment>
<translation>High Quality</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5225"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5248"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5192"/>
<source>Live TV</source>
<comment>Recording Profile Live TV</comment>
<translation>Live TV</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5226"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5249"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5193"/>
<source>Low Quality</source>
<comment>Recording Profile Low Quality</comment>
<translation>Low Quality</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5227"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5250"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5194"/>
<source>Medium Quality</source>
<comment>Recording Profile Medium Quality</comment>
<translation>Medium Quality</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5233"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5256"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5200"/>
<source>CRC IP Recorders</source>
<comment>Recording Profile Group Name</comment>
<translation>CRC IP Recorders</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5235"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5258"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5202"/>
<source>FireWire Input</source>
<comment>Recording Profile Group Name</comment>
<translation>FireWire Input</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5237"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5260"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5204"/>
<source>Freebox Input</source>
<comment>Recording Profile Group Name</comment>
<translation>Freebox Input</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5239"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5262"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5206"/>
<source>Hardware DVB Encoders</source>
<comment>Recording Profile Group Name</comment>
<translation>Hardware DVB Encoders</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5241"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5264"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5208"/>
<source>Hardware HDTV</source>
<comment>Recording Profile Group Name</comment>
<translation>Hardware HDTV</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5243"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5266"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5210"/>
<source>Hardware MJPEG Encoders (Matrox G200-TV, Miro DC10, etc)</source>
<comment>Recording Profile Group Name</comment>
<translation>Hardware MJPEG Encoders (Matrox G200-TV, Miro DC10, etc)</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5245"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5268"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5212"/>
<source>HD-PVR Recorders</source>
<comment>Recording Profile Group Name</comment>
<translation>HD-PVR Recorders</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5247"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5270"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5214"/>
<source>HDHomeRun Recorders</source>
<comment>Recording Profile Group Name</comment>
<translation>HDHomeRun Recorders</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5249"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5272"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5216"/>
<source>MPEG-2 Encoders (PVR-x50, PVR-500)</source>
<comment>Recording Profile Group Name</comment>
<translation>MPEG-2 Encoders (PVR-x50, PVR-500)</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5253"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5276"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5220"/>
<source>Transcoders</source>
<comment>Recording Profile Group Name</comment>
<translation>Transcoders</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5257"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5280"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5224"/>
<source>V4L2 Encoders</source>
<comment>Recording Profile Group Name</comment>
<translation>V4L2 Encoders</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5261"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5284"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5228"/>
<source>All Programs</source>
<comment>Recording Group All Programs</comment>
<translation>All Programs</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5262"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5285"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5229"/>
<source>All</source>
<comment>Recording Group All Programs -- short form</comment>
<translation>All</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5264"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5287"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5231"/>
<source>Default</source>
<comment>Recording Group Default</comment>
<translation>Default</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5265"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5288"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5232"/>
<source>Deleted</source>
<comment>Recording Group Deleted</comment>
<translation>Deleted</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5272"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5295"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5239"/>
<source>Default</source>
<comment>Storage Group Name</comment>
<translation>Default</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="3128"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="3151"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="3142"/>
<source>Commercial Detection</source>
<translation>Commercial Detection</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="1679"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="1702"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="1693"/>
<source>%1 GB</source>
<comment>GigaBytes</comment>
<translation>%1 GB</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="1835"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="1858"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="1849"/>
<source>DVD</source>
<translation>DVD</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="1839"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="1862"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="1853"/>
<source>HTTP Streaming</source>
<translation>HTTP Streaming</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="1843"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="1866"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="1857"/>
<source>RTSP Streaming</source>
<translation>RTSP Streaming</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="1852"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="1875"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="1866"/>
<source>Recording</source>
<comment>Recorded file, object not action</comment>
<translation>Recording</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="3132"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="3155"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="3146"/>
<source>Preview Generation</source>
<translation>Preview Generation</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="3134"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="3157"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="3148"/>
<source>User Job</source>
<translation>User Job</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5228"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5251"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5195"/>
<source>MPEG-2</source>
<comment>Recording Profile MPEG-2</comment>
<translation>MPEG-2</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5229"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5252"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5196"/>
<source>RTjpeg/MPEG-4</source>
<comment>Recording Profile RTjpeg/MPEG-4</comment>
<translation>RTjpeg/MPEG-4</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5251"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5274"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5218"/>
<source>Software Encoders (V4L based)</source>
<comment>Recording Profile Group Name</comment>
<translation>Software Encoders (V4L based)</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5255"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5278"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5222"/>
<source>USB MPEG-4 Encoder (Plextor ConvertX, etc)</source>
<comment>Recording Profile Group Name</comment>
<translation>USB MPEG-4 Encoder (Plextor ConvertX, etc)</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5263"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5286"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5230"/>
<source>Live TV</source>
<comment>Recording Group Live TV</comment>
<translation>Live TV</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5268"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5291"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5235"/>
<source>All Programs - %1</source>
<comment>Show all programs from a specific recording group</comment>
<translation>All Programs - %1</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5273"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5296"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5240"/>
<source>Live TV</source>
<comment>Storage Group Name</comment>
<translation>Live TV</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5274"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5297"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5241"/>
<source>Thumbnails</source>
<comment>Storage Group Name</comment>
<translation>Thumbnails</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5275"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5298"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5242"/>
<source>DB Backups</source>
<comment>Storage Group Name</comment>
<translation>DB Backups</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="5278"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="5301"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="5245"/>
<source>Default</source>
<comment>Playback Group Name</comment>
<translation>Default</translation>
@@ -14821,7 +14904,7 @@
<source>Pre &amp; Post Roll</source>
<translation>Pre &amp; Post Roll</translation>
</message>
-@@ -16222,17 +16700,17 @@
+@@ -16222,17 +16810,17 @@
<message>
<location filename="../libs/libmythtv/decoderbase.cpp" line="1130"/>
<source>Audio track</source>
@@ -14842,7 +14925,7 @@
</message>
<message>
<location filename="../libs/libmythtv/decoderbase.cpp" line="1136"/>
-@@ -16307,208 +16785,212 @@
+@@ -16307,208 +16895,212 @@
<translation>Normal</translation>
</message>
<message>
@@ -14872,8 +14955,8 @@
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="88"/>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="122"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="149"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="196"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="150"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="197"/>
<source>Port</source>
<translation>Port</translation>
</message>
@@ -14886,8 +14969,8 @@
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="346"/>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="367"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="418"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="439"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="419"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="440"/>
<source>Wake command</source>
- <translation>Wake command</translation>
+ <translation>Wake Command</translation>
@@ -14970,7 +15053,7 @@
+ <location filename="../libs/libmyth/mythcontext.cpp" line="1376"/>
<source>Backend is online</source>
- <translation>Backend is online</translation>
-+ <translation>Backend Is Online</translation>
++ <translation>Backend is Online</translation>
</message>
<message>
- <location filename="../libs/libmyth/mythcontext.cpp" line="1134"/>
@@ -15014,8 +15097,8 @@
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="1743"/>
- <location filename="../libs/libmyth/programinfo.cpp" line="1747"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="1766"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="1770"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="1757"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="1761"/>
<location filename="../programs/mythfrontend/programrecpriority.cpp" line="125"/>
- <location filename="../programs/mythfrontend/scheduleeditor.cpp" line="2421"/>
- <location filename="../programs/mythfrontend/scheduleeditor.cpp" line="2459"/>
@@ -15115,24 +15198,24 @@
<source>, firmware: %2</source>
<translation>, firmware: %2</translation>
</message>
-@@ -16518,13 +17000,13 @@
+@@ -16518,13 +17110,13 @@
<translation>Sports</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="1831"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="1854"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="1845"/>
<source>Video</source>
<translation>Video</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="2012"/>
- <location filename="../programs/mythfrontend/guidegrid.cpp" line="2319"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2022"/>
-+ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2326"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2024"/>
++ <location filename="../programs/mythfrontend/guidegrid.cpp" line="2328"/>
<source>All Channels</source>
<translation>All Channels</translation>
</message>
-@@ -16541,12 +17023,12 @@
+@@ -16541,12 +17133,12 @@
<message>
<location filename="../libs/libmythtv/channelscan/channelscan_sm.cpp" line="293"/>
<source>Failed to add channel %1</source>
@@ -15147,7 +15230,7 @@
</message>
<message>
<location filename="../libs/libmythtv/channelscan/channelscan_sm.cpp" line="895"/>
-@@ -16556,7 +17038,7 @@
+@@ -16556,7 +17148,7 @@
<message>
<location filename="../libs/libmythtv/channelscan/channelscan_sm.cpp" line="896"/>
<source>Unknown decryption status</source>
@@ -15156,7 +15239,7 @@
</message>
<message>
<location filename="../libs/libmythtv/channelscan/channelscan_sm.cpp" line="898"/>
-@@ -16571,41 +17053,41 @@
+@@ -16571,41 +17163,41 @@
<message>
<location filename="../libs/libmythtv/channelscan/channelscan_sm.cpp" line="935"/>
<source>%1 -- Timed out</source>
@@ -15206,7 +15289,7 @@
<source>: Found %n</source>
<translation>
<numerusform>: Found %n</numerusform>
-@@ -16613,28 +17095,28 @@
+@@ -16613,28 +17205,28 @@
</translation>
</message>
<message>
@@ -15237,20 +15320,20 @@
<message>
<location filename="../libs/libmythtv/channelscan/frequencytablesetting.cpp" line="38"/>
- <location filename="../libs/libmythtv/videosource.cpp" line="1276"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1315"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1318"/>
<source>Broadcast</source>
<translation>Broadcast</translation>
</message>
-@@ -16648,7 +17130,7 @@
+@@ -16648,7 +17240,7 @@
<location filename="../libs/libmythtv/channelscan/frequencytablesetting.cpp" line="40"/>
<location filename="../libs/libmythtv/channelscan/frequencytablesetting.cpp" line="42"/>
<location filename="../libs/libmythtv/channelscan/frequencytablesetting.cpp" line="44"/>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="522"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="594"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="595"/>
<source>High</source>
<translation>High</translation>
</message>
-@@ -16758,9 +17240,9 @@
+@@ -16758,9 +17350,9 @@
<translation>France</translation>
</message>
<message>
@@ -15263,7 +15346,31 @@
<source>Frequency</source>
<translation>Frequency</translation>
</message>
-@@ -16807,8 +17289,8 @@
+@@ -16785,30 +17377,30 @@
+ <translation>Hue</translation>
+ </message>
+ <message>
+- <location filename="../libs/libmythtv/recorders/dtvsignalmonitor.cpp" line="49"/>
+ <location filename="../libs/libmythtv/recorders/dtvsignalmonitor.cpp" line="50"/>
+ <location filename="../libs/libmythtv/recorders/dtvsignalmonitor.cpp" line="51"/>
+ <location filename="../libs/libmythtv/recorders/dtvsignalmonitor.cpp" line="52"/>
+ <location filename="../libs/libmythtv/recorders/dtvsignalmonitor.cpp" line="53"/>
+ <location filename="../libs/libmythtv/recorders/dtvsignalmonitor.cpp" line="54"/>
+ <location filename="../libs/libmythtv/recorders/dtvsignalmonitor.cpp" line="55"/>
++ <location filename="../libs/libmythtv/recorders/dtvsignalmonitor.cpp" line="56"/>
+ <source>Seen</source>
+ <translation>Seen</translation>
+ </message>
+ <message>
+- <location filename="../libs/libmythtv/recorders/dtvsignalmonitor.cpp" line="56"/>
+ <location filename="../libs/libmythtv/recorders/dtvsignalmonitor.cpp" line="57"/>
+ <location filename="../libs/libmythtv/recorders/dtvsignalmonitor.cpp" line="58"/>
+ <location filename="../libs/libmythtv/recorders/dtvsignalmonitor.cpp" line="59"/>
+ <location filename="../libs/libmythtv/recorders/dtvsignalmonitor.cpp" line="60"/>
+ <location filename="../libs/libmythtv/recorders/dtvsignalmonitor.cpp" line="61"/>
+ <location filename="../libs/libmythtv/recorders/dtvsignalmonitor.cpp" line="62"/>
++ <location filename="../libs/libmythtv/recorders/dtvsignalmonitor.cpp" line="63"/>
+ <source>Matching</source>
<translation>Matching</translation>
</message>
<message>
@@ -15274,7 +15381,7 @@
<source>Analog</source>
<translation>Analog</translation>
</message>
-@@ -16824,532 +17306,523 @@
+@@ -16824,532 +17416,523 @@
<translation>Play</translation>
</message>
<message>
@@ -15962,7 +16069,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/programrecpriority.cpp" line="123"/>
-@@ -17357,410 +17830,418 @@
+@@ -17357,410 +17940,418 @@
<translation>Default (Template)</translation>
</message>
<message>
@@ -16493,7 +16600,7 @@
</message>
<message>
<location filename="../libs/libmythtv/tv.cpp" line="55"/>
-@@ -17786,448 +18267,464 @@
+@@ -17786,448 +18377,464 @@
<message>
<location filename="../libs/libmythtv/tv.cpp" line="85"/>
<source>Auto-Skip OFF</source>
@@ -16514,14 +16621,14 @@
</message>
<message>
- <location filename="../libs/libmythtv/tv_rec.cpp" line="3731"/>
-+ <location filename="../libs/libmythtv/tv_rec.cpp" line="3750"/>
++ <location filename="../libs/libmythtv/tv_rec.cpp" line="3703"/>
<source>On known multiplex...</source>
- <translation>On known multiplex...</translation>
+ <translation>On Known Multiplex...</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tvremoteutil.cpp" line="467"/>
-+ <location filename="../libs/libmythtv/tvremoteutil.cpp" line="443"/>
++ <location filename="../libs/libmythtv/tvremoteutil.cpp" line="456"/>
<source>Error querying recorder state</source>
- <translation>Error querying recorder state</translation>
+ <translation>Error Querying Recorder State</translation>
@@ -17063,7 +17170,7 @@
<source>Uses OpenMAX to alpha blend the OSD onto the video.</source>
<translation>Uses OpenMAX to alpha blend the OSD onto the video.</translation>
</message>
-@@ -18388,217 +18885,230 @@
+@@ -18388,217 +18995,240 @@
<translation>Volume</translation>
</message>
<message>
@@ -17092,7 +17199,7 @@
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="170"/>
+ <location filename="../libs/libmythtv/videosource.cpp" line="382"/>
+ <location filename="../libs/libmythtv/videosource.cpp" line="397"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="242"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="243"/>
<source>Channel frequency table</source>
- <translation>Channel frequency table</translation>
+ <translation>Channel Frequency Table</translation>
@@ -17168,6 +17275,11 @@
<source>No grabber</source>
- <translation>No grabber</translation>
+ <translation>No Grabber</translation>
++ </message>
++ <message>
++ <location filename="../libs/libmythtv/videosource.cpp" line="663"/>
++ <source>This will usually only work with ATSC or DVB channels, and generally provides data only for the next few days.</source>
++ <translation>This will usually only work with ATSC or DVB channels, and generally provides data only for the next few days.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="747"/>
@@ -17182,10 +17294,15 @@
<source>VBI device</source>
- <translation>VBI device</translation>
+ <translation>VBI Device</translation>
++ </message>
++ <message>
++ <location filename="../libs/libmythtv/videosource.cpp" line="969"/>
++ <source>Specify the command to run, with any needed arguments.</source>
++ <translation>Specify the command to run, with any needed arguments.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="948"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="990"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="993"/>
<source>Audio device</source>
- <translation>Audio device</translation>
+ <translation>Audio Device</translation>
@@ -17196,30 +17313,30 @@
- <location filename="../libs/libmythtv/videosource.cpp" line="3073"/>
- <location filename="../libs/libmythtv/videosource.cpp" line="3110"/>
- <location filename="../libs/libmythtv/videosource.cpp" line="3121"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1000"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1048"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2994"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3039"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3050"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1003"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1051"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3004"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3049"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3060"/>
<source>(None)</source>
<translation>(None)</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1022"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1062"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1065"/>
<source>Do not adjust volume</source>
- <translation>Do not adjust volume</translation>
+ <translation>Do Not Adjust Volume</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1024"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1064"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1067"/>
<source>Enable this option for budget BT878 based DVB-T cards such as the AverTV DVB-T which require the audio volume to be left alone.</source>
<translation>Enable this option for budget BT878 based DVB-T cards such as the AverTV DVB-T which require the audio volume to be left alone.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1039"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1078"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1081"/>
<source>When you change this setting, the text below should change to the name and type of your card. If the card cannot be opened, an error message will be displayed.</source>
<translation>When you change this setting, the text below should change to the name and type of your card. If the card cannot be opened, an error message will be displayed.</translation>
</message>
@@ -17228,131 +17345,131 @@
- <location filename="../libs/libmythtv/videosource.cpp" line="1526"/>
- <location filename="../libs/libmythtv/videosource.cpp" line="1744"/>
- <location filename="../libs/libmythtv/videosource.cpp" line="1892"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1118"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1555"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1777"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1909"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1121"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1558"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1780"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1912"/>
<source>Warning: already in use</source>
- <translation>Warning: already in use</translation>
+ <translation>Warning: Already in Use</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1107"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1146"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1149"/>
<source>Subtype</source>
<translation>Subtype</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1116"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1156"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1159"/>
<source>Frontend ID</source>
<translation>Frontend ID</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1127"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1168"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1171"/>
<source>Wait for SEQ start header.</source>
- <translation>Wait for SEQ start header.</translation>
+ <translation>Wait for SEQ Start Header</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1142"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1183"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1186"/>
<source>Open DVB card on demand</source>
- <translation>Open DVB card on demand</translation>
+ <translation>Open DVB Card on Demand</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1190"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1230"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1233"/>
<source>GUID</source>
<translation>GUID</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1215"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1254"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1257"/>
<source>Cable box model</source>
- <translation>Cable box model</translation>
+ <translation>Cable Box Model</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1815"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1849"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1852"/>
<source>URL of M3U containing RTSP/RTP/UDP channel URLs.</source>
<translation>URL of M3U containing RTSP/RTP/UDP channel URLs.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2994"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2915"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2925"/>
<source>DVB-T/S/C, ATSC or ISDB-T tuner card</source>
- <translation>DVB-T/S/C, ATSC or ISDB-T tuner card</translation>
+ <translation>DVB-T/S/C, ATSC or ISDB-T Tuner Card</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3002"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2923"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2933"/>
<source>HD-PVR H.264 encoder</source>
- <translation>HD-PVR H.264 encoder</translation>
+ <translation>HD-PVR H.264 Encoder</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3008"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2929"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2939"/>
<source>HDHomeRun networked tuner</source>
- <translation>HDHomeRun networked tuner</translation>
+ <translation>HDHomeRun Networked Tuner</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3023"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2944"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2954"/>
<source>Ceton Cablecard tuner</source>
- <translation>Ceton Cablecard tuner</translation>
+ <translation>Ceton Cablecard Tuner</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3027"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2948"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2958"/>
<source>IPTV recorder</source>
- <translation>IPTV recorder</translation>
+ <translation>IPTV Recorder</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3033"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2954"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2964"/>
<source>Analog to MPEG-2 encoder card (PVR-150/250/350, etc)</source>
- <translation>Analog to MPEG-2 encoder card (PVR-150/250/350, etc)</translation>
+ <translation>Analog to MPEG-2 Encoder Card (PVR-150/250/350, etc)</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3036"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2957"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2967"/>
<source>Analog to MJPEG encoder card (Matrox G200, DC10, etc)</source>
- <translation>Analog to MJPEG encoder card (Matrox G200, DC10, etc)</translation>
+ <translation>Analog to MJPEG Encoder Card (Matrox G200, DC10, etc)</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3038"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2959"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2969"/>
<source>Analog to MPEG-4 encoder (Plextor ConvertX USB, etc)</source>
- <translation>Analog to MPEG-4 encoder (Plextor ConvertX USB, etc)</translation>
+ <translation>Analog to MPEG-4 Encoder (Plextor ConvertX USB, etc)</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3041"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2962"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2972"/>
<source>Analog capture card</source>
- <translation>Analog capture card</translation>
+ <translation>Analog Capture Card</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3179"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3108"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3118"/>
<source>Generic</source>
<translation>Generic</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1233"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1272"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1275"/>
<source>Choose the model that most closely resembles your set top box. Depending on firmware revision SA4200HD may work better for a SA3250HD box.</source>
<translation>Choose the model that most closely resembles your set top box. Depending on firmware revision SA4200HD may work better for a SA3250HD box.</translation>
</message>
@@ -17369,7 +17486,7 @@
<source>You MUST run &apos;mythfilldatabase --manual&apos; the first time,
instead of just &apos;mythfilldatabase&apos;.
Your grabber does not provide channel numbers, so you have to set them manually.</source>
-@@ -18607,472 +19117,481 @@
+@@ -18607,472 +19237,475 @@
Your grabber does not provide channel numbers, so you have to set them manually.</translation>
</message>
<message>
@@ -17380,97 +17497,97 @@
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1037"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1076"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1079"/>
<source>DVB device</source>
- <translation>DVB device</translation>
+ <translation>DVB Device</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1216"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1255"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1258"/>
<source>Motorola Generic</source>
<translation>Motorola Generic</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1217"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1256"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1259"/>
<source>SA/Cisco Generic</source>
<translation>SA/Cisco Generic</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1274"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1313"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1316"/>
<source>Connection Type</source>
<translation>Connection Type</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1275"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1314"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1317"/>
<source>Point to Point</source>
<translation>Point to Point</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1287"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1326"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1329"/>
<source>Speed</source>
<translation>Speed</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1288"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1327"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1330"/>
<source>100Mbps</source>
<translation>100Mbps</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1289"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1328"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1331"/>
<source>200Mbps</source>
<translation>200Mbps</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1290"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1329"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1332"/>
<source>400Mbps</source>
<translation>400Mbps</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1291"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1330"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1333"/>
<source>800Mbps</source>
<translation>800Mbps</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1340"/>
- <location filename="../libs/libmythtv/videosource.cpp" line="1596"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1367"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1627"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1370"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1630"/>
<source>IP Address</source>
<translation>IP Address</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1376"/>
- <location filename="../libs/libmythtv/videosource.cpp" line="1628"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1403"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1659"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1406"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1662"/>
<source>Tuner</source>
<translation>Tuner</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1813"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1847"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1850"/>
<source>M3U URL</source>
<translation>M3U URL</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1850"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1867"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1870"/>
<source>ASI device</source>
- <translation>ASI device</translation>
+ <translation>ASI Device</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1909"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1926"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1929"/>
<source>Warning: unable to open</source>
- <translation>Warning: unable to open</translation>
+ <translation>Warning: Unable to Open</translation>
@@ -17485,147 +17602,147 @@
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2787"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2714"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2724"/>
<source>Capture Card Setup</source>
<translation>Capture Card Setup</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2984"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2905"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2915"/>
<source>Card type</source>
- <translation>Card type</translation>
+ <translation>Card Type</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2985"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2906"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2916"/>
<source>Change the cardtype to the appropriate type for the capture card you are configuring.</source>
- <translation>Change the cardtype to the appropriate type for the capture card you are configuring.</translation>
+ <translation>Change the card type to the appropriate type for the capture card you are configuring.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3018"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2939"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2949"/>
<source>FireWire cable box</source>
- <translation>FireWire cable box</translation>
+ <translation>FireWire Cable Box</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3045"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2966"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2976"/>
<source>DVEO ASI recorder</source>
- <translation>DVEO ASI recorder</translation>
+ <translation>DVEO ASI Recorder</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3109"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3038"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3048"/>
<source>Video source</source>
- <translation>Video source</translation>
+ <translation>Video Source</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3135"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3064"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3074"/>
<source>Leave as &apos;Generic&apos; unless this input is shared with another device. Only one of the inputs in an input group will be allowed to record at any given time.</source>
<translation>Leave as &apos;Generic&apos; unless this input is shared with another device. Only one of the inputs in an input group will be allowed to record at any given time.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3258"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3189"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3199"/>
<source>Use quick tuning</source>
- <translation>Use quick tuning</translation>
+ <translation>Use Quick Tuning</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3259"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3190"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3200"/>
<source>Never</source>
<translation>Never</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3260"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3191"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3201"/>
<source>Live TV only</source>
- <translation>Live TV only</translation>
+ <translation>Live TV Only</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3261"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3192"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3202"/>
<source>Always</source>
<translation>Always</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3280"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3209"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3219"/>
<source>External channel change command</source>
- <translation>External channel change command</translation>
+ <translation>External Channel Change Command</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3282"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3211"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3221"/>
<source>If specified, this command will be run to change the channel for inputs which have an external tuner device such as a cable box. The first argument will be the channel number.</source>
<translation>If specified, this command will be run to change the channel for inputs which have an external tuner device such as a cable box. The first argument will be the channel number.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3296"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3224"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3234"/>
<source>Preset tuner to channel</source>
- <translation>Preset tuner to channel</translation>
+ <translation>Preset Tuner to Channel</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3298"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3226"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3236"/>
<source>Leave this blank unless you have an external tuner that is connected to the tuner input of your card. If so, you will need to specify the preset channel for the signal (normally 3 or 4).</source>
<translation>Leave this blank unless you have an external tuner that is connected to the tuner input of your card. If so, you will need to specify the preset channel for the signal (normally 3 or 4).</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3349"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3278"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3288"/>
<source>Input priority</source>
- <translation>Input priority</translation>
+ <translation>Input Priority</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3351"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3280"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3290"/>
<source>If the input priority is not equal for all inputs, the scheduler may choose to record a show at a later time so that it can record on an input with a higher value.</source>
<translation>If the input priority is not equal for all inputs, the scheduler may choose to record a show at a later time so that it can record on an input with a higher value.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3365"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3294"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3304"/>
<source>Schedule order</source>
- <translation>Schedule order</translation>
+ <translation>Schedule Order</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3367"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3296"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3306"/>
<source>If priorities and other factors are equal the scheduler will choose the available input with the lowest, non-zero value. Setting this value to zero will make the input unavailable to the scheduler.</source>
- <translation>If priorities and other factors are equal the scheduler will choose the available input with the lowest, non-zero value. Setting this value to zero will make the input unavailable to the scheduler.</translation>
+ <translation>If priorities and other factors are equal the scheduler will choose the available input with the lowest, non-zero value. Setting this value to zero will make the input unavailable to the scheduler.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3382"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3311"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3321"/>
<source>Live TV order</source>
- <translation>Live TV order</translation>
+ <translation>Live TV Order</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3384"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3313"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3323"/>
<source>When entering Live TV, the available, local input with the lowest, non-zero value will be used. If no local inputs are available, the available, remote input with the lowest, non-zero value will be used. Setting this value to zero will make the input unavailable to live TV.</source>
- <translation>When entering Live TV, the available, local input with the lowest, non-zero value will be used. If no local inputs are available, the available, remote input with the lowest, non-zero value will be used. Setting this value to zero will make the input unavailable to live TV.</translation>
+ <translation>When entering Live TV, the available, local input with the lowest, non-zero value will be used. If no local inputs are available, the available, remote input with the lowest, non-zero value will be used. Setting this value to zero will make the input unavailable to live TV.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3404"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3333"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3343"/>
<source>If you point your satellite dish toward DishNet&apos;s birds, you may wish to enable this feature. For best results, enable general EIT collection as well.</source>
<translation>If you point your satellite dish toward DishNet&apos;s birds, you may wish to enable this feature. For best results, enable general EIT collection as well.</translation>
</message>
@@ -17637,48 +17754,48 @@
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3479"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3394"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3404"/>
<source>Interactions between inputs</source>
- <translation>Interactions between inputs</translation>
+ <translation>Interactions Between Inputs</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3485"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3407"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3417"/>
<source>Create a New Input Group</source>
<translation>Create a New Input Group</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3767"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3796"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3806"/>
<source>(New capture card)</source>
- <translation>(New capture card)</translation>
+ <translation>(New Capture Card)</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3768"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3797"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3807"/>
<source>(Delete all capture cards on %1)</source>
- <translation>(Delete all capture cards on %1)</translation>
+ <translation>(Delete All Capture Cards on %1)</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3770"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3800"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3810"/>
<source>(Delete all capture cards)</source>
- <translation>(Delete all capture cards)</translation>
+ <translation>(Delete All Capture Cards)</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3912"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3813"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3823"/>
<source>(New video source)</source>
- <translation>(New video source)</translation>
+ <translation>(New Video Source)</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3913"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3814"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3824"/>
<source>(Delete all video sources)</source>
- <translation>(Delete all video sources)</translation>
+ <translation>(Delete All Video Sources)</translation>
@@ -17704,11 +17821,6 @@
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="686"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="663"/>
-+ <source>This will usually only work with ATSC or DVB channels, and generally provides data only for the next few days.</source>
-+ <translation>This will usually only work with ATSC or DVB channels, and generally provides data only for the next few days.</translation>
-+ </message>
-+ <message>
+ <location filename="../libs/libmythtv/videosource.cpp" line="699"/>
<source>Video Source Setup</source>
<translation>Video Source Setup</translation>
@@ -17721,243 +17833,243 @@
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="926"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="967"/>
<source>Arguments</source>
- <translation>Arguments</translation>
+- <translation>Arguments</translation>
++ <translation type="vanished">Arguments</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="937"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="979"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="982"/>
<source>File path</source>
- <translation>File path</translation>
+ <translation>File Path</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="959"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1001"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1004"/>
<source>Device to read audio from, if audio is separate from the video.</source>
<translation>Device to read audio from, if audio is separate from the video.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="971"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1012"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1015"/>
<source>Signal timeout (ms)</source>
- <translation>Signal timeout (ms)</translation>
+ <translation>Signal Timeout (ms)</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="973"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1014"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1017"/>
<source>Maximum time (in milliseconds) MythTV waits for a signal when scanning for channels.</source>
<translation>Maximum time (in milliseconds) MythTV waits for a signal when scanning for channels.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="986"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1027"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1030"/>
<source>Tuning timeout (ms)</source>
- <translation>Tuning timeout (ms)</translation>
+ <translation>Tuning Timeout (ms)</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="988"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1029"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1032"/>
<source>Maximum time (in milliseconds) MythTV waits for a channel lock. For recordings, if this time is exceeded, the recording will be marked as failed.</source>
- <translation>Maximum time (in milliseconds) MythTV waits for a channel lock. For recordings, if this time is exceeded, the recording will be marked as failed.</translation>
+ <translation>Maximum time (in milliseconds) MythTV waits for a channel lock. For recordings, if this time is exceeded, the recording will be marked as failed.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1002"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1042"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1045"/>
<source>Force audio sampling rate</source>
- <translation>Force audio sampling rate</translation>
+ <translation>Force Audio Sampling Rate</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1004"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1044"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1047"/>
<source>If non-zero, override the audio sampling rate in the recording profile when this card is used. Use this if your capture card does not support all of the standard rates.</source>
- <translation>If non-zero, override the audio sampling rate in the recording profile when this card is used. Use this if your capture card does not support all of the standard rates.</translation>
+ <translation>If non-zero, override the audio sampling rate in the recording profile when this card is used. Use this if your capture card does not support all of the standard rates.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1130"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1171"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1174"/>
<source>If enabled, drop packets from the start of a DVB recording until a sequence start header is seen.</source>
<translation>If enabled, drop packets from the start of a DVB recording until a sequence start header is seen.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1145"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1186"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1189"/>
<source>If enabled, only open the DVB card when required, leaving it free for other programs at other times.</source>
<translation>If enabled, only open the DVB card when required, leaving it free for other programs at other times.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1157"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1198"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1201"/>
<source>Use DVB card for active EIT scan</source>
- <translation>Use DVB card for active EIT scan</translation>
+ <translation>Use DVB Card for Active EIT Scan</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1160"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1201"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1204"/>
<source>If enabled, activate active scanning for program data (EIT). When this option is enabled the DVB card is constantly in-use.</source>
<translation>If enabled, activate active scanning for program data (EIT). When this option is enabled the DVB card is constantly in-use.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1173"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1214"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1217"/>
<source>DVB tuning delay (ms)</source>
- <translation>DVB tuning delay (ms)</translation>
+ <translation>DVB Tuning Delay (ms)</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1176"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1217"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1220"/>
<source>Some Linux DVB drivers, in particular for the Hauppauge Nova-T, require that we slow down the tuning process by specifying a delay (in milliseconds).</source>
<translation>Some Linux DVB drivers, in particular for the Hauppauge Nova-T, require that we slow down the tuning process by specifying a delay (in milliseconds).</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1471"/>
- <location filename="../libs/libmythtv/videosource.cpp" line="1707"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1500"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1740"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1503"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1743"/>
<source>Available devices</source>
- <translation>Available devices</translation>
+ <translation>Available Devices</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1473"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1502"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1505"/>
<source>Device ID and Tuner Number of available HDHomeRun devices.</source>
<translation>Device ID and Tuner Number of available HDHomeRun devices.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1597"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1628"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1631"/>
<source>Device IP or ID of a VBox device. eg. &apos;192.168.1.100&apos; or &apos;vbox_3718&apos;</source>
<translation>Device IP or ID of a VBox device. eg. &apos;192.168.1.100&apos; or &apos;vbox_3718&apos;</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1629"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1660"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1663"/>
<source>Number and type of the tuner to use. eg &apos;1-DVBT/T2&apos;.</source>
<translation>Number and type of the tuner to use. eg &apos;1-DVBT/T2&apos;.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1709"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1742"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1745"/>
<source>Device IP or ID, tuner number and tuner type of available VBox devices.</source>
<translation>Device IP or ID, tuner number and tuner type of available VBox devices.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2701"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2053"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2056"/>
+ <source>Use HD HomeRun for active EIT scan</source>
+ <translation>Use HD HomeRun for Active EIT Scan</translation>
+ </message>
+ <message>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2056"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2059"/>
+ <source>If enabled, activate active scanning for program data (EIT). When this option is enabled the HD HomeRun is constantly in-use.</source>
+ <translation>If enabled, activate active scanning for program data (EIT). When this option is enabled the HD HomeRun is constantly in-use.</translation>
+ </message>
+ <message>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2646"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2656"/>
<source>V4L2 encoder devices (multirec capable)</source>
- <translation>V4L2 encoder devices (multirec capable)</translation>
+ <translation>V4L2 Encoder Devices (multirec capable)</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2999"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2920"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2930"/>
<source>V4L2 encoder</source>
- <translation>V4L2 encoder</translation>
+ <translation>V4L2 Encoder</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3013"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2934"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2944"/>
<source>V@Box TV Gateway networked tuner</source>
- <translation>V@Box TV Gateway networked tuner</translation>
+ <translation>V@Box TV Gateway Networked Tuner</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3048"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2969"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2979"/>
<source>Import test recorder</source>
- <translation>Import test recorder</translation>
+ <translation>Import Test Recorder</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3049"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2970"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2980"/>
<source>Demo test recorder</source>
- <translation>Demo test recorder</translation>
+ <translation>Demo Test Recorder</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3051"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2972"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2982"/>
<source>External (black box) recorder</source>
- <translation>External (black box) recorder</translation>
+ <translation>External (black box) Recorder</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3062"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2983"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2993"/>
<source>Input name</source>
- <translation>Input name</translation>
+ <translation>Input Name</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3094"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3014"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3024"/>
<source>Display name (optional)</source>
- <translation>Display name (optional)</translation>
+ <translation>Display Name (optional)</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3095"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3015"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3025"/>
<source>This name is displayed on screen when Live TV begins and when changing the selected input or card. If you use this, make sure the information is unique for each input.</source>
<translation>This name is displayed on screen when Live TV begins and when changing the selected input or card. If you use this, make sure the information is unique for each input.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3133"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3062"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3072"/>
<source>Input group</source>
- <translation>Input group</translation>
+ <translation>Input Group</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3262"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3193"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3203"/>
<source>If enabled, MythTV will tune using only the MPEG program number. The program numbers change more often than DVB or ATSC tuning parameters, so this is slightly less reliable. This will also inhibit EIT gathering during Live TV and recording.</source>
<translation>If enabled, MythTV will tune using only the MPEG program number. The program numbers change more often than DVB or ATSC tuning parameters, so this is slightly less reliable. This will also inhibit EIT gathering during Live TV and recording.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3401"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3330"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3340"/>
<source>Use DishNet long-term EIT data</source>
- <translation>Use DishNet long-term EIT data</translation>
+ <translation>Use DishNet Long-Term EIT Data</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3487"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3409"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3419"/>
<source>Input groups are only needed when two or more cards share the same resource such as a FireWire card and an analog card input controlling the same set top box.</source>
<translation>Input groups are only needed when two or more cards share the same resource such as a FireWire card and an analog card input controlling the same set top box.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="4237"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="4089"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="4099"/>
<source>Audio input</source>
- <translation>Audio input</translation>
+ <translation>Audio Input</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="4238"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="4090"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="4100"/>
<source>If there is more than one audio input, select which one to use.</source>
<translation>If there is more than one audio input, select which one to use.</translation>
</message>
@@ -18001,7 +18113,7 @@
<source>This is updated on every successful channel change.</source>
<translation>This is updated on every successful channel change.</translation>
</message>
-@@ -19082,48 +19601,48 @@
+@@ -19082,48 +19715,48 @@
<translation>The following programs will be recorded instead:</translation>
</message>
<message>
@@ -18062,12 +18174,12 @@
</message>
<message>
<location filename="../programs/mythfrontend/setupwizard_audio.cpp" line="295"/>
-@@ -19136,24 +19655,23 @@
+@@ -19136,24 +19769,23 @@
<translation>Audio device is invalid or not useable.</translation>
</message>
<message>
- <location filename="../libs/libmyth/programinfo.cpp" line="3126"/>
-+ <location filename="../libs/libmyth/programinfo.cpp" line="3149"/>
++ <location filename="../libs/libmyth/programinfo.cpp" line="3140"/>
<source>Delete</source>
<translation>Delete</translation>
</message>
@@ -18079,7 +18191,7 @@
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="759"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="831"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="832"/>
<source>Use &apos;mythfilldatabase&apos; or the name of a custom script that will populate the program guide info for all your video sources.</source>
<translation>Use &apos;mythfilldatabase&apos; or the name of a custom script that will populate the program guide info for all your video sources.</translation>
</message>
@@ -18091,7 +18203,7 @@
</message>
<message>
<location filename="../libs/libmyth/mythmediamonitor.cpp" line="37"/>
-@@ -19161,12 +19679,12 @@
+@@ -19161,12 +19793,12 @@
<translation>Media Monitor</translation>
</message>
<message>
@@ -18106,7 +18218,7 @@
<source>You may have to use the eject button under its tray</source>
<translation>You may have to use the eject button under its tray</translation>
</message>
-@@ -19182,722 +19700,770 @@
+@@ -19182,722 +19814,769 @@
</message>
<message>
<location filename="../programs/mythtranscode/main.cpp" line="97"/>
@@ -18137,10 +18249,10 @@
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="109"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="187"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="188"/>
<source>IP address</source>
- <translation>IP address</translation>
-+ <translation>Ip Address</translation>
++ <translation>IP Address</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="26"/>
@@ -18162,245 +18274,245 @@
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="144"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="129"/>
+ <source>Listen on All IP Addresses</source>
-+ <translation>Listen on All IP Addresses</translation>
++ <translation type="vanished">Listen on All IP Addresses</translation>
+ </message>
+ <message>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="170"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="171"/>
+ <source>Primary IP address / DNS name</source>
+ <translation>Primary IP Address/DNS Name</translation>
+ </message>
+ <message>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="172"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="173"/>
+ <source>The Primary IP address of this backend server. You can select an IP address from the list or type a DNS name or host name. Other systems will contact this server using this address. If you use a host name make sure it is assigned an ip address other than 127.0.0.1 in the hosts file.</source>
-+ <translation>The Primary IP address of this backend server. You can select an IP address from the list or type a DNS name or hostname. Other systems will contact this server using this address. If you use a hostname make sure it is assigned an ip address other than 127.0.0.1 in the hosts file.</translation>
++ <translation>The Primary IP address of this backend server. You can select an IP address from the list or type a DNS name or hostname. Other systems will contact this server using this address. If you use a hostname make sure it is assigned an IP address other than 127.0.0.1 in the hosts file.</translation>
+ </message>
+ <message>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="216"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="217"/>
<source>TV format</source>
- <translation>TV format</translation>
+ <translation>TV Format</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="150"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="222"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="223"/>
<source>The TV standard to use for viewing TV.</source>
<translation>The TV standard to use for viewing TV.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="157"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="229"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="230"/>
<source>VBI format</source>
- <translation>VBI format</translation>
+ <translation>VBI Format</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="184"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="256"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="257"/>
<source>Save original files after transcoding (globally)</source>
- <translation>Save original files after transcoding (globally)</translation>
+- <translation>Save original files after transcoding (globally)</translation>
++ <translation>Save Original Files After Transcoding (Globally)</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="195"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="267"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="268"/>
<source>Delete files slowly</source>
- <translation>Delete files slowly</translation>
+ <translation>Delete Files Slowly</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="207"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="279"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="280"/>
<source>Follow symbolic links when deleting files</source>
- <translation>Follow symbolic links when deleting files</translation>
+ <translation>Follow Symbolic Links When Deleting Files</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="237"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="309"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="310"/>
<source>Combination</source>
<translation>Combination</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="263"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="335"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="336"/>
<source>By default, MythTV resets the FireWire bus when a FireWire recorder stops responding to commands. If this causes problems, you can disable this behavior here.</source>
<translation>By default, MythTV resets the FireWire bus when a FireWire recorder stops responding to commands. If this causes problems, you can disable this behavior here.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="314"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="386"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="387"/>
<source>The minimum number of seconds after a recorder becomes idle to wait before MythTV begins collecting EIT listings data.</source>
<translation>The minimum number of seconds after a recorder becomes idle to wait before MythTV begins collecting EIT listings data.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="324"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="396"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="397"/>
<source>Delay between wake attempts (secs)</source>
- <translation>Delay between wake attempts (secs)</translation>
+ <translation>Delay Between Wake Attempts (secs)</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="337"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="409"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="410"/>
<source>Number of times the frontend will try to wake up the master backend.</source>
<translation>Number of times the frontend will try to wake up the master backend.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="358"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="420"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="421"/>
+ <source>The command used to wake up your master backend server (e.g. wakeonlan 00:00:00:00:00:00).</source>
+ <translation>The command used to wake up your master backend server (e.g. wakeonlan 00:00:00:00:00:00).</translation>
+ </message>
+ <message>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="430"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="431"/>
<source>The command used to put this slave to sleep. If set, the master backend will use this command to put this slave to sleep when it is not needed for recording.</source>
<translation>The command used to put this slave to sleep. If set, the master backend will use this command to put this slave to sleep when it is not needed for recording.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="400"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="472"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="473"/>
<source>Idle shutdown timeout (secs)</source>
- <translation>Idle shutdown timeout (secs)</translation>
+ <translation>Idle Shutdown Timeout (secs)</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="413"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="485"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="486"/>
<source>The number of minutes the master backend waits for a recording. If the backend is idle but a recording starts within this time period, it won&apos;t shut down.</source>
<translation>The number of minutes the master backend waits for a recording. If the backend is idle but a recording starts within this time period, it won&apos;t shut down.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="433"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="505"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="506"/>
<source>Wakeup time format</source>
- <translation>Wakeup time format</translation>
+ <translation>Wakeup Time Format</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="447"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="519"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="520"/>
<source>The command used to set the wakeup time (passed as $time) for the Master Backend</source>
<translation>The command used to set the wakeup time (passed as $time) for the Master Backend</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="455"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="527"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="528"/>
<source>Server halt command</source>
- <translation>Server halt command</translation>
+ <translation>Server Halt Command</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="457"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="529"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="530"/>
<source>The command used to halt the backends.</source>
<translation>The command used to halt the backends.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="466"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="538"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="539"/>
<source>A command executed before the backend would shutdown. The return value determines if the backend can shutdown. 0 - yes, 1 - restart idling, 2 - reset the backend to wait for a frontend.</source>
<translation>A command executed before the backend would shutdown. The return value determines if the backend can shutdown. 0 - yes, 1 - restart idling, 2 - reset the backend to wait for a frontend.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="477"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="549"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="550"/>
<source>Block shutdown before client connected</source>
- <translation>Block shutdown before client connected</translation>
+ <translation>Block Shutdown Before Client Connected</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="487"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="559"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="560"/>
<source>Startup command</source>
- <translation>Startup command</translation>
+ <translation>Startup Command</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="489"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="561"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="562"/>
<source>This command is executed right after starting the BE. As a parameter &apos;$status&apos; is replaced by either &apos;auto&apos; if the machine was started automatically or &apos;user&apos; if a user switched it on.</source>
<translation>This command is executed right after starting the BE. As a parameter &apos;$status&apos; is replaced by either &apos;auto&apos; if the machine was started automatically or &apos;user&apos; if a user switched it on.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="499"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="571"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="572"/>
<source>Maximum simultaneous jobs on this backend</source>
- <translation>Maximum simultaneous jobs on this backend</translation>
+ <translation>Maximum Simultaneous Jobs on This Backend</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="500"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="572"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="573"/>
<source>The Job Queue will be limited to running this many simultaneous jobs on this backend.</source>
<translation>The Job Queue will be limited to running this many simultaneous jobs on this backend.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="520"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="592"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="593"/>
<source>Low</source>
<translation>Low</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="521"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="593"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="594"/>
<source>Medium</source>
<translation>Medium</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="592"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="664"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="665"/>
<source>The command to run whenever this User Job number is scheduled.</source>
<translation>The command to run whenever this User Job number is scheduled.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="602"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="674"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="675"/>
<source>User Job #%1</source>
<translation>User Job #%1</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="640"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="712"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="713"/>
<source>Transcoder command</source>
- <translation>Transcoder command</translation>
+ <translation>Transcoder Command</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="642"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="714"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="715"/>
<source>The program used to transcode recordings. The default is &apos;mythtranscode&apos; if this setting is empty.</source>
<translation>The program used to transcode recordings. The default is &apos;mythtranscode&apos; if this setting is empty.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="662"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="734"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="735"/>
<source>Allow %1 jobs</source>
<translation>Allow %1 jobs</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="685"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="757"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="758"/>
<source>If enabled, the master backend will include the list of recorded shows in the list of videos. This is mainly to accommodate UPnP players which do not allow more than 1 video section.</source>
- <translation>If enabled, the master backend will include the list of recorded shows in the list of videos. This is mainly to accommodate UPnP players which do not allow more than 1 video section.</translation>
+ <translation>If enabled, the master backend will include the list of recorded shows in the list of videos. This is mainly to accommodate UPnP players which do not allow more than 1 video section.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="697"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="769"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="770"/>
<source>Recordings</source>
<translation>Recordings</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="698"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="770"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="771"/>
<source>Videos</source>
<translation>Videos</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="90"/>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="124"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="151"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="152"/>
<source>Unless you&apos;ve got good reason, don&apos;t change this.</source>
<translation>Unless you&apos;ve got good reason, don&apos;t change this.</translation>
</message>
@@ -18413,14 +18525,14 @@
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="98"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="159"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="160"/>
<source>Status port</source>
- <translation>Status port</translation>
+ <translation>Status Port</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="100"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="161"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="162"/>
<source>Port on which the server will listen for HTTP requests, including backend status and MythXML requests.</source>
<translation>Port on which the server will listen for HTTP requests, including backend status and MythXML requests.</translation>
</message>
@@ -18432,206 +18544,206 @@
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="132"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="204"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="205"/>
<source>Security PIN (required)</source>
<translation>Security PIN (required)</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="134"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="206"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="207"/>
<source>PIN code required for a frontend to connect to the backend. Blank prevents all connections; 0000 allows any client to connect.</source>
<translation>PIN code required for a frontend to connect to the backend. Blank prevents all connections; 0000 allows any client to connect.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="161"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="233"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="234"/>
<source>The VBI (Vertical Blanking Interval) is used to carry Teletext or Closed Captioning data.</source>
<translation>The VBI (Vertical Blanking Interval) is used to carry Teletext or Closed Captioning data.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="175"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="247"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="248"/>
<source>Select the appropriate frequency table for your system. If you have an antenna, use a &quot;-bcast&quot; frequency.</source>
<translation>Select the appropriate frequency table for your system. If you have an antenna, use a &quot;-bcast&quot; frequency.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="186"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="258"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="259"/>
<source>If enabled and the transcoder is active, the original files will be renamed to .old once the transcoding is complete.</source>
<translation>If enabled and the transcoder is active, the original files will be renamed to .old once the transcoding is complete.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="197"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="269"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="270"/>
<source>Some filesystems use a lot of resources when deleting large files. If enabled, this option makes MythTV delete files slowly on this backend to lessen the impact.</source>
<translation>Some filesystems use a lot of resources when deleting large files. If enabled, this option makes MythTV delete files slowly on this backend to lessen the impact.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="209"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="281"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="282"/>
<source>If enabled, MythTV will follow symlinks when recordings and related files are deleted, instead of deleting the symlink and leaving the actual file.</source>
<translation>If enabled, MythTV will follow symlinks when recordings and related files are deleted, instead of deleting the symlink and leaving the actual file.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="219"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="291"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="292"/>
<source>HD ringbuffer size (kB)</source>
- <translation>HD ringbuffer size (kB)</translation>
+ <translation>HD Ringbuffer Size (kB)</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="220"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="292"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="293"/>
<source>The HD device ringbuffer allows the backend to weather moments of stress. The larger the ringbuffer (in kilobytes), the longer the moments of stress can be. However, setting the size too large can cause swapping, which is detrimental.</source>
<translation>The HD device ringbuffer allows the backend to weather moments of stress. The larger the ringbuffer (in kilobytes), the longer the moments of stress can be. However, setting the size too large can cause swapping, which is detrimental.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="233"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="305"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="306"/>
<source>Storage Group disk scheduler</source>
- <translation>Storage Group disk scheduler</translation>
+ <translation>Storage Group Disk Scheduler</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="234"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="306"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="307"/>
<source>Balanced free space</source>
- <translation>Balanced free space</translation>
+ <translation>Balanced Free Space</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="235"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="307"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="308"/>
<source>Balanced percent free space</source>
- <translation>Balanced percent free space</translation>
+ <translation>Balanced Percent Free Space</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="236"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="308"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="309"/>
<source>Balanced disk I/O</source>
- <translation>Balanced disk I/O</translation>
+ <translation>Balanced Disk I/O</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="239"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="311"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="312"/>
<source>This setting controls how the Storage Group scheduling code will balance new recordings across directories. &apos;Balanced Free Space&apos; is the recommended method for most users.</source>
<translation>This setting controls how the Storage Group scheduling code will balance new recordings across directories. &apos;Balanced Free Space&apos; is the recommended method for most users.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="249"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="321"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="322"/>
<source>Disable automatic database backup</source>
- <translation>Disable automatic database backup</translation>
+ <translation>Disable Automatic Database Backup</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="251"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="323"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="324"/>
<source>If enabled, MythTV will not backup the database before upgrades. You should therefore have your own database backup strategy in place.</source>
<translation>If enabled, MythTV will not backup the database before upgrades. You should therefore have your own database backup strategy in place.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="261"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="333"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="334"/>
<source>Disable FireWire reset</source>
- <translation>Disable FireWire reset</translation>
+ <translation>Disable FireWire Reset</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="275"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="347"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="348"/>
<source>Miscellaneous status application</source>
- <translation>Miscellaneous status application</translation>
+ <translation>Miscellaneous Status Application</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="277"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="349"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="350"/>
<source>External application or script that outputs extra information for inclusion in the backend status page. See http://www.mythtv.org/wiki/Miscellaneous_Status_Information</source>
<translation>External application or script that outputs extra information for inclusion in the backend status page. See http://www.mythtv.org/wiki/Miscellaneous_Status_Information</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="700"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="772"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="773"/>
<source>Which tree to show a Windows Media Player client when it requests a list of videos.</source>
<translation>Which tree to show a Windows Media Player client when it requests a list of videos.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="708"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="780"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="781"/>
<source>Automatically update program listings</source>
- <translation>Automatically update program listings</translation>
+ <translation>Automatically Update Program Listings</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="710"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="782"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="783"/>
<source>If enabled, the guide data program will be run automatically.</source>
<translation>If enabled, the guide data program will be run automatically.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="718"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="790"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="791"/>
<source>Guide data program execution start</source>
- <translation>Guide data program execution start</translation>
+ <translation>Guide Data Program Execution Start</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="720"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="792"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="793"/>
<source>This setting and the following one define a time period when the guide data program is allowed to run. For example, setting start to 11 and end to 13 would mean that the program would only run between 11:00 AM and 1:59 PM.</source>
<translation>This setting and the following one define a time period when the guide data program is allowed to run. For example, setting start to 11 and end to 13 would mean that the program would only run between 11:00 AM and 1:59 PM.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="731"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="803"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="804"/>
<source>Guide data program execution end</source>
- <translation>Guide data program execution end</translation>
+ <translation>Guide Data Program Execution End</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="733"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="805"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="806"/>
<source>This setting and the preceding one define a time period when the guide data program is allowed to run. For example, setting start to 11 and end to 13 would mean that the program would only run between 11:00 AM and 1:59 PM.</source>
<translation>This setting and the preceding one define a time period when the guide data program is allowed to run. For example, setting start to 11 and end to 13 would mean that the program would only run between 11:00 AM and 1:59 PM.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="744"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="816"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="817"/>
<source>Run guide data program at time suggested by the grabber.</source>
<translation>Run guide data program at time suggested by the grabber.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="747"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="819"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="820"/>
<source>If enabled, allow a DataDirect guide data provider to specify the next download time in order to distribute load on their servers. Guide data program execution start/end times are also ignored.</source>
<translation>If enabled, allow a DataDirect guide data provider to specify the next download time in order to distribute load on their servers. Guide data program execution start/end times are also ignored.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="757"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="829"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="830"/>
<source>Guide data program</source>
- <translation>Guide data program</translation>
+ <translation>Guide Data Program</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="769"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="841"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="842"/>
<source>Guide data arguments</source>
- <translation>Guide data arguments</translation>
+ <translation>Guide Data Arguments</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="771"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="843"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="844"/>
<source>Any arguments you want passed to the guide data program.</source>
<translation>Any arguments you want passed to the guide data program.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="782"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="853"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="854"/>
<source>Program Schedule Downloading Options</source>
<translation>Program Schedule Downloading Options</translation>
</message>
@@ -18650,46 +18762,46 @@
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="287"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="359"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="360"/>
<source>EIT transport timeout (mins)</source>
- <translation>EIT transport timeout (mins)</translation>
+ <translation>EIT Transport Timeout (mins)</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="289"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="361"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="362"/>
<source>Maximum time to spend waiting (in minutes) for listings data on one digital TV channel before checking for new listings data on the next channel.</source>
<translation>Maximum time to spend waiting (in minutes) for listings data on one digital TV channel before checking for new listings data on the next channel.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="300"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="372"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="373"/>
<source>Master backend override</source>
- <translation>Master backend override</translation>
+ <translation>Master Backend Override</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="302"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="374"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="375"/>
<source>If enabled, the master backend will stream and delete files if it finds them in a storage directory. Useful if you are using a central storage location, like a NFS share, and your slave backend isn&apos;t running.</source>
<translation>If enabled, the master backend will stream and delete files if it finds them in a storage directory. Useful if you are using a central storage location, like a NFS share, and your slave backend isn&apos;t running.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="312"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="384"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="385"/>
<source>Backend idle before EIT crawl (secs)</source>
- <translation>Backend idle before EIT crawl (secs)</translation>
+ <translation>Backend Idle Before EIT Crawl (secs)</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="326"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="398"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="399"/>
<source>Length of time the frontend waits between tries to wake up the master backend. This should be the time your master backend needs to startup. Set to 0 to disable.</source>
<translation>Length of time the frontend waits between tries to wake up the master backend. This should be the time your master backend needs to startup. Set to 0 to disable.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="336"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="408"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="409"/>
<source>Wake attempts</source>
- <translation>Wake attempts</translation>
+ <translation>Wake Attempts</translation>
@@ -18702,216 +18814,216 @@
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="356"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="428"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="429"/>
<source>Sleep command</source>
- <translation>Sleep command</translation>
+ <translation>Sleep Command</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="369"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="441"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="442"/>
<source>The command used to wake up this slave from sleep. This setting is not used on the master backend.</source>
<translation>The command used to wake up this slave from sleep. This setting is not used on the master backend.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="378"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="450"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="451"/>
<source>Backend stop command</source>
- <translation>Backend stop command</translation>
+ <translation>Backend Stop Command</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="380"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="452"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="453"/>
<source>The command used to stop the backend when running on the master backend server (e.g. sudo /etc/init.d/mythtv-backend stop)</source>
<translation>The command used to stop the backend when running on the master backend server (e.g. sudo /etc/init.d/mythtv-backend stop)</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="389"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="461"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="462"/>
<source>Backend start command</source>
- <translation>Backend start command</translation>
+ <translation>Backend Start Command</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="391"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="463"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="464"/>
<source>The command used to start the backend when running on the master backend server (e.g. sudo /etc/init.d/mythtv-backend start).</source>
<translation>The command used to start the backend when running on the master backend server (e.g. sudo /etc/init.d/mythtv-backend start).</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="402"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="474"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="475"/>
<source>The number of seconds the master backend idles before it shuts down all other backends. Set to 0 to disable automatic shutdown.</source>
<translation>The number of seconds the master backend idles before it shuts down all other backends. Set to 0 to disable automatic shutdown.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="411"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="483"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="484"/>
<source>Maximum wait for recording (mins)</source>
- <translation>Maximum wait for recording (mins)</translation>
+ <translation>Maximum Wait for Recording (mins)</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="423"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="495"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="496"/>
<source>Startup before recording (secs)</source>
- <translation>Startup before recording (secs)</translation>
+ <translation>Startup Before Recording (secs)</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="425"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="497"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="498"/>
<source>The number of seconds the master backend will be woken up before a recording starts.</source>
<translation>The number of seconds the master backend will be woken up before a recording starts.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="435"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="507"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="508"/>
<source>The format of the time string passed to the &apos;Command to set wakeup time&apos; as $time. See QT::QDateTime.toString() for details. Set to &apos;time_t&apos; for seconds since epoch.</source>
<translation>The format of the time string passed to the &apos;Command to set wakeup time&apos; as $time. See QT::QDateTime.toString() for details. Set to &apos;time_t&apos; for seconds since epoch.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="445"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="517"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="518"/>
<source>Command to set wakeup time</source>
- <translation>Command to set wakeup time</translation>
+ <translation>Command to Set Wakeup Time</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="464"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="536"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="537"/>
<source>Pre-shutdown-check command</source>
- <translation>Pre-shutdown-check command</translation>
+ <translation>Pre-shutdown Check Command</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="479"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="551"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="552"/>
<source>If enabled, the automatic shutdown routine will be disabled until a client connects.</source>
<translation>If enabled, the automatic shutdown routine will be disabled until a client connects.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="509"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="581"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="582"/>
<source>Job Queue check frequency (secs)</source>
- <translation>Job Queue check frequency (secs)</translation>
+ <translation>Job Queue Check Frequency (secs)</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="510"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="582"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="583"/>
<source>When looking for new jobs to process, the Job Queue will wait this many seconds between checks.</source>
<translation>When looking for new jobs to process, the Job Queue will wait this many seconds between checks.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="519"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="591"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="592"/>
<source>CPU usage</source>
- <translation>CPU usage</translation>
+ <translation>CPU Usage</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="523"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="595"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="596"/>
<source>This setting controls approximately how much CPU jobs in the queue may consume. On &apos;High&apos;, all available CPU time may be used, which could cause problems on slower systems.</source>
<translation>This setting controls approximately how much CPU jobs in the queue may consume. On &apos;High&apos;, all available CPU time may be used, which could cause problems on slower systems.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="533"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="605"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="606"/>
<source>Job Queue start time</source>
- <translation>Job Queue start time</translation>
+ <translation>Job Queue Start Time</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="534"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="606"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="607"/>
<source>This setting controls the start of the Job Queue time window, which determines when new jobs will be started.</source>
<translation>This setting controls the start of the Job Queue time window, which determines when new jobs will be started.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="543"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="615"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="616"/>
<source>Job Queue end time</source>
- <translation>Job Queue end time</translation>
+ <translation>Job Queue End Time</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="544"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="616"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="617"/>
<source>This setting controls the end of the Job Queue time window, which determines when new jobs will be started.</source>
<translation>This setting controls the end of the Job Queue time window, which determines when new jobs will be started.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="553"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="625"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="626"/>
<source>Run jobs only on original recording backend</source>
- <translation>Run jobs only on original recording backend</translation>
+ <translation>Run Jobs Only on Original Recording Backend</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="555"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="627"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="628"/>
<source>If enabled, jobs in the queue will be required to run on the backend that made the original recording.</source>
<translation>If enabled, jobs in the queue will be required to run on the backend that made the original recording.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="564"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="636"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="637"/>
<source>Run transcode jobs before auto commercial detection</source>
- <translation>Run transcode jobs before auto commercial detection</translation>
+ <translation>Run Transcode Jobs Before Auto Commercial Detection</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="567"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="639"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="640"/>
<source>If enabled, and if both auto-transcode and commercial detection are turned ON for a recording, transcoding will run first; otherwise, commercial detection runs first.</source>
<translation>If enabled, and if both auto-transcode and commercial detection are turned ON for a recording, transcoding will run first; otherwise, commercial detection runs first.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="577"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="649"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="650"/>
<source>Start auto-commercial-detection jobs when the recording starts</source>
- <translation>Start auto-commercial-detection jobs when the recording starts</translation>
+ <translation>Start Auto Commercial Detection Jobs When the Recording Starts</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="580"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="652"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="653"/>
<source>If enabled, and Auto Commercial Detection is ON for a recording, the flagging job will be started as soon as the recording starts. NOT recommended on underpowered systems.</source>
<translation>If enabled, and Auto Commercial Detection is ON for a recording, the flagging job will be started as soon as the recording starts. NOT recommended on underpowered systems.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="590"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="662"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="663"/>
<source>User Job #%1 command</source>
- <translation>User Job #%1 command</translation>
+ <translation>User Job #%1 Command</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="601"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="673"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="674"/>
<source>User Job #%1 description</source>
- <translation>User Job #%1 description</translation>
+ <translation>User Job #%1 Description</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="603"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="675"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="676"/>
<source>The description for this User Job.</source>
<translation>The description for this User Job.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="610"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="682"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="683"/>
<source>Allow metadata lookup jobs</source>
- <translation>Allow metadata lookup jobs</translation>
+ <translation>Allow Metadata Lookup Jobs</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="620"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="692"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="693"/>
<source>Allow commercial-detection jobs</source>
- <translation>Allow commercial-detection jobs</translation>
+ <translation>Allow Commercial Detection Jobs</translation>
@@ -18921,66 +19033,74 @@
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="622"/>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="632"/>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="674"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="684"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="694"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="704"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="746"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="685"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="695"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="705"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="747"/>
<source>If enabled, allow jobs of this type to run on this backend.</source>
<translation>If enabled, allow jobs of this type to run on this backend.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="630"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="702"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="703"/>
<source>Allow transcoding jobs</source>
- <translation>Allow transcoding jobs</translation>
+ <translation>Allow Transcoding Jobs</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="650"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="722"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="723"/>
<source>Commercial-detection command</source>
- <translation>Commercial-detection command</translation>
+ <translation>Commercial Detection Command</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="652"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="724"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="725"/>
<source>The program used to detect commercials in a recording. The default is &apos;mythcommflag&apos; if this setting is empty.</source>
<translation>The program used to detect commercials in a recording. The default is &apos;mythcommflag&apos; if this setting is empty.</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="683"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="755"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="756"/>
<source>Include recordings in video list</source>
- <translation>Include recordings in video list</translation>
+ <translation>Include Recordings in Video List</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="696"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="768"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="769"/>
<source>Video content to show a WMP client</source>
- <translation>Video content to show a WMP client</translation>
+ <translation>Video Content to Show a WMP Client</translation>
-+ </message>
-+ <message>
-+ <source>Host Address Backend Setup</source>
+ </message>
+ <message>
+- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="804"/>
+ <source>Host Address Backend Setup</source>
+- <translation>Host Address Backend Setup</translation>
+ <translation type="vanished">Host Address Backend Setup</translation>
-+ </message>
-+ <message>
-+ <source>Local Backend</source>
+ </message>
+ <message>
+- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="806"/>
+ <source>Local Backend</source>
+- <translation>Local Backend</translation>
+ <translation type="vanished">Local Backend</translation>
-+ </message>
-+ <message>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="963"/>
-+ <source>Master Backend</source>
-+ <translation>Master Backend</translation>
-+ </message>
-+ <message>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="913"/>
-+ <source>Locale Settings</source>
-+ <translation>Locale Settings</translation>
-+ </message>
-+ <message>
+ </message>
+ <message>
+- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="830"/>
+- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="894"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="964"/>
+ <source>Master Backend</source>
+ <translation>Master Backend</translation>
+ </message>
+ <message>
+- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="841"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="914"/>
+ <source>Locale Settings</source>
+ <translation>Locale Settings</translation>
+ </message>
+ <message>
+- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="848"/>
+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="15"/>
+ <source>This server is the Master Backend</source>
+ <translation>This Server is the Master Backend</translation>
@@ -18994,108 +19114,94 @@
+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="30"/>
+ <source>Master Backend Name</source>
+ <translation>Master Backend Name</translation>
- </message>
- <message>
-- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="804"/>
-- <source>Host Address Backend Setup</source>
-- <translation>Host Address Backend Setup</translation>
++ </message>
++ <message>
+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="33"/>
+ <source>Host name of Master Backend. This is set by selecting &quot;This server is the Master Backend&quot; on that server.</source>
+ <translation>Host name of master backend. This is set by selecting &quot;This server is the master backend&quot; on that server.</translation>
- </message>
- <message>
-- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="806"/>
-- <source>Local Backend</source>
-- <translation>Local Backend</translation>
++ </message>
++ <message>
+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="42"/>
+ <source>Allow Connections from all Subnets</source>
+ <translation>Allow Connections from All Subnets</translation>
- </message>
- <message>
-- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="830"/>
-- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="894"/>
-- <source>Master Backend</source>
-- <translation>Master Backend</translation>
++ </message>
++ <message>
+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="44"/>
+ <source>Allow this backend to receive connections from any IP address on the internet. NOT recommended for most users. Use this only if you have secure IPV4 and IPV6 firewalls.</source>
+ <translation>Allow this backend to receive connections from any IP address on the internet. NOT recommended for most users. Use this only if you have secure IPV4 and IPV6 firewalls.</translation>
- </message>
- <message>
-- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="841"/>
-- <source>Locale Settings</source>
-- <translation>Locale Settings</translation>
++ </message>
++ <message>
+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="76"/>
+ <source>Listen on IPv6 address</source>
+ <translation>Listen on IPv6 Address</translation>
- </message>
- <message>
-- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="848"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="920"/>
++ </message>
++ <message>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="921"/>
<source>Miscellaneous Settings</source>
<translation>Miscellaneous Settings</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="851"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="923"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="924"/>
<source>File Management Settings</source>
<translation>File Management Settings</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="872"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="941"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="942"/>
<source>EIT Scanner Options</source>
<translation>EIT Scanner Options</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="878"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="947"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="948"/>
<source>Shutdown/Wakeup Options</source>
<translation>Shutdown/Wakeup Options</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="891"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="960"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="961"/>
<source>Backend Wakeup settings</source>
- <translation>Backend Wakeup settings</translation>
+ <translation>Backend Wakeup Settings</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="901"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="970"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="971"/>
<source>Slave Backends</source>
<translation>Slave Backends</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="908"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="977"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="978"/>
<source>Backend Control</source>
<translation>Backend Control</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="914"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="983"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="984"/>
<source>Job Queue (Backend-Specific)</source>
<translation>Job Queue (Backend-Specific)</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="941"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="999"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="1000"/>
<source>Job Queue (Global)</source>
<translation>Job Queue (Global)</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="951"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="1009"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="1010"/>
<source>Job Queue (Job Commands)</source>
<translation>Job Queue (Job Commands)</translation>
</message>
<message>
- <location filename="../programs/mythtv-setup/backendsettings.cpp" line="862"/>
-+ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="931"/>
++ <location filename="../programs/mythtv-setup/backendsettings.cpp" line="932"/>
<source>UPnP Server Settings</source>
<translation>UPnP Server Settings</translation>
</message>
-@@ -19915,12 +20481,12 @@
+@@ -19915,12 +20594,12 @@
<location filename="../programs/mythtv-setup/checksetup.cpp" line="62"/>
<location filename="../programs/mythtv-setup/checksetup.cpp" line="86"/>
<source>No Storage Group directories are defined. You must add at least one directory to the Default Storage Group where new recordings will be stored.</source>
@@ -19110,7 +19216,7 @@
</message>
<message>
<location filename="../programs/mythtv-setup/checksetup.cpp" line="217"/>
-@@ -19928,12 +20494,12 @@
+@@ -19928,12 +20607,12 @@
<translation>Card %1 (type %2) is set to start on channel %3, which does not exist.</translation>
</message>
<message>
@@ -19126,7 +19232,7 @@
<source>MythTV Setup</source>
<translation>MythTV Setup</translation>
</message>
-@@ -19971,19 +20537,19 @@
+@@ -19971,19 +20650,19 @@
<translation>Backlinks</translation>
</message>
<message>
@@ -19149,7 +19255,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/videolist.cpp" line="646"/>
-@@ -19994,7 +20560,7 @@
+@@ -19994,7 +20673,7 @@
<message>
<location filename="../programs/mythfrontend/videolist.cpp" line="656"/>
<source>No files found</source>
@@ -19158,7 +19264,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/videolist.cpp" line="952"/>
-@@ -20075,57 +20641,57 @@
+@@ -20075,57 +20754,57 @@
<translation>videos</translation>
</message>
<message>
@@ -19227,7 +19333,7 @@
<source>%1 KB</source>
<translation>%1 KB</translation>
</message>
-@@ -20150,17 +20716,17 @@
+@@ -20150,17 +20829,17 @@
<message>
<location filename="../libs/libmyth/recordingtypes.cpp" line="251"/>
<source>Match duplicates using subtitle &amp; description</source>
@@ -19248,7 +19354,7 @@
</message>
<message>
<location filename="../libs/libmyth/recordingtypes.cpp" line="230"/>
-@@ -20180,22 +20746,22 @@
+@@ -20180,22 +20859,22 @@
<message>
<location filename="../libs/libmyth/recordingtypes.cpp" line="249"/>
<source>Match duplicates using description</source>
@@ -19275,7 +19381,7 @@
</message>
<message>
<location filename="../libs/libmyth/recordingtypes.cpp" line="160"/>
-@@ -20221,90 +20787,90 @@
+@@ -20221,90 +20900,90 @@
<message>
<location filename="../libs/libmyth/recordingtypes.cpp" line="179"/>
<source>Look for duplicates in previous recordings only</source>
@@ -19398,7 +19504,7 @@
<source>Run &apos;%1&apos;</source>
<translation>Run &apos;%1&apos;</translation>
</message>
-@@ -20335,97 +20901,97 @@
+@@ -20335,97 +21014,97 @@
<translation>SetParameters() called with handle == NULL!</translation>
</message>
<message>
@@ -19518,7 +19624,7 @@
<source>film</source>
<translation>film</translation>
</message>
-@@ -20433,56 +20999,56 @@
+@@ -20433,56 +21112,56 @@
<location filename="../programs/mythshutdown/main.cpp" line="72"/>
<source>Error: Database not open while trying to load setting: %1</source>
<comment>mythshutdown</comment>
@@ -19559,7 +19665,7 @@
<source>Grabbing EPG data in progress...</source>
<comment>mythshutdown</comment>
- <translation>Grabbing EPG data in progress...</translation>
-+ <translation>Grabbing Epg Data in Progress...</translation>
++ <translation>Grabbing EPG Data in Progress...</translation>
</message>
<message>
<location filename="../programs/mythshutdown/main.cpp" line="270"/>
@@ -19573,7 +19679,7 @@
<source>Shutdown is locked</source>
<comment>mythshutdown</comment>
- <translation>Shutdown is locked</translation>
-+ <translation>Shutdown Is Locked</translation>
++ <translation>Shutdown is Locked</translation>
</message>
<message>
<location filename="../programs/mythshutdown/main.cpp" line="284"/>
@@ -19584,7 +19690,7 @@
</message>
<message>
<location filename="../programs/mythshutdown/main.cpp" line="317"/>
-@@ -20500,176 +21066,176 @@
+@@ -20500,176 +21179,176 @@
<location filename="../programs/mythshutdown/main.cpp" line="342"/>
<source>About to start daily wakeup period (1)</source>
<comment>mythshutdown</comment>
@@ -19603,7 +19709,7 @@
<source>Setup is running...</source>
<comment>mythshutdown</comment>
- <translation>Setup is running...</translation>
-+ <translation>Setup Is Running...</translation>
++ <translation>Setup is Running...</translation>
</message>
<message>
<location filename="../programs/mythshutdown/main.cpp" line="368"/>
@@ -19660,7 +19766,7 @@
<source>Next daily wakeup is tomorrow at %1</source>
<comment>mythshutdown</comment>
- <translation>Next daily wakeup is tomorrow at %1</translation>
-+ <translation>Next Daily Wakeup Is Tomorrow At %1</translation>
++ <translation>Next Daily Wakeup is Tomorrow At %1</translation>
</message>
<message>
<location filename="../programs/mythshutdown/main.cpp" line="547"/>
@@ -19674,7 +19780,7 @@
<source>Error: no recording time is set</source>
<comment>mythshutdown</comment>
- <translation>Error: no recording time is set</translation>
-+ <translation>Error: No Recording Time Is Set</translation>
++ <translation>Error: No Recording Time is Set</translation>
</message>
<message>
<location filename="../programs/mythshutdown/main.cpp" line="566"/>
@@ -19716,14 +19822,14 @@
<source>Program is scheduled but will wake up at next daily wakeup</source>
<comment>mythshutdown</comment>
- <translation>Program is scheduled but will wake up at next daily wakeup</translation>
-+ <translation>Program Is Scheduled but Will Wake Up At Next Daily Wakeup</translation>
++ <translation>Program is Scheduled but Will Wake Up At Next Daily Wakeup</translation>
</message>
<message>
<location filename="../programs/mythshutdown/main.cpp" line="637"/>
<source>Daily wakeup is set but will wake up at next scheduled program</source>
<comment>mythshutdown</comment>
- <translation>Daily wakeup is set but will wake up at next scheduled program</translation>
-+ <translation>Daily Wakeup Is Set but Will Wake Up At Next Scheduled Program</translation>
++ <translation>Daily Wakeup is Set but Will Wake Up At Next Scheduled Program</translation>
</message>
<message>
<location filename="../programs/mythshutdown/main.cpp" line="682"/>
@@ -19751,7 +19857,7 @@
<source>The next wakeup time is less than 15 mins away, not shutting down.</source>
<comment>mythshutdown</comment>
- <translation>The next wakeup time is less than 15 mins away, not shutting down.</translation>
-+ <translation>The Next Wakeup Time Is Less Than 15 Mins Away, Not Shutting Down.</translation>
++ <translation>The Next Wakeup Time is Less Than 15 Mins Away, Not Shutting Down.</translation>
</message>
<message>
<location filename="../programs/mythshutdown/main.cpp" line="724"/>
@@ -19772,7 +19878,7 @@
<source>Everything looks fine, but reboot is needed</source>
<comment>mythshutdown</comment>
- <translation>Everything looks fine, but reboot is needed</translation>
-+ <translation>Everything Looks Fine, but Reboot Is Needed</translation>
++ <translation>Everything Looks Fine, but Reboot is Needed</translation>
</message>
<message>
<location filename="../programs/mythshutdown/main.cpp" line="742"/>
@@ -19790,9 +19896,12 @@
</message>
<message>
<location filename="../programs/mythshutdown/main.cpp" line="760"/>
-@@ -20688,12 +21254,12 @@
+@@ -20686,14 +21365,14 @@
+ must be yyyy-MM-ddThh:mm:ss</translation>
+ </message>
<message>
- <location filename="../libs/libmythtv/recorders/ExternalSignalMonitor.cpp" line="97"/>
+- <location filename="../libs/libmythtv/recorders/ExternalSignalMonitor.cpp" line="97"/>
++ <location filename="../libs/libmythtv/recorders/ExternalSignalMonitor.cpp" line="110"/>
<source>Error: stream handler died</source>
- <translation>Error: stream handler died</translation>
+ <translation>Error: Stream Handler Died</translation>
@@ -19805,7 +19914,7 @@
</message>
<message>
<location filename="../programs/mythbackend/upnpcdsmusic.cpp" line="105"/>
-@@ -20717,6 +21283,11 @@
+@@ -20717,6 +21396,11 @@
<source>Genre</source>
<translation>Genre</translation>
</message>
@@ -19817,7 +19926,7 @@
</context>
<context>
<name>RawSettingsEditor</name>
-@@ -20729,12 +21300,12 @@
+@@ -20729,12 +21413,12 @@
<context>
<name>RecMetadataEdit</name>
<message>
@@ -19833,7 +19942,7 @@
<source>No match found for this recording. You can try entering a TVDB/TMDB number, season, and episode manually.</source>
<translation>No match found for this recording. You can try entering a TVDB/TMDB number, season, and episode manually.</translation>
</message>
-@@ -20742,14 +21313,18 @@
+@@ -20742,14 +21426,18 @@
<context>
<name>RecordingProfileEditor</name>
<message>
@@ -19856,7 +19965,7 @@
</message>
</context>
<context>
-@@ -20822,128 +21397,130 @@
+@@ -20822,128 +21510,130 @@
<message>
<location filename="../libs/libmythtv/channelscan/scanmonitor.cpp" line="117"/>
<source>Scanning</source>
@@ -20034,7 +20143,7 @@
</message>
</context>
<context>
-@@ -20951,168 +21528,173 @@
+@@ -20951,168 +21641,173 @@
<message>
<location filename="../programs/mythfrontend/scheduleeditor.cpp" line="52"/>
<source>New episode</source>
@@ -20115,7 +20224,7 @@
+ <location filename="../programs/mythfrontend/schedulecommon.cpp" line="296"/>
<source>The following programs will be recorded instead:</source>
- <translation>The following programs will be recorded instead:</translation>
-+ <translation>Tthe Following Programs Will Be Recorded Instead:</translation>
++ <translation>The Following Programs Will Be Recorded Instead:</translation>
+ </message>
+ <message>
+ <location filename="../programs/mythfrontend/schedulecommon.cpp" line="335"/>
@@ -20272,7 +20381,7 @@
</message>
</context>
<context>
-@@ -21147,75 +21729,75 @@
+@@ -21147,75 +21842,75 @@
</message>
<message>
<location filename="../programs/mythfrontend/scheduleeditor.cpp" line="576"/>
@@ -20362,7 +20471,7 @@
<source>Default</source>
<translation>Default</translation>
</message>
-@@ -21251,7 +21833,7 @@
+@@ -21251,7 +21946,7 @@
<message>
<location filename="../libs/libmyth/schemawizard.cpp" line="249"/>
<source>Error: This version of Myth%1 requires MySQL %2.%3.%4 or later. You seem to be running MySQL version %5.</source>
@@ -20371,7 +20480,7 @@
</message>
<message>
<location filename="../libs/libmyth/schemawizard.cpp" line="317"/>
-@@ -21316,7 +21898,7 @@
+@@ -21316,7 +22011,7 @@
<message>
<location filename="../libs/libmyth/schemawizard.cpp" line="402"/>
<source>This cannot be un-done, so having a database backup would be a good idea.</source>
@@ -20380,7 +20489,7 @@
</message>
</context>
<context>
-@@ -21324,68 +21906,116 @@
+@@ -21324,68 +22019,116 @@
<message>
<location filename="../libs/libmythtv/signalmonitorvalue.cpp" line="24"/>
<source>Could not open tuner device</source>
@@ -20448,7 +20557,7 @@
+ <message>
+ <location filename="../programs/mythfrontend/galleryconfig.cpp" line="103"/>
+ <source>The delay before showing the Loading/Playing status, in milliseconds.</source>
-+ <translation>The delay before showing the Loading/Playing status, in milliseconds.</translation>
++ <translation>The delay before showing the loading/playing status, in milliseconds.</translation>
+ </message>
+ <message>
+ <location filename="../programs/mythfrontend/galleryconfig.cpp" line="108"/>
@@ -20511,7 +20620,7 @@
</message>
<message>
<location filename="../programs/mythtv-setup/startprompt.cpp" line="73"/>
-@@ -21395,7 +22025,7 @@
+@@ -21395,7 +22138,7 @@
<message>
<location filename="../programs/mythtv-setup/startprompt.cpp" line="77"/>
<source>Recording Status: RECORDING.</source>
@@ -20520,7 +20629,7 @@
</message>
<message>
<location filename="../programs/mythtv-setup/startprompt.cpp" line="78"/>
-@@ -21405,7 +22035,7 @@
+@@ -21405,7 +22148,7 @@
<message>
<location filename="../programs/mythtv-setup/startprompt.cpp" line="82"/>
<source>Recording Status: None.</source>
@@ -20529,12 +20638,12 @@
</message>
<message>
<location filename="../programs/mythtv-setup/startprompt.cpp" line="103"/>
-@@ -21426,15 +22056,15 @@
+@@ -21426,15 +22169,15 @@
<context>
<name>StartingChannel</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3318"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3247"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3257"/>
<source>Please add channels to this source</source>
- <translation>Please add channels to this source</translation>
+ <translation>Please Add Channels to This Source</translation>
@@ -20548,7 +20657,7 @@
<source>%n (is) LiveTV and consume(s) %1
</source>
<translation>
-@@ -21445,7 +22075,7 @@
+@@ -21445,7 +22188,7 @@
</translation>
</message>
<message numerus="yes">
@@ -20557,7 +20666,7 @@
<source>%n (is) Deleted and consume(s) %1
</source>
<translation>
-@@ -21457,7 +22087,7 @@
+@@ -21457,7 +22200,7 @@
</message>
<message numerus="yes">
<location filename="../programs/mythfrontend/statusbox.cpp" line="592"/>
@@ -20566,7 +20675,7 @@
<source>%n day(s)</source>
<translation>
<numerusform>%n day</numerusform>
-@@ -21568,7 +22198,7 @@
+@@ -21568,7 +22311,7 @@
<message>
<location filename="../programs/mythfrontend/statusbox.cpp" line="370"/>
<source>Move to Default group</source>
@@ -20575,7 +20684,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/statusbox.cpp" line="374"/>
-@@ -21588,7 +22218,7 @@
+@@ -21588,7 +22331,7 @@
<message>
<location filename="../programs/mythfrontend/statusbox.cpp" line="546"/>
<source>Mythfrontend version: %1 (%2)</source>
@@ -20584,7 +20693,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/statusbox.cpp" line="548"/>
-@@ -21633,7 +22263,7 @@
+@@ -21633,7 +22376,7 @@
<message>
<location filename="../programs/mythfrontend/statusbox.cpp" line="597"/>
<source>WARNING: is mythfilldatabase running?</source>
@@ -20593,7 +20702,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/statusbox.cpp" line="602"/>
-@@ -21678,47 +22308,47 @@
+@@ -21678,47 +22421,47 @@
</translation>
</message>
<message>
@@ -20650,7 +20759,7 @@
<source>On %1 from %2.%3
%4
</source>
-@@ -21726,27 +22356,27 @@
+@@ -21726,27 +22469,27 @@
%4</translation>
</message>
<message>
@@ -20683,7 +20792,7 @@
<source>%n hour(s)</source>
<translation>
<numerusform>%n hour</numerusform>
-@@ -21754,7 +22384,7 @@
+@@ -21754,7 +22497,7 @@
</translation>
</message>
<message numerus="yes">
@@ -20692,7 +20801,7 @@
<source>%n minute(s)</source>
<translation>
<numerusform>%n minute</numerusform>
-@@ -21762,178 +22392,178 @@
+@@ -21762,178 +22505,182 @@
</translation>
</message>
<message>
@@ -20829,6 +20938,10 @@
<message>
- <location filename="../programs/mythfrontend/statusbox.cpp" line="1230"/>
- <location filename="../programs/mythfrontend/statusbox.cpp" line="1278"/>
++ <source>Hostname</source>
++ <translation type="obsolete">Hostname</translation>
++ </message>
++ <message>
+ <location filename="../programs/mythfrontend/statusbox.cpp" line="1237"/>
+ <location filename="../programs/mythfrontend/statusbox.cpp" line="1285"/>
<source>Load</source>
@@ -20911,7 +21024,7 @@
<source>%n recording(s) consuming %1 (is) allowed to expire
</source>
<translation>
-@@ -21945,58 +22575,81 @@
+@@ -21945,58 +22692,81 @@
</message>
</context>
<context>
@@ -21010,7 +21123,7 @@
<source>(Add New Directory)</source>
<translation>(Add New Directory)</translation>
</message>
-@@ -22004,168 +22657,170 @@
+@@ -22004,168 +22774,170 @@
<context>
<name>StorageGroupListEditor</name>
<message>
@@ -21211,9 +21324,9 @@
- <location filename="../libs/libmythtv/tv_play.cpp" line="13088"/>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13116"/>
+ <location filename="../libs/libmythtv/tv_play.cpp" line="6779"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12076"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13019"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13047"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12080"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13023"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13051"/>
<source>Jump Back</source>
<translation>Jump Back</translation>
</message>
@@ -21237,7 +21350,7 @@
<source>Sorry, PBP only supports %n video stream(s)</source>
<translation>
<numerusform>Sorry, PBP only supports %n video stream</numerusform>
-@@ -22173,7 +22828,7 @@
+@@ -22173,7 +22945,7 @@
</translation>
</message>
<message numerus="yes">
@@ -21246,7 +21359,7 @@
<source>Sorry, PIP only supports %n video stream(s)</source>
<translation>
<numerusform>Sorry, PIP only supports %n video stream</numerusform>
-@@ -22181,266 +22836,266 @@
+@@ -22181,266 +22953,266 @@
</translation>
</message>
<message>
@@ -21277,9 +21390,9 @@
- <location filename="../libs/libmythtv/tv_play.cpp" line="13076"/>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13161"/>
+ <location filename="../libs/libmythtv/tv_play.cpp" line="6776"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12071"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13007"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13092"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12075"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13011"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13096"/>
<source>Jump Ahead</source>
<translation>Jump Ahead</translation>
</message>
@@ -21323,7 +21436,7 @@
- <location filename="../libs/libmythtv/tv_play.cpp" line="5078"/>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13427"/>
+ <location filename="../libs/libmythtv/tv_play.cpp" line="5092"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13358"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13362"/>
<source>Are you sure you want to delete:</source>
<translation>Are you sure you want to delete:</translation>
</message>
@@ -21563,8 +21676,8 @@
- <location filename="../libs/libmythtv/tv_play.cpp" line="12964"/>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13342"/>
+ <location filename="../libs/libmythtv/tv_play.cpp" line="8402"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12895"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13273"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12899"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13277"/>
<source>OK</source>
<translation>OK</translation>
</message>
@@ -21582,7 +21695,7 @@
<location filename="../libs/libmythtv/tvbrowsehelper.cpp" line="26"/>
<location filename="../libs/libmythtv/tvbrowsehelper.cpp" line="310"/>
<source>%n minute(s)</source>
-@@ -22450,425 +23105,425 @@
+@@ -22450,425 +23222,425 @@
</translation>
</message>
<message>
@@ -21717,7 +21830,7 @@
- <location filename="../libs/libmythtv/tv_play.cpp" line="9031"/>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12515"/>
+ <location filename="../libs/libmythtv/tv_play.cpp" line="8958"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12446"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12450"/>
<source>Adjust Time Stretch</source>
<translation>Adjust Time Stretch</translation>
</message>
@@ -21737,7 +21850,7 @@
- <location filename="../libs/libmythtv/tv_play.cpp" line="9125"/>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12035"/>
+ <location filename="../libs/libmythtv/tv_play.cpp" line="9052"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11966"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11970"/>
<source>Adjust Subtitle Delay</source>
<translation>Adjust Subtitle Delay</translation>
</message>
@@ -21757,7 +21870,7 @@
- <location filename="../libs/libmythtv/tv_play.cpp" line="9154"/>
- <location filename="../libs/libmythtv/tv_play.cpp" line="11931"/>
+ <location filename="../libs/libmythtv/tv_play.cpp" line="9081"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11862"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11866"/>
<source>Adjust Audio Sync</source>
<translation>Adjust Audio Sync</translation>
</message>
@@ -21870,7 +21983,7 @@
- <location filename="../libs/libmythtv/tv_play.cpp" line="12533"/>
+ <location filename="../libs/libmythtv/tv_play.cpp" line="10220"/>
+ <location filename="../libs/libmythtv/tv_play.cpp" line="10235"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12464"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12468"/>
<source>Edit Cut Points</source>
<translation>Edit Cut Points</translation>
</message>
@@ -22081,137 +22194,137 @@
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="11981"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11912"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11916"/>
<source>Disable Subtitles</source>
<translation>Disable Subtitles</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="11987"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11918"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11922"/>
<source>Enable Subtitles</source>
<translation>Enable Subtitles</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="11995"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11926"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11930"/>
<source>Disable Forced Subtitles</source>
<translation>Disable Forced Subtitles</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12004"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11935"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11939"/>
<source>Enable Forced Subtitles</source>
<translation>Enable Forced Subtitles</translation>
</message>
<message numerus="yes">
- <location filename="../libs/libmythtv/tv_play.cpp" line="12093"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12024"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12028"/>
<source>Close PIP(s)</source>
<translation>
<numerusform>Close PIP</numerusform>
-@@ -22876,7 +23531,7 @@
+@@ -22876,7 +23648,7 @@
</translation>
</message>
<message numerus="yes">
- <location filename="../libs/libmythtv/tv_play.cpp" line="12103"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12034"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12038"/>
<source>Close PBP(s)</source>
<translation>
<numerusform>Close PBP</numerusform>
-@@ -22884,701 +23539,701 @@
+@@ -22884,701 +23656,701 @@
</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12135"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12066"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12070"/>
<source>Playback Data</source>
<translation>Playback Data</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12152"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12083"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12087"/>
<source>DVD Root Menu</source>
<translation>DVD Root Menu</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12163"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12094"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12098"/>
<source>DVD Title Menu</source>
<translation>DVD Title Menu</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12168"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12099"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12103"/>
<source>DVD Chapter Menu</source>
<translation>DVD Chapter Menu</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12496"/>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12547"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12427"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12478"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12431"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12482"/>
<source>Playback Compact Menu</source>
<translation>Playback Compact Menu</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12524"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12455"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12459"/>
<source>Schedule</source>
<translation>Schedule</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12177"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12108"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12112"/>
<source>Program Guide</source>
<translation>Program Guide</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12217"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12148"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12152"/>
<source>Edit Channel</source>
<translation>Edit Channel</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12217"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12148"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12152"/>
<source>Edit Recording</source>
<translation>Edit Recording</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12526"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12457"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12461"/>
<source>Jump to Program</source>
<translation>Jump to Program</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12193"/>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12574"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12124"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12505"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12128"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12509"/>
<source>Recorded Program</source>
<translation>Recorded Program</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12173"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12104"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12108"/>
<source>Previous Channel</source>
<translation>Previous Channel</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12022"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11953"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11957"/>
<source>Toggle Teletext Menu</source>
<translation>Toggle Teletext Menu</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="11966"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11897"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11901"/>
<source>Manual Zoom Mode</source>
<translation>Manual Zoom Mode</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12518"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12449"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12453"/>
<source>Channel Groups</source>
<translation>Channel Groups</translation>
</message>
@@ -22223,13 +22336,13 @@
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12234"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12165"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12169"/>
<source>Stop Transcoding</source>
<translation>Stop Transcoding</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12530"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12461"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12465"/>
<source>Begin Transcoding</source>
<translation>Begin Transcoding</translation>
</message>
@@ -22258,82 +22371,82 @@
- <location filename="../libs/libmythtv/tv_play.cpp" line="10334"/>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12485"/>
+ <location filename="../libs/libmythtv/tv_play.cpp" line="10265"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12416"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12420"/>
<source>Edit</source>
<translation>Edit</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12234"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12165"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12169"/>
<source>Default</source>
<translation>Default</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12242"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12173"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12177"/>
<source>Autodetect</source>
<translation>Autodetect</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12250"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12181"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12185"/>
<source>High Quality</source>
<translation>High Quality</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12258"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12189"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12193"/>
<source>Medium Quality</source>
<translation>Medium Quality</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12266"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12197"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12201"/>
<source>Low Quality</source>
<translation>Low Quality</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12520"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12451"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12455"/>
<source>Commercial Auto-Skip</source>
- <translation>Commercial Auto-Skip</translation>
+ <translation>Commercial Auto-skip</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12226"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12157"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12161"/>
<source>Turn Auto-Expire OFF</source>
- <translation>Turn Auto-Expire OFF</translation>
+ <translation>Turn Auto-expire Off</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12226"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12157"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12161"/>
<source>Turn Auto-Expire ON</source>
- <translation>Turn Auto-Expire ON</translation>
+ <translation>Turn Auto-expire On</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12185"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12116"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12120"/>
<source>Upcoming Recordings</source>
<translation>Upcoming Recordings</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12181"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12112"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12116"/>
<source>Program Finder</source>
<translation>Program Finder</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12189"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12120"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12124"/>
<source>Edit Recording Schedule</source>
<translation>Edit Recording Schedule</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12521"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12452"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12456"/>
<source>Chapter</source>
<translation>Chapter</translation>
</message>
@@ -22347,14 +22460,14 @@
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12495"/>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12543"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12426"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12474"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12430"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12478"/>
<source>Playback Menu</source>
<translation>Playback Menu</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12497"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12428"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12432"/>
<source>Audio</source>
<translation>Audio</translation>
</message>
@@ -22362,7 +22475,7 @@
- <location filename="../libs/libmythtv/tv_play.cpp" line="8958"/>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12500"/>
+ <location filename="../libs/libmythtv/tv_play.cpp" line="8885"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12431"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12435"/>
<source>Video</source>
<translation>Video</translation>
</message>
@@ -22382,7 +22495,7 @@
- <location filename="../libs/libmythtv/tv_play.cpp" line="9087"/>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12027"/>
+ <location filename="../libs/libmythtv/tv_play.cpp" line="9014"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11958"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11962"/>
<source>Adjust Subtitle Zoom</source>
<translation>Adjust Subtitle Zoom</translation>
</message>
@@ -22394,204 +22507,204 @@
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12505"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12436"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12440"/>
<source>Advanced</source>
<translation>Advanced</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12507"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12438"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12442"/>
<source>Deinterlacer</source>
<translation>Deinterlacer</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12508"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12439"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12443"/>
<source>Subtitles</source>
<translation>Subtitles</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12510"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12441"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12445"/>
<source>Text Subtitles</source>
<translation>Text Subtitles</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12513"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12444"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12448"/>
<source>Select Teletext CC</source>
<translation>Select Teletext CC</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12519"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12450"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12454"/>
<source>Navigate</source>
<translation>Navigate</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12152"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12083"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12087"/>
<source>Top menu</source>
- <translation>Top menu</translation>
+ <translation>Top Menu</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12158"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12089"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12093"/>
<source>Popup menu</source>
- <translation>Popup menu</translation>
+ <translation>Popup Menu</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12522"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12453"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12457"/>
<source>Angle</source>
<translation>Angle</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12523"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12454"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12458"/>
<source>Title</source>
<translation>Title</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12525"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12456"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12460"/>
<source>Source</source>
<translation>Source</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12529"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12460"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12464"/>
<source>Jobs</source>
<translation>Jobs</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12514"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12445"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12449"/>
<source>Playback</source>
<translation>Playback</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12041"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11972"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11976"/>
<source>Play</source>
<translation>Play</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12041"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11972"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11976"/>
<source>Pause</source>
<translation>Pause</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12516"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12447"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12451"/>
<source>Picture-in-Picture</source>
<translation>Picture-in-Picture</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12126"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12057"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12061"/>
<source>Toggle Browse Mode</source>
<translation>Toggle Browse Mode</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12131"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12062"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12066"/>
<source>Cancel Playlist</source>
<translation>Cancel Playlist</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12053"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11984"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11988"/>
<source>Open Live TV PIP</source>
<translation>Open Live TV PIP</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12062"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11993"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11997"/>
<source>Open Live TV PBP</source>
<translation>Open Live TV PBP</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12070"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12001"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12005"/>
<source>Open Recording PIP</source>
<translation>Open Recording PIP</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12078"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12009"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12013"/>
<source>Open Recording PBP</source>
<translation>Open Recording PBP</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12084"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12015"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12019"/>
<source>Change Active Window</source>
<translation>Change Active Window</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12110"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12041"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12045"/>
<source>Swap Windows</source>
<translation>Swap Windows</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12120"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12051"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12055"/>
<source>Switch to PIP</source>
<translation>Switch to PIP</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12120"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12051"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12055"/>
<source>Switch to PBP</source>
<translation>Switch to PBP</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13386"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13317"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13321"/>
<source>No, keep it</source>
- <translation>No, keep it</translation>
+ <translation>No, Keep</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12527"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12458"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12462"/>
<source>Switch Input</source>
<translation>Switch Input</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12528"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12459"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12463"/>
<source>Switch Source</source>
<translation>Switch Source</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12501"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12432"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12436"/>
<source>Change Aspect Ratio</source>
<translation>Change Aspect Ratio</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12502"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12433"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12437"/>
<source>Adjust Fill</source>
<translation>Adjust Fill</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="11951"/>
- <location filename="../libs/libmythtv/tv_play.cpp" line="11961"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11882"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11892"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11886"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11896"/>
<source>Auto Detect</source>
<translation>Auto Detect</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12503"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12434"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12438"/>
<source>Adjust Picture</source>
<translation>Adjust Picture</translation>
</message>
@@ -22603,14 +22716,14 @@
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12499"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12430"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12434"/>
<source>Visualisation</source>
<translatorcomment>Original string is in British English</translatorcomment>
<translation>Visualization</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="11943"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11874"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11878"/>
<source>Disable Audio Upmixer</source>
<translation>Disable Audio Upmixer</translation>
</message>
@@ -22618,25 +22731,25 @@
- <location filename="../libs/libmythtv/tv_play.cpp" line="11696"/>
- <location filename="../libs/libmythtv/tv_play.cpp" line="11936"/>
+ <location filename="../libs/libmythtv/tv_play.cpp" line="11627"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11867"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11871"/>
<source>None</source>
<translation>None</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12504"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12435"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12439"/>
<source>3D</source>
<translation>3D</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="11974"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11905"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11909"/>
<source>Disable Night Mode</source>
<translation>Disable Night Mode</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="11974"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11905"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11909"/>
<source>Enable Night Mode</source>
<translation>Enable Night Mode</translation>
</message>
@@ -22666,19 +22779,19 @@
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12011"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11942"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11946"/>
<source>Disable External Subtitles</source>
<translation>Disable External Subtitles</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12017"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11948"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11952"/>
<source>Enable External Subtitles</source>
<translation>Enable External Subtitles</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12045"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="11976"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="11980"/>
<source>Toggle</source>
<translation>Toggle</translation>
</message>
@@ -22690,35 +22803,35 @@
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12429"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12360"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12364"/>
<source>(I)</source>
<comment>Interlaced (Normal)</comment>
<translation>(I)</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12431"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12362"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12366"/>
<source>(i)</source>
<comment>Interlaced (Reversed)</comment>
<translation>(i)</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12433"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12364"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12368"/>
<source>(P)</source>
<comment>Progressive</comment>
<translation>(P)</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12942"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12873"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12877"/>
<source>MythTV is already using all available inputs for the channel you selected. If you want to watch an in-progress recording, select one from the playback menu. If you want to watch Live TV, cancel one of the in-progress recordings from the delete menu.</source>
- <translation>MythTV is already using all available inputs for the channel you selected. If you want to watch an in-progress recording, select one from the playback menu. If you want to watch Live TV, cancel one of the in-progress recordings from the delete menu.</translation>
+ <translation>MythTV is already using all available inputs for the channel you selected. If you want to watch an in-progress recording, select one from the playback menu. If you want to watch Live TV, cancel one of the in-progress recordings from the delete menu.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12506"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12437"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12441"/>
<source>Video Scan</source>
<translation>Video Scan</translation>
</message>
@@ -22750,9 +22863,9 @@
- <location filename="../libs/libmythtv/tv_play.cpp" line="12517"/>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12929"/>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12931"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12448"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12860"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12862"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12452"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12864"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12866"/>
<source>Sleep</source>
<translation>Sleep</translation>
</message>
@@ -22764,204 +22877,205 @@
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12498"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12429"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12433"/>
<source>Select Audio Track</source>
<translation>Select Audio Track</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12509"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12440"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12444"/>
<source>Select Subtitle</source>
<translation>Select Subtitle</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12512"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12443"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12447"/>
<source>Select VBI CC</source>
<translation>Select VBI CC</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12511"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12442"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12446"/>
<source>Select ATSC CC</source>
<translation>Select ATSC CC</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12534"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12465"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12469"/>
<source>Edit Cut Points (Compact)</source>
<translation>Edit Cut Points (Compact)</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12535"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12466"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12470"/>
<source>Cut List Options</source>
<translation>Cut List Options</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12703"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12634"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12638"/>
<source>Auto-Expire OFF</source>
- <translation>Auto-Expire OFF</translation>
+ <translation>Auto-expire Off</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12708"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12639"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12643"/>
<source>Auto-Expire ON</source>
- <translation>Auto-Expire ON</translation>
+ <translation>Auto-expire On</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12951"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12882"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12886"/>
<source>Error: MythTV is using all inputs, but there are no active recordings?</source>
- <translation>Error: MythTV is using all inputs, but there are no active recordings?</translation>
+ <translation>ERROR: MythTV is using all inputs, but there are no active recordings?</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="12955"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="12886"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="12890"/>
<source>MythTV has no capture cards defined. Please run the mythtv-setup program.</source>
<translation>MythTV has no capture cards defined. Please run the mythtv-setup program.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13104"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13035"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13039"/>
<source>Skip Back Not Allowed</source>
<translation>Skip Back Not Allowed</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13127"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13058"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13062"/>
<source>Previous Title</source>
<translation>Previous Title</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13146"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13077"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13081"/>
<source>Skip Still Frame</source>
<translation>Skip Still Frame</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13172"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13103"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13107"/>
<source>Next Title</source>
<translation>Next Title</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13235"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13166"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13170"/>
<source>Live TV</source>
<translation>Live TV</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13237"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13168"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13172"/>
<source>this DVD</source>
<translation>this DVD</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13241"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13172"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13176"/>
<source>this Video</source>
<translation>this Video</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13245"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13176"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13180"/>
<source>this recording</source>
- <translation>this recording</translation>
+ <translation>this Recording</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13251"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13182"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13186"/>
<source>You are exiting %1</source>
- <translation>You are exiting %1</translation>
+ <translation>You Are Exiting %1</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13255"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13186"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13190"/>
<source>Save this position and go to the menu</source>
- <translation>Save this position and go to the menu</translation>
+ <translation>Save and Exit</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13257"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13188"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13192"/>
<source>Do not save, just exit to the menu</source>
- <translation>Do not save, just exit to the menu</translation>
+ <translation>Exit Without Saving</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13261"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13192"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13196"/>
<source>Exit %1</source>
<translation>Exit %1</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13265"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13196"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13200"/>
<source>Delete this recording</source>
<translation>Delete this recording</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13268"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13199"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13203"/>
<source>Keep watching</source>
<translation>Keep watching</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13314"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13245"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13249"/>
<source>Cannot delete program </source>
- <translation>Cannot delete program </translation>
+- <translation>Cannot delete program </translation>
++ <translation>Cannot delete </translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13323"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13254"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13258"/>
<source>because it is not a recording.</source>
<translation>because it is not a recording.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13327"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13258"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13262"/>
<source>because it is in use by</source>
<translation>because it is in use by</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13373"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13304"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13308"/>
<source>Delete it, but allow it to re-record</source>
- <translation>Delete it, but allow it to re-record</translation>
+ <translation>Delete Recording, and Allow Re-record</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13375"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13306"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13310"/>
<source>Delete it</source>
- <translation>Delete it</translation>
+ <translation>Delete Recording</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13377"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13308"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13312"/>
<source>Save it so I can watch it again</source>
- <translation>Save it so I can watch it again</translation>
+ <translation>Keep Recording</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13382"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13313"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13317"/>
<source>Yes, and allow re-record</source>
- <translation>Yes, and allow re-record</translation>
+ <translation>Yes, Delete and Allow Re-record</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_play.cpp" line="13384"/>
-+ <location filename="../libs/libmythtv/tv_play.cpp" line="13315"/>
++ <location filename="../libs/libmythtv/tv_play.cpp" line="13319"/>
<source>Yes, delete it</source>
- <translation>Yes, delete it</translation>
+ <translation>Yes, Delete</translation>
@@ -22971,25 +23085,25 @@
<name>TVRec</name>
<message>
- <location filename="../libs/libmythtv/tv_rec.cpp" line="3934"/>
-+ <location filename="../libs/libmythtv/tv_rec.cpp" line="3959"/>
++ <location filename="../libs/libmythtv/tv_rec.cpp" line="3912"/>
<source>Good signal seen after %1 ms</source>
<translation>Good signal seen after %1 ms</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_rec.cpp" line="3943"/>
- <location filename="../libs/libmythtv/tv_rec.cpp" line="3995"/>
-+ <location filename="../libs/libmythtv/tv_rec.cpp" line="3968"/>
-+ <location filename="../libs/libmythtv/tv_rec.cpp" line="4027"/>
++ <location filename="../libs/libmythtv/tv_rec.cpp" line="3921"/>
++ <location filename="../libs/libmythtv/tv_rec.cpp" line="3976"/>
<source>See &apos;Tuning timeout&apos; in mythtv-setup for this input.</source>
<translation>See &apos;Tuning timeout&apos; in mythtv-setup for this input.</translation>
</message>
<message>
- <location filename="../libs/libmythtv/tv_rec.cpp" line="3987"/>
-+ <location filename="../libs/libmythtv/tv_rec.cpp" line="4019"/>
++ <location filename="../libs/libmythtv/tv_rec.cpp" line="3968"/>
<source>Taking more than %1 ms to get a lock.</source>
<translation>Taking more than %1 ms to get a lock.</translation>
</message>
-@@ -23586,7 +24241,7 @@
+@@ -23586,133 +24358,133 @@
<context>
<name>ThemeChooser</name>
<message>
@@ -22998,8 +23112,11 @@
<source>Theme Chooser Menu</source>
<translation>Theme Chooser Menu</translation>
</message>
-@@ -23596,123 +24251,123 @@
- <translation>Loading Installed Themes</translation>
+ <message>
+ <location filename="../programs/mythfrontend/themechooser.cpp" line="152"/>
+ <source>Loading Installed Themes</source>
+- <translation>Loading Installed Themes</translation>
++ <translation>Loading Installed Themes...</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/themechooser.cpp" line="271"/>
@@ -23013,7 +23130,8 @@
- <location filename="../programs/mythfrontend/themechooser.cpp" line="275"/>
+ <location filename="../programs/mythfrontend/themechooser.cpp" line="284"/>
<source>Refreshing Downloadable Themes Information</source>
- <translation>Refreshing Downloadable Themes Information</translation>
+- <translation>Refreshing Downloadable Themes Information</translation>
++ <translation>Refreshing Downloadable Themes Information...</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/themechooser.cpp" line="283"/>
@@ -23025,7 +23143,8 @@
- <location filename="../programs/mythfrontend/themechooser.cpp" line="292"/>
+ <location filename="../programs/mythfrontend/themechooser.cpp" line="301"/>
<source>Extracting Downloadable Themes Information</source>
- <translation>Extracting Downloadable Themes Information</translation>
+- <translation>Extracting Downloadable Themes Information</translation>
++ <translation>Extracting Downloadable Themes Information...</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/themechooser.cpp" line="307"/>
@@ -23045,7 +23164,8 @@
- <location filename="../programs/mythfrontend/themechooser.cpp" line="333"/>
+ <location filename="../programs/mythfrontend/themechooser.cpp" line="342"/>
<source>Loading Downloadable Themes</source>
- <translation>Loading Downloadable Themes</translation>
+- <translation>Loading Downloadable Themes</translation>
++ <translation>Loading Downloadable Themes...</translation>
</message>
<message>
- <location filename="../programs/mythfrontend/themechooser.cpp" line="496"/>
@@ -23153,7 +23273,7 @@
<source>%1 is not a user-installed theme and can not be deleted.</source>
<translation>%1 is not a user-installed theme and can not be deleted.</translation>
</message>
-@@ -23976,7 +24631,7 @@
+@@ -23976,7 +24748,7 @@
<message>
<location filename="../themes/themestrings.h" line="718"/>
<source>To manually schedule a recording, enter a title (optional). Then set the channel, date, start time, and duration of your recording. Note that this recording will not have any listings data or other information provided by an EPG.</source>
@@ -23162,7 +23282,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="851"/>
-@@ -24130,7 +24785,7 @@
+@@ -24130,7 +24902,7 @@
<message>
<location filename="../themes/themestrings.h" line="729"/>
<source>Below you will find the program details of the selected item. There are two available screens. You can toggle between them by pressing INFO.</source>
@@ -23171,7 +23291,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="866"/>
-@@ -24317,7 +24972,7 @@
+@@ -24317,7 +25089,7 @@
<message>
<location filename="../themes/themestrings.h" line="890"/>
<source>Allow Recordings to Auto-Expire</source>
@@ -23180,7 +23300,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="891"/>
-@@ -24397,7 +25052,7 @@
+@@ -24397,7 +25169,7 @@
<message>
<location filename="../themes/themestrings.h" line="908"/>
<source>Type your tweet below. Select &quot;Send&quot; to submit it.</source>
@@ -23189,7 +23309,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="909"/>
-@@ -24452,7 +25107,7 @@
+@@ -24452,7 +25224,7 @@
<message>
<location filename="../themes/themestrings.h" line="390"/>
<source>WARNING: There are conflicting scheduled recordings!</source>
@@ -23198,7 +23318,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="954"/>
-@@ -24604,7 +25259,7 @@
+@@ -24604,7 +25376,7 @@
<message>
<location filename="../themes/themestrings.h" line="994"/>
<source>Graphite is a theme emphasizing MythUI interface improvements such as alpha, animation, unique layouts, and user-supplied backdrop content. It is extremely memory-hungry.</source>
@@ -23207,7 +23327,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="1011"/>
-@@ -25307,7 +25962,7 @@
+@@ -25307,7 +26079,7 @@
<message>
<location filename="../themes/themestrings.h" line="1080"/>
<source>Press Up/Down from letter list, to navigate to another list. Press Left/Right from Show or Episode list to navigate to another list.</source>
@@ -23216,7 +23336,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="1083"/>
-@@ -25332,7 +25987,7 @@
+@@ -25332,7 +26104,7 @@
<message>
<location filename="../themes/themestrings.h" line="1106"/>
<source>No videos in library, or no files found. If you have configured a video directory, press MENU and select &quot;Scan for Changes.&quot;</source>
@@ -23225,7 +23345,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="745"/>
-@@ -25376,7 +26031,7 @@
+@@ -25376,7 +26148,7 @@
<message>
<location filename="../themes/themestrings.h" line="1122"/>
<source>Designed to show off some different element arrangements. Reminder: On Watch Recordings screen [Rew] and [FF] can be used to change the Rec. Group.</source>
@@ -23234,7 +23354,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="1123"/>
-@@ -25627,7 +26282,7 @@
+@@ -25627,7 +26399,7 @@
<message>
<location filename="../themes/themestrings.h" line="1172"/>
<source>Protocol-Version: %1</source>
@@ -23243,7 +23363,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="1173"/>
-@@ -25860,7 +26515,7 @@
+@@ -25860,7 +26632,7 @@
<message>
<location filename="../themes/themestrings.h" line="360"/>
<source>Move the selected corner of the preview image to the corner of the TV screen. Press SELECT to edit the other corner. Press MENU for options and ESC to quit.</source>
@@ -23252,7 +23372,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="417"/>
-@@ -26303,7 +26958,7 @@
+@@ -26303,7 +27075,7 @@
<message>
<location filename="../themes/themestrings.h" line="638"/>
<source>Ok</source>
@@ -23261,7 +23381,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="639"/>
-@@ -26423,7 +27078,7 @@
+@@ -26423,7 +27195,7 @@
<message>
<location filename="../themes/themestrings.h" line="665"/>
<source>PCM-BluRay</source>
@@ -23270,7 +23390,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="666"/>
-@@ -26618,7 +27273,7 @@
+@@ -26618,7 +27390,7 @@
<message>
<location filename="../themes/themestrings.h" line="706"/>
<source>To create a custom recording rule, either select an existing rule, or create a new rule by typing in a name. Then select a rule type and hit enter. The SQL code will be transferred below, and you can edit it and insert your own program information. Finally, you can test, immediately activate, store, or cancel your rule.</source>
@@ -23279,7 +23399,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="708"/>
-@@ -26902,7 +27557,7 @@
+@@ -26902,7 +27674,7 @@
<message>
<location filename="../themes/themestrings.h" line="802"/>
<source>Let&apos;s set up your DVR! On the next few screens, we will configure your system to play back audio and video, optimize your color and contrast, and make sure we are taking advantage of all of your hardware. Press next to begin!</source>
@@ -23288,7 +23408,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="803"/>
-@@ -27454,7 +28109,7 @@
+@@ -27454,7 +28226,7 @@
<message>
<location filename="../themes/themestrings.h" line="1103"/>
<source>Designed to show off some different element arrangements. Tested at 1280x720 and with Français. Reminder: On Watch Recordings screen [Rew] and [FF] can be used to change the Rec. Group.</source>
@@ -23297,7 +23417,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="1107"/>
-@@ -28434,7 +29089,7 @@
+@@ -28434,7 +29206,7 @@
<message>
<location filename="../themes/themestrings.h" line="300"/>
<source>No videos in library, or no files found. If you have configured a video directory, press &quot;M&quot; (or the MENU key) and select &quot;Scan for Changes.&quot;</source>
@@ -23306,7 +23426,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="303"/>
-@@ -28564,7 +29219,7 @@
+@@ -28564,7 +29336,7 @@
<message>
<location filename="../themes/themestrings.h" line="478"/>
<source>Post-Processing Options</source>
@@ -23315,7 +23435,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="279"/>
-@@ -28851,9 +29506,9 @@
+@@ -28851,9 +29623,9 @@
<source>On this screen, you can add new extensions to be recognized by the Video Plugin. If a scan does not add your files, create a new extension below by clicking the &quot;New&quot; button.
If you select &quot;Use Default Player,&quot; the player command set for the extension will be ignored. &quot;Ignore This File Type&quot; prevents the items from appearing in a scan.</source>
@@ -23327,7 +23447,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="922"/>
-@@ -29298,7 +29953,7 @@
+@@ -29298,7 +30070,7 @@
<message>
<location filename="../themes/themestrings.h" line="953"/>
<source>Move the selected arrow to the corner of the TV screen. Press SELECT to edit the other arrow. Press MENU for options and ESC to quit.</source>
@@ -23336,7 +23456,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="160"/>
-@@ -29674,12 +30329,12 @@
+@@ -29674,12 +30446,12 @@
<message>
<location filename="../themes/themestrings.h" line="907"/>
<source>Arclight is a sleek theme meant for widescreen HD displays. It is high contrast and uses shapes and an attractive layout to convey information simply and consistently.</source>
@@ -23351,7 +23471,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="20"/>
-@@ -29699,12 +30354,12 @@
+@@ -29699,12 +30471,12 @@
<message>
<location filename="../themes/themestrings.h" line="293"/>
<source>A blue theme. Originally designed before the MythUI rewrite, MythCenter has been updated to take advantage of the new UI library while still maintaining the look and feel that long-time MythTV users are used to.</source>
@@ -23366,7 +23486,7 @@
</message>
<message>
<location filename="../themes/themestrings.h" line="394"/>
-@@ -29954,7 +30609,7 @@
+@@ -29954,7 +30726,7 @@
<context>
<name>ThemeUpdateChecker</name>
<message>
@@ -23375,7 +23495,7 @@
<source>Version %1 of the %2 theme is now available in the Theme Chooser. The currently installed version is %3.</source>
<translation>Version %1 of the %2 theme is now available in the Theme Chooser. The currently installed version is %3.</translation>
</message>
-@@ -29991,12 +30646,12 @@
+@@ -29991,12 +30763,12 @@
<message>
<location filename="../programs/mythfrontend/galleryconfig.cpp" line="22"/>
<source>Exif Date (oldest first)</source>
@@ -23390,7 +23510,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/galleryconfig.cpp" line="24"/>
-@@ -30046,7 +30701,7 @@
+@@ -30046,12 +30818,23 @@
<translation>Date Format</translation>
</message>
<message>
@@ -23399,7 +23519,23 @@
<source>Date format of thumbnail captions. Other places use the system date format. Sample shows 3rd May 2002.</source>
<translation>Date format of thumbnail captions. Other places use the system date format. Sample shows 3rd May 2002.</translation>
</message>
-@@ -30087,45 +30742,46 @@
+ </context>
+ <context>
++ <name>Transcode</name>
++ <message>
++ <source>Autodetect from %1</source>
++ <translation type="obsolete">Autodetect from %1</translation>
++ </message>
++ <message>
++ <source>Completed</source>
++ <translation type="obsolete">Completed</translation>
++ </message>
++</context>
++<context>
+ <name>Transition</name>
+ <message>
+ <location filename="../programs/mythfrontend/gallerytransitions.h" line="103"/>
+@@ -30087,45 +30870,46 @@
<context>
<name>TransportList</name>
<message>
@@ -23458,7 +23594,7 @@
<source>Delete...</source>
<translation>Delete...</translation>
</message>
-@@ -30133,8 +30789,8 @@
+@@ -30133,8 +30917,8 @@
<context>
<name>UPNPScanner</name>
<message>
@@ -23469,26 +23605,26 @@
<source>Media Servers</source>
<translation>Media Servers</translation>
</message>
-@@ -30230,89 +30886,89 @@
+@@ -30230,89 +31014,89 @@
<context>
<name>V4L2encGroup</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2705"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2650"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2660"/>
<source>Probed info</source>
- <translation>Probed info</translation>
+ <translation>Probed Info</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2729"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2664"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2674"/>
<source>Failed to open</source>
- <translation>Failed to open</translation>
+ <translation>Failed to Open</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2735"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2670"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2680"/>
<source>Failed to probe</source>
- <translation>Failed to probe</translation>
+ <translation>Failed to Probe</translation>
@@ -23498,21 +23634,21 @@
<name>V4LConfigurationGroup</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2470"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2417"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2420"/>
<source>Probed info</source>
- <translation>Probed info</translation>
+ <translation>Probed Info</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2485"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2435"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2438"/>
<source>Failed to open</source>
- <translation>Failed to open</translation>
+ <translation>Failed to Open</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2492"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2442"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2445"/>
<source>Failed to probe</source>
- <translation>Failed to probe</translation>
+ <translation>Failed to Probe</translation>
@@ -23581,12 +23717,12 @@
<source>Done</source>
<translation>Done</translation>
</message>
-@@ -30320,35 +30976,34 @@
+@@ -30320,35 +31104,34 @@
<context>
<name>VBoxConfigurationGroup</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="2267"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="2237"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="2240"/>
<source>Description</source>
<translation>Description</translation>
</message>
@@ -23601,13 +23737,13 @@
<name>VBoxDeviceID</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1663"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1693"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1696"/>
<source>Device ID</source>
<translation>Device ID</translation>
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="1664"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1694"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1697"/>
<source>Device ID of VBox device</source>
- <translation>Device ID of VBox device</translation>
+ <translation>Device ID of VBox Device</translation>
@@ -23619,13 +23755,13 @@
- <location filename="../libs/libmythtv/videosource.cpp" line="1735"/>
- <location filename="../libs/libmythtv/videosource.cpp" line="1779"/>
- <location filename="../libs/libmythtv/videosource.cpp" line="1786"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1768"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1814"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="1821"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1771"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1817"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="1824"/>
<source>Manually Enter IP Address</source>
<translation>Manually Enter IP Address</translation>
</message>
-@@ -30449,7 +31104,7 @@
+@@ -30449,7 +31232,7 @@
<message>
<location filename="../programs/mythfrontend/videodlg.cpp" line="2503"/>
<source>Play With Trailers</source>
@@ -23634,7 +23770,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/videodlg.cpp" line="2510"/>
-@@ -30464,7 +31119,7 @@
+@@ -30464,7 +31247,7 @@
<message>
<location filename="../programs/mythfrontend/videodlg.cpp" line="2526"/>
<source>Scan For Changes</source>
@@ -23643,7 +23779,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/videodlg.cpp" line="2527"/>
-@@ -30490,12 +31145,12 @@
+@@ -30490,12 +31273,12 @@
<message>
<location filename="../programs/mythfrontend/videodlg.cpp" line="3374"/>
<source>Failed to retrieve image(s)</source>
@@ -23658,7 +23794,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/videodlg.cpp" line="3836"/>
-@@ -30521,12 +31176,12 @@
+@@ -30521,12 +31304,12 @@
<message>
<location filename="../programs/mythfrontend/videodlg.cpp" line="2177"/>
<source>Retrieved details for %1</source>
@@ -23673,7 +23809,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/videodlg.cpp" line="2552"/>
-@@ -30706,7 +31361,7 @@
+@@ -30706,7 +31489,7 @@
<message>
<location filename="../programs/mythfrontend/videodlg.cpp" line="2152"/>
<source>Fetching details for %1</source>
@@ -23682,7 +23818,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/videodlg.cpp" line="3557"/>
-@@ -30718,7 +31373,7 @@
+@@ -30718,7 +31501,7 @@
<message>
<location filename="../programs/mythfrontend/videodlg.cpp" line="3595"/>
<source>Failed to delete file</source>
@@ -23691,7 +23827,7 @@
</message>
</context>
<context>
-@@ -30901,7 +31556,7 @@
+@@ -30901,7 +31684,7 @@
<message>
<location filename="../programs/mythfrontend/videoglobalsettings.cpp" line="106"/>
<source>Directories that hold videos</source>
@@ -23700,7 +23836,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/videoglobalsettings.cpp" line="110"/>
-@@ -30911,7 +31566,7 @@
+@@ -30911,7 +31694,7 @@
<message>
<location filename="../programs/mythfrontend/videoglobalsettings.cpp" line="122"/>
<source>Directory that holds movie posters</source>
@@ -23709,7 +23845,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/videoglobalsettings.cpp" line="127"/>
-@@ -30925,37 +31580,37 @@
+@@ -30925,37 +31708,37 @@
<message>
<location filename="../programs/mythfrontend/videoglobalsettings.cpp" line="138"/>
<source>Directory that holds movie screenshots</source>
@@ -23754,7 +23890,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/videoglobalsettings.cpp" line="211"/>
-@@ -30970,7 +31625,7 @@
+@@ -30970,7 +31753,7 @@
<message>
<location filename="../programs/mythfrontend/videoglobalsettings.cpp" line="224"/>
<source>Video Tree remembers last selected position</source>
@@ -23763,7 +23899,7 @@
</message>
<message>
<location filename="../programs/mythfrontend/videoglobalsettings.cpp" line="229"/>
-@@ -30978,58 +31633,62 @@
+@@ -30978,58 +31761,62 @@
<translation>If set, the current position in the Video Tree is persistent.</translation>
</message>
<message>
@@ -23838,7 +23974,7 @@
</message>
</context>
<context>
-@@ -31057,118 +31716,117 @@
+@@ -31057,118 +31844,117 @@
<context>
<name>VideoModeSettings</name>
<message>
@@ -23983,28 +24119,28 @@
<source>Zoom %1x%2 @ (%3,%4)</source>
<translation>Zoom %1x%2 @ (%3,%4)</translation>
</message>
-@@ -31194,17 +31852,17 @@
+@@ -31194,17 +31980,17 @@
<message>
<location filename="../libs/libmythmetadata/videoscan.cpp" line="181"/>
<source>Searching for video files</source>
- <translation>Searching for video files</translation>
-+ <translation>Searching for Video Files</translation>
++ <translation>Searching for Video Files...</translation>
</message>
<message>
<location filename="../libs/libmythmetadata/videoscan.cpp" line="258"/>
<source>Verifying video files</source>
- <translation>Verifying video files</translation>
-+ <translation>Verifying Video Files</translation>
++ <translation>Verifying Video Files...</translation>
</message>
<message>
<location filename="../libs/libmythmetadata/videoscan.cpp" line="314"/>
<source>Updating video database</source>
- <translation>Updating video database</translation>
-+ <translation>Updating Video Database</translation>
++ <translation>Updating Video Database...</translation>
</message>
</context>
<context>
-@@ -31212,17 +31870,17 @@
+@@ -31212,17 +31998,17 @@
<message>
<location filename="../programs/mythfrontend/setupwizard_video.cpp" line="70"/>
<source>Select from one of the preconfigured playback profiles. When satisfied, you can test Standard Definition and High Definition playback with the selected profile before moving on.</source>
@@ -24025,18 +24161,18 @@
</message>
<message>
<location filename="../programs/mythfrontend/setupwizard_video.cpp" line="79"/>
-@@ -31275,56 +31933,53 @@
+@@ -31275,56 +32061,53 @@
<context>
<name>VideoSourceEditor</name>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3887"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3807"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3817"/>
<source>Video sources</source>
- <translation>Video sources</translation>
+ <translation>Video Sources</translation>
+ </message>
+ <message>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3850"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3860"/>
+ <source>New video source</source>
+ <translation>New Video Source</translation>
</message>
@@ -24060,7 +24196,7 @@
</message>
<message>
- <location filename="../libs/libmythtv/videosource.cpp" line="3948"/>
-+ <location filename="../libs/libmythtv/videosource.cpp" line="3830"/>
++ <location filename="../libs/libmythtv/videosource.cpp" line="3840"/>
<source>Are you sure you want to delete ALL video sources?</source>
<translation>Are you sure you want to delete ALL video sources?</translation>
</message>
@@ -24098,7 +24234,7 @@
<source>Video Source</source>
<translation>Video Source</translation>
</message>
-@@ -31348,93 +32003,93 @@
+@@ -31348,93 +32131,93 @@
</message>
<message>
<location filename="../programs/mythfrontend/viewscheduled.cpp" line="226"/>
@@ -24210,7 +24346,7 @@
<source>Delete &apos;%1&apos; %2 rule?</source>
<translation>Delete &apos;%1&apos; %2 rule?</translation>
</message>
-@@ -31442,52 +32097,52 @@
+@@ -31442,52 +32225,52 @@
<context>
<name>WatchListSettings</name>
<message>
@@ -24279,7 +24415,7 @@
<source>When an episode is deleted or marked as watched, other episodes of the series are excluded from the &apos;Watch List&apos; for this interval of time. Daily shows also have a smaller interval based on this setting.</source>
<translation>When an episode is deleted or marked as watched, other episodes of the series are excluded from the &apos;Watch List&apos; for this interval of time. Daily shows also have a smaller interval based on this setting.</translation>
</message>
-@@ -31508,7 +32163,7 @@
+@@ -31508,7 +32291,7 @@
<message>
<location filename="../programs/mythwelcome/welcomedialog.cpp" line="363"/>
<source>Tuner %1 is recording:</source>
@@ -24288,7 +24424,7 @@
</message>
<message>
<location filename="../programs/mythwelcome/welcomedialog.cpp" line="371"/>
-@@ -31519,12 +32174,12 @@
+@@ -31519,12 +32302,12 @@
<message>
<location filename="../programs/mythwelcome/welcomedialog.cpp" line="376"/>
<source>There are no recordings currently taking place</source>
@@ -24303,22 +24439,22 @@
</message>
<message>
<location filename="../programs/mythwelcome/welcomedialog.cpp" line="415"/>
-@@ -31622,12 +32277,12 @@
+@@ -31622,12 +32405,12 @@
<message>
<location filename="../programs/mythwelcome/welcomedialog.cpp" line="656"/>
<source>Cannot shutdown because MythTV is currently recording</source>
- <translation>Cannot shutdown because MythTV is currently recording</translation>
-+ <translation>Cannot Shutdown Because MythTV Is Currently Recording</translation>
++ <translation>Cannot Shutdown Because MythTV is Currently Recording</translation>
</message>
<message>
<location filename="../programs/mythwelcome/welcomedialog.cpp" line="667"/>
<source>Cannot shutdown because MythTV is about to start recording</source>
- <translation>Cannot shutdown because MythTV is about to start recording</translation>
-+ <translation>Cannot Shutdown Because MythTV Is About to Start Recording</translation>
++ <translation>Cannot Shutdown Because MythTV is About to Start Recording</translation>
</message>
<message>
<location filename="../programs/mythwelcome/welcomedialog.cpp" line="678"/>
-@@ -31638,12 +32293,12 @@
+@@ -31638,12 +32421,12 @@
<context>
<name>XMLTV_generic_config</name>
<message>
diff --git a/abs/core/mythtv/stable-29/mythweb/PKGBUILD b/abs/core/mythtv/stable-29/mythweb/PKGBUILD
index 25dd0d9..f83912e 100644
--- a/abs/core/mythtv/stable-29/mythweb/PKGBUILD
+++ b/abs/core/mythtv/stable-29/mythweb/PKGBUILD
@@ -1,16 +1,16 @@
pkgname=mythweb
pkgver=29
-pkgrel=3
+pkgrel=5
commit_hash=`cat ../git_src/git_hash_web`
pkgdesc="Web interface for MythTV's backend, $commit_hash"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://www.mythtv.org"
license=('GPL')
depends=('lighttpd' "mythtv>=${pkgver}" 'php' 'supplemental-web')
groups=('mythtv-extras')
install=mythweb.install
-patches=()
+patches=('video.css.patch')
source=(`echo ${patches[@]:0}`
'mythweb.include'
'mythweb_gen_light.conf')
@@ -36,7 +36,6 @@ build() {
done
msg "--------------------------done applying patches-------------------------"
- [ "$CARCH" = "i686" ] && ARCH="i686"
[ "$CARCH" = "x86_64" ] && ARCH="x86-64"
}
@@ -54,5 +53,6 @@ package() {
#gen_light_conf
install -D -m0744 ${srcdir}/mythweb_gen_light.conf ${pkgdir}/etc/gen_light_conf.d/mythweb.conf
}
-md5sums=('7645a6399434cbba35639713ac5d88e0'
+md5sums=('668a36e404c8254f56e7a7304e655332'
+ '7645a6399434cbba35639713ac5d88e0'
'df190116b3aba35720fb6631885f973f')
diff --git a/abs/core/mythtv/stable-29/mythweb/video.css.patch b/abs/core/mythtv/stable-29/mythweb/video.css.patch
new file mode 100644
index 0000000..f49a3fd
--- /dev/null
+++ b/abs/core/mythtv/stable-29/mythweb/video.css.patch
@@ -0,0 +1,98 @@
+--- ./skins/default/video.css.orig 2018-05-22 21:45:30.395508513 +0000
++++ ./skins/default/video.css 2018-05-22 21:41:27.326893228 +0000
+@@ -0,0 +1,95 @@
++ .video {
++ position: relative;
++ padding: 1em;
++ float: left;
++ background-color: #003366;
++ margin-top: 1em;
++ margin-left: 1em;
++ width: 202px;
++ height: 168px;
++ border: 1px solid black;
++ }
++
++ .video .title {
++ font-weight: bold;
++ margin-bottom: .5em;
++ height: 2.5em;
++ overflow: hidden;
++ }
++
++ .video img {
++ float: left;
++ padding-right: 1em;
++ }
++
++ .video .command {
++ position: absolute;
++ bottom: 1em;
++ right: 1em;
++ }
++
++ #path {
++ position: relative;
++ padding: 1em;
++ float: left;
++ background-color: #102923;
++ margin-top: 1em;
++ margin-left: 1em;
++ border: 1px solid black;
++ min-width: 202px;
++ min-height: 168px;
++ }
++
++ #path .active {
++ color: yellow;
++ }
++
++ #window {
++ position: fixed;
++ left: 35%;
++ right: 35%;
++ width: 30%;
++ top: 35%;
++ background-color: green;
++ padding-top: 1em;
++ z-index: 10;
++ border: 2px solid gray;
++ }
++
++ #window_content a {
++ padding-right: 1em;
++ padding-left: 1em;
++ }
++
++ #window iframe {
++ width: 100%;
++ border: 0px;
++ height: 250px;
++ }
++
++ #window_title {
++ position: absolute;
++ top: 1px;
++ left: 1em;
++ font-weight: bold;
++ }
++
++ .popup {
++ width: 30%;
++ font-size: 9pt;
++ }
++
++ .popup dt {
++ clear: left;
++ float: left;
++ padding-top: 3px;
++ white-space: nowrap;
++ width: 6em;
++ font-weight: bold;
++ text-align: right;
++ }
++
++ .popup dd {
++ margin-left: 6.5em;
++ padding-top: 3px;
++ }
diff --git a/abs/core/nano/PKGBUILD b/abs/core/nano/PKGBUILD
index 07211fd..7bebc6f 100644
--- a/abs/core/nano/PKGBUILD
+++ b/abs/core/nano/PKGBUILD
@@ -3,7 +3,7 @@
# Contributor: Judd <judd@archlinux.org>
pkgname=nano
-pkgver=2.9.1
+pkgver=2.9.8
pkgrel=1
pkgdesc="Pico editor clone with enhancements"
arch=('x86_64')
@@ -13,10 +13,11 @@ groups=('base')
depends=('ncurses' 'file' 'sh')
backup=('etc/nanorc')
source=(https://www.nano-editor.org/dist/v2.9/${pkgname}-${pkgver}.tar.xz{,.asc})
-sha256sums=('6316d52d0d26af3e79a13dcb4db1c7a4aeac61b37fd9381e801a4189a2ecba7c'
+sha256sums=('c2deac31ba4d3fd27a42fafcc47ccf499296cc69a422bbecab63f2933ea85488'
'SKIP')
validpgpkeys=('8DA6FE7BFA7A418AB3CB2354BCB356DF91009FA7' # "Chris Allegretta <chrisa@asty.org>"
'A7F6A64A67DA09EF92782DD79DF4862AF1175C5B' # "Benno Schulenberg <bensberg@justemail.net>"
+ 'BFD009061E535052AD0DF2150D28D4D2A0ACE884' # "Benno Schulenberg <bensberg@telfort.nl>"
)
build() {
diff --git a/abs/core/ncurses/PKGBUILD b/abs/core/ncurses/PKGBUILD
index 008e209..53e7682 100644
--- a/abs/core/ncurses/PKGBUILD
+++ b/abs/core/ncurses/PKGBUILD
@@ -4,66 +4,50 @@
# Contributor: judd <jvinet@zeroflux.org>
pkgname=ncurses
-pkgver=5.9_20141101
-pkgrel=1
+pkgver=6.1
+pkgrel=3
pkgdesc='System V Release 4.0 curses emulation library'
-arch=('i686' 'x86_64')
+arch=(x86_64)
url='http://invisible-island.net/ncurses/ncurses.html'
-license=('MIT')
-depends=('glibc' 'gcc-libs' 'sh')
-provides=('libmenu.so' 'libpanel.so' 'libform.so' 'libncurses.so' 'libncurses++w.so'
- 'libformw.so' 'libmenuw.so' 'libpanelw.so' 'libncursesw.so')
-source=(ftp://invisible-island.net/ncurses/current/ncurses-${pkgver/_/-}.tgz{,.asc})
-md5sums=('87500270f8b1ba911228c940bad30ed1'
+license=(MIT)
+depends=(glibc gcc-libs)
+provides=(libncurses++w.so libformw.so libmenuw.so libpanelw.so libncursesw.so)
+#source=(http://invisible-mirror.net/archives/ncurses/current/ncurses-${_pkgver}.tgz{,.asc})
+source=(https://ftp.gnu.org/pub/gnu/ncurses/ncurses-$pkgver.tar.gz{,.sig})
+md5sums=('98c889aaf8d23910d2b92d65be2e737a'
'SKIP')
-
-prepare() {
- mkdir ncurses{,w}-build
-}
+validpgpkeys=('C52048C0C0748FEE227D47A2702353E0F7E48EDB') # Thomas Dickey
build() {
- cd ncursesw-build
- ../$pkgname-${pkgver/_/-}/configure --prefix=/usr --mandir=/usr/share/man \
- --with-shared --with-normal --without-debug --without-ada \
- --enable-widec --enable-pc-files --with-cxx-binding --with-cxx-shared
- # add --enable-ext-colors and --enable-ext-mouse with next soname bump
- make
+ cd $pkgname-$pkgver
- # libraries for external binary support
- cd ${srcdir}/ncurses-build
- [[ $CARCH = "x86_64" ]] && CONFIGFLAG="--with-chtype=long"
- ../$pkgname-${pkgver/_/-}/configure --prefix=/usr \
- --with-shared --with-normal --without-debug --without-ada $CONFIGFLAG \
- --with-cxx-binding --with-cxx-shared
+ ./configure --prefix=/usr --mandir=/usr/share/man \
+ --with-pkg-config-libdir=/usr/lib/pkgconfig \
+ --with-shared --with-normal --without-debug --without-ada \
+ --enable-widec --enable-pc-files --with-cxx-binding --with-cxx-shared
make
}
package() {
- cd ncursesw-build
+ cd $pkgname-$pkgver
make DESTDIR="$pkgdir" install
# fool packages looking to link to non-wide-character ncurses libraries
for lib in ncurses ncurses++ form panel menu; do
- echo "INPUT(-l${lib}w)" > "$pkgdir"/usr/lib/lib${lib}.so
+ echo "INPUT(-l${lib}w)" > "$pkgdir/usr/lib/lib${lib}.so"
+ ln -s ${lib}w.pc "$pkgdir/usr/lib/pkgconfig/${lib}.pc"
done
- for lib in ncurses ncurses++ form panel menu; do
- ln -s ${lib}w.pc "$pkgdir"/usr/lib/pkgconfig/${lib}.pc
+ for lib in tic tinfo; do
+ echo "INPUT(libncursesw.so.${pkgver:0:1})" > "$pkgdir/usr/lib/lib${lib}.so"
+ ln -s libncursesw.so.${pkgver:0:1} "$pkgdir/usr/lib/lib${lib}.so.${pkgver:0:1}"
done
# some packages look for -lcurses during build
- echo "INPUT(-lncursesw)" > "$pkgdir"/usr/lib/libcursesw.so
- ln -s libncurses.so "$pkgdir"/usr/lib/libcurses.so
-
- # non-widec compatibility libraries
- cd "$srcdir"/ncurses-build
- for lib in ncurses form panel menu; do
- install -Dm755 lib/lib${lib}.so.${pkgver%_*} "$pkgdir"/usr/lib/lib${lib}.so.${pkgver%_*}
- ln -s lib${lib}.so.${pkgver%_*} "$pkgdir"/usr/lib/lib${lib}.so.5
- done
+ echo 'INPUT(-lncursesw)' > "$pkgdir/usr/lib/libcursesw.so"
+ ln -s libncurses.so "$pkgdir/usr/lib/libcurses.so"
# install license, rip it from the readme
- cd "$srcdir"/$pkgname-${pkgver/_/-}
- install -dm755 "$pkgdir"/usr/share/licenses/$pkgname
- grep -B 100 '$Id' README > "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+ install -d "$pkgdir/usr/share/licenses/$pkgname"
+ grep -B 100 '$Id' README > "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
diff --git a/abs/core/nfs-utils/PKGBUILD b/abs/core/nfs-utils/PKGBUILD
index b94b840..2bcce5c 100644
--- a/abs/core/nfs-utils/PKGBUILD
+++ b/abs/core/nfs-utils/PKGBUILD
@@ -1,111 +1,111 @@
-# $Id: PKGBUILD 200306 2013-11-25 08:16:32Z tpowa $
+# $Id$
+# Maintainer: AndyRTR <andyrtr@archlinux.org>
# 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.9
+pkgbase=nfs-utils
+pkgname=('nfs-utils' 'nfsidmap')
+pkgver=2.3.1
pkgrel=1
-pkgdesc="Support programs for Network File Systems"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url='http://nfs.sourceforge.net'
-license=('GPL')
-backup=(etc/{exports,idmapd.conf,nfsmount.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' 'sqlite')
-source=(http://downloads.sourceforge.net/project/nfs/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.bz2
- nfs-common.conf
- nfs-server.conf
- exports
- idmapd.conf
- nfs
- nfs-utils-1.1.4-mtab-sym.patch
- nfs-utils-1.1.4-no-exec.patch
- rpc-gssd.service
- rpc-mountd.service
- rpc-svcgssd.service
- rpc-idmapd.service
- rpc-statd.service
- nfsd.service
- var-lib-nfs-rpc_pipefs.mount
- proc-fs-nfsd.mount
- blkmapd.service
- nfs-utils.conf
+makedepends=('libevent' 'sqlite')
+# http://git.linux-nfs.org/?p=steved/nfs-utils.git;a=summary
+source=(https://www.kernel.org/pub/linux/utils/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.{xz,sign}
id_resolver.conf
- start-statd.patch)
-install=nfs-utils.install
-optdepends=('sqlite: for nfsdcltrack usage')
-
+ exports)
+# https://www.kernel.org/pub/linux/utils/nfs-utils/2.1.1/sha256sums.asc
+sha256sums=('96d06b5a86b185815760d8f04c34fdface8fa8b9949ff256ac05c3ebc08335a5'
+ 'SKIP'
+ 'ed31ae843cf66d3c262b39ed54533a861876231c5f5bb3811c0c498ac2ffa102'
+ '610715ed3daedc43b2536f541c7c57e138fb31eab5d837d9a6187a7403e30154')
+validpgpkeys=('E1B71E339E20A10A676F7CB69AFB1D681A125177') # Steve Dickson
prepare() {
- cd $srcdir/${pkgname}-${pkgver}
- patch -Np1 -i ../nfs-utils-1.1.4-mtab-sym.patch
- # fix /usr/bin in start-statd shell script
- patch -Np1 -i ../start-statd.patch
- #patch -Np1 -i ../nfs-utils-1.1.4-no-exec.patch
+ cd ${pkgbase}-${pkgver}
+
+ # fix hardcoded sbin path to our needs
+ sed -i "s|sbindir = /sbin|sbindir = /usr/bin|g" utils/*/Makefile.am
+ autoreconf -vfi
}
build() {
- cd $srcdir/${pkgname}-${pkgver}
- ./configure --prefix=/usr --sbindir=/usr/bin --enable-nfsv4 --enable-nfsv41 --enable-gss \
- --without-tcp-wrappers --with-statedir=/var/lib/nfs \
- --enable-ipv6 --sysconfdir=/etc --enable-libmount-mount \
- --with-gssglue \
- --enable-mountconfig --with-start-statd=/usr/bin/start-statd
- # move mount helpers to /usr/bin
- sed -i -e 's#sbindir = /sbin#sbindir = /usr/bin#g' utils/mount/Makefile
- # move osd_login to /usr/bin
- sed -i -e 's#sbindir = /sbin#sbindir = /usr/bin#g' utils/osd_login/Makefile
+ cd ${pkgbase}-${pkgver}
+ ./configure --prefix=/usr \
+ --sbindir=/usr/bin \
+ --sysconfdir=/etc \
+ --enable-gss \
+ --without-tcp-wrappers \
+ --with-statedir=/var/lib/nfs \
+ --enable-ipv6 \
+ --enable-libmount-mount \
+ --enable-mountconfig \
+ --with-start-statd=/usr/bin/start-statd
make
}
-package() {
- cd $srcdir/${pkgname}-${pkgver}
- # fix make install
- make DESTDIR=$pkgdir install
-
- # support python2 (FS#25120)
- sed -i '1s/python$/python2/' "$pkgdir"/usr/bin/{nfsiostat,mountstats}
-
- # 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
- install -D -m 644 ../nfs "$pkgdir/"etc/conf.d/nfs
- install -D -m 644 utils/mount/nfsmount.conf "$pkgdir/"etc/nfsmount.conf
- # keyutils id_resolver #35463
- install -D -m 644 ../id_resolver.conf "$pkgdir/"etc/request-key.d/id_resolver.conf
- # systemd files
- for i in ${srcdir}/*.{service,mount}; do
- install -D -m 644 $i "$pkgdir/usr/lib/systemd/system/${i##*/}"
+check() {
+ cd ${pkgbase}-${pkgver}
+ make -k check || /bin/true
+}
+
+package_nfs-utils() {
+
+ pkgdesc="Support programs for Network File Systems"
+ license=('GPL2')
+
+ backup=(etc/{exports,nfs.conf,nfsmount.conf})
+ depends=('rpcbind' 'nfsidmap' 'gssproxy' 'libevent' 'device-mapper')
+ optdepends=('sqlite: for nfsdcltrack usage'
+ 'python: for nfsiostat and mountstats usage')
+
+ cd ${pkgbase}-${pkgver}
+ make DESTDIR="$pkgdir" install
+
+ install -D -m 644 utils/mount/nfsmount.conf "$pkgdir"/etc/nfsmount.conf
+ install -D -m 644 nfs.conf "$pkgdir"/etc/nfs.conf
+
+ for i in systemd/{*.service,*.mount,*.target}; do
+ install -D -m 644 $i "$pkgdir"/usr/lib/systemd/system/$(basename $i)
done
- install -D -m 644 ../nfs-utils.conf "$pkgdir/"usr/lib/modules-load.d/nfs-utils.conf
- # directories
- mkdir "$pkgdir/"etc/exports.d
- mkdir -m 555 "$pkgdir/"var/lib/nfs/rpc_pipefs
- mkdir "$pkgdir/"var/lib/nfs/v4recovery
+ install -d -m 755 "$pkgdir"/usr/share/doc/$pkgname
+ install -D -m 644 systemd/README "$pkgdir"/usr/share/doc/$pkgname/README.systemd
+
+ # docs
+ install -m 644 {NEWS,README} "$pkgdir"/usr/share/doc/$pkgname/
+
+ # empty exports file
+ install -D -m 644 ../exports "$pkgdir"/etc/exports
+
+ # config file for idmappers in newer kernels
+ install -D -m 644 ../id_resolver.conf "$pkgdir"/etc/request-key.d/id_resolver.conf
+
+ mkdir "$pkgdir"/etc/exports.d
+ mkdir -m 555 "$pkgdir"/var/lib/nfs/rpc_pipefs
+ mkdir "$pkgdir"/var/lib/nfs/v4recovery
+
+ # nfsidmap cleanup
+ rm -vrf $pkgdir/usr/include #/nfsid*
+ rm -vrf $pkgdir/usr/lib/libnfsidmap*
+ rm -vrf $pkgdir/usr/lib/pkgconfig #/libnfsidmap.pc
+ rm -v $pkgdir/usr/share/man/{man3/nfs4_uid_to_name*,man5/idmapd.conf*}
+ rm -rf $pkgdir/usr/share/man/man3
}
-md5sums=('18869d16db3f49c053f8c68eba3fe2e0'
- 'f73f197a16b02c3e248488ec35c4cf43'
- '9cef69bc686cc5dcac23fbb51450747d'
- 'ff585faf410a62c4333a027c50b56bae'
- 'eb4f4027fab6fc1201f1ca04f5954c76'
- 'f5e7bba09a46c5c5d7007cac6eff9df5'
- '7674106eaaa4c149bccd4f05fe3604e9'
- '4f4827dfc93008dfadd0a530ad0872b2'
- '6aeb4a80b2a5162f5951438474ea22f3'
- 'ff95ad9275ef774e0a2ea8adfe55ee66'
- '2e991f0e440b4809e22b6c7689544fc0'
- '42d0088add3beab0284be1379391382b'
- '60d82e2d2d19d21ceb72665e54bf913e'
- '3bcc9901478f4f9ea0a03b67171c13e3'
- '1cd65909fa0983047f3f06a3ab352401'
- '8f1b5282795895c9b8ce8430d20cdda6'
- '8f03e708b230619ffc2a799a48bffb53'
- '8ac484023d786766d287ccbe878ae4ba'
- 'bed57f7c3911af695ec7b469248c104a'
- 'f8bb29c2ca1ce178e6371091a3e1090d')
+package_nfsidmap() {
+
+ pkgdesc="Library to help mapping IDs, mainly for NFSv4"
+ license=('GPL2')
+ backup=(etc/idmapd.conf)
+ depends=('libldap')
+
+ cd ${pkgbase}-${pkgver}
+ make -C support DESTDIR="$pkgdir" install
+ # config file
+ install -D -m 644 support/nfsidmap/idmapd.conf "$pkgdir"/etc/idmapd.conf
+ # license
+ install -Dm644 support/nfsidmap/COPYING $pkgdir/usr/share/licenses/nfsidmap/LICENSE
+}
diff --git a/abs/core/nfs-utils/blkmapd.service b/abs/core/nfs-utils/blkmapd.service
deleted file mode 100644
index fa7ce39..0000000
--- a/abs/core/nfs-utils/blkmapd.service
+++ /dev/null
@@ -1,11 +0,0 @@
-[Unit]
-Description=pNFS block layout mapping daemon
-After=var-lib-nfs-rpc_pipefs.mount nfsd.service
-Requires=var-lib-nfs-rpc_pipefs.mount
-
-[Service]
-Type=forking
-ExecStart=/usr/bin/blkmapd
-
-[Install]
-WantedBy=multi-user.target
diff --git a/abs/core/nfs-utils/exports b/abs/core/nfs-utils/exports
index 8f4aac5..59dfa2e 100644
--- a/abs/core/nfs-utils/exports
+++ b/abs/core/nfs-utils/exports
@@ -1,15 +1,12 @@
-# /etc/exports
-#
-# List of directories exported to NFS clients. See exports(5).
-# Use exportfs -arv to reread.
+# /etc/exports - exports(5) - directories exported to NFS clients
#
# Example for NFSv2 and NFSv3:
-# /srv/home hostname1(rw,sync) hostname2(ro,sync)
-#
+# /srv/home hostname1(rw,sync) hostname2(ro,sync)
# Example for NFSv4:
-# /srv/nfs4 hostname1(rw,sync,fsid=0)
+# /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)
+# /srv/nfs4 *(rw,sync,sec=krb5i,fsid=0)
+# /srv/nfs4/home *(rw,sync,sec=krb5i,nohide)
#
+# Use `exportfs -arv` to reload.
diff --git a/abs/core/nfs-utils/id_resolver.conf b/abs/core/nfs-utils/id_resolver.conf
index 9c0fee3..6b1ea48 100644
--- a/abs/core/nfs-utils/id_resolver.conf
+++ b/abs/core/nfs-utils/id_resolver.conf
@@ -1 +1,9 @@
-create id_resolver * * /usr/bin/nfsidmap %k %d \ No newline at end of file
+#
+# nfsidmap(5) - The NFS idmapper upcall program
+# Summary: Used by NFSv4 to map user/group ids into
+# user/group names and names into in ids
+# Options:
+# -v Increases the verbosity of the output to syslog
+# -t timeout Set the expiration timer, in seconds, on the key
+#
+create id_resolver * * /usr/bin/nfsidmap %k %d
diff --git a/abs/core/nfs-utils/idmapd.conf b/abs/core/nfs-utils/idmapd.conf
deleted file mode 100644
index b1b23af..0000000
--- a/abs/core/nfs-utils/idmapd.conf
+++ /dev/null
@@ -1,14 +0,0 @@
-[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/abs/core/nfs-utils/nfs b/abs/core/nfs-utils/nfs
deleted file mode 100644
index 2d33cf3..0000000
--- a/abs/core/nfs-utils/nfs
+++ /dev/null
@@ -1,40 +0,0 @@
-#
-# Optinal options passed to rquotad
-RPCRQUOTADOPTS=""
-#
-# Optional arguments passed to in-kernel lockd
-#LOCKDARG=
-# TCP port rpc.lockd should listen on.
-#LOCKD_TCPPORT=32803
-# UDP port rpc.lockd should listen on.
-#LOCKD_UDPPORT=32769
-#
-# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)
-RPCNFSDARGS=""
-# Number of nfs server processes to be started.
-# The default is 8.
-RPCNFSDCOUNT=8
-# Set V4 grace period in seconds
-#NFSD_V4_GRACE=90
-#
-# Optional arguments passed to rpc.mountd. See rpc.mountd(8)
-RPCMOUNTDOPTS=""
-#
-# Optional arguments passed to rpc.statd. See rpc.statd(8)
-STATDARG=""
-#
-# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)
-RPCIDMAPDARGS=""
-#
-# Optional arguments passed to rpc.gssd. See rpc.gssd(8)
-RPCGSSDARGS=""
-#
-# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)
-RPCSVCGSSDARGS=""
-#
-# To enable RDMA support on the server by setting this to
-# the port the server should listen on
-#RDMA_PORT=20049
-#
-# Optional arguments passed to blkmapd. See blkmapd(8)
-BLKMAPDARGS=""
diff --git a/abs/core/nfs-utils/nfs-common.conf b/abs/core/nfs-utils/nfs-common.conf
deleted file mode 100644
index 12466b3..0000000
--- a/abs/core/nfs-utils/nfs-common.conf
+++ /dev/null
@@ -1,40 +0,0 @@
-# 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/abs/core/nfs-utils/nfs-server.conf b/abs/core/nfs-utils/nfs-server.conf
deleted file mode 100644
index 581e263..0000000
--- a/abs/core/nfs-utils/nfs-server.conf
+++ /dev/null
@@ -1,29 +0,0 @@
-# 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/abs/core/nfs-utils/nfs-utils-1.1.4-mtab-sym.patch b/abs/core/nfs-utils/nfs-utils-1.1.4-mtab-sym.patch
deleted file mode 100644
index c9e60af..0000000
--- a/abs/core/nfs-utils/nfs-utils-1.1.4-mtab-sym.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-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/abs/core/nfs-utils/nfs-utils-1.1.4-no-exec.patch b/abs/core/nfs-utils/nfs-utils-1.1.4-no-exec.patch
deleted file mode 100644
index ea50a21..0000000
--- a/abs/core/nfs-utils/nfs-utils-1.1.4-no-exec.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-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/abs/core/nfs-utils/nfs-utils.conf b/abs/core/nfs-utils/nfs-utils.conf
deleted file mode 100644
index 33c97b8..0000000
--- a/abs/core/nfs-utils/nfs-utils.conf
+++ /dev/null
@@ -1 +0,0 @@
-nfs
diff --git a/abs/core/nfs-utils/nfs-utils.install b/abs/core/nfs-utils/nfs-utils.install
deleted file mode 100644
index f6c72d9..0000000
--- a/abs/core/nfs-utils/nfs-utils.install
+++ /dev/null
@@ -1,32 +0,0 @@
-## 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 NFS4; for NFSv3, refer to
- ==> http://wiki.archlinux.org/index.php/NFSv3
-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/abs/core/nfs-utils/nfsd.service b/abs/core/nfs-utils/nfsd.service
deleted file mode 100644
index d63e490..0000000
--- a/abs/core/nfs-utils/nfsd.service
+++ /dev/null
@@ -1,16 +0,0 @@
-[Unit]
-Description=NFS server
-After=rpcbind.service
-Requires=rpcbind.service
-
-[Service]
-Type=oneshot
-EnvironmentFile=/etc/conf.d/nfs-server.conf
-ExecStart=/usr/bin/rpc.nfsd $NFSD_OPTS $NFSD_COUNT
-ExecStartPost=/usr/bin/exportfs -a
-ExecStop=/usr/bin/rpc.nfsd 0
-ExecStopPost=/usr/bin/exportfs -a -u
-RemainAfterExit=yes
-
-[Install]
-WantedBy=multi-user.target
diff --git a/abs/core/nfs-utils/proc-fs-nfsd.mount b/abs/core/nfs-utils/proc-fs-nfsd.mount
deleted file mode 100644
index e5ee6fb..0000000
--- a/abs/core/nfs-utils/proc-fs-nfsd.mount
+++ /dev/null
@@ -1,8 +0,0 @@
-[Unit]
-Description=RPC Pipe File System
-DefaultDependencies=no
-
-[Mount]
-What=sunrpc
-Where=/proc/fs/nfsd
-Type=nfsd
diff --git a/abs/core/nfs-utils/rpc-gssd.service b/abs/core/nfs-utils/rpc-gssd.service
deleted file mode 100644
index 182d9b7..0000000
--- a/abs/core/nfs-utils/rpc-gssd.service
+++ /dev/null
@@ -1,13 +0,0 @@
-[Unit]
-Description=RPC GSS-API client-side daemon
-After=rpcbind.service var-lib-nfs-rpc_pipefs.mount
-Requires=rpcbind.service var-lib-nfs-rpc_pipefs.mount
-Before=remote-fs-pre.target
-
-[Service]
-Type=forking
-EnvironmentFile=/etc/conf.d/nfs-common.conf
-ExecStart=/usr/bin/rpc.gssd $GSSD_OPTS
-
-[Install]
-WantedBy=multi-user.target
diff --git a/abs/core/nfs-utils/rpc-idmapd.service b/abs/core/nfs-utils/rpc-idmapd.service
deleted file mode 100644
index 1167daf..0000000
--- a/abs/core/nfs-utils/rpc-idmapd.service
+++ /dev/null
@@ -1,13 +0,0 @@
-[Unit]
-Description=NFSv4 ID-name mapping daemon
-After=var-lib-nfs-rpc_pipefs.mount nfsd.service
-Requires=var-lib-nfs-rpc_pipefs.mount
-Before=remote-fs-pre.target
-
-[Service]
-Type=forking
-EnvironmentFile=/etc/conf.d/nfs-common.conf
-ExecStart=/usr/bin/rpc.idmapd $IDMAPD_OPTS
-
-[Install]
-WantedBy=multi-user.target
diff --git a/abs/core/nfs-utils/rpc-mountd.service b/abs/core/nfs-utils/rpc-mountd.service
deleted file mode 100644
index 7528884..0000000
--- a/abs/core/nfs-utils/rpc-mountd.service
+++ /dev/null
@@ -1,12 +0,0 @@
-[Unit]
-Description=NFS Mount Daemon
-After=rpcbind.service nfsd.service
-Requires=rpcbind.service nfsd.service
-
-[Service]
-Type=forking
-EnvironmentFile=/etc/conf.d/nfs-server.conf
-ExecStart=/usr/bin/rpc.mountd $MOUNTD_OPTS
-
-[Install]
-WantedBy=multi-user.target
diff --git a/abs/core/nfs-utils/rpc-statd.service b/abs/core/nfs-utils/rpc-statd.service
deleted file mode 100644
index c2fd63b..0000000
--- a/abs/core/nfs-utils/rpc-statd.service
+++ /dev/null
@@ -1,13 +0,0 @@
-[Unit]
-Description=NFSv2/3 Network Status Monitor Daemon
-After=rpcbind.service
-Requires=rpcbind.service
-Before=remote-fs-pre.target
-
-[Service]
-Type=forking
-EnvironmentFile=/etc/conf.d/nfs-common.conf
-ExecStart=/usr/bin/rpc.statd $STATD_OPTS
-
-[Install]
-WantedBy=multi-user.target
diff --git a/abs/core/nfs-utils/rpc-svcgssd.service b/abs/core/nfs-utils/rpc-svcgssd.service
deleted file mode 100644
index 876bad3..0000000
--- a/abs/core/nfs-utils/rpc-svcgssd.service
+++ /dev/null
@@ -1,12 +0,0 @@
-[Unit]
-Description=RPC GSS-API server-side daemon
-After=rpcbind.service
-Requires=rpcbind.service
-
-[Service]
-Type=forking
-EnvironmentFile=/etc/conf.d/nfs-server.conf
-ExecStart=/usr/bin/rpc.svcgssd $SVCGSSD_OPTS
-
-[Install]
-WantedBy=multi-user.target
diff --git a/abs/core/nfs-utils/start-statd.patch b/abs/core/nfs-utils/start-statd.patch
deleted file mode 100644
index 6f6f119..0000000
--- a/abs/core/nfs-utils/start-statd.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- nfs-utils-1.2.8/utils/statd/start-statd.old 2013-05-23 11:35:10.408221686 +0200
-+++ nfs-utils-1.2.8/utils/statd/start-statd 2013-05-23 11:35:22.191356904 +0200
-@@ -4,6 +4,6 @@
- # /var/run/rpc.statd.pid).
- # It should run statd with whatever flags are apropriate for this
- # site.
--PATH=/sbin:/usr/sbin
-+PATH=/sbin:/usr/sbin:/usr/bin
- exec rpc.statd --no-notify
-
diff --git a/abs/core/nfs-utils/var-lib-nfs-rpc_pipefs.mount b/abs/core/nfs-utils/var-lib-nfs-rpc_pipefs.mount
deleted file mode 100644
index 4bd440f..0000000
--- a/abs/core/nfs-utils/var-lib-nfs-rpc_pipefs.mount
+++ /dev/null
@@ -1,7 +0,0 @@
-[Unit]
-Description=RPC pipe filesystem
-
-[Mount]
-What=rpc_pipefs
-Where=/var/lib/nfs/rpc_pipefs
-Type=rpc_pipefs
diff --git a/abs/core/npth/PKGBUILD b/abs/core/npth/PKGBUILD
new file mode 100644
index 0000000..8ff7904
--- /dev/null
+++ b/abs/core/npth/PKGBUILD
@@ -0,0 +1,34 @@
+# $Id$
+# Maintainer: Gaetan Bisson <bisson@archlinux.org>
+
+pkgname=npth
+pkgver=1.5
+pkgrel=1
+pkgdesc='New portable threads library'
+url='http://git.gnupg.org/cgi-bin/gitweb.cgi?p=npth.git'
+license=('LGPL')
+options=('!libtool')
+arch=('x86_64')
+validpgpkeys=('D8692123C4065DEA5E0F3AB5249B39D24F25E3B6'
+ '46CC730865BB5C78EBABADCF04376F3EE0856959'
+ '031EC2536E580D8EA286A9F22071B08A33BD3F06'
+ 'D238EA65D64C67ED4C3073F28A861B1C7EFD60D9')
+source=("ftp://ftp.gnupg.org/gcrypt/${pkgname}/${pkgname}-${pkgver}.tar.bz2"{,.sig})
+sha256sums=('294a690c1f537b92ed829d867bee537e46be93fbd60b16c04630fbbfcd9db3c2'
+ 'SKIP')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure --prefix=/usr --enable-maintainer-mode
+ make
+}
+
+check() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make check
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/abs/core/ntp/PKGBUILD b/abs/core/ntp/PKGBUILD
index 3da7795..2ea5e1c 100644
--- a/abs/core/ntp/PKGBUILD
+++ b/abs/core/ntp/PKGBUILD
@@ -1,64 +1,47 @@
-# $Id: PKGBUILD 162162 2012-06-22 12:59:21Z dreisner $
-# Maintainer: Gaetan Bisson <bisson@archlinux.org>
+# Maintainer: Lukas Fleischer <lfleischer@archlinux.org>
+# Contributor: Gaetan Bisson <bisson@archlinux.org>
# Contributor: kevin <kevin@archlinux.org>
pkgname=ntp
-pkgver=4.2.6.p5
-_realver=4.2.6p5
-pkgrel=7
+_pkgname=ntp #-dev
+_pkgver=4.2.8p10
+pkgver=${_pkgver/p/.p}
+pkgrel=2
pkgdesc='Network Time Protocol reference implementation'
url='http://www.ntp.org/'
license=('custom')
-arch=('i686' 'x86_64')
-makedepends=('perl-html-parser')
-depends=('openssl' 'readline' 'libcap')
-backup=('etc/ntp.conf' 'etc/conf.d/ntpd.conf')
-source=("http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-${_realver}.tar.gz"
- 'ntpd'
- 'ntpdate'
+arch=('x86_64')
+depends=('openssl' 'libcap' 'libedit')
+backup=('etc/ntp.conf')
+source=("https://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/${_pkgname}-${_pkgver}.tar.gz"
'ntp.conf'
- 'ntpd.conf'
- 'logrotate.d'
- 'ntpd.service')
-sha1sums=('4a5353a4791b6f4315a66c28d504ec6c7926b192'
- '4e324e625c1f080b5c028be5092aa71adbf9bd99'
- '01394b8a952f5edc85d19df8335eeac3980320f4'
- 'eb1f63814b9adbd3d518e880fa3b38c375f0fe91'
- '4537d1f58b299d463db5048129cb264511474b0b'
- '4f76f7f9ffc8315ff9924f793f272d4f6939b816'
- '81df5c4d51cb69bc29363625ff49e2bd388d1fa9')
+ 'ntpd.service'
+ 'ntpdate.service')
+sha1sums=('503d68cfd3e6a9354e0e28dd38b39d850b1228b2'
+ 'ad1d6ee2e9aca64a84a7224c88bf6008ac6c69e1'
+ '0cccca872385e0142888ab48d273fec0669b30a8'
+ '059b382d1af0c55202e2d17f2ae065a2cbfec9ee')
-install=install
+options=('!emptydirs')
+install=ntp.install
build() {
- cd "${srcdir}/${pkgname}-${_realver}"
-
- ./configure \
- --prefix=/usr \
- --mandir=/usr/share/man \
- --enable-linuxcaps \
+ cd "${srcdir}/${_pkgname}-${_pkgver}"
+ ./configure --prefix=/usr --libexecdir=/usr/lib --enable-linuxcaps --enable-ntp-signd
make
}
package() {
- cd "${srcdir}/${pkgname}-$_realver"
+ cd "${srcdir}/${_pkgname}-${_pkgver}"
make DESTDIR="${pkgdir}" install
- rmdir "${pkgdir}"/usr/{lib,sbin}
- install -d -o 87 "${pkgdir}"/var/lib/ntp
- install -Dm755 ../ntpd "${pkgdir}"/etc/rc.d/ntpd
- install -Dm755 ../ntpdate "${pkgdir}"/etc/rc.d/ntpdate
install -Dm644 ../ntp.conf "${pkgdir}"/etc/ntp.conf
- install -Dm644 ../ntpd.conf "${pkgdir}"/etc/conf.d/ntpd.conf
- install -Dm644 ../logrotate.d "${pkgdir}"/etc/logrotate.d/ntpd
install -Dm644 ../ntpd.service "${pkgdir}"/usr/lib/systemd/system/ntpd.service
+ install -Dm644 ../ntpdate.service "${pkgdir}"/usr/lib/systemd/system/ntpdate.service
install -Dm644 COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
-
- cd html
- ../scripts/html2man
- install -d "${pkgdir}"/usr/share/man
- mv man/man* "${pkgdir}"/usr/share/man
- mv "${pkgdir}/usr/share/man/man8/ntpd.8" "${pkgdir}/usr/share/man/man8/ntp-ntpd.8" # we should ditch openntpd
+
+ install -d -o 87 "${pkgdir}"/var/lib/ntp
+ echo > "${pkgdir}/var/lib/ntp/.placeholder"
}
diff --git a/abs/core/ntp/install b/abs/core/ntp/install
deleted file mode 100644
index e6eddf8..0000000
--- a/abs/core/ntp/install
+++ /dev/null
@@ -1,37 +0,0 @@
-post_install() {
- getent group ntp &>/dev/null || groupadd -g 87 ntp >/dev/null
- getent passwd ntp &>/dev/null || useradd -u 87 -g ntp -d /var/lib/ntp -c 'Network Time Protocol' -s /bin/false ntp >/dev/null
- true
-}
-
-post_upgrade() {
- if [[ $(vercmp $2 4.2.6.p3) -le 0 ]]; then
- cat <<EOF
-
-==> The file /etc/conf.d/ntp-client.conf has been renamed /etc/conf.d/ntpd.conf
-==> If you made changes to the former, please update the latter.
-
-EOF
- fi
- if [[ $(vercmp $2 4.2.6.p5-1) -le 0 ]]; then
- cat <<EOF
-
-==> The PID file /var/run/ntpd.pid has been renamed /run/ntpd.pid
-==> and the new rc.d script only takes the latter into account.
-==> To stop your old ntpd process, please kill it manually.
-
-EOF
- fi
- if [[ $(vercmp $2 4.2.6.p5-3) -le 0 ]]; then
- post_install
- fi
- if [[ $(vercmp $2 4.2.6.p5-5) -le 0 ]]; then
- chown -R ntp /var/lib/ntp
- fi
-}
-
-post_remove() {
- getent passwd ntp &>/dev/null && userdel ntp >/dev/null
- getent group ntp &>/dev/null && groupdel ntp >/dev/null
- true
-}
diff --git a/abs/core/ntp/logrotate.d b/abs/core/ntp/logrotate.d
deleted file mode 100644
index 8a9f066..0000000
--- a/abs/core/ntp/logrotate.d
+++ /dev/null
@@ -1,4 +0,0 @@
-/var/log/ntp.log {
- missingok
- copytruncate
-}
diff --git a/abs/core/ntp/ntp.conf b/abs/core/ntp/ntp.conf
index a27b228..4debe96 100644
--- a/abs/core/ntp/ntp.conf
+++ b/abs/core/ntp/ntp.conf
@@ -1,23 +1,24 @@
-# With the default settings below, ntpd will only synchronize your clock.
+# Please consider joining the pool:
#
-# For details, see:
-# - the ntp.conf man page
-# - http://support.ntp.org/bin/view/Support/GettingStarted
+# http://www.pool.ntp.org/join.html
+#
+# For additional information see:
# - https://wiki.archlinux.org/index.php/Network_Time_Protocol_daemon
+# - http://support.ntp.org/bin/view/Support/GettingStarted
+# - the ntp.conf man page
-# Associate to public NTP pool servers; see http://www.pool.ntp.org/
-server 0.pool.ntp.org
-server 1.pool.ntp.org
-server 2.pool.ntp.org
+# Associate to Arch's NTP pool
+server 0.arch.pool.ntp.org
+server 1.arch.pool.ntp.org
+server 2.arch.pool.ntp.org
+server 3.arch.pool.ntp.org
-# Only allow read-only access from localhost
-restrict default noquery nopeer
+# By default, the server allows:
+# - all queries from the local host
+# - only time queries from remote hosts, protected by rate limiting and kod
+restrict default kod limited nomodify nopeer noquery notrap
restrict 127.0.0.1
restrict ::1
-# Location of drift and log files
+# Location of drift file
driftfile /var/lib/ntp/ntp.drift
-logfile /var/log/ntp.log
-
-# NOTE: If you run dhcpcd and have lines like 'restrict' and 'fudge' appearing
-# here, be sure to add '-Y -N' to the dhcpcd_ethX variables in /etc/conf.d/net
diff --git a/abs/core/ntp/ntp.install b/abs/core/ntp/ntp.install
new file mode 100644
index 0000000..4df9f78
--- /dev/null
+++ b/abs/core/ntp/ntp.install
@@ -0,0 +1,5 @@
+post_install() {
+ getent group ntp &>/dev/null || groupadd -g 87 ntp >/dev/null
+ getent passwd ntp &>/dev/null || useradd -u 87 -g ntp -d /var/lib/ntp -c 'Network Time Protocol' -s /bin/false ntp >/dev/null
+ true
+}
diff --git a/abs/core/ntp/ntpd b/abs/core/ntp/ntpd
deleted file mode 100755
index 480fa10..0000000
--- a/abs/core/ntp/ntpd
+++ /dev/null
@@ -1,47 +0,0 @@
-#!/bin/bash
-
-. /etc/rc.conf
-. /etc/rc.d/functions
-. /etc/conf.d/ntpd.conf
-
-unset PID
-PIDFILE='/run/ntpd.pid'
-
-if [[ -r ${PIDFILE} ]]; then
- read -r PID <"${PIDFILE}"
- if [[ -n ${PID} && ! -d /proc/${PID} ]]; then
- rm -f "${PIDFILE}"
- unset PID
- fi
-fi
-
-case "$1" in
- start)
- stat_busy "Starting NTP Daemon"
- if [[ -z ${PID} ]] && /usr/bin/ntpd ${NTPD_ARGS} -p "${PIDFILE}" &>/dev/null; then
- add_daemon ntpd
- stat_done
- else
- stat_fail
- exit 1
- fi
- ;;
- stop)
- stat_busy "Stopping NTP Daemon"
- if [[ -n ${PID} ]] && kill "${PID}" &>/dev/null; then
- rm ${PIDFILE}
- rm_daemon ntpd
- stat_done
- else
- stat_fail
- exit 1
- fi
- ;;
- restart)
- $0 stop
- sleep 1
- $0 start
- ;;
- *)
- echo "usage: $0 {start|stop|restart}"
-esac
diff --git a/abs/core/ntp/ntpd.conf b/abs/core/ntp/ntpd.conf
deleted file mode 100644
index 047961f..0000000
--- a/abs/core/ntp/ntpd.conf
+++ /dev/null
@@ -1,5 +0,0 @@
-# client options for "ntpd -q" - ntpdate equivalent
-NTP_CLIENT_OPTION="-g -u ntp"
-
-# arguments passed to ntpd when started
-NTPD_ARGS="-g -u ntp"
diff --git a/abs/core/ntp/ntpd.service b/abs/core/ntp/ntpd.service
index e0cbf87..267615c 100644
--- a/abs/core/ntp/ntpd.service
+++ b/abs/core/ntp/ntpd.service
@@ -1,12 +1,13 @@
[Unit]
Description=Network Time Service
-After=network.target
+After=network.target nss-lookup.target
+Conflicts=systemd-timesyncd.service
[Service]
Type=forking
-PIDFile=/run/ntpd.pid
-EnvironmentFile=/etc/conf.d/ntpd.conf
-ExecStart=/usr/bin/ntpd $NTPD_ARGS -p /run/ntpd.pid
+PrivateTmp=true
+ExecStart=/usr/bin/ntpd -g -u ntp:ntp
+Restart=always
[Install]
WantedBy=multi-user.target
diff --git a/abs/core/ntp/ntpdate b/abs/core/ntp/ntpdate
deleted file mode 100755
index a8e7467..0000000
--- a/abs/core/ntp/ntpdate
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/bin/bash
-
-. /etc/rc.conf
-. /etc/rc.d/functions
-. /etc/conf.d/ntpd.conf
-
-case "$1" in
- start)
- stat_busy "Starting NTP Client"
- if /usr/bin/ntpd -q ${NTP_CLIENT_OPTION} &>/dev/null; then
- add_daemon ntpdate
- stat_done
- else
- stat_fail
- exit 1
- fi
- ;;
- stop)
- stat_busy "Stopping NTP Client"
- rm_daemon ntpdate
- stat_done
- ;;
- restart)
- $0 stop
- $0 start
- ;;
- *)
- echo "usage: $0 {start|stop|restart}"
-esac
diff --git a/abs/core/ntp/ntpdate.service b/abs/core/ntp/ntpdate.service
new file mode 100644
index 0000000..e85852e
--- /dev/null
+++ b/abs/core/ntp/ntpdate.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=One-Shot Network Time Service
+After=network.target nss-lookup.target
+Before=ntpd.service
+
+[Service]
+Type=oneshot
+PrivateTmp=true
+ExecStart=/usr/bin/ntpd -q -n -g -u ntp:ntp
+
+[Install]
+WantedBy=multi-user.target
diff --git a/abs/core/nvidia-304xx/PKGBUILD b/abs/core/nvidia-304xx/PKGBUILD
index 6c7a698..f014b35 100644
--- a/abs/core/nvidia-304xx/PKGBUILD
+++ b/abs/core/nvidia-304xx/PKGBUILD
@@ -6,7 +6,7 @@ pkgbase=nvidia-304xx
pkgname=(nvidia-304xx nvidia-304xx-dkms)
pkgver=304.137
_extramodules=extramodules-4.9-ARCH
-pkgrel=10
+pkgrel=12
pkgdesc="NVIDIA drivers for linux, 304xx legacy branch"
arch=('x86_64')
url="http://www.nvidia.com/"
diff --git a/abs/core/nvidia-340xx-utils/PKGBUILD b/abs/core/nvidia-340xx-utils/PKGBUILD
index 9d132f3..6cbc1aa 100644
--- a/abs/core/nvidia-340xx-utils/PKGBUILD
+++ b/abs/core/nvidia-340xx-utils/PKGBUILD
@@ -1,29 +1,29 @@
# $Id$
-# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
-# Maintainer: Thomas Baechler <thomas@archlinux.org>
+# Maintainer: Giancarlo Razzolini <grazzolini@archlinux.org>
+# Contributor: Sven-Hendrik Haase <sh@lutzhaase.com>
+# Contributor: Thomas Baechler <thomas@archlinux.org>
# Contributor: James Rayner <iphitus@gmail.com>
pkgbase=nvidia-340xx-utils
pkgname=('nvidia-340xx-utils' 'opencl-nvidia-340xx')
-pkgver=340.104
-pkgrel=1
+pkgver=340.107
+pkgrel=3
arch=('x86_64')
url="http://www.nvidia.com/"
license=('custom')
options=('!strip')
-source=(nvidia-drm-outputclass.conf)
-source_i686=("http://us.download.nvidia.com/XFree86/Linux-x86/${pkgver}/NVIDIA-Linux-x86-${pkgver}.run")
-source_x86_64=("http://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}-no-compat32.run")
-sha512sums=('cfea06a816ac4a8b728b1ec728d667cdcca604abb038e8b5313b434021caad06a586856b8b3a6c79f8c925629360f5a051ca3de5ab46a42af76b9d0615d2bbbe')
-sha512sums_i686=('8dacd5345a5794e862f4106ab9e8e402defa7883dd176c243d019209b560fe955d7576a13936364c01c5a249f15df58208308c9378c12c3438784376e5fb806c')
-sha512sums_x86_64=('e962494561728af5a911354bfb3560e414464f7858f30f9654eac5ca56175bc8498d1eee93a18248c63e9eee7d84807ef924fe9f53239644d7085b0f3502bf8c')
-
-[[ "$CARCH" = "i686" ]] && _pkg="NVIDIA-Linux-x86-${pkgver}"
+source=(nvidia-drm-outputclass.conf
+ "http://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}-no-compat32.run"
+ nvidia-340xx-utils.sysusers)
+sha512sums=('c49d246a519731bfab9d22afa5c2dd2d366db06d80182738b84881e93cd697c783f16ee04819275c05597bb063451a5d6102fbc562cd078d2a374533a23cea48'
+ '0de6f182d67bd322df7ae04e74c0cde6973c55bfea47a8f2503a29f8a899cd1b801ae4b52d066628df4a4f9c84e5e7547465bdc37d1b87df47af43fdab23466f'
+ '4b3ad73f5076ba90fe0b3a2e712ac9cde76f469cd8070280f960c3ce7dc502d1927f525ae18d008075c8f08ea432f7be0a6c3a7a6b49c361126dcf42f97ec499')
+
[[ "$CARCH" = "x86_64" ]] && _pkg="NVIDIA-Linux-x86_64-${pkgver}-no-compat32"
create_links() {
# create soname links
- for _lib in $(find "${pkgdir}" -name '*.so*' | grep -v 'xorg/'); do
+ find "$pkgdir" -type f -name '*.so*' ! -path '*xorg/*' -print0 | while read -d $'\0' _lib; do
_soname=$(dirname "${_lib}")/$(readelf -d "${_lib}" | grep -Po 'SONAME.*: \[\K[^]]*' || true)
_base=$(echo ${_soname} | sed -r 's/(.*).so.*/\1.so/')
[[ -e "${_soname}" ]] || ln -s $(basename "${_lib}") "${_soname}"
@@ -48,7 +48,7 @@ package_opencl-nvidia-340xx() {
# OpenCL
install -D -m644 nvidia.icd "${pkgdir}/etc/OpenCL/vendors/nvidia.icd"
install -D -m755 "libnvidia-compiler.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-compiler.so.${pkgver}"
- install -D -m755 "libnvidia-opencl.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-opencl.so.${pkgver}"
+ install -D -m755 "libnvidia-opencl.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-opencl.so.${pkgver}"
create_links
@@ -62,11 +62,11 @@ package_nvidia-340xx-utils() {
optdepends=('gtk2: nvidia-settings'
'xorg-server-devel: nvidia-xconfig'
'opencl-nvidia-340xx: OpenCL support')
- conflicts=('nvidia-304xx-utils' 'nvidia-utils' 'nvidia-340xx-libgl')
- provides=('libgl' 'libgles' 'libegl' 'nvidia-utils' 'nvidia-340xx-libgl')
+ conflicts=('nvidia-utils' 'nvidia-340xx-libgl' 'nvidia-libgl')
+ provides=('libgl' 'libgles' 'libegl' 'nvidia-utils' 'nvidia-340xx-libgl' 'nvidia-libgl')
replaces=('nvidia-340xx-libgl')
install="${pkgname}.install"
-
+
cd "${_pkg}"
# X driver
@@ -87,7 +87,7 @@ package_nvidia-340xx-utils() {
install -D -m755 "libnvidia-glcore.so.${pkgver}" "${pkgdir}/usr/lib/nvidia/libnvidia-glcore.so.${pkgver}"
install -D -m755 "libnvidia-eglcore.so.${pkgver}" "${pkgdir}/usr/lib/nvidia/libnvidia-eglcore.so.${pkgver}"
install -D -m755 "libnvidia-glsi.so.${pkgver}" "${pkgdir}/usr/lib/nvidia/libnvidia-glsi.so.${pkgver}"
-
+
# misc
install -D -m755 "libnvidia-ifr.so.${pkgver}" "${pkgdir}/usr/lib/nvidia/libnvidia-ifr.so.${pkgver}"
install -D -m755 "libnvidia-fbc.so.${pkgver}" "${pkgdir}/usr/lib/nvidia/libnvidia-fbc.so.${pkgver}"
@@ -160,5 +160,7 @@ package_nvidia-340xx-utils() {
install -dm 755 "${pkgdir}"/etc/ld.so.conf.d
echo -e '/usr/lib/nvidia/' > "${pkgdir}"/etc/ld.so.conf.d/00-nvidia.conf
+ install -Dm644 "${srcdir}/nvidia-340xx-utils.sysusers" "${pkgdir}/usr/lib/sysusers.d/$pkgname.conf"
+
create_links
}
diff --git a/abs/core/nvidia-340xx-utils/nvidia-340xx-utils.install b/abs/core/nvidia-340xx-utils/nvidia-340xx-utils.install
index 1955c64..47847c7 100644
--- a/abs/core/nvidia-340xx-utils/nvidia-340xx-utils.install
+++ b/abs/core/nvidia-340xx-utils/nvidia-340xx-utils.install
@@ -3,8 +3,5 @@ post_upgrade() {
}
post_install() {
- getent group nvidia-persistenced &>/dev/null || groupadd -g 143 nvidia-persistenced
- getent passwd nvidia-persistenced &>/dev/null || useradd -c 'NVIDIA Persistence Daemon' -u 143 -g nvidia-persistenced -d '/' -s /sbin/nologin nvidia-persistenced
-
post_upgrade
}
diff --git a/abs/core/nvidia-340xx-utils/nvidia-340xx-utils.sysusers b/abs/core/nvidia-340xx-utils/nvidia-340xx-utils.sysusers
new file mode 100644
index 0000000..71c0608
--- /dev/null
+++ b/abs/core/nvidia-340xx-utils/nvidia-340xx-utils.sysusers
@@ -0,0 +1 @@
+u nvidia-persistenced 143 'NVIDIA Persistence Daemon'
diff --git a/abs/core/nvidia-340xx-utils/nvidia-drm-outputclass.conf b/abs/core/nvidia-340xx-utils/nvidia-drm-outputclass.conf
index b6003d3..dd2936c 100644
--- a/abs/core/nvidia-340xx-utils/nvidia-drm-outputclass.conf
+++ b/abs/core/nvidia-340xx-utils/nvidia-drm-outputclass.conf
@@ -11,4 +11,5 @@ Section "OutputClass"
Option "AllowEmptyInitialConfiguration"
Option "PrimaryGPU" "yes"
ModulePath "/usr/lib/nvidia/xorg"
+ ModulePath "/usr/lib/xorg/modules"
EndSection
diff --git a/abs/core/nvidia-340xx/PKGBUILD b/abs/core/nvidia-340xx/PKGBUILD
index 4e5bcb4..7d64b15 100644
--- a/abs/core/nvidia-340xx/PKGBUILD
+++ b/abs/core/nvidia-340xx/PKGBUILD
@@ -1,12 +1,13 @@
# $Id$
-# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Maintainer: Giancarlo Razzolini <grazzolini@archlinux.org>
+# Contributor: Felix Yan <felixonmars@archlinux.org>
# Contributor: Thomas Baechler <thomas@archlinux.org>
pkgbase=nvidia-340xx
pkgname=(nvidia-340xx nvidia-340xx-dkms)
-pkgver=340.104
+pkgver=340.107
_extramodules=extramodules-4.9-ARCH
-pkgrel=9
+pkgrel=5
pkgdesc="NVIDIA drivers for linux, 340xx legacy branch"
arch=('x86_64')
url="http://www.nvidia.com/"
@@ -15,10 +16,9 @@ conflicts=('nvidia')
license=('custom')
options=('!strip')
source=("http://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}-no-compat32.run"
- 'kernel-4.11.patch' 'kernel-4.14.patch')
-sha512sums=('e962494561728af5a911354bfb3560e414464f7858f30f9654eac5ca56175bc8498d1eee93a18248c63e9eee7d84807ef924fe9f53239644d7085b0f3502bf8c'
- 'c25d90499e1deb26129a67dd7e953be8c1e31c5770e2b8b64d03af54cf1afec1a52636e74900f8ac468692207ab8a3765a12edd581142c4d2cfd2d6e66ac7ac2'
- 'ccaa40e085d985ec4280003e36dd06e60958ed1408867379fd21a68a18d48aa4be311bf9ad1e804f7a7245c90be98e919d2ec30f45d290f1cdb19c866bdb8a8d')
+ 'kernel-4.11.patch')
+sha512sums=('0de6f182d67bd322df7ae04e74c0cde6973c55bfea47a8f2503a29f8a899cd1b801ae4b52d066628df4a4f9c84e5e7547465bdc37d1b87df47af43fdab23466f'
+ 'c25d90499e1deb26129a67dd7e953be8c1e31c5770e2b8b64d03af54cf1afec1a52636e74900f8ac468692207ab8a3765a12edd581142c4d2cfd2d6e66ac7ac2')
_pkg="NVIDIA-Linux-x86_64-${pkgver}-no-compat32"
@@ -28,7 +28,6 @@ prepare() {
# patches here
patch -Np0 < "${srcdir}/kernel-4.11.patch"
- patch -Np1 < "${srcdir}/kernel-4.14.patch"
cp -a kernel kernel-dkms
}
@@ -53,7 +52,7 @@ package_nvidia-340xx() {
find "${pkgdir}" -name '*.ko' -exec gzip -n {} +
echo "blacklist nouveau" |
- install -Dm644 /dev/stdin "${pkgdir}/usr/lib/modprobe.d/nvidia.conf"
+ install -Dm644 /dev/stdin "${pkgdir}/usr/lib/modprobe.d/${pkgname}.conf"
}
package_nvidia-340xx-dkms() {
@@ -70,5 +69,5 @@ package_nvidia-340xx-dkms() {
cat "${pkgdir}"/usr/src/nvidia-${pkgver}/uvm/dkms.conf.fragment >> "${pkgdir}"/usr/src/nvidia-${pkgver}/dkms.conf
echo "blacklist nouveau" |
- install -Dm644 /dev/stdin "${pkgdir}/usr/lib/modprobe.d/nvidia.conf"
+ install -Dm644 /dev/stdin "${pkgdir}/usr/lib/modprobe.d/${pkgname}.conf"
}
diff --git a/abs/core/nvidia-340xx/kernel-4.14.patch b/abs/core/nvidia-340xx/kernel-4.14.patch
deleted file mode 100644
index a38adbd..0000000
--- a/abs/core/nvidia-340xx/kernel-4.14.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-diff -u -r NVIDIA-Linux-x86_64-340.104-no-compat32/kernel/nv-drm.c NVIDIA-Linux-x86_64-340.104-no-compat32-kernel4.14/kernel/nv-drm.c
---- NVIDIA-Linux-x86_64-340.104-no-compat32/kernel/nv-drm.c 2017-09-15 01:16:51.000000000 +0200
-+++ NVIDIA-Linux-x86_64-340.104-no-compat32-kernel4.14/kernel/nv-drm.c 2017-11-19 00:51:45.006654148 +0100
-@@ -173,8 +173,12 @@
- {
- int ret = 0;
- #if defined(NV_DRM_AVAILABLE)
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 14, 0)
-+ ret = drm_legacy_pci_init(&nv_drm_driver, pci_driver);
-+#else
- ret = drm_pci_init(&nv_drm_driver, pci_driver);
- #endif
-+#endif
- return ret;
- }
-
-@@ -183,8 +187,12 @@
- )
- {
- #if defined(NV_DRM_AVAILABLE)
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 14, 0)
-+ drm_legacy_pci_exit(&nv_drm_driver, pci_driver);
-+#else
- drm_pci_exit(&nv_drm_driver, pci_driver);
- #endif
-+#endif
- }
-
- RM_STATUS NV_API_CALL nv_alloc_os_descriptor_handle(
diff --git a/abs/core/nvidia-utils/PKGBUILD b/abs/core/nvidia-utils/PKGBUILD
index 6a47564..cb4a5c9 100644
--- a/abs/core/nvidia-utils/PKGBUILD
+++ b/abs/core/nvidia-utils/PKGBUILD
@@ -5,28 +5,24 @@
pkgbase=nvidia-utils
pkgname=('nvidia-utils' 'opencl-nvidia')
-pkgver=387.22
+pkgver=390.67
pkgrel=1
arch=('x86_64')
url="http://www.nvidia.com/"
license=('custom')
options=('!strip')
-source=('nvidia-drm-outputclass.conf')
-source_i686=("http://us.download.nvidia.com/XFree86/Linux-x86/${pkgver}/NVIDIA-Linux-x86-${pkgver}.run")
-source_x86_64=("http://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}-no-compat32.run")
-md5sums=('a433deeb5f9cc661e537f42bde2f1df7')
-md5sums_i686=('abdbb3c813e52148f7435308121e6a37')
-md5sums_x86_64=('b21f9bafb20409b337505c9b1d362c34')
-sha512sums=('cfea06a816ac4a8b728b1ec728d667cdcca604abb038e8b5313b434021caad06a586856b8b3a6c79f8c925629360f5a051ca3de5ab46a42af76b9d0615d2bbbe')
-sha512sums_i686=('865c5024957ade2c8361b198cbc6600f469612fe0336e3a0bfaf56e4240999367f2066837c0b354af4821ab2531d05eddf3f2a0957eacc2eca0dd7cada4929b4')
-sha512sums_x86_64=('f304f5b6d4c7e0ba5f19cf9f84ecab1c911e17d25193b527bf9c45200dda942011cb7632555e5351ed8fc212dcb59ea3d791b971073a8b09cb96af790e0c30ff')
-
-[[ "$CARCH" = "i686" ]] && _pkg="NVIDIA-Linux-x86-${pkgver}"
-[[ "$CARCH" = "x86_64" ]] && _pkg="NVIDIA-Linux-x86_64-${pkgver}-no-compat32"
+source=('nvidia-drm-outputclass.conf'
+ 'nvidia-utils.sysusers'
+ "http://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}-no-compat32.run")
+sha512sums=('c49d246a519731bfab9d22afa5c2dd2d366db06d80182738b84881e93cd697c783f16ee04819275c05597bb063451a5d6102fbc562cd078d2a374533a23cea48'
+ '4b3ad73f5076ba90fe0b3a2e712ac9cde76f469cd8070280f960c3ce7dc502d1927f525ae18d008075c8f08ea432f7be0a6c3a7a6b49c361126dcf42f97ec499'
+ 'b0cf1678fa508a584836befdb8db83147e8b94cd25dc0012f589850512c2d69f94ae4bfce6cfa3e16945939747239e3ac762ac1bd5472f8a3052c1314558eb13')
+
+_pkg="NVIDIA-Linux-x86_64-${pkgver}-no-compat32"
create_links() {
# create soname links
- for _lib in $(find "${pkgdir}" -name '*.so*' | grep -v 'xorg/'); do
+ find "$pkgdir" -type f -name '*.so*' ! -path '*xorg/*' -print0 | while read -d $'\0' _lib; do
_soname=$(dirname "${_lib}")/$(readelf -d "${_lib}" | grep -Po 'SONAME.*: \[\K[^]]*' || true)
_base=$(echo ${_soname} | sed -r 's/(.*).so.*/\1.so/')
[[ -e "${_soname}" ]] || ln -s $(basename "${_lib}") "${_soname}"
@@ -162,8 +158,7 @@ package_nvidia-utils() {
install -D -m644 nvidia-application-profiles-${pkgver}-rc "${pkgdir}/usr/share/nvidia/nvidia-application-profiles-${pkgver}-rc"
install -D -m644 nvidia-application-profiles-${pkgver}-key-documentation "${pkgdir}/usr/share/nvidia/nvidia-application-profiles-${pkgver}-key-documentation"
- install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/nvidia/LICENSE"
- ln -s nvidia "${pkgdir}/usr/share/licenses/nvidia-utils"
+ install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/nvidia-utils/LICENSE"
install -D -m644 README.txt "${pkgdir}/usr/share/doc/nvidia/README"
install -D -m644 NVIDIA_Changelog "${pkgdir}/usr/share/doc/nvidia/NVIDIA_Changelog"
cp -r html "${pkgdir}/usr/share/doc/nvidia/"
@@ -172,5 +167,7 @@ package_nvidia-utils() {
# distro specific files must be installed in /usr/share/X11/xorg.conf.d
install -D -m644 "${srcdir}/nvidia-drm-outputclass.conf" "${pkgdir}/usr/share/X11/xorg.conf.d/10-nvidia-drm-outputclass.conf"
+ install -Dm644 "${srcdir}/nvidia-utils.sysusers" "${pkgdir}/usr/lib/sysusers.d/$pkgname.conf"
+
create_links
}
diff --git a/abs/core/nvidia-utils/nvidia-drm-outputclass.conf b/abs/core/nvidia-utils/nvidia-drm-outputclass.conf
index b6003d3..dd2936c 100644
--- a/abs/core/nvidia-utils/nvidia-drm-outputclass.conf
+++ b/abs/core/nvidia-utils/nvidia-drm-outputclass.conf
@@ -11,4 +11,5 @@ Section "OutputClass"
Option "AllowEmptyInitialConfiguration"
Option "PrimaryGPU" "yes"
ModulePath "/usr/lib/nvidia/xorg"
+ ModulePath "/usr/lib/xorg/modules"
EndSection
diff --git a/abs/core/nvidia-utils/nvidia-utils.install b/abs/core/nvidia-utils/nvidia-utils.install
index 1955c64..47847c7 100644
--- a/abs/core/nvidia-utils/nvidia-utils.install
+++ b/abs/core/nvidia-utils/nvidia-utils.install
@@ -3,8 +3,5 @@ post_upgrade() {
}
post_install() {
- getent group nvidia-persistenced &>/dev/null || groupadd -g 143 nvidia-persistenced
- getent passwd nvidia-persistenced &>/dev/null || useradd -c 'NVIDIA Persistence Daemon' -u 143 -g nvidia-persistenced -d '/' -s /sbin/nologin nvidia-persistenced
-
post_upgrade
}
diff --git a/abs/core/nvidia-utils/nvidia-utils.sysusers b/abs/core/nvidia-utils/nvidia-utils.sysusers
new file mode 100644
index 0000000..71c0608
--- /dev/null
+++ b/abs/core/nvidia-utils/nvidia-utils.sysusers
@@ -0,0 +1 @@
+u nvidia-persistenced 143 'NVIDIA Persistence Daemon'
diff --git a/abs/core/nvidia/PKGBUILD b/abs/core/nvidia/PKGBUILD
index 21247b9..c545054 100644
--- a/abs/core/nvidia/PKGBUILD
+++ b/abs/core/nvidia/PKGBUILD
@@ -5,17 +5,19 @@
pkgbase=nvidia
pkgname=(nvidia nvidia-dkms)
-pkgver=387.22
+pkgver=390.67
_extramodules=extramodules-4.9-ARCH
-pkgrel=9
+pkgrel=1
pkgdesc="NVIDIA drivers for linux"
arch=('x86_64')
url="http://www.nvidia.com/"
makedepends=('nvidia-libgl' "nvidia-utils=${pkgver}" 'linux' 'linux-headers>=4.9' 'linux-headers<4.10')
license=('custom')
options=('!strip')
-source=("http://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}-no-compat32.run")
-sha256sums=('2056b386f619ed096ee3c2267c495c6b00d1a2a4c933f0635befcf4e69c3856c')
+source=("http://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}-no-compat32.run"
+ kernel-4.16.patch)
+sha256sums=('4d9d4a636d568a93412cd9a2db08c594adef20861707dfdfbd6ae15db3292b26'
+ '622ac792ec200b2239cb663c0010392118b78c9904973d82cd261165c16d6385')
_pkg="NVIDIA-Linux-x86_64-${pkgver}-no-compat32"
@@ -23,6 +25,10 @@ prepare() {
sh "${_pkg}.run" --extract-only
cd "${_pkg}"
+ # Restore phys_to_dma support (still needed for 396.18)
+ # https://bugs.archlinux.org/task/58074
+ patch -Np1 -i ../kernel-4.16.patch
+
cp -a kernel kernel-dkms
cd kernel-dkms
sed -i "s/__VERSION_STRING/${pkgver}/" dkms.conf
@@ -58,7 +64,9 @@ package_nvidia() {
find "${pkgdir}" -name '*.ko' -exec gzip -n {} +
echo "blacklist nouveau" |
- install -Dm644 /dev/stdin "${pkgdir}/usr/lib/modprobe.d/nvidia.conf"
+ install -Dm644 /dev/stdin "${pkgdir}/usr/lib/modprobe.d/${pkgname}.conf"
+
+ install -Dt "${pkgdir}/usr/share/licenses/${pkgname}" -m644 "${srcdir}/${_pkg}/LICENSE"
}
package_nvidia-dkms() {
@@ -74,5 +82,7 @@ package_nvidia-dkms() {
cp -dr --no-preserve='ownership' kernel-dkms "${pkgdir}/usr/src/nvidia-${pkgver}"
echo "blacklist nouveau" |
- install -Dm644 /dev/stdin "${pkgdir}/usr/lib/modprobe.d/nvidia.conf"
+ install -Dm644 /dev/stdin "${pkgdir}/usr/lib/modprobe.d/${pkgname}.conf"
+
+ install -Dt "${pkgdir}/usr/share/licenses/${pkgname}" -m644 "${srcdir}/${_pkg}/LICENSE"
}
diff --git a/abs/core/nvidia/fix-abi.patch b/abs/core/nvidia/fix-abi.patch
deleted file mode 100644
index 5a3f8df..0000000
--- a/abs/core/nvidia/fix-abi.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -u -r kernel/nvidia-drm/nvidia-drm-fence.c kernel-patched/nvidia-drm/nvidia-drm-fence.c
---- kernel/nvidia-drm/nvidia-drm-fence.c 2016-08-09 01:43:19.000000000 +0200
-+++ kernel-patched/nvidia-drm/nvidia-drm-fence.c 2016-08-25 14:31:34.419655564 +0200
-@@ -325,7 +325,7 @@
- struct nvidia_drm_gem_object *nv_gem;
- };
-
--static void nvidia_drm_gem_prime_soft_fence_event
-+static void NVKMS_KAPI_CALL nvidia_drm_gem_prime_soft_fence_event
- (
- void *dataPtr,
- NvU32 dataU32
diff --git a/abs/core/nvidia/kernel-4.16.patch b/abs/core/nvidia/kernel-4.16.patch
new file mode 100644
index 0000000..6717281
--- /dev/null
+++ b/abs/core/nvidia/kernel-4.16.patch
@@ -0,0 +1,33 @@
+diff --git a/kernel/common/inc/nv-linux.h b/kernel/common/inc/nv-linux.h
+index 10fc418..22ef968 100644
+--- a/kernel/common/inc/nv-linux.h
++++ b/kernel/common/inc/nv-linux.h
+@@ -175,7 +175,11 @@ static inline uid_t __kuid_val(kuid_t uid)
+
+ #if defined(NV_VM_INSERT_PAGE_PRESENT)
+ #include <linux/pagemap.h>
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)
+ #include <linux/dma-mapping.h>
++#else
++#include <linux/dma-direct.h>
++#endif
+ #endif
+
+ #if defined(CONFIG_SWIOTLB) && defined(NVCPU_AARCH64)
+diff --git a/kernel/conftest.sh b/kernel/conftest.sh
+index b23dbb4..42dc576 100755
+--- a/kernel/conftest.sh
++++ b/kernel/conftest.sh
+@@ -1906,7 +1906,12 @@ compile_test() {
+ # Determine if the phys_to_dma function is present.
+ #
+ CODE="
++ #include <linux/version.h>
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)
+ #include <linux/dma-mapping.h>
++#else
++ #include <linux/dma-direct.h>
++#endif
+ void conftest_phys_to_dma(void) {
+ phys_to_dma();
+ }"
diff --git a/abs/core/openldap/PKGBUILD b/abs/core/openldap/PKGBUILD
index 0131552..304224d 100644
--- a/abs/core/openldap/PKGBUILD
+++ b/abs/core/openldap/PKGBUILD
@@ -2,24 +2,25 @@
# Maintainer:
pkgbase=openldap
-pkgname=('libldap' 'openldap')
-pkgver=2.4.39
-pkgrel=1
-arch=('i686' 'x86_64')
-url="http://www.openldap.org/"
+pkgname=('openldap' 'libldap')
+pkgver=2.4.45
+pkgrel=4
+arch=('x86_64')
+url="https://www.openldap.org/"
license=('custom')
-makedepends=('libltdl' 'libsasl' 'e2fsprogs' 'util-linux' 'chrpath')
-#options=('!makeflags')
-source=(ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/${pkgbase}-${pkgver}.tgz
- slapd.service slapd.tmpfiles openldap-ntlm.patch)
-sha1sums=('2b8e8401214867c361f7212e7058f95118b5bd6c'
+makedepends=('libltdl' 'libsasl' 'e2fsprogs' 'util-linux' 'chrpath' 'unixodbc')
+options=('!makeflags' 'emptydirs')
+source=(https://www.openldap.org/software/download/OpenLDAP/openldap-release/${pkgbase}-${pkgver}.tgz
+ slapd.service openldap.tmpfiles openldap.sysusers openldap-ntlm.patch)
+sha1sums=('c98437385d3eaee80c9e2c09f3f0d4b7c140233d'
'2441815efbfa01ad7a1d39068e5503b53d1d04b0'
- '59241a813d7508294e4ef1cec3bfe1f5495e109d'
+ '1f68bd85fb50595c4e916db164d8e90e0c6e21ee'
+ '2bf64351c32b0bf0a70663bd42de22910998b795'
'e4afd9f1c810ef4c4cd8fe1101dfe5887f2b7eef')
# see http://www.openldap.org/faq/data/cache/756.html
# there's no proper backend support for anything apart from
-# BerkeleyDB, if we don't want to drop local backend server support
+# BerkeleyDB, if we don't want to drop local backend server support
# we are forced to keep Berkeley DB here
prepare() {
@@ -33,25 +34,24 @@ prepare() {
build() {
cd ${pkgbase}-${pkgver}
- ./configure --prefix=/usr --mandir=/usr/share/man --libexecdir=/usr/lib \
+ autoconf
+ ./configure --prefix=/usr --libexecdir=/usr/lib \
--sysconfdir=/etc --localstatedir=/var/lib/openldap --sbindir=/usr/bin \
- --enable-ipv6 --enable-syslog --enable-local \
- --enable-bdb --enable-hdb \
- --enable-crypt --enable-dynamic \
- --with-threads --disable-wrappers \
- --without-fetch \
- --enable-spasswd --with-cyrus-sasl \
- --enable-overlays=mod --enable-modules=yes
+ --enable-dynamic --enable-syslog --enable-ipv6 --enable-local \
+ --enable-crypt --enable-spasswd --enable-modules \
+ --enable-backends --disable-ndb --enable-overlays=mod \
+ --with-cyrus-sasl --with-threads
make
- cd contrib/slapd-modules/nssov
- make prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap
- chrpath -d .libs/nssov.so
+ make -C contrib/slapd-modules/nssov OPT="$CFLAGS $CPPFLAGS" prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap
+ make -C contrib/slapd-modules/autogroup OPT="$CFLAGS $CPPFLAGS" prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap
+ make -C contrib/slapd-modules/lastbind OPT="$CFLAGS $CPPFLAGS" prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap
+ make -C contrib/slapd-modules/passwd/sha2 OPT="$CFLAGS $CPPFLAGS" prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap
}
check() {
cd ${pkgbase}-${pkgver}
- make test
+# make test
}
package_libldap() {
@@ -66,7 +66,7 @@ package_libldap() {
popd
done
install -Dm644 doc/man/man5/ldap.conf.5.tmp "${pkgdir}"/usr/share/man/man5/ldap.conf.5
-
+
# get rid of duplicate default conf files
rm "${pkgdir}"/etc/openldap/*.default
@@ -78,10 +78,8 @@ package_libldap() {
package_openldap() {
pkgdesc="Lightweight Directory Access Protocol (LDAP) client and server"
- depends=("libldap>=${pkgver}" 'libltdl')
+ depends=("libldap>=${pkgver}" 'libltdl' 'unixodbc')
backup=('etc/openldap/slapd.conf' 'etc/openldap/slapd.ldif')
- options=('emptydirs')
- install=openldap.install
cd ${pkgbase}-${pkgver}
for dir in clients servers doc/man/man{1,5,8}; do
@@ -90,12 +88,13 @@ package_openldap() {
popd
done
- pushd contrib/slapd-modules/nssov
- install -m755 .libs/nssov.so.0.0.0 "${pkgdir}"/usr/lib/openldap
- ln -s nssov.so.0.0.0 "${pkgdir}"/usr/lib/openldap/nssov.so
- ln -s nssov.so.0.0.0 "${pkgdir}"/usr/lib/openldap/nssov.so.0
- install -m444 ldapns.schema "${pkgdir}"/etc/openldap/schema
- popd
+ make -C contrib/slapd-modules/autogroup prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap DESTDIR="$pkgdir" install
+ make -C contrib/slapd-modules/lastbind prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap DESTDIR="$pkgdir" install
+ make -C contrib/slapd-modules/passwd/sha2 prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap DESTDIR="$pkgdir" install
+ make -C contrib/slapd-modules/nssov prefix=/usr libexecdir=/usr/lib sysconfdir=/etc/openldap DESTDIR="$pkgdir" install
+ install -m644 contrib/slapd-modules/nssov/slapo-nssov.5 "${pkgdir}"/usr/share/man/man5/slapo-nssov.5
+ install -m644 contrib/slapd-modules/autogroup/slapo-autogroup.5 "${pkgdir}"/usr/share/man/man5/slapo-autogroup.5
+ install -m644 contrib/slapd-modules/lastbind/slapo-lastbind.5 "${pkgdir}"/usr/share/man/man5/slapo-lastbind.5
rm "${pkgdir}"/usr/share/man/man5/ldap.conf.5
rm -r "${pkgdir}"/run
@@ -109,8 +108,11 @@ package_openldap() {
chmod 640 "${pkgdir}"/etc/openldap/{slapd.{conf,ldif},DB_CONFIG.example}
install -dm700 -o 439 -g 439 "${pkgdir}"/var/lib/openldap
+ chown -R 439:439 "${pkgdir}"/var/lib/openldap
+
install -dm700 -o 439 -g 439 "${pkgdir}"/etc/openldap/slapd.d
install -Dm644 "${srcdir}"/slapd.service "${pkgdir}"/usr/lib/systemd/system/slapd.service
- install -Dm644 "${srcdir}"/slapd.tmpfiles "${pkgdir}"/usr/lib/tmpfiles.d/slapd.conf
+ install -Dm644 "${srcdir}"/openldap.tmpfiles "${pkgdir}"/usr/lib/tmpfiles.d/openldap.conf
+ install -Dm644 "${srcdir}"/openldap.sysusers "${pkgdir}"/usr/lib/sysusers.d/openldap.conf
install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
}
diff --git a/abs/core/openldap/openldap.install b/abs/core/openldap/openldap.install
deleted file mode 100644
index a34ca1a..0000000
--- a/abs/core/openldap/openldap.install
+++ /dev/null
@@ -1,21 +0,0 @@
-post_install(){
- systemd-tmpfiles --create slapd.conf
- groupadd -g 439 ldap &>/dev/null
- useradd -u 439 -g ldap -d /var/lib/openldap -s /bin/false ldap &>/dev/null
- chown -R ldap:ldap var/lib/openldap &>/dev/null
-}
-
-post_upgrade(){
- getent group ldap >/dev/null 2>&1 || groupadd -g 439 ldap &>/dev/null
- getent passwd ldap >/dev/null 2>&1 || useradd -u 439 -g ldap -d /var/lib/openldap -s /bin/false ldap &>/dev/null
- chown -R ldap:ldap var/lib/openldap &>/dev/null
-}
-
-post_remove(){
- if getent passwd ldap >/dev/null 2>&1; then
- userdel ldap
- fi
- if getent group ldap >/dev/null 2>&1; then
- groupdel ldap
- fi
-}
diff --git a/abs/core/openldap/openldap.sysusers b/abs/core/openldap/openldap.sysusers
new file mode 100644
index 0000000..362d6c1
--- /dev/null
+++ b/abs/core/openldap/openldap.sysusers
@@ -0,0 +1 @@
+u ldap 439 "LDAP Server" /var/lib/openldap
diff --git a/abs/core/openldap/openldap.tmpfiles b/abs/core/openldap/openldap.tmpfiles
new file mode 100644
index 0000000..9337fce
--- /dev/null
+++ b/abs/core/openldap/openldap.tmpfiles
@@ -0,0 +1,3 @@
+D /run/openldap 0755 ldap ldap -
+
+f /var/lib/openldap/.placeholder 0644 ldap ldap - "prevent pwcheck error; pacman should not remove ~ldap"
diff --git a/abs/core/openldap/slapd.tmpfiles b/abs/core/openldap/slapd.tmpfiles
deleted file mode 100644
index b22c831..0000000
--- a/abs/core/openldap/slapd.tmpfiles
+++ /dev/null
@@ -1 +0,0 @@
-D /run/openldap 0755 ldap ldap -
diff --git a/abs/core/openssh/PKGBUILD b/abs/core/openssh/PKGBUILD
index 2fe40b3..b180b75 100644
--- a/abs/core/openssh/PKGBUILD
+++ b/abs/core/openssh/PKGBUILD
@@ -4,34 +4,43 @@
# Contributor: judd <jvinet@zeroflux.org>
pkgname=openssh
-pkgver=7.3p1
-pkgrel=1
+pkgver=7.6p1
+pkgrel=2
pkgdesc='Free version of the SSH connectivity tools'
-url='http://www.openssh.org/portable.html'
+url='https://www.openssh.com/portable.html'
license=('custom:BSD')
-arch=('i686' 'x86_64')
+arch=('x86_64')
makedepends=('linux-headers')
depends=('krb5' 'openssl' 'libedit' 'ldns')
optdepends=('xorg-xauth: X11 forwarding'
'x11-ssh-askpass: input passphrase in X')
validpgpkeys=('59C2118ED206D927E667EBE3D3E5F56B6D920D30')
-source=("http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/${pkgname}-${pkgver}.tar.gz"{,.asc}
+source=("https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/${pkgname}-${pkgver}.tar.gz"{,.asc}
+ 'openssl-1.1.0.patch'
'sshdgenkeys.service'
'sshd@.service'
'sshd.service'
'sshd.socket'
'sshd.conf'
'sshd.pam')
-sha1sums=('bfade84283fcba885e2084343ab19a08c7d123a5' 'SKIP'
- 'caaa801da59a5d14c0c29c43e9de5fef281ea03e'
- '6a0ff3305692cf83aca96e10f3bb51e1c26fccda'
- 'ec49c6beba923e201505f5669cea48cad29014db'
- 'e12fa910b26a5634e5a6ac39ce1399a132cf6796'
- 'c9b2e4ce259cd62ddb00364d3ee6f00a8bf2d05f'
- 'd93dca5ebda4610ff7647187f8928a3de28703f3')
+sha256sums=('a323caeeddfe145baaa0db16e98d784b1fbc7dd436a6bf1f479dfd5cd1d21723'
+ 'SKIP'
+ '1fcae9fc461026d96d08b38457e7ffe281b4319caaada1508f9eb74c2566ba5d'
+ '4031577db6416fcbaacf8a26a024ecd3939e5c10fe6a86ee3f0eea5093d533b7'
+ '3a0845737207f4eda221c9c9fb64e766ade9684562d8ba4f705f7ae6826886e5'
+ 'c5ed9fa629f8f8dbf3bae4edbad4441c36df535088553fe82695c52d7bde30aa'
+ 'de14363e9d4ed92848e524036d9e6b57b2d35cc77d377b7247c38111d2a3defd'
+ '4effac1186cc62617f44385415103021f72f674f8b8e26447fc1139c670090f6'
+ '64576021515c0a98b0aaf0a0ae02e0f5ebe8ee525b1e647ab68f369f81ecd846')
backup=('etc/ssh/ssh_config' 'etc/ssh/sshd_config' 'etc/pam.d/sshd')
+prepare() {
+ cd $pkgname-$pkgver
+ # OpenSSL 1.1.0 patch from http://vega.pgw.jp/~kabe/vsd/patch/openssh-7.4p1-openssl-1.1.0c.patch.html
+ patch -Np1 -i ../openssl-1.1.0.patch
+}
+
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
@@ -47,9 +56,9 @@ build() {
--with-privsep-user=nobody \
--with-kerberos5=/usr \
--with-xauth=/usr/bin/xauth \
- --with-mantype=man \
--with-md5-passwords \
--with-pid-dir=/run \
+ --with-default-path='/usr/local/sbin:/usr/local/bin:/usr/bin' \
make
}
@@ -57,10 +66,13 @@ build() {
check() {
cd "${srcdir}/${pkgname}-${pkgver}"
- make tests || true
- # hard to suitably test connectivity:
- # - fails with /bin/false as login shell
- # - fails with firewall activated, etc.
+ # Tests require openssh to be already installed system-wide,
+ # also connectivity tests will fail under makechrootpkg since
+ # it runs as nobody which has /bin/false as login shell.
+
+ if [[ -e /usr/bin/scp && ! -e /.arch-chroot ]]; then
+ make tests
+ fi
}
package() {
diff --git a/abs/core/openssh/openssl-1.1.0.patch b/abs/core/openssh/openssl-1.1.0.patch
new file mode 100644
index 0000000..f5454ac
--- /dev/null
+++ b/abs/core/openssh/openssl-1.1.0.patch
@@ -0,0 +1,1982 @@
+diff -Naur old/auth-pam.c new/auth-pam.c
+--- old/auth-pam.c 2017-10-03 21:49:05.363829772 -1000
++++ new/auth-pam.c 2017-10-03 21:55:50.869718862 -1000
+@@ -128,6 +128,10 @@
+ typedef pthread_t sp_pthread_t;
+ #else
+ typedef pid_t sp_pthread_t;
++# define pthread_create(a, b, c, d) _ssh_compat_pthread_create(a, b, c, d)
++# define pthread_exit(a) _ssh_compat_pthread_exit(a)
++# define pthread_cancel(a) _ssh_compat_pthread_cancel(a)
++# define pthread_join(a, b) _ssh_compat_pthread_join(a, b)
+ #endif
+
+ struct pam_ctxt {
+diff -Naur old/cipher.c new/cipher.c
+--- old/cipher.c 2017-10-03 21:49:05.367162904 -1000
++++ new/cipher.c 2017-10-03 21:55:50.869718862 -1000
+@@ -297,7 +297,10 @@
+ goto out;
+ }
+ }
+- if (EVP_CipherInit(cc->evp, NULL, (u_char *)key, NULL, -1) == 0) {
++ /* in OpenSSL 1.1.0, EVP_CipherInit clears all previous setups;
++ use EVP_CipherInit_ex for augmenting */
++ if (EVP_CipherInit_ex(cc->evp, NULL, NULL, (u_char *)key, NULL, -1) == 0)
++ {
+ ret = SSH_ERR_LIBCRYPTO_ERROR;
+ goto out;
+ }
+@@ -486,7 +489,7 @@
+ len, iv))
+ return SSH_ERR_LIBCRYPTO_ERROR;
+ } else
+- memcpy(iv, cc->evp->iv, len);
++ memcpy(iv, EVP_CIPHER_CTX_iv(cc->evp), len);
+ #endif
+ return 0;
+ }
+@@ -520,14 +523,19 @@
+ EVP_CTRL_GCM_SET_IV_FIXED, -1, (void *)iv))
+ return SSH_ERR_LIBCRYPTO_ERROR;
+ } else
+- memcpy(cc->evp->iv, iv, evplen);
++ memcpy(EVP_CIPHER_CTX_iv(cc->evp), iv, evplen);
+ #endif
+ return 0;
+ }
+
+ #ifdef WITH_OPENSSL
+-#define EVP_X_STATE(evp) (evp)->cipher_data
+-#define EVP_X_STATE_LEN(evp) (evp)->cipher->ctx_size
++# if OPENSSL_VERSION_NUMBER >= 0x10100000UL
++#define EVP_X_STATE(evp) EVP_CIPHER_CTX_get_cipher_data(evp)
++#define EVP_X_STATE_LEN(evp) EVP_CIPHER_impl_ctx_size(EVP_CIPHER_CTX_cipher(evp))
++# else
++#define EVP_X_STATE(evp) (evp).cipher_data
++#define EVP_X_STATE_LEN(evp) (evp).cipher->ctx_size
++# endif
+ #endif
+
+ int
+diff -Naur old/cipher.h new/cipher.h
+--- old/cipher.h 2017-10-03 21:49:05.367162904 -1000
++++ new/cipher.h 2017-10-03 21:55:50.869718862 -1000
+@@ -46,7 +46,18 @@
+ #define CIPHER_DECRYPT 0
+
+ struct sshcipher;
++#if 0
++struct sshcipher_ctx {
++ int plaintext;
++ int encrypt;
++ EVP_CIPHER_CTX *evp;
++ struct chachapoly_ctx cp_ctx; /* XXX union with evp? */
++ struct aesctr_ctx ac_ctx; /* XXX union with evp? */
++ const struct sshcipher *cipher;
++};
++#else
+ struct sshcipher_ctx;
++#endif
+
+ const struct sshcipher *cipher_by_name(const char *);
+ const char *cipher_warning_message(const struct sshcipher_ctx *);
+diff -Naur old/configure new/configure
+--- old/configure 2017-10-03 21:49:05.410493626 -1000
++++ new/configure 2017-10-03 22:01:49.159050540 -1000
+@@ -12688,7 +12688,6 @@
+ 100*) ;; # 1.0.x
+ 200*) ;; # LibreSSL
+ *)
+- as_fn_error $? "OpenSSL >= 1.1.0 is not yet supported (have \"$ssl_library_ver\")" "$LINENO" 5
+ ;;
+ esac
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ssl_library_ver" >&5
+diff -Naur old/dh.c new/dh.c
+--- old/dh.c 2017-10-03 21:49:05.370496037 -1000
++++ new/dh.c 2017-10-03 21:55:50.869718862 -1000
+@@ -212,14 +212,15 @@
+ /* diffie-hellman-groupN-sha1 */
+
+ int
+-dh_pub_is_valid(DH *dh, BIGNUM *dh_pub)
++dh_pub_is_valid(const DH *dh, const BIGNUM *dh_pub)
+ {
+ int i;
+ int n = BN_num_bits(dh_pub);
+ int bits_set = 0;
+ BIGNUM *tmp;
++ const BIGNUM *p;
+
+- if (dh_pub->neg) {
++ if (BN_is_negative(dh_pub)) {
+ logit("invalid public DH value: negative");
+ return 0;
+ }
+@@ -232,7 +233,8 @@
+ error("%s: BN_new failed", __func__);
+ return 0;
+ }
+- if (!BN_sub(tmp, dh->p, BN_value_one()) ||
++ DH_get0_pqg(dh, &p, NULL, NULL);
++ if (!BN_sub(tmp, p, BN_value_one()) ||
+ BN_cmp(dh_pub, tmp) != -1) { /* pub_exp > p-2 */
+ BN_clear_free(tmp);
+ logit("invalid public DH value: >= p-1");
+@@ -243,14 +245,14 @@
+ for (i = 0; i <= n; i++)
+ if (BN_is_bit_set(dh_pub, i))
+ bits_set++;
+- debug2("bits set: %d/%d", bits_set, BN_num_bits(dh->p));
++ debug2("bits set: %d/%d", bits_set, BN_num_bits(p));
+
+ /*
+ * if g==2 and bits_set==1 then computing log_g(dh_pub) is trivial
+ */
+ if (bits_set < 4) {
+ logit("invalid public DH value (%d/%d)",
+- bits_set, BN_num_bits(dh->p));
++ bits_set, BN_num_bits(p));
+ return 0;
+ }
+ return 1;
+@@ -260,9 +262,13 @@
+ dh_gen_key(DH *dh, int need)
+ {
+ int pbits;
++ const BIGNUM *p, *pub_key;
++ BIGNUM *priv_key;
+
+- if (need < 0 || dh->p == NULL ||
+- (pbits = BN_num_bits(dh->p)) <= 0 ||
++ DH_get0_pqg(dh, &p, NULL, NULL);
++
++ if (need < 0 || p == NULL ||
++ (pbits = BN_num_bits(p)) <= 0 ||
+ need > INT_MAX / 2 || 2 * need > pbits)
+ return SSH_ERR_INVALID_ARGUMENT;
+ if (need < 256)
+@@ -271,10 +277,13 @@
+ * Pollard Rho, Big step/Little Step attacks are O(sqrt(n)),
+ * so double requested need here.
+ */
+- dh->length = MINIMUM(need * 2, pbits - 1);
+- if (DH_generate_key(dh) == 0 ||
+- !dh_pub_is_valid(dh, dh->pub_key)) {
+- BN_clear_free(dh->priv_key);
++ DH_set_length(dh, MIN(need * 2, pbits - 1));
++ if (DH_generate_key(dh) == 0) {
++ return SSH_ERR_LIBCRYPTO_ERROR;
++ }
++ DH_get0_key(dh, &pub_key, &priv_key);
++ if (!dh_pub_is_valid(dh, pub_key)) {
++ BN_clear(priv_key);
+ return SSH_ERR_LIBCRYPTO_ERROR;
+ }
+ return 0;
+@@ -283,16 +292,27 @@
+ DH *
+ dh_new_group_asc(const char *gen, const char *modulus)
+ {
+- DH *dh;
++ DH *dh = NULL;
++ BIGNUM *p=NULL, *g=NULL;
+
+- if ((dh = DH_new()) == NULL)
+- return NULL;
+- if (BN_hex2bn(&dh->p, modulus) == 0 ||
+- BN_hex2bn(&dh->g, gen) == 0) {
+- DH_free(dh);
+- return NULL;
++ if ((dh = DH_new()) == NULL ||
++ (p = BN_new()) == NULL ||
++ (g = BN_new()) == NULL)
++ goto null;
++ if (BN_hex2bn(&p, modulus) == 0 ||
++ BN_hex2bn(&g, gen) == 0) {
++ goto null;
+ }
++ if (DH_set0_pqg(dh, p, NULL, g) == 0) {
++ goto null;
++ }
++ p = g = NULL;
+ return (dh);
++null:
++ BN_free(p);
++ BN_free(g);
++ DH_free(dh);
++ return NULL;
+ }
+
+ /*
+@@ -307,8 +327,8 @@
+
+ if ((dh = DH_new()) == NULL)
+ return NULL;
+- dh->p = modulus;
+- dh->g = gen;
++ if (DH_set0_pqg(dh, modulus, NULL, gen) == 0)
++ return NULL;
+
+ return (dh);
+ }
+diff -Naur old/dh.h new/dh.h
+--- old/dh.h 2017-10-03 21:49:05.370496037 -1000
++++ new/dh.h 2017-10-03 21:55:50.869718862 -1000
+@@ -42,7 +42,7 @@
+ DH *dh_new_group_fallback(int);
+
+ int dh_gen_key(DH *, int);
+-int dh_pub_is_valid(DH *, BIGNUM *);
++int dh_pub_is_valid(const DH *, const BIGNUM *);
+
+ u_int dh_estimate(int);
+
+diff -Naur old/digest-openssl.c new/digest-openssl.c
+--- old/digest-openssl.c 2017-10-03 21:49:05.370496037 -1000
++++ new/digest-openssl.c 2017-10-03 21:55:50.869718862 -1000
+@@ -43,7 +43,7 @@
+
+ struct ssh_digest_ctx {
+ int alg;
+- EVP_MD_CTX mdctx;
++ EVP_MD_CTX *mdctx;
+ };
+
+ struct ssh_digest {
+@@ -106,20 +106,21 @@
+ size_t
+ ssh_digest_blocksize(struct ssh_digest_ctx *ctx)
+ {
+- return EVP_MD_CTX_block_size(&ctx->mdctx);
++ return EVP_MD_CTX_block_size(ctx->mdctx);
+ }
+
+ struct ssh_digest_ctx *
+ ssh_digest_start(int alg)
+ {
+ const struct ssh_digest *digest = ssh_digest_by_alg(alg);
+- struct ssh_digest_ctx *ret;
++ struct ssh_digest_ctx *ret = NULL;
+
+ if (digest == NULL || ((ret = calloc(1, sizeof(*ret))) == NULL))
+ return NULL;
+ ret->alg = alg;
+- EVP_MD_CTX_init(&ret->mdctx);
+- if (EVP_DigestInit_ex(&ret->mdctx, digest->mdfunc(), NULL) != 1) {
++ if ((ret->mdctx = EVP_MD_CTX_new()) == NULL ||
++ EVP_DigestInit_ex(ret->mdctx, digest->mdfunc(), NULL) != 1) {
++ EVP_MD_CTX_free(ret->mdctx);
+ free(ret);
+ return NULL;
+ }
+@@ -132,7 +133,7 @@
+ if (from->alg != to->alg)
+ return SSH_ERR_INVALID_ARGUMENT;
+ /* we have bcopy-style order while openssl has memcpy-style */
+- if (!EVP_MD_CTX_copy_ex(&to->mdctx, &from->mdctx))
++ if (!EVP_MD_CTX_copy_ex(to->mdctx, from->mdctx))
+ return SSH_ERR_LIBCRYPTO_ERROR;
+ return 0;
+ }
+@@ -140,7 +141,7 @@
+ int
+ ssh_digest_update(struct ssh_digest_ctx *ctx, const void *m, size_t mlen)
+ {
+- if (EVP_DigestUpdate(&ctx->mdctx, m, mlen) != 1)
++ if (EVP_DigestUpdate(ctx->mdctx, m, mlen) != 1)
+ return SSH_ERR_LIBCRYPTO_ERROR;
+ return 0;
+ }
+@@ -161,7 +162,7 @@
+ return SSH_ERR_INVALID_ARGUMENT;
+ if (dlen < digest->digest_len) /* No truncation allowed */
+ return SSH_ERR_INVALID_ARGUMENT;
+- if (EVP_DigestFinal_ex(&ctx->mdctx, d, &l) != 1)
++ if (EVP_DigestFinal_ex(ctx->mdctx, d, &l) != 1)
+ return SSH_ERR_LIBCRYPTO_ERROR;
+ if (l != digest->digest_len) /* sanity */
+ return SSH_ERR_INTERNAL_ERROR;
+@@ -172,7 +173,7 @@
+ ssh_digest_free(struct ssh_digest_ctx *ctx)
+ {
+ if (ctx != NULL) {
+- EVP_MD_CTX_cleanup(&ctx->mdctx);
++ EVP_MD_CTX_free(ctx->mdctx);
+ explicit_bzero(ctx, sizeof(*ctx));
+ free(ctx);
+ }
+diff -Naur old/kexdhc.c new/kexdhc.c
+--- old/kexdhc.c 2017-10-03 21:49:05.373829169 -1000
++++ new/kexdhc.c 2017-10-03 21:55:50.869718862 -1000
+@@ -81,11 +81,16 @@
+ goto out;
+ }
+ debug("sending SSH2_MSG_KEXDH_INIT");
+- if ((r = dh_gen_key(kex->dh, kex->we_need * 8)) != 0 ||
+- (r = sshpkt_start(ssh, SSH2_MSG_KEXDH_INIT)) != 0 ||
+- (r = sshpkt_put_bignum2(ssh, kex->dh->pub_key)) != 0 ||
++ {
++ const BIGNUM *pub_key;
++ if ((r = dh_gen_key(kex->dh, kex->we_need * 8)) != 0)
++ goto out;
++ DH_get0_key(kex->dh, &pub_key, NULL);
++ if ((r = sshpkt_start(ssh, SSH2_MSG_KEXDH_INIT)) != 0 ||
++ (r = sshpkt_put_bignum2(ssh, pub_key)) != 0 ||
+ (r = sshpkt_send(ssh)) != 0)
+ goto out;
++ }
+ #ifdef DEBUG_KEXDH
+ DHparams_print_fp(stderr, kex->dh);
+ fprintf(stderr, "pub= ");
+@@ -169,6 +174,9 @@
+
+ /* calc and verify H */
+ hashlen = sizeof(hash);
++ {
++ const BIGNUM *pub_key;
++ DH_get0_key(kex->dh, &pub_key, NULL);
+ if ((r = kex_dh_hash(
+ kex->hash_alg,
+ kex->client_version_string,
+@@ -176,11 +184,13 @@
+ sshbuf_ptr(kex->my), sshbuf_len(kex->my),
+ sshbuf_ptr(kex->peer), sshbuf_len(kex->peer),
+ server_host_key_blob, sbloblen,
+- kex->dh->pub_key,
++ pub_key,
+ dh_server_pub,
+ shared_secret,
+- hash, &hashlen)) != 0)
++ hash, &hashlen)) != 0) {
+ goto out;
++ }
++ }
+
+ if ((r = sshkey_verify(server_host_key, signature, slen, hash, hashlen,
+ ssh->compat)) != 0)
+diff -Naur old/kexdhs.c new/kexdhs.c
+--- old/kexdhs.c 2017-10-03 21:49:05.373829169 -1000
++++ new/kexdhs.c 2017-10-03 21:55:50.869718862 -1000
+@@ -87,6 +87,10 @@
+ ssh_dispatch_set(ssh, SSH2_MSG_KEXDH_INIT, &input_kex_dh_init);
+ r = 0;
+ out:
++ if (r != 0) {
++ if (kex->dh) DH_free(kex->dh);
++ kex->dh = NULL;
++ }
+ return r;
+ }
+
+@@ -163,6 +167,9 @@
+ goto out;
+ /* calc H */
+ hashlen = sizeof(hash);
++ {
++ const BIGNUM *pub_key;
++ DH_get0_key(kex->dh, &pub_key, NULL);
+ if ((r = kex_dh_hash(
+ kex->hash_alg,
+ kex->client_version_string,
+@@ -171,10 +178,12 @@
+ sshbuf_ptr(kex->my), sshbuf_len(kex->my),
+ server_host_key_blob, sbloblen,
+ dh_client_pub,
+- kex->dh->pub_key,
++ pub_key,
+ shared_secret,
+- hash, &hashlen)) != 0)
++ hash, &hashlen)) != 0) {
+ goto out;
++ }
++ }
+
+ /* save session id := H */
+ if (kex->session_id == NULL) {
+@@ -195,12 +204,17 @@
+ /* destroy_sensitive_data(); */
+
+ /* send server hostkey, DH pubkey 'f' and singed H */
++ {
++ const BIGNUM *pub_key;
++ DH_get0_key(kex->dh, &pub_key, NULL);
+ if ((r = sshpkt_start(ssh, SSH2_MSG_KEXDH_REPLY)) != 0 ||
+ (r = sshpkt_put_string(ssh, server_host_key_blob, sbloblen)) != 0 ||
+- (r = sshpkt_put_bignum2(ssh, kex->dh->pub_key)) != 0 || /* f */
++ (r = sshpkt_put_bignum2(ssh, pub_key)) != 0 || /* f */
+ (r = sshpkt_put_string(ssh, signature, slen)) != 0 ||
+- (r = sshpkt_send(ssh)) != 0)
++ (r = sshpkt_send(ssh)) != 0) {
+ goto out;
++ }
++ }
+
+ if ((r = kex_derive_keys_bn(ssh, hash, hashlen, shared_secret)) == 0)
+ r = kex_send_newkeys(ssh);
+diff -Naur old/kexgexc.c new/kexgexc.c
+--- old/kexgexc.c 2017-10-03 21:49:05.373829169 -1000
++++ new/kexgexc.c 2017-10-03 21:55:50.869718862 -1000
+@@ -118,11 +118,17 @@
+ p = g = NULL; /* belong to kex->dh now */
+
+ /* generate and send 'e', client DH public key */
+- if ((r = dh_gen_key(kex->dh, kex->we_need * 8)) != 0 ||
+- (r = sshpkt_start(ssh, SSH2_MSG_KEX_DH_GEX_INIT)) != 0 ||
+- (r = sshpkt_put_bignum2(ssh, kex->dh->pub_key)) != 0 ||
+- (r = sshpkt_send(ssh)) != 0)
++ {
++ const BIGNUM *pub_key;
++ if ((r = dh_gen_key(kex->dh, kex->we_need * 8)) != 0)
++ goto out;
++ DH_get0_key(kex->dh, &pub_key, NULL);
++ if ((r = sshpkt_start(ssh, SSH2_MSG_KEX_DH_GEX_INIT)) != 0 ||
++ (r = sshpkt_put_bignum2(ssh, pub_key)) != 0 ||
++ (r = sshpkt_send(ssh)) != 0) {
+ goto out;
++ }
++ }
+ debug("SSH2_MSG_KEX_DH_GEX_INIT sent");
+ #ifdef DEBUG_KEXDH
+ DHparams_print_fp(stderr, kex->dh);
+@@ -134,10 +140,12 @@
+ ssh_dispatch_set(ssh, SSH2_MSG_KEX_DH_GEX_REPLY, &input_kex_dh_gex_reply);
+ r = 0;
+ out:
+- if (p)
++ if (r != 0) {
+ BN_clear_free(p);
+- if (g)
+ BN_clear_free(g);
++ DH_free(kex->dh);
++ kex->dh = NULL;
++ }
+ return r;
+ }
+
+@@ -214,6 +222,10 @@
+
+ /* calc and verify H */
+ hashlen = sizeof(hash);
++ {
++ const BIGNUM *p, *g, *pub_key;
++ DH_get0_pqg(kex->dh, &p, NULL, &g);
++ DH_get0_key(kex->dh, &pub_key, NULL);
+ if ((r = kexgex_hash(
+ kex->hash_alg,
+ kex->client_version_string,
+@@ -222,12 +234,14 @@
+ sshbuf_ptr(kex->peer), sshbuf_len(kex->peer),
+ server_host_key_blob, sbloblen,
+ kex->min, kex->nbits, kex->max,
+- kex->dh->p, kex->dh->g,
+- kex->dh->pub_key,
++ p, g,
++ pub_key,
+ dh_server_pub,
+ shared_secret,
+- hash, &hashlen)) != 0)
++ hash, &hashlen)) != 0) {
+ goto out;
++ }
++ }
+
+ if ((r = sshkey_verify(server_host_key, signature, slen, hash,
+ hashlen, ssh->compat)) != 0)
+diff -Naur old/kexgexs.c new/kexgexs.c
+--- old/kexgexs.c 2017-10-03 21:49:05.373829169 -1000
++++ new/kexgexs.c 2017-10-03 21:55:50.869718862 -1000
+@@ -101,11 +101,16 @@
+ goto out;
+ }
+ debug("SSH2_MSG_KEX_DH_GEX_GROUP sent");
++ {
++ const BIGNUM *p, *g;
++ DH_get0_pqg(kex->dh, &p, NULL, &g);
+ if ((r = sshpkt_start(ssh, SSH2_MSG_KEX_DH_GEX_GROUP)) != 0 ||
+- (r = sshpkt_put_bignum2(ssh, kex->dh->p)) != 0 ||
+- (r = sshpkt_put_bignum2(ssh, kex->dh->g)) != 0 ||
+- (r = sshpkt_send(ssh)) != 0)
++ (r = sshpkt_put_bignum2(ssh, p)) != 0 ||
++ (r = sshpkt_put_bignum2(ssh, g)) != 0 ||
++ (r = sshpkt_send(ssh)) != 0) {
+ goto out;
++ }
++ }
+
+ /* Compute our exchange value in parallel with the client */
+ if ((r = dh_gen_key(kex->dh, kex->we_need * 8)) != 0)
+@@ -115,6 +120,10 @@
+ ssh_dispatch_set(ssh, SSH2_MSG_KEX_DH_GEX_INIT, &input_kex_dh_gex_init);
+ r = 0;
+ out:
++ if (r != 0) {
++ DH_free(kex->dh);
++ kex->dh = NULL;
++ }
+ return r;
+ }
+
+@@ -191,6 +200,10 @@
+ goto out;
+ /* calc H */
+ hashlen = sizeof(hash);
++ {
++ const BIGNUM *p, *g, *pub_key;
++ DH_get0_pqg(kex->dh, &p, NULL, &g);
++ DH_get0_key(kex->dh, &pub_key, NULL);
+ if ((r = kexgex_hash(
+ kex->hash_alg,
+ kex->client_version_string,
+@@ -199,12 +212,14 @@
+ sshbuf_ptr(kex->my), sshbuf_len(kex->my),
+ server_host_key_blob, sbloblen,
+ kex->min, kex->nbits, kex->max,
+- kex->dh->p, kex->dh->g,
++ p, g,
+ dh_client_pub,
+- kex->dh->pub_key,
++ pub_key,
+ shared_secret,
+- hash, &hashlen)) != 0)
++ hash, &hashlen)) != 0) {
+ goto out;
++ }
++ }
+
+ /* save session id := H */
+ if (kex->session_id == NULL) {
+@@ -225,12 +240,17 @@
+ /* destroy_sensitive_data(); */
+
+ /* send server hostkey, DH pubkey 'f' and singed H */
++ {
++ const BIGNUM *pub_key;
++ DH_get0_key(kex->dh, &pub_key, NULL);
+ if ((r = sshpkt_start(ssh, SSH2_MSG_KEX_DH_GEX_REPLY)) != 0 ||
+ (r = sshpkt_put_string(ssh, server_host_key_blob, sbloblen)) != 0 ||
+- (r = sshpkt_put_bignum2(ssh, kex->dh->pub_key)) != 0 || /* f */
++ (r = sshpkt_put_bignum2(ssh, pub_key)) != 0 || /* f */
+ (r = sshpkt_put_string(ssh, signature, slen)) != 0 ||
+- (r = sshpkt_send(ssh)) != 0)
++ (r = sshpkt_send(ssh)) != 0) {
+ goto out;
++ }
++ }
+
+ if ((r = kex_derive_keys_bn(ssh, hash, hashlen, shared_secret)) == 0)
+ r = kex_send_newkeys(ssh);
+diff -Naur old/monitor.c new/monitor.c
+--- old/monitor.c 2017-10-03 21:49:05.377162302 -1000
++++ new/monitor.c 2017-10-03 21:55:50.869718862 -1000
+@@ -586,10 +586,12 @@
+ buffer_put_char(m, 0);
+ return (0);
+ } else {
++ const BIGNUM *p, *g;
++ DH_get0_pqg(dh, &p, NULL, &g);
+ /* Send first bignum */
+ buffer_put_char(m, 1);
+- buffer_put_bignum2(m, dh->p);
+- buffer_put_bignum2(m, dh->g);
++ buffer_put_bignum2(m, p);
++ buffer_put_bignum2(m, g);
+
+ DH_free(dh);
+ }
+diff -Naur old/openbsd-compat/openssl-compat.c new/openbsd-compat/openssl-compat.c
+--- old/openbsd-compat/openssl-compat.c 2017-10-03 21:49:05.397161097 -1000
++++ new/openbsd-compat/openssl-compat.c 2017-10-03 21:55:50.886387486 -1000
+@@ -75,7 +75,6 @@
+ /* Enable use of crypto hardware */
+ ENGINE_load_builtin_engines();
+ ENGINE_register_all_complete();
+- OPENSSL_config(NULL);
+ }
+ #endif
+
+diff -Naur old/regress/unittests/sshkey/test_file.c new/regress/unittests/sshkey/test_file.c
+--- old/regress/unittests/sshkey/test_file.c 2017-10-03 21:49:05.387161699 -1000
++++ new/regress/unittests/sshkey/test_file.c 2017-10-03 21:55:50.883053761 -1000
+@@ -60,9 +60,14 @@
+ a = load_bignum("rsa_1.param.n");
+ b = load_bignum("rsa_1.param.p");
+ c = load_bignum("rsa_1.param.q");
+- ASSERT_BIGNUM_EQ(k1->rsa->n, a);
+- ASSERT_BIGNUM_EQ(k1->rsa->p, b);
+- ASSERT_BIGNUM_EQ(k1->rsa->q, c);
++ {
++ const BIGNUM *n, *p, *q;
++ RSA_get0_key(k1->rsa, &n, NULL, NULL);
++ RSA_get0_factors(k1->rsa, &p, &q);
++ ASSERT_BIGNUM_EQ(n, a);
++ ASSERT_BIGNUM_EQ(p, b);
++ ASSERT_BIGNUM_EQ(q, c);
++ }
+ BN_free(a);
+ BN_free(b);
+ BN_free(c);
+@@ -151,9 +156,14 @@
+ a = load_bignum("dsa_1.param.g");
+ b = load_bignum("dsa_1.param.priv");
+ c = load_bignum("dsa_1.param.pub");
+- ASSERT_BIGNUM_EQ(k1->dsa->g, a);
+- ASSERT_BIGNUM_EQ(k1->dsa->priv_key, b);
+- ASSERT_BIGNUM_EQ(k1->dsa->pub_key, c);
++ {
++ const BIGNUM *g, *priv_key, *pub_key;
++ DSA_get0_pqg(k1->dsa, NULL, NULL, &g);
++ DSA_get0_key(k1->dsa, &pub_key, &priv_key);
++ ASSERT_BIGNUM_EQ(g, a);
++ ASSERT_BIGNUM_EQ(priv_key, b);
++ ASSERT_BIGNUM_EQ(pub_key, c);
++ }
+ BN_free(a);
+ BN_free(b);
+ BN_free(c);
+diff -Naur old/regress/unittests/sshkey/test_sshkey.c new/regress/unittests/sshkey/test_sshkey.c
+--- old/regress/unittests/sshkey/test_sshkey.c 2017-10-03 21:49:05.387161699 -1000
++++ new/regress/unittests/sshkey/test_sshkey.c 2017-10-03 21:55:50.883053761 -1000
+@@ -197,9 +197,14 @@
+ k1 = sshkey_new(KEY_RSA);
+ ASSERT_PTR_NE(k1, NULL);
+ ASSERT_PTR_NE(k1->rsa, NULL);
+- ASSERT_PTR_NE(k1->rsa->n, NULL);
+- ASSERT_PTR_NE(k1->rsa->e, NULL);
+- ASSERT_PTR_EQ(k1->rsa->p, NULL);
++ {
++ const BIGNUM *n, *e, *p;
++ RSA_get0_key(k1->rsa, &n, &e, NULL);
++ RSA_get0_factors(k1->rsa, &p, NULL);
++ ASSERT_PTR_NE(n, NULL);
++ ASSERT_PTR_NE(e, NULL);
++ ASSERT_PTR_EQ(p, NULL);
++ }
+ sshkey_free(k1);
+ TEST_DONE();
+
+@@ -207,8 +212,13 @@
+ k1 = sshkey_new(KEY_DSA);
+ ASSERT_PTR_NE(k1, NULL);
+ ASSERT_PTR_NE(k1->dsa, NULL);
+- ASSERT_PTR_NE(k1->dsa->g, NULL);
+- ASSERT_PTR_EQ(k1->dsa->priv_key, NULL);
++ {
++ const BIGNUM *g, *priv_key;
++ DSA_get0_pqg(k1->dsa, NULL, NULL, &g);
++ DSA_get0_key(k1->dsa, NULL, &priv_key);
++ ASSERT_PTR_NE(g, NULL);
++ ASSERT_PTR_EQ(priv_key, NULL);
++ }
+ sshkey_free(k1);
+ TEST_DONE();
+
+@@ -234,9 +244,14 @@
+ k1 = sshkey_new_private(KEY_RSA);
+ ASSERT_PTR_NE(k1, NULL);
+ ASSERT_PTR_NE(k1->rsa, NULL);
+- ASSERT_PTR_NE(k1->rsa->n, NULL);
+- ASSERT_PTR_NE(k1->rsa->e, NULL);
+- ASSERT_PTR_NE(k1->rsa->p, NULL);
++ {
++ const BIGNUM *n, *e, *p;
++ RSA_get0_key(k1->rsa, &n, &e, NULL);
++ RSA_get0_factors(k1->rsa, &p, NULL);
++ ASSERT_PTR_NE(n, NULL);
++ ASSERT_PTR_NE(e, NULL);
++ ASSERT_PTR_NE(p, NULL);
++ }
+ ASSERT_INT_EQ(sshkey_add_private(k1), 0);
+ sshkey_free(k1);
+ TEST_DONE();
+@@ -245,8 +260,13 @@
+ k1 = sshkey_new_private(KEY_DSA);
+ ASSERT_PTR_NE(k1, NULL);
+ ASSERT_PTR_NE(k1->dsa, NULL);
+- ASSERT_PTR_NE(k1->dsa->g, NULL);
+- ASSERT_PTR_NE(k1->dsa->priv_key, NULL);
++ {
++ const BIGNUM *g, *priv_key;
++ DSA_get0_pqg(k1->dsa, NULL, NULL, &g);
++ DSA_get0_key(k1->dsa, NULL, &priv_key);
++ ASSERT_PTR_NE(g, NULL);
++ ASSERT_PTR_NE(priv_key, NULL);
++ }
+ ASSERT_INT_EQ(sshkey_add_private(k1), 0);
+ sshkey_free(k1);
+ TEST_DONE();
+@@ -285,18 +305,28 @@
+ ASSERT_INT_EQ(sshkey_generate(KEY_RSA, 1024, &kr), 0);
+ ASSERT_PTR_NE(kr, NULL);
+ ASSERT_PTR_NE(kr->rsa, NULL);
+- ASSERT_PTR_NE(kr->rsa->n, NULL);
+- ASSERT_PTR_NE(kr->rsa->e, NULL);
+- ASSERT_PTR_NE(kr->rsa->p, NULL);
+- ASSERT_INT_EQ(BN_num_bits(kr->rsa->n), 1024);
++ {
++ const BIGNUM *n, *e, *p;
++ RSA_get0_key(kr->rsa, &n, &e, NULL);
++ RSA_get0_factors(kr->rsa, &p, NULL);
++ ASSERT_PTR_NE(n, NULL);
++ ASSERT_PTR_NE(e, NULL);
++ ASSERT_PTR_NE(p, NULL);
++ ASSERT_INT_EQ(BN_num_bits(n), 1024);
++ }
+ TEST_DONE();
+
+ TEST_START("generate KEY_DSA");
+ ASSERT_INT_EQ(sshkey_generate(KEY_DSA, 1024, &kd), 0);
+ ASSERT_PTR_NE(kd, NULL);
+ ASSERT_PTR_NE(kd->dsa, NULL);
+- ASSERT_PTR_NE(kd->dsa->g, NULL);
+- ASSERT_PTR_NE(kd->dsa->priv_key, NULL);
++ {
++ const BIGNUM *g, *priv_key;
++ DSA_get0_pqg(kd->dsa, NULL, NULL, &g);
++ DSA_get0_key(kd->dsa, NULL, &priv_key);
++ ASSERT_PTR_NE(g, NULL);
++ ASSERT_PTR_NE(priv_key, NULL);
++ }
+ TEST_DONE();
+
+ #ifdef OPENSSL_HAS_ECC
+@@ -323,9 +353,14 @@
+ ASSERT_PTR_NE(kr, k1);
+ ASSERT_INT_EQ(k1->type, KEY_RSA);
+ ASSERT_PTR_NE(k1->rsa, NULL);
+- ASSERT_PTR_NE(k1->rsa->n, NULL);
+- ASSERT_PTR_NE(k1->rsa->e, NULL);
+- ASSERT_PTR_EQ(k1->rsa->p, NULL);
++ {
++ const BIGNUM *n, *e, *p;
++ RSA_get0_key(k1->rsa, &n, &e, NULL);
++ RSA_get0_factors(k1->rsa, &p, NULL);
++ ASSERT_PTR_NE(n, NULL);
++ ASSERT_PTR_NE(e, NULL);
++ ASSERT_PTR_EQ(p, NULL);
++ }
+ TEST_DONE();
+
+ TEST_START("equal KEY_RSA/demoted KEY_RSA");
+@@ -339,8 +374,13 @@
+ ASSERT_PTR_NE(kd, k1);
+ ASSERT_INT_EQ(k1->type, KEY_DSA);
+ ASSERT_PTR_NE(k1->dsa, NULL);
+- ASSERT_PTR_NE(k1->dsa->g, NULL);
+- ASSERT_PTR_EQ(k1->dsa->priv_key, NULL);
++ {
++ const BIGNUM *g, *priv_key;
++ DSA_get0_pqg(k1->dsa, NULL, NULL, &g);
++ DSA_get0_key(k1->dsa, NULL, &priv_key);
++ ASSERT_PTR_NE(g, NULL);
++ ASSERT_PTR_EQ(priv_key, NULL);
++ }
+ TEST_DONE();
+
+ TEST_START("equal KEY_DSA/demoted KEY_DSA");
+diff -Naur old/ssh-dss.c new/ssh-dss.c
+--- old/ssh-dss.c 2017-10-03 21:49:05.403827361 -1000
++++ new/ssh-dss.c 2017-10-03 21:55:50.869718862 -1000
+@@ -53,6 +53,7 @@
+ DSA_SIG *sig = NULL;
+ u_char digest[SSH_DIGEST_MAX_LENGTH], sigblob[SIGBLOB_LEN];
+ size_t rlen, slen, len, dlen = ssh_digest_bytes(SSH_DIGEST_SHA1);
++ const BIGNUM *r, *s;
+ struct sshbuf *b = NULL;
+ int ret = SSH_ERR_INVALID_ARGUMENT;
+
+@@ -76,15 +77,16 @@
+ goto out;
+ }
+
+- rlen = BN_num_bytes(sig->r);
+- slen = BN_num_bytes(sig->s);
++ DSA_SIG_get0(sig, &r, &s);
++ rlen = BN_num_bytes(r);
++ slen = BN_num_bytes(s);
+ if (rlen > INTBLOB_LEN || slen > INTBLOB_LEN) {
+ ret = SSH_ERR_INTERNAL_ERROR;
+ goto out;
+ }
+ explicit_bzero(sigblob, SIGBLOB_LEN);
+- BN_bn2bin(sig->r, sigblob + SIGBLOB_LEN - INTBLOB_LEN - rlen);
+- BN_bn2bin(sig->s, sigblob + SIGBLOB_LEN - slen);
++ BN_bn2bin(r, sigblob + SIGBLOB_LEN - INTBLOB_LEN - rlen);
++ BN_bn2bin(s, sigblob + SIGBLOB_LEN - slen);
+
+ if (compat & SSH_BUG_SIGBLOB) {
+ if (sigp != NULL) {
+@@ -176,17 +178,26 @@
+ }
+
+ /* parse signature */
++ {
++ BIGNUM *r=NULL, *s=NULL;
+ if ((sig = DSA_SIG_new()) == NULL ||
+- (sig->r = BN_new()) == NULL ||
+- (sig->s = BN_new()) == NULL) {
++ (r = BN_new()) == NULL ||
++ (s = BN_new()) == NULL) {
+ ret = SSH_ERR_ALLOC_FAIL;
++ BN_free(r);
++ BN_free(s);
+ goto out;
+ }
+- if ((BN_bin2bn(sigblob, INTBLOB_LEN, sig->r) == NULL) ||
+- (BN_bin2bn(sigblob+ INTBLOB_LEN, INTBLOB_LEN, sig->s) == NULL)) {
++ if ((BN_bin2bn(sigblob, INTBLOB_LEN, r) == NULL) ||
++ (BN_bin2bn(sigblob+ INTBLOB_LEN, INTBLOB_LEN, s) == NULL)) {
+ ret = SSH_ERR_LIBCRYPTO_ERROR;
++ BN_free(r);
++ BN_free(s);
+ goto out;
+ }
++ DSA_SIG_set0(sig, r, s);
++ r = s = NULL;
++ }
+
+ /* sha1 the data */
+ if ((ret = ssh_digest_memory(SSH_DIGEST_SHA1, data, datalen,
+diff -Naur old/ssh-ecdsa.c new/ssh-ecdsa.c
+--- old/ssh-ecdsa.c 2017-10-03 21:49:05.403827361 -1000
++++ new/ssh-ecdsa.c 2017-10-03 21:55:50.869718862 -1000
+@@ -80,9 +80,14 @@
+ ret = SSH_ERR_ALLOC_FAIL;
+ goto out;
+ }
+- if ((ret = sshbuf_put_bignum2(bb, sig->r)) != 0 ||
+- (ret = sshbuf_put_bignum2(bb, sig->s)) != 0)
++ {
++ const BIGNUM *r, *s;
++ ECDSA_SIG_get0(sig, &r, &s);
++ if ((ret = sshbuf_put_bignum2(bb, r)) != 0 ||
++ (ret = sshbuf_put_bignum2(bb, s)) != 0) {
+ goto out;
++ }
++ }
+ if ((ret = sshbuf_put_cstring(b, sshkey_ssh_name_plain(key))) != 0 ||
+ (ret = sshbuf_put_stringb(b, bb)) != 0)
+ goto out;
+@@ -151,11 +156,27 @@
+ ret = SSH_ERR_ALLOC_FAIL;
+ goto out;
+ }
+- if (sshbuf_get_bignum2(sigbuf, sig->r) != 0 ||
+- sshbuf_get_bignum2(sigbuf, sig->s) != 0) {
++ {
++ BIGNUM *r=NULL, *s=NULL;
++ if ((r = BN_new()) == NULL ||
++ (s = BN_new()) == NULL) {
++ ret = SSH_ERR_ALLOC_FAIL;
++ goto out_rs;
++ }
++ if (sshbuf_get_bignum2(sigbuf, r) != 0 ||
++ sshbuf_get_bignum2(sigbuf, s) != 0) {
+ ret = SSH_ERR_INVALID_FORMAT;
++ goto out_rs;
++ }
++ if (ECDSA_SIG_set0(sig, r, s) == 0) {
++ ret = SSH_ERR_LIBCRYPTO_ERROR;
++out_rs:
++ BN_free(r);
++ BN_free(s);
+ goto out;
+ }
++ r = s = NULL;
++ }
+ if (sshbuf_len(sigbuf) != 0) {
+ ret = SSH_ERR_UNEXPECTED_TRAILING_DATA;
+ goto out;
+diff -Naur old/ssh-keygen.c new/ssh-keygen.c
+--- old/ssh-keygen.c 2017-10-03 21:49:05.403827361 -1000
++++ new/ssh-keygen.c 2017-10-03 21:55:50.869718862 -1000
+@@ -496,11 +496,33 @@
+
+ switch (key->type) {
+ case KEY_DSA:
+- buffer_get_bignum_bits(b, key->dsa->p);
+- buffer_get_bignum_bits(b, key->dsa->g);
+- buffer_get_bignum_bits(b, key->dsa->q);
+- buffer_get_bignum_bits(b, key->dsa->pub_key);
+- buffer_get_bignum_bits(b, key->dsa->priv_key);
++ {
++ BIGNUM *p=NULL, *g=NULL, *q=NULL, *pub_key=NULL, *priv_key=NULL;
++ if ((p=BN_new()) == NULL ||
++ (g=BN_new()) == NULL ||
++ (q=BN_new()) == NULL ||
++ (pub_key=BN_new()) == NULL ||
++ (priv_key=BN_new()) == NULL) {
++ BN_free(p);
++ BN_free(g);
++ BN_free(q);
++ BN_free(pub_key);
++ BN_free(priv_key);
++ return NULL;
++ }
++ buffer_get_bignum_bits(b, p);
++ buffer_get_bignum_bits(b, g);
++ buffer_get_bignum_bits(b, q);
++ buffer_get_bignum_bits(b, pub_key);
++ buffer_get_bignum_bits(b, priv_key);
++ if (DSA_set0_pqg(key->dsa, p, q, g) == 0 ||
++ DSA_set0_key(key->dsa, pub_key, priv_key) == 0) {
++ fatal("failed to set DSA key");
++ BN_free(p); BN_free(g); BN_free(q);
++ BN_free(pub_key); BN_free(priv_key);
++ return NULL;
++ }
++ }
+ break;
+ case KEY_RSA:
+ if ((r = sshbuf_get_u8(b, &e1)) != 0 ||
+@@ -517,16 +539,52 @@
+ e += e3;
+ debug("e %lx", e);
+ }
+- if (!BN_set_word(key->rsa->e, e)) {
++ {
++ BIGNUM *rsa_e = NULL;
++ BIGNUM *d=NULL, *n=NULL, *iqmp=NULL, *q=NULL, *p=NULL;
++ BIGNUM *dmp1=NULL, *dmq1=NULL; /* dummy input to set in RSA_set0_crt_params */
++ rsa_e = BN_new();
++ if (!rsa_e || !BN_set_word(rsa_e, e)) {
++ if (rsa_e) BN_free(rsa_e);
+ sshbuf_free(b);
+ sshkey_free(key);
+ return NULL;
+ }
+- buffer_get_bignum_bits(b, key->rsa->d);
+- buffer_get_bignum_bits(b, key->rsa->n);
+- buffer_get_bignum_bits(b, key->rsa->iqmp);
+- buffer_get_bignum_bits(b, key->rsa->q);
+- buffer_get_bignum_bits(b, key->rsa->p);
++ if ((d=BN_new()) == NULL ||
++ (n=BN_new()) == NULL ||
++ (iqmp=BN_new()) == NULL ||
++ (q=BN_new()) == NULL ||
++ (p=BN_new()) == NULL ||
++ (dmp1=BN_new()) == NULL ||
++ (dmq1=BN_new()) == NULL) {
++ BN_free(d); BN_free(n); BN_free(iqmp);
++ BN_free(q); BN_free(p);
++ BN_free(dmp1); BN_free(dmq1);
++ return NULL;
++ }
++ BN_clear(dmp1); BN_clear(dmq1);
++ buffer_get_bignum_bits(b, d);
++ buffer_get_bignum_bits(b, n);
++ buffer_get_bignum_bits(b, iqmp);
++ buffer_get_bignum_bits(b, q);
++ buffer_get_bignum_bits(b, p);
++ if (RSA_set0_key(key->rsa, n, rsa_e, d) == 0)
++ goto null;
++ n = d = NULL;
++ if (RSA_set0_factors(key->rsa, p, q) == 0)
++ goto null;
++ p = q = NULL;
++ /* dmp1, dmq1 should not be NULL for initial set0 */
++ if (RSA_set0_crt_params(key->rsa, dmp1, dmq1, iqmp) == 0) {
++ null:
++ fatal("Failed to set RSA parameters");
++ BN_free(d); BN_free(n); BN_free(iqmp);
++ BN_free(q); BN_free(p);
++ BN_free(dmp1); BN_free(dmq1);
++ return NULL;
++ }
++ dmp1 = dmq1 = iqmp = NULL;
++ }
+ if ((r = ssh_rsa_generate_additional_parameters(key)) != 0)
+ fatal("generate RSA parameters failed: %s", ssh_err(r));
+ break;
+@@ -636,7 +694,7 @@
+ identity_file);
+ }
+ fclose(fp);
+- switch (EVP_PKEY_type(pubkey->type)) {
++ switch (EVP_PKEY_type(EVP_PKEY_id(pubkey))) {
+ case EVP_PKEY_RSA:
+ if ((*k = sshkey_new(KEY_UNSPEC)) == NULL)
+ fatal("sshkey_new failed");
+@@ -660,7 +718,7 @@
+ #endif
+ default:
+ fatal("%s: unsupported pubkey type %d", __func__,
+- EVP_PKEY_type(pubkey->type));
++ EVP_PKEY_type(EVP_PKEY_id(pubkey)));
+ }
+ EVP_PKEY_free(pubkey);
+ return;
+diff -Naur old/ssh-pkcs11-client.c new/ssh-pkcs11-client.c
+--- old/ssh-pkcs11-client.c 2017-10-03 21:49:05.403827361 -1000
++++ new/ssh-pkcs11-client.c 2017-10-03 21:55:50.869718862 -1000
+@@ -143,12 +143,13 @@
+ static int
+ wrap_key(RSA *rsa)
+ {
+- static RSA_METHOD helper_rsa;
++ static RSA_METHOD *helper_rsa;
+
+- memcpy(&helper_rsa, RSA_get_default_method(), sizeof(helper_rsa));
+- helper_rsa.name = "ssh-pkcs11-helper";
+- helper_rsa.rsa_priv_enc = pkcs11_rsa_private_encrypt;
+- RSA_set_method(rsa, &helper_rsa);
++ if ((helper_rsa = RSA_meth_dup(RSA_get_default_method())) == NULL)
++ return (-1); /* XXX but caller isn't checking */
++ RSA_meth_set1_name(helper_rsa, "ssh-pkcs11-helper");
++ RSA_meth_set_priv_enc(helper_rsa, pkcs11_rsa_private_encrypt);
++ RSA_set_method(rsa, helper_rsa);
+ return (0);
+ }
+
+diff -Naur old/ssh-pkcs11.c new/ssh-pkcs11.c
+--- old/ssh-pkcs11.c 2017-10-03 21:49:05.403827361 -1000
++++ new/ssh-pkcs11.c 2017-10-03 21:55:50.869718862 -1000
+@@ -67,7 +67,7 @@
+ struct pkcs11_provider *provider;
+ CK_ULONG slotidx;
+ int (*orig_finish)(RSA *rsa);
+- RSA_METHOD rsa_method;
++ RSA_METHOD *rsa_method;
+ char *keyid;
+ int keyid_len;
+ };
+@@ -326,13 +326,15 @@
+ k11->keyid = xmalloc(k11->keyid_len);
+ memcpy(k11->keyid, keyid_attrib->pValue, k11->keyid_len);
+ }
+- k11->orig_finish = def->finish;
+- memcpy(&k11->rsa_method, def, sizeof(k11->rsa_method));
+- k11->rsa_method.name = "pkcs11";
+- k11->rsa_method.rsa_priv_enc = pkcs11_rsa_private_encrypt;
+- k11->rsa_method.rsa_priv_dec = pkcs11_rsa_private_decrypt;
+- k11->rsa_method.finish = pkcs11_rsa_finish;
+- RSA_set_method(rsa, &k11->rsa_method);
++ k11->orig_finish = RSA_meth_get_finish(def);
++
++ if ((k11->rsa_method = RSA_meth_new("pkcs11", RSA_meth_get_flags(def))) == NULL)
++ return -1;
++ RSA_meth_set_priv_enc(k11->rsa_method, pkcs11_rsa_private_encrypt);
++ RSA_meth_set_priv_dec(k11->rsa_method, pkcs11_rsa_private_decrypt);
++ RSA_meth_set_finish(k11->rsa_method, pkcs11_rsa_finish);
++
++ RSA_set_method(rsa, k11->rsa_method);
+ RSA_set_app_data(rsa, k11);
+ return (0);
+ }
+@@ -512,10 +514,19 @@
+ if ((rsa = RSA_new()) == NULL) {
+ error("RSA_new failed");
+ } else {
+- rsa->n = BN_bin2bn(attribs[1].pValue,
+- attribs[1].ulValueLen, NULL);
+- rsa->e = BN_bin2bn(attribs[2].pValue,
+- attribs[2].ulValueLen, NULL);
++ BIGNUM *n=NULL, *e=NULL;
++ n = BN_new();
++ e = BN_new();
++ if (n == NULL || e == NULL)
++ error("BN_new alloc failed");
++ if (BN_bin2bn(attribs[1].pValue,
++ attribs[1].ulValueLen, n) == NULL ||
++ BN_bin2bn(attribs[2].pValue,
++ attribs[2].ulValueLen, e) == NULL)
++ error("BN_bin2bn failed");
++ if (RSA_set0_key(rsa, n, e, NULL) == 0)
++ error("RSA_set0_key failed");
++ n = e = NULL;
+ }
+ } else {
+ cp = attribs[2].pValue;
+@@ -525,17 +536,20 @@
+ == NULL) {
+ error("d2i_X509 failed");
+ } else if ((evp = X509_get_pubkey(x509)) == NULL ||
+- evp->type != EVP_PKEY_RSA ||
+- evp->pkey.rsa == NULL) {
++ EVP_PKEY_id(evp) != EVP_PKEY_RSA ||
++ EVP_PKEY_get0_RSA(evp) == NULL) {
+ debug("X509_get_pubkey failed or no rsa");
+- } else if ((rsa = RSAPublicKey_dup(evp->pkey.rsa))
++ } else if ((rsa = RSAPublicKey_dup(EVP_PKEY_get0_RSA(evp)))
+ == NULL) {
+ error("RSAPublicKey_dup");
+ }
+ if (x509)
+ X509_free(x509);
+ }
+- if (rsa && rsa->n && rsa->e &&
++ {
++ const BIGNUM *n, *e;
++ RSA_get0_key(rsa, &n, &e, NULL);
++ if (rsa && n && e &&
+ pkcs11_rsa_wrap(p, slotidx, &attribs[0], rsa) == 0) {
+ if ((key = sshkey_new(KEY_UNSPEC)) == NULL)
+ fatal("sshkey_new failed");
+@@ -555,6 +569,7 @@
+ } else if (rsa) {
+ RSA_free(rsa);
+ }
++ }
+ for (i = 0; i < 3; i++)
+ free(attribs[i].pValue);
+ }
+diff -Naur old/ssh-rsa.c new/ssh-rsa.c
+--- old/ssh-rsa.c 2017-10-03 21:49:05.403827361 -1000
++++ new/ssh-rsa.c 2017-10-03 22:06:32.005937158 -1000
+@@ -99,13 +99,27 @@
+ }
+ rsa = key->rsa;
+
+- if ((BN_sub(aux, rsa->q, BN_value_one()) == 0) ||
+- (BN_mod(rsa->dmq1, rsa->d, aux, ctx) == 0) ||
+- (BN_sub(aux, rsa->p, BN_value_one()) == 0) ||
+- (BN_mod(rsa->dmp1, rsa->d, aux, ctx) == 0)) {
++ {
++ const BIGNUM *q, *d, *p;
++ BIGNUM *dmq1=NULL, *dmp1=NULL;
++ if ((dmq1 = BN_new()) == NULL ||
++ (dmp1 = BN_new()) == NULL ) {
++ r = SSH_ERR_ALLOC_FAIL;
++ goto out;
++ }
++ RSA_get0_key(rsa, NULL, NULL, &d);
++ RSA_get0_factors(rsa, &p, &q);
++ if ((BN_sub(aux, q, BN_value_one()) == 0) ||
++ (BN_mod(dmq1, d, aux, ctx) == 0) ||
++ (BN_sub(aux, p, BN_value_one()) == 0) ||
++ (BN_mod(dmp1, d, aux, ctx) == 0) ||
++ RSA_set0_crt_params(rsa, dmp1, dmq1, NULL) == 0) {
+ r = SSH_ERR_LIBCRYPTO_ERROR;
++ BN_clear_free(dmp1);
++ BN_clear_free(dmq1);
+ goto out;
+ }
++ }
+ r = 0;
+ out:
+ BN_clear_free(aux);
+@@ -136,7 +150,7 @@
+ if (key == NULL || key->rsa == NULL || hash_alg == -1 ||
+ sshkey_type_plain(key->type) != KEY_RSA)
+ return SSH_ERR_INVALID_ARGUMENT;
+- if (BN_num_bits(key->rsa->n) < SSH_RSA_MINIMUM_MODULUS_SIZE)
++ if (RSA_bits(key->rsa) < SSH_RSA_MINIMUM_MODULUS_SIZE)
+ return SSH_ERR_KEY_LENGTH;
+ slen = RSA_size(key->rsa);
+ if (slen <= 0 || slen > SSHBUF_MAX_BIGNUM)
+@@ -210,7 +224,7 @@
+ sshkey_type_plain(key->type) != KEY_RSA ||
+ sig == NULL || siglen == 0)
+ return SSH_ERR_INVALID_ARGUMENT;
+- if (BN_num_bits(key->rsa->n) < SSH_RSA_MINIMUM_MODULUS_SIZE)
++ if (RSA_bits(key->rsa) < SSH_RSA_MINIMUM_MODULUS_SIZE)
+ return SSH_ERR_KEY_LENGTH;
+
+ if ((b = sshbuf_from(sig, siglen)) == NULL)
+diff -Naur old/sshkey.c new/sshkey.c
+--- old/sshkey.c 2017-10-03 21:49:05.407160494 -1000
++++ new/sshkey.c 2017-10-03 22:16:31.124964276 -1000
+@@ -264,10 +264,18 @@
+ #ifdef WITH_OPENSSL
+ case KEY_RSA:
+ case KEY_RSA_CERT:
+- return BN_num_bits(k->rsa->n);
++#if OPENSSL_VERSION_NUMBER >= 0x10100000UL
++ return RSA_bits(k->rsa);
++#else
++ return RSA_bits(key->rsa);
++#endif
+ case KEY_DSA:
+ case KEY_DSA_CERT:
++#if OPENSSL_VERSION_NUMBER >= 0x10100000UL
++ return DSA_bits(k->dsa);
++#else
+ return BN_num_bits(k->dsa->p);
++#endif
+ case KEY_ECDSA:
+ case KEY_ECDSA_CERT:
+ return sshkey_curve_nid_to_bits(k->ecdsa_nid);
+@@ -466,28 +474,55 @@
+ #ifdef WITH_OPENSSL
+ case KEY_RSA:
+ case KEY_RSA_CERT:
++ {
++ BIGNUM *n=NULL, *e=NULL; /* just allocate */
+ if ((rsa = RSA_new()) == NULL ||
+- (rsa->n = BN_new()) == NULL ||
+- (rsa->e = BN_new()) == NULL) {
++ (n = BN_new()) == NULL ||
++ (e = BN_new()) == NULL) {
++ BN_free(n);
++ BN_free(e);
+ if (rsa != NULL)
+ RSA_free(rsa);
+ free(k);
+ return NULL;
+ }
++ BN_clear(n); BN_clear(e);
++ if (RSA_set0_key(rsa, n, e, NULL) == 0)
++ return NULL;
++ n = e = NULL;
++ }
+ k->rsa = rsa;
+ break;
+ case KEY_DSA:
+ case KEY_DSA_CERT:
++ {
++ BIGNUM *p=NULL, *q=NULL, *g=NULL, *pubkey=NULL; /* just allocate */
+ if ((dsa = DSA_new()) == NULL ||
+- (dsa->p = BN_new()) == NULL ||
+- (dsa->q = BN_new()) == NULL ||
+- (dsa->g = BN_new()) == NULL ||
+- (dsa->pub_key = BN_new()) == NULL) {
++ (p = BN_new()) == NULL ||
++ (q = BN_new()) == NULL ||
++ (g = BN_new()) == NULL ||
++ (pubkey = BN_new()) == NULL) {
++ BN_free(p);
++ BN_free(q);
++ BN_free(g);
++ BN_free(pubkey);
+ if (dsa != NULL)
+ DSA_free(dsa);
+ free(k);
+ return NULL;
+ }
++ if (DSA_set0_pqg(dsa, p, q, g) == 0) {
++ BN_free(p); BN_free(q); BN_free(g);
++ BN_free(pubkey);
++ return NULL;
++ }
++ p = q = g = NULL;
++ if (DSA_set0_key(dsa, pubkey, NULL) == 0) {
++ BN_free(pubkey);
++ return NULL;
++ }
++ pubkey = NULL;
++ }
+ k->dsa = dsa;
+ break;
+ case KEY_ECDSA:
+@@ -523,6 +558,51 @@
+ #ifdef WITH_OPENSSL
+ case KEY_RSA:
+ case KEY_RSA_CERT:
++#if OPENSSL_VERSION_NUMBER >= 0x10100000UL
++ /* Allocate BIGNUM. This is a mess.
++ For OpenSSL 1.1.x API these shouldn't be mandatory,
++ but some regression tests for non-NULL pointer of
++ the data. */
++#define new_or_dup(bn, nbn) \
++ if (bn == NULL) { \
++ if ((nbn = BN_new()) == NULL) \
++ return SSH_ERR_ALLOC_FAIL; \
++ } else { \
++ /* otherwise use-after-free will occur */ \
++ if ((nbn = BN_dup(bn)) == NULL) \
++ return SSH_ERR_ALLOC_FAIL; \
++ }
++ {
++ const BIGNUM *d, *iqmp, *q, *p, *dmq1, *dmp1; /* allocate if NULL */
++ BIGNUM *nd, *niqmp, *nq, *np, *ndmq1, *ndmp1;
++
++ RSA_get0_key(k->rsa, NULL, NULL, &d);
++ RSA_get0_factors(k->rsa, &p, &q);
++ RSA_get0_crt_params(k->rsa, &dmp1, &dmq1, &iqmp);
++
++ new_or_dup(d, nd);
++ new_or_dup(iqmp, niqmp);
++ new_or_dup(q, nq);
++ new_or_dup(p, np);
++ new_or_dup(dmq1, ndmq1);
++ new_or_dup(dmp1, ndmp1);
++
++ if (RSA_set0_key(k->rsa, NULL, NULL, nd) == 0)
++ goto error1;
++ nd = NULL;
++ if (RSA_set0_factors(k->rsa, np, nq) == 0)
++ goto error1;
++ np = nq = NULL;
++ if (RSA_set0_crt_params(k->rsa, ndmp1, ndmq1, niqmp) == 0) {
++error1:
++ BN_free(nd);
++ BN_free(np); BN_free(nq);
++ BN_free(ndmp1); BN_free(ndmq1); BN_free(niqmp);
++ return SSH_ERR_LIBCRYPTO_ERROR;
++ }
++ ndmp1 = ndmq1 = niqmp = NULL;
++ }
++#else
+ #define bn_maybe_alloc_failed(p) (p == NULL && (p = BN_new()) == NULL)
+ if (bn_maybe_alloc_failed(k->rsa->d) ||
+ bn_maybe_alloc_failed(k->rsa->iqmp) ||
+@@ -531,13 +611,28 @@
+ bn_maybe_alloc_failed(k->rsa->dmq1) ||
+ bn_maybe_alloc_failed(k->rsa->dmp1))
+ return SSH_ERR_ALLOC_FAIL;
++#endif
+ break;
+ case KEY_DSA:
+ case KEY_DSA_CERT:
++#if OPENSSL_VERSION_NUMBER >= 0x10100000UL
++ {
++ const BIGNUM *priv_key;
++ BIGNUM *npriv_key;
++ DSA_get0_key(k->dsa, NULL, &priv_key);
++ new_or_dup(priv_key, npriv_key);
++ if (DSA_set0_key(k->dsa, NULL, npriv_key) == 0) {
++ BN_free(npriv_key);
++ return SSH_ERR_LIBCRYPTO_ERROR;
++ }
++ }
++#else
+ if (bn_maybe_alloc_failed(k->dsa->priv_key))
+ return SSH_ERR_ALLOC_FAIL;
++#endif
+ break;
+ #undef bn_maybe_alloc_failed
++#undef new_or_dup
+ case KEY_ECDSA:
+ case KEY_ECDSA_CERT:
+ /* Cannot do anything until we know the group */
+@@ -655,16 +750,34 @@
+ #ifdef WITH_OPENSSL
+ case KEY_RSA_CERT:
+ case KEY_RSA:
+- return a->rsa != NULL && b->rsa != NULL &&
+- BN_cmp(a->rsa->e, b->rsa->e) == 0 &&
+- BN_cmp(a->rsa->n, b->rsa->n) == 0;
++ {
++ const BIGNUM *a_e, *b_e, *a_n, *b_n;
++ const BIGNUM *a_d, *b_d;
++ if (a->rsa == NULL) return 0;
++ if (b->rsa == NULL) return 0;
++ RSA_get0_key(a->rsa, &a_n, &a_e, &a_d);
++ RSA_get0_key(b->rsa, &b_n, &b_e, &b_d);
++ return
++ BN_cmp(a_e, b_e) == 0 &&
++ BN_cmp(a_n, b_n) == 0;
++ }
+ case KEY_DSA_CERT:
+ case KEY_DSA:
+- return a->dsa != NULL && b->dsa != NULL &&
+- BN_cmp(a->dsa->p, b->dsa->p) == 0 &&
+- BN_cmp(a->dsa->q, b->dsa->q) == 0 &&
+- BN_cmp(a->dsa->g, b->dsa->g) == 0 &&
+- BN_cmp(a->dsa->pub_key, b->dsa->pub_key) == 0;
++ {
++ const BIGNUM *a_p, *a_q, *a_g, *a_pub_key;
++ const BIGNUM *b_p, *b_q, *b_g, *b_pub_key;
++ if (a->dsa == NULL) return 0;
++ if (b->dsa == NULL) return 0;
++ DSA_get0_pqg(a->dsa, &a_p, &a_q, &a_g);
++ DSA_get0_pqg(b->dsa, &b_p, &b_q, &b_g);
++ DSA_get0_key(a->dsa, &a_pub_key, NULL);
++ DSA_get0_key(b->dsa, &b_pub_key, NULL);
++ return
++ BN_cmp(a_p, b_p) == 0 &&
++ BN_cmp(a_q, b_q) == 0 &&
++ BN_cmp(a_g, b_g) == 0 &&
++ BN_cmp(a_pub_key, b_pub_key) == 0;
++ }
+ # ifdef OPENSSL_HAS_ECC
+ case KEY_ECDSA_CERT:
+ case KEY_ECDSA:
+@@ -742,12 +855,17 @@
+ case KEY_DSA:
+ if (key->dsa == NULL)
+ return SSH_ERR_INVALID_ARGUMENT;
++ {
++ const BIGNUM *p, *q, *g, *pub_key;
++ DSA_get0_pqg(key->dsa, &p, &q, &g);
++ DSA_get0_key(key->dsa, &pub_key, NULL);
+ if ((ret = sshbuf_put_cstring(b, typename)) != 0 ||
+- (ret = sshbuf_put_bignum2(b, key->dsa->p)) != 0 ||
+- (ret = sshbuf_put_bignum2(b, key->dsa->q)) != 0 ||
+- (ret = sshbuf_put_bignum2(b, key->dsa->g)) != 0 ||
+- (ret = sshbuf_put_bignum2(b, key->dsa->pub_key)) != 0)
++ (ret = sshbuf_put_bignum2(b, p)) != 0 ||
++ (ret = sshbuf_put_bignum2(b, q)) != 0 ||
++ (ret = sshbuf_put_bignum2(b, g)) != 0 ||
++ (ret = sshbuf_put_bignum2(b, pub_key)) != 0)
+ return ret;
++ }
+ break;
+ # ifdef OPENSSL_HAS_ECC
+ case KEY_ECDSA:
+@@ -763,10 +881,14 @@
+ case KEY_RSA:
+ if (key->rsa == NULL)
+ return SSH_ERR_INVALID_ARGUMENT;
++ {
++ const BIGNUM *e, *n;
++ RSA_get0_key(key->rsa, &n, &e, NULL);
+ if ((ret = sshbuf_put_cstring(b, typename)) != 0 ||
+- (ret = sshbuf_put_bignum2(b, key->rsa->e)) != 0 ||
+- (ret = sshbuf_put_bignum2(b, key->rsa->n)) != 0)
++ (ret = sshbuf_put_bignum2(b, e)) != 0 ||
++ (ret = sshbuf_put_bignum2(b, n)) != 0)
+ return ret;
++ }
+ break;
+ #endif /* WITH_OPENSSL */
+ case KEY_ED25519:
+@@ -1643,13 +1765,32 @@
+ case KEY_DSA_CERT:
+ if ((n = sshkey_new(k->type)) == NULL)
+ return SSH_ERR_ALLOC_FAIL;
+- if ((BN_copy(n->dsa->p, k->dsa->p) == NULL) ||
+- (BN_copy(n->dsa->q, k->dsa->q) == NULL) ||
+- (BN_copy(n->dsa->g, k->dsa->g) == NULL) ||
+- (BN_copy(n->dsa->pub_key, k->dsa->pub_key) == NULL)) {
++ {
++ const BIGNUM *p, *q, *g, *pub_key, *priv_key;
++ BIGNUM *cp=NULL, *cq=NULL, *cg=NULL, *cpub_key=NULL;
++ DSA_get0_pqg(k->dsa, &p, &q, &g);
++ DSA_get0_key(k->dsa, &pub_key, &priv_key);
++ if ((cp = BN_dup(p)) == NULL ||
++ (cq = BN_dup(q)) == NULL ||
++ (cg = BN_dup(g)) == NULL ||
++ (cpub_key = BN_dup(pub_key)) == NULL) {
++ BN_free(cp); BN_free(cq); BN_free(cg);
++ BN_free(cpub_key);
+ sshkey_free(n);
+ return SSH_ERR_ALLOC_FAIL;
+ }
++ if (DSA_set0_pqg(n->dsa, cp, cq, cg) == 0)
++ goto error1;
++ cp = cq = cg = NULL;
++ if (DSA_set0_key(n->dsa, cpub_key, NULL) == 0) {
++error1:
++ BN_free(cp); BN_free(cq); BN_free(cg);
++ BN_free(cpub_key);
++ sshkey_free(n);
++ return SSH_ERR_LIBCRYPTO_ERROR;
++ }
++ cpub_key = NULL;
++ }
+ break;
+ # ifdef OPENSSL_HAS_ECC
+ case KEY_ECDSA:
+@@ -1673,11 +1814,23 @@
+ case KEY_RSA_CERT:
+ if ((n = sshkey_new(k->type)) == NULL)
+ return SSH_ERR_ALLOC_FAIL;
+- if ((BN_copy(n->rsa->n, k->rsa->n) == NULL) ||
+- (BN_copy(n->rsa->e, k->rsa->e) == NULL)) {
++ {
++ const BIGNUM *nn, *e, *d;
++ BIGNUM *cn=NULL, *ce=NULL;
++ RSA_get0_key(k->rsa, &nn, &e, &d);
++ if ((cn = BN_dup(nn)) == NULL ||
++ (ce = BN_dup(e)) == NULL ) {
++ BN_free(cn); BN_free(ce);
+ sshkey_free(n);
+ return SSH_ERR_ALLOC_FAIL;
+ }
++ if (RSA_set0_key(n->rsa, cn, ce, NULL) == 0) {
++ BN_free(cn); BN_free(ce);
++ sshkey_free(n);
++ return SSH_ERR_LIBCRYPTO_ERROR;
++ }
++ cn = ce = NULL;
++ }
+ break;
+ #endif /* WITH_OPENSSL */
+ case KEY_ED25519:
+@@ -1875,12 +2028,27 @@
+ ret = SSH_ERR_ALLOC_FAIL;
+ goto out;
+ }
+- if (sshbuf_get_bignum2(b, key->rsa->e) != 0 ||
+- sshbuf_get_bignum2(b, key->rsa->n) != 0) {
++ {
++ BIGNUM *e=NULL, *n=NULL;
++ if ((e = BN_new()) == NULL ||
++ (n = BN_new()) == NULL ) {
++ ret = SSH_ERR_ALLOC_FAIL;
++ BN_free(e); BN_free(n);
++ goto out;
++ }
++ if (sshbuf_get_bignum2(b, e) != 0 ||
++ sshbuf_get_bignum2(b, n) != 0) {
+ ret = SSH_ERR_INVALID_FORMAT;
++ BN_free(e); BN_free(n);
+ goto out;
+ }
+- if (BN_num_bits(key->rsa->n) < SSH_RSA_MINIMUM_MODULUS_SIZE) {
++ if (RSA_set0_key(key->rsa, n, e, NULL) == 0) {
++ BN_free(e); BN_free(n);
++ return SSH_ERR_LIBCRYPTO_ERROR;
++ }
++ n = e = NULL;
++ }
++ if (RSA_bits(key->rsa) < SSH_RSA_MINIMUM_MODULUS_SIZE) {
+ ret = SSH_ERR_KEY_LENGTH;
+ goto out;
+ }
+@@ -1900,13 +2068,36 @@
+ ret = SSH_ERR_ALLOC_FAIL;
+ goto out;
+ }
+- if (sshbuf_get_bignum2(b, key->dsa->p) != 0 ||
+- sshbuf_get_bignum2(b, key->dsa->q) != 0 ||
+- sshbuf_get_bignum2(b, key->dsa->g) != 0 ||
+- sshbuf_get_bignum2(b, key->dsa->pub_key) != 0) {
++ {
++ BIGNUM *p=NULL, *q=NULL, *g=NULL, *pub_key=NULL;
++ if ((p = BN_new()) == NULL ||
++ (q = BN_new()) == NULL ||
++ (g = BN_new()) == NULL ||
++ (pub_key = BN_new()) == NULL) {
++ ret = SSH_ERR_ALLOC_FAIL;
++ goto error1;
++ }
++ if (sshbuf_get_bignum2(b, p) != 0 ||
++ sshbuf_get_bignum2(b, q) != 0 ||
++ sshbuf_get_bignum2(b, g) != 0 ||
++ sshbuf_get_bignum2(b, pub_key) != 0) {
+ ret = SSH_ERR_INVALID_FORMAT;
++ goto error1;
++ }
++ if (DSA_set0_pqg(key->dsa, p, q, g) == 0) {
++ ret = SSH_ERR_LIBCRYPTO_ERROR;
++ goto error1;
++ }
++ p = q = g = NULL;
++ if (DSA_set0_key(key->dsa, pub_key, NULL) == 0) {
++ ret = SSH_ERR_LIBCRYPTO_ERROR;
++error1:
++ BN_free(p); BN_free(q); BN_free(g);
++ BN_free(pub_key);
+ goto out;
+ }
++ pub_key = NULL;
++ }
+ #ifdef DEBUG_PK
+ DSA_print_fp(stderr, key->dsa, 8);
+ #endif
+@@ -2140,26 +2331,63 @@
+ goto fail;
+ /* FALLTHROUGH */
+ case KEY_RSA:
+- if ((pk->rsa = RSA_new()) == NULL ||
+- (pk->rsa->e = BN_dup(k->rsa->e)) == NULL ||
+- (pk->rsa->n = BN_dup(k->rsa->n)) == NULL) {
++ if ((pk->rsa = RSA_new()) == NULL ){
+ ret = SSH_ERR_ALLOC_FAIL;
+ goto fail;
+ }
++ {
++ const BIGNUM *ke, *kn;
++ BIGNUM *pke=NULL, *pkn=NULL;
++ RSA_get0_key(k->rsa, &kn, &ke, NULL);
++ if ((pke = BN_dup(ke)) == NULL ||
++ (pkn = BN_dup(kn)) == NULL) {
++ ret = SSH_ERR_ALLOC_FAIL;
++ BN_free(pke); BN_free(pkn);
++ goto fail;
++ }
++ if (RSA_set0_key(pk->rsa, pkn, pke, NULL) == 0) {
++ ret = SSH_ERR_LIBCRYPTO_ERROR;
++ BN_free(pke); BN_free(pkn);
++ goto fail;
++ }
++ pkn = pke = NULL;
++ }
+ break;
+ case KEY_DSA_CERT:
+ if ((ret = sshkey_cert_copy(k, pk)) != 0)
+ goto fail;
+ /* FALLTHROUGH */
+ case KEY_DSA:
+- if ((pk->dsa = DSA_new()) == NULL ||
+- (pk->dsa->p = BN_dup(k->dsa->p)) == NULL ||
+- (pk->dsa->q = BN_dup(k->dsa->q)) == NULL ||
+- (pk->dsa->g = BN_dup(k->dsa->g)) == NULL ||
+- (pk->dsa->pub_key = BN_dup(k->dsa->pub_key)) == NULL) {
++ if ((pk->dsa = DSA_new()) == NULL ) {
+ ret = SSH_ERR_ALLOC_FAIL;
+ goto fail;
+ }
++ {
++ const BIGNUM *kp, *kq, *kg, *kpub_key;
++ BIGNUM *pkp=NULL, *pkq=NULL, *pkg=NULL, *pkpub_key=NULL;
++ DSA_get0_pqg(k->dsa, &kp, &kq, &kg);
++ DSA_get0_key(k->dsa, &kpub_key, NULL);
++ if ((pkp = BN_dup(kp)) == NULL ||
++ (pkq = BN_dup(kq)) == NULL ||
++ (pkg = BN_dup(kg)) == NULL ||
++ (pkpub_key = BN_dup(kpub_key)) == NULL) {
++ ret = SSH_ERR_ALLOC_FAIL;
++ goto error1;
++ }
++ if (DSA_set0_pqg(pk->dsa, pkp, pkq, pkg) == 0) {
++ ret = SSH_ERR_LIBCRYPTO_ERROR;
++ goto error1;
++ }
++ pkp = pkq = pkg = NULL;
++ if (DSA_set0_key(pk->dsa, pkpub_key, NULL) == 0) {
++ ret = SSH_ERR_LIBCRYPTO_ERROR;
++error1:
++ BN_free(pkp); BN_free(pkq); BN_free(pkg);
++ BN_free(pkpub_key);
++ goto fail;
++ }
++ pkpub_key = NULL;
++ }
+ break;
+ case KEY_ECDSA_CERT:
+ if ((ret = sshkey_cert_copy(k, pk)) != 0)
+@@ -2281,11 +2509,17 @@
+ switch (k->type) {
+ #ifdef WITH_OPENSSL
+ case KEY_DSA_CERT:
+- if ((ret = sshbuf_put_bignum2(cert, k->dsa->p)) != 0 ||
+- (ret = sshbuf_put_bignum2(cert, k->dsa->q)) != 0 ||
+- (ret = sshbuf_put_bignum2(cert, k->dsa->g)) != 0 ||
+- (ret = sshbuf_put_bignum2(cert, k->dsa->pub_key)) != 0)
++ {
++ const BIGNUM *p, *q, *g, *pub_key;
++ DSA_get0_pqg(k->dsa, &p, &q, &g);
++ DSA_get0_key(k->dsa, &pub_key, NULL);
++ if ((ret = sshbuf_put_bignum2(cert, p)) != 0 ||
++ (ret = sshbuf_put_bignum2(cert, q)) != 0 ||
++ (ret = sshbuf_put_bignum2(cert, g)) != 0 ||
++ (ret = sshbuf_put_bignum2(cert, pub_key)) != 0) {
+ goto out;
++ }
++ }
+ break;
+ # ifdef OPENSSL_HAS_ECC
+ case KEY_ECDSA_CERT:
+@@ -2298,9 +2532,15 @@
+ break;
+ # endif /* OPENSSL_HAS_ECC */
+ case KEY_RSA_CERT:
+- if ((ret = sshbuf_put_bignum2(cert, k->rsa->e)) != 0 ||
+- (ret = sshbuf_put_bignum2(cert, k->rsa->n)) != 0)
++ {
++ const BIGNUM *e, *n;
++ RSA_get0_key(k->rsa, &n, &e, NULL);
++ if (n == NULL || e == NULL ||
++ (ret = sshbuf_put_bignum2(cert, e)) != 0 ||
++ (ret = sshbuf_put_bignum2(cert, n)) != 0) {
+ goto out;
++ }
++ }
+ break;
+ #endif /* WITH_OPENSSL */
+ case KEY_ED25519_CERT:
+@@ -2474,42 +2714,67 @@
+ switch (key->type) {
+ #ifdef WITH_OPENSSL
+ case KEY_RSA:
+- if ((r = sshbuf_put_bignum2(b, key->rsa->n)) != 0 ||
+- (r = sshbuf_put_bignum2(b, key->rsa->e)) != 0 ||
+- (r = sshbuf_put_bignum2(b, key->rsa->d)) != 0 ||
+- (r = sshbuf_put_bignum2(b, key->rsa->iqmp)) != 0 ||
+- (r = sshbuf_put_bignum2(b, key->rsa->p)) != 0 ||
+- (r = sshbuf_put_bignum2(b, key->rsa->q)) != 0)
++ {
++ const BIGNUM *n, *e, *d, *iqmp, *p, *q;
++ RSA_get0_key(key->rsa, &n, &e, &d);
++ RSA_get0_crt_params(key->rsa, NULL, NULL, &iqmp);
++ RSA_get0_factors(key->rsa, &p, &q);
++ if ((r = sshbuf_put_bignum2(b, n)) != 0 ||
++ (r = sshbuf_put_bignum2(b, e)) != 0 ||
++ (r = sshbuf_put_bignum2(b, d)) != 0 ||
++ (r = sshbuf_put_bignum2(b, iqmp)) != 0 ||
++ (r = sshbuf_put_bignum2(b, p)) != 0 ||
++ (r = sshbuf_put_bignum2(b, q)) != 0) {
+ goto out;
++ }
++ }
+ break;
+ case KEY_RSA_CERT:
+ if (key->cert == NULL || sshbuf_len(key->cert->certblob) == 0) {
+ r = SSH_ERR_INVALID_ARGUMENT;
+ goto out;
+ }
++ {
++ const BIGNUM *d, *iqmp, *p, *q;
++ RSA_get0_key(key->rsa, NULL, NULL, &d);
++ RSA_get0_crt_params(key->rsa, NULL, NULL, &iqmp);
++ RSA_get0_factors(key->rsa, &p, &q);
+ if ((r = sshbuf_put_stringb(b, key->cert->certblob)) != 0 ||
+- (r = sshbuf_put_bignum2(b, key->rsa->d)) != 0 ||
+- (r = sshbuf_put_bignum2(b, key->rsa->iqmp)) != 0 ||
+- (r = sshbuf_put_bignum2(b, key->rsa->p)) != 0 ||
+- (r = sshbuf_put_bignum2(b, key->rsa->q)) != 0)
++ (r = sshbuf_put_bignum2(b, d)) != 0 ||
++ (r = sshbuf_put_bignum2(b, iqmp)) != 0 ||
++ (r = sshbuf_put_bignum2(b, p)) != 0 ||
++ (r = sshbuf_put_bignum2(b, q)) != 0) {
+ goto out;
++ }
++ }
+ break;
+ case KEY_DSA:
+- if ((r = sshbuf_put_bignum2(b, key->dsa->p)) != 0 ||
+- (r = sshbuf_put_bignum2(b, key->dsa->q)) != 0 ||
+- (r = sshbuf_put_bignum2(b, key->dsa->g)) != 0 ||
+- (r = sshbuf_put_bignum2(b, key->dsa->pub_key)) != 0 ||
+- (r = sshbuf_put_bignum2(b, key->dsa->priv_key)) != 0)
++ {
++ const BIGNUM *p, *q, *g, *pub_key, *priv_key;
++ DSA_get0_pqg(key->dsa, &p, &q, &g);
++ DSA_get0_key(key->dsa, &pub_key, &priv_key);
++ if ((r = sshbuf_put_bignum2(b, p)) != 0 ||
++ (r = sshbuf_put_bignum2(b, q)) != 0 ||
++ (r = sshbuf_put_bignum2(b, g)) != 0 ||
++ (r = sshbuf_put_bignum2(b, pub_key)) != 0 ||
++ (r = sshbuf_put_bignum2(b, priv_key)) != 0) {
+ goto out;
++ }
++ }
+ break;
+ case KEY_DSA_CERT:
+ if (key->cert == NULL || sshbuf_len(key->cert->certblob) == 0) {
+ r = SSH_ERR_INVALID_ARGUMENT;
+ goto out;
+ }
++ {
++ const BIGNUM *priv_key;
++ DSA_get0_key(key->dsa, NULL, &priv_key);
+ if ((r = sshbuf_put_stringb(b, key->cert->certblob)) != 0 ||
+- (r = sshbuf_put_bignum2(b, key->dsa->priv_key)) != 0)
++ (r = sshbuf_put_bignum2(b, priv_key)) != 0) {
+ goto out;
++ }
++ }
+ break;
+ # ifdef OPENSSL_HAS_ECC
+ case KEY_ECDSA:
+@@ -2585,18 +2850,61 @@
+ r = SSH_ERR_ALLOC_FAIL;
+ goto out;
+ }
+- if ((r = sshbuf_get_bignum2(buf, k->dsa->p)) != 0 ||
+- (r = sshbuf_get_bignum2(buf, k->dsa->q)) != 0 ||
+- (r = sshbuf_get_bignum2(buf, k->dsa->g)) != 0 ||
+- (r = sshbuf_get_bignum2(buf, k->dsa->pub_key)) != 0 ||
+- (r = sshbuf_get_bignum2(buf, k->dsa->priv_key)) != 0)
++ {
++ BIGNUM *p=NULL, *q=NULL, *g=NULL, *pub_key=NULL, *priv_key=NULL;
++ if ((p = BN_new()) == NULL ||
++ (q = BN_new()) == NULL ||
++ (g = BN_new()) == NULL ||
++ (pub_key = BN_new()) == NULL ||
++ (priv_key = BN_new()) == NULL) {
++ r = SSH_ERR_ALLOC_FAIL;
++ goto error1;
++ }
++ if (p == NULL || q == NULL || g == NULL ||
++ pub_key == NULL || priv_key == NULL ||
++ (r = sshbuf_get_bignum2(buf, p)) != 0 ||
++ (r = sshbuf_get_bignum2(buf, q)) != 0 ||
++ (r = sshbuf_get_bignum2(buf, g)) != 0 ||
++ (r = sshbuf_get_bignum2(buf, pub_key)) != 0 ||
++ (r = sshbuf_get_bignum2(buf, priv_key)) != 0) {
++ goto error1;
++ }
++ if (DSA_set0_pqg(k->dsa, p, q, g) == 0) {
++ r = SSH_ERR_LIBCRYPTO_ERROR;
++ goto error1;
++ }
++ p = q = g = NULL;
++ if (DSA_set0_key(k->dsa, pub_key, priv_key) == 0) {
++ r = SSH_ERR_LIBCRYPTO_ERROR;
++error1:
++ BN_free(p); BN_free(q); BN_free(g);
++ BN_free(pub_key); BN_free(priv_key);
+ goto out;
++ }
++ pub_key = priv_key = NULL;
++ }
+ break;
+ case KEY_DSA_CERT:
+- if ((r = sshkey_froms(buf, &k)) != 0 ||
++ {
++ BIGNUM *priv_key=NULL;
++ if ((priv_key = BN_new()) == NULL) {
++ r = SSH_ERR_ALLOC_FAIL;
++ goto out;
++ }
++ if (priv_key == NULL ||
++ (r = sshkey_froms(buf, &k)) != 0 ||
+ (r = sshkey_add_private(k)) != 0 ||
+- (r = sshbuf_get_bignum2(buf, k->dsa->priv_key)) != 0)
++ (r = sshbuf_get_bignum2(buf, priv_key)) != 0) {
++ BN_free(priv_key);
++ goto out;
++ }
++ if (DSA_set0_key(k->dsa, NULL, priv_key) == 0) {
++ r = SSH_ERR_LIBCRYPTO_ERROR;
++ BN_free(priv_key);
+ goto out;
++ }
++ priv_key = NULL;
++ }
+ break;
+ # ifdef OPENSSL_HAS_ECC
+ case KEY_ECDSA:
+@@ -2655,29 +2963,104 @@
+ r = SSH_ERR_ALLOC_FAIL;
+ goto out;
+ }
+- if ((r = sshbuf_get_bignum2(buf, k->rsa->n)) != 0 ||
+- (r = sshbuf_get_bignum2(buf, k->rsa->e)) != 0 ||
+- (r = sshbuf_get_bignum2(buf, k->rsa->d)) != 0 ||
+- (r = sshbuf_get_bignum2(buf, k->rsa->iqmp)) != 0 ||
+- (r = sshbuf_get_bignum2(buf, k->rsa->p)) != 0 ||
+- (r = sshbuf_get_bignum2(buf, k->rsa->q)) != 0 ||
+- (r = ssh_rsa_generate_additional_parameters(k)) != 0)
++ {
++ BIGNUM *n=NULL, *e=NULL, *d=NULL, *iqmp=NULL, *p=NULL, *q=NULL;
++ BIGNUM *dmp1=NULL, *dmq1=NULL; /* dummy for RSA_set0_crt_params */
++ if ((n = BN_new()) == NULL ||
++ (e = BN_new()) == NULL ||
++ (d = BN_new()) == NULL ||
++ (iqmp = BN_new()) == NULL ||
++ (p = BN_new()) == NULL ||
++ (q = BN_new()) == NULL ||
++ (dmp1 = BN_new()) == NULL ||
++ (dmq1 = BN_new()) == NULL) {
++ r = SSH_ERR_ALLOC_FAIL;
++ goto error2;
++ }
++ BN_clear(dmp1); BN_clear(dmq1);
++ if ((r = sshbuf_get_bignum2(buf, n)) != 0 ||
++ (r = sshbuf_get_bignum2(buf, e)) != 0 ||
++ (r = sshbuf_get_bignum2(buf, d)) != 0 ||
++ (r = sshbuf_get_bignum2(buf, iqmp)) != 0 ||
++ (r = sshbuf_get_bignum2(buf, p)) != 0 ||
++ (r = sshbuf_get_bignum2(buf, q)) != 0) {
++ goto error2;
++ }
++ if (RSA_set0_key(k->rsa, n, e, d) == 0) {
++ r = SSH_ERR_LIBCRYPTO_ERROR;
++ goto error2;
++ }
++ n = e = d = NULL;
++ /* dmp1,dmpq1 should be non NULL to set iqmp value */
++ if (RSA_set0_crt_params(k->rsa, dmp1, dmq1, iqmp) == 0) {
++ r = SSH_ERR_LIBCRYPTO_ERROR;
++ goto error2;
++ }
++ dmp1 = dmq1 = iqmp = NULL;
++ if (RSA_set0_factors(k->rsa, p, q) == 0) {
++ r = SSH_ERR_LIBCRYPTO_ERROR;
++ error2:
++ BN_free(n); BN_free(e); BN_free(d);
++ BN_free(iqmp);
++ BN_free(p); BN_free(q);
++ BN_free(dmp1); BN_free(dmq1);
++ goto out;
++ }
++ p = q = NULL;
++ if ((r = ssh_rsa_generate_additional_parameters(k)) != 0) {
+ goto out;
+- if (BN_num_bits(k->rsa->n) < SSH_RSA_MINIMUM_MODULUS_SIZE) {
++ }
++ }
++ if (RSA_bits(k->rsa) < SSH_RSA_MINIMUM_MODULUS_SIZE) {
+ r = SSH_ERR_KEY_LENGTH;
+ goto out;
+ }
+ break;
+ case KEY_RSA_CERT:
++ {
++ BIGNUM *d=NULL, *iqmp=NULL, *p=NULL, *q=NULL;
++ BIGNUM *dmp1=NULL, *dmq1=NULL; /* dummy for RSA_set0_crt_params */
++ if ((d = BN_new()) == NULL ||
++ (iqmp = BN_new()) == NULL ||
++ (p = BN_new()) == NULL ||
++ (q = BN_new()) == NULL ||
++ (dmp1 = BN_new()) == NULL ||
++ (dmq1 = BN_new()) == NULL) {
++ r = SSH_ERR_ALLOC_FAIL;
++ goto error3;
++ }
++ BN_clear(dmp1); BN_clear(dmq1);
+ if ((r = sshkey_froms(buf, &k)) != 0 ||
+ (r = sshkey_add_private(k)) != 0 ||
+- (r = sshbuf_get_bignum2(buf, k->rsa->d)) != 0 ||
+- (r = sshbuf_get_bignum2(buf, k->rsa->iqmp)) != 0 ||
+- (r = sshbuf_get_bignum2(buf, k->rsa->p)) != 0 ||
+- (r = sshbuf_get_bignum2(buf, k->rsa->q)) != 0 ||
+- (r = ssh_rsa_generate_additional_parameters(k)) != 0)
++ (r = sshbuf_get_bignum2(buf, d)) != 0 ||
++ (r = sshbuf_get_bignum2(buf, iqmp)) != 0 ||
++ (r = sshbuf_get_bignum2(buf, p)) != 0 ||
++ (r = sshbuf_get_bignum2(buf, q)) != 0) {
++ goto error3;
++ }
++ if (RSA_set0_key(k->rsa, NULL, NULL, d) == 0) {
++ r = SSH_ERR_LIBCRYPTO_ERROR;
++ goto error3;
++ }
++ /* dmp1,dmpq1 should be non NULL to set value */
++ if (RSA_set0_crt_params(k->rsa, dmp1, dmq1, iqmp) == 0) {
++ r = SSH_ERR_LIBCRYPTO_ERROR;
++ goto error3;
++ }
++ dmp1 = dmq1 = iqmp = NULL;
++ if (RSA_set0_factors(k->rsa, p, q) == 0) {
++ r = SSH_ERR_LIBCRYPTO_ERROR;
++ error3:
++ BN_free(d); BN_free(iqmp);
++ BN_free(p); BN_free(q);
++ BN_free(dmp1); BN_free(dmq1);
+ goto out;
+- if (BN_num_bits(k->rsa->n) < SSH_RSA_MINIMUM_MODULUS_SIZE) {
++ }
++ p = q = NULL;
++ if ((r = ssh_rsa_generate_additional_parameters(k)) != 0)
++ goto out;
++ }
++ if (RSA_bits(k->rsa) < SSH_RSA_MINIMUM_MODULUS_SIZE) {
+ r = SSH_ERR_KEY_LENGTH;
+ goto out;
+ }
+@@ -3395,7 +3778,6 @@
+ switch (pem_reason) {
+ case EVP_R_BAD_DECRYPT:
+ return SSH_ERR_KEY_WRONG_PASSPHRASE;
+- case EVP_R_BN_DECODE_ERROR:
+ case EVP_R_DECODE_ERROR:
+ #ifdef EVP_R_PRIVATE_KEY_DECODE_ERROR
+ case EVP_R_PRIVATE_KEY_DECODE_ERROR:
+@@ -3460,7 +3842,7 @@
+ r = convert_libcrypto_error();
+ goto out;
+ }
+- if (pk->type == EVP_PKEY_RSA &&
++ if (EVP_PKEY_id(pk) == EVP_PKEY_RSA &&
+ (type == KEY_UNSPEC || type == KEY_RSA)) {
+ if ((prv = sshkey_new(KEY_UNSPEC)) == NULL) {
+ r = SSH_ERR_ALLOC_FAIL;
+@@ -3475,11 +3857,11 @@
+ r = SSH_ERR_LIBCRYPTO_ERROR;
+ goto out;
+ }
+- if (BN_num_bits(prv->rsa->n) < SSH_RSA_MINIMUM_MODULUS_SIZE) {
++ if (RSA_bits(prv->rsa) < SSH_RSA_MINIMUM_MODULUS_SIZE) {
+ r = SSH_ERR_KEY_LENGTH;
+ goto out;
+ }
+- } else if (pk->type == EVP_PKEY_DSA &&
++ } else if (EVP_PKEY_id(pk) == EVP_PKEY_DSA &&
+ (type == KEY_UNSPEC || type == KEY_DSA)) {
+ if ((prv = sshkey_new(KEY_UNSPEC)) == NULL) {
+ r = SSH_ERR_ALLOC_FAIL;
+@@ -3491,7 +3873,7 @@
+ DSA_print_fp(stderr, prv->dsa, 8);
+ #endif
+ #ifdef OPENSSL_HAS_ECC
+- } else if (pk->type == EVP_PKEY_EC &&
++ } else if (EVP_PKEY_id(pk) == EVP_PKEY_EC &&
+ (type == KEY_UNSPEC || type == KEY_ECDSA)) {
+ if ((prv = sshkey_new(KEY_UNSPEC)) == NULL) {
+ r = SSH_ERR_ALLOC_FAIL;
diff --git a/abs/core/openssh/sshd@.service b/abs/core/openssh/sshd@.service
index 7ce3d37..0201a9d 100644
--- a/abs/core/openssh/sshd@.service
+++ b/abs/core/openssh/sshd@.service
@@ -6,3 +6,4 @@ After=sshdgenkeys.service
ExecStart=-/usr/bin/sshd -i
StandardInput=socket
StandardError=syslog
+KillMode=process
diff --git a/abs/core/openssl-1.0/PKGBUILD b/abs/core/openssl-1.0/PKGBUILD
new file mode 100644
index 0000000..4e6f2ea
--- /dev/null
+++ b/abs/core/openssl-1.0/PKGBUILD
@@ -0,0 +1,88 @@
+# $Id: PKGBUILD 287592 2017-01-28 07:20:49Z pierre $
+# Maintainer: Pierre Schmitz <pierre@archlinux.de>
+
+pkgname=openssl-1.0
+_ver=1.0.2n
+# use a pacman compatible version scheme
+pkgver=${_ver/[a-z]/.${_ver//[0-9.]/}}
+#pkgver=$_ver
+pkgrel=1
+pkgdesc='The Open Source toolkit for Secure Sockets Layer and Transport Layer Security'
+arch=('x86_64')
+url='https://www.openssl.org'
+license=('custom:BSD')
+depends=('perl')
+optdepends=('ca-certificates')
+options=('!makeflags')
+source=("https://www.openssl.org/source/openssl-${_ver}.tar.gz"
+ "https://www.openssl.org/source/openssl-${_ver}.tar.gz.asc"
+ 'no-rpath.patch'
+ 'ssl3-test-failure.patch'
+ 'openssl-1.0-versioned-symbols.patch')
+sha256sums=('370babb75f278c39e0c50e8c4e7493bc0f18db6867478341a832a982fd15a8fe'
+ 'SKIP'
+ '754d6107a306311e15a1db6a1cc031b81691c8b9865e8809ac60ca6f184c957c'
+ 'c54ae87c602eaa1530a336ab7c6e22e12898e1941012349c153e52553df64a13'
+ '353a84e4c92e36c379ebd9216b8f8fb9c271396583561eb84ac8c825979acaa6')
+validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491')
+
+prepare() {
+ cd $srcdir/openssl-$_ver
+
+ # remove rpath: http://bugs.archlinux.org/task/14367
+ patch -p0 -i $srcdir/no-rpath.patch
+
+ # disable a test that fails when ssl3 is disabled
+ patch -p1 -i $srcdir/ssl3-test-failure.patch
+
+ # add symbol versioning to prevent conflicts with openssl 1.1 symbols (Debian)
+ patch -p1 -i "$srcdir"/openssl-1.0-versioned-symbols.patch
+}
+
+build() {
+ cd "$srcdir/openssl-$_ver"
+
+ if [ "${CARCH}" == 'x86_64' ]; then
+ openssltarget='linux-x86_64'
+ optflags='enable-ec_nistp_64_gcc_128'
+ elif [ "${CARCH}" == 'i686' ]; then
+ openssltarget='linux-elf'
+ optflags=''
+ fi
+
+ # mark stack as non-executable: http://bugs.archlinux.org/task/12434
+ ./Configure --prefix=/usr --openssldir=/etc/ssl --libdir=lib/openssl-1.0 \
+ shared no-ssl3-method ${optflags} \
+ "${openssltarget}" \
+ "-Wa,--noexecstack ${CPPFLAGS} ${CFLAGS} ${LDFLAGS}"
+
+ make depend
+ make
+}
+
+check() {
+ cd "$srcdir/openssl-$_ver"
+ make test
+}
+
+package() {
+ cd "$srcdir/openssl-$_ver"
+
+ make INSTALL_PREFIX="$pkgdir" install_sw
+
+ # Move some files around
+ install -m755 -d "$pkgdir/usr/include/openssl-1.0"
+ mv "$pkgdir/usr/include/openssl" "$pkgdir/usr/include/openssl-1.0/"
+ mv "$pkgdir/usr/lib/openssl-1.0/libcrypto.so.1.0.0" "$pkgdir/usr/lib/"
+ mv "$pkgdir/usr/lib/openssl-1.0/libssl.so.1.0.0" "$pkgdir/usr/lib/"
+ ln -sf ../libssl.so.1.0.0 "$pkgdir/usr/lib/openssl-1.0/libssl.so"
+ ln -sf ../libcrypto.so.1.0.0 "$pkgdir/usr/lib/openssl-1.0/libcrypto.so"
+ mv "$pkgdir/usr/bin/openssl" "$pkgdir/usr/bin/openssl-1.0"
+
+ # Update includedir in .pc files
+ sed -e 's|/include$|/include/openssl-1.0|' -i "$pkgdir"/usr/lib/openssl-1.0/pkgconfig/*.pc
+
+ rm -rf "$pkgdir"/{etc,usr/bin/c_rehash}
+
+ install -D -m644 LICENSE $pkgdir/usr/share/licenses/${pkgname}/LICENSE
+}
diff --git a/abs/core/openssl/no-rpath.patch b/abs/core/openssl-1.0/no-rpath.patch
index ebd95e2..ebd95e2 100644
--- a/abs/core/openssl/no-rpath.patch
+++ b/abs/core/openssl-1.0/no-rpath.patch
diff --git a/abs/core/openssl-1.0/openssl-1.0-versioned-symbols.patch b/abs/core/openssl-1.0/openssl-1.0-versioned-symbols.patch
new file mode 100644
index 0000000..71759a9
--- /dev/null
+++ b/abs/core/openssl-1.0/openssl-1.0-versioned-symbols.patch
@@ -0,0 +1,4667 @@
+---
+ Configure | 2
+ engines/ccgost/openssl.ld | 10
+ engines/openssl.ld | 10
+ openssl.ld | 4620 ++++++++++++++++++++++++++++++++++++++++++++++
+ 4 files changed, 4642 insertions(+)
+
+--- a/Configure
++++ b/Configure
+@@ -1730,6 +1730,8 @@ if ($strict_warnings)
+ }
+ }
+
++$shared_ldflag .= " -Wl,--version-script=openssl.ld";
++
+ open(IN,'<Makefile.org') || die "unable to read Makefile.org:$!\n";
+ unlink("$Makefile.new") || die "unable to remove old $Makefile.new:$!\n" if -e "$Makefile.new";
+ open(OUT,">$Makefile.new") || die "unable to create $Makefile.new:$!\n";
+--- /dev/null
++++ b/engines/ccgost/openssl.ld
+@@ -0,0 +1,10 @@
++OPENSSL_1.0.0 {
++ global:
++ bind_engine;
++ v_check;
++ OPENSSL_init;
++ OPENSSL_finish;
++ local:
++ *;
++};
++
+--- /dev/null
++++ b/engines/openssl.ld
+@@ -0,0 +1,10 @@
++OPENSSL_1.0.0 {
++ global:
++ bind_engine;
++ v_check;
++ OPENSSL_init;
++ OPENSSL_finish;
++ local:
++ *;
++};
++
+--- /dev/null
++++ b/openssl.ld
+@@ -0,0 +1,4620 @@
++OPENSSL_1.0.0 {
++ global:
++ BIO_f_ssl;
++ BIO_new_buffer_ssl_connect;
++ BIO_new_ssl;
++ BIO_new_ssl_connect;
++ BIO_proxy_ssl_copy_session_id;
++ BIO_ssl_copy_session_id;
++ BIO_ssl_shutdown;
++ d2i_SSL_SESSION;
++ DTLSv1_client_method;
++ DTLSv1_method;
++ DTLSv1_server_method;
++ ERR_load_SSL_strings;
++ i2d_SSL_SESSION;
++ kssl_build_principal_2;
++ kssl_cget_tkt;
++ kssl_check_authent;
++ kssl_ctx_free;
++ kssl_ctx_new;
++ kssl_ctx_setkey;
++ kssl_ctx_setprinc;
++ kssl_ctx_setstring;
++ kssl_ctx_show;
++ kssl_err_set;
++ kssl_krb5_free_data_contents;
++ kssl_sget_tkt;
++ kssl_skip_confound;
++ kssl_validate_times;
++ PEM_read_bio_SSL_SESSION;
++ PEM_read_SSL_SESSION;
++ PEM_write_bio_SSL_SESSION;
++ PEM_write_SSL_SESSION;
++ SSL_accept;
++ SSL_add_client_CA;
++ SSL_add_dir_cert_subjects_to_stack;
++ SSL_add_dir_cert_subjs_to_stk;
++ SSL_add_file_cert_subjects_to_stack;
++ SSL_add_file_cert_subjs_to_stk;
++ SSL_alert_desc_string;
++ SSL_alert_desc_string_long;
++ SSL_alert_type_string;
++ SSL_alert_type_string_long;
++ SSL_callback_ctrl;
++ SSL_check_private_key;
++ SSL_CIPHER_description;
++ SSL_CIPHER_get_bits;
++ SSL_CIPHER_get_name;
++ SSL_CIPHER_get_version;
++ SSL_clear;
++ SSL_COMP_add_compression_method;
++ SSL_COMP_get_compression_methods;
++ SSL_COMP_get_compress_methods;
++ SSL_COMP_get_name;
++ SSL_connect;
++ SSL_copy_session_id;
++ SSL_ctrl;
++ SSL_CTX_add_client_CA;
++ SSL_CTX_add_session;
++ SSL_CTX_callback_ctrl;
++ SSL_CTX_check_private_key;
++ SSL_CTX_ctrl;
++ SSL_CTX_flush_sessions;
++ SSL_CTX_free;
++ SSL_CTX_get_cert_store;
++ SSL_CTX_get_client_CA_list;
++ SSL_CTX_get_client_cert_cb;
++ SSL_CTX_get_ex_data;
++ SSL_CTX_get_ex_new_index;
++ SSL_CTX_get_info_callback;
++ SSL_CTX_get_quiet_shutdown;
++ SSL_CTX_get_timeout;
++ SSL_CTX_get_verify_callback;
++ SSL_CTX_get_verify_depth;
++ SSL_CTX_get_verify_mode;
++ SSL_CTX_load_verify_locations;
++ SSL_CTX_new;
++ SSL_CTX_remove_session;
++ SSL_CTX_sess_get_get_cb;
++ SSL_CTX_sess_get_new_cb;
++ SSL_CTX_sess_get_remove_cb;
++ SSL_CTX_sessions;
++ SSL_CTX_sess_set_get_cb;
++ SSL_CTX_sess_set_new_cb;
++ SSL_CTX_sess_set_remove_cb;
++ SSL_CTX_set1_param;
++ SSL_CTX_set_cert_store;
++ SSL_CTX_set_cert_verify_callback;
++ SSL_CTX_set_cert_verify_cb;
++ SSL_CTX_set_cipher_list;
++ SSL_CTX_set_client_CA_list;
++ SSL_CTX_set_client_cert_cb;
++ SSL_CTX_set_client_cert_engine;
++ SSL_CTX_set_cookie_generate_cb;
++ SSL_CTX_set_cookie_verify_cb;
++ SSL_CTX_set_default_passwd_cb;
++ SSL_CTX_set_default_passwd_cb_userdata;
++ SSL_CTX_set_default_verify_paths;
++ SSL_CTX_set_def_passwd_cb_ud;
++ SSL_CTX_set_def_verify_paths;
++ SSL_CTX_set_ex_data;
++ SSL_CTX_set_generate_session_id;
++ SSL_CTX_set_info_callback;
++ SSL_CTX_set_msg_callback;
++ SSL_CTX_set_psk_client_callback;
++ SSL_CTX_set_psk_server_callback;
++ SSL_CTX_set_purpose;
++ SSL_CTX_set_quiet_shutdown;
++ SSL_CTX_set_session_id_context;
++ SSL_CTX_set_ssl_version;
++ SSL_CTX_set_timeout;
++ SSL_CTX_set_tmp_dh_callback;
++ SSL_CTX_set_tmp_ecdh_callback;
++ SSL_CTX_set_tmp_rsa_callback;
++ SSL_CTX_set_trust;
++ SSL_CTX_set_verify;
++ SSL_CTX_set_verify_depth;
++ SSL_CTX_use_cert_chain_file;
++ SSL_CTX_use_certificate;
++ SSL_CTX_use_certificate_ASN1;
++ SSL_CTX_use_certificate_chain_file;
++ SSL_CTX_use_certificate_file;
++ SSL_CTX_use_PrivateKey;
++ SSL_CTX_use_PrivateKey_ASN1;
++ SSL_CTX_use_PrivateKey_file;
++ SSL_CTX_use_psk_identity_hint;
++ SSL_CTX_use_RSAPrivateKey;
++ SSL_CTX_use_RSAPrivateKey_ASN1;
++ SSL_CTX_use_RSAPrivateKey_file;
++ SSL_do_handshake;
++ SSL_dup;
++ SSL_dup_CA_list;
++ SSLeay_add_ssl_algorithms;
++ SSL_free;
++ SSL_get1_session;
++ SSL_get_certificate;
++ SSL_get_cipher_list;
++ SSL_get_ciphers;
++ SSL_get_client_CA_list;
++ SSL_get_current_cipher;
++ SSL_get_current_compression;
++ SSL_get_current_expansion;
++ SSL_get_default_timeout;
++ SSL_get_error;
++ SSL_get_ex_data;
++ SSL_get_ex_data_X509_STORE_CTX_idx;
++ SSL_get_ex_d_X509_STORE_CTX_idx;
++ SSL_get_ex_new_index;
++ SSL_get_fd;
++ SSL_get_finished;
++ SSL_get_info_callback;
++ SSL_get_peer_cert_chain;
++ SSL_get_peer_certificate;
++ SSL_get_peer_finished;
++ SSL_get_privatekey;
++ SSL_get_psk_identity;
++ SSL_get_psk_identity_hint;
++ SSL_get_quiet_shutdown;
++ SSL_get_rbio;
++ SSL_get_read_ahead;
++ SSL_get_rfd;
++ SSL_get_servername;
++ SSL_get_servername_type;
++ SSL_get_session;
++ SSL_get_shared_ciphers;
++ SSL_get_shutdown;
++ SSL_get_SSL_CTX;
++ SSL_get_ssl_method;
++ SSL_get_verify_callback;
++ SSL_get_verify_depth;
++ SSL_get_verify_mode;
++ SSL_get_verify_result;
++ SSL_get_version;
++ SSL_get_wbio;
++ SSL_get_wfd;
++ SSL_has_matching_session_id;
++ SSL_library_init;
++ SSL_load_client_CA_file;
++ SSL_load_error_strings;
++ SSL_new;
++ SSL_peek;
++ SSL_pending;
++ SSL_read;
++ SSL_renegotiate;
++ SSL_renegotiate_pending;
++ SSL_rstate_string;
++ SSL_rstate_string_long;
++ SSL_SESSION_cmp;
++ SSL_SESSION_free;
++ SSL_SESSION_get_ex_data;
++ SSL_SESSION_get_ex_new_index;
++ SSL_SESSION_get_id;
++ SSL_SESSION_get_time;
++ SSL_SESSION_get_timeout;
++ SSL_SESSION_hash;
++ SSL_SESSION_new;
++ SSL_SESSION_print;
++ SSL_SESSION_print_fp;
++ SSL_SESSION_set_ex_data;
++ SSL_SESSION_set_time;
++ SSL_SESSION_set_timeout;
++ SSL_set1_param;
++ SSL_set_accept_state;
++ SSL_set_bio;
++ SSL_set_cipher_list;
++ SSL_set_client_CA_list;
++ SSL_set_connect_state;
++ SSL_set_ex_data;
++ SSL_set_fd;
++ SSL_set_generate_session_id;
++ SSL_set_info_callback;
++ SSL_set_msg_callback;
++ SSL_set_psk_client_callback;
++ SSL_set_psk_server_callback;
++ SSL_set_purpose;
++ SSL_set_quiet_shutdown;
++ SSL_set_read_ahead;
++ SSL_set_rfd;
++ SSL_set_session;
++ SSL_set_session_id_context;
++ SSL_set_session_secret_cb;
++ SSL_set_session_ticket_ext;
++ SSL_set_session_ticket_ext_cb;
++ SSL_set_shutdown;
++ SSL_set_SSL_CTX;
++ SSL_set_ssl_method;
++ SSL_set_tmp_dh_callback;
++ SSL_set_tmp_ecdh_callback;
++ SSL_set_tmp_rsa_callback;
++ SSL_set_trust;
++ SSL_set_verify;
++ SSL_set_verify_depth;
++ SSL_set_verify_result;
++ SSL_set_wfd;
++ SSL_shutdown;
++ SSL_state;
++ SSL_state_string;
++ SSL_state_string_long;
++ SSL_use_certificate;
++ SSL_use_certificate_ASN1;
++ SSL_use_certificate_file;
++ SSL_use_PrivateKey;
++ SSL_use_PrivateKey_ASN1;
++ SSL_use_PrivateKey_file;
++ SSL_use_psk_identity_hint;
++ SSL_use_RSAPrivateKey;
++ SSL_use_RSAPrivateKey_ASN1;
++ SSL_use_RSAPrivateKey_file;
++ SSLv23_client_method;
++ SSLv23_method;
++ SSLv23_server_method;
++ SSLv2_client_method;
++ SSLv2_method;
++ SSLv2_server_method;
++ SSLv3_client_method;
++ SSLv3_method;
++ SSLv3_server_method;
++ SSL_version;
++ SSL_want;
++ SSL_write;
++ TLSv1_client_method;
++ TLSv1_method;
++ TLSv1_server_method;
++
++
++ SSLeay;
++ SSLeay_version;
++ ASN1_BIT_STRING_asn1_meth;
++ ASN1_HEADER_free;
++ ASN1_HEADER_new;
++ ASN1_IA5STRING_asn1_meth;
++ ASN1_INTEGER_get;
++ ASN1_INTEGER_set;
++ ASN1_INTEGER_to_BN;
++ ASN1_OBJECT_create;
++ ASN1_OBJECT_free;
++ ASN1_OBJECT_new;
++ ASN1_PRINTABLE_type;
++ ASN1_STRING_cmp;
++ ASN1_STRING_dup;
++ ASN1_STRING_free;
++ ASN1_STRING_new;
++ ASN1_STRING_print;
++ ASN1_STRING_set;
++ ASN1_STRING_type_new;
++ ASN1_TYPE_free;
++ ASN1_TYPE_new;
++ ASN1_UNIVERSALSTRING_to_string;
++ ASN1_UTCTIME_check;
++ ASN1_UTCTIME_print;
++ ASN1_UTCTIME_set;
++ ASN1_check_infinite_end;
++ ASN1_d2i_bio;
++ ASN1_d2i_fp;
++ ASN1_digest;
++ ASN1_dup;
++ ASN1_get_object;
++ ASN1_i2d_bio;
++ ASN1_i2d_fp;
++ ASN1_object_size;
++ ASN1_parse;
++ ASN1_put_object;
++ ASN1_sign;
++ ASN1_verify;
++ BF_cbc_encrypt;
++ BF_cfb64_encrypt;
++ BF_ecb_encrypt;
++ BF_encrypt;
++ BF_ofb64_encrypt;
++ BF_options;
++ BF_set_key;
++ BIO_CONNECT_free;
++ BIO_CONNECT_new;
++ BIO_accept;
++ BIO_ctrl;
++ BIO_int_ctrl;
++ BIO_debug_callback;
++ BIO_dump;
++ BIO_dup_chain;
++ BIO_f_base64;
++ BIO_f_buffer;
++ BIO_f_cipher;
++ BIO_f_md;
++ BIO_f_null;
++ BIO_f_proxy_server;
++ BIO_fd_non_fatal_error;
++ BIO_fd_should_retry;
++ BIO_find_type;
++ BIO_free;
++ BIO_free_all;
++ BIO_get_accept_socket;
++ BIO_get_filter_bio;
++ BIO_get_host_ip;
++ BIO_get_port;
++ BIO_get_retry_BIO;
++ BIO_get_retry_reason;
++ BIO_gethostbyname;
++ BIO_gets;
++ BIO_new;
++ BIO_new_accept;
++ BIO_new_connect;
++ BIO_new_fd;
++ BIO_new_file;
++ BIO_new_fp;
++ BIO_new_socket;
++ BIO_pop;
++ BIO_printf;
++ BIO_push;
++ BIO_puts;
++ BIO_read;
++ BIO_s_accept;
++ BIO_s_connect;
++ BIO_s_fd;
++ BIO_s_file;
++ BIO_s_mem;
++ BIO_s_null;
++ BIO_s_proxy_client;
++ BIO_s_socket;
++ BIO_set;
++ BIO_set_cipher;
++ BIO_set_tcp_ndelay;
++ BIO_sock_cleanup;
++ BIO_sock_error;
++ BIO_sock_init;
++ BIO_sock_non_fatal_error;
++ BIO_sock_should_retry;
++ BIO_socket_ioctl;
++ BIO_write;
++ BN_CTX_free;
++ BN_CTX_new;
++ BN_MONT_CTX_free;
++ BN_MONT_CTX_new;
++ BN_MONT_CTX_set;
++ BN_add;
++ BN_add_word;
++ BN_hex2bn;
++ BN_bin2bn;
++ BN_bn2hex;
++ BN_bn2bin;
++ BN_clear;
++ BN_clear_bit;
++ BN_clear_free;
++ BN_cmp;
++ BN_copy;
++ BN_div;
++ BN_div_word;
++ BN_dup;
++ BN_free;
++ BN_from_montgomery;
++ BN_gcd;
++ BN_generate_prime;
++ BN_get_word;
++ BN_is_bit_set;
++ BN_is_prime;
++ BN_lshift;
++ BN_lshift1;
++ BN_mask_bits;
++ BN_mod;
++ BN_mod_exp;
++ BN_mod_exp_mont;
++ BN_mod_exp_simple;
++ BN_mod_inverse;
++ BN_mod_mul;
++ BN_mod_mul_montgomery;
++ BN_mod_word;
++ BN_mul;
++ BN_new;
++ BN_num_bits;
++ BN_num_bits_word;
++ BN_options;
++ BN_print;
++ BN_print_fp;
++ BN_rand;
++ BN_reciprocal;
++ BN_rshift;
++ BN_rshift1;
++ BN_set_bit;
++ BN_set_word;
++ BN_sqr;
++ BN_sub;
++ BN_to_ASN1_INTEGER;
++ BN_ucmp;
++ BN_value_one;
++ BUF_MEM_free;
++ BUF_MEM_grow;
++ BUF_MEM_new;
++ BUF_strdup;
++ CONF_free;
++ CONF_get_number;
++ CONF_get_section;
++ CONF_get_string;
++ CONF_load;
++ CRYPTO_add_lock;
++ CRYPTO_dbg_free;
++ CRYPTO_dbg_malloc;
++ CRYPTO_dbg_realloc;
++ CRYPTO_dbg_remalloc;
++ CRYPTO_free;
++ CRYPTO_get_add_lock_callback;
++ CRYPTO_get_id_callback;
++ CRYPTO_get_lock_name;
++ CRYPTO_get_locking_callback;
++ CRYPTO_get_mem_functions;
++ CRYPTO_lock;
++ CRYPTO_malloc;
++ CRYPTO_mem_ctrl;
++ CRYPTO_mem_leaks;
++ CRYPTO_mem_leaks_cb;
++ CRYPTO_mem_leaks_fp;
++ CRYPTO_realloc;
++ CRYPTO_remalloc;
++ CRYPTO_set_add_lock_callback;
++ CRYPTO_set_id_callback;
++ CRYPTO_set_locking_callback;
++ CRYPTO_set_mem_functions;
++ CRYPTO_thread_id;
++ DH_check;
++ DH_compute_key;
++ DH_free;
++ DH_generate_key;
++ DH_generate_parameters;
++ DH_new;
++ DH_size;
++ DHparams_print;
++ DHparams_print_fp;
++ DSA_free;
++ DSA_generate_key;
++ DSA_generate_parameters;
++ DSA_is_prime;
++ DSA_new;
++ DSA_print;
++ DSA_print_fp;
++ DSA_sign;
++ DSA_sign_setup;
++ DSA_size;
++ DSA_verify;
++ DSAparams_print;
++ DSAparams_print_fp;
++ ERR_clear_error;
++ ERR_error_string;
++ ERR_free_strings;
++ ERR_func_error_string;
++ ERR_get_err_state_table;
++ ERR_get_error;
++ ERR_get_error_line;
++ ERR_get_state;
++ ERR_get_string_table;
++ ERR_lib_error_string;
++ ERR_load_ASN1_strings;
++ ERR_load_BIO_strings;
++ ERR_load_BN_strings;
++ ERR_load_BUF_strings;
++ ERR_load_CONF_strings;
++ ERR_load_DH_strings;
++ ERR_load_DSA_strings;
++ ERR_load_ERR_strings;
++ ERR_load_EVP_strings;
++ ERR_load_OBJ_strings;
++ ERR_load_PEM_strings;
++ ERR_load_PROXY_strings;
++ ERR_load_RSA_strings;
++ ERR_load_X509_strings;
++ ERR_load_crypto_strings;
++ ERR_load_strings;
++ ERR_peek_error;
++ ERR_peek_error_line;
++ ERR_print_errors;
++ ERR_print_errors_fp;
++ ERR_put_error;
++ ERR_reason_error_string;
++ ERR_remove_state;
++ EVP_BytesToKey;
++ EVP_CIPHER_CTX_cleanup;
++ EVP_CipherFinal;
++ EVP_CipherInit;
++ EVP_CipherUpdate;
++ EVP_DecodeBlock;
++ EVP_DecodeFinal;
++ EVP_DecodeInit;
++ EVP_DecodeUpdate;
++ EVP_DecryptFinal;
++ EVP_DecryptInit;
++ EVP_DecryptUpdate;
++ EVP_DigestFinal;
++ EVP_DigestInit;
++ EVP_DigestUpdate;
++ EVP_EncodeBlock;
++ EVP_EncodeFinal;
++ EVP_EncodeInit;
++ EVP_EncodeUpdate;
++ EVP_EncryptFinal;
++ EVP_EncryptInit;
++ EVP_EncryptUpdate;
++ EVP_OpenFinal;
++ EVP_OpenInit;
++ EVP_PKEY_assign;
++ EVP_PKEY_copy_parameters;
++ EVP_PKEY_free;
++ EVP_PKEY_missing_parameters;
++ EVP_PKEY_new;
++ EVP_PKEY_save_parameters;
++ EVP_PKEY_size;
++ EVP_PKEY_type;
++ EVP_SealFinal;
++ EVP_SealInit;
++ EVP_SignFinal;
++ EVP_VerifyFinal;
++ EVP_add_alias;
++ EVP_add_cipher;
++ EVP_add_digest;
++ EVP_bf_cbc;
++ EVP_bf_cfb64;
++ EVP_bf_ecb;
++ EVP_bf_ofb;
++ EVP_cleanup;
++ EVP_des_cbc;
++ EVP_des_cfb64;
++ EVP_des_ecb;
++ EVP_des_ede;
++ EVP_des_ede3;
++ EVP_des_ede3_cbc;
++ EVP_des_ede3_cfb64;
++ EVP_des_ede3_ofb;
++ EVP_des_ede_cbc;
++ EVP_des_ede_cfb64;
++ EVP_des_ede_ofb;
++ EVP_des_ofb;
++ EVP_desx_cbc;
++ EVP_dss;
++ EVP_dss1;
++ EVP_enc_null;
++ EVP_get_cipherbyname;
++ EVP_get_digestbyname;
++ EVP_get_pw_prompt;
++ EVP_idea_cbc;
++ EVP_idea_cfb64;
++ EVP_idea_ecb;
++ EVP_idea_ofb;
++ EVP_md2;
++ EVP_md5;
++ EVP_md_null;
++ EVP_rc2_cbc;
++ EVP_rc2_cfb64;
++ EVP_rc2_ecb;
++ EVP_rc2_ofb;
++ EVP_rc4;
++ EVP_read_pw_string;
++ EVP_set_pw_prompt;
++ EVP_sha;
++ EVP_sha1;
++ MD2;
++ MD2_Final;
++ MD2_Init;
++ MD2_Update;
++ MD2_options;
++ MD5;
++ MD5_Final;
++ MD5_Init;
++ MD5_Update;
++ MDC2;
++ MDC2_Final;
++ MDC2_Init;
++ MDC2_Update;
++ NETSCAPE_SPKAC_free;
++ NETSCAPE_SPKAC_new;
++ NETSCAPE_SPKI_free;
++ NETSCAPE_SPKI_new;
++ NETSCAPE_SPKI_sign;
++ NETSCAPE_SPKI_verify;
++ OBJ_add_object;
++ OBJ_bsearch;
++ OBJ_cleanup;
++ OBJ_cmp;
++ OBJ_create;
++ OBJ_dup;
++ OBJ_ln2nid;
++ OBJ_new_nid;
++ OBJ_nid2ln;
++ OBJ_nid2obj;
++ OBJ_nid2sn;
++ OBJ_obj2nid;
++ OBJ_sn2nid;
++ OBJ_txt2nid;
++ PEM_ASN1_read;
++ PEM_ASN1_read_bio;
++ PEM_ASN1_write;
++ PEM_ASN1_write_bio;
++ PEM_SealFinal;
++ PEM_SealInit;
++ PEM_SealUpdate;
++ PEM_SignFinal;
++ PEM_SignInit;
++ PEM_SignUpdate;
++ PEM_X509_INFO_read;
++ PEM_X509_INFO_read_bio;
++ PEM_X509_INFO_write_bio;
++ PEM_dek_info;
++ PEM_do_header;
++ PEM_get_EVP_CIPHER_INFO;
++ PEM_proc_type;
++ PEM_read;
++ PEM_read_DHparams;
++ PEM_read_DSAPrivateKey;
++ PEM_read_DSAparams;
++ PEM_read_PKCS7;
++ PEM_read_PrivateKey;
++ PEM_read_RSAPrivateKey;
++ PEM_read_X509;
++ PEM_read_X509_CRL;
++ PEM_read_X509_REQ;
++ PEM_read_bio;
++ PEM_read_bio_DHparams;
++ PEM_read_bio_DSAPrivateKey;
++ PEM_read_bio_DSAparams;
++ PEM_read_bio_PKCS7;
++ PEM_read_bio_PrivateKey;
++ PEM_read_bio_RSAPrivateKey;
++ PEM_read_bio_X509;
++ PEM_read_bio_X509_CRL;
++ PEM_read_bio_X509_REQ;
++ PEM_write;
++ PEM_write_DHparams;
++ PEM_write_DSAPrivateKey;
++ PEM_write_DSAparams;
++ PEM_write_PKCS7;
++ PEM_write_PrivateKey;
++ PEM_write_RSAPrivateKey;
++ PEM_write_X509;
++ PEM_write_X509_CRL;
++ PEM_write_X509_REQ;
++ PEM_write_bio;
++ PEM_write_bio_DHparams;
++ PEM_write_bio_DSAPrivateKey;
++ PEM_write_bio_DSAparams;
++ PEM_write_bio_PKCS7;
++ PEM_write_bio_PrivateKey;
++ PEM_write_bio_RSAPrivateKey;
++ PEM_write_bio_X509;
++ PEM_write_bio_X509_CRL;
++ PEM_write_bio_X509_REQ;
++ PKCS7_DIGEST_free;
++ PKCS7_DIGEST_new;
++ PKCS7_ENCRYPT_free;
++ PKCS7_ENCRYPT_new;
++ PKCS7_ENC_CONTENT_free;
++ PKCS7_ENC_CONTENT_new;
++ PKCS7_ENVELOPE_free;
++ PKCS7_ENVELOPE_new;
++ PKCS7_ISSUER_AND_SERIAL_digest;
++ PKCS7_ISSUER_AND_SERIAL_free;
++ PKCS7_ISSUER_AND_SERIAL_new;
++ PKCS7_RECIP_INFO_free;
++ PKCS7_RECIP_INFO_new;
++ PKCS7_SIGNED_free;
++ PKCS7_SIGNED_new;
++ PKCS7_SIGNER_INFO_free;
++ PKCS7_SIGNER_INFO_new;
++ PKCS7_SIGN_ENVELOPE_free;
++ PKCS7_SIGN_ENVELOPE_new;
++ PKCS7_dup;
++ PKCS7_free;
++ PKCS7_new;
++ PROXY_ENTRY_add_noproxy;
++ PROXY_ENTRY_clear_noproxy;
++ PROXY_ENTRY_free;
++ PROXY_ENTRY_get_noproxy;
++ PROXY_ENTRY_new;
++ PROXY_ENTRY_set_server;
++ PROXY_add_noproxy;
++ PROXY_add_server;
++ PROXY_check_by_host;
++ PROXY_check_url;
++ PROXY_clear_noproxy;
++ PROXY_free;
++ PROXY_get_noproxy;
++ PROXY_get_proxies;
++ PROXY_get_proxy_entry;
++ PROXY_load_conf;
++ PROXY_new;
++ PROXY_print;
++ RAND_bytes;
++ RAND_cleanup;
++ RAND_file_name;
++ RAND_load_file;
++ RAND_screen;
++ RAND_seed;
++ RAND_write_file;
++ RC2_cbc_encrypt;
++ RC2_cfb64_encrypt;
++ RC2_ecb_encrypt;
++ RC2_encrypt;
++ RC2_ofb64_encrypt;
++ RC2_set_key;
++ RC4;
++ RC4_options;
++ RC4_set_key;
++ RSAPrivateKey_asn1_meth;
++ RSAPrivateKey_dup;
++ RSAPublicKey_dup;
++ RSA_PKCS1_SSLeay;
++ RSA_free;
++ RSA_generate_key;
++ RSA_new;
++ RSA_new_method;
++ RSA_print;
++ RSA_print_fp;
++ RSA_private_decrypt;
++ RSA_private_encrypt;
++ RSA_public_decrypt;
++ RSA_public_encrypt;
++ RSA_set_default_method;
++ RSA_sign;
++ RSA_sign_ASN1_OCTET_STRING;
++ RSA_size;
++ RSA_verify;
++ RSA_verify_ASN1_OCTET_STRING;
++ SHA;
++ SHA1;
++ SHA1_Final;
++ SHA1_Init;
++ SHA1_Update;
++ SHA_Final;
++ SHA_Init;
++ SHA_Update;
++ OpenSSL_add_all_algorithms;
++ OpenSSL_add_all_ciphers;
++ OpenSSL_add_all_digests;
++ TXT_DB_create_index;
++ TXT_DB_free;
++ TXT_DB_get_by_index;
++ TXT_DB_insert;
++ TXT_DB_read;
++ TXT_DB_write;
++ X509_ALGOR_free;
++ X509_ALGOR_new;
++ X509_ATTRIBUTE_free;
++ X509_ATTRIBUTE_new;
++ X509_CINF_free;
++ X509_CINF_new;
++ X509_CRL_INFO_free;
++ X509_CRL_INFO_new;
++ X509_CRL_add_ext;
++ X509_CRL_cmp;
++ X509_CRL_delete_ext;
++ X509_CRL_dup;
++ X509_CRL_free;
++ X509_CRL_get_ext;
++ X509_CRL_get_ext_by_NID;
++ X509_CRL_get_ext_by_OBJ;
++ X509_CRL_get_ext_by_critical;
++ X509_CRL_get_ext_count;
++ X509_CRL_new;
++ X509_CRL_sign;
++ X509_CRL_verify;
++ X509_EXTENSION_create_by_NID;
++ X509_EXTENSION_create_by_OBJ;
++ X509_EXTENSION_dup;
++ X509_EXTENSION_free;
++ X509_EXTENSION_get_critical;
++ X509_EXTENSION_get_data;
++ X509_EXTENSION_get_object;
++ X509_EXTENSION_new;
++ X509_EXTENSION_set_critical;
++ X509_EXTENSION_set_data;
++ X509_EXTENSION_set_object;
++ X509_INFO_free;
++ X509_INFO_new;
++ X509_LOOKUP_by_alias;
++ X509_LOOKUP_by_fingerprint;
++ X509_LOOKUP_by_issuer_serial;
++ X509_LOOKUP_by_subject;
++ X509_LOOKUP_ctrl;
++ X509_LOOKUP_file;
++ X509_LOOKUP_free;
++ X509_LOOKUP_hash_dir;
++ X509_LOOKUP_init;
++ X509_LOOKUP_new;
++ X509_LOOKUP_shutdown;
++ X509_NAME_ENTRY_create_by_NID;
++ X509_NAME_ENTRY_create_by_OBJ;
++ X509_NAME_ENTRY_dup;
++ X509_NAME_ENTRY_free;
++ X509_NAME_ENTRY_get_data;
++ X509_NAME_ENTRY_get_object;
++ X509_NAME_ENTRY_new;
++ X509_NAME_ENTRY_set_data;
++ X509_NAME_ENTRY_set_object;
++ X509_NAME_add_entry;
++ X509_NAME_cmp;
++ X509_NAME_delete_entry;
++ X509_NAME_digest;
++ X509_NAME_dup;
++ X509_NAME_entry_count;
++ X509_NAME_free;
++ X509_NAME_get_entry;
++ X509_NAME_get_index_by_NID;
++ X509_NAME_get_index_by_OBJ;
++ X509_NAME_get_text_by_NID;
++ X509_NAME_get_text_by_OBJ;
++ X509_NAME_hash;
++ X509_NAME_new;
++ X509_NAME_oneline;
++ X509_NAME_print;
++ X509_NAME_set;
++ X509_OBJECT_free_contents;
++ X509_OBJECT_retrieve_by_subject;
++ X509_OBJECT_up_ref_count;
++ X509_PKEY_free;
++ X509_PKEY_new;
++ X509_PUBKEY_free;
++ X509_PUBKEY_get;
++ X509_PUBKEY_new;
++ X509_PUBKEY_set;
++ X509_REQ_INFO_free;
++ X509_REQ_INFO_new;
++ X509_REQ_dup;
++ X509_REQ_free;
++ X509_REQ_get_pubkey;
++ X509_REQ_new;
++ X509_REQ_print;
++ X509_REQ_print_fp;
++ X509_REQ_set_pubkey;
++ X509_REQ_set_subject_name;
++ X509_REQ_set_version;
++ X509_REQ_sign;
++ X509_REQ_to_X509;
++ X509_REQ_verify;
++ X509_REVOKED_add_ext;
++ X509_REVOKED_delete_ext;
++ X509_REVOKED_free;
++ X509_REVOKED_get_ext;
++ X509_REVOKED_get_ext_by_NID;
++ X509_REVOKED_get_ext_by_OBJ;
++ X509_REVOKED_get_ext_by_critical;
++ X509_REVOKED_get_ext_by_critic;
++ X509_REVOKED_get_ext_count;
++ X509_REVOKED_new;
++ X509_SIG_free;
++ X509_SIG_new;
++ X509_STORE_CTX_cleanup;
++ X509_STORE_CTX_init;
++ X509_STORE_add_cert;
++ X509_STORE_add_lookup;
++ X509_STORE_free;
++ X509_STORE_get_by_subject;
++ X509_STORE_load_locations;
++ X509_STORE_new;
++ X509_STORE_set_default_paths;
++ X509_VAL_free;
++ X509_VAL_new;
++ X509_add_ext;
++ X509_asn1_meth;
++ X509_certificate_type;
++ X509_check_private_key;
++ X509_cmp_current_time;
++ X509_delete_ext;
++ X509_digest;
++ X509_dup;
++ X509_free;
++ X509_get_default_cert_area;
++ X509_get_default_cert_dir;
++ X509_get_default_cert_dir_env;
++ X509_get_default_cert_file;
++ X509_get_default_cert_file_env;
++ X509_get_default_private_dir;
++ X509_get_ext;
++ X509_get_ext_by_NID;
++ X509_get_ext_by_OBJ;
++ X509_get_ext_by_critical;
++ X509_get_ext_count;
++ X509_get_issuer_name;
++ X509_get_pubkey;
++ X509_get_pubkey_parameters;
++ X509_get_serialNumber;
++ X509_get_subject_name;
++ X509_gmtime_adj;
++ X509_issuer_and_serial_cmp;
++ X509_issuer_and_serial_hash;
++ X509_issuer_name_cmp;
++ X509_issuer_name_hash;
++ X509_load_cert_file;
++ X509_new;
++ X509_print;
++ X509_print_fp;
++ X509_set_issuer_name;
++ X509_set_notAfter;
++ X509_set_notBefore;
++ X509_set_pubkey;
++ X509_set_serialNumber;
++ X509_set_subject_name;
++ X509_set_version;
++ X509_sign;
++ X509_subject_name_cmp;
++ X509_subject_name_hash;
++ X509_to_X509_REQ;
++ X509_verify;
++ X509_verify_cert;
++ X509_verify_cert_error_string;
++ X509v3_add_ext;
++ X509v3_add_extension;
++ X509v3_add_netscape_extensions;
++ X509v3_add_standard_extensions;
++ X509v3_cleanup_extensions;
++ X509v3_data_type_by_NID;
++ X509v3_data_type_by_OBJ;
++ X509v3_delete_ext;
++ X509v3_get_ext;
++ X509v3_get_ext_by_NID;
++ X509v3_get_ext_by_OBJ;
++ X509v3_get_ext_by_critical;
++ X509v3_get_ext_count;
++ X509v3_pack_string;
++ X509v3_pack_type_by_NID;
++ X509v3_pack_type_by_OBJ;
++ X509v3_unpack_string;
++ _des_crypt;
++ a2d_ASN1_OBJECT;
++ a2i_ASN1_INTEGER;
++ a2i_ASN1_STRING;
++ asn1_Finish;
++ asn1_GetSequence;
++ bn_div_words;
++ bn_expand2;
++ bn_mul_add_words;
++ bn_mul_words;
++ BN_uadd;
++ BN_usub;
++ bn_sqr_words;
++ _ossl_old_crypt;
++ d2i_ASN1_BIT_STRING;
++ d2i_ASN1_BOOLEAN;
++ d2i_ASN1_HEADER;
++ d2i_ASN1_IA5STRING;
++ d2i_ASN1_INTEGER;
++ d2i_ASN1_OBJECT;
++ d2i_ASN1_OCTET_STRING;
++ d2i_ASN1_PRINTABLE;
++ d2i_ASN1_PRINTABLESTRING;
++ d2i_ASN1_SET;
++ d2i_ASN1_T61STRING;
++ d2i_ASN1_TYPE;
++ d2i_ASN1_UTCTIME;
++ d2i_ASN1_bytes;
++ d2i_ASN1_type_bytes;
++ d2i_DHparams;
++ d2i_DSAPrivateKey;
++ d2i_DSAPrivateKey_bio;
++ d2i_DSAPrivateKey_fp;
++ d2i_DSAPublicKey;
++ d2i_DSAparams;
++ d2i_NETSCAPE_SPKAC;
++ d2i_NETSCAPE_SPKI;
++ d2i_Netscape_RSA;
++ d2i_PKCS7;
++ d2i_PKCS7_DIGEST;
++ d2i_PKCS7_ENCRYPT;
++ d2i_PKCS7_ENC_CONTENT;
++ d2i_PKCS7_ENVELOPE;
++ d2i_PKCS7_ISSUER_AND_SERIAL;
++ d2i_PKCS7_RECIP_INFO;
++ d2i_PKCS7_SIGNED;
++ d2i_PKCS7_SIGNER_INFO;
++ d2i_PKCS7_SIGN_ENVELOPE;
++ d2i_PKCS7_bio;
++ d2i_PKCS7_fp;
++ d2i_PrivateKey;
++ d2i_PublicKey;
++ d2i_RSAPrivateKey;
++ d2i_RSAPrivateKey_bio;
++ d2i_RSAPrivateKey_fp;
++ d2i_RSAPublicKey;
++ d2i_X509;
++ d2i_X509_ALGOR;
++ d2i_X509_ATTRIBUTE;
++ d2i_X509_CINF;
++ d2i_X509_CRL;
++ d2i_X509_CRL_INFO;
++ d2i_X509_CRL_bio;
++ d2i_X509_CRL_fp;
++ d2i_X509_EXTENSION;
++ d2i_X509_NAME;
++ d2i_X509_NAME_ENTRY;
++ d2i_X509_PKEY;
++ d2i_X509_PUBKEY;
++ d2i_X509_REQ;
++ d2i_X509_REQ_INFO;
++ d2i_X509_REQ_bio;
++ d2i_X509_REQ_fp;
++ d2i_X509_REVOKED;
++ d2i_X509_SIG;
++ d2i_X509_VAL;
++ d2i_X509_bio;
++ d2i_X509_fp;
++ DES_cbc_cksum;
++ DES_cbc_encrypt;
++ DES_cblock_print_file;
++ DES_cfb64_encrypt;
++ DES_cfb_encrypt;
++ DES_decrypt3;
++ DES_ecb3_encrypt;
++ DES_ecb_encrypt;
++ DES_ede3_cbc_encrypt;
++ DES_ede3_cfb64_encrypt;
++ DES_ede3_ofb64_encrypt;
++ DES_enc_read;
++ DES_enc_write;
++ DES_encrypt1;
++ DES_encrypt2;
++ DES_encrypt3;
++ DES_fcrypt;
++ DES_is_weak_key;
++ DES_key_sched;
++ DES_ncbc_encrypt;
++ DES_ofb64_encrypt;
++ DES_ofb_encrypt;
++ DES_options;
++ DES_pcbc_encrypt;
++ DES_quad_cksum;
++ DES_random_key;
++ _ossl_old_des_random_seed;
++ _ossl_old_des_read_2passwords;
++ _ossl_old_des_read_password;
++ _ossl_old_des_read_pw;
++ _ossl_old_des_read_pw_string;
++ DES_set_key;
++ DES_set_odd_parity;
++ DES_string_to_2keys;
++ DES_string_to_key;
++ DES_xcbc_encrypt;
++ DES_xwhite_in2out;
++ fcrypt_body;
++ i2a_ASN1_INTEGER;
++ i2a_ASN1_OBJECT;
++ i2a_ASN1_STRING;
++ i2d_ASN1_BIT_STRING;
++ i2d_ASN1_BOOLEAN;
++ i2d_ASN1_HEADER;
++ i2d_ASN1_IA5STRING;
++ i2d_ASN1_INTEGER;
++ i2d_ASN1_OBJECT;
++ i2d_ASN1_OCTET_STRING;
++ i2d_ASN1_PRINTABLE;
++ i2d_ASN1_SET;
++ i2d_ASN1_TYPE;
++ i2d_ASN1_UTCTIME;
++ i2d_ASN1_bytes;
++ i2d_DHparams;
++ i2d_DSAPrivateKey;
++ i2d_DSAPrivateKey_bio;
++ i2d_DSAPrivateKey_fp;
++ i2d_DSAPublicKey;
++ i2d_DSAparams;
++ i2d_NETSCAPE_SPKAC;
++ i2d_NETSCAPE_SPKI;
++ i2d_Netscape_RSA;
++ i2d_PKCS7;
++ i2d_PKCS7_DIGEST;
++ i2d_PKCS7_ENCRYPT;
++ i2d_PKCS7_ENC_CONTENT;
++ i2d_PKCS7_ENVELOPE;
++ i2d_PKCS7_ISSUER_AND_SERIAL;
++ i2d_PKCS7_RECIP_INFO;
++ i2d_PKCS7_SIGNED;
++ i2d_PKCS7_SIGNER_INFO;
++ i2d_PKCS7_SIGN_ENVELOPE;
++ i2d_PKCS7_bio;
++ i2d_PKCS7_fp;
++ i2d_PrivateKey;
++ i2d_PublicKey;
++ i2d_RSAPrivateKey;
++ i2d_RSAPrivateKey_bio;
++ i2d_RSAPrivateKey_fp;
++ i2d_RSAPublicKey;
++ i2d_X509;
++ i2d_X509_ALGOR;
++ i2d_X509_ATTRIBUTE;
++ i2d_X509_CINF;
++ i2d_X509_CRL;
++ i2d_X509_CRL_INFO;
++ i2d_X509_CRL_bio;
++ i2d_X509_CRL_fp;
++ i2d_X509_EXTENSION;
++ i2d_X509_NAME;
++ i2d_X509_NAME_ENTRY;
++ i2d_X509_PKEY;
++ i2d_X509_PUBKEY;
++ i2d_X509_REQ;
++ i2d_X509_REQ_INFO;
++ i2d_X509_REQ_bio;
++ i2d_X509_REQ_fp;
++ i2d_X509_REVOKED;
++ i2d_X509_SIG;
++ i2d_X509_VAL;
++ i2d_X509_bio;
++ i2d_X509_fp;
++ idea_cbc_encrypt;
++ idea_cfb64_encrypt;
++ idea_ecb_encrypt;
++ idea_encrypt;
++ idea_ofb64_encrypt;
++ idea_options;
++ idea_set_decrypt_key;
++ idea_set_encrypt_key;
++ lh_delete;
++ lh_doall;
++ lh_doall_arg;
++ lh_free;
++ lh_insert;
++ lh_new;
++ lh_node_stats;
++ lh_node_stats_bio;
++ lh_node_usage_stats;
++ lh_node_usage_stats_bio;
++ lh_retrieve;
++ lh_stats;
++ lh_stats_bio;
++ lh_strhash;
++ sk_delete;
++ sk_delete_ptr;
++ sk_dup;
++ sk_find;
++ sk_free;
++ sk_insert;
++ sk_new;
++ sk_pop;
++ sk_pop_free;
++ sk_push;
++ sk_set_cmp_func;
++ sk_shift;
++ sk_unshift;
++ sk_zero;
++ BIO_f_nbio_test;
++ ASN1_TYPE_get;
++ ASN1_TYPE_set;
++ PKCS7_content_free;
++ ERR_load_PKCS7_strings;
++ X509_find_by_issuer_and_serial;
++ X509_find_by_subject;
++ PKCS7_ctrl;
++ PKCS7_set_type;
++ PKCS7_set_content;
++ PKCS7_SIGNER_INFO_set;
++ PKCS7_add_signer;
++ PKCS7_add_certificate;
++ PKCS7_add_crl;
++ PKCS7_content_new;
++ PKCS7_dataSign;
++ PKCS7_dataVerify;
++ PKCS7_dataInit;
++ PKCS7_add_signature;
++ PKCS7_cert_from_signer_info;
++ PKCS7_get_signer_info;
++ EVP_delete_alias;
++ EVP_mdc2;
++ PEM_read_bio_RSAPublicKey;
++ PEM_write_bio_RSAPublicKey;
++ d2i_RSAPublicKey_bio;
++ i2d_RSAPublicKey_bio;
++ PEM_read_RSAPublicKey;
++ PEM_write_RSAPublicKey;
++ d2i_RSAPublicKey_fp;
++ i2d_RSAPublicKey_fp;
++ BIO_copy_next_retry;
++ RSA_flags;
++ X509_STORE_add_crl;
++ X509_load_crl_file;
++ EVP_rc2_40_cbc;
++ EVP_rc4_40;
++ EVP_CIPHER_CTX_init;
++ HMAC;
++ HMAC_Init;
++ HMAC_Update;
++ HMAC_Final;
++ ERR_get_next_error_library;
++ EVP_PKEY_cmp_parameters;
++ HMAC_cleanup;
++ BIO_ptr_ctrl;
++ BIO_new_file_internal;
++ BIO_new_fp_internal;
++ BIO_s_file_internal;
++ BN_BLINDING_convert;
++ BN_BLINDING_invert;
++ BN_BLINDING_update;
++ RSA_blinding_on;
++ RSA_blinding_off;
++ i2t_ASN1_OBJECT;
++ BN_BLINDING_new;
++ BN_BLINDING_free;
++ EVP_cast5_cbc;
++ EVP_cast5_cfb64;
++ EVP_cast5_ecb;
++ EVP_cast5_ofb;
++ BF_decrypt;
++ CAST_set_key;
++ CAST_encrypt;
++ CAST_decrypt;
++ CAST_ecb_encrypt;
++ CAST_cbc_encrypt;
++ CAST_cfb64_encrypt;
++ CAST_ofb64_encrypt;
++ RC2_decrypt;
++ OBJ_create_objects;
++ BN_exp;
++ BN_mul_word;
++ BN_sub_word;
++ BN_dec2bn;
++ BN_bn2dec;
++ BIO_ghbn_ctrl;
++ CRYPTO_free_ex_data;
++ CRYPTO_get_ex_data;
++ CRYPTO_set_ex_data;
++ ERR_load_CRYPTO_strings;
++ ERR_load_CRYPTOlib_strings;
++ EVP_PKEY_bits;
++ MD5_Transform;
++ SHA1_Transform;
++ SHA_Transform;
++ X509_STORE_CTX_get_chain;
++ X509_STORE_CTX_get_current_cert;
++ X509_STORE_CTX_get_error;
++ X509_STORE_CTX_get_error_depth;
++ X509_STORE_CTX_get_ex_data;
++ X509_STORE_CTX_set_cert;
++ X509_STORE_CTX_set_chain;
++ X509_STORE_CTX_set_error;
++ X509_STORE_CTX_set_ex_data;
++ CRYPTO_dup_ex_data;
++ CRYPTO_get_new_lockid;
++ CRYPTO_new_ex_data;
++ RSA_set_ex_data;
++ RSA_get_ex_data;
++ RSA_get_ex_new_index;
++ RSA_padding_add_PKCS1_type_1;
++ RSA_padding_add_PKCS1_type_2;
++ RSA_padding_add_SSLv23;
++ RSA_padding_add_none;
++ RSA_padding_check_PKCS1_type_1;
++ RSA_padding_check_PKCS1_type_2;
++ RSA_padding_check_SSLv23;
++ RSA_padding_check_none;
++ bn_add_words;
++ d2i_Netscape_RSA_2;
++ CRYPTO_get_ex_new_index;
++ RIPEMD160_Init;
++ RIPEMD160_Update;
++ RIPEMD160_Final;
++ RIPEMD160;
++ RIPEMD160_Transform;
++ RC5_32_set_key;
++ RC5_32_ecb_encrypt;
++ RC5_32_encrypt;
++ RC5_32_decrypt;
++ RC5_32_cbc_encrypt;
++ RC5_32_cfb64_encrypt;
++ RC5_32_ofb64_encrypt;
++ BN_bn2mpi;
++ BN_mpi2bn;
++ ASN1_BIT_STRING_get_bit;
++ ASN1_BIT_STRING_set_bit;
++ BIO_get_ex_data;
++ BIO_get_ex_new_index;
++ BIO_set_ex_data;
++ X509v3_get_key_usage;
++ X509v3_set_key_usage;
++ a2i_X509v3_key_usage;
++ i2a_X509v3_key_usage;
++ EVP_PKEY_decrypt;
++ EVP_PKEY_encrypt;
++ PKCS7_RECIP_INFO_set;
++ PKCS7_add_recipient;
++ PKCS7_add_recipient_info;
++ PKCS7_set_cipher;
++ ASN1_TYPE_get_int_octetstring;
++ ASN1_TYPE_get_octetstring;
++ ASN1_TYPE_set_int_octetstring;
++ ASN1_TYPE_set_octetstring;
++ ASN1_UTCTIME_set_string;
++ ERR_add_error_data;
++ ERR_set_error_data;
++ EVP_CIPHER_asn1_to_param;
++ EVP_CIPHER_param_to_asn1;
++ EVP_CIPHER_get_asn1_iv;
++ EVP_CIPHER_set_asn1_iv;
++ EVP_rc5_32_12_16_cbc;
++ EVP_rc5_32_12_16_cfb64;
++ EVP_rc5_32_12_16_ecb;
++ EVP_rc5_32_12_16_ofb;
++ asn1_add_error;
++ d2i_ASN1_BMPSTRING;
++ i2d_ASN1_BMPSTRING;
++ BIO_f_ber;
++ BN_init;
++ COMP_CTX_new;
++ COMP_CTX_free;
++ COMP_CTX_compress_block;
++ COMP_CTX_expand_block;
++ X509_STORE_CTX_get_ex_new_index;
++ OBJ_NAME_add;
++ BIO_socket_nbio;
++ EVP_rc2_64_cbc;
++ OBJ_NAME_cleanup;
++ OBJ_NAME_get;
++ OBJ_NAME_init;
++ OBJ_NAME_new_index;
++ OBJ_NAME_remove;
++ BN_MONT_CTX_copy;
++ BIO_new_socks4a_connect;
++ BIO_s_socks4a_connect;
++ PROXY_set_connect_mode;
++ RAND_SSLeay;
++ RAND_set_rand_method;
++ RSA_memory_lock;
++ bn_sub_words;
++ bn_mul_normal;
++ bn_mul_comba8;
++ bn_mul_comba4;
++ bn_sqr_normal;
++ bn_sqr_comba8;
++ bn_sqr_comba4;
++ bn_cmp_words;
++ bn_mul_recursive;
++ bn_mul_part_recursive;
++ bn_sqr_recursive;
++ bn_mul_low_normal;
++ BN_RECP_CTX_init;
++ BN_RECP_CTX_new;
++ BN_RECP_CTX_free;
++ BN_RECP_CTX_set;
++ BN_mod_mul_reciprocal;
++ BN_mod_exp_recp;
++ BN_div_recp;
++ BN_CTX_init;
++ BN_MONT_CTX_init;
++ RAND_get_rand_method;
++ PKCS7_add_attribute;
++ PKCS7_add_signed_attribute;
++ PKCS7_digest_from_attributes;
++ PKCS7_get_attribute;
++ PKCS7_get_issuer_and_serial;
++ PKCS7_get_signed_attribute;
++ COMP_compress_block;
++ COMP_expand_block;
++ COMP_rle;
++ COMP_zlib;
++ ms_time_diff;
++ ms_time_new;
++ ms_time_free;
++ ms_time_cmp;
++ ms_time_get;
++ PKCS7_set_attributes;
++ PKCS7_set_signed_attributes;
++ X509_ATTRIBUTE_create;
++ X509_ATTRIBUTE_dup;
++ ASN1_GENERALIZEDTIME_check;
++ ASN1_GENERALIZEDTIME_print;
++ ASN1_GENERALIZEDTIME_set;
++ ASN1_GENERALIZEDTIME_set_string;
++ ASN1_TIME_print;
++ BASIC_CONSTRAINTS_free;
++ BASIC_CONSTRAINTS_new;
++ ERR_load_X509V3_strings;
++ NETSCAPE_CERT_SEQUENCE_free;
++ NETSCAPE_CERT_SEQUENCE_new;
++ OBJ_txt2obj;
++ PEM_read_NETSCAPE_CERT_SEQUENCE;
++ PEM_read_NS_CERT_SEQ;
++ PEM_read_bio_NETSCAPE_CERT_SEQUENCE;
++ PEM_read_bio_NS_CERT_SEQ;
++ PEM_write_NETSCAPE_CERT_SEQUENCE;
++ PEM_write_NS_CERT_SEQ;
++ PEM_write_bio_NETSCAPE_CERT_SEQUENCE;
++ PEM_write_bio_NS_CERT_SEQ;
++ X509V3_EXT_add;
++ X509V3_EXT_add_alias;
++ X509V3_EXT_add_conf;
++ X509V3_EXT_cleanup;
++ X509V3_EXT_conf;
++ X509V3_EXT_conf_nid;
++ X509V3_EXT_get;
++ X509V3_EXT_get_nid;
++ X509V3_EXT_print;
++ X509V3_EXT_print_fp;
++ X509V3_add_standard_extensions;
++ X509V3_add_value;
++ X509V3_add_value_bool;
++ X509V3_add_value_int;
++ X509V3_conf_free;
++ X509V3_get_value_bool;
++ X509V3_get_value_int;
++ X509V3_parse_list;
++ d2i_ASN1_GENERALIZEDTIME;
++ d2i_ASN1_TIME;
++ d2i_BASIC_CONSTRAINTS;
++ d2i_NETSCAPE_CERT_SEQUENCE;
++ d2i_ext_ku;
++ ext_ku_free;
++ ext_ku_new;
++ i2d_ASN1_GENERALIZEDTIME;
++ i2d_ASN1_TIME;
++ i2d_BASIC_CONSTRAINTS;
++ i2d_NETSCAPE_CERT_SEQUENCE;
++ i2d_ext_ku;
++ EVP_MD_CTX_copy;
++ i2d_ASN1_ENUMERATED;
++ d2i_ASN1_ENUMERATED;
++ ASN1_ENUMERATED_set;
++ ASN1_ENUMERATED_get;
++ BN_to_ASN1_ENUMERATED;
++ ASN1_ENUMERATED_to_BN;
++ i2a_ASN1_ENUMERATED;
++ a2i_ASN1_ENUMERATED;
++ i2d_GENERAL_NAME;
++ d2i_GENERAL_NAME;
++ GENERAL_NAME_new;
++ GENERAL_NAME_free;
++ GENERAL_NAMES_new;
++ GENERAL_NAMES_free;
++ d2i_GENERAL_NAMES;
++ i2d_GENERAL_NAMES;
++ i2v_GENERAL_NAMES;
++ i2s_ASN1_OCTET_STRING;
++ s2i_ASN1_OCTET_STRING;
++ X509V3_EXT_check_conf;
++ hex_to_string;
++ string_to_hex;
++ DES_ede3_cbcm_encrypt;
++ RSA_padding_add_PKCS1_OAEP;
++ RSA_padding_check_PKCS1_OAEP;
++ X509_CRL_print_fp;
++ X509_CRL_print;
++ i2v_GENERAL_NAME;
++ v2i_GENERAL_NAME;
++ i2d_PKEY_USAGE_PERIOD;
++ d2i_PKEY_USAGE_PERIOD;
++ PKEY_USAGE_PERIOD_new;
++ PKEY_USAGE_PERIOD_free;
++ v2i_GENERAL_NAMES;
++ i2s_ASN1_INTEGER;
++ X509V3_EXT_d2i;
++ name_cmp;
++ str_dup;
++ i2s_ASN1_ENUMERATED;
++ i2s_ASN1_ENUMERATED_TABLE;
++ BIO_s_log;
++ BIO_f_reliable;
++ PKCS7_dataFinal;
++ PKCS7_dataDecode;
++ X509V3_EXT_CRL_add_conf;
++ BN_set_params;
++ BN_get_params;
++ BIO_get_ex_num;
++ BIO_set_ex_free_func;
++ EVP_ripemd160;
++ ASN1_TIME_set;
++ i2d_AUTHORITY_KEYID;
++ d2i_AUTHORITY_KEYID;
++ AUTHORITY_KEYID_new;
++ AUTHORITY_KEYID_free;
++ ASN1_seq_unpack;
++ ASN1_seq_pack;
++ ASN1_unpack_string;
++ ASN1_pack_string;
++ PKCS12_pack_safebag;
++ PKCS12_MAKE_KEYBAG;
++ PKCS8_encrypt;
++ PKCS12_MAKE_SHKEYBAG;
++ PKCS12_pack_p7data;
++ PKCS12_pack_p7encdata;
++ PKCS12_add_localkeyid;
++ PKCS12_add_friendlyname_asc;
++ PKCS12_add_friendlyname_uni;
++ PKCS12_get_friendlyname;
++ PKCS12_pbe_crypt;
++ PKCS12_decrypt_d2i;
++ PKCS12_i2d_encrypt;
++ PKCS12_init;
++ PKCS12_key_gen_asc;
++ PKCS12_key_gen_uni;
++ PKCS12_gen_mac;
++ PKCS12_verify_mac;
++ PKCS12_set_mac;
++ PKCS12_setup_mac;
++ OPENSSL_asc2uni;
++ OPENSSL_uni2asc;
++ i2d_PKCS12_BAGS;
++ PKCS12_BAGS_new;
++ d2i_PKCS12_BAGS;
++ PKCS12_BAGS_free;
++ i2d_PKCS12;
++ d2i_PKCS12;
++ PKCS12_new;
++ PKCS12_free;
++ i2d_PKCS12_MAC_DATA;
++ PKCS12_MAC_DATA_new;
++ d2i_PKCS12_MAC_DATA;
++ PKCS12_MAC_DATA_free;
++ i2d_PKCS12_SAFEBAG;
++ PKCS12_SAFEBAG_new;
++ d2i_PKCS12_SAFEBAG;
++ PKCS12_SAFEBAG_free;
++ ERR_load_PKCS12_strings;
++ PKCS12_PBE_add;
++ PKCS8_add_keyusage;
++ PKCS12_get_attr_gen;
++ PKCS12_parse;
++ PKCS12_create;
++ i2d_PKCS12_bio;
++ i2d_PKCS12_fp;
++ d2i_PKCS12_bio;
++ d2i_PKCS12_fp;
++ i2d_PBEPARAM;
++ PBEPARAM_new;
++ d2i_PBEPARAM;
++ PBEPARAM_free;
++ i2d_PKCS8_PRIV_KEY_INFO;
++ PKCS8_PRIV_KEY_INFO_new;
++ d2i_PKCS8_PRIV_KEY_INFO;
++ PKCS8_PRIV_KEY_INFO_free;
++ EVP_PKCS82PKEY;
++ EVP_PKEY2PKCS8;
++ PKCS8_set_broken;
++ EVP_PBE_ALGOR_CipherInit;
++ EVP_PBE_alg_add;
++ PKCS5_pbe_set;
++ EVP_PBE_cleanup;
++ i2d_SXNET;
++ d2i_SXNET;
++ SXNET_new;
++ SXNET_free;
++ i2d_SXNETID;
++ d2i_SXNETID;
++ SXNETID_new;
++ SXNETID_free;
++ DSA_SIG_new;
++ DSA_SIG_free;
++ DSA_do_sign;
++ DSA_do_verify;
++ d2i_DSA_SIG;
++ i2d_DSA_SIG;
++ i2d_ASN1_VISIBLESTRING;
++ d2i_ASN1_VISIBLESTRING;
++ i2d_ASN1_UTF8STRING;
++ d2i_ASN1_UTF8STRING;
++ i2d_DIRECTORYSTRING;
++ d2i_DIRECTORYSTRING;
++ i2d_DISPLAYTEXT;
++ d2i_DISPLAYTEXT;
++ d2i_ASN1_SET_OF_X509;
++ i2d_ASN1_SET_OF_X509;
++ i2d_PBKDF2PARAM;
++ PBKDF2PARAM_new;
++ d2i_PBKDF2PARAM;
++ PBKDF2PARAM_free;
++ i2d_PBE2PARAM;
++ PBE2PARAM_new;
++ d2i_PBE2PARAM;
++ PBE2PARAM_free;
++ d2i_ASN1_SET_OF_GENERAL_NAME;
++ i2d_ASN1_SET_OF_GENERAL_NAME;
++ d2i_ASN1_SET_OF_SXNETID;
++ i2d_ASN1_SET_OF_SXNETID;
++ d2i_ASN1_SET_OF_POLICYQUALINFO;
++ i2d_ASN1_SET_OF_POLICYQUALINFO;
++ d2i_ASN1_SET_OF_POLICYINFO;
++ i2d_ASN1_SET_OF_POLICYINFO;
++ SXNET_add_id_asc;
++ SXNET_add_id_ulong;
++ SXNET_add_id_INTEGER;
++ SXNET_get_id_asc;
++ SXNET_get_id_ulong;
++ SXNET_get_id_INTEGER;
++ X509V3_set_conf_lhash;
++ i2d_CERTIFICATEPOLICIES;
++ CERTIFICATEPOLICIES_new;
++ CERTIFICATEPOLICIES_free;
++ d2i_CERTIFICATEPOLICIES;
++ i2d_POLICYINFO;
++ POLICYINFO_new;
++ d2i_POLICYINFO;
++ POLICYINFO_free;
++ i2d_POLICYQUALINFO;
++ POLICYQUALINFO_new;
++ d2i_POLICYQUALINFO;
++ POLICYQUALINFO_free;
++ i2d_USERNOTICE;
++ USERNOTICE_new;
++ d2i_USERNOTICE;
++ USERNOTICE_free;
++ i2d_NOTICEREF;
++ NOTICEREF_new;
++ d2i_NOTICEREF;
++ NOTICEREF_free;
++ X509V3_get_string;
++ X509V3_get_section;
++ X509V3_string_free;
++ X509V3_section_free;
++ X509V3_set_ctx;
++ s2i_ASN1_INTEGER;
++ CRYPTO_set_locked_mem_functions;
++ CRYPTO_get_locked_mem_functions;
++ CRYPTO_malloc_locked;
++ CRYPTO_free_locked;
++ BN_mod_exp2_mont;
++ ERR_get_error_line_data;
++ ERR_peek_error_line_data;
++ PKCS12_PBE_keyivgen;
++ X509_ALGOR_dup;
++ d2i_ASN1_SET_OF_DIST_POINT;
++ i2d_ASN1_SET_OF_DIST_POINT;
++ i2d_CRL_DIST_POINTS;
++ CRL_DIST_POINTS_new;
++ CRL_DIST_POINTS_free;
++ d2i_CRL_DIST_POINTS;
++ i2d_DIST_POINT;
++ DIST_POINT_new;
++ d2i_DIST_POINT;
++ DIST_POINT_free;
++ i2d_DIST_POINT_NAME;
++ DIST_POINT_NAME_new;
++ DIST_POINT_NAME_free;
++ d2i_DIST_POINT_NAME;
++ X509V3_add_value_uchar;
++ d2i_ASN1_SET_OF_X509_ATTRIBUTE;
++ i2d_ASN1_SET_OF_ASN1_TYPE;
++ d2i_ASN1_SET_OF_X509_EXTENSION;
++ d2i_ASN1_SET_OF_X509_NAME_ENTRY;
++ d2i_ASN1_SET_OF_ASN1_TYPE;
++ i2d_ASN1_SET_OF_X509_ATTRIBUTE;
++ i2d_ASN1_SET_OF_X509_EXTENSION;
++ i2d_ASN1_SET_OF_X509_NAME_ENTRY;
++ X509V3_EXT_i2d;
++ X509V3_EXT_val_prn;
++ X509V3_EXT_add_list;
++ EVP_CIPHER_type;
++ EVP_PBE_CipherInit;
++ X509V3_add_value_bool_nf;
++ d2i_ASN1_UINTEGER;
++ sk_value;
++ sk_num;
++ sk_set;
++ i2d_ASN1_SET_OF_X509_REVOKED;
++ sk_sort;
++ d2i_ASN1_SET_OF_X509_REVOKED;
++ i2d_ASN1_SET_OF_X509_ALGOR;
++ i2d_ASN1_SET_OF_X509_CRL;
++ d2i_ASN1_SET_OF_X509_ALGOR;
++ d2i_ASN1_SET_OF_X509_CRL;
++ i2d_ASN1_SET_OF_PKCS7_SIGNER_INFO;
++ i2d_ASN1_SET_OF_PKCS7_RECIP_INFO;
++ d2i_ASN1_SET_OF_PKCS7_SIGNER_INFO;
++ d2i_ASN1_SET_OF_PKCS7_RECIP_INFO;
++ PKCS5_PBE_add;
++ PEM_write_bio_PKCS8;
++ i2d_PKCS8_fp;
++ PEM_read_bio_PKCS8_PRIV_KEY_INFO;
++ PEM_read_bio_P8_PRIV_KEY_INFO;
++ d2i_PKCS8_bio;
++ d2i_PKCS8_PRIV_KEY_INFO_fp;
++ PEM_write_bio_PKCS8_PRIV_KEY_INFO;
++ PEM_write_bio_P8_PRIV_KEY_INFO;
++ PEM_read_PKCS8;
++ d2i_PKCS8_PRIV_KEY_INFO_bio;
++ d2i_PKCS8_fp;
++ PEM_write_PKCS8;
++ PEM_read_PKCS8_PRIV_KEY_INFO;
++ PEM_read_P8_PRIV_KEY_INFO;
++ PEM_read_bio_PKCS8;
++ PEM_write_PKCS8_PRIV_KEY_INFO;
++ PEM_write_P8_PRIV_KEY_INFO;
++ PKCS5_PBE_keyivgen;
++ i2d_PKCS8_bio;
++ i2d_PKCS8_PRIV_KEY_INFO_fp;
++ i2d_PKCS8_PRIV_KEY_INFO_bio;
++ BIO_s_bio;
++ PKCS5_pbe2_set;
++ PKCS5_PBKDF2_HMAC_SHA1;
++ PKCS5_v2_PBE_keyivgen;
++ PEM_write_bio_PKCS8PrivateKey;
++ PEM_write_PKCS8PrivateKey;
++ BIO_ctrl_get_read_request;
++ BIO_ctrl_pending;
++ BIO_ctrl_wpending;
++ BIO_new_bio_pair;
++ BIO_ctrl_get_write_guarantee;
++ CRYPTO_num_locks;
++ CONF_load_bio;
++ CONF_load_fp;
++ i2d_ASN1_SET_OF_ASN1_OBJECT;
++ d2i_ASN1_SET_OF_ASN1_OBJECT;
++ PKCS7_signatureVerify;
++ RSA_set_method;
++ RSA_get_method;
++ RSA_get_default_method;
++ RSA_check_key;
++ OBJ_obj2txt;
++ DSA_dup_DH;
++ X509_REQ_get_extensions;
++ X509_REQ_set_extension_nids;
++ BIO_nwrite;
++ X509_REQ_extension_nid;
++ BIO_nread;
++ X509_REQ_get_extension_nids;
++ BIO_nwrite0;
++ X509_REQ_add_extensions_nid;
++ BIO_nread0;
++ X509_REQ_add_extensions;
++ BIO_new_mem_buf;
++ DH_set_ex_data;
++ DH_set_method;
++ DSA_OpenSSL;
++ DH_get_ex_data;
++ DH_get_ex_new_index;
++ DSA_new_method;
++ DH_new_method;
++ DH_OpenSSL;
++ DSA_get_ex_new_index;
++ DH_get_default_method;
++ DSA_set_ex_data;
++ DH_set_default_method;
++ DSA_get_ex_data;
++ X509V3_EXT_REQ_add_conf;
++ NETSCAPE_SPKI_print;
++ NETSCAPE_SPKI_set_pubkey;
++ NETSCAPE_SPKI_b64_encode;
++ NETSCAPE_SPKI_get_pubkey;
++ NETSCAPE_SPKI_b64_decode;
++ UTF8_putc;
++ UTF8_getc;
++ RSA_null_method;
++ ASN1_tag2str;
++ BIO_ctrl_reset_read_request;
++ DISPLAYTEXT_new;
++ ASN1_GENERALIZEDTIME_free;
++ X509_REVOKED_get_ext_d2i;
++ X509_set_ex_data;
++ X509_reject_set_bit_asc;
++ X509_NAME_add_entry_by_txt;
++ X509_NAME_add_entry_by_NID;
++ X509_PURPOSE_get0;
++ PEM_read_X509_AUX;
++ d2i_AUTHORITY_INFO_ACCESS;
++ PEM_write_PUBKEY;
++ ACCESS_DESCRIPTION_new;
++ X509_CERT_AUX_free;
++ d2i_ACCESS_DESCRIPTION;
++ X509_trust_clear;
++ X509_TRUST_add;
++ ASN1_VISIBLESTRING_new;
++ X509_alias_set1;
++ ASN1_PRINTABLESTRING_free;
++ EVP_PKEY_get1_DSA;
++ ASN1_BMPSTRING_new;
++ ASN1_mbstring_copy;
++ ASN1_UTF8STRING_new;
++ DSA_get_default_method;
++ i2d_ASN1_SET_OF_ACCESS_DESCRIPTION;
++ ASN1_T61STRING_free;
++ DSA_set_method;
++ X509_get_ex_data;
++ ASN1_STRING_type;
++ X509_PURPOSE_get_by_sname;
++ ASN1_TIME_free;
++ ASN1_OCTET_STRING_cmp;
++ ASN1_BIT_STRING_new;
++ X509_get_ext_d2i;
++ PEM_read_bio_X509_AUX;
++ ASN1_STRING_set_default_mask_asc;
++ ASN1_STRING_set_def_mask_asc;
++ PEM_write_bio_RSA_PUBKEY;
++ ASN1_INTEGER_cmp;
++ d2i_RSA_PUBKEY_fp;
++ X509_trust_set_bit_asc;
++ PEM_write_bio_DSA_PUBKEY;
++ X509_STORE_CTX_free;
++ EVP_PKEY_set1_DSA;
++ i2d_DSA_PUBKEY_fp;
++ X509_load_cert_crl_file;
++ ASN1_TIME_new;
++ i2d_RSA_PUBKEY;
++ X509_STORE_CTX_purpose_inherit;
++ PEM_read_RSA_PUBKEY;
++ d2i_X509_AUX;
++ i2d_DSA_PUBKEY;
++ X509_CERT_AUX_print;
++ PEM_read_DSA_PUBKEY;
++ i2d_RSA_PUBKEY_bio;
++ ASN1_BIT_STRING_num_asc;
++ i2d_PUBKEY;
++ ASN1_UTCTIME_free;
++ DSA_set_default_method;
++ X509_PURPOSE_get_by_id;
++ ACCESS_DESCRIPTION_free;
++ PEM_read_bio_PUBKEY;
++ ASN1_STRING_set_by_NID;
++ X509_PURPOSE_get_id;
++ DISPLAYTEXT_free;
++ OTHERNAME_new;
++ X509_CERT_AUX_new;
++ X509_TRUST_cleanup;
++ X509_NAME_add_entry_by_OBJ;
++ X509_CRL_get_ext_d2i;
++ X509_PURPOSE_get0_name;
++ PEM_read_PUBKEY;
++ i2d_DSA_PUBKEY_bio;
++ i2d_OTHERNAME;
++ ASN1_OCTET_STRING_free;
++ ASN1_BIT_STRING_set_asc;
++ X509_get_ex_new_index;
++ ASN1_STRING_TABLE_cleanup;
++ X509_TRUST_get_by_id;
++ X509_PURPOSE_get_trust;
++ ASN1_STRING_length;
++ d2i_ASN1_SET_OF_ACCESS_DESCRIPTION;
++ ASN1_PRINTABLESTRING_new;
++ X509V3_get_d2i;
++ ASN1_ENUMERATED_free;
++ i2d_X509_CERT_AUX;
++ X509_STORE_CTX_set_trust;
++ ASN1_STRING_set_default_mask;
++ X509_STORE_CTX_new;
++ EVP_PKEY_get1_RSA;
++ DIRECTORYSTRING_free;
++ PEM_write_X509_AUX;
++ ASN1_OCTET_STRING_set;
++ d2i_DSA_PUBKEY_fp;
++ d2i_RSA_PUBKEY;
++ X509_TRUST_get0_name;
++ X509_TRUST_get0;
++ AUTHORITY_INFO_ACCESS_free;
++ ASN1_IA5STRING_new;
++ d2i_DSA_PUBKEY;
++ X509_check_purpose;
++ ASN1_ENUMERATED_new;
++ d2i_RSA_PUBKEY_bio;
++ d2i_PUBKEY;
++ X509_TRUST_get_trust;
++ X509_TRUST_get_flags;
++ ASN1_BMPSTRING_free;
++ ASN1_T61STRING_new;
++ ASN1_UTCTIME_new;
++ i2d_AUTHORITY_INFO_ACCESS;
++ EVP_PKEY_set1_RSA;
++ X509_STORE_CTX_set_purpose;
++ ASN1_IA5STRING_free;
++ PEM_write_bio_X509_AUX;
++ X509_PURPOSE_get_count;
++ CRYPTO_add_info;
++ X509_NAME_ENTRY_create_by_txt;
++ ASN1_STRING_get_default_mask;
++ X509_alias_get0;
++ ASN1_STRING_data;
++ i2d_ACCESS_DESCRIPTION;
++ X509_trust_set_bit;
++ ASN1_BIT_STRING_free;
++ PEM_read_bio_RSA_PUBKEY;
++ X509_add1_reject_object;
++ X509_check_trust;
++ PEM_read_bio_DSA_PUBKEY;
++ X509_PURPOSE_add;
++ ASN1_STRING_TABLE_get;
++ ASN1_UTF8STRING_free;
++ d2i_DSA_PUBKEY_bio;
++ PEM_write_RSA_PUBKEY;
++ d2i_OTHERNAME;
++ X509_reject_set_bit;
++ PEM_write_DSA_PUBKEY;
++ X509_PURPOSE_get0_sname;
++ EVP_PKEY_set1_DH;
++ ASN1_OCTET_STRING_dup;
++ ASN1_BIT_STRING_set;
++ X509_TRUST_get_count;
++ ASN1_INTEGER_free;
++ OTHERNAME_free;
++ i2d_RSA_PUBKEY_fp;
++ ASN1_INTEGER_dup;
++ d2i_X509_CERT_AUX;
++ PEM_write_bio_PUBKEY;
++ ASN1_VISIBLESTRING_free;
++ X509_PURPOSE_cleanup;
++ ASN1_mbstring_ncopy;
++ ASN1_GENERALIZEDTIME_new;
++ EVP_PKEY_get1_DH;
++ ASN1_OCTET_STRING_new;
++ ASN1_INTEGER_new;
++ i2d_X509_AUX;
++ ASN1_BIT_STRING_name_print;
++ X509_cmp;
++ ASN1_STRING_length_set;
++ DIRECTORYSTRING_new;
++ X509_add1_trust_object;
++ PKCS12_newpass;
++ SMIME_write_PKCS7;
++ SMIME_read_PKCS7;
++ DES_set_key_checked;
++ PKCS7_verify;
++ PKCS7_encrypt;
++ DES_set_key_unchecked;
++ SMIME_crlf_copy;
++ i2d_ASN1_PRINTABLESTRING;
++ PKCS7_get0_signers;
++ PKCS7_decrypt;
++ SMIME_text;
++ PKCS7_simple_smimecap;
++ PKCS7_get_smimecap;
++ PKCS7_sign;
++ PKCS7_add_attrib_smimecap;
++ CRYPTO_dbg_set_options;
++ CRYPTO_remove_all_info;
++ CRYPTO_get_mem_debug_functions;
++ CRYPTO_is_mem_check_on;
++ CRYPTO_set_mem_debug_functions;
++ CRYPTO_pop_info;
++ CRYPTO_push_info_;
++ CRYPTO_set_mem_debug_options;
++ PEM_write_PKCS8PrivateKey_nid;
++ PEM_write_bio_PKCS8PrivateKey_nid;
++ PEM_write_bio_PKCS8PrivKey_nid;
++ d2i_PKCS8PrivateKey_bio;
++ ASN1_NULL_free;
++ d2i_ASN1_NULL;
++ ASN1_NULL_new;
++ i2d_PKCS8PrivateKey_bio;
++ i2d_PKCS8PrivateKey_fp;
++ i2d_ASN1_NULL;
++ i2d_PKCS8PrivateKey_nid_fp;
++ d2i_PKCS8PrivateKey_fp;
++ i2d_PKCS8PrivateKey_nid_bio;
++ i2d_PKCS8PrivateKeyInfo_fp;
++ i2d_PKCS8PrivateKeyInfo_bio;
++ PEM_cb;
++ i2d_PrivateKey_fp;
++ d2i_PrivateKey_bio;
++ d2i_PrivateKey_fp;
++ i2d_PrivateKey_bio;
++ X509_reject_clear;
++ X509_TRUST_set_default;
++ d2i_AutoPrivateKey;
++ X509_ATTRIBUTE_get0_type;
++ X509_ATTRIBUTE_set1_data;
++ X509at_get_attr;
++ X509at_get_attr_count;
++ X509_ATTRIBUTE_create_by_NID;
++ X509_ATTRIBUTE_set1_object;
++ X509_ATTRIBUTE_count;
++ X509_ATTRIBUTE_create_by_OBJ;
++ X509_ATTRIBUTE_get0_object;
++ X509at_get_attr_by_NID;
++ X509at_add1_attr;
++ X509_ATTRIBUTE_get0_data;
++ X509at_delete_attr;
++ X509at_get_attr_by_OBJ;
++ RAND_add;
++ BIO_number_written;
++ BIO_number_read;
++ X509_STORE_CTX_get1_chain;
++ ERR_load_RAND_strings;
++ RAND_pseudo_bytes;
++ X509_REQ_get_attr_by_NID;
++ X509_REQ_get_attr;
++ X509_REQ_add1_attr_by_NID;
++ X509_REQ_get_attr_by_OBJ;
++ X509at_add1_attr_by_NID;
++ X509_REQ_add1_attr_by_OBJ;
++ X509_REQ_get_attr_count;
++ X509_REQ_add1_attr;
++ X509_REQ_delete_attr;
++ X509at_add1_attr_by_OBJ;
++ X509_REQ_add1_attr_by_txt;
++ X509_ATTRIBUTE_create_by_txt;
++ X509at_add1_attr_by_txt;
++ BN_pseudo_rand;
++ BN_is_prime_fasttest;
++ BN_CTX_end;
++ BN_CTX_start;
++ BN_CTX_get;
++ EVP_PKEY2PKCS8_broken;
++ ASN1_STRING_TABLE_add;
++ CRYPTO_dbg_get_options;
++ AUTHORITY_INFO_ACCESS_new;
++ CRYPTO_get_mem_debug_options;
++ DES_crypt;
++ PEM_write_bio_X509_REQ_NEW;
++ PEM_write_X509_REQ_NEW;
++ BIO_callback_ctrl;
++ RAND_egd;
++ RAND_status;
++ bn_dump1;
++ DES_check_key_parity;
++ lh_num_items;
++ RAND_event;
++ DSO_new;
++ DSO_new_method;
++ DSO_free;
++ DSO_flags;
++ DSO_up;
++ DSO_set_default_method;
++ DSO_get_default_method;
++ DSO_get_method;
++ DSO_set_method;
++ DSO_load;
++ DSO_bind_var;
++ DSO_METHOD_null;
++ DSO_METHOD_openssl;
++ DSO_METHOD_dlfcn;
++ DSO_METHOD_win32;
++ ERR_load_DSO_strings;
++ DSO_METHOD_dl;
++ NCONF_load;
++ NCONF_load_fp;
++ NCONF_new;
++ NCONF_get_string;
++ NCONF_free;
++ NCONF_get_number;
++ CONF_dump_fp;
++ NCONF_load_bio;
++ NCONF_dump_fp;
++ NCONF_get_section;
++ NCONF_dump_bio;
++ CONF_dump_bio;
++ NCONF_free_data;
++ CONF_set_default_method;
++ ERR_error_string_n;
++ BIO_snprintf;
++ DSO_ctrl;
++ i2d_ASN1_SET_OF_ASN1_INTEGER;
++ i2d_ASN1_SET_OF_PKCS12_SAFEBAG;
++ i2d_ASN1_SET_OF_PKCS7;
++ BIO_vfree;
++ d2i_ASN1_SET_OF_ASN1_INTEGER;
++ d2i_ASN1_SET_OF_PKCS12_SAFEBAG;
++ ASN1_UTCTIME_get;
++ X509_REQ_digest;
++ X509_CRL_digest;
++ d2i_ASN1_SET_OF_PKCS7;
++ EVP_CIPHER_CTX_set_key_length;
++ EVP_CIPHER_CTX_ctrl;
++ BN_mod_exp_mont_word;
++ RAND_egd_bytes;
++ X509_REQ_get1_email;
++ X509_get1_email;
++ X509_email_free;
++ i2d_RSA_NET;
++ d2i_RSA_NET_2;
++ d2i_RSA_NET;
++ DSO_bind_func;
++ CRYPTO_get_new_dynlockid;
++ sk_new_null;
++ CRYPTO_set_dynlock_destroy_callback;
++ CRYPTO_set_dynlock_destroy_cb;
++ CRYPTO_destroy_dynlockid;
++ CRYPTO_set_dynlock_size;
++ CRYPTO_set_dynlock_create_callback;
++ CRYPTO_set_dynlock_create_cb;
++ CRYPTO_set_dynlock_lock_callback;
++ CRYPTO_set_dynlock_lock_cb;
++ CRYPTO_get_dynlock_lock_callback;
++ CRYPTO_get_dynlock_lock_cb;
++ CRYPTO_get_dynlock_destroy_callback;
++ CRYPTO_get_dynlock_destroy_cb;
++ CRYPTO_get_dynlock_value;
++ CRYPTO_get_dynlock_create_callback;
++ CRYPTO_get_dynlock_create_cb;
++ c2i_ASN1_BIT_STRING;
++ i2c_ASN1_BIT_STRING;
++ RAND_poll;
++ c2i_ASN1_INTEGER;
++ i2c_ASN1_INTEGER;
++ BIO_dump_indent;
++ ASN1_parse_dump;
++ c2i_ASN1_OBJECT;
++ X509_NAME_print_ex_fp;
++ ASN1_STRING_print_ex_fp;
++ X509_NAME_print_ex;
++ ASN1_STRING_print_ex;
++ MD4;
++ MD4_Transform;
++ MD4_Final;
++ MD4_Update;
++ MD4_Init;
++ EVP_md4;
++ i2d_PUBKEY_bio;
++ i2d_PUBKEY_fp;
++ d2i_PUBKEY_bio;
++ ASN1_STRING_to_UTF8;
++ BIO_vprintf;
++ BIO_vsnprintf;
++ d2i_PUBKEY_fp;
++ X509_cmp_time;
++ X509_STORE_CTX_set_time;
++ X509_STORE_CTX_get1_issuer;
++ X509_OBJECT_retrieve_match;
++ X509_OBJECT_idx_by_subject;
++ X509_STORE_CTX_set_flags;
++ X509_STORE_CTX_trusted_stack;
++ X509_time_adj;
++ X509_check_issued;
++ ASN1_UTCTIME_cmp_time_t;
++ DES_set_weak_key_flag;
++ DES_check_key;
++ DES_rw_mode;
++ RSA_PKCS1_RSAref;
++ X509_keyid_set1;
++ BIO_next;
++ DSO_METHOD_vms;
++ BIO_f_linebuffer;
++ BN_bntest_rand;
++ OPENSSL_issetugid;
++ BN_rand_range;
++ ERR_load_ENGINE_strings;
++ ENGINE_set_DSA;
++ ENGINE_get_finish_function;
++ ENGINE_get_default_RSA;
++ ENGINE_get_BN_mod_exp;
++ DSA_get_default_openssl_method;
++ ENGINE_set_DH;
++ ENGINE_set_def_BN_mod_exp_crt;
++ ENGINE_set_default_BN_mod_exp_crt;
++ ENGINE_init;
++ DH_get_default_openssl_method;
++ RSA_set_default_openssl_method;
++ ENGINE_finish;
++ ENGINE_load_public_key;
++ ENGINE_get_DH;
++ ENGINE_ctrl;
++ ENGINE_get_init_function;
++ ENGINE_set_init_function;
++ ENGINE_set_default_DSA;
++ ENGINE_get_name;
++ ENGINE_get_last;
++ ENGINE_get_prev;
++ ENGINE_get_default_DH;
++ ENGINE_get_RSA;
++ ENGINE_set_default;
++ ENGINE_get_RAND;
++ ENGINE_get_first;
++ ENGINE_by_id;
++ ENGINE_set_finish_function;
++ ENGINE_get_def_BN_mod_exp_crt;
++ ENGINE_get_default_BN_mod_exp_crt;
++ RSA_get_default_openssl_method;
++ ENGINE_set_RSA;
++ ENGINE_load_private_key;
++ ENGINE_set_default_RAND;
++ ENGINE_set_BN_mod_exp;
++ ENGINE_remove;
++ ENGINE_free;
++ ENGINE_get_BN_mod_exp_crt;
++ ENGINE_get_next;
++ ENGINE_set_name;
++ ENGINE_get_default_DSA;
++ ENGINE_set_default_BN_mod_exp;
++ ENGINE_set_default_RSA;
++ ENGINE_get_default_RAND;
++ ENGINE_get_default_BN_mod_exp;
++ ENGINE_set_RAND;
++ ENGINE_set_id;
++ ENGINE_set_BN_mod_exp_crt;
++ ENGINE_set_default_DH;
++ ENGINE_new;
++ ENGINE_get_id;
++ DSA_set_default_openssl_method;
++ ENGINE_add;
++ DH_set_default_openssl_method;
++ ENGINE_get_DSA;
++ ENGINE_get_ctrl_function;
++ ENGINE_set_ctrl_function;
++ BN_pseudo_rand_range;
++ X509_STORE_CTX_set_verify_cb;
++ ERR_load_COMP_strings;
++ PKCS12_item_decrypt_d2i;
++ ASN1_UTF8STRING_it;
++ ENGINE_unregister_ciphers;
++ ENGINE_get_ciphers;
++ d2i_OCSP_BASICRESP;
++ KRB5_CHECKSUM_it;
++ EC_POINT_add;
++ ASN1_item_ex_i2d;
++ OCSP_CERTID_it;
++ d2i_OCSP_RESPBYTES;
++ X509V3_add1_i2d;
++ PKCS7_ENVELOPE_it;
++ UI_add_input_boolean;
++ ENGINE_unregister_RSA;
++ X509V3_EXT_nconf;
++ ASN1_GENERALSTRING_free;
++ d2i_OCSP_CERTSTATUS;
++ X509_REVOKED_set_serialNumber;
++ X509_print_ex;
++ OCSP_ONEREQ_get1_ext_d2i;
++ ENGINE_register_all_RAND;
++ ENGINE_load_dynamic;
++ PBKDF2PARAM_it;
++ EXTENDED_KEY_USAGE_new;
++ EC_GROUP_clear_free;
++ OCSP_sendreq_bio;
++ ASN1_item_digest;
++ OCSP_BASICRESP_delete_ext;
++ OCSP_SIGNATURE_it;
++ X509_CRL_it;
++ OCSP_BASICRESP_add_ext;
++ KRB5_ENCKEY_it;
++ UI_method_set_closer;
++ X509_STORE_set_purpose;
++ i2d_ASN1_GENERALSTRING;
++ OCSP_response_status;
++ i2d_OCSP_SERVICELOC;
++ ENGINE_get_digest_engine;
++ EC_GROUP_set_curve_GFp;
++ OCSP_REQUEST_get_ext_by_OBJ;
++ _ossl_old_des_random_key;
++ ASN1_T61STRING_it;
++ EC_GROUP_method_of;
++ i2d_KRB5_APREQ;
++ _ossl_old_des_encrypt;
++ ASN1_PRINTABLE_new;
++ HMAC_Init_ex;
++ d2i_KRB5_AUTHENT;
++ OCSP_archive_cutoff_new;
++ EC_POINT_set_Jprojective_coordinates_GFp;
++ EC_POINT_set_Jproj_coords_GFp;
++ _ossl_old_des_is_weak_key;
++ OCSP_BASICRESP_get_ext_by_OBJ;
++ EC_POINT_oct2point;
++ OCSP_SINGLERESP_get_ext_count;
++ UI_ctrl;
++ _shadow_DES_rw_mode;
++ asn1_do_adb;
++ ASN1_template_i2d;
++ ENGINE_register_DH;
++ UI_construct_prompt;
++ X509_STORE_set_trust;
++ UI_dup_input_string;
++ d2i_KRB5_APREQ;
++ EVP_MD_CTX_copy_ex;
++ OCSP_request_is_signed;
++ i2d_OCSP_REQINFO;
++ KRB5_ENCKEY_free;
++ OCSP_resp_get0;
++ GENERAL_NAME_it;
++ ASN1_GENERALIZEDTIME_it;
++ X509_STORE_set_flags;
++ EC_POINT_set_compressed_coordinates_GFp;
++ EC_POINT_set_compr_coords_GFp;
++ OCSP_response_status_str;
++ d2i_OCSP_REVOKEDINFO;
++ OCSP_basic_add1_cert;
++ ERR_get_implementation;
++ EVP_CipherFinal_ex;
++ OCSP_CERTSTATUS_new;
++ CRYPTO_cleanup_all_ex_data;
++ OCSP_resp_find;
++ BN_nnmod;
++ X509_CRL_sort;
++ X509_REVOKED_set_revocationDate;
++ ENGINE_register_RAND;
++ OCSP_SERVICELOC_new;
++ EC_POINT_set_affine_coordinates_GFp;
++ EC_POINT_set_affine_coords_GFp;
++ _ossl_old_des_options;
++ SXNET_it;
++ UI_dup_input_boolean;
++ PKCS12_add_CSPName_asc;
++ EC_POINT_is_at_infinity;
++ ENGINE_load_cryptodev;
++ DSO_convert_filename;
++ POLICYQUALINFO_it;
++ ENGINE_register_ciphers;
++ BN_mod_lshift_quick;
++ DSO_set_filename;
++ ASN1_item_free;
++ KRB5_TKTBODY_free;
++ AUTHORITY_KEYID_it;
++ KRB5_APREQBODY_new;
++ X509V3_EXT_REQ_add_nconf;
++ ENGINE_ctrl_cmd_string;
++ i2d_OCSP_RESPDATA;
++ EVP_MD_CTX_init;
++ EXTENDED_KEY_USAGE_free;
++ PKCS7_ATTR_SIGN_it;
++ UI_add_error_string;
++ KRB5_CHECKSUM_free;
++ OCSP_REQUEST_get_ext;
++ ENGINE_load_ubsec;
++ ENGINE_register_all_digests;
++ PKEY_USAGE_PERIOD_it;
++ PKCS12_unpack_authsafes;
++ ASN1_item_unpack;
++ NETSCAPE_SPKAC_it;
++ X509_REVOKED_it;
++ ASN1_STRING_encode;
++ EVP_aes_128_ecb;
++ KRB5_AUTHENT_free;
++ OCSP_BASICRESP_get_ext_by_critical;
++ OCSP_BASICRESP_get_ext_by_crit;
++ OCSP_cert_status_str;
++ d2i_OCSP_REQUEST;
++ UI_dup_info_string;
++ _ossl_old_des_xwhite_in2out;
++ PKCS12_it;
++ OCSP_SINGLERESP_get_ext_by_critical;
++ OCSP_SINGLERESP_get_ext_by_crit;
++ OCSP_CERTSTATUS_free;
++ _ossl_old_des_crypt;
++ ASN1_item_i2d;
++ EVP_DecryptFinal_ex;
++ ENGINE_load_openssl;
++ ENGINE_get_cmd_defns;
++ ENGINE_set_load_privkey_function;
++ ENGINE_set_load_privkey_fn;
++ EVP_EncryptFinal_ex;
++ ENGINE_set_default_digests;
++ X509_get0_pubkey_bitstr;
++ asn1_ex_i2c;
++ ENGINE_register_RSA;
++ ENGINE_unregister_DSA;
++ _ossl_old_des_key_sched;
++ X509_EXTENSION_it;
++ i2d_KRB5_AUTHENT;
++ SXNETID_it;
++ d2i_OCSP_SINGLERESP;
++ EDIPARTYNAME_new;
++ PKCS12_certbag2x509;
++ _ossl_old_des_ofb64_encrypt;
++ d2i_EXTENDED_KEY_USAGE;
++ ERR_print_errors_cb;
++ ENGINE_set_ciphers;
++ d2i_KRB5_APREQBODY;
++ UI_method_get_flusher;
++ X509_PUBKEY_it;
++ _ossl_old_des_enc_read;
++ PKCS7_ENCRYPT_it;
++ i2d_OCSP_RESPONSE;
++ EC_GROUP_get_cofactor;
++ PKCS12_unpack_p7data;
++ d2i_KRB5_AUTHDATA;
++ OCSP_copy_nonce;
++ KRB5_AUTHDATA_new;
++ OCSP_RESPDATA_new;
++ EC_GFp_mont_method;
++ OCSP_REVOKEDINFO_free;
++ UI_get_ex_data;
++ KRB5_APREQBODY_free;
++ EC_GROUP_get0_generator;
++ UI_get_default_method;
++ X509V3_set_nconf;
++ PKCS12_item_i2d_encrypt;
++ X509_add1_ext_i2d;
++ PKCS7_SIGNER_INFO_it;
++ KRB5_PRINCNAME_new;
++ PKCS12_SAFEBAG_it;
++ EC_GROUP_get_order;
++ d2i_OCSP_RESPID;
++ OCSP_request_verify;
++ NCONF_get_number_e;
++ _ossl_old_des_decrypt3;
++ X509_signature_print;
++ OCSP_SINGLERESP_free;
++ ENGINE_load_builtin_engines;
++ i2d_OCSP_ONEREQ;
++ OCSP_REQUEST_add_ext;
++ OCSP_RESPBYTES_new;
++ EVP_MD_CTX_create;
++ OCSP_resp_find_status;
++ X509_ALGOR_it;
++ ASN1_TIME_it;
++ OCSP_request_set1_name;
++ OCSP_ONEREQ_get_ext_count;
++ UI_get0_result;
++ PKCS12_AUTHSAFES_it;
++ EVP_aes_256_ecb;
++ PKCS12_pack_authsafes;
++ ASN1_IA5STRING_it;
++ UI_get_input_flags;
++ EC_GROUP_set_generator;
++ _ossl_old_des_string_to_2keys;
++ OCSP_CERTID_free;
++ X509_CERT_AUX_it;
++ CERTIFICATEPOLICIES_it;
++ _ossl_old_des_ede3_cbc_encrypt;
++ RAND_set_rand_engine;
++ DSO_get_loaded_filename;
++ X509_ATTRIBUTE_it;
++ OCSP_ONEREQ_get_ext_by_NID;
++ PKCS12_decrypt_skey;
++ KRB5_AUTHENT_it;
++ UI_dup_error_string;
++ RSAPublicKey_it;
++ i2d_OCSP_REQUEST;
++ PKCS12_x509crl2certbag;
++ OCSP_SERVICELOC_it;
++ ASN1_item_sign;
++ X509_CRL_set_issuer_name;
++ OBJ_NAME_do_all_sorted;
++ i2d_OCSP_BASICRESP;
++ i2d_OCSP_RESPBYTES;
++ PKCS12_unpack_p7encdata;
++ HMAC_CTX_init;
++ ENGINE_get_digest;
++ OCSP_RESPONSE_print;
++ KRB5_TKTBODY_it;
++ ACCESS_DESCRIPTION_it;
++ PKCS7_ISSUER_AND_SERIAL_it;
++ PBE2PARAM_it;
++ PKCS12_certbag2x509crl;
++ PKCS7_SIGNED_it;
++ ENGINE_get_cipher;
++ i2d_OCSP_CRLID;
++ OCSP_SINGLERESP_new;
++ ENGINE_cmd_is_executable;
++ RSA_up_ref;
++ ASN1_GENERALSTRING_it;
++ ENGINE_register_DSA;
++ X509V3_EXT_add_nconf_sk;
++ ENGINE_set_load_pubkey_function;
++ PKCS8_decrypt;
++ PEM_bytes_read_bio;
++ DIRECTORYSTRING_it;
++ d2i_OCSP_CRLID;
++ EC_POINT_is_on_curve;
++ CRYPTO_set_locked_mem_ex_functions;
++ CRYPTO_set_locked_mem_ex_funcs;
++ d2i_KRB5_CHECKSUM;
++ ASN1_item_dup;
++ X509_it;
++ BN_mod_add;
++ KRB5_AUTHDATA_free;
++ _ossl_old_des_cbc_cksum;
++ ASN1_item_verify;
++ CRYPTO_set_mem_ex_functions;
++ EC_POINT_get_Jprojective_coordinates_GFp;
++ EC_POINT_get_Jproj_coords_GFp;
++ ZLONG_it;
++ CRYPTO_get_locked_mem_ex_functions;
++ CRYPTO_get_locked_mem_ex_funcs;
++ ASN1_TIME_check;
++ UI_get0_user_data;
++ HMAC_CTX_cleanup;
++ DSA_up_ref;
++ _ossl_old_des_ede3_cfb64_encrypt;
++ _ossl_odes_ede3_cfb64_encrypt;
++ ASN1_BMPSTRING_it;
++ ASN1_tag2bit;
++ UI_method_set_flusher;
++ X509_ocspid_print;
++ KRB5_ENCDATA_it;
++ ENGINE_get_load_pubkey_function;
++ UI_add_user_data;
++ OCSP_REQUEST_delete_ext;
++ UI_get_method;
++ OCSP_ONEREQ_free;
++ ASN1_PRINTABLESTRING_it;
++ X509_CRL_set_nextUpdate;
++ OCSP_REQUEST_it;
++ OCSP_BASICRESP_it;
++ AES_ecb_encrypt;
++ BN_mod_sqr;
++ NETSCAPE_CERT_SEQUENCE_it;
++ GENERAL_NAMES_it;
++ AUTHORITY_INFO_ACCESS_it;
++ ASN1_FBOOLEAN_it;
++ UI_set_ex_data;
++ _ossl_old_des_string_to_key;
++ ENGINE_register_all_RSA;
++ d2i_KRB5_PRINCNAME;
++ OCSP_RESPBYTES_it;
++ X509_CINF_it;
++ ENGINE_unregister_digests;
++ d2i_EDIPARTYNAME;
++ d2i_OCSP_SERVICELOC;
++ ENGINE_get_digests;
++ _ossl_old_des_set_odd_parity;
++ OCSP_RESPDATA_free;
++ d2i_KRB5_TICKET;
++ OTHERNAME_it;
++ EVP_MD_CTX_cleanup;
++ d2i_ASN1_GENERALSTRING;
++ X509_CRL_set_version;
++ BN_mod_sub;
++ OCSP_SINGLERESP_get_ext_by_NID;
++ ENGINE_get_ex_new_index;
++ OCSP_REQUEST_free;
++ OCSP_REQUEST_add1_ext_i2d;
++ X509_VAL_it;
++ EC_POINTs_make_affine;
++ EC_POINT_mul;
++ X509V3_EXT_add_nconf;
++ X509_TRUST_set;
++ X509_CRL_add1_ext_i2d;
++ _ossl_old_des_fcrypt;
++ DISPLAYTEXT_it;
++ X509_CRL_set_lastUpdate;
++ OCSP_BASICRESP_free;
++ OCSP_BASICRESP_add1_ext_i2d;
++ d2i_KRB5_AUTHENTBODY;
++ CRYPTO_set_ex_data_implementation;
++ CRYPTO_set_ex_data_impl;
++ KRB5_ENCDATA_new;
++ DSO_up_ref;
++ OCSP_crl_reason_str;
++ UI_get0_result_string;
++ ASN1_GENERALSTRING_new;
++ X509_SIG_it;
++ ERR_set_implementation;
++ ERR_load_EC_strings;
++ UI_get0_action_string;
++ OCSP_ONEREQ_get_ext;
++ EC_POINT_method_of;
++ i2d_KRB5_APREQBODY;
++ _ossl_old_des_ecb3_encrypt;
++ CRYPTO_get_mem_ex_functions;
++ ENGINE_get_ex_data;
++ UI_destroy_method;
++ ASN1_item_i2d_bio;
++ OCSP_ONEREQ_get_ext_by_OBJ;
++ ASN1_primitive_new;
++ ASN1_PRINTABLE_it;
++ EVP_aes_192_ecb;
++ OCSP_SIGNATURE_new;
++ LONG_it;
++ ASN1_VISIBLESTRING_it;
++ OCSP_SINGLERESP_add1_ext_i2d;
++ d2i_OCSP_CERTID;
++ ASN1_item_d2i_fp;
++ CRL_DIST_POINTS_it;
++ GENERAL_NAME_print;
++ OCSP_SINGLERESP_delete_ext;
++ PKCS12_SAFEBAGS_it;
++ d2i_OCSP_SIGNATURE;
++ OCSP_request_add1_nonce;
++ ENGINE_set_cmd_defns;
++ OCSP_SERVICELOC_free;
++ EC_GROUP_free;
++ ASN1_BIT_STRING_it;
++ X509_REQ_it;
++ _ossl_old_des_cbc_encrypt;
++ ERR_unload_strings;
++ PKCS7_SIGN_ENVELOPE_it;
++ EDIPARTYNAME_free;
++ OCSP_REQINFO_free;
++ EC_GROUP_new_curve_GFp;
++ OCSP_REQUEST_get1_ext_d2i;
++ PKCS12_item_pack_safebag;
++ asn1_ex_c2i;
++ ENGINE_register_digests;
++ i2d_OCSP_REVOKEDINFO;
++ asn1_enc_restore;
++ UI_free;
++ UI_new_method;
++ EVP_EncryptInit_ex;
++ X509_pubkey_digest;
++ EC_POINT_invert;
++ OCSP_basic_sign;
++ i2d_OCSP_RESPID;
++ OCSP_check_nonce;
++ ENGINE_ctrl_cmd;
++ d2i_KRB5_ENCKEY;
++ OCSP_parse_url;
++ OCSP_SINGLERESP_get_ext;
++ OCSP_CRLID_free;
++ OCSP_BASICRESP_get1_ext_d2i;
++ RSAPrivateKey_it;
++ ENGINE_register_all_DH;
++ i2d_EDIPARTYNAME;
++ EC_POINT_get_affine_coordinates_GFp;
++ EC_POINT_get_affine_coords_GFp;
++ OCSP_CRLID_new;
++ ENGINE_get_flags;
++ OCSP_ONEREQ_it;
++ UI_process;
++ ASN1_INTEGER_it;
++ EVP_CipherInit_ex;
++ UI_get_string_type;
++ ENGINE_unregister_DH;
++ ENGINE_register_all_DSA;
++ OCSP_ONEREQ_get_ext_by_critical;
++ bn_dup_expand;
++ OCSP_cert_id_new;
++ BASIC_CONSTRAINTS_it;
++ BN_mod_add_quick;
++ EC_POINT_new;
++ EVP_MD_CTX_destroy;
++ OCSP_RESPBYTES_free;
++ EVP_aes_128_cbc;
++ OCSP_SINGLERESP_get1_ext_d2i;
++ EC_POINT_free;
++ DH_up_ref;
++ X509_NAME_ENTRY_it;
++ UI_get_ex_new_index;
++ BN_mod_sub_quick;
++ OCSP_ONEREQ_add_ext;
++ OCSP_request_sign;
++ EVP_DigestFinal_ex;
++ ENGINE_set_digests;
++ OCSP_id_issuer_cmp;
++ OBJ_NAME_do_all;
++ EC_POINTs_mul;
++ ENGINE_register_complete;
++ X509V3_EXT_nconf_nid;
++ ASN1_SEQUENCE_it;
++ UI_set_default_method;
++ RAND_query_egd_bytes;
++ UI_method_get_writer;
++ UI_OpenSSL;
++ PEM_def_callback;
++ ENGINE_cleanup;
++ DIST_POINT_it;
++ OCSP_SINGLERESP_it;
++ d2i_KRB5_TKTBODY;
++ EC_POINT_cmp;
++ OCSP_REVOKEDINFO_new;
++ i2d_OCSP_CERTSTATUS;
++ OCSP_basic_add1_nonce;
++ ASN1_item_ex_d2i;
++ BN_mod_lshift1_quick;
++ UI_set_method;
++ OCSP_id_get0_info;
++ BN_mod_sqrt;
++ EC_GROUP_copy;
++ KRB5_ENCDATA_free;
++ _ossl_old_des_cfb_encrypt;
++ OCSP_SINGLERESP_get_ext_by_OBJ;
++ OCSP_cert_to_id;
++ OCSP_RESPID_new;
++ OCSP_RESPDATA_it;
++ d2i_OCSP_RESPDATA;
++ ENGINE_register_all_complete;
++ OCSP_check_validity;
++ PKCS12_BAGS_it;
++ OCSP_url_svcloc_new;
++ ASN1_template_free;
++ OCSP_SINGLERESP_add_ext;
++ KRB5_AUTHENTBODY_it;
++ X509_supported_extension;
++ i2d_KRB5_AUTHDATA;
++ UI_method_get_opener;
++ ENGINE_set_ex_data;
++ OCSP_REQUEST_print;
++ CBIGNUM_it;
++ KRB5_TICKET_new;
++ KRB5_APREQ_new;
++ EC_GROUP_get_curve_GFp;
++ KRB5_ENCKEY_new;
++ ASN1_template_d2i;
++ _ossl_old_des_quad_cksum;
++ OCSP_single_get0_status;
++ BN_swap;
++ POLICYINFO_it;
++ ENGINE_set_destroy_function;
++ asn1_enc_free;
++ OCSP_RESPID_it;
++ EC_GROUP_new;
++ EVP_aes_256_cbc;
++ i2d_KRB5_PRINCNAME;
++ _ossl_old_des_encrypt2;
++ _ossl_old_des_encrypt3;
++ PKCS8_PRIV_KEY_INFO_it;
++ OCSP_REQINFO_it;
++ PBEPARAM_it;
++ KRB5_AUTHENTBODY_new;
++ X509_CRL_add0_revoked;
++ EDIPARTYNAME_it;
++ NETSCAPE_SPKI_it;
++ UI_get0_test_string;
++ ENGINE_get_cipher_engine;
++ ENGINE_register_all_ciphers;
++ EC_POINT_copy;
++ BN_kronecker;
++ _ossl_old_des_ede3_ofb64_encrypt;
++ _ossl_odes_ede3_ofb64_encrypt;
++ UI_method_get_reader;
++ OCSP_BASICRESP_get_ext_count;
++ ASN1_ENUMERATED_it;
++ UI_set_result;
++ i2d_KRB5_TICKET;
++ X509_print_ex_fp;
++ EVP_CIPHER_CTX_set_padding;
++ d2i_OCSP_RESPONSE;
++ ASN1_UTCTIME_it;
++ _ossl_old_des_enc_write;
++ OCSP_RESPONSE_new;
++ AES_set_encrypt_key;
++ OCSP_resp_count;
++ KRB5_CHECKSUM_new;
++ ENGINE_load_cswift;
++ OCSP_onereq_get0_id;
++ ENGINE_set_default_ciphers;
++ NOTICEREF_it;
++ X509V3_EXT_CRL_add_nconf;
++ OCSP_REVOKEDINFO_it;
++ AES_encrypt;
++ OCSP_REQUEST_new;
++ ASN1_ANY_it;
++ CRYPTO_ex_data_new_class;
++ _ossl_old_des_ncbc_encrypt;
++ i2d_KRB5_TKTBODY;
++ EC_POINT_clear_free;
++ AES_decrypt;
++ asn1_enc_init;
++ UI_get_result_maxsize;
++ OCSP_CERTID_new;
++ ENGINE_unregister_RAND;
++ UI_method_get_closer;
++ d2i_KRB5_ENCDATA;
++ OCSP_request_onereq_count;
++ OCSP_basic_verify;
++ KRB5_AUTHENTBODY_free;
++ ASN1_item_d2i;
++ ASN1_primitive_free;
++ i2d_EXTENDED_KEY_USAGE;
++ i2d_OCSP_SIGNATURE;
++ asn1_enc_save;
++ ENGINE_load_nuron;
++ _ossl_old_des_pcbc_encrypt;
++ PKCS12_MAC_DATA_it;
++ OCSP_accept_responses_new;
++ asn1_do_lock;
++ PKCS7_ATTR_VERIFY_it;
++ KRB5_APREQBODY_it;
++ i2d_OCSP_SINGLERESP;
++ ASN1_item_ex_new;
++ UI_add_verify_string;
++ _ossl_old_des_set_key;
++ KRB5_PRINCNAME_it;
++ EVP_DecryptInit_ex;
++ i2d_OCSP_CERTID;
++ ASN1_item_d2i_bio;
++ EC_POINT_dbl;
++ asn1_get_choice_selector;
++ i2d_KRB5_CHECKSUM;
++ ENGINE_set_table_flags;
++ AES_options;
++ ENGINE_load_chil;
++ OCSP_id_cmp;
++ OCSP_BASICRESP_new;
++ OCSP_REQUEST_get_ext_by_NID;
++ KRB5_APREQ_it;
++ ENGINE_get_destroy_function;
++ CONF_set_nconf;
++ ASN1_PRINTABLE_free;
++ OCSP_BASICRESP_get_ext_by_NID;
++ DIST_POINT_NAME_it;
++ X509V3_extensions_print;
++ _ossl_old_des_cfb64_encrypt;
++ X509_REVOKED_add1_ext_i2d;
++ _ossl_old_des_ofb_encrypt;
++ KRB5_TKTBODY_new;
++ ASN1_OCTET_STRING_it;
++ ERR_load_UI_strings;
++ i2d_KRB5_ENCKEY;
++ ASN1_template_new;
++ OCSP_SIGNATURE_free;
++ ASN1_item_i2d_fp;
++ KRB5_PRINCNAME_free;
++ PKCS7_RECIP_INFO_it;
++ EXTENDED_KEY_USAGE_it;
++ EC_GFp_simple_method;
++ EC_GROUP_precompute_mult;
++ OCSP_request_onereq_get0;
++ UI_method_set_writer;
++ KRB5_AUTHENT_new;
++ X509_CRL_INFO_it;
++ DSO_set_name_converter;
++ AES_set_decrypt_key;
++ PKCS7_DIGEST_it;
++ PKCS12_x5092certbag;
++ EVP_DigestInit_ex;
++ i2a_ACCESS_DESCRIPTION;
++ OCSP_RESPONSE_it;
++ PKCS7_ENC_CONTENT_it;
++ OCSP_request_add0_id;
++ EC_POINT_make_affine;
++ DSO_get_filename;
++ OCSP_CERTSTATUS_it;
++ OCSP_request_add1_cert;
++ UI_get0_output_string;
++ UI_dup_verify_string;
++ BN_mod_lshift;
++ KRB5_AUTHDATA_it;
++ asn1_set_choice_selector;
++ OCSP_basic_add1_status;
++ OCSP_RESPID_free;
++ asn1_get_field_ptr;
++ UI_add_input_string;
++ OCSP_CRLID_it;
++ i2d_KRB5_AUTHENTBODY;
++ OCSP_REQUEST_get_ext_count;
++ ENGINE_load_atalla;
++ X509_NAME_it;
++ USERNOTICE_it;
++ OCSP_REQINFO_new;
++ OCSP_BASICRESP_get_ext;
++ CRYPTO_get_ex_data_implementation;
++ CRYPTO_get_ex_data_impl;
++ ASN1_item_pack;
++ i2d_KRB5_ENCDATA;
++ X509_PURPOSE_set;
++ X509_REQ_INFO_it;
++ UI_method_set_opener;
++ ASN1_item_ex_free;
++ ASN1_BOOLEAN_it;
++ ENGINE_get_table_flags;
++ UI_create_method;
++ OCSP_ONEREQ_add1_ext_i2d;
++ _shadow_DES_check_key;
++ d2i_OCSP_REQINFO;
++ UI_add_info_string;
++ UI_get_result_minsize;
++ ASN1_NULL_it;
++ BN_mod_lshift1;
++ d2i_OCSP_ONEREQ;
++ OCSP_ONEREQ_new;
++ KRB5_TICKET_it;
++ EVP_aes_192_cbc;
++ KRB5_TICKET_free;
++ UI_new;
++ OCSP_response_create;
++ _ossl_old_des_xcbc_encrypt;
++ PKCS7_it;
++ OCSP_REQUEST_get_ext_by_critical;
++ OCSP_REQUEST_get_ext_by_crit;
++ ENGINE_set_flags;
++ _ossl_old_des_ecb_encrypt;
++ OCSP_response_get1_basic;
++ EVP_Digest;
++ OCSP_ONEREQ_delete_ext;
++ ASN1_TBOOLEAN_it;
++ ASN1_item_new;
++ ASN1_TIME_to_generalizedtime;
++ BIGNUM_it;
++ AES_cbc_encrypt;
++ ENGINE_get_load_privkey_function;
++ ENGINE_get_load_privkey_fn;
++ OCSP_RESPONSE_free;
++ UI_method_set_reader;
++ i2d_ASN1_T61STRING;
++ EC_POINT_set_to_infinity;
++ ERR_load_OCSP_strings;
++ EC_POINT_point2oct;
++ KRB5_APREQ_free;
++ ASN1_OBJECT_it;
++ OCSP_crlID_new;
++ OCSP_crlID2_new;
++ CONF_modules_load_file;
++ CONF_imodule_set_usr_data;
++ ENGINE_set_default_string;
++ CONF_module_get_usr_data;
++ ASN1_add_oid_module;
++ CONF_modules_finish;
++ OPENSSL_config;
++ CONF_modules_unload;
++ CONF_imodule_get_value;
++ CONF_module_set_usr_data;
++ CONF_parse_list;
++ CONF_module_add;
++ CONF_get1_default_config_file;
++ CONF_imodule_get_flags;
++ CONF_imodule_get_module;
++ CONF_modules_load;
++ CONF_imodule_get_name;
++ ERR_peek_top_error;
++ CONF_imodule_get_usr_data;
++ CONF_imodule_set_flags;
++ ENGINE_add_conf_module;
++ ERR_peek_last_error_line;
++ ERR_peek_last_error_line_data;
++ ERR_peek_last_error;
++ DES_read_2passwords;
++ DES_read_password;
++ UI_UTIL_read_pw;
++ UI_UTIL_read_pw_string;
++ ENGINE_load_aep;
++ ENGINE_load_sureware;
++ OPENSSL_add_all_algorithms_noconf;
++ OPENSSL_add_all_algo_noconf;
++ OPENSSL_add_all_algorithms_conf;
++ OPENSSL_add_all_algo_conf;
++ OPENSSL_load_builtin_modules;
++ AES_ofb128_encrypt;
++ AES_ctr128_encrypt;
++ AES_cfb128_encrypt;
++ ENGINE_load_4758cca;
++ _ossl_096_des_random_seed;
++ EVP_aes_256_ofb;
++ EVP_aes_192_ofb;
++ EVP_aes_128_cfb128;
++ EVP_aes_256_cfb128;
++ EVP_aes_128_ofb;
++ EVP_aes_192_cfb128;
++ CONF_modules_free;
++ NCONF_default;
++ OPENSSL_no_config;
++ NCONF_WIN32;
++ ASN1_UNIVERSALSTRING_new;
++ EVP_des_ede_ecb;
++ i2d_ASN1_UNIVERSALSTRING;
++ ASN1_UNIVERSALSTRING_free;
++ ASN1_UNIVERSALSTRING_it;
++ d2i_ASN1_UNIVERSALSTRING;
++ EVP_des_ede3_ecb;
++ X509_REQ_print_ex;
++ ENGINE_up_ref;
++ BUF_MEM_grow_clean;
++ CRYPTO_realloc_clean;
++ BUF_strlcat;
++ BIO_indent;
++ BUF_strlcpy;
++ OpenSSLDie;
++ OPENSSL_cleanse;
++ ENGINE_setup_bsd_cryptodev;
++ ERR_release_err_state_table;
++ EVP_aes_128_cfb8;
++ FIPS_corrupt_rsa;
++ FIPS_selftest_des;
++ EVP_aes_128_cfb1;
++ EVP_aes_192_cfb8;
++ FIPS_mode_set;
++ FIPS_selftest_dsa;
++ EVP_aes_256_cfb8;
++ FIPS_allow_md5;
++ DES_ede3_cfb_encrypt;
++ EVP_des_ede3_cfb8;
++ FIPS_rand_seeded;
++ AES_cfbr_encrypt_block;
++ AES_cfb8_encrypt;
++ FIPS_rand_seed;
++ FIPS_corrupt_des;
++ EVP_aes_192_cfb1;
++ FIPS_selftest_aes;
++ FIPS_set_prng_key;
++ EVP_des_cfb8;
++ FIPS_corrupt_dsa;
++ FIPS_test_mode;
++ FIPS_rand_method;
++ EVP_aes_256_cfb1;
++ ERR_load_FIPS_strings;
++ FIPS_corrupt_aes;
++ FIPS_selftest_sha1;
++ FIPS_selftest_rsa;
++ FIPS_corrupt_sha1;
++ EVP_des_cfb1;
++ FIPS_dsa_check;
++ AES_cfb1_encrypt;
++ EVP_des_ede3_cfb1;
++ FIPS_rand_check;
++ FIPS_md5_allowed;
++ FIPS_mode;
++ FIPS_selftest_failed;
++ sk_is_sorted;
++ X509_check_ca;
++ HMAC_CTX_set_flags;
++ d2i_PROXY_CERT_INFO_EXTENSION;
++ PROXY_POLICY_it;
++ i2d_PROXY_POLICY;
++ i2d_PROXY_CERT_INFO_EXTENSION;
++ d2i_PROXY_POLICY;
++ PROXY_CERT_INFO_EXTENSION_new;
++ PROXY_CERT_INFO_EXTENSION_free;
++ PROXY_CERT_INFO_EXTENSION_it;
++ PROXY_POLICY_free;
++ PROXY_POLICY_new;
++ BN_MONT_CTX_set_locked;
++ FIPS_selftest_rng;
++ EVP_sha384;
++ EVP_sha512;
++ EVP_sha224;
++ EVP_sha256;
++ FIPS_selftest_hmac;
++ FIPS_corrupt_rng;
++ BN_mod_exp_mont_consttime;
++ RSA_X931_hash_id;
++ RSA_padding_check_X931;
++ RSA_verify_PKCS1_PSS;
++ RSA_padding_add_X931;
++ RSA_padding_add_PKCS1_PSS;
++ PKCS1_MGF1;
++ BN_X931_generate_Xpq;
++ RSA_X931_generate_key;
++ BN_X931_derive_prime;
++ BN_X931_generate_prime;
++ RSA_X931_derive;
++ BIO_new_dgram;
++ BN_get0_nist_prime_384;
++ ERR_set_mark;
++ X509_STORE_CTX_set0_crls;
++ ENGINE_set_STORE;
++ ENGINE_register_ECDSA;
++ STORE_meth_set_list_start_fn;
++ STORE_method_set_list_start_function;
++ BN_BLINDING_invert_ex;
++ NAME_CONSTRAINTS_free;
++ STORE_ATTR_INFO_set_number;
++ BN_BLINDING_get_thread_id;
++ X509_STORE_CTX_set0_param;
++ POLICY_MAPPING_it;
++ STORE_parse_attrs_start;
++ POLICY_CONSTRAINTS_free;
++ EVP_PKEY_add1_attr_by_NID;
++ BN_nist_mod_192;
++ EC_GROUP_get_trinomial_basis;
++ STORE_set_method;
++ GENERAL_SUBTREE_free;
++ NAME_CONSTRAINTS_it;
++ ECDH_get_default_method;
++ PKCS12_add_safe;
++ EC_KEY_new_by_curve_name;
++ STORE_meth_get_update_store_fn;
++ STORE_method_get_update_store_function;
++ ENGINE_register_ECDH;
++ SHA512_Update;
++ i2d_ECPrivateKey;
++ BN_get0_nist_prime_192;
++ STORE_modify_certificate;
++ EC_POINT_set_affine_coordinates_GF2m;
++ EC_POINT_set_affine_coords_GF2m;
++ BN_GF2m_mod_exp_arr;
++ STORE_ATTR_INFO_modify_number;
++ X509_keyid_get0;
++ ENGINE_load_gmp;
++ pitem_new;
++ BN_GF2m_mod_mul_arr;
++ STORE_list_public_key_endp;
++ o2i_ECPublicKey;
++ EC_KEY_copy;
++ BIO_dump_fp;
++ X509_policy_node_get0_parent;
++ EC_GROUP_check_discriminant;
++ i2o_ECPublicKey;
++ EC_KEY_precompute_mult;
++ a2i_IPADDRESS;
++ STORE_meth_set_initialise_fn;
++ STORE_method_set_initialise_function;
++ X509_STORE_CTX_set_depth;
++ X509_VERIFY_PARAM_inherit;
++ EC_POINT_point2bn;
++ STORE_ATTR_INFO_set_dn;
++ X509_policy_tree_get0_policies;
++ EC_GROUP_new_curve_GF2m;
++ STORE_destroy_method;
++ ENGINE_unregister_STORE;
++ EVP_PKEY_get1_EC_KEY;
++ STORE_ATTR_INFO_get0_number;
++ ENGINE_get_default_ECDH;
++ EC_KEY_get_conv_form;
++ ASN1_OCTET_STRING_NDEF_it;
++ STORE_delete_public_key;
++ STORE_get_public_key;
++ STORE_modify_arbitrary;
++ ENGINE_get_static_state;
++ pqueue_iterator;
++ ECDSA_SIG_new;
++ OPENSSL_DIR_end;
++ BN_GF2m_mod_sqr;
++ EC_POINT_bn2point;
++ X509_VERIFY_PARAM_set_depth;
++ EC_KEY_set_asn1_flag;
++ STORE_get_method;
++ EC_KEY_get_key_method_data;
++ ECDSA_sign_ex;
++ STORE_parse_attrs_end;
++ EC_GROUP_get_point_conversion_form;
++ EC_GROUP_get_point_conv_form;
++ STORE_method_set_store_function;
++ STORE_ATTR_INFO_in;
++ PEM_read_bio_ECPKParameters;
++ EC_GROUP_get_pentanomial_basis;
++ EVP_PKEY_add1_attr_by_txt;
++ BN_BLINDING_set_flags;
++ X509_VERIFY_PARAM_set1_policies;
++ X509_VERIFY_PARAM_set1_name;
++ X509_VERIFY_PARAM_set_purpose;
++ STORE_get_number;
++ ECDSA_sign_setup;
++ BN_GF2m_mod_solve_quad_arr;
++ EC_KEY_up_ref;
++ POLICY_MAPPING_free;
++ BN_GF2m_mod_div;
++ X509_VERIFY_PARAM_set_flags;
++ EC_KEY_free;
++ STORE_meth_set_list_next_fn;
++ STORE_method_set_list_next_function;
++ PEM_write_bio_ECPrivateKey;
++ d2i_EC_PUBKEY;
++ STORE_meth_get_generate_fn;
++ STORE_method_get_generate_function;
++ STORE_meth_set_list_end_fn;
++ STORE_method_set_list_end_function;
++ pqueue_print;
++ EC_GROUP_have_precompute_mult;
++ EC_KEY_print_fp;
++ BN_GF2m_mod_arr;
++ PEM_write_bio_X509_CERT_PAIR;
++ EVP_PKEY_cmp;
++ X509_policy_level_node_count;
++ STORE_new_engine;
++ STORE_list_public_key_start;
++ X509_VERIFY_PARAM_new;
++ ECDH_get_ex_data;
++ EVP_PKEY_get_attr;
++ ECDSA_do_sign;
++ ENGINE_unregister_ECDH;
++ ECDH_OpenSSL;
++ EC_KEY_set_conv_form;
++ EC_POINT_dup;
++ GENERAL_SUBTREE_new;
++ STORE_list_crl_endp;
++ EC_get_builtin_curves;
++ X509_policy_node_get0_qualifiers;
++ X509_pcy_node_get0_qualifiers;
++ STORE_list_crl_end;
++ EVP_PKEY_set1_EC_KEY;
++ BN_GF2m_mod_sqrt_arr;
++ i2d_ECPrivateKey_bio;
++ ECPKParameters_print_fp;
++ pqueue_find;
++ ECDSA_SIG_free;
++ PEM_write_bio_ECPKParameters;
++ STORE_method_set_ctrl_function;
++ STORE_list_public_key_end;
++ EC_KEY_set_private_key;
++ pqueue_peek;
++ STORE_get_arbitrary;
++ STORE_store_crl;
++ X509_policy_node_get0_policy;
++ PKCS12_add_safes;
++ BN_BLINDING_convert_ex;
++ X509_policy_tree_free;
++ OPENSSL_ia32cap_loc;
++ BN_GF2m_poly2arr;
++ STORE_ctrl;
++ STORE_ATTR_INFO_compare;
++ BN_get0_nist_prime_224;
++ i2d_ECParameters;
++ i2d_ECPKParameters;
++ BN_GENCB_call;
++ d2i_ECPKParameters;
++ STORE_meth_set_generate_fn;
++ STORE_method_set_generate_function;
++ ENGINE_set_ECDH;
++ NAME_CONSTRAINTS_new;
++ SHA256_Init;
++ EC_KEY_get0_public_key;
++ PEM_write_bio_EC_PUBKEY;
++ STORE_ATTR_INFO_set_cstr;
++ STORE_list_crl_next;
++ STORE_ATTR_INFO_in_range;
++ ECParameters_print;
++ STORE_meth_set_delete_fn;
++ STORE_method_set_delete_function;
++ STORE_list_certificate_next;
++ ASN1_generate_nconf;
++ BUF_memdup;
++ BN_GF2m_mod_mul;
++ STORE_meth_get_list_next_fn;
++ STORE_method_get_list_next_function;
++ STORE_ATTR_INFO_get0_dn;
++ STORE_list_private_key_next;
++ EC_GROUP_set_seed;
++ X509_VERIFY_PARAM_set_trust;
++ STORE_ATTR_INFO_free;
++ STORE_get_private_key;
++ EVP_PKEY_get_attr_count;
++ STORE_ATTR_INFO_new;
++ EC_GROUP_get_curve_GF2m;
++ STORE_meth_set_revoke_fn;
++ STORE_method_set_revoke_function;
++ STORE_store_number;
++ BN_is_prime_ex;
++ STORE_revoke_public_key;
++ X509_STORE_CTX_get0_param;
++ STORE_delete_arbitrary;
++ PEM_read_X509_CERT_PAIR;
++ X509_STORE_set_depth;
++ ECDSA_get_ex_data;
++ SHA224;
++ BIO_dump_indent_fp;
++ EC_KEY_set_group;
++ BUF_strndup;
++ STORE_list_certificate_start;
++ BN_GF2m_mod;
++ X509_REQ_check_private_key;
++ EC_GROUP_get_seed_len;
++ ERR_load_STORE_strings;
++ PEM_read_bio_EC_PUBKEY;
++ STORE_list_private_key_end;
++ i2d_EC_PUBKEY;
++ ECDSA_get_default_method;
++ ASN1_put_eoc;
++ X509_STORE_CTX_get_explicit_policy;
++ X509_STORE_CTX_get_expl_policy;
++ X509_VERIFY_PARAM_table_cleanup;
++ STORE_modify_private_key;
++ X509_VERIFY_PARAM_free;
++ EC_METHOD_get_field_type;
++ EC_GFp_nist_method;
++ STORE_meth_set_modify_fn;
++ STORE_method_set_modify_function;
++ STORE_parse_attrs_next;
++ ENGINE_load_padlock;
++ EC_GROUP_set_curve_name;
++ X509_CERT_PAIR_it;
++ STORE_meth_get_revoke_fn;
++ STORE_method_get_revoke_function;
++ STORE_method_set_get_function;
++ STORE_modify_number;
++ STORE_method_get_store_function;
++ STORE_store_private_key;
++ BN_GF2m_mod_sqr_arr;
++ RSA_setup_blinding;
++ BIO_s_datagram;
++ STORE_Memory;
++ sk_find_ex;
++ EC_GROUP_set_curve_GF2m;
++ ENGINE_set_default_ECDSA;
++ POLICY_CONSTRAINTS_new;
++ BN_GF2m_mod_sqrt;
++ ECDH_set_default_method;
++ EC_KEY_generate_key;
++ SHA384_Update;
++ BN_GF2m_arr2poly;
++ STORE_method_get_get_function;
++ STORE_meth_set_cleanup_fn;
++ STORE_method_set_cleanup_function;
++ EC_GROUP_check;
++ d2i_ECPrivateKey_bio;
++ EC_KEY_insert_key_method_data;
++ STORE_meth_get_lock_store_fn;
++ STORE_method_get_lock_store_function;
++ X509_VERIFY_PARAM_get_depth;
++ SHA224_Final;
++ STORE_meth_set_update_store_fn;
++ STORE_method_set_update_store_function;
++ SHA224_Update;
++ d2i_ECPrivateKey;
++ ASN1_item_ndef_i2d;
++ STORE_delete_private_key;
++ ERR_pop_to_mark;
++ ENGINE_register_all_STORE;
++ X509_policy_level_get0_node;
++ i2d_PKCS7_NDEF;
++ EC_GROUP_get_degree;
++ ASN1_generate_v3;
++ STORE_ATTR_INFO_modify_cstr;
++ X509_policy_tree_level_count;
++ BN_GF2m_add;
++ EC_KEY_get0_group;
++ STORE_generate_crl;
++ STORE_store_public_key;
++ X509_CERT_PAIR_free;
++ STORE_revoke_private_key;
++ BN_nist_mod_224;
++ SHA512_Final;
++ STORE_ATTR_INFO_modify_dn;
++ STORE_meth_get_initialise_fn;
++ STORE_method_get_initialise_function;
++ STORE_delete_number;
++ i2d_EC_PUBKEY_bio;
++ BIO_dgram_non_fatal_error;
++ EC_GROUP_get_asn1_flag;
++ STORE_ATTR_INFO_in_ex;
++ STORE_list_crl_start;
++ ECDH_get_ex_new_index;
++ STORE_meth_get_modify_fn;
++ STORE_method_get_modify_function;
++ v2i_ASN1_BIT_STRING;
++ STORE_store_certificate;
++ OBJ_bsearch_ex;
++ X509_STORE_CTX_set_default;
++ STORE_ATTR_INFO_set_sha1str;
++ BN_GF2m_mod_inv;
++ BN_GF2m_mod_exp;
++ STORE_modify_public_key;
++ STORE_meth_get_list_start_fn;
++ STORE_method_get_list_start_function;
++ EC_GROUP_get0_seed;
++ STORE_store_arbitrary;
++ STORE_meth_set_unlock_store_fn;
++ STORE_method_set_unlock_store_function;
++ BN_GF2m_mod_div_arr;
++ ENGINE_set_ECDSA;
++ STORE_create_method;
++ ECPKParameters_print;
++ EC_KEY_get0_private_key;
++ PEM_write_EC_PUBKEY;
++ X509_VERIFY_PARAM_set1;
++ ECDH_set_method;
++ v2i_GENERAL_NAME_ex;
++ ECDH_set_ex_data;
++ STORE_generate_key;
++ BN_nist_mod_521;
++ X509_policy_tree_get0_level;
++ EC_GROUP_set_point_conversion_form;
++ EC_GROUP_set_point_conv_form;
++ PEM_read_EC_PUBKEY;
++ i2d_ECDSA_SIG;
++ ECDSA_OpenSSL;
++ STORE_delete_crl;
++ EC_KEY_get_enc_flags;
++ ASN1_const_check_infinite_end;
++ EVP_PKEY_delete_attr;
++ ECDSA_set_default_method;
++ EC_POINT_set_compressed_coordinates_GF2m;
++ EC_POINT_set_compr_coords_GF2m;
++ EC_GROUP_cmp;
++ STORE_revoke_certificate;
++ BN_get0_nist_prime_256;
++ STORE_meth_get_delete_fn;
++ STORE_method_get_delete_function;
++ SHA224_Init;
++ PEM_read_ECPrivateKey;
++ SHA512_Init;
++ STORE_parse_attrs_endp;
++ BN_set_negative;
++ ERR_load_ECDSA_strings;
++ EC_GROUP_get_basis_type;
++ STORE_list_public_key_next;
++ i2v_ASN1_BIT_STRING;
++ STORE_OBJECT_free;
++ BN_nist_mod_384;
++ i2d_X509_CERT_PAIR;
++ PEM_write_ECPKParameters;
++ ECDH_compute_key;
++ STORE_ATTR_INFO_get0_sha1str;
++ ENGINE_register_all_ECDH;
++ pqueue_pop;
++ STORE_ATTR_INFO_get0_cstr;
++ POLICY_CONSTRAINTS_it;
++ STORE_get_ex_new_index;
++ EVP_PKEY_get_attr_by_OBJ;
++ X509_VERIFY_PARAM_add0_policy;
++ BN_GF2m_mod_solve_quad;
++ SHA256;
++ i2d_ECPrivateKey_fp;
++ X509_policy_tree_get0_user_policies;
++ X509_pcy_tree_get0_usr_policies;
++ OPENSSL_DIR_read;
++ ENGINE_register_all_ECDSA;
++ X509_VERIFY_PARAM_lookup;
++ EC_POINT_get_affine_coordinates_GF2m;
++ EC_POINT_get_affine_coords_GF2m;
++ EC_GROUP_dup;
++ ENGINE_get_default_ECDSA;
++ EC_KEY_new;
++ SHA256_Transform;
++ EC_KEY_set_enc_flags;
++ ECDSA_verify;
++ EC_POINT_point2hex;
++ ENGINE_get_STORE;
++ SHA512;
++ STORE_get_certificate;
++ ECDSA_do_sign_ex;
++ ECDSA_do_verify;
++ d2i_ECPrivateKey_fp;
++ STORE_delete_certificate;
++ SHA512_Transform;
++ X509_STORE_set1_param;
++ STORE_method_get_ctrl_function;
++ STORE_free;
++ PEM_write_ECPrivateKey;
++ STORE_meth_get_unlock_store_fn;
++ STORE_method_get_unlock_store_function;
++ STORE_get_ex_data;
++ EC_KEY_set_public_key;
++ PEM_read_ECPKParameters;
++ X509_CERT_PAIR_new;
++ ENGINE_register_STORE;
++ RSA_generate_key_ex;
++ DSA_generate_parameters_ex;
++ ECParameters_print_fp;
++ X509V3_NAME_from_section;
++ EVP_PKEY_add1_attr;
++ STORE_modify_crl;
++ STORE_list_private_key_start;
++ POLICY_MAPPINGS_it;
++ GENERAL_SUBTREE_it;
++ EC_GROUP_get_curve_name;
++ PEM_write_X509_CERT_PAIR;
++ BIO_dump_indent_cb;
++ d2i_X509_CERT_PAIR;
++ STORE_list_private_key_endp;
++ asn1_const_Finish;
++ i2d_EC_PUBKEY_fp;
++ BN_nist_mod_256;
++ X509_VERIFY_PARAM_add0_table;
++ pqueue_free;
++ BN_BLINDING_create_param;
++ ECDSA_size;
++ d2i_EC_PUBKEY_bio;
++ BN_get0_nist_prime_521;
++ STORE_ATTR_INFO_modify_sha1str;
++ BN_generate_prime_ex;
++ EC_GROUP_new_by_curve_name;
++ SHA256_Final;
++ DH_generate_parameters_ex;
++ PEM_read_bio_ECPrivateKey;
++ STORE_meth_get_cleanup_fn;
++ STORE_method_get_cleanup_function;
++ ENGINE_get_ECDH;
++ d2i_ECDSA_SIG;
++ BN_is_prime_fasttest_ex;
++ ECDSA_sign;
++ X509_policy_check;
++ EVP_PKEY_get_attr_by_NID;
++ STORE_set_ex_data;
++ ENGINE_get_ECDSA;
++ EVP_ecdsa;
++ BN_BLINDING_get_flags;
++ PKCS12_add_cert;
++ STORE_OBJECT_new;
++ ERR_load_ECDH_strings;
++ EC_KEY_dup;
++ EVP_CIPHER_CTX_rand_key;
++ ECDSA_set_method;
++ a2i_IPADDRESS_NC;
++ d2i_ECParameters;
++ STORE_list_certificate_end;
++ STORE_get_crl;
++ X509_POLICY_NODE_print;
++ SHA384_Init;
++ EC_GF2m_simple_method;
++ ECDSA_set_ex_data;
++ SHA384_Final;
++ PKCS7_set_digest;
++ EC_KEY_print;
++ STORE_meth_set_lock_store_fn;
++ STORE_method_set_lock_store_function;
++ ECDSA_get_ex_new_index;
++ SHA384;
++ POLICY_MAPPING_new;
++ STORE_list_certificate_endp;
++ X509_STORE_CTX_get0_policy_tree;
++ EC_GROUP_set_asn1_flag;
++ EC_KEY_check_key;
++ d2i_EC_PUBKEY_fp;
++ PKCS7_set0_type_other;
++ PEM_read_bio_X509_CERT_PAIR;
++ pqueue_next;
++ STORE_meth_get_list_end_fn;
++ STORE_method_get_list_end_function;
++ EVP_PKEY_add1_attr_by_OBJ;
++ X509_VERIFY_PARAM_set_time;
++ pqueue_new;
++ ENGINE_set_default_ECDH;
++ STORE_new_method;
++ PKCS12_add_key;
++ DSO_merge;
++ EC_POINT_hex2point;
++ BIO_dump_cb;
++ SHA256_Update;
++ pqueue_insert;
++ pitem_free;
++ BN_GF2m_mod_inv_arr;
++ ENGINE_unregister_ECDSA;
++ BN_BLINDING_set_thread_id;
++ get_rfc3526_prime_8192;
++ X509_VERIFY_PARAM_clear_flags;
++ get_rfc2409_prime_1024;
++ DH_check_pub_key;
++ get_rfc3526_prime_2048;
++ get_rfc3526_prime_6144;
++ get_rfc3526_prime_1536;
++ get_rfc3526_prime_3072;
++ get_rfc3526_prime_4096;
++ get_rfc2409_prime_768;
++ X509_VERIFY_PARAM_get_flags;
++ EVP_CIPHER_CTX_new;
++ EVP_CIPHER_CTX_free;
++ Camellia_cbc_encrypt;
++ Camellia_cfb128_encrypt;
++ Camellia_cfb1_encrypt;
++ Camellia_cfb8_encrypt;
++ Camellia_ctr128_encrypt;
++ Camellia_cfbr_encrypt_block;
++ Camellia_decrypt;
++ Camellia_ecb_encrypt;
++ Camellia_encrypt;
++ Camellia_ofb128_encrypt;
++ Camellia_set_key;
++ EVP_camellia_128_cbc;
++ EVP_camellia_128_cfb128;
++ EVP_camellia_128_cfb1;
++ EVP_camellia_128_cfb8;
++ EVP_camellia_128_ecb;
++ EVP_camellia_128_ofb;
++ EVP_camellia_192_cbc;
++ EVP_camellia_192_cfb128;
++ EVP_camellia_192_cfb1;
++ EVP_camellia_192_cfb8;
++ EVP_camellia_192_ecb;
++ EVP_camellia_192_ofb;
++ EVP_camellia_256_cbc;
++ EVP_camellia_256_cfb128;
++ EVP_camellia_256_cfb1;
++ EVP_camellia_256_cfb8;
++ EVP_camellia_256_ecb;
++ EVP_camellia_256_ofb;
++ a2i_ipadd;
++ ASIdentifiers_free;
++ i2d_ASIdOrRange;
++ EVP_CIPHER_block_size;
++ v3_asid_is_canonical;
++ IPAddressChoice_free;
++ EVP_CIPHER_CTX_set_app_data;
++ BIO_set_callback_arg;
++ v3_addr_add_prefix;
++ IPAddressOrRange_it;
++ BIO_set_flags;
++ ASIdentifiers_it;
++ v3_addr_get_range;
++ BIO_method_type;
++ v3_addr_inherits;
++ IPAddressChoice_it;
++ AES_ige_encrypt;
++ v3_addr_add_range;
++ EVP_CIPHER_CTX_nid;
++ d2i_ASRange;
++ v3_addr_add_inherit;
++ v3_asid_add_id_or_range;
++ v3_addr_validate_resource_set;
++ EVP_CIPHER_iv_length;
++ EVP_MD_type;
++ v3_asid_canonize;
++ IPAddressRange_free;
++ v3_asid_add_inherit;
++ EVP_CIPHER_CTX_key_length;
++ IPAddressRange_new;
++ ASIdOrRange_new;
++ EVP_MD_size;
++ EVP_MD_CTX_test_flags;
++ BIO_clear_flags;
++ i2d_ASRange;
++ IPAddressRange_it;
++ IPAddressChoice_new;
++ ASIdentifierChoice_new;
++ ASRange_free;
++ EVP_MD_pkey_type;
++ EVP_MD_CTX_clear_flags;
++ IPAddressFamily_free;
++ i2d_IPAddressFamily;
++ IPAddressOrRange_new;
++ EVP_CIPHER_flags;
++ v3_asid_validate_resource_set;
++ d2i_IPAddressRange;
++ AES_bi_ige_encrypt;
++ BIO_get_callback;
++ IPAddressOrRange_free;
++ v3_addr_subset;
++ d2i_IPAddressFamily;
++ v3_asid_subset;
++ BIO_test_flags;
++ i2d_ASIdentifierChoice;
++ ASRange_it;
++ d2i_ASIdentifiers;
++ ASRange_new;
++ d2i_IPAddressChoice;
++ v3_addr_get_afi;
++ EVP_CIPHER_key_length;
++ EVP_Cipher;
++ i2d_IPAddressOrRange;
++ ASIdOrRange_it;
++ EVP_CIPHER_nid;
++ i2d_IPAddressChoice;
++ EVP_CIPHER_CTX_block_size;
++ ASIdentifiers_new;
++ v3_addr_validate_path;
++ IPAddressFamily_new;
++ EVP_MD_CTX_set_flags;
++ v3_addr_is_canonical;
++ i2d_IPAddressRange;
++ IPAddressFamily_it;
++ v3_asid_inherits;
++ EVP_CIPHER_CTX_cipher;
++ EVP_CIPHER_CTX_get_app_data;
++ EVP_MD_block_size;
++ EVP_CIPHER_CTX_flags;
++ v3_asid_validate_path;
++ d2i_IPAddressOrRange;
++ v3_addr_canonize;
++ ASIdentifierChoice_it;
++ EVP_MD_CTX_md;
++ d2i_ASIdentifierChoice;
++ BIO_method_name;
++ EVP_CIPHER_CTX_iv_length;
++ ASIdOrRange_free;
++ ASIdentifierChoice_free;
++ BIO_get_callback_arg;
++ BIO_set_callback;
++ d2i_ASIdOrRange;
++ i2d_ASIdentifiers;
++ SEED_decrypt;
++ SEED_encrypt;
++ SEED_cbc_encrypt;
++ EVP_seed_ofb;
++ SEED_cfb128_encrypt;
++ SEED_ofb128_encrypt;
++ EVP_seed_cbc;
++ SEED_ecb_encrypt;
++ EVP_seed_ecb;
++ SEED_set_key;
++ EVP_seed_cfb128;
++ X509_EXTENSIONS_it;
++ X509_get1_ocsp;
++ OCSP_REQ_CTX_free;
++ i2d_X509_EXTENSIONS;
++ OCSP_sendreq_nbio;
++ OCSP_sendreq_new;
++ d2i_X509_EXTENSIONS;
++ X509_ALGORS_it;
++ X509_ALGOR_get0;
++ X509_ALGOR_set0;
++ AES_unwrap_key;
++ AES_wrap_key;
++ X509at_get0_data_by_OBJ;
++ ASN1_TYPE_set1;
++ ASN1_STRING_set0;
++ i2d_X509_ALGORS;
++ BIO_f_zlib;
++ COMP_zlib_cleanup;
++ d2i_X509_ALGORS;
++ CMS_ReceiptRequest_free;
++ PEM_write_CMS;
++ CMS_add0_CertificateChoices;
++ CMS_unsigned_add1_attr_by_OBJ;
++ ERR_load_CMS_strings;
++ CMS_sign_receipt;
++ i2d_CMS_ContentInfo;
++ CMS_signed_delete_attr;
++ d2i_CMS_bio;
++ CMS_unsigned_get_attr_by_NID;
++ CMS_verify;
++ SMIME_read_CMS;
++ CMS_decrypt_set1_key;
++ CMS_SignerInfo_get0_algs;
++ CMS_add1_cert;
++ CMS_set_detached;
++ CMS_encrypt;
++ CMS_EnvelopedData_create;
++ CMS_uncompress;
++ CMS_add0_crl;
++ CMS_SignerInfo_verify_content;
++ CMS_unsigned_get0_data_by_OBJ;
++ PEM_write_bio_CMS;
++ CMS_unsigned_get_attr;
++ CMS_RecipientInfo_ktri_cert_cmp;
++ CMS_RecipientInfo_ktri_get0_algs;
++ CMS_RecipInfo_ktri_get0_algs;
++ CMS_ContentInfo_free;
++ CMS_final;
++ CMS_add_simple_smimecap;
++ CMS_SignerInfo_verify;
++ CMS_data;
++ CMS_ContentInfo_it;
++ d2i_CMS_ReceiptRequest;
++ CMS_compress;
++ CMS_digest_create;
++ CMS_SignerInfo_cert_cmp;
++ CMS_SignerInfo_sign;
++ CMS_data_create;
++ i2d_CMS_bio;
++ CMS_EncryptedData_set1_key;
++ CMS_decrypt;
++ int_smime_write_ASN1;
++ CMS_unsigned_delete_attr;
++ CMS_unsigned_get_attr_count;
++ CMS_add_smimecap;
++ PEM_read_CMS;
++ CMS_signed_get_attr_by_OBJ;
++ d2i_CMS_ContentInfo;
++ CMS_add_standard_smimecap;
++ CMS_ContentInfo_new;
++ CMS_RecipientInfo_type;
++ CMS_get0_type;
++ CMS_is_detached;
++ CMS_sign;
++ CMS_signed_add1_attr;
++ CMS_unsigned_get_attr_by_OBJ;
++ SMIME_write_CMS;
++ CMS_EncryptedData_decrypt;
++ CMS_get0_RecipientInfos;
++ CMS_add0_RevocationInfoChoice;
++ CMS_decrypt_set1_pkey;
++ CMS_SignerInfo_set1_signer_cert;
++ CMS_get0_signers;
++ CMS_ReceiptRequest_get0_values;
++ CMS_signed_get0_data_by_OBJ;
++ CMS_get0_SignerInfos;
++ CMS_add0_cert;
++ CMS_EncryptedData_encrypt;
++ CMS_digest_verify;
++ CMS_set1_signers_certs;
++ CMS_signed_get_attr;
++ CMS_RecipientInfo_set0_key;
++ CMS_SignedData_init;
++ CMS_RecipientInfo_kekri_get0_id;
++ CMS_verify_receipt;
++ CMS_ReceiptRequest_it;
++ PEM_read_bio_CMS;
++ CMS_get1_crls;
++ CMS_add0_recipient_key;
++ SMIME_read_ASN1;
++ CMS_ReceiptRequest_new;
++ CMS_get0_content;
++ CMS_get1_ReceiptRequest;
++ CMS_signed_add1_attr_by_OBJ;
++ CMS_RecipientInfo_kekri_id_cmp;
++ CMS_add1_ReceiptRequest;
++ CMS_SignerInfo_get0_signer_id;
++ CMS_unsigned_add1_attr_by_NID;
++ CMS_unsigned_add1_attr;
++ CMS_signed_get_attr_by_NID;
++ CMS_get1_certs;
++ CMS_signed_add1_attr_by_NID;
++ CMS_unsigned_add1_attr_by_txt;
++ CMS_dataFinal;
++ CMS_RecipientInfo_ktri_get0_signer_id;
++ CMS_RecipInfo_ktri_get0_sigr_id;
++ i2d_CMS_ReceiptRequest;
++ CMS_add1_recipient_cert;
++ CMS_dataInit;
++ CMS_signed_add1_attr_by_txt;
++ CMS_RecipientInfo_decrypt;
++ CMS_signed_get_attr_count;
++ CMS_get0_eContentType;
++ CMS_set1_eContentType;
++ CMS_ReceiptRequest_create0;
++ CMS_add1_signer;
++ CMS_RecipientInfo_set0_pkey;
++ ENGINE_set_load_ssl_client_cert_function;
++ ENGINE_set_ld_ssl_clnt_cert_fn;
++ ENGINE_get_ssl_client_cert_function;
++ ENGINE_get_ssl_client_cert_fn;
++ ENGINE_load_ssl_client_cert;
++ ENGINE_load_capi;
++ OPENSSL_isservice;
++ FIPS_dsa_sig_decode;
++ EVP_CIPHER_CTX_clear_flags;
++ FIPS_rand_status;
++ FIPS_rand_set_key;
++ CRYPTO_set_mem_info_functions;
++ RSA_X931_generate_key_ex;
++ int_ERR_set_state_func;
++ int_EVP_MD_set_engine_callbacks;
++ int_CRYPTO_set_do_dynlock_callback;
++ FIPS_rng_stick;
++ EVP_CIPHER_CTX_set_flags;
++ BN_X931_generate_prime_ex;
++ FIPS_selftest_check;
++ FIPS_rand_set_dt;
++ CRYPTO_dbg_pop_info;
++ FIPS_dsa_free;
++ RSA_X931_derive_ex;
++ FIPS_rsa_new;
++ FIPS_rand_bytes;
++ fips_cipher_test;
++ EVP_CIPHER_CTX_test_flags;
++ CRYPTO_malloc_debug_init;
++ CRYPTO_dbg_push_info;
++ FIPS_corrupt_rsa_keygen;
++ FIPS_dh_new;
++ FIPS_corrupt_dsa_keygen;
++ FIPS_dh_free;
++ fips_pkey_signature_test;
++ EVP_add_alg_module;
++ int_RAND_init_engine_callbacks;
++ int_EVP_CIPHER_set_engine_callbacks;
++ int_EVP_MD_init_engine_callbacks;
++ FIPS_rand_test_mode;
++ FIPS_rand_reset;
++ FIPS_dsa_new;
++ int_RAND_set_callbacks;
++ BN_X931_derive_prime_ex;
++ int_ERR_lib_init;
++ int_EVP_CIPHER_init_engine_callbacks;
++ FIPS_rsa_free;
++ FIPS_dsa_sig_encode;
++ CRYPTO_dbg_remove_all_info;
++ OPENSSL_init;
++ CRYPTO_strdup;
++ JPAKE_STEP3A_process;
++ JPAKE_STEP1_release;
++ JPAKE_get_shared_key;
++ JPAKE_STEP3B_init;
++ JPAKE_STEP1_generate;
++ JPAKE_STEP1_init;
++ JPAKE_STEP3B_process;
++ JPAKE_STEP2_generate;
++ JPAKE_CTX_new;
++ JPAKE_CTX_free;
++ JPAKE_STEP3B_release;
++ JPAKE_STEP3A_release;
++ JPAKE_STEP2_process;
++ JPAKE_STEP3B_generate;
++ JPAKE_STEP1_process;
++ JPAKE_STEP3A_generate;
++ JPAKE_STEP2_release;
++ JPAKE_STEP3A_init;
++ ERR_load_JPAKE_strings;
++ JPAKE_STEP2_init;
++ pqueue_size;
++ i2d_TS_ACCURACY;
++ i2d_TS_MSG_IMPRINT_fp;
++ i2d_TS_MSG_IMPRINT;
++ EVP_PKEY_print_public;
++ EVP_PKEY_CTX_new;
++ i2d_TS_TST_INFO;
++ EVP_PKEY_asn1_find;
++ DSO_METHOD_beos;
++ TS_CONF_load_cert;
++ TS_REQ_get_ext;
++ EVP_PKEY_sign_init;
++ ASN1_item_print;
++ TS_TST_INFO_set_nonce;
++ TS_RESP_dup;
++ ENGINE_register_pkey_meths;
++ EVP_PKEY_asn1_add0;
++ PKCS7_add0_attrib_signing_time;
++ i2d_TS_TST_INFO_fp;
++ BIO_asn1_get_prefix;
++ TS_TST_INFO_set_time;
++ EVP_PKEY_meth_set_decrypt;
++ EVP_PKEY_set_type_str;
++ EVP_PKEY_CTX_get_keygen_info;
++ TS_REQ_set_policy_id;
++ d2i_TS_RESP_fp;
++ ENGINE_get_pkey_asn1_meth_engine;
++ ENGINE_get_pkey_asn1_meth_eng;
++ WHIRLPOOL_Init;
++ TS_RESP_set_status_info;
++ EVP_PKEY_keygen;
++ EVP_DigestSignInit;
++ TS_ACCURACY_set_millis;
++ TS_REQ_dup;
++ GENERAL_NAME_dup;
++ ASN1_SEQUENCE_ANY_it;
++ WHIRLPOOL;
++ X509_STORE_get1_crls;
++ ENGINE_get_pkey_asn1_meth;
++ EVP_PKEY_asn1_new;
++ BIO_new_NDEF;
++ ENGINE_get_pkey_meth;
++ TS_MSG_IMPRINT_set_algo;
++ i2d_TS_TST_INFO_bio;
++ TS_TST_INFO_set_ordering;
++ TS_TST_INFO_get_ext_by_OBJ;
++ CRYPTO_THREADID_set_pointer;
++ TS_CONF_get_tsa_section;
++ SMIME_write_ASN1;
++ TS_RESP_CTX_set_signer_key;
++ EVP_PKEY_encrypt_old;
++ EVP_PKEY_encrypt_init;
++ CRYPTO_THREADID_cpy;
++ ASN1_PCTX_get_cert_flags;
++ i2d_ESS_SIGNING_CERT;
++ TS_CONF_load_key;
++ i2d_ASN1_SEQUENCE_ANY;
++ d2i_TS_MSG_IMPRINT_bio;
++ EVP_PKEY_asn1_set_public;
++ b2i_PublicKey_bio;
++ BIO_asn1_set_prefix;
++ EVP_PKEY_new_mac_key;
++ BIO_new_CMS;
++ CRYPTO_THREADID_cmp;
++ TS_REQ_ext_free;
++ EVP_PKEY_asn1_set_free;
++ EVP_PKEY_get0_asn1;
++ d2i_NETSCAPE_X509;
++ EVP_PKEY_verify_recover_init;
++ EVP_PKEY_CTX_set_data;
++ EVP_PKEY_keygen_init;
++ TS_RESP_CTX_set_status_info;
++ TS_MSG_IMPRINT_get_algo;
++ TS_REQ_print_bio;
++ EVP_PKEY_CTX_ctrl_str;
++ EVP_PKEY_get_default_digest_nid;
++ PEM_write_bio_PKCS7_stream;
++ TS_MSG_IMPRINT_print_bio;
++ BN_asc2bn;
++ TS_REQ_get_policy_id;
++ ENGINE_set_default_pkey_asn1_meths;
++ ENGINE_set_def_pkey_asn1_meths;
++ d2i_TS_ACCURACY;
++ DSO_global_lookup;
++ TS_CONF_set_tsa_name;
++ i2d_ASN1_SET_ANY;
++ ENGINE_load_gost;
++ WHIRLPOOL_BitUpdate;
++ ASN1_PCTX_get_flags;
++ TS_TST_INFO_get_ext_by_NID;
++ TS_RESP_new;
++ ESS_CERT_ID_dup;
++ TS_STATUS_INFO_dup;
++ TS_REQ_delete_ext;
++ EVP_DigestVerifyFinal;
++ EVP_PKEY_print_params;
++ i2d_CMS_bio_stream;
++ TS_REQ_get_msg_imprint;
++ OBJ_find_sigid_by_algs;
++ TS_TST_INFO_get_serial;
++ TS_REQ_get_nonce;
++ X509_PUBKEY_set0_param;
++ EVP_PKEY_CTX_set0_keygen_info;
++ DIST_POINT_set_dpname;
++ i2d_ISSUING_DIST_POINT;
++ ASN1_SET_ANY_it;
++ EVP_PKEY_CTX_get_data;
++ TS_STATUS_INFO_print_bio;
++ EVP_PKEY_derive_init;
++ d2i_TS_TST_INFO;
++ EVP_PKEY_asn1_add_alias;
++ d2i_TS_RESP_bio;
++ OTHERNAME_cmp;
++ GENERAL_NAME_set0_value;
++ PKCS7_RECIP_INFO_get0_alg;
++ TS_RESP_CTX_new;
++ TS_RESP_set_tst_info;
++ PKCS7_final;
++ EVP_PKEY_base_id;
++ TS_RESP_CTX_set_signer_cert;
++ TS_REQ_set_msg_imprint;
++ EVP_PKEY_CTX_ctrl;
++ TS_CONF_set_digests;
++ d2i_TS_MSG_IMPRINT;
++ EVP_PKEY_meth_set_ctrl;
++ TS_REQ_get_ext_by_NID;
++ PKCS5_pbe_set0_algor;
++ BN_BLINDING_thread_id;
++ TS_ACCURACY_new;
++ X509_CRL_METHOD_free;
++ ASN1_PCTX_get_nm_flags;
++ EVP_PKEY_meth_set_sign;
++ CRYPTO_THREADID_current;
++ EVP_PKEY_decrypt_init;
++ NETSCAPE_X509_free;
++ i2b_PVK_bio;
++ EVP_PKEY_print_private;
++ GENERAL_NAME_get0_value;
++ b2i_PVK_bio;
++ ASN1_UTCTIME_adj;
++ TS_TST_INFO_new;
++ EVP_MD_do_all_sorted;
++ TS_CONF_set_default_engine;
++ TS_ACCURACY_set_seconds;
++ TS_TST_INFO_get_time;
++ PKCS8_pkey_get0;
++ EVP_PKEY_asn1_get0;
++ OBJ_add_sigid;
++ PKCS7_SIGNER_INFO_sign;
++ EVP_PKEY_paramgen_init;
++ EVP_PKEY_sign;
++ OBJ_sigid_free;
++ EVP_PKEY_meth_set_init;
++ d2i_ESS_ISSUER_SERIAL;
++ ISSUING_DIST_POINT_new;
++ ASN1_TIME_adj;
++ TS_OBJ_print_bio;
++ EVP_PKEY_meth_set_verify_recover;
++ EVP_PKEY_meth_set_vrfy_recover;
++ TS_RESP_get_status_info;
++ CMS_stream;
++ EVP_PKEY_CTX_set_cb;
++ PKCS7_to_TS_TST_INFO;
++ ASN1_PCTX_get_oid_flags;
++ TS_TST_INFO_add_ext;
++ EVP_PKEY_meth_set_derive;
++ i2d_TS_RESP_fp;
++ i2d_TS_MSG_IMPRINT_bio;
++ TS_RESP_CTX_set_accuracy;
++ TS_REQ_set_nonce;
++ ESS_CERT_ID_new;
++ ENGINE_pkey_asn1_find_str;
++ TS_REQ_get_ext_count;
++ BUF_reverse;
++ TS_TST_INFO_print_bio;
++ d2i_ISSUING_DIST_POINT;
++ ENGINE_get_pkey_meths;
++ i2b_PrivateKey_bio;
++ i2d_TS_RESP;
++ b2i_PublicKey;
++ TS_VERIFY_CTX_cleanup;
++ TS_STATUS_INFO_free;
++ TS_RESP_verify_token;
++ OBJ_bsearch_ex_;
++ ASN1_bn_print;
++ EVP_PKEY_asn1_get_count;
++ ENGINE_register_pkey_asn1_meths;
++ ASN1_PCTX_set_nm_flags;
++ EVP_DigestVerifyInit;
++ ENGINE_set_default_pkey_meths;
++ TS_TST_INFO_get_policy_id;
++ TS_REQ_get_cert_req;
++ X509_CRL_set_meth_data;
++ PKCS8_pkey_set0;
++ ASN1_STRING_copy;
++ d2i_TS_TST_INFO_fp;
++ X509_CRL_match;
++ EVP_PKEY_asn1_set_private;
++ TS_TST_INFO_get_ext_d2i;
++ TS_RESP_CTX_add_policy;
++ d2i_TS_RESP;
++ TS_CONF_load_certs;
++ TS_TST_INFO_get_msg_imprint;
++ ERR_load_TS_strings;
++ TS_TST_INFO_get_version;
++ EVP_PKEY_CTX_dup;
++ EVP_PKEY_meth_set_verify;
++ i2b_PublicKey_bio;
++ TS_CONF_set_certs;
++ EVP_PKEY_asn1_get0_info;
++ TS_VERIFY_CTX_free;
++ TS_REQ_get_ext_by_critical;
++ TS_RESP_CTX_set_serial_cb;
++ X509_CRL_get_meth_data;
++ TS_RESP_CTX_set_time_cb;
++ TS_MSG_IMPRINT_get_msg;
++ TS_TST_INFO_ext_free;
++ TS_REQ_get_version;
++ TS_REQ_add_ext;
++ EVP_PKEY_CTX_set_app_data;
++ OBJ_bsearch_;
++ EVP_PKEY_meth_set_verifyctx;
++ i2d_PKCS7_bio_stream;
++ CRYPTO_THREADID_set_numeric;
++ PKCS7_sign_add_signer;
++ d2i_TS_TST_INFO_bio;
++ TS_TST_INFO_get_ordering;
++ TS_RESP_print_bio;
++ TS_TST_INFO_get_exts;
++ HMAC_CTX_copy;
++ PKCS5_pbe2_set_iv;
++ ENGINE_get_pkey_asn1_meths;
++ b2i_PrivateKey;
++ EVP_PKEY_CTX_get_app_data;
++ TS_REQ_set_cert_req;
++ CRYPTO_THREADID_set_callback;
++ TS_CONF_set_serial;
++ TS_TST_INFO_free;
++ d2i_TS_REQ_fp;
++ TS_RESP_verify_response;
++ i2d_ESS_ISSUER_SERIAL;
++ TS_ACCURACY_get_seconds;
++ EVP_CIPHER_do_all;
++ b2i_PrivateKey_bio;
++ OCSP_CERTID_dup;
++ X509_PUBKEY_get0_param;
++ TS_MSG_IMPRINT_dup;
++ PKCS7_print_ctx;
++ i2d_TS_REQ_bio;
++ EVP_whirlpool;
++ EVP_PKEY_asn1_set_param;
++ EVP_PKEY_meth_set_encrypt;
++ ASN1_PCTX_set_flags;
++ i2d_ESS_CERT_ID;
++ TS_VERIFY_CTX_new;
++ TS_RESP_CTX_set_extension_cb;
++ ENGINE_register_all_pkey_meths;
++ TS_RESP_CTX_set_status_info_cond;
++ TS_RESP_CTX_set_stat_info_cond;
++ EVP_PKEY_verify;
++ WHIRLPOOL_Final;
++ X509_CRL_METHOD_new;
++ EVP_DigestSignFinal;
++ TS_RESP_CTX_set_def_policy;
++ NETSCAPE_X509_it;
++ TS_RESP_create_response;
++ PKCS7_SIGNER_INFO_get0_algs;
++ TS_TST_INFO_get_nonce;
++ EVP_PKEY_decrypt_old;
++ TS_TST_INFO_set_policy_id;
++ TS_CONF_set_ess_cert_id_chain;
++ EVP_PKEY_CTX_get0_pkey;
++ d2i_TS_REQ;
++ EVP_PKEY_asn1_find_str;
++ BIO_f_asn1;
++ ESS_SIGNING_CERT_new;
++ EVP_PBE_find;
++ X509_CRL_get0_by_cert;
++ EVP_PKEY_derive;
++ i2d_TS_REQ;
++ TS_TST_INFO_delete_ext;
++ ESS_ISSUER_SERIAL_free;
++ ASN1_PCTX_set_str_flags;
++ ENGINE_get_pkey_asn1_meth_str;
++ TS_CONF_set_signer_key;
++ TS_ACCURACY_get_millis;
++ TS_RESP_get_token;
++ TS_ACCURACY_dup;
++ ENGINE_register_all_pkey_asn1_meths;
++ ENGINE_reg_all_pkey_asn1_meths;
++ X509_CRL_set_default_method;
++ CRYPTO_THREADID_hash;
++ CMS_ContentInfo_print_ctx;
++ TS_RESP_free;
++ ISSUING_DIST_POINT_free;
++ ESS_ISSUER_SERIAL_new;
++ CMS_add1_crl;
++ PKCS7_add1_attrib_digest;
++ TS_RESP_CTX_add_md;
++ TS_TST_INFO_dup;
++ ENGINE_set_pkey_asn1_meths;
++ PEM_write_bio_Parameters;
++ TS_TST_INFO_get_accuracy;
++ X509_CRL_get0_by_serial;
++ TS_TST_INFO_set_version;
++ TS_RESP_CTX_get_tst_info;
++ TS_RESP_verify_signature;
++ CRYPTO_THREADID_get_callback;
++ TS_TST_INFO_get_tsa;
++ TS_STATUS_INFO_new;
++ EVP_PKEY_CTX_get_cb;
++ TS_REQ_get_ext_d2i;
++ GENERAL_NAME_set0_othername;
++ TS_TST_INFO_get_ext_count;
++ TS_RESP_CTX_get_request;
++ i2d_NETSCAPE_X509;
++ ENGINE_get_pkey_meth_engine;
++ EVP_PKEY_meth_set_signctx;
++ EVP_PKEY_asn1_copy;
++ ASN1_TYPE_cmp;
++ EVP_CIPHER_do_all_sorted;
++ EVP_PKEY_CTX_free;
++ ISSUING_DIST_POINT_it;
++ d2i_TS_MSG_IMPRINT_fp;
++ X509_STORE_get1_certs;
++ EVP_PKEY_CTX_get_operation;
++ d2i_ESS_SIGNING_CERT;
++ TS_CONF_set_ordering;
++ EVP_PBE_alg_add_type;
++ TS_REQ_set_version;
++ EVP_PKEY_get0;
++ BIO_asn1_set_suffix;
++ i2d_TS_STATUS_INFO;
++ EVP_MD_do_all;
++ TS_TST_INFO_set_accuracy;
++ PKCS7_add_attrib_content_type;
++ ERR_remove_thread_state;
++ EVP_PKEY_meth_add0;
++ TS_TST_INFO_set_tsa;
++ EVP_PKEY_meth_new;
++ WHIRLPOOL_Update;
++ TS_CONF_set_accuracy;
++ ASN1_PCTX_set_oid_flags;
++ ESS_SIGNING_CERT_dup;
++ d2i_TS_REQ_bio;
++ X509_time_adj_ex;
++ TS_RESP_CTX_add_flags;
++ d2i_TS_STATUS_INFO;
++ TS_MSG_IMPRINT_set_msg;
++ BIO_asn1_get_suffix;
++ TS_REQ_free;
++ EVP_PKEY_meth_free;
++ TS_REQ_get_exts;
++ TS_RESP_CTX_set_clock_precision_digits;
++ TS_RESP_CTX_set_clk_prec_digits;
++ TS_RESP_CTX_add_failure_info;
++ i2d_TS_RESP_bio;
++ EVP_PKEY_CTX_get0_peerkey;
++ PEM_write_bio_CMS_stream;
++ TS_REQ_new;
++ TS_MSG_IMPRINT_new;
++ EVP_PKEY_meth_find;
++ EVP_PKEY_id;
++ TS_TST_INFO_set_serial;
++ a2i_GENERAL_NAME;
++ TS_CONF_set_crypto_device;
++ EVP_PKEY_verify_init;
++ TS_CONF_set_policies;
++ ASN1_PCTX_new;
++ ESS_CERT_ID_free;
++ ENGINE_unregister_pkey_meths;
++ TS_MSG_IMPRINT_free;
++ TS_VERIFY_CTX_init;
++ PKCS7_stream;
++ TS_RESP_CTX_set_certs;
++ TS_CONF_set_def_policy;
++ ASN1_GENERALIZEDTIME_adj;
++ NETSCAPE_X509_new;
++ TS_ACCURACY_free;
++ TS_RESP_get_tst_info;
++ EVP_PKEY_derive_set_peer;
++ PEM_read_bio_Parameters;
++ TS_CONF_set_clock_precision_digits;
++ TS_CONF_set_clk_prec_digits;
++ ESS_ISSUER_SERIAL_dup;
++ TS_ACCURACY_get_micros;
++ ASN1_PCTX_get_str_flags;
++ NAME_CONSTRAINTS_check;
++ ASN1_BIT_STRING_check;
++ X509_check_akid;
++ ENGINE_unregister_pkey_asn1_meths;
++ ENGINE_unreg_pkey_asn1_meths;
++ ASN1_PCTX_free;
++ PEM_write_bio_ASN1_stream;
++ i2d_ASN1_bio_stream;
++ TS_X509_ALGOR_print_bio;
++ EVP_PKEY_meth_set_cleanup;
++ EVP_PKEY_asn1_free;
++ ESS_SIGNING_CERT_free;
++ TS_TST_INFO_set_msg_imprint;
++ GENERAL_NAME_cmp;
++ d2i_ASN1_SET_ANY;
++ ENGINE_set_pkey_meths;
++ i2d_TS_REQ_fp;
++ d2i_ASN1_SEQUENCE_ANY;
++ GENERAL_NAME_get0_otherName;
++ d2i_ESS_CERT_ID;
++ OBJ_find_sigid_algs;
++ EVP_PKEY_meth_set_keygen;
++ PKCS5_PBKDF2_HMAC;
++ EVP_PKEY_paramgen;
++ EVP_PKEY_meth_set_paramgen;
++ BIO_new_PKCS7;
++ EVP_PKEY_verify_recover;
++ TS_ext_print_bio;
++ TS_ASN1_INTEGER_print_bio;
++ check_defer;
++ DSO_pathbyaddr;
++ EVP_PKEY_set_type;
++ TS_ACCURACY_set_micros;
++ TS_REQ_to_TS_VERIFY_CTX;
++ EVP_PKEY_meth_set_copy;
++ ASN1_PCTX_set_cert_flags;
++ TS_TST_INFO_get_ext;
++ EVP_PKEY_asn1_set_ctrl;
++ TS_TST_INFO_get_ext_by_critical;
++ EVP_PKEY_CTX_new_id;
++ TS_REQ_get_ext_by_OBJ;
++ TS_CONF_set_signer_cert;
++ X509_NAME_hash_old;
++ ASN1_TIME_set_string;
++ EVP_MD_flags;
++ TS_RESP_CTX_free;
++ DSAparams_dup;
++ DHparams_dup;
++ OCSP_REQ_CTX_add1_header;
++ OCSP_REQ_CTX_set1_req;
++ X509_STORE_set_verify_cb;
++ X509_STORE_CTX_get0_current_crl;
++ X509_STORE_CTX_get0_parent_ctx;
++ X509_STORE_CTX_get0_current_issuer;
++ X509_STORE_CTX_get0_cur_issuer;
++ X509_issuer_name_hash_old;
++ X509_subject_name_hash_old;
++ EVP_CIPHER_CTX_copy;
++ UI_method_get_prompt_constructor;
++ UI_method_get_prompt_constructr;
++ UI_method_set_prompt_constructor;
++ UI_method_set_prompt_constructr;
++ EVP_read_pw_string_min;
++ CRYPTO_cts128_encrypt;
++ CRYPTO_cts128_decrypt_block;
++ CRYPTO_cfb128_1_encrypt;
++ CRYPTO_cbc128_encrypt;
++ CRYPTO_ctr128_encrypt;
++ CRYPTO_ofb128_encrypt;
++ CRYPTO_cts128_decrypt;
++ CRYPTO_cts128_encrypt_block;
++ CRYPTO_cbc128_decrypt;
++ CRYPTO_cfb128_encrypt;
++ CRYPTO_cfb128_8_encrypt;
++
++ local:
++ *;
++};
++
++
++OPENSSL_1.0.1 {
++ global:
++ SSL_renegotiate_abbreviated;
++ TLSv1_1_method;
++ TLSv1_1_client_method;
++ TLSv1_1_server_method;
++ SSL_CTX_set_srp_client_pwd_callback;
++ SSL_CTX_set_srp_client_pwd_cb;
++ SSL_get_srp_g;
++ SSL_CTX_set_srp_username_callback;
++ SSL_CTX_set_srp_un_cb;
++ SSL_get_srp_userinfo;
++ SSL_set_srp_server_param;
++ SSL_set_srp_server_param_pw;
++ SSL_get_srp_N;
++ SSL_get_srp_username;
++ SSL_CTX_set_srp_password;
++ SSL_CTX_set_srp_strength;
++ SSL_CTX_set_srp_verify_param_callback;
++ SSL_CTX_set_srp_vfy_param_cb;
++ SSL_CTX_set_srp_cb_arg;
++ SSL_CTX_set_srp_username;
++ SSL_CTX_SRP_CTX_init;
++ SSL_SRP_CTX_init;
++ SRP_Calc_A_param;
++ SRP_generate_server_master_secret;
++ SRP_gen_server_master_secret;
++ SSL_CTX_SRP_CTX_free;
++ SRP_generate_client_master_secret;
++ SRP_gen_client_master_secret;
++ SSL_srp_server_param_with_username;
++ SSL_srp_server_param_with_un;
++ SSL_SRP_CTX_free;
++ SSL_set_debug;
++ SSL_SESSION_get0_peer;
++ TLSv1_2_client_method;
++ SSL_SESSION_set1_id_context;
++ TLSv1_2_server_method;
++ SSL_cache_hit;
++ SSL_get0_kssl_ctx;
++ SSL_set0_kssl_ctx;
++ SSL_set_state;
++ SSL_CIPHER_get_id;
++ TLSv1_2_method;
++ kssl_ctx_get0_client_princ;
++ SSL_export_keying_material;
++ SSL_set_tlsext_use_srtp;
++ SSL_CTX_set_next_protos_advertised_cb;
++ SSL_CTX_set_next_protos_adv_cb;
++ SSL_get0_next_proto_negotiated;
++ SSL_get_selected_srtp_profile;
++ SSL_CTX_set_tlsext_use_srtp;
++ SSL_select_next_proto;
++ SSL_get_srtp_profiles;
++ SSL_CTX_set_next_proto_select_cb;
++ SSL_CTX_set_next_proto_sel_cb;
++ SSL_SESSION_get_compress_id;
++
++ SRP_VBASE_get_by_user;
++ SRP_Calc_server_key;
++ SRP_create_verifier;
++ SRP_create_verifier_BN;
++ SRP_Calc_u;
++ SRP_VBASE_free;
++ SRP_Calc_client_key;
++ SRP_get_default_gN;
++ SRP_Calc_x;
++ SRP_Calc_B;
++ SRP_VBASE_new;
++ SRP_check_known_gN_param;
++ SRP_Calc_A;
++ SRP_Verify_A_mod_N;
++ SRP_VBASE_init;
++ SRP_Verify_B_mod_N;
++ EC_KEY_set_public_key_affine_coordinates;
++ EC_KEY_set_pub_key_aff_coords;
++ EVP_aes_192_ctr;
++ EVP_PKEY_meth_get0_info;
++ EVP_PKEY_meth_copy;
++ ERR_add_error_vdata;
++ EVP_aes_128_ctr;
++ EVP_aes_256_ctr;
++ EC_GFp_nistp224_method;
++ EC_KEY_get_flags;
++ RSA_padding_add_PKCS1_PSS_mgf1;
++ EVP_aes_128_xts;
++ EVP_aes_256_xts;
++ EVP_aes_128_gcm;
++ EC_KEY_clear_flags;
++ EC_KEY_set_flags;
++ EVP_aes_256_ccm;
++ RSA_verify_PKCS1_PSS_mgf1;
++ EVP_aes_128_ccm;
++ EVP_aes_192_gcm;
++ X509_ALGOR_set_md;
++ RAND_init_fips;
++ EVP_aes_256_gcm;
++ EVP_aes_192_ccm;
++ CMAC_CTX_copy;
++ CMAC_CTX_free;
++ CMAC_CTX_get0_cipher_ctx;
++ CMAC_CTX_cleanup;
++ CMAC_Init;
++ CMAC_Update;
++ CMAC_resume;
++ CMAC_CTX_new;
++ CMAC_Final;
++ CRYPTO_ctr128_encrypt_ctr32;
++ CRYPTO_gcm128_release;
++ CRYPTO_ccm128_decrypt_ccm64;
++ CRYPTO_ccm128_encrypt;
++ CRYPTO_gcm128_encrypt;
++ CRYPTO_xts128_encrypt;
++ EVP_rc4_hmac_md5;
++ CRYPTO_nistcts128_decrypt_block;
++ CRYPTO_gcm128_setiv;
++ CRYPTO_nistcts128_encrypt;
++ EVP_aes_128_cbc_hmac_sha1;
++ CRYPTO_gcm128_tag;
++ CRYPTO_ccm128_encrypt_ccm64;
++ ENGINE_load_rdrand;
++ CRYPTO_ccm128_setiv;
++ CRYPTO_nistcts128_encrypt_block;
++ CRYPTO_gcm128_aad;
++ CRYPTO_ccm128_init;
++ CRYPTO_nistcts128_decrypt;
++ CRYPTO_gcm128_new;
++ CRYPTO_ccm128_tag;
++ CRYPTO_ccm128_decrypt;
++ CRYPTO_ccm128_aad;
++ CRYPTO_gcm128_init;
++ CRYPTO_gcm128_decrypt;
++ ENGINE_load_rsax;
++ CRYPTO_gcm128_decrypt_ctr32;
++ CRYPTO_gcm128_encrypt_ctr32;
++ CRYPTO_gcm128_finish;
++ EVP_aes_256_cbc_hmac_sha1;
++ PKCS5_pbkdf2_set;
++ CMS_add0_recipient_password;
++ CMS_decrypt_set1_password;
++ CMS_RecipientInfo_set0_password;
++ RAND_set_fips_drbg_type;
++ X509_REQ_sign_ctx;
++ RSA_PSS_PARAMS_new;
++ X509_CRL_sign_ctx;
++ X509_signature_dump;
++ d2i_RSA_PSS_PARAMS;
++ RSA_PSS_PARAMS_it;
++ RSA_PSS_PARAMS_free;
++ X509_sign_ctx;
++ i2d_RSA_PSS_PARAMS;
++ ASN1_item_sign_ctx;
++ EC_GFp_nistp521_method;
++ EC_GFp_nistp256_method;
++ OPENSSL_stderr;
++ OPENSSL_cpuid_setup;
++ OPENSSL_showfatal;
++ BIO_new_dgram_sctp;
++ BIO_dgram_sctp_msg_waiting;
++ BIO_dgram_sctp_wait_for_dry;
++ BIO_s_datagram_sctp;
++ BIO_dgram_is_sctp;
++ BIO_dgram_sctp_notification_cb;
++} OPENSSL_1.0.0;
++
++OPENSSL_1.0.1d {
++ global:
++ CRYPTO_memcmp;
++} OPENSSL_1.0.1;
++
++OPENSSL_1.0.1s {
++ global:
++ SRP_VBASE_get1_by_user;
++ SRP_user_pwd_free;
++} OPENSSL_1.0.1d;
++
++OPENSSL_1.0.2 {
++ global:
++ SSL_CTX_set_alpn_protos;
++ SSL_set_alpn_protos;
++ SSL_CTX_set_alpn_select_cb;
++ SSL_get0_alpn_selected;
++ SSL_CTX_set_custom_cli_ext;
++ SSL_CTX_set_custom_srv_ext;
++ SSL_CTX_set_srv_supp_data;
++ SSL_CTX_set_cli_supp_data;
++ SSL_set_cert_cb;
++ SSL_CTX_use_serverinfo;
++ SSL_CTX_use_serverinfo_file;
++ SSL_CTX_set_cert_cb;
++ SSL_CTX_get0_param;
++ SSL_get0_param;
++ SSL_certs_clear;
++ DTLSv1_2_method;
++ DTLSv1_2_server_method;
++ DTLSv1_2_client_method;
++ DTLS_method;
++ DTLS_server_method;
++ DTLS_client_method;
++ SSL_CTX_get_ssl_method;
++ SSL_CTX_get0_certificate;
++ SSL_CTX_get0_privatekey;
++ SSL_COMP_set0_compression_methods;
++ SSL_COMP_free_compression_methods;
++ SSL_CIPHER_find;
++ SSL_is_server;
++ SSL_CONF_CTX_new;
++ SSL_CONF_CTX_finish;
++ SSL_CONF_CTX_free;
++ SSL_CONF_CTX_set_flags;
++ SSL_CONF_CTX_clear_flags;
++ SSL_CONF_CTX_set1_prefix;
++ SSL_CONF_CTX_set_ssl;
++ SSL_CONF_CTX_set_ssl_ctx;
++ SSL_CONF_cmd;
++ SSL_CONF_cmd_argv;
++ SSL_CONF_cmd_value_type;
++ SSL_trace;
++ SSL_CIPHER_standard_name;
++ SSL_get_tlsa_record_byname;
++ ASN1_TIME_diff;
++ BIO_hex_string;
++ CMS_RecipientInfo_get0_pkey_ctx;
++ CMS_RecipientInfo_encrypt;
++ CMS_SignerInfo_get0_pkey_ctx;
++ CMS_SignerInfo_get0_md_ctx;
++ CMS_SignerInfo_get0_signature;
++ CMS_RecipientInfo_kari_get0_alg;
++ CMS_RecipientInfo_kari_get0_reks;
++ CMS_RecipientInfo_kari_get0_orig_id;
++ CMS_RecipientInfo_kari_orig_id_cmp;
++ CMS_RecipientEncryptedKey_get0_id;
++ CMS_RecipientEncryptedKey_cert_cmp;
++ CMS_RecipientInfo_kari_set0_pkey;
++ CMS_RecipientInfo_kari_get0_ctx;
++ CMS_RecipientInfo_kari_decrypt;
++ CMS_SharedInfo_encode;
++ DH_compute_key_padded;
++ d2i_DHxparams;
++ i2d_DHxparams;
++ DH_get_1024_160;
++ DH_get_2048_224;
++ DH_get_2048_256;
++ DH_KDF_X9_42;
++ ECDH_KDF_X9_62;
++ ECDSA_METHOD_new;
++ ECDSA_METHOD_free;
++ ECDSA_METHOD_set_app_data;
++ ECDSA_METHOD_get_app_data;
++ ECDSA_METHOD_set_sign;
++ ECDSA_METHOD_set_sign_setup;
++ ECDSA_METHOD_set_verify;
++ ECDSA_METHOD_set_flags;
++ ECDSA_METHOD_set_name;
++ EVP_des_ede3_wrap;
++ EVP_aes_128_wrap;
++ EVP_aes_192_wrap;
++ EVP_aes_256_wrap;
++ EVP_aes_128_cbc_hmac_sha256;
++ EVP_aes_256_cbc_hmac_sha256;
++ CRYPTO_128_wrap;
++ CRYPTO_128_unwrap;
++ OCSP_REQ_CTX_nbio;
++ OCSP_REQ_CTX_new;
++ OCSP_set_max_response_length;
++ OCSP_REQ_CTX_i2d;
++ OCSP_REQ_CTX_nbio_d2i;
++ OCSP_REQ_CTX_get0_mem_bio;
++ OCSP_REQ_CTX_http;
++ RSA_padding_add_PKCS1_OAEP_mgf1;
++ RSA_padding_check_PKCS1_OAEP_mgf1;
++ RSA_OAEP_PARAMS_free;
++ RSA_OAEP_PARAMS_it;
++ RSA_OAEP_PARAMS_new;
++ SSL_get_sigalgs;
++ SSL_get_shared_sigalgs;
++ SSL_check_chain;
++ X509_chain_up_ref;
++ X509_http_nbio;
++ X509_CRL_http_nbio;
++ X509_REVOKED_dup;
++ i2d_re_X509_tbs;
++ X509_get0_signature;
++ X509_get_signature_nid;
++ X509_CRL_diff;
++ X509_chain_check_suiteb;
++ X509_CRL_check_suiteb;
++ X509_check_host;
++ X509_check_email;
++ X509_check_ip;
++ X509_check_ip_asc;
++ X509_STORE_set_lookup_crls_cb;
++ X509_STORE_CTX_get0_store;
++ X509_VERIFY_PARAM_set1_host;
++ X509_VERIFY_PARAM_add1_host;
++ X509_VERIFY_PARAM_set_hostflags;
++ X509_VERIFY_PARAM_get0_peername;
++ X509_VERIFY_PARAM_set1_email;
++ X509_VERIFY_PARAM_set1_ip;
++ X509_VERIFY_PARAM_set1_ip_asc;
++ X509_VERIFY_PARAM_get0_name;
++ X509_VERIFY_PARAM_get_count;
++ X509_VERIFY_PARAM_get0;
++ X509V3_EXT_free;
++ EC_GROUP_get_mont_data;
++ EC_curve_nid2nist;
++ EC_curve_nist2nid;
++ PEM_write_bio_DHxparams;
++ PEM_write_DHxparams;
++ SSL_CTX_add_client_custom_ext;
++ SSL_CTX_add_server_custom_ext;
++ SSL_extension_supported;
++ BUF_strnlen;
++ sk_deep_copy;
++ SSL_test_functions;
++} OPENSSL_1.0.1d;
diff --git a/abs/core/openssl/ssl3-test-failure.patch b/abs/core/openssl-1.0/ssl3-test-failure.patch
index d161c3d..d161c3d 100644
--- a/abs/core/openssl/ssl3-test-failure.patch
+++ b/abs/core/openssl-1.0/ssl3-test-failure.patch
diff --git a/abs/core/openssl/PKGBUILD b/abs/core/openssl/PKGBUILD
index 8752c9d..caeb0e2 100644
--- a/abs/core/openssl/PKGBUILD
+++ b/abs/core/openssl/PKGBUILD
@@ -2,46 +2,35 @@
# Maintainer: Pierre Schmitz <pierre@archlinux.de>
pkgname=openssl
-_ver=1.0.2g
+_ver=1.1.0g
# use a pacman compatible version scheme
pkgver=${_ver/[a-z]/.${_ver//[0-9.]/}}
#pkgver=$_ver
-pkgrel=3
+pkgrel=1
pkgdesc='The Open Source toolkit for Secure Sockets Layer and Transport Layer Security'
-arch=('i686' 'x86_64')
+arch=('x86_64')
url='https://www.openssl.org'
license=('custom:BSD')
depends=('perl')
optdepends=('ca-certificates')
-options=('!makeflags')
backup=('etc/ssl/openssl.cnf')
source=("https://www.openssl.org/source/${pkgname}-${_ver}.tar.gz"
"https://www.openssl.org/source/${pkgname}-${_ver}.tar.gz.asc"
- 'no-rpath.patch'
- 'ssl3-test-failure.patch'
'ca-dir.patch')
-md5sums=('f3c710c045cdee5fd114feb69feba7aa'
- 'SKIP'
- 'dc78d3d06baffc16217519242ce92478'
- '62fc492252edd3283871632bb77fadbe'
- '3bf51be3a1bbd262be46dc619f92aa90')
+sha256sums=('de4d501267da39310905cb6dc8c6121f7a2cad45a7707f76df828fe1b85073af'
+ 'SKIP'
+ '90c7411fed0157116f2df8f4be755aaf5a26e8484351b4e6a79492805d5f2790')
validpgpkeys=('8657ABB260F056B1E5190839D9C4D26D0E604491')
prepare() {
- cd $srcdir/$pkgname-$_ver
-
- # remove rpath: http://bugs.archlinux.org/task/14367
- patch -p0 -i $srcdir/no-rpath.patch
-
- # disable a test that fails when ssl3 is disabled
- patch -p1 -i $srcdir/ssl3-test-failure.patch
+ cd "$srcdir/$pkgname-$_ver"
# set ca dir to /etc/ssl by default
- patch -p0 -i $srcdir/ca-dir.patch
+ patch -p0 -i "$srcdir/ca-dir.patch"
}
build() {
- cd $srcdir/$pkgname-$_ver
+ cd "$srcdir/$pkgname-$_ver"
if [ "${CARCH}" == 'x86_64' ]; then
openssltarget='linux-x86_64'
@@ -62,16 +51,16 @@ build() {
}
check() {
- cd $srcdir/$pkgname-$_ver
+ cd "$srcdir/$pkgname-$_ver"
# the test fails due to missing write permissions in /etc/ssl
# revert this patch for make test
- patch -p0 -R -i $srcdir/ca-dir.patch
+ patch -p0 -R -i "$srcdir/ca-dir.patch"
make test
- patch -p0 -i $srcdir/ca-dir.patch
+ patch -p0 -i "$srcdir/ca-dir.patch"
}
package() {
- cd $srcdir/$pkgname-$_ver
- make INSTALL_PREFIX=$pkgdir MANDIR=/usr/share/man MANSUFFIX=ssl install
+ cd "$srcdir/$pkgname-$_ver"
+ make DESTDIR=$pkgdir MANDIR=/usr/share/man MANSUFFIX=ssl install_sw install_ssldirs install_man_docs
install -D -m644 LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE
}
diff --git a/abs/core/openssl/ca-dir.patch b/abs/core/openssl/ca-dir.patch
index 41d1386..1daba84 100644
--- a/abs/core/openssl/ca-dir.patch
+++ b/abs/core/openssl/ca-dir.patch
@@ -1,27 +1,16 @@
---- apps/CA.pl.in 2006-04-28 02:30:49.000000000 +0200
-+++ apps/CA.pl.in 2010-04-01 00:35:02.600553509 +0200
-@@ -53,7 +53,7 @@
- $X509="$openssl x509";
- $PKCS12="$openssl pkcs12";
+--- apps/CA.pl.in 2016-09-26 11:46:04.000000000 +0200
++++ apps/CA.pl.in 2016-11-01 16:02:16.709616823 +0100
+@@ -33,7 +33,7 @@
+ my $PKCS12 = "$openssl pkcs12";
--$CATOP="./demoCA";
-+$CATOP="/etc/ssl";
- $CAKEY="cakey.pem";
- $CAREQ="careq.pem";
- $CACERT="cacert.pem";
---- apps/CA.sh 2009-10-15 19:27:47.000000000 +0200
-+++ apps/CA.sh 2010-04-01 00:35:02.600553509 +0200
-@@ -68,7 +68,7 @@
- X509="$OPENSSL x509"
- PKCS12="openssl pkcs12"
-
--if [ -z "$CATOP" ] ; then CATOP=./demoCA ; fi
-+if [ -z "$CATOP" ] ; then CATOP=/etc/ssl ; fi
- CAKEY=./cakey.pem
- CAREQ=./careq.pem
- CACERT=./cacert.pem
---- apps/openssl.cnf 2009-04-04 20:09:43.000000000 +0200
-+++ apps/openssl.cnf 2010-04-01 00:35:02.607220681 +0200
+ # default openssl.cnf file has setup as per the following
+-my $CATOP = "./demoCA";
++my $CATOP = "/etc/ssl";
+ my $CAKEY = "cakey.pem";
+ my $CAREQ = "careq.pem";
+ my $CACERT = "cacert.pem";
+--- apps/openssl.cnf 2016-09-26 11:46:04.000000000 +0200
++++ apps/openssl.cnf 2016-11-01 16:02:48.378503427 +0100
@@ -39,7 +39,7 @@
####################################################################
[ CA_default ]
@@ -31,3 +20,12 @@
certs = $dir/certs # Where the issued certs are kept
crl_dir = $dir/crl # Where the issued crl are kept
database = $dir/index.txt # database index file.
+@@ -323,7 +323,7 @@
+ [ tsa_config1 ]
+
+ # These are used by the TSA reply generation only.
+-dir = ./demoCA # TSA root directory
++dir = /etc/ssl # TSA root directory
+ serial = $dir/tsaserial # The current serial number (mandatory)
+ crypto_device = builtin # OpenSSL engine to use for signing
+ signer_cert = $dir/tsacert.pem # The TSA signing certificate
diff --git a/abs/core/pacman/0001-libmakepkg-fix-is_array-function.patch b/abs/core/pacman/0001-libmakepkg-fix-is_array-function.patch
deleted file mode 100644
index b8ada06..0000000
--- a/abs/core/pacman/0001-libmakepkg-fix-is_array-function.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 2822a45fa91b430c99b4b8bd3531ee745ada1ab7 Mon Sep 17 00:00:00 2001
-From: Allan McRae <allan@archlinux.org>
-Date: Fri, 26 Feb 2016 15:01:11 +1000
-Subject: [PATCH] libmakepkg: fix is_array function
-
-This happened to work for the majority of cases because the only calling
-function used a variable named "i" that was related to the variable being
-passed to the function.
-
-Fixes FS#48340.
-
-Signed-off-by: Allan McRae <allan@archlinux.org>
----
- scripts/libmakepkg/util/util.sh | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/scripts/libmakepkg/util/util.sh b/scripts/libmakepkg/util/util.sh
-index 675e75d..f9f1c20 100644
---- a/scripts/libmakepkg/util/util.sh
-+++ b/scripts/libmakepkg/util/util.sh
-@@ -46,7 +46,7 @@ is_array() {
- local shellopts=$(shopt -p)
- shopt -s extglob
-
-- if [[ $(declare -p "$i") == declare\ -*([[:alnum:]])a*([[:alnum:]])\ * ]]; then
-+ if [[ $(declare -p "$v") == declare\ -*([[:alnum:]])a*([[:alnum:]])\ * ]]; then
- ret=0
- fi
-
---
-2.7.1
-
diff --git a/abs/core/pacman/PKGBUILD b/abs/core/pacman/PKGBUILD
index 877dc11..e30c4bd 100644
--- a/abs/core/pacman/PKGBUILD
+++ b/abs/core/pacman/PKGBUILD
@@ -4,39 +4,31 @@
# Maintainer: Dave Reisner <dreisner@archlinux.org>
pkgname=pacman
-pkgver=5.0.1
+pkgver=5.0.2
pkgrel=2
pkgdesc="A library-based package manager with dependency support"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://www.archlinux.org/pacman/"
license=('GPL')
groups=('base' 'base-devel')
depends=('bash' 'glibc' 'libarchive' 'curl'
'gpgme' 'pacman-mirrorlist' 'archlinux-keyring')
-makedepends=('asciidoc') # roundup patch alters docs
+makedepends=('asciidoc')
checkdepends=('python2' 'fakechroot')
provides=('pacman-contrib')
conflicts=('pacman-contrib')
replaces=('pacman-contrib')
backup=(etc/pacman.conf etc/makepkg.conf)
-install=pacman.install
options=('strip' 'debug')
+validpgpkeys=('6645B0A8C7005E78DB1D7864F99FFE0FEAE999BD' # Allan McRae <allan@archlinux.org>
+ 'B8151B117037781095514CA7BBDFFC92306B1121') # Andrew Gregory (pacman) <andrew@archlinux.org>
source=(https://sources.archlinux.org/other/pacman/$pkgname-$pkgver.tar.gz{,.sig}
- 0001-libmakepkg-fix-is_array-function.patch
pacman.conf.i686
pacman.conf.x86_64
makepkg-asroot.patch
- pacman.cron
makepkg.conf)
-validpgpkeys=('6645B0A8C7005E78DB1D7864F99FFE0FEAE999BD') # Allan McRae <allan@archlinux.org>
-prepare() {
- cd "$pkgname-$pkgver"
-
- patch -p1 -i $srcdir/0001-libmakepkg-fix-is_array-function.patch
-}
-
build() {
cd "$pkgname-$pkgver"
@@ -70,7 +62,7 @@ package() {
;;
x86_64)
mycarch="x86_64"
- mychost="x86_64-unknown-linux-gnu"
+ mychost="x86_64-pc-linux-gnu"
myflags="-march=x86-64"
;;
esac
@@ -96,16 +88,11 @@ package() {
#restore --asroot makepkg option
cd $pkgdir/usr/bin/
patch -p0 -i "$srcdir/makepkg-asroot.patch"
-
- #run pacman-db-upgrade from cron
- mkdir -p "$pkgdir/usr/MythVantage/bin"
- install -m 0644 "$srcdir/pacman.cron" "$pkgdir/usr/MythVantage/bin/pacman.cron"
+ rm $pkgdir/usr/bin/makepkg.orig
}
-md5sums=('377a2664d6007d72d6d8a126add83bcf'
+md5sums=('f36f5e7e95a89436febe1bcca874fc33'
'SKIP'
- '55732144f1048f714f1f93203e9b7728'
'bdb40c76225c2fd8874bd34b6a3f6ad7'
'c511ee4c7a86a37e8841440ede89300d'
'4950b7c5adf80e082a726dd11b9cb12f'
- 'd62e10ea6cc7ae617ba1a99d8f11eaf5'
- 'f5b59fe5f016eebd9590318530bbd996')
+ 'ce959232a30f1fbd33f536c76a9df198')
diff --git a/abs/core/pacman/__changelog b/abs/core/pacman/__changelog
index 59c5ecc..d06b994 100644
--- a/abs/core/pacman/__changelog
+++ b/abs/core/pacman/__changelog
@@ -1,4 +1 @@
-PKGBUILD: add pacman.install
PKGBUILD: add makepkg-asroot.patch
-PKGBUILD: remove source sig
-PKGBUILD & .install: add pacman.cron to run pacman-db-upgrade after update
diff --git a/abs/core/pacman/makepkg.conf b/abs/core/pacman/makepkg.conf
index bd0e0cf..8fa4fb0 100644
--- a/abs/core/pacman/makepkg.conf
+++ b/abs/core/pacman/makepkg.conf
@@ -37,9 +37,9 @@ CHOST="@CHOST@"
# -march (or -mcpu) builds exclusively for an architecture
# -mtune optimizes for an architecture, but builds for whole processor family
CPPFLAGS="-D_FORTIFY_SOURCE=2"
-CFLAGS="@CARCHFLAGS@ -mtune=generic -O2 -pipe -fstack-protector-strong"
-CXXFLAGS="@CARCHFLAGS@ -mtune=generic -O2 -pipe -fstack-protector-strong"
-LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro"
+CFLAGS="@CARCHFLAGS@ -mtune=generic -O2 -pipe -fstack-protector-strong -fno-plt"
+CXXFLAGS="@CARCHFLAGS@ -mtune=generic -O2 -pipe -fstack-protector-strong -fno-plt"
+LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now"
#-- Make Flags: change this for DistCC/SMP systems
#MAKEFLAGS="-j2"
#-- Debugging flags
diff --git a/abs/core/pacman/pacman.cron b/abs/core/pacman/pacman.cron
deleted file mode 100644
index 9155aed..0000000
--- a/abs/core/pacman/pacman.cron
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/bin/bash
-
-function pacman_wait {
- if [ -f /var/lib/pacman/db.lck ]
- then
- echo "Pacman is running and must quit before continuing."
- echo " Waiting for pacman to quit..."
- while [ -f /var/lib/pacman/db.lck ]
- do
- sleep 5
- done
- fi
-}
-
-pacman_wait
-pacman-db-upgrade &
-#remove pacman.cron from root crontab
-grep -v "* * * * * /usr/bin/bash /usr/MythVantage/bin/pacman.cron" /var/spool/cron/root > /var/spool/cron/root2
-mv /var/spool/cron/root2 /var/spool/cron/root
-echo "root" >> /var/spool/cron/cron.update
diff --git a/abs/core/pacman/pacman.install b/abs/core/pacman/pacman.install
deleted file mode 100644
index 637a741..0000000
--- a/abs/core/pacman/pacman.install
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/bin/sh
-# arg 1: the new package version
-# arg 2: the old package version
-post_upgrade() {
- if [ "$(vercmp $2 4.2.0)" -lt 0 ]; then
- _warnupgrade
- fi
- sed -i '/^# If upgrades are available/d' /etc/pacman.conf
- sed -i '/^SyncFirst/d' /etc/pacman.conf
-}
-
-_warnupgrade() {
- echo ">>> The pacman database format has changed as of pacman 4.2.0."
- echo ">>> You will need to run \`pacman-db-upgrade\` as root."
- echo ">>>"
- echo "* * * * * /usr/bin/bash /usr/MythVantage/bin/pacman.cron" >> /var/spool/cron/root
- echo "root" >> /var/spool/cron/cron.update
-}
diff --git a/abs/core/pam/PKGBUILD b/abs/core/pam/PKGBUILD
index 3279743..63bd83d 100644
--- a/abs/core/pam/PKGBUILD
+++ b/abs/core/pam/PKGBUILD
@@ -4,7 +4,7 @@
pkgname=pam
pkgver=1.3.0
-pkgrel=1
+pkgrel=2
pkgdesc="PAM (Pluggable Authentication Modules) library"
arch=('i686' 'x86_64')
license=('GPL2')
diff --git a/abs/core/pambase/PKGBUILD b/abs/core/pambase/PKGBUILD
index b595e97..7d0f0c2 100644
--- a/abs/core/pambase/PKGBUILD
+++ b/abs/core/pambase/PKGBUILD
@@ -2,7 +2,7 @@
# Maintainer: Dave Reisner <dreisner@archlinux.org>
pkgname=pambase
-pkgver=20130928
+pkgver=20171006
pkgrel=1
pkgdesc="Base PAM configuration for services"
arch=('any')
@@ -20,12 +20,12 @@ backup=('etc/pam.d/system-auth'
'etc/pam.d/system-remote-login'
'etc/pam.d/system-services'
'etc/pam.d/other')
-md5sums=('6116b8e199a3dfd26a085a67a718435d'
- '477237985820117a0e6e1b13a86eb599'
- '7464f86d346b22dd07b433c341a33aab'
- '477237985820117a0e6e1b13a86eb599'
- '6969307eef026979703a6eba33c2e3eb'
- '6e6c8719e5989d976a14610f340bd33a')
+sha256sums=('3eb67872e436817ec97c4f3795adba2cf1d3829ea4e107ef5747569e4eeb5746'
+ '005736b9bd650ff5e5d82a7e288853776d5bb8c90185d5774c07231c1e1c64a9'
+ '75b3bc548ff8b037d28bda9413d2e18ddda17c96a7956f00d259b9d29b87a5b3'
+ '005736b9bd650ff5e5d82a7e288853776d5bb8c90185d5774c07231c1e1c64a9'
+ '6eb1acdd3fa9f71a7f93fbd529be57ea65bcafc6e3a98a06af4d88013fc6a567'
+ 'de66118684a2ecec18017dd96e50a489f30465510250c007ced16f81fb542ba5')
package() {
install -dm755 "$pkgdir/etc/pam.d"
diff --git a/abs/core/pambase/system-login b/abs/core/pambase/system-login
index 17cfa1e..6ab3e7b 100644
--- a/abs/core/pambase/system-login
+++ b/abs/core/pambase/system-login
@@ -12,6 +12,7 @@ account include system-auth
password include system-auth
session optional pam_loginuid.so
+session optional pam_keyinit.so force revoke
session include system-auth
session optional pam_motd.so motd=/etc/motd
session optional pam_mail.so dir=/var/spool/mail standard quiet
diff --git a/abs/core/parted/PKGBUILD b/abs/core/parted/PKGBUILD
index 0fc86f9..77539f2 100644
--- a/abs/core/parted/PKGBUILD
+++ b/abs/core/parted/PKGBUILD
@@ -4,16 +4,25 @@
pkgname=parted
pkgver=3.2
-pkgrel=1
+pkgrel=6
pkgdesc="A program for creating, destroying, resizing, checking and copying partitions"
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('GPL3')
url="http://www.gnu.org/software/parted/parted.html"
-depends=('device-mapper' 'e2fsprogs')
+depends=('device-mapper')
makedepends=('pkg-config')
-install=parted.install
-source=("http://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.xz")
-md5sums=('0247b6a7b314f8edeb618159fa95f9cb')
+validpgpkeys=('1B49F933916A37A3F45A1812015F4DD4A70FB705') # Phillip Susi <psusi@ubuntu.com>
+source=("https://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.xz"{,.sig}
+ 'parted-735669-fat16-crash-v1.patch')
+sha256sums=('858b589c22297cacdf437f3baff6f04b333087521ab274f7ab677cb8c6bb78e4'
+ 'SKIP'
+ '3cbf31765b1653609a4c95687b91e34dd57ad3498d5d02019c966bd46d25d100')
+
+prepare() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ patch -Np1 -i "${srcdir}/parted-735669-fat16-crash-v1.patch"
+}
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
diff --git a/abs/core/parted/parted-735669-fat16-crash-v1.patch b/abs/core/parted/parted-735669-fat16-crash-v1.patch
new file mode 100644
index 0000000..2124ab3
--- /dev/null
+++ b/abs/core/parted/parted-735669-fat16-crash-v1.patch
@@ -0,0 +1,193 @@
+From 3a4c152d38ce34481b0f4fda8aea4e71a8280d8f Mon Sep 17 00:00:00 2001
+From: Mike Fleetwood <mike.fleetwood@googlemail.com>
+Date: Sat, 27 Sep 2014 10:23:17 +0100
+Subject: [PATCH 1/3] lib-fs-resize: Prevent crash resizing FAT16 file systems
+
+Resizing FAT16 file system crashes in libparted/fs/r/fat/resize.c
+create_resize_context() because it was dereferencing NULL pointer
+fs_info->info_sector to copy the info_sector.
+
+Only FAT32 file systems have info_sector populated by fat_open() ->
+fat_info_sector_read(). FAT12 and FAT16 file systems don't have an
+info_sector so pointer fs_info->info_sector remains assigned NULL from
+fat_alloc(). When resizing a FAT file system create_resize_context()
+was always dereferencing fs_info->info_sector to memory copy the
+info_sector, hence it crashed for FAT12 and FAT16.
+
+Make create_resize_context() only copy the info_sector for FAT32 file
+systems.
+
+Reported by Christian Hesse in
+https://bugzilla.gnome.org/show_bug.cgi?id=735669
+---
+ NEWS | 4 ++++
+ libparted/fs/r/fat/resize.c | 12 +++++++++---
+ 2 files changed, 13 insertions(+), 3 deletions(-)
+
+diff --git a/NEWS b/NEWS
+index 297b0a5..da7db50 100644
+--- a/NEWS
++++ b/NEWS
+@@ -2,6 +2,10 @@ GNU parted NEWS -*- outline -*-
+
+ * Noteworthy changes in release ?.? (????-??-??) [?]
+
++** Bug Fixes
++
++ libparted-fs-resize: Prevent crash resizing FAT16 file systems.
++
+
+ * Noteworthy changes in release 3.2 (2014-07-28) [stable]
+
+diff --git a/libparted/fs/r/fat/resize.c b/libparted/fs/r/fat/resize.c
+index 919acf0..bfe60a0 100644
+--- a/libparted/fs/r/fat/resize.c
++++ b/libparted/fs/r/fat/resize.c
+@@ -668,11 +668,17 @@ create_resize_context (PedFileSystem* fs, const PedGeometry* new_geom)
+
+ /* preserve boot code, etc. */
+ new_fs_info->boot_sector = ped_malloc (new_geom->dev->sector_size);
+- new_fs_info->info_sector = ped_malloc (new_geom->dev->sector_size);
+ memcpy (new_fs_info->boot_sector, fs_info->boot_sector,
+ new_geom->dev->sector_size);
+- memcpy (new_fs_info->info_sector, fs_info->info_sector,
+- new_geom->dev->sector_size);
++ new_fs_info->info_sector = NULL;
++ if (fs_info->fat_type == FAT_TYPE_FAT32)
++ {
++ PED_ASSERT (fs_info->info_sector != NULL);
++ new_fs_info->info_sector =
++ ped_malloc (new_geom->dev->sector_size);
++ memcpy (new_fs_info->info_sector, fs_info->info_sector,
++ new_geom->dev->sector_size);
++ }
+
+ new_fs_info->logical_sector_size = fs_info->logical_sector_size;
+ new_fs_info->sector_count = new_geom->length;
+--
+1.7.1
+
+
+From 2b5a4805533557b1bcdb5f70537569383f1fe7e8 Mon Sep 17 00:00:00 2001
+From: Mike Fleetwood <mike.fleetwood@googlemail.com>
+Date: Sat, 27 Sep 2014 11:31:46 +0100
+Subject: [PATCH 2/3] tests: t3000-resize-fs.sh: Add FAT16 resizing test
+
+Add FAT16 resizing test so that we don't regress again.
+---
+ tests/t3000-resize-fs.sh | 16 +++++++++++++---
+ 1 files changed, 13 insertions(+), 3 deletions(-)
+
+diff --git a/tests/t3000-resize-fs.sh b/tests/t3000-resize-fs.sh
+index 8cab476..9084eb4 100755
+--- a/tests/t3000-resize-fs.sh
++++ b/tests/t3000-resize-fs.sh
+@@ -46,7 +46,7 @@ device_sectors_required=$(echo $default_end | sed 's/s$//')
+ # Ensure that $dev is large enough for this test
+ test $device_sectors_required -le $dev_n_sectors || fail=1
+
+-for fs_type in hfs+ fat32; do
++for fs_type in hfs+ fat32 fat16; do
+
+ # create an empty $fs_type partition, cylinder aligned, size > 256 MB
+ parted -a min -s $dev mkpart p1 $start $default_end > out 2>&1 || fail=1
+@@ -59,6 +59,7 @@ for fs_type in hfs+ fat32; do
+ wait_for_dev_to_appear_ ${dev}1
+
+ case $fs_type in
++ fat16) mkfs_cmd='mkfs.vfat -F 16'; fsck='fsck.vfat -v';;
+ fat32) mkfs_cmd='mkfs.vfat -F 32'; fsck='fsck.vfat -v';;
+ hfs*) mkfs_cmd='mkfs.hfs'; fsck=fsck.hfs;;
+ *) error "internal error: unhandled fs type: $fs_type";;
+@@ -70,8 +71,17 @@ for fs_type in hfs+ fat32; do
+ # NOTE: shrinking is the only type of resizing that works.
+ # resize that file system to be one cylinder (8MiB) smaller
+ fs-resize ${dev}1 0 $new_end > out 2>&1 || fail=1
+- # expect no output
+- compare /dev/null out || fail=1
++
++ # check for expected output
++ case $fs_type in
++ fat16) cat << EOF > exp || framework_failure
++Information: Would you like to use FAT32? If you leave your file system as FAT16, then you will have no problems. If you convert to FAT32, and MS Windows is installed on this partition, then you must re-install the MS Windows boot loader. If you want to do this, you should consult the Parted manual (or your distribution's manual). Also, converting to FAT32 will make the file system unreadable by MS DOS, MS Windows 95a, and MS Windows NT.
++EOF
++ ;;
++ fat32) cat /dev/null > exp || framework_failure;; # expect no output
++ hfs*) cat /dev/null > exp || framework_failure;; # expect no output
++ esac
++ compare exp out || fail=1
+
+ # This is known to segfault with fsck.hfs from
+ # Fedora 16's hfsplus-tools-332.14-12.fc15.x86_64.
+--
+1.7.1
+
+
+From ca37fcb204f97964ff2c92ea0221367e798810bb Mon Sep 17 00:00:00 2001
+From: Mike Fleetwood <mike.fleetwood@googlemail.com>
+Date: Sun, 28 Sep 2014 11:54:45 +0100
+Subject: [PATCH 3/3] tests: t3000-resize-fs.sh: Add requirement on mkfs.vfat
+
+Add test skipping requirement on mkfs.vfat for the FAT32 and FAT16 file
+system resizing tests. This matches existing test skipping requirement
+on mkfs.hfs for the hfs+ file system.
+
+* tests/t3000-resize-fs.sh: Also correct skip_test_ to skip_.
+* tests/t-lib-helpers.sh: Also update message for requirement of hfs.
+---
+ tests/t-lib-helpers.sh | 8 +++++++-
+ tests/t3000-resize-fs.sh | 5 +++--
+ 2 files changed, 10 insertions(+), 3 deletions(-)
+
+diff --git a/tests/t-lib-helpers.sh b/tests/t-lib-helpers.sh
+index 4e83a05..c8684bb 100644
+--- a/tests/t-lib-helpers.sh
++++ b/tests/t-lib-helpers.sh
+@@ -20,7 +20,13 @@ require_acl_()
+ require_hfs_()
+ {
+ mkfs.hfs 2>&1 | grep '^usage:' \
+- || skip_ "This test requires HFS support."
++ || skip_ "mkfs.hfs: command not found"
++}
++
++require_fat_()
++{
++ mkfs.vfat 2>&1 | grep '^Usage:' \
++ || skip_ "mkfs.vfat: command not found"
+ }
+
+ # Skip this test if we're not in SELinux "enforcing" mode.
+diff --git a/tests/t3000-resize-fs.sh b/tests/t3000-resize-fs.sh
+index 9084eb4..a79a307 100755
+--- a/tests/t3000-resize-fs.sh
++++ b/tests/t3000-resize-fs.sh
+@@ -18,7 +18,7 @@
+
+ . "${srcdir=.}/init.sh"; path_prepend_ ../parted .
+ require_hfs_
+-
++require_fat_
+ require_root_
+ require_scsi_debug_module_
+ require_512_byte_sector_size_
+@@ -31,7 +31,7 @@ default_end=546147s
+
+ # create memory-backed device
+ scsi_debug_setup_ dev_size_mb=550 > dev-name ||
+- skip_test_ 'failed to create scsi_debug device'
++ skip_ 'failed to create scsi_debug device'
+ dev=$(cat dev-name)
+
+ fail=0
+@@ -47,6 +47,7 @@ device_sectors_required=$(echo $default_end | sed 's/s$//')
+ test $device_sectors_required -le $dev_n_sectors || fail=1
+
+ for fs_type in hfs+ fat32 fat16; do
++ echo "fs_type=$fs_type"
+
+ # create an empty $fs_type partition, cylinder aligned, size > 256 MB
+ parted -a min -s $dev mkpart p1 $start $default_end > out 2>&1 || fail=1
+--
+1.7.1
+
diff --git a/abs/core/parted/parted.install b/abs/core/parted/parted.install
deleted file mode 100644
index 752a687..0000000
--- a/abs/core/parted/parted.install
+++ /dev/null
@@ -1,18 +0,0 @@
-info_dir=/usr/share/info
-info_files=(parted.info)
-
-post_install() {
- for f in ${info_files[@]}; do
- install-info ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null
- done
-}
-
-post_upgrade() {
- post_install
-}
-
-pre_remove() {
- for f in ${info_files[@]}; do
- install-info --delete ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null
- done
-}
diff --git a/abs/core/pcre/01-CVE-2016-1283.patch b/abs/core/pcre/01-CVE-2016-1283.patch
deleted file mode 100644
index 2c2dad2..0000000
--- a/abs/core/pcre/01-CVE-2016-1283.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Index: pcre_compile.c
-===================================================================
---- a/pcre_compile.c (revision 1635)
-+++ b/pcre_compile.c (revision 1636)
-@@ -7311,7 +7311,12 @@
- so far in order to get the number. If the name is not found, leave
- the value of recno as 0 for a forward reference. */
-
-- else
-+ /* This patch (removing "else") fixes a problem when a reference is
-+ to multiple identically named nested groups from within the nest.
-+ Once again, it is not the "proper" fix, and it results in an
-+ over-allocation of memory. */
-+
-+ /* else */
- {
- ng = cd->named_groups;
- for (i = 0; i < cd->names_found; i++, ng++)
diff --git a/abs/core/pcre/PKGBUILD b/abs/core/pcre/PKGBUILD
index e578d33..0b25d9f 100644
--- a/abs/core/pcre/PKGBUILD
+++ b/abs/core/pcre/PKGBUILD
@@ -5,19 +5,17 @@
# Contributor: John Proctor <jproctor@prium.net>
pkgname=pcre
-pkgver=8.38
-pkgrel=3
+pkgver=8.41
+pkgrel=1
pkgdesc='A library that implements Perl 5-style regular expressions'
-arch=('i686' 'x86_64')
+arch=('x86_64')
url='http://www.pcre.org/'
license=('BSD')
depends=('gcc-libs' 'readline' 'zlib' 'bzip2' 'bash')
validpgpkeys=('45F68D54BBE23FB3039B46E59766E084FB0F43D8') # Philip Hazel
-source=("ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/$pkgname-$pkgver.tar.bz2"{,.sig}
- '01-CVE-2016-1283.patch')
-md5sums=('00aabbfe56d5a48b270f999b508c5ad2'
- 'SKIP'
- '722aba6455a3f0240eaa22289f0176a0')
+source=("https://ftp.pcre.org/pub/pcre/$pkgname-$pkgver.tar.bz2"{,.sig})
+md5sums=('c160d22723b1670447341b08c58981c1'
+ 'SKIP')
prepare() {
cd $pkgname-$pkgver
@@ -25,8 +23,8 @@ prepare() {
local filename
for filename in "${source[@]}"; do
if [[ "$filename" =~ \.patch$ ]]; then
- msg2 "Applying patch $filename"
- patch -p1 -N -i "$srcdir/$filename"
+ msg2 "Applying patch ${filename##*/}"
+ patch -p1 -N -i "$srcdir/${filename##*/}"
fi
done
:
diff --git a/abs/core/pcre2/PKGBUILD b/abs/core/pcre2/PKGBUILD
new file mode 100644
index 0000000..9c2e463
--- /dev/null
+++ b/abs/core/pcre2/PKGBUILD
@@ -0,0 +1,45 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Mateusz 'mrlemux' Lemusisk mrlemux at gmail dotcom
+# Based on the pcre package by Sébastien "Seblu" Luttringer
+# Contributor: Allan McRae <allan@archlinux.org>
+# Contributor: Eric Belanger <eric@archlinux.org>
+# Contributor: John Proctor <jproctor@prium.net>
+
+pkgname=pcre2
+pkgver=10.30
+pkgrel=1
+pkgdesc='A library that implements Perl 5-style regular expressions. 2nd version'
+arch=('x86_64')
+url='http://www.pcre.org/'
+license=('BSD')
+depends=('gcc-libs' 'readline' 'zlib' 'bzip2' 'bash')
+source=("ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/$pkgname-$pkgver.tar.bz2")
+sha512sums=('f247a9f917c75920793b9919a45bb1426d126246e7a5d04e39d9407e44b5781f894a90cd3d232b385436b2f22be391335ab782664dd3a28c79058a2fcc74dc3e')
+
+build() {
+ cd $pkgname-$pkgver
+ ./configure \
+ --prefix=/usr \
+ --enable-pcre2-16 \
+ --enable-pcre2-32 \
+ --enable-jit \
+ --enable-pcre2grep-libz \
+ --enable-pcre2grep-libbz2 \
+ --enable-pcre2test-libreadline
+ make
+}
+
+check() {
+ cd $pkgname-$pkgver
+ make -j1 check
+}
+
+package() {
+ cd $pkgname-$pkgver
+ make DESTDIR="$pkgdir" install
+
+ install -Dm644 LICENCE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl-class-data-inheritable/PKGBUILD b/abs/core/perl-class-data-inheritable/PKGBUILD
new file mode 100644
index 0000000..98bc4dc
--- /dev/null
+++ b/abs/core/perl-class-data-inheritable/PKGBUILD
@@ -0,0 +1,27 @@
+# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman
+# Contributor: François Charette <firmicus ατ gmx δοτ net>
+
+pkgname=perl-class-data-inheritable
+pkgver=0.08
+pkgrel=7
+pkgdesc="Inheritable, overridable class data "
+arch=('x86_64')
+url="http://search.cpan.org/dist/Class-Data-Inheritable"
+license=('GPL' 'PerlArtistic')
+depends=('perl>=5.10.0')
+options=('!emptydirs')
+source=(https://www.cpan.org/authors/id/T/TM/TMTM/Class-Data-Inheritable-$pkgver.tar.gz)
+sha256sums=('9967feceea15227e442ec818723163eb6d73b8947e31f16ab806f6e2391af14a')
+
+build() {
+ cd Class-Data-Inheritable-${pkgver}
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+package() {
+ cd Class-Data-Inheritable-${pkgver}
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
+}
diff --git a/abs/core/perl-exception-class/PKGBUILD b/abs/core/perl-exception-class/PKGBUILD
new file mode 100644
index 0000000..91528e7
--- /dev/null
+++ b/abs/core/perl-exception-class/PKGBUILD
@@ -0,0 +1,41 @@
+# $Id$
+# Maintainer: Jaroslav Lichtblau <svetlemodry@archlinux.org>
+# Contributor: Maxwell Pray a.k.a. Synthead <synthead@gmail.com>
+# Contributor: Caleb Cushing <xenoterracide@gmail.com>
+
+pkgname=perl-exception-class
+pkgver=1.44
+pkgrel=1
+pkgdesc='A module that allows you to declare real exception classes in Perl'
+arch=('any')
+url="https://metacpan.org/release/Exception-Class"
+license=('PerlArtistic' 'GPL')
+depends=('perl>=5.8.1' 'perl-class-data-inheritable>=0.02' 'perl-devel-stacktrace>=2.00')
+options=('!emptydirs')
+source=(http://search.cpan.org/CPAN/authors/id/D/DR/DROLSKY/Exception-Class-$pkgver.tar.gz)
+sha256sums=('33f3fbf8b138d3b04ea4ec0ba83fb0df6ba898806bcf4ef393d4cafc1a23ee0d')
+
+build() {
+ cd "${srcdir}"/Exception-Class-$pkgver
+
+ export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL=--skipdeps
+ unset PERL5LIB PERL_MM_OPT
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd "${srcdir}"/Exception-Class-$pkgver
+
+ export PERL_MM_USE_DEFAULT=1
+ unset PERL5LIB
+ make test
+}
+
+package() {
+ cd "${srcdir}"/Exception-Class-$pkgver
+
+ make install INSTALLDIRS=vendor DESTDIR="${pkgdir}"
+
+ find "${pkgdir}" -name .packlist -o -name perllocal.pod -delete
+}
diff --git a/abs/core/perl-params-validationcompiler/PKGBUILD b/abs/core/perl-params-validationcompiler/PKGBUILD
new file mode 100644
index 0000000..2ace9e8
--- /dev/null
+++ b/abs/core/perl-params-validationcompiler/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id$
+# Maintainer: Sergej Pupykin <arch+pub@sergej.pp.ru>
+
+pkgname=perl-params-validationcompiler
+_pkgname=Params-ValidationCompiler
+pkgver=0.27
+pkgrel=1
+pkgdesc="Build an optimized subroutine parameter validator once, use it forever"
+arch=('any')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl-role-tiny' 'perl-eval-closure' 'perl-exception-class')
+checkdepends=('perl-test-fatal')
+url="http://search.cpan.org/dist/Params-ValidationCompiler/"
+source=(http://search.cpan.org/CPAN/authors/id/D/DR/DROLSKY/Params-ValidationCompiler-$pkgver.tar.gz)
+sha256sums=('50a99968359d430e34ea8a12e7f08a669ffd34a3dae4d8ea9ca076c1100af9b2')
+
+build() {
+ export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL="--skipdeps" \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='"$pkgdir"'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '"$pkgdir"'" \
+ MODULEBUILDRC=/dev/null
+
+ cd "${srcdir}/${_pkgname}-${pkgver}"
+ perl Makefile.PL
+ make
+}
+
+package() {
+ cd "${srcdir}/${_pkgname}-${pkgver}"
+ make install
+}
diff --git a/abs/core/perl/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch b/abs/core/perl/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch
deleted file mode 100644
index 1404460..0000000
--- a/abs/core/perl/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch
+++ /dev/null
@@ -1,83 +0,0 @@
-From bb249b0b26c2e79a6f55355ef94889070f07fd21 Mon Sep 17 00:00:00 2001
-From: Niko Tyni <ntyni@debian.org>
-Date: Thu, 28 Apr 2011 09:18:54 +0300
-Subject: [PATCH] Append CFLAGS and LDFLAGS to their Config.pm counterparts in
- EU::CBuilder
-
-Since ExtUtils::CBuilder 0.27_04 (bleadperl commit 06e8058f27e4),
-CFLAGS and LDFLAGS from the environment have overridden the Config.pm
-ccflags and ldflags settings. This can cause binary incompatibilities
-between the core Perl and extensions built with EU::CBuilder.
-
-Append to the Config.pm values rather than overriding them.
----
- .../lib/ExtUtils/CBuilder/Base.pm | 6 +++-
- dist/ExtUtils-CBuilder/t/04-base.t | 25 +++++++++++++++++++-
- 2 files changed, 28 insertions(+), 3 deletions(-)
-
-diff --git a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm
-index b572312..2255c51 100644
---- a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm
-+++ b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm
-@@ -40,11 +40,13 @@ sub new {
- $self->{config}{$k} = $v unless exists $self->{config}{$k};
- }
- $self->{config}{cc} = $ENV{CC} if defined $ENV{CC};
-- $self->{config}{ccflags} = $ENV{CFLAGS} if defined $ENV{CFLAGS};
-+ $self->{config}{ccflags} = join(" ", $self->{config}{ccflags}, $ENV{CFLAGS})
-+ if defined $ENV{CFLAGS};
- $self->{config}{cxx} = $ENV{CXX} if defined $ENV{CXX};
- $self->{config}{cxxflags} = $ENV{CXXFLAGS} if defined $ENV{CXXFLAGS};
- $self->{config}{ld} = $ENV{LD} if defined $ENV{LD};
-- $self->{config}{ldflags} = $ENV{LDFLAGS} if defined $ENV{LDFLAGS};
-+ $self->{config}{ldflags} = join(" ", $self->{config}{ldflags}, $ENV{LDFLAGS})
-+ if defined $ENV{LDFLAGS};
-
- unless ( exists $self->{config}{cxx} ) {
- my ($ccpath, $ccbase, $ccsfx ) = fileparse($self->{config}{cc}, qr/\.[^.]*/);
-diff --git a/dist/ExtUtils-CBuilder/t/04-base.t b/dist/ExtUtils-CBuilder/t/04-base.t
-index c3bf6b5..1bb15aa 100644
---- a/dist/ExtUtils-CBuilder/t/04-base.t
-+++ b/dist/ExtUtils-CBuilder/t/04-base.t
-@@ -1,7 +1,7 @@
- #! perl -w
-
- use strict;
--use Test::More tests => 50;
-+use Test::More tests => 64;
- use Config;
- use Cwd;
- use File::Path qw( mkpath );
-@@ -326,6 +326,29 @@ is_deeply( $mksymlists_args,
- "_prepare_mksymlists_args(): got expected arguments for Mksymlists",
- );
-
-+my %testvars = (
-+ CFLAGS => 'ccflags',
-+ LDFLAGS => 'ldflags',
-+);
-+
-+while (my ($VAR, $var) = each %testvars) {
-+ local $ENV{$VAR};
-+ $base = ExtUtils::CBuilder::Base->new( quiet => 1 );
-+ ok( $base, "ExtUtils::CBuilder::Base->new() returned true value" );
-+ isa_ok( $base, 'ExtUtils::CBuilder::Base' );
-+ like($base->{config}{$var}, qr/\Q$Config{$var}/,
-+ "honours $var from Config.pm");
-+
-+ $ENV{$VAR} = "-foo -bar";
-+ $base = ExtUtils::CBuilder::Base->new( quiet => 1 );
-+ ok( $base, "ExtUtils::CBuilder::Base->new() returned true value" );
-+ isa_ok( $base, 'ExtUtils::CBuilder::Base' );
-+ like($base->{config}{$var}, qr/\Q$ENV{$VAR}/,
-+ "honours $VAR from the environment");
-+ like($base->{config}{$var}, qr/\Q$Config{$var}/,
-+ "doesn't override $var from Config.pm with $VAR from the environment");
-+}
-+
- #####
-
- for ($source_file, $object_file, $lib_file) {
---
-1.7.4.4
-
diff --git a/abs/core/perl/CVE-2016-2381_duplicate_env.diff b/abs/core/perl/CVE-2016-2381_duplicate_env.diff
new file mode 100644
index 0000000..80adf62
--- /dev/null
+++ b/abs/core/perl/CVE-2016-2381_duplicate_env.diff
@@ -0,0 +1,104 @@
+From 83e7ebed7afa79a2f50eca6b6330eae7c3a02d36 Mon Sep 17 00:00:00 2001
+From: Tony Cook <tony@develop-help.com>
+Date: Wed, 27 Jan 2016 11:52:15 +1100
+Subject: remove duplicate environment variables from environ
+
+If we see duplicate environment variables while iterating over
+environ[]:
+
+a) make sure we use the same value in %ENV that getenv() returns.
+
+Previously on a duplicate, %ENV would have the last entry for the name
+from environ[], but a typical getenv() would return the first entry.
+
+Rather than assuming all getenv() implementations return the first entry
+explicitly call getenv() to ensure they agree.
+
+b) remove duplicate entries from environ
+
+Previously if there was a duplicate definition for a name in environ[]
+setting that name in %ENV could result in an unsafe value being passed
+to a child process, so ensure environ[] has no duplicates.
+
+Patch-Name: fixes/CVE-2016-2381_duplicate_env.diff
+---
+ perl.c | 51 +++++++++++++++++++++++++++++++++++++++++++++++++--
+ 1 file changed, 49 insertions(+), 2 deletions(-)
+
+diff --git a/perl.c b/perl.c
+index 80a76c2..ed25429 100644
+--- a/perl.c
++++ b/perl.c
+@@ -4303,23 +4303,70 @@ S_init_postdump_symbols(pTHX_ int argc, char **argv, char **env)
+ }
+ if (env) {
+ char *s, *old_var;
++ STRLEN nlen;
+ SV *sv;
++ HV *dups = newHV();
++
+ for (; *env; env++) {
+ old_var = *env;
+
+ if (!(s = strchr(old_var,'=')) || s == old_var)
+ continue;
++ nlen = s - old_var;
+
+ #if defined(MSDOS) && !defined(DJGPP)
+ *s = '\0';
+ (void)strupr(old_var);
+ *s = '=';
+ #endif
+- sv = newSVpv(s+1, 0);
+- (void)hv_store(hv, old_var, s - old_var, sv, 0);
++ if (hv_exists(hv, old_var, nlen)) {
++ const char *name = savepvn(old_var, nlen);
++
++ /* make sure we use the same value as getenv(), otherwise code that
++ uses getenv() (like setlocale()) might see a different value to %ENV
++ */
++ sv = newSVpv(PerlEnv_getenv(name), 0);
++
++ /* keep a count of the dups of this name so we can de-dup environ later */
++ if (hv_exists(dups, name, nlen))
++ ++SvIVX(*hv_fetch(dups, name, nlen, 0));
++ else
++ (void)hv_store(dups, name, nlen, newSViv(1), 0);
++
++ Safefree(name);
++ }
++ else {
++ sv = newSVpv(s+1, 0);
++ }
++ (void)hv_store(hv, old_var, nlen, sv, 0);
+ if (env_is_not_environ)
+ mg_set(sv);
+ }
++ if (HvKEYS(dups)) {
++ /* environ has some duplicate definitions, remove them */
++ HE *entry;
++ hv_iterinit(dups);
++ while ((entry = hv_iternext_flags(dups, 0))) {
++ STRLEN nlen;
++ const char *name = HePV(entry, nlen);
++ IV count = SvIV(HeVAL(entry));
++ IV i;
++ SV **valp = hv_fetch(hv, name, nlen, 0);
++
++ assert(valp);
++
++ /* try to remove any duplicate names, depending on the
++ * implementation used in my_setenv() the iteration might
++ * not be necessary, but let's be safe.
++ */
++ for (i = 0; i < count; ++i)
++ my_setenv(name, 0);
++
++ /* and set it back to the value we set $ENV{name} to */
++ my_setenv(name, SvPV_nolen(*valp));
++ }
++ }
++ SvREFCNT_dec_NN(dups);
+ }
+ #endif /* USE_ENVIRON_ARRAY */
+ #endif /* !PERL_MICRO */
diff --git a/abs/core/perl/ChangeLog b/abs/core/perl/ChangeLog
deleted file mode 100644
index 9add39e..0000000
--- a/abs/core/perl/ChangeLog
+++ /dev/null
@@ -1,66 +0,0 @@
-2011-06-22 Angel Velasquez <angvp@archlinux.org>
- * Added a patch for ExtUtils doesnt overwrite CFLAGS and LDFLAGS
- * Fixed #FS22197, FS#22441, FS#24767
- * Rebuilt perl 5.14.1-2 against db 5.2.28
-
-2011-06-16 Angel Velasquez <angvp@archlinux.org>
- * Fixed #FS24660
- * Rebuilt against db 5.2.28
-
-2011-05-16 Angel Velasquez <angvp@archlinux.org>
- * perl 5.14.0
- * Removed patch for h2ph warning from 5.12.3
- * Removed provides array, you can use corelist -v 5.14.0 to know the
- modules included with the perl core, through Module::CoreList (thx j3nnn1
- for the tip)
-
-2010-11-07 kevin <kevin@archlinux.org>
-
- * perl 5.12.2-1
- - Using /usr/bin/*_perl for script directories
-
-2010-11-06 kevin <kevin@archlinux.org>
-
- - Removed otherlibdirs directive from Configure
- - Removed /usr/*/perl5/site_perl/5.10.1 from INC
- - Finally removed legacy dirs /usr/lib/perl5/current and
- /usr/lib/perl5/site_perl/current from @INC
-
-2010-05-23 kevin <kevin@archlinux.org>
-
- * perl 5.12.1-2
- - Francois updated the provides array.
-
-2010-05-23 kevin <kevin@archlinux.org>
-
- * perl 5.12.1-1
-
-2010-05-16 kevin <kevin@archlinux.org>
-
- * perl 5.12.0-2
-
-2010-05-12 kevin <kevin@archlinux.org>
-
- - FS#19411. Removed the for loop in perlbin.sh which didn't work on zsh.
- This makes the loop variables unnecessary so the script no longer
- pollutes the user's environment.
- - FS#19427. Added /usr/*/perl5/site_perl/5.10.1 to otherlibdirs to support
- user built modules.
-
-2010-05-09 kevin <kevin@archlinux.org>
-
- * perl 5.12.0-1
- - Modified perlbin.sh to only add existing dirs to PATH. Fixes FS#17402,
- path points to non-existant directories
-
-2010-05-07 kevin <kevin@archlinux.org>
-
- - Added this changelog.
- - Added -Dinc_version_list=none to fix FS#19136, double entry in @INC.
- This removes the duplicates and versioned directory entries.
- - Change scriptdirs to /usr/lib/perl5/{core,vendor,site}_perl/bin to fix
- Fix FS#13808, binaries don't follow FHS.
- - Stopped using versioned directories in sitelib and sitearch.
-
-
-# vim: set ft=changelog ts=4 sw=4 et:
diff --git a/abs/core/perl/PKGBUILD b/abs/core/perl/PKGBUILD
index 58b94e7..8f56681 100644
--- a/abs/core/perl/PKGBUILD
+++ b/abs/core/perl/PKGBUILD
@@ -1,33 +1,159 @@
-# $Id: PKGBUILD 160587 2012-06-02 10:54:59Z bluewind $
-# Maintainer: Angel Velasquez <angvp@archlinux.org>
+# $Id$
+# Maintainer: Florian Pritz <bluewind@xinu.at>
+# Contributor: Angel Velasquez <angvp@archlinux.org>
# Contributor: kevin <kevin.archlinux.org>
# Contributor: judd <jvinet.zeroflux.org>
-# Contributor: francois <francois.archlinux.org>
+# Contributor: francois <francois.archlinux.org>
+
pkgname=perl
-pkgver=5.16.0
-pkgrel=2
+pkgver=5.26.2
+_baseversion="${pkgver%.*}"
+pkgrel=1
pkgdesc="A highly capable, feature-rich programming language"
-arch=(i686 x86_64)
+arch=(x86_64)
license=('GPL' 'PerlArtistic')
url="http://www.perl.org"
groups=('base')
-depends=('gdbm' 'db' 'coreutils' 'glibc' 'sh')
-changelog=ChangeLog
-source=(http://www.cpan.org/src/5.0/perl-${pkgver}.tar.bz2
-perlbin.sh
-perlbin.csh
-provides.pl)
-install=perl.install
-options=('makeflags' '!purge')
-md5sums=('15a2f95fb27231e10998240f13acf961'
- '5ed2542fdb9a60682f215bd33701e61a'
- '1f0cbbee783e8a6d32f01be5118e0d5e'
- '999c3eea6464860704abbb055a0f0896')
-
-# workaround to let the integrity check find the correct provides array
-if [[ ${0##*/} = "parse_pkgbuilds.sh" ]]; then
- true && provides=($(bsdtar -q -O -xf "/srv/ftp/pool/packages/$pkgname-$pkgver-$pkgrel-$CARCH.pkg.tar.xz" .PKGINFO | sed -rn 's#^provides = (.*)#\1#p'))
-fi
+depends=('gdbm' 'db' 'glibc')
+# NOTE: This array is automatically generated by `./patchprov`.
+# If you want to add entries, do so in the next array.
+provides=('perl-archive-tar=2.24'
+ 'perl-attribute-handlers=0.99'
+ 'perl-autodie=2.29'
+ 'perl-autoloader=5.74'
+ 'perl-autouse=1.11'
+ 'perl-b-debug=1.24'
+ 'perl-base=2.26'
+ 'perl-bignum=0.47'
+ 'perl-carp=1.42'
+ 'perl-compress-raw-bzip2=2.074'
+ 'perl-compress-raw-zlib=2.074'
+ 'perl-config-perl-v=0.28'
+ 'perl-constant=1.33'
+ 'perl-cpan-meta-requirements=2.140'
+ 'perl-cpan-meta-yaml=0.018'
+ 'perl-cpan-meta=2.150010'
+ 'perl-cpan=2.18'
+ 'perl-data-dumper=2.167'
+ 'perl-db_file=1.840'
+ 'perl-devel-ppport=3.35'
+ 'perl-devel-selfstubber=1.06'
+ 'perl-digest-md5=2.55'
+ 'perl-digest-sha=5.96'
+ 'perl-digest=1.17_01'
+ 'perl-dumpvalue=1.18'
+ 'perl-encode=2.88'
+ 'perl-encoding-warnings=0.13'
+ 'perl-env=1.04'
+ 'perl-experimental=0.016'
+ 'perl-exporter=5.72'
+ 'perl-extutils-cbuilder=0.280225'
+ 'perl-extutils-constant=0.23'
+ 'perl-extutils-install=2.04'
+ 'perl-extutils-makemaker=7.24'
+ 'perl-extutils-manifest=1.70'
+ 'perl-extutils-parsexs=3.34'
+ 'perl-file-fetch=0.52'
+ 'perl-file-path=2.12_01'
+ 'perl-file-temp=0.2304'
+ 'perl-filter-simple=0.93'
+ 'perl-filter-util-call=1.55'
+ 'perl-getopt-long=2.49'
+ 'perl-http-tiny=0.070'
+ 'perl-i18n-collate=1.02'
+ 'perl-i18n-langtags=0.42'
+ 'perl-if=0.0606'
+ 'perl-io-compress=2.074'
+ 'perl-io-socket-ip=0.38'
+ 'perl-io-zlib=1.10'
+ 'perl-io=1.38'
+ 'perl-ipc-cmd=0.96'
+ 'perl-ipc-sysv=2.07'
+ 'perl-json-pp=2.27400_02'
+ 'perl-lib=0.64'
+ 'perl-libnet=3.10'
+ 'perl-locale-codes=3.42'
+ 'perl-locale-maketext-simple=0.21_01'
+ 'perl-locale-maketext=1.28'
+ 'perl-math-bigint-fastcalc=0.5005'
+ 'perl-math-bigint=1.999806'
+ 'perl-math-bigrat=0.2611'
+ 'perl-math-complex=1.5901'
+ 'perl-memoize=1.03_01'
+ 'perl-mime-base64=3.15'
+ 'perl-module-corelist=5.20180414_26'
+ 'perl-module-load-conditional=0.68'
+ 'perl-module-load=0.32'
+ 'perl-module-loaded=0.08'
+ 'perl-module-metadata=1.000033'
+ 'perl-net-ping=2.55'
+ 'perl-params-check=0.38'
+ 'perl-parent=0.236'
+ 'perl-pathtools=3.67'
+ 'perl-perl-ostype=1.010'
+ 'perl-perlfaq=5.021011'
+ 'perl-perlio-via-quotedprint=0.08'
+ 'perl-pod-checker=1.73'
+ 'perl-pod-escapes=1.07'
+ 'perl-pod-parser=1.63'
+ 'perl-pod-perldoc=3.28'
+ 'perl-pod-simple=3.35'
+ 'perl-pod-usage=1.69'
+ 'perl-podlators=5.006'
+ 'perl-safe=2.40'
+ 'perl-scalar-list-utils=1.46_02'
+ 'perl-search-dict=1.07'
+ 'perl-selfloader=1.23'
+ 'perl-socket=2.020_03'
+ 'perl-storable=2.62'
+ 'perl-sys-syslog=0.35'
+ 'perl-term-ansicolor=4.06'
+ 'perl-term-cap=1.17'
+ 'perl-term-complete=1.403'
+ 'perl-term-readline=1.17'
+ 'perl-test-harness=3.38'
+ 'perl-test-simple=1.302073'
+ 'perl-test=1.30'
+ 'perl-text-abbrev=1.02'
+ 'perl-text-balanced=2.03'
+ 'perl-text-parsewords=3.30'
+ 'perl-text-tabs=2013.0523'
+ 'perl-thread-queue=3.12'
+ 'perl-thread-semaphore=2.13'
+ 'perl-threads-shared=1.56'
+ 'perl-threads=2.15'
+ 'perl-tie-file=1.02'
+ 'perl-tie-refhash=1.39'
+ 'perl-time-hires=1.9741'
+ 'perl-time-local=1.25'
+ 'perl-time-piece=1.31'
+ 'perl-unicode-collate=1.19'
+ 'perl-unicode-normalize=1.25'
+ 'perl-version=0.9917'
+ 'perl-xsloader=0.27')
+# Add your own provides here
+provides=(${provides[@]})
+source=(https://www.cpan.org/src/5.0/perl-${pkgver}.tar.xz
+ perlbin.sh
+ perlbin.csh
+ perlbin.fish
+ perl-binary-module-dependency-1.template
+ detect-old-perl-modules.sh
+ detect-old-perl-modules.hook)
+options=('makeflags' '!purge' 'emptydirs')
+sha512sums=('fd54c90da250144c81b94587c01c49fa367f84c54406f1d360ddab4a41589a7b19efc1707f95c95d6357fae66fc3f6f00bf69dd7741db114c7034a14f52be65f'
+ '46724344828e7f86e016f9c8d588bf52b2e764e65e0acc1a38899a530c99bc6e4fd8b46fa0d4bbd685aa2074dd5bcbf9029ac3bb3f2d0ee9adfc4f6c0745f373'
+ 'fc1344a02c741d61af6f6b5967f29cc6f43c2059761522b150261924dd7e1989da5254c03ffa0627accd9af01bc152edd24e84a6b59579acb9ee1900b6ce9383'
+ '026f8e1e81cacceaf78ec58830fb6109c5e6e9f48df835e661ca6b7b3a7d600ae002b489532adb3f292f355f6889273cc59e015f6dc32df1910883e2ab6a1bb7'
+ 'f865c8e4df46bbdd911e28b80b85338a01f911d36e6f2a6bd3688d5aacd96ef2082ce44f3060c7d5356705c7a42e3397cf9509a2b28b686991360aac70dc24b4'
+ 'bd48af7a6209f2ad51aa1747a7238ecb11607a53f61460d873202bf14b55c3b7dd6f66f4a9f2cac8a24240313789a9a44dbc81b73587de46a6b1866bdfca5e26'
+ '6b5b2ba606d443da22c6c1a754829abd36f3fdfef1089bcf06c8f9db0217f2c2f02ebc14958ffa7afe618c9a80bd1025e76704f67466c0c3db7d40ef2c0e56b3')
+# https://www.cpan.org/src/5.0/perl-$pkgver.tar.xz.sha256.txt
+
+prepare() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+
+}
build() {
cd ${srcdir}/${pkgname}-${pkgver}
@@ -35,19 +161,19 @@ build() {
if [ "${CARCH}" = "x86_64" ]; then
# for x86_64
arch_opts="-Dcccdlflags='-fPIC'"
- else
+ else
# for i686
arch_opts=""
fi
./Configure -des -Dusethreads -Duseshrplib -Doptimize="${CFLAGS}" \
- -Dprefix=/usr -Dinstallprefix=${pkgdir}/usr -Dvendorprefix=/usr \
+ -Dprefix=/usr -Dvendorprefix=/usr \
-Dprivlib=/usr/share/perl5/core_perl \
- -Darchlib=/usr/lib/perl5/core_perl \
+ -Darchlib=/usr/lib/perl5/$_baseversion/core_perl \
-Dsitelib=/usr/share/perl5/site_perl \
- -Dsitearch=/usr/lib/perl5/site_perl \
+ -Dsitearch=/usr/lib/perl5/$_baseversion/site_perl \
-Dvendorlib=/usr/share/perl5/vendor_perl \
- -Dvendorarch=/usr/lib/perl5/vendor_perl \
+ -Dvendorarch=/usr/lib/perl5/$_baseversion/vendor_perl \
-Dscriptdir=/usr/bin/core_perl \
-Dsitescript=/usr/bin/site_perl \
-Dvendorscript=/usr/bin/vendor_perl \
@@ -64,20 +190,22 @@ check() {
}
package() {
- # hack to work around makepkg running the subshell in check_sanity()
- new_provides=($(cd "$srcdir/perl-$pkgver"; LD_PRELOAD=./libperl.so ./perl -Ilib "$srcdir/provides.pl" .))
- provides=(${new_provides[@]})
-
cd ${srcdir}/${pkgname}-${pkgver}
- make install
+ make DESTDIR="$pkgdir" install
+
+ for template in "$srcdir/"*.template; do
+ install -Dm644 "$template" "$pkgdir/usr/share/makepkg-template/${template##*/}"
+ done
+ ln -s perl-binary-module-dependency-1.template "$pkgdir/usr/share/makepkg-template/"perl-binary-module-dependency.template
### Perl Settings ###
# Change man page extensions for site and vendor module builds.
- # Use archlinux email address instead of my own.
+ # Set no mail address since bug reports should go to the bug tracker
+ # and not someone's email.
sed -e '/^man1ext=/ s/1perl/1p/' -e '/^man3ext=/ s/3perl/3pm/' \
- -e "/^cf_email=/ s/'.*'/'kevin@archlinux.org'/" \
- -e "/^perladmin=/ s/'.*'/'kevin@archlinux.org'/" \
- -i ${pkgdir}/usr/lib/perl5/core_perl/Config_heavy.pl
+ -e "/^cf_email=/ s/'.*'/''/" \
+ -e "/^perladmin=/ s/'.*'/''/" \
+ -i ${pkgdir}/usr/lib/perl5/$_baseversion/core_perl/Config_heavy.pl
### CPAN Settings ###
# Set CPAN default config to use the site directories.
@@ -85,32 +213,27 @@ package() {
-e '/(mbuildpl_arg =>/ s/""/"installdirs=site"/' \
-i ${pkgdir}/usr/share/perl5/core_perl/CPAN/FirstTime.pm
- ### CPANPLUS Settings ###
- # Set CPANPLUS default config to use the site directories.
- sed -e "/{'makemakerflags'}/ s/'';/'INSTALLDIRS=site';/" \
- -e "/{'buildflags'}/ s/'';/'installdirs=site';/" \
- -i ${pkgdir}/usr/share/perl5/core_perl/CPANPLUS/Config.pm
-
# Profile script to set paths to perl scripts.
- install -D -m755 ${srcdir}/perlbin.sh \
+ install -D -m644 ${srcdir}/perlbin.sh \
${pkgdir}/etc/profile.d/perlbin.sh
- # Profile script to set paths to perl scripts on csh. (FS#22441)
- install -D -m755 ${srcdir}/perlbin.csh \
+ # Profile script to set paths to perl scripts on csh. (FS#22441)
+ install -D -m644 ${srcdir}/perlbin.csh \
${pkgdir}/etc/profile.d/perlbin.csh
+ # Profile script to set paths to perl scripts on fish. (FS#51191)
+ install -D -m 755 "$srcdir/perlbin.fish" \
+ "$pkgdir/usr/share/fish/vendor_conf.d/perlbin.fish"
- (cd ${pkgdir}/usr/bin; mv perl${pkgver} perl)
- (cd ${pkgdir}/usr/bin/core_perl; ln -sf c2ph pstruct; ln -sf s2p psed)
- grep -Rl "${pkgdir}" ${pkgdir}/usr | \
- xargs sed -i "s^${pkgdir}^^g"
-
- # Remove all pod files *except* those under /usr/share/perl5/core_perl/pod/
- # (FS#16488)
- rm -f $pkgdir/usr/share/perl5/core_perl/*.pod
- for d in $pkgdir/usr/share/perl5/core_perl/*; do
- if [ -d $d -a $(basename $d) != "pod" ]; then
- find $d -name *.pod -delete
- fi
- done
- find $pkgdir/usr/lib -name *.pod -delete
+ # Add the dirs so new installs will already have them in PATH once they
+ # install their first perl programm
+ install -d -m755 "$pkgdir/usr/bin/vendor_perl"
+ install -d -m755 "$pkgdir/usr/bin/site_perl"
+
+ #(cd ${pkgdir}/usr/bin; mv perl${pkgver} perl)
+ rm "$pkgdir/usr/bin/perl$pkgver"
+
+ install -D -m755 -t "$pkgdir/usr/share/libalpm/scripts" "$srcdir/detect-old-perl-modules.sh"
+ install -D -m644 -t "$pkgdir/usr/share/libalpm/hooks" "$srcdir/detect-old-perl-modules.hook"
+
+ find $pkgdir -name perllocal.pod -delete
find $pkgdir -name .packlist -delete
}
diff --git a/abs/core/perl/detect-old-perl-modules.hook b/abs/core/perl/detect-old-perl-modules.hook
new file mode 100644
index 0000000..5ff80d1
--- /dev/null
+++ b/abs/core/perl/detect-old-perl-modules.hook
@@ -0,0 +1,10 @@
+[Trigger]
+Operation = Install
+Operation = Upgrade
+Type = File
+Target = usr/lib/perl5/*/
+
+[Action]
+Description = Warn about old perl modules
+When = PostTransaction
+Exec = /usr/share/libalpm/scripts/detect-old-perl-modules.sh
diff --git a/abs/core/perl/detect-old-perl-modules.sh b/abs/core/perl/detect-old-perl-modules.sh
new file mode 100644
index 0000000..cdc8df3
--- /dev/null
+++ b/abs/core/perl/detect-old-perl-modules.sh
@@ -0,0 +1,36 @@
+#!/bin/bash
+
+basedir=/usr/lib/perl5
+perlver=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+
+dir_empty() {
+ local dir=$1
+ [[ $(find $dir -maxdepth 0 -empty -exec echo empty \;) = "empty" ]] && return 0 || return 1
+}
+
+print_unowned_files() {
+ local dir=$1
+ LC_ALL=C find "$dir" -type f -exec pacman -Qqo {} + |& sed -n 's/^error: No package owns \(.*\)$/\1/p'
+}
+
+for dir in "$basedir/"*; do
+ if [[ "${dir##*/}" != "$perlver" ]]; then
+ if [[ -d "$dir" ]] && ! dir_empty "$dir"; then
+ pkgcount=$(pacman -Qqo "$dir" | wc -l)
+ if ((pkgcount > 0)); then
+ printf "WARNING: '%s' contains data from at least %d packages which will NOT be used by the installed perl interpreter.\n" "$dir" "$pkgcount"
+ printf " -> Run the following command to get a list of affected packages: pacman -Qqo '%s'\n" "$dir"
+ fi
+
+ unowned_count=$(print_unowned_files "$dir" | wc -l)
+ if ((unowned_count > 0)); then
+ printf "WARNING: %d file(s) in %s are not tracked by pacman and need to be rebuilt.\n" "$unowned_count" "$dir"
+ printf " -> These were most likely installed directly by cpan or a similar tool.\n"
+ printf " Run the following command to get a list of these files:\n"
+ printf " LC_ALL=C find \"%s\" -type f -exec pacman -Qqo {} + |& sed -n 's/^error: No package owns \(.*\)$/\\\1/p'\n" "$dir"
+ fi
+ fi
+ fi
+done
+
+
diff --git a/abs/core/perl/digest_eval_hole.diff b/abs/core/perl/digest_eval_hole.diff
deleted file mode 100644
index 4790413..0000000
--- a/abs/core/perl/digest_eval_hole.diff
+++ /dev/null
@@ -1,61 +0,0 @@
-From 4b6a7324284e7435a361c58f7ddb32fc0c635bd0 Mon Sep 17 00:00:00 2001
-From: "Michael G. Schwern" <schwern@pobox.com>
-Date: Mon, 3 Oct 2011 19:05:29 +0100
-Subject: Close the eval "require $module" security hole in
- Digest->new($algorithm)
-
-Also the filter was incomplete.
-
-Bug-Debian: http://bugs.debian.org/644108
-
-Patch-Name: fixes/digest_eval_hole.diff
----
- cpan/Digest/Digest.pm | 6 ++++--
- cpan/Digest/t/security.t | 14 ++++++++++++++
- 2 files changed, 18 insertions(+), 2 deletions(-)
- create mode 100644 cpan/Digest/t/security.t
-
-diff --git a/cpan/Digest/Digest.pm b/cpan/Digest/Digest.pm
-index 384dfc8..d714434 100644
---- a/cpan/Digest/Digest.pm
-+++ b/cpan/Digest/Digest.pm
-@@ -24,7 +24,7 @@ sub new
- shift; # class ignored
- my $algorithm = shift;
- my $impl = $MMAP{$algorithm} || do {
-- $algorithm =~ s/\W+//;
-+ $algorithm =~ s/\W+//g;
- "Digest::$algorithm";
- };
- $impl = [$impl] unless ref($impl);
-@@ -35,7 +35,9 @@ sub new
- ($class, @args) = @$class if ref($class);
- no strict 'refs';
- unless (exists ${"$class\::"}{"VERSION"}) {
-- eval "require $class";
-+ my $pm_file = $class . ".pm";
-+ $pm_file =~ s{::}{/}g;
-+ eval { require $pm_file };
- if ($@) {
- $err ||= $@;
- next;
-diff --git a/cpan/Digest/t/security.t b/cpan/Digest/t/security.t
-new file mode 100644
-index 0000000..5cba122
---- /dev/null
-+++ b/cpan/Digest/t/security.t
-@@ -0,0 +1,14 @@
-+#!/usr/bin/env perl
-+
-+# Digest->new() had an exploitable eval
-+
-+use strict;
-+use warnings;
-+
-+use Test::More tests => 1;
-+
-+use Digest;
-+
-+$LOL::PWNED = 0;
-+eval { Digest->new(q[MD;5;$LOL::PWNED = 42]) };
-+is $LOL::PWNED, 0;
diff --git a/abs/core/perl/fix-h2ph-and-tests.patch b/abs/core/perl/fix-h2ph-and-tests.patch
deleted file mode 100644
index a2d176e..0000000
--- a/abs/core/perl/fix-h2ph-and-tests.patch
+++ /dev/null
@@ -1,104 +0,0 @@
-From 8d66b3f930dc6d88b524d103e304308ae73a46e7 Mon Sep 17 00:00:00 2001
-From: Robin Barker <rmbarker@cpan.org>
-Date: Thu, 22 Apr 2010 11:51:20 +0100
-Subject: [PATCH 1/1] Fix h2ph and test
-
----
- lib/h2ph.t | 12 ++++++++++--
- utils/h2ph.PL | 28 +++++++++++++++++++++++-----
- 2 files changed, 33 insertions(+), 7 deletions(-)
-
-diff --git a/lib/h2ph.t b/lib/h2ph.t
-index 27dd7b9..8d62d46 100644
---- a/lib/h2ph.t
-+++ b/lib/h2ph.t
-@@ -18,7 +18,7 @@ if (!(-e $extracted_program)) {
- exit 0;
- }
-
--plan(4);
-+plan(5);
-
- # quickly compare two text files
- sub txt_compare {
-@@ -41,8 +41,16 @@ $result = runperl( progfile => 'lib/h2ph.pht',
- stderr => 1 );
- like( $result, qr/syntax OK$/, "output compiles");
-
-+$result = runperl( progfile => '_h2ph_pre.ph',
-+ switches => ['-c'],
-+ stderr => 1 );
-+like( $result, qr/syntax OK$/, "preamble compiles");
-+
- $result = runperl( switches => ["-w"],
-- prog => '$SIG{__WARN__} = sub { die $_[0] }; require q(lib/h2ph.pht);');
-+ stderr => 1,
-+ prog => <<'PROG' );
-+$SIG{__WARN__} = sub { die $_[0] }; require q(lib/h2ph.pht);
-+PROG
- is( $result, '', "output free of warnings" );
-
- # cleanup
-diff --git a/utils/h2ph.PL b/utils/h2ph.PL
-index 8f56db4..1255807 100644
---- a/utils/h2ph.PL
-+++ b/utils/h2ph.PL
-@@ -401,7 +401,10 @@ if ($opt_e && (scalar(keys %bad_file) > 0)) {
- exit $Exit;
-
- sub expr {
-- $new = '"(assembly code)"' and return if /\b__asm__\b/; # freak out.
-+ if (/\b__asm__\b/) { # freak out
-+ $new = '"(assembly code)"';
-+ return
-+ }
- my $joined_args;
- if(keys(%curargs)) {
- $joined_args = join('|', keys(%curargs));
-@@ -770,7 +773,7 @@ sub inc_dirs
- sub build_preamble_if_necessary
- {
- # Increment $VERSION every time this function is modified:
-- my $VERSION = 2;
-+ my $VERSION = 3;
- my $preamble = "$Dest_dir/_h2ph_pre.ph";
-
- # Can we skip building the preamble file?
-@@ -798,7 +801,16 @@ sub build_preamble_if_necessary
- # parenthesized value: d=(v)
- $define{$_} = $1;
- }
-- if ($define{$_} =~ /^([+-]?(\d+)?\.\d+([eE][+-]?\d+)?)[FL]?$/) {
-+ if (/^(\w+)\((\w)\)$/) {
-+ my($macro, $arg) = ($1, $2);
-+ my $def = $define{$_};
-+ $def =~ s/$arg/\$\{$arg\}/g;
-+ print PREAMBLE <<DEFINE;
-+unless (defined &$macro) { sub $macro(\$) { my (\$$arg) = \@_; \"$def\" } }
-+
-+DEFINE
-+ } elsif
-+ ($define{$_} =~ /^([+-]?(\d+)?\.\d+([eE][+-]?\d+)?)[FL]?$/) {
- # float:
- print PREAMBLE
- "unless (defined &$_) { sub $_() { $1 } }\n\n";
-@@ -807,8 +819,14 @@ sub build_preamble_if_necessary
- print PREAMBLE
- "unless (defined &$_) { sub $_() { $1 } }\n\n";
- } elsif ($define{$_} =~ /^\w+$/) {
-- print PREAMBLE
-- "unless (defined &$_) { sub $_() { &$define{$_} } }\n\n";
-+ my $def = $define{$_};
-+ if ($isatype{$def}) {
-+ print PREAMBLE
-+ "unless (defined &$_) { sub $_() { \"$def\" } }\n\n";
-+ } else {
-+ print PREAMBLE
-+ "unless (defined &$_) { sub $_() { &$def } }\n\n";
-+ }
- } else {
- print PREAMBLE
- "unless (defined &$_) { sub $_() { \"",
---
-1.6.5.2.74.g610f9.dirty
-
diff --git a/abs/core/perl/generate-rebuild-list.sh b/abs/core/perl/generate-rebuild-list.sh
new file mode 100755
index 0000000..0ea6a93
--- /dev/null
+++ b/abs/core/perl/generate-rebuild-list.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+echo "vim"
+
+pkgfile -rd "^/usr/lib/perl5/" | sed 's#^.*/##' | sort -u
+
+pkgfile -r "^/usr/lib/perl5/vendor_perl/auto/.*\.so$" | sed 's#^.*/##' | sort -u
+ssh soyuz.archlinux.org PATH=/usr/local/bin:\$PATH\; /home/bluewind/bin/sogrep-all libperl.so
+
+# this one is optional
+#pkgfile -r '^/usr/share/perl5/' | sed 's#^.*/##' | sort -u
diff --git a/abs/core/perl/patchprov b/abs/core/perl/patchprov
new file mode 100755
index 0000000..c1b038d
--- /dev/null
+++ b/abs/core/perl/patchprov
@@ -0,0 +1,259 @@
+#!/usr/bin/perl
+##
+## Name:
+## patchprov
+##
+## Description:
+## Patch the provides list in the perl package PKGBUILD. Scan the appropriate
+## directories under the perl source tree for directories containing dists
+## similar to CPAN dists. Search the files in the distributions for VERSION
+## strings, which are perl expressions. Filters these version strings through
+## the perl interpreter, then transform the dist. names and versions into
+## package names and versions. Finally, we cut out the "provides" array from the
+## PKGBUILD and replace it with the newer version.
+##
+## Usage:
+## patchprov [path to perl source tree] [path to PKGBUILD]
+##
+## Caveats:
+## The path code is not platform independent and will only work in POSIX.
+##
+## Changelog:
+## 06/10/14 JD Rewrite from scratch for perl 5.20.0 and ArchLinux.
+##
+## Authors:
+## Justin "juster" Davis <jrcd83@gmail.com>
+##
+
+use warnings;
+use strict;
+
+sub err
+{
+ print STDERR "patchprov: error: @_\n";
+ exit 1;
+}
+
+## Extract the dist. name from its containing directory.
+sub path_dist
+{
+ my($path) = @_;
+ $path =~ s{^.*/}{};
+ return $path;
+}
+
+## Create a path like $path/lib/Foo/Bar.pm for Foo::Bar.
+sub lib_modpath
+{
+ my($path, $modname) = @_;
+ $modname =~ s{::}{/}g;
+ return "$path/lib/$modname.pm";
+}
+
+## Create a path to a file in the containing directory, named after
+## the last segment of the module name, with suffix attached.
+sub dumb_modpath
+{
+ my($path, $modname, $suffix) = @_;
+ $modname =~ s{^.*::}{};
+ return "$path/$modname$suffix";
+}
+
+## Find a source file contained in the directory that we can scrape the
+## perl versions string from.
+my %distmods = (
+ 'PathTools' => 'Cwd',
+ 'Scalar-List-Utils' => 'List::Util',
+ 'IO-Compress' => 'IO::Compress::Gzip',
+);
+sub dist_srcpath
+{
+ my($path) = @_;
+ my $distname = path_dist($path);
+ my $modname;
+ if(exists $distmods{$distname}){
+ $modname = $distmods{$distname};
+ }else{
+ $modname = $distname;
+ $modname =~ s/-/::/g;
+ }
+ my @srcpaths = (
+ lib_modpath($path, $modname),
+ dumb_modpath($path, $modname, '.pm'),
+ dumb_modpath($path, $modname, '_pm.PL'),
+ "$path/VERSION", # for podlators
+ );
+ for my $src (@srcpaths){
+ return $src if(-f $src);
+ }
+ return undef;
+}
+
+## Scrape the version string for the module file or Makefile.PL.
+sub scrape_verln
+{
+ my($srcpath) = @_;
+ open my $fh, '<', $srcpath or die "open: $!";
+ while(my $ln = <$fh>){
+ if($ln =~ s/^.*VERSION *=>? *//){
+ close $fh;
+ return $ln;
+ }
+ }
+ close $fh;
+ err("failed to find VERSION in $srcpath");
+}
+
+## Scrape the version string from the module source file.
+sub scrape_modver
+{
+ my($srcpath) = @_;
+ return scrape_verln($srcpath);
+}
+
+## Scrape the version string from the Makefile.PL. (for libnet)
+sub scrape_mkplver
+{
+ my($srcpath) = @_;
+ my $verln = scrape_verln($srcpath);
+ $verln =~ s/,/;/;
+ return $verln;
+}
+
+## Scrape the version string from a file inside the dist dir.
+sub distpath_ver
+{
+ my($distpath) = @_;
+ my $srcpath = dist_srcpath($distpath);
+ my $mkplpath = "$distpath/Makefile.PL";
+ if(defined $srcpath){
+ return scrape_modver($srcpath);
+ }elsif(-f $mkplpath){
+ return scrape_mkplver($mkplpath);
+ }else{
+ err("failed to scrape version from $distpath");
+ }
+}
+
+## Search the base path for the dist dirs and extract their respective
+## version strings.
+sub find_distvers
+{
+ my($basepath) = @_;
+ opendir my $dh, $basepath or die "opendir: $!";
+ my @dirs = grep { -d $_ } map { "$basepath/$_" } grep { !/^[.]/ } readdir $dh;
+ closedir $dh;
+
+ my @distvers;
+ for my $dpath (@dirs){
+ push @distvers, [ path_dist($dpath), distpath_ver($dpath) ];
+ }
+ return @distvers;
+}
+
+## Maps an aref of dist name/perl version strings (perl expressions) to
+## a package name and version string suitable for a PKGBUILD.
+sub pkgspec
+{
+ my($dist, $ver) = @$_;
+ $dist =~ tr/A-Z/a-z/;
+ $ver = eval $ver;
+ return "perl-$dist=$ver";
+}
+
+## Searches the perl source dir provided for a list of packages which
+## correspond to the core distributions bundled within in.
+sub perlcorepkgs
+{
+ my($perlpath) = @_;
+ my @dirs = ("$perlpath/cpan", "$perlpath/dist");
+ my @provs;
+ for my $d (@dirs){
+ if(!-d $d){
+ err("$d is not a valid directory");
+ }
+ push @provs, map pkgspec, find_distvers($d);
+ }
+ return @provs;
+}
+
+## Formats the provided lines into a neatly formatted bash array. The first arg
+## is the name of the bash variable to assign it to.
+sub basharray
+{
+ my $vname = shift;
+
+ ## Sort entries and surround with quotes.
+ my @lns = sort map { qq{'$_'} } @_;
+ $lns[0] = "$vname=($lns[0]";
+
+ ## Indent lines for OCD geeks.
+ if(@lns > 1){
+ my $ind = length($vname) + 2;
+ splice @lns, 1, @lns-1,
+ map { (' ' x $ind) . $_ } @lns[1 .. $#lns];
+ }
+
+ $lns[$#lns] .= ')';
+ return map { "$_\n" } @lns;
+}
+
+## Patch the PKGBUILD at the given path with a new provides array, overwriting
+## the old one.
+sub patchpb
+{
+ my $pbpath = shift;
+ open my $fh, '<', $pbpath or die "open: $!";
+ my @lines = <$fh>;
+ close $fh;
+
+ my($i, $j);
+ for($i = 0; $i < @lines; $i++){
+ last if($lines[$i] =~ /^provides=/);
+ }
+ if($i == @lines){
+ err("failed to find provides array in PKGBUILD");
+ }
+ for($j = $i; $j < @lines; $j++){
+ last if($lines[$j] =~ /[)]/);
+ }
+ if($j == @lines){
+ err("failed to find end of provides array");
+ }
+
+ splice @lines, $i, $j-$i+1,
+ basharray('provides', grep { !/win32|next/ } @_);
+
+ ## Avoid corrupting the existing PKGBUILD in case of a crash, etc.
+ if(-f "$pbpath.$$"){
+ err("pbpath.$$ temporary file already exists, please remove it.");
+ }
+ open $fh, '>', "$pbpath.$$" or die "open: $!";
+ print $fh @lines;
+ close $fh or die "close: $!";
+ rename "$pbpath.$$", "$pbpath" or die "rename: $!";
+
+ return;
+}
+
+## Program entrypoint.
+sub main
+{
+ if(@_ < 2){
+ print STDERR "usage: $0 [perl source path] [PKGBUILD path]\n";
+ exit 2;
+ }
+ my($perlpath, $pbpath) = @_;
+ if(!-f $pbpath){
+ err("$pbpath is not a valid file.");
+ }elsif(!-d $perlpath){
+ err("$perlpath is not a valid directory.");
+ }else{
+ patchpb($pbpath, perlcorepkgs($perlpath));
+ }
+ exit 0;
+}
+
+main(@ARGV);
+
+# EOF
diff --git a/abs/core/perl/perl-binary-module-dependency-1.template b/abs/core/perl/perl-binary-module-dependency-1.template
new file mode 100644
index 0000000..822ee91
--- /dev/null
+++ b/abs/core/perl/perl-binary-module-dependency-1.template
@@ -0,0 +1,5 @@
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
diff --git a/abs/core/perl/perl.install b/abs/core/perl/perl.install
deleted file mode 100644
index a355c5b..0000000
--- a/abs/core/perl/perl.install
+++ /dev/null
@@ -1,10 +0,0 @@
-# arg 1: the new package version
-post_install() {
- for ver in 5.8.{0,1,2,3,4,5,6,7,8}; do
- [ -h usr/lib/perl5/$ver ] && rm usr/lib/perl5/$ver
- [ -h usr/lib/perl5/site_perl/$ver ] && rm usr/lib/perl5/site_perl/$ver
- [ -h usr/bin/perl$ver ] && rm usr/bin/perl$ver
- done
- return 0
-}
-
diff --git a/abs/core/perl/perlbin.csh b/abs/core/perl/perlbin.csh
index 535f0b1..fccecbd 100644
--- a/abs/core/perl/perlbin.csh
+++ b/abs/core/perl/perlbin.csh
@@ -1,5 +1,5 @@
# Set path to perl scriptdirs if they exist
-# https://wiki.archlinux.org/index.php/Perl_Policy#Binaries_and_Scripts
+# https://wiki.archlinux.org/index.php/Perl_Policy#Binaries_and_scripts
# Added /usr/bin/*_perl dirs for scripts
# Remove /usr/lib/perl5/*_perl/bin in next release
diff --git a/abs/core/perl/perlbin.fish b/abs/core/perl/perlbin.fish
new file mode 100644
index 0000000..1f52ebb
--- /dev/null
+++ b/abs/core/perl/perlbin.fish
@@ -0,0 +1,10 @@
+# Set path to perl scriptdirs if they exist
+# https://wiki.archlinux.org/index.php/Perl_Policy#Binaries_and_scripts
+
+if status --is-login
+ for perldir in /usr/bin/site_perl /usr/bin/vendor_perl /usr/bin/core_perl
+ if test -d $perldir
+ set PATH $PATH $perldir
+ end
+ end
+end
diff --git a/abs/core/perl/perlbin.sh b/abs/core/perl/perlbin.sh
index 20f8304..7e38f20 100755
--- a/abs/core/perl/perlbin.sh
+++ b/abs/core/perl/perlbin.sh
@@ -1,5 +1,5 @@
# Set path to perl scriptdirs if they exist
-# https://wiki.archlinux.org/index.php/Perl_Policy#Binaries_and_Scripts
+# https://wiki.archlinux.org/index.php/Perl_Policy#Binaries_and_scripts
# Added /usr/bin/*_perl dirs for scripts
# Remove /usr/lib/perl5/*_perl/bin in next release
diff --git a/abs/core/perl/provides.pl b/abs/core/perl/provides.pl
deleted file mode 100644
index d2cdc76..0000000
--- a/abs/core/perl/provides.pl
+++ /dev/null
@@ -1,299 +0,0 @@
-# provides.pl
-##
-# Script for printing out a provides list of every CPAN distribution
-# that is bundled with perl. You can run it before building perl
-# or you can run it after building perl. Required modules are in core
-# for perl 5.13 and above. It might be nice if this didn't require
-# HTTP::Tiny and maybe just used wget or curl.
-#
-# This script uses HTTP::Tiny to query Tatsuhiko Miyagawa's webapp at
-# cpanmetadb.plackperl.org to cross-reference module files to their
-# providing CPAN distribution. Thank you Miyagawa!
-#
-# - Justin "juster" Davis <jrcd83@gmail.com>
-
-use warnings 'FATAL' => 'all';
-use strict;
-
-package Common;
-
-sub evalver
-{
- my ($path, $mod) = @_;
-
- open my $fh, '<', $path or die "open $path: $!";
-
- my $m = ($mod
- ? qr/(?:\$${mod}::VERSION|\$VERSION)/
- : qr/\$VERSION/);
-
- while (my $ln = <$fh>) {
- next unless $ln =~ /\s*$m\s*=\s*.+/;
- chomp $ln;
- my $ver = do { no strict; eval $ln };
- return $ver unless $@;
- die qq{$path:$. bad version string in "$ln"\n};
- }
-
- close $fh;
- return undef;
-}
-
-
-#-----------------------------------------------------------------------------
-
-package Dists;
-
-sub maindistfile
-{
- my ($dist, $dir) = @_;
-
- # libpath is the modern style, installing modules under lib/
- # with dirs matching the name components.
- my $libpath = join q{/}, 'lib', split /-/, "${dist}.pm";
-
- # dumbpath is an old style where there's no subdirs and just
- # a .pm file.
- my $dumbpath = $dist;
- $dumbpath =~ s/\A.+-//;
- $dumbpath .= ".pm";
-
- my @paths = ($libpath, $dumbpath);
- # Some modules (with simple names like XSLoader, lib, etc) are
- # generated by Makefile.PL. Search through their generating code.
- push @paths, "${dist}_pm.PL" if $dist =~ tr/-/-/ == 0;
-
- for my $path (map { "$dir/$_" } @paths) { return $path if -f $path; }
- return undef;
-}
-
-sub module_ver
-{
- my ($dist, $dir) = @_;
-
- my $path = maindistfile($dist, $dir) or return undef;
-
- my $mod = $dist;
- $mod =~ s/-/::/g;
- my $ver = Common::evalver($path, $mod);
- unless ($ver) {
- warn "failed to find version in module file for $dist\n";
- return undef;
- }
-
- return $ver;
-}
-
-sub changelog_ver
-{
- my ($dist, $dir) = @_;
-
- my $path;
- for my $tmp (glob "$dir/{Changes,ChangeLog}") {
- if (-f $tmp) { $path = $tmp; last; }
- }
- return undef unless $path;
-
- open my $fh, '<', $path or die "open: $!";
- while (<$fh>) {
- return $1 if /\A\s*(?:$dist[ \t]*)?([0-9._]+)/;
- return $1 if /\A\s*version\s+([0-9._]+)/i;
- }
- close $fh;
-
- return undef;
-}
-
-# for some reason podlators has a VERSION file with perl code in it
-sub verfile_ver
-{
- my ($dist, $dir) = @_;
-
- my $path = "$dir/VERSION";
- return undef unless -f $path; # no warning, only podlaters has it
-
- return Common::evalver($path);
-}
-
-# scans a directory full of nicely separated dist. directories.
-sub scan_distroot
-{
- my ($distroot) = @_;
- opendir my $cpand, "$distroot" or die "failed to open $distroot";
- my @dists = grep { !/^\./ && -d "$distroot/$_" } readdir $cpand;
- closedir $cpand;
-
- my @found;
- for my $dist (@dists) {
- my $distdir = "$distroot/$dist";
- my $ver = (module_ver($dist, $distdir)
- || changelog_ver($dist, $distdir)
- || verfile_ver($dist, $distdir));
-
- if ($ver) { push @found, [ $dist, $ver ]; }
- else { warn "failed to find version for $dist\n"; }
- }
- return @found;
-}
-
-sub find
-{
- my ($srcdir) = @_;
- return map { scan_distroot($_) } glob "$srcdir/{cpan,dist}";
-}
-
-#-----------------------------------------------------------------------------
-
-package Modules;
-
-use HTTP::Tiny qw();
-use File::Find qw();
-use File::stat;
-
-*findfile = *File::Find::find;
-
-sub cpan_provider
-{
- my ($module) = @_;
- my $url = "http://cpanmetadb.plackperl.org/v1.0/package/$module";
- my $http = HTTP::Tiny->new;
- my $resp = $http->get($url);
- return undef unless $resp->{'success'};
-
- my ($cpanpath) = $resp->{'content'} =~ /^distfile: (.*)$/m
- or return undef;
-
- my $dist = $cpanpath;
- $dist =~ s{\A.+/}{}; # remove author directory
- $dist =~ s{-[^-]+\z}{}; # remove version and extension
- return ($dist eq 'perl' ? undef : $dist);
-}
-
-sub find
-{
- my ($srcdir) = @_;
- my $libdir = "$srcdir/lib/";
- die "failed to find $libdir directory" unless -d $libdir;
-
- # Find only the module files that have not changed since perl
- # was extracted. We don't want the files perl just recently
- # installed into lib/. We processed those already.
- my @modfiles;
- my $finder = sub {
- return unless /[.]pm\z/;
- return if m{\Q$libdir\E[^/]+/t/}; # ignore testing modules
- push @modfiles, $_;
- };
- findfile({ 'no_chdir' => 1, 'wanted' => $finder }, $libdir);
-
- # First we have to find what the oldest ctime actually is.
- my $oldest = time;
- @modfiles = map {
- my $modfile = $_;
- my $ctime = (stat $modfile)->ctime;
- $oldest = $ctime if $ctime < $oldest;
- [ $modfile, $ctime ]; # save ctime for later
- } @modfiles;
-
- # Then we filter out any file that was created more than a
- # few seconds after that. Process the rest.
- my @mods;
- for my $modfile (@modfiles) {
- my ($mod, $ctime) = @$modfile;
- next if $ctime - $oldest > 5; # ignore newer files
-
- my $path = $mod;
- $mod =~ s{[.]pm\z}{};
- $mod =~ s{\A$libdir}{};
- $mod =~ s{/}{::}g;
-
- my $ver = Common::evalver($path, $mod) || q{};
- push @mods, [ $mod, $ver ];
- }
-
- # Convert modules names to the dist names who provide them.
- my %seen;
- my @dists;
- for my $modref (@mods) {
- my ($mod, $ver) = @$modref;
- my $dist = cpan_provider($mod) or next; # filter out core modules
- next if $seen{$dist}++; # avoid duplicate dists
- push @dists, [ $dist, $ver ];
- }
- return @dists;
-}
-
-#-----------------------------------------------------------------------------
-
-package Dist2Pkg;
-
-sub name
-{
- my ($name) = @_;
- my $orig = $name;
-
- # Package names should be lowercase and consist of alphanumeric
- # characters only (and hyphens!)...
- $name =~ tr/A-Z/a-z/;
- $name =~ tr/_+/-/; # _ and +'s converted to - (ie Tabbed-Text+Wrap)
- $name =~ tr/-a-z0-9+//cd; # Delete all other chars.
- $name =~ tr/-/-/s;
-
- # Delete leading or trailing hyphens...
- $name =~ s/\A-|-\z//g;
-
- die qq{Dist. name '$orig' completely violates packaging standards}
- unless $name;
-
- return "perl-$name";
-}
-
-sub version
-{
- my ($version) = @_;
-
- # Package versions should be numbers and decimal points only...
- $version =~ tr/-/./;
- $version =~ tr/_0-9.-//cd;
-
- # Remove developer versions because pacman has no special logic
- # to compare them to regular versions like perl does.
- $version =~ s/_[^_]+\z//;
-
- $version =~ tr/_//d; # delete other underscores
- $version =~ tr/././s; # only one period at a time
- $version =~ s/\A[.]|[.]\z//g; # shouldn't start or stop with a period
-
- return $version;
-}
-
-#-----------------------------------------------------------------------------
-
-package main;
-
-my %CPANNAME = ('List-Util' => 'Scalar-List-Utils',
- 'Text-Tabs' => 'Text-Tabs+Wrap',
- 'Cwd' => 'PathTools');
-
-my $perldir = shift or die "Usage: $0 [path to perl source directory]\n";
-die "$perldir is not a valid directory." unless -d $perldir;
-
-my @dists = (Dists::find($perldir), Modules::find($perldir));
-for my $dist (@dists) {
- my $name = $dist->[0];
- $dist->[0] = $CPANNAME{$name} if exists $CPANNAME{$name};
-}
-
-my @pkgs = map {
- my ($name, $ver) = @$_;
- $name = Dist2Pkg::name($name);
- $ver = Dist2Pkg::version($ver);
- [ $name, $ver ];
-} @dists;
-
-@pkgs = sort { $a->[0] cmp $b->[0] } @pkgs;
-
-for my $pkg (@pkgs) {
- my ($name, $ver) = @$pkg;
- print "$name=$ver\n";
-}
diff --git a/abs/core/perl/upgpkg b/abs/core/perl/upgpkg
new file mode 100644
index 0000000..6a38607
--- /dev/null
+++ b/abs/core/perl/upgpkg
@@ -0,0 +1,4 @@
+upgpkg_build() {
+ makepkg -o
+ ./patchprov src/perl-$pkgver PKGBUILD
+}
diff --git a/abs/core/perl_modules/libxml-perl/PKGBUILD b/abs/core/perl_modules/libxml-perl/PKGBUILD
index 474d3eb..055b08c 100644
--- a/abs/core/perl_modules/libxml-perl/PKGBUILD
+++ b/abs/core/perl_modules/libxml-perl/PKGBUILD
@@ -1,29 +1,34 @@
-# $Id: PKGBUILD 55561 2011-09-14 10:11:00Z andrea $
-# Maintainer: Chris Brannon <cmbrannon79@gmail.com>
-# Contributor: François Charette <firmicus ατ gmx δοτ net>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Limao Luo <luolimao+AUR@gmail.com>
+# Contributor: Chris Brannon <cmbrannon79@gmail.com>
+# Contributor: François Charette <firmicus@gmx.net>
pkgname=libxml-perl
pkgver=0.08
-pkgrel=3
+pkgrel=6
pkgdesc="Perl library for working with XML"
arch=('any')
-url="http://search.cpan.org/~KMACLEOD/libxml-perl"
+url="http://search.cpan.org/~KMACLEOD/$pkgname"
license=('GPL' 'PerlArtistic')
-depends=('perlxml>=2.19')
+depends=('perl-xml-parser')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/K/KM/KMACLEOD/libxml-perl-$pkgver.tar.gz)
-md5sums=('0ed5fbdda53d1301ddaed88db10503bb')
+source=("http://www.cpan.org/authors/id/K/KM/KMACLEOD/$pkgname-$pkgver.tar.gz")
+sha512sums=('66c1874a04b746334d4324ab37ee057c6da7fa7191dffae2900e0832dab3b2ededc5cbdc5e838c0d57c22161c9cf196ab40b62f61338d4c994bda9fa7b1a7702')
build() {
- cd "${srcdir}"/$pkgname-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ cd $pkgname-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor PERL_MM_USE_DEFAULT=1
make
}
-package() {
- cd "${srcdir}"/$pkgname-$pkgver
- make DESTDIR="${pkgdir}" install
+check() {
+ cd $pkgname-$pkgver
+ make test
+}
- find "${pkgdir}" -name '.packlist' -delete
- find "${pkgdir}" -name '*.pod' -delete
+package() {
+ make -C $pkgname-$pkgver/ DESTDIR="$pkgdir" install
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-algorithm-diff/PKGBUILD b/abs/core/perl_modules/perl-algorithm-diff/PKGBUILD
index d185772..864421a 100644
--- a/abs/core/perl_modules/perl-algorithm-diff/PKGBUILD
+++ b/abs/core/perl_modules/perl-algorithm-diff/PKGBUILD
@@ -1,20 +1,27 @@
-# This PKGBUILD was autocreated. See http://xtermin.us/archperl/ for details
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Charles Mauch <cmauch@gmail.com>
+
pkgname=perl-algorithm-diff
-pkgver=1.1902
-pkgrel=4
+pkgver=1.1903
+pkgrel=3
pkgdesc="Perl/CPAN Module Algorithm::Diff : Diff also Longest Common Subsequence"
-arch=("i686" "x86_64")
-url="http://search.cpan.org/TYEMQ/Algorithm-Diff"
-license=("GPL" "Artistic")
-source=("http://www.cpan.org/authors/id/T/TY/TYEMQ/Algorithm-Diff-1.1902.tar.gz")
-md5sums=("ff3e17ae485f8adfb8857b183991fbce")
-groups=('shepherd-dep')
+arch=("any")
+url="http://search.cpan.org/dist/Algorithm-Diff"
+license=("GPL" "PerlArtistic")
+depends=(perl)
+source=("http://search.cpan.org/CPAN/authors/id/T/TY/TYEMQ/Algorithm-Diff-$pkgver.tar.gz")
+md5sums=('0e8add21a641b8d66436df0c2024bf3b')
+
build() {
- cd $startdir/src/Algorithm-Diff-1.1902
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make pure_install doc_install DESTDIR=$startdir/pkg || return 1
- find $startdir/pkg -name '.packlist' -delete
- find $startdir/pkg -name '*.pod' -delete
+ cd "$srcdir"/Algorithm-Diff-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+package() {
+ cd "$srcdir"/Algorithm-Diff-$pkgver
+ make pure_install doc_install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-alien-sdl/PKGBUILD b/abs/core/perl_modules/perl-alien-sdl/PKGBUILD
index 4b6bded..9e76ddf 100644
--- a/abs/core/perl_modules/perl-alien-sdl/PKGBUILD
+++ b/abs/core/perl_modules/perl-alien-sdl/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 165868 2012-09-01 20:47:49Z heftig $
+# $Id$
# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: Sarah Hay <sarahhay@mb.sympatico.ca>
@@ -8,25 +8,35 @@
pkgname=perl-alien-sdl
_realname=Alien-SDL
-pkgver=1.438
-pkgrel=1
+pkgver=1.446
+pkgrel=4
pkgdesc="Building, finding and using SDL binaries"
-arch=(i686 x86_64)
+arch=(x86_64)
license=(PerlArtistic GPL)
url="http://search.cpan.org/dist/Alien-SDL/"
-depends=(sdl=1.2.15 perl-file-sharedir perl-capture-tiny)
-makedepends=(perl-file-which perl-text-patch)
+depends=('sdl=1.2.15' perl-file-sharedir perl-capture-tiny)
+makedepends=(perl-file-which perl-text-patch perl-archive-extract perl-archive-zip perl-module-build)
options=(!emptydirs)
-_author=JTPALMER
+_author=FROGGS
source=(http://search.cpan.org/CPAN/authors/id/${_author::1}/${_author::2}/$_author/$_realname-$pkgver.tar.gz)
-md5sums=('1936ba9e300677151124b62883cedf20')
+sha256sums=('c9aa2c9dc3c63d89773c7d7203f2a46d1b924d0c72d9f801af147a3dc8bc512a')
-package() {
- cd "$srcdir/$_realname-$pkgver"
+prepare() {
+ cd $_realname-$pkgver
- # install module in vendor directories
- perl Build.PL installdirs=vendor destdir="$pkgdir" --with-sdl-config
+ # Workaround bug with --with-sdl-config
+ sed -i '/^GetOptions/d' Build.PL
+}
+
+build() {
+ cd $_realname-$pkgver
+ # install module in vendor directories
+ perl Build.PL --with-sdl-config
perl Build
- perl Build install
+}
+
+package() {
+ cd $_realname-$pkgver
+ perl Build install installdirs=vendor destdir="$pkgdir"
}
diff --git a/abs/core/perl_modules/perl-appconfig/PKGBUILD b/abs/core/perl_modules/perl-appconfig/PKGBUILD
index 41f9422..7b76e4d 100644
--- a/abs/core/perl_modules/perl-appconfig/PKGBUILD
+++ b/abs/core/perl_modules/perl-appconfig/PKGBUILD
@@ -6,7 +6,7 @@
pkgname=perl-appconfig
_realname=AppConfig
pkgver=1.71
-pkgrel=1
+pkgrel=3
pkgdesc="Perl/CPAN AppConfig module - Read configuration files and parse command line arguments"
arch=('any')
license=('PerlArtistic' 'GPL')
diff --git a/abs/core/perl_modules/perl-archive-extract/PKGBUILD b/abs/core/perl_modules/perl-archive-extract/PKGBUILD
new file mode 100644
index 0000000..535c767
--- /dev/null
+++ b/abs/core/perl_modules/perl-archive-extract/PKGBUILD
@@ -0,0 +1,43 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Florian Pritz <bluewind@xinu.at>
+
+pkgname=perl-archive-extract
+pkgver=0.80
+pkgrel=3
+pkgdesc='Generic archive extracting mechanism'
+arch=(any)
+license=(PerlArtistic GPL)
+options=(!emptydirs)
+depends=(perl)
+url=https://metacpan.org/release/Archive-Extract
+source=("http://search.cpan.org/CPAN/authors/id/B/BI/BINGOS/Archive-Extract-$pkgver.tar.gz")
+sha512sums=('2f216ea29639c4d8b7b19e4b23542b6f69e970cfb0188dca55ff7ce7d3a3021e43129dbdf81b82f7d97d0080d00f858c6af3595520b6bacac30073a8b25ea4f0')
+_ddir="Archive-Extract-$pkgver"
+
+build() (
+ cd "$srcdir/$_ddir"
+ export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL=--skipdeps
+ unset PERL5LIB PERL_MM_OPT
+ /usr/bin/perl Makefile.PL
+ make
+)
+
+check() (
+ cd "$srcdir/$_ddir"
+ export PERL_MM_USE_DEFAULT=1
+ unset PERL5LIB
+ make test
+)
+
+package() (
+ cd "$srcdir/$_ddir"
+ make install INSTALLDIRS=vendor DESTDIR="$pkgdir"
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+)
+
+# Local Variables:
+# mode: shell-script
+# sh-basic-offset: 2
+# End:
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-archive-zip/PKGBUILD b/abs/core/perl_modules/perl-archive-zip/PKGBUILD
index 62ace36..5a82f1a 100644
--- a/abs/core/perl_modules/perl-archive-zip/PKGBUILD
+++ b/abs/core/perl_modules/perl-archive-zip/PKGBUILD
@@ -1,28 +1,34 @@
-# $Id: PKGBUILD 150362 2012-02-17 07:51:32Z allan $
-# Maintainer: Allan McRae <allan@archlinux.org>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: Andrew Simmons <andrew.simmons@gmail.com>
pkgname=perl-archive-zip
-_realname=Archive-Zip
-pkgver=1.30
-pkgrel=3
+pkgver=1.60
+pkgrel=1
pkgdesc="Provide a perl interface to ZIP archive files"
-arch=(any)
+arch=('any')
license=('GPL' 'PerlArtistic')
-url="http://search.cpan.org/dist/${_realname}/"
-depends=('perl>=5.10.0')
+url="http://search.cpan.org/dist/Archive-Zip/"
+depends=('perl')
+checkdepends=('perl-test-mockmodule')
options=('!emptydirs')
-source=(http://search.cpan.org/CPAN/authors/id/A/AD/ADAMK/${_realname}-${pkgver}.tar.gz)
-md5sums=('40153666e7538b410e001aa8a810e702')
+source=(http://search.cpan.org/CPAN/authors/id/P/PH/PHRED/Archive-Zip-${pkgver}.tar.gz)
+sha512sums=('5af85e1717e7026b5ebe9533b0dd57290b35099d166ee400ca648cb558a37529a3ec290fb9a44679c16cf955a2de9b75328c2fa88d3e87e51c10cac80247852f')
build() {
- cd ${srcdir}/${_realname}-${pkgver}
- # install module in vendor directories.
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ cd Archive-Zip-${pkgver}
+ perl Makefile.PL INSTALLDIRS=vendor
make
}
+check() {
+ cd Archive-Zip-${pkgver}
+ make test
+}
+
+
package() {
- cd ${srcdir}/${_realname}-${pkgver}
- make install DESTDIR=${pkgdir}
+ cd Archive-Zip-${pkgver}
+ make DESTDIR="${pkgdir}" install
}
diff --git a/abs/core/perl_modules/perl-astro-suntime/PKGBUILD b/abs/core/perl_modules/perl-astro-suntime/PKGBUILD
index d615aa3..7fe6143 100644
--- a/abs/core/perl_modules/perl-astro-suntime/PKGBUILD
+++ b/abs/core/perl_modules/perl-astro-suntime/PKGBUILD
@@ -1,29 +1,49 @@
-# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman
-# Contributor: Ross melin <rdmelin@gmail.com>
+# Contributor: John D Jones III AKA jnbek <jnbek1972 -_AT_- g m a i l -_Dot_- com>
+# Generator : CPANPLUS::Dist::Arch 1.32
-# Required by zoneminder
-
-pkgname=perl-astro-suntime
-pkgver=0.01
-pkgrel=2
-pkgdesc="Calculate sun rise/set times"
-arch=('i686' 'x86_64')
-url="http://search.cpan.org/~ROBF/Astro-SunTime"
-license=('GPL' 'PerlArtistic')
-depends=('perl-time-modules')
+pkgname='perl-astro-suntime'
+pkgver='0.06'
+pkgrel='1'
+pkgdesc="Get Sun Rise and Set Times for any location on the globe"
+arch=('any')
+license=('PerlArtistic' 'GPL')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/R/RO/ROBF/Astro-SunTime-$pkgver.tar.gz)
-md5sums=('4657927a49604494bfaaa153663b90b9')
+depends=('perl-time-modules')
+makedepends=()
+url='https://metacpan.org/release/Astro-SunTime'
+source=("http://search.cpan.org/CPAN/authors/id/R/RO/ROBF/Astro-SunTime-$pkgver.tar.gz")
+_distdir="Astro-SunTime-$pkgver"
build() {
- cd $startdir/src/Astro-SunTime-$pkgver
- eval `perl -V:archname`
- PERL_MM_USE_DEFAULT=1 /usr/bin/perl Makefile.PL \
- INSTALLDIRS=vendor || return 1
- /usr/bin/make || return 1
- /usr/bin/make DESTDIR=$startdir/pkg install || return 1
- /usr/bin/find $startdir/pkg -name '.packlist' -delete
- /usr/bin/find $startdir/pkg -name '*.pod' -delete
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ MODULEBUILDRC=/dev/null
+
+ cd "$srcdir/$_distdir"
+ /usr/bin/perl Makefile.PL
+ make
+ )
+}
+
+check() {
+ cd "$srcdir/$_distdir"
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
+ make test
+ )
+}
+
+package() {
+ cd "$srcdir/$_distdir"
+ make install
+
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
}
+# Local Variables:
+# mode: shell-script
+# sh-basic-offset: 2
+# End:
# vim:set ts=2 sw=2 et:
+md5sums=('42cb8c94de8a111ed652196925c22a45')
diff --git a/abs/core/perl_modules/perl-b-hooks-endofscope/PKGBUILD b/abs/core/perl_modules/perl-b-hooks-endofscope/PKGBUILD
new file mode 100644
index 0000000..5a8c040
--- /dev/null
+++ b/abs/core/perl_modules/perl-b-hooks-endofscope/PKGBUILD
@@ -0,0 +1,41 @@
+# $Id$
+# Maintainer: Sergej Pupykin <arch+pub@sergej.pp.ru>
+# Maintainer: Maxwell Pray a.k.a. Synthead <synthead@gmail.com>
+# Contributor: aurperl@juster.us
+
+pkgname="perl-b-hooks-endofscope"
+_cpanname="B-Hooks-EndOfScope"
+pkgver=0.21
+pkgrel=3
+pkgdesc="Execute code after a scope finished compilation"
+arch=("any")
+license=("PerlArtistic" "GPL")
+options=("!emptydirs")
+depends=("perl-module-implementation"
+ "perl-module-runtime"
+ "perl-sub-exporter"
+ "perl-sub-exporter-progressive"
+ "perl-try-tiny"
+ "perl-variable-magic>=0.34"
+ "perl>=5.5.0")
+url="http://search.cpan.org/~bobtfish/B-Hooks-EndOfScope-$pkgver/"
+source=("http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/B-Hooks-EndOfScope-$pkgver.tar.gz")
+sha256sums=('90f3580880f1d68b843c142cc86f58bead1f3e03634c63868ac9eba5eedae02c')
+
+build() {
+ cd "$srcdir"/B-Hooks-EndOfScope-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd "$srcdir"/B-Hooks-EndOfScope-$pkgver
+ make test
+}
+
+package() {
+ cd "$srcdir"/B-Hooks-EndOfScope-$pkgver
+ make install DESTDIR="$pkgdir"
+ # Remove "perllocal.pod" and ".packlist".
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+}
diff --git a/abs/core/perl_modules/perl-capture-tiny/PKGBUILD b/abs/core/perl_modules/perl-capture-tiny/PKGBUILD
index a0987b3..4b15057 100644
--- a/abs/core/perl_modules/perl-capture-tiny/PKGBUILD
+++ b/abs/core/perl_modules/perl-capture-tiny/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 167936 2012-10-03 22:20:09Z heftig $
+# $Id$
# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
# Contributor: Caleb Cushing <xenoterracide@gmail.com>
pkgname=perl-capture-tiny
_realname=Capture-Tiny
-pkgver=0.20
-pkgrel=1
+pkgver=0.46
+pkgrel=3
pkgdesc="Capture STDOUT and STDERR from Perl, XS or external programs"
arch=(any)
license=(PerlArtistic GPL)
@@ -13,7 +13,7 @@ depends=(perl)
url="http://search.cpan.org/dist/Capture-Tiny"
options=('!emptydirs')
source=("http://search.cpan.org/CPAN/authors/id/D/DA/DAGOLDEN/$_realname-$pkgver.tar.gz")
-md5sums=('cd7aab9f3bccefc76c7d4f0455c55d35')
+sha256sums=('5d7a6a830cf7f2b2960bf8b8afaac16a537ede64f3023827acea5bd24ca77015')
build() {
cd "$srcdir/$_realname-$pkgver"
@@ -21,6 +21,13 @@ build() {
make
}
+check() {
+ cd "$srcdir/$_realname-$pkgver"
+ unset PERL5LIB PERL_MM_OPT PERL_MB_OPT PERL_LOCAL_LIB_ROOT
+ export PERL_MM_USE_DEFAULT=1
+ make test
+}
+
package() {
cd "$srcdir/$_realname-$pkgver"
make DESTDIR="$pkgdir" install
diff --git a/abs/core/perl_modules/perl-cgi/PKGBUILD b/abs/core/perl_modules/perl-cgi/PKGBUILD
new file mode 100644
index 0000000..e94e393
--- /dev/null
+++ b/abs/core/perl_modules/perl-cgi/PKGBUILD
@@ -0,0 +1,47 @@
+# Maintainer: Florian Pritz <bluewind@xinu.at>
+
+pkgname=perl-cgi
+pkgver=4.38
+pkgrel=1
+pkgdesc='Handle Common Gateway Interface requests and responses'
+arch=(any)
+license=(PerlArtistic GPL)
+options=(!emptydirs)
+depends=('perl>=5.8.1' perl-html-parser)
+checkdepends=('perl-test-deep>=0.11' perl-test-nowarnings
+ 'perl-test-warn>=0.3')
+url=https://metacpan.org/release/CGI
+source=("http://search.cpan.org/CPAN/authors/id/L/LE/LEEJO/CGI-$pkgver.tar.gz")
+md5sums=(0aeb8563d533e7f83724ed068b5bfc37)
+sha512sums=(c035a24b228105786828a4c9ae9c6aab9f22e311dc73871dc25497c5b4b84e77b096e570059a9d7cadc2916bfba582d5c093b6f029ccf0d826870629e36be04e)
+_ddir="CGI-$pkgver"
+
+build()
+(
+ cd "$srcdir/$_ddir"
+ export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL=--skipdeps
+ unset PERL5LIB PERL_MM_OPT
+ /usr/bin/perl Makefile.PL
+ make
+)
+
+check()
+(
+ cd "$srcdir/$_ddir"
+ export PERL_MM_USE_DEFAULT=1
+ unset PERL5LIB
+ make test
+)
+
+package()
+(
+ cd "$srcdir/$_ddir"
+ make install INSTALLDIRS=vendor DESTDIR="$pkgdir"
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+)
+
+# Local Variables:
+# mode: shell-script
+# sh-basic-offset: 2
+# End:
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-class-factory-util/PKGBUILD b/abs/core/perl_modules/perl-class-factory-util/PKGBUILD
index c9da049..e5a10b9 100644
--- a/abs/core/perl_modules/perl-class-factory-util/PKGBUILD
+++ b/abs/core/perl_modules/perl-class-factory-util/PKGBUILD
@@ -1,31 +1,31 @@
-# $Id: PKGBUILD 65743 2012-02-22 12:12:49Z spupykin $
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
pkgname=perl-class-factory-util
-_realname=Class-Factory-Util
pkgver=1.7
-pkgrel=4
+pkgrel=8
pkgdesc="Provide utility methods for factory classes"
-arch=(i686 x86_64)
-license=('GPL' 'Artistic')
-url="http://search.cpan.org/~drolsky/Class-Factory-Util"
+arch=(any)
+license=('GPL' 'PerlArtistic')
+url="http://search.cpan.org/dist/Class-Factory-Util/"
options=(!emptydirs)
depends=('perl')
-provides=('class-factory-util=1.7' 'Class::Factory::Util=1.7' 'perl-class-factory-util=1.7')
+makedepends=('perl-module-build')
source=(http://search.cpan.org/CPAN/authors/id/D/DR/DROLSKY/Class-Factory-Util-1.7.tar.gz)
md5sums=('aebd79da361b676a7ecd3245fc3d1b3f')
build() {
- cd ${srcdir}/${_realname}-${pkgver}
+ cd "$srcdir"/Class-Factory-Util-${pkgver}
# install module in vendor directories.
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
}
package() {
- cd ${srcdir}/${_realname}-${pkgver}
- make install DESTDIR=${pkgdir}
+ cd "$srcdir"/Class-Factory-Util-${pkgver}
+ make install DESTDIR="$pkgdir"
# remove perllocal.pod and .packlist
- find ${pkgdir} -name perllocal.pod -delete
- find ${pkgdir} -name .packlist -delete
+ find "$pkgdir" -name perllocal.pod -delete
+ find "$pkgdir" -name .packlist -delete
}
diff --git a/abs/core/perl_modules/perl-class-inspector/PKGBUILD b/abs/core/perl_modules/perl-class-inspector/PKGBUILD
new file mode 100644
index 0000000..ca24226
--- /dev/null
+++ b/abs/core/perl_modules/perl-class-inspector/PKGBUILD
@@ -0,0 +1,30 @@
+# $Id$
+# Maintainer:
+
+pkgname=perl-class-inspector
+pkgver=1.32
+pkgrel=3
+pkgdesc="Get information about a class and its structure"
+arch=('any')
+url="http://search.cpan.org/dist/Class-Inspector"
+license=('PerlArtistic' 'GPL')
+depends=('perl')
+options=('!emptydirs')
+source=("http://search.cpan.org/CPAN/authors/id/P/PL/PLICEASE/Class-Inspector-${pkgver}.tar.gz")
+sha512sums=('980654614d968e2fb61df864322f5c5248e352f0697a425539600c3549505f47b857d7856bc9d406ebc8757f8fc379a669f1f5085412f6fa48672c9db8a82df4')
+
+build() {
+ cd Class-Inspector-${pkgver}
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd Class-Inspector-${pkgver}
+ make test
+}
+
+package() {
+ cd Class-Inspector-${pkgver}
+ make DESTDIR="$pkgdir" install
+}
diff --git a/abs/core/perl_modules/perl-class-load/PKGBUILD b/abs/core/perl_modules/perl-class-load/PKGBUILD
index 1fc20c4..25ef704 100644
--- a/abs/core/perl_modules/perl-class-load/PKGBUILD
+++ b/abs/core/perl_modules/perl-class-load/PKGBUILD
@@ -1,25 +1,30 @@
-# $Id: PKGBUILD 73839 2012-07-16 05:39:18Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
pkgname=perl-class-load
-pkgver=0.20
-pkgrel=1
+pkgver=0.24
+pkgrel=2
pkgdesc="a working (require 'Class::Name') and more"
arch=('any')
license=('PerlArtistic' 'GPL')
url="http://search.cpan.org/dist/Class-Load"
options=(!emptydirs)
depends=('perl' 'perl-module-runtime' 'perl-data-optlist' 'perl-package-stash>=0.32'
- 'perl-try-tiny' 'perl-test-fatal' 'perl-module-implementation')
-source=(http://search.cpan.org/CPAN/authors/id/D/DR/DROLSKY/Class-Load-$pkgver.tar.gz)
-md5sums=('9ccb131338a6cf1318599c08c095cf72')
+ 'perl-try-tiny' 'perl-test-fatal' 'perl-module-implementation'
+ 'perl-namespace-clean')
+source=(http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/Class-Load-$pkgver.tar.gz)
+sha256sums=('0bb983da46c146534fc77a556d6e40d925142f2eb43103534025ee545265ca36')
build() {
cd "${srcdir}/Class-Load-${pkgver}"
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
# make test
- make install DESTDIR=${pkgdir}
- find ${pkgdir} -name perllocal.pod -delete
- find ${pkgdir} -name .packlist -delete
+}
+
+package() {
+ cd "${srcdir}/Class-Load-${pkgver}"
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name perllocal.pod -delete
+ find "$pkgdir" -name .packlist -delete
}
diff --git a/abs/core/perl_modules/perl-class-methodmaker/PKGBUILD b/abs/core/perl_modules/perl-class-methodmaker/PKGBUILD
index 4b5ac7c..8fb04d3 100644
--- a/abs/core/perl_modules/perl-class-methodmaker/PKGBUILD
+++ b/abs/core/perl_modules/perl-class-methodmaker/PKGBUILD
@@ -3,22 +3,33 @@
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-class-methodmaker
-pkgver=2.18
-pkgrel=4
+pkgver=2.24
+pkgrel=5
pkgdesc="Create generic class methods"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://search.cpan.org/dist/Class-MethodMaker"
license=('GPL' 'PerlArtistic')
-depends=('perl>=5.10.0')
+depends=('perl')
options=('!emptydirs')
-source=("http://search.cpan.org/CPAN/authors/id/S/SC/SCHWIGON/Class-MethodMaker-${pkgver}.tar.gz")
-md5sums=('99435d78e0a1754b102fe39597c6c3df')
+source=("http://search.cpan.org/CPAN/authors/id/S/SC/SCHWIGON/class-methodmaker/Class-MethodMaker-${pkgver}.tar.gz")
+md5sums=('6fac1ed1fea8a4e42d36a4d07c8bfa09')
build() {
- cd $srcdir/Class-MethodMaker-$pkgver
+ cd "$srcdir"/Class-MethodMaker-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
- make install DESTDIR=$pkgdir
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+}
+
+package() {
+ cd "$srcdir"/Class-MethodMaker-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
diff --git a/abs/core/perl_modules/perl-class-singleton/PKGBUILD b/abs/core/perl_modules/perl-class-singleton/PKGBUILD
index 1f80ce9..af528dd 100644
--- a/abs/core/perl_modules/perl-class-singleton/PKGBUILD
+++ b/abs/core/perl_modules/perl-class-singleton/PKGBUILD
@@ -1,25 +1,29 @@
-# $Id: PKGBUILD 65747 2012-02-22 12:14:00Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
-# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman
# Contributor: François Charette <firmicus ατ gmx δοτ net>
+# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman
pkgname=perl-class-singleton
-pkgver=1.4
-pkgrel=4
-pkgdesc="Implementation of a "Singleton" class"
+pkgver=1.5
+pkgrel=2
+pkgdesc="Implementation of a singleton class"
arch=('any')
url="http://search.cpan.org/dist/Class-Singleton"
license=('GPL' 'PerlArtistic')
depends=('perl>=5.10.0')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/A/AB/ABW/Class-Singleton-$pkgver.tar.gz)
-md5sums=('a18b108ab97e2107cbbe816d2b3e2ee3')
+source=("http://search.cpan.org/CPAN/authors/id/S/SH/SHAY/Class-Singleton-$pkgver.tar.gz")
+md5sums=('6a2524f590eda075f4bc929598119241')
build() {
- cd $srcdir/Class-Singleton-$pkgver
+ cd "$srcdir"/Class-Singleton-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
- make install DESTDIR=$pkgdir
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+}
+
+package() {
+ cd "$srcdir"/Class-Singleton-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-class-std-fast/PKGBUILD b/abs/core/perl_modules/perl-class-std-fast/PKGBUILD
index 71878e6..3494263 100644
--- a/abs/core/perl_modules/perl-class-std-fast/PKGBUILD
+++ b/abs/core/perl_modules/perl-class-std-fast/PKGBUILD
@@ -1,6 +1,6 @@
pkgname='perl-class-std-fast'
pkgver='0.0.8'
-pkgrel='1'
+pkgrel='2'
pkgdesc="Class::Std::Fast allows you to use the beautiful API of Class::Std in a faster way than Class::Std"
arch=('any')
license=('PerlArtistic' 'GPL')
diff --git a/abs/core/perl_modules/perl-class-std/PKGBUILD b/abs/core/perl_modules/perl-class-std/PKGBUILD
index dafacbc..c09e1a3 100644
--- a/abs/core/perl_modules/perl-class-std/PKGBUILD
+++ b/abs/core/perl_modules/perl-class-std/PKGBUILD
@@ -3,7 +3,7 @@
pkgname='perl-class-std'
pkgver='0.013'
-pkgrel='1'
+pkgrel='2'
pkgdesc="Support for creating standard \"inside-out\" classes"
arch=('any')
license=('PerlArtistic' 'GPL')
diff --git a/abs/core/perl_modules/perl-compress-bzip2/PKGBUILD b/abs/core/perl_modules/perl-compress-bzip2/PKGBUILD
index 7f5e2bc..8f46324 100644
--- a/abs/core/perl_modules/perl-compress-bzip2/PKGBUILD
+++ b/abs/core/perl_modules/perl-compress-bzip2/PKGBUILD
@@ -1,26 +1,34 @@
-# $Id: PKGBUILD 160507 2012-06-02 10:27:00Z bluewind $
+# $Id$
# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
pkgname=perl-compress-bzip2
_realname=Compress-Bzip2
-pkgver=2.09
-pkgrel=5
+pkgver=2.26
+pkgrel=4
pkgdesc="Interface to Bzip2 compression library"
-arch=(i686 x86_64)
+arch=(x86_64)
license=(GPL2)
depends=(perl bzip2)
-url="http://search.cpan.org/dist/Compress-Bzip2"
+url="https://metacpan.org/release/Compress-Bzip2"
options=('!emptydirs')
-source=("http://search.cpan.org/CPAN/authors/id/A/AR/ARJAY/$_realname-$pkgver.tar.gz")
-md5sums=('1699fde3e86f2a036f135ae606d456bf')
+source=(https://cpan.metacpan.org/authors/id/R/RU/RURBAN/${_realname}-${pkgver}.tar.gz)
+sha256sums=('5132f0c5f377a54d77ee36d332aa0ece585c22a40f2c31f2619e40262f5c4f0c')
build() {
- cd "$srcdir/$_realname-$pkgver"
+ cd $_realname-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
}
package() {
- cd "$srcdir/$_realname-$pkgver"
+ cd $_realname-$pkgver
make DESTDIR="$pkgdir" install
+
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
diff --git a/abs/core/perl_modules/perl-config-simple/PKGBUILD b/abs/core/perl_modules/perl-config-simple/PKGBUILD
index a566dbc..d71a9f6 100644
--- a/abs/core/perl_modules/perl-config-simple/PKGBUILD
+++ b/abs/core/perl_modules/perl-config-simple/PKGBUILD
@@ -1,25 +1,39 @@
-# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $
-# Maintainer: Cecil H. Watson <knoppmyth@gmail.com
+# Maintainer: Florian Pritz <bluewind@xinu.at>
pkgname=perl-config-simple
-_realname=Config-Simple
pkgver=4.59
-pkgrel=1
-pkgdesc="Simple configuration file class for perl"
-arch=(i686 x86_64)
-license=('PerlArtistic')
-url="http://search.cpan.org/dist/${_realname}/"
-depends=('perlxml' 'perl>=5.10.0')
-options=('!emptydirs')
-source=(ftp://ftp.cpan.org/pub/CPAN/authors/id/S/SH/SHERZODR/${_realname}-${pkgver}.tar.gz)
+pkgrel=8
+pkgdesc="Simple configuration file class to create and read config files"
+arch=(any)
+license=(PerlArtistic GPL)
+options=(!emptydirs)
+depends=('perl')
+url="http://search.cpan.org/~sherzodr/Config-Simple"
+source=("http://search.cpan.org/CPAN/authors/id/S/SH/SHERZODR/Config-Simple-${pkgver}.tar.gz")
md5sums=('96513b61c7db591339ce2577878a3b32')
build() {
- cd ${startdir}/src/${_realname}-${pkgver}
- perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make DESTDIR=${startdir}/pkg install || return 1
+ export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor" \
+ PERL_MB_OPT="--installdirs vendor" \
+ MODULEBUILDRC=/dev/null
- find ${startdir}/pkg -name '.packlist' -delete
- find ${startdir}/pkg -name 'perllocal.pod' -delete
+ cd "${srcdir}/Config-Simple-${pkgver}"
+ /usr/bin/perl Makefile.PL
+ make
}
+
+check() {
+ export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
+ cd "${srcdir}/Config-Simple-${pkgver}"
+ make test
+}
+
+package() {
+ cd "$_distdir"
+ cd "${srcdir}/Config-Simple-${pkgver}"
+ make DESTDIR="$pkgdir" install
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+}
+
diff --git a/abs/core/perl_modules/perl-convert-binhex/PKGBUILD b/abs/core/perl_modules/perl-convert-binhex/PKGBUILD
index 9b2311b..e073c57 100644
--- a/abs/core/perl_modules/perl-convert-binhex/PKGBUILD
+++ b/abs/core/perl_modules/perl-convert-binhex/PKGBUILD
@@ -1,21 +1,21 @@
-# $Id: PKGBUILD 143927 2011-11-30 21:19:35Z giovanni $
+# $Id$
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: Techlive Zheng <techlivezheng [at] gmail [dot] com>
# Contributor: Jakub Fišer <mr [at] MikyMaus [dot] org>
# Contributor: Filip S. Adamsen <fsa [at] fsadev [dot] com>
pkgname=perl-convert-binhex
-pkgver=1.119
-pkgrel=4
+pkgver=1.125
+pkgrel=3
pkgdesc="Perl module to extract data from Macintosh BinHex files"
arch=('any')
-url="http://search.cpan.org/~eryq/Convert-BinHex-1.119/"
+url="http://search.cpan.org/dist/Convert-BinHex/"
license=('PerlArtistic')
depends=('perl')
options=('!emptydirs')
install=${pkgname}.install
-source=("http://search.cpan.org/CPAN/authors/id/E/ER/ERYQ/Convert-BinHex-$pkgver.tar.gz")
-md5sums=('ba70ad1772abac6270078f28197a7961')
+source=("http://search.cpan.org/CPAN/authors/id/S/ST/STEPHEN/Convert-BinHex-$pkgver.tar.gz")
+md5sums=('2f485e1283387ead5b92243e1aacff9d')
build() {
cd "${srcdir}/Convert-BinHex-${pkgver}"
@@ -29,8 +29,4 @@ package() {
cd "${srcdir}/Convert-BinHex-${pkgver}"
make DESTDIR="${pkgdir}/" install
-
- # remove perllocal.pod and .packlist
- find "${pkgdir}" -name perllocal.pod -delete
- find "${pkgdir}" -name .packlist -delete
}
diff --git a/abs/core/perl_modules/perl-cpan-meta/PKGBUILD b/abs/core/perl_modules/perl-cpan-meta/PKGBUILD
new file mode 100644
index 0000000..44d6cd4
--- /dev/null
+++ b/abs/core/perl_modules/perl-cpan-meta/PKGBUILD
@@ -0,0 +1,44 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgname=perl-cpan-meta
+pkgver=2.150010
+pkgrel=5
+pkgdesc='the distribution metadata for a CPAN dist'
+arch=('any')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl>=5.8' 'perl-cpan-meta-requirements>=2.121'
+ 'perl-cpan-meta-yaml>=0.008' 'perl-cpan-meta>=2.150008')
+url='https://metacpan.org/release/CPAN-Meta'
+source=("http://search.cpan.org/CPAN/authors/id/D/DA/DAGOLDEN/CPAN-Meta-$pkgver.tar.gz")
+sha512sums=('b5513c411de33e10da6751460e373a67c6c0245a98409fc525383feb1f9b913e9fcd23e6cc2e0faa93eab3ecb932e3ea31788d46e490ef67151c8842a096d700')
+
+_ddir="CPAN-Meta-$pkgver"
+
+build() (
+ cd "$srcdir/$_ddir"
+ export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL=--skipdeps
+ unset PERL5LIB PERL_MM_OPT
+ /usr/bin/perl Makefile.PL
+ make
+)
+
+check() (
+ cd "$srcdir/$_ddir"
+ export PERL_MM_USE_DEFAULT=1
+ unset PERL5LIB
+ make test
+)
+
+package() (
+ cd "$srcdir/$_ddir"
+ make install INSTALLDIRS=vendor DESTDIR="$pkgdir"
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+)
+
+# Local Variables:
+# mode: shell-script
+# sh-basic-offset: 2
+# End:
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-crypt-ssleay/PKGBUILD b/abs/core/perl_modules/perl-crypt-ssleay/PKGBUILD
index ccaab5e..8dd1a04 100644
--- a/abs/core/perl_modules/perl-crypt-ssleay/PKGBUILD
+++ b/abs/core/perl_modules/perl-crypt-ssleay/PKGBUILD
@@ -1,31 +1,46 @@
-# $Id: PKGBUILD 160515 2012-06-02 10:27:13Z bluewind $
+# $Id$
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-crypt-ssleay
-pkgver=0.58
-pkgrel=4
+pkgver=0.73_04
+pkgrel=9
pkgdesc="OpenSSL glue that provides LWP https support"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://search.cpan.org/dist/Crypt-SSLeay"
license=('GPL' 'PerlArtistic')
-depends=('openssl')
+depends=('perl-lwp-protocol-https' 'perl-try-tiny' 'perl-path-class')
options=('!emptydirs')
-source=(http://www.cpan.org/CPAN/authors/id/N/NA/NANIS/Crypt-SSLeay-$pkgver.tar.gz)
-md5sums=('fbf3d12e58462cee00ea63239c0b13c7')
+source=(http://www.cpan.org/CPAN/authors/id/N/NA/NANIS/Crypt-SSLeay-$pkgver.tar.gz)
+md5sums=('7508b2a34da2202cc0c78deb59e36526')
build() {
cd "${srcdir}/Crypt-SSLeay-${pkgver}"
+ PERL_USE_UNSAFE_INC=1 \
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
- make test
+}
+
+check() {
+ cd "${srcdir}/Crypt-SSLeay-${pkgver}"
+
+# make test
}
package() {
cd "${srcdir}/Crypt-SSLeay-${pkgver}"
+
make install DESTDIR="${pkgdir}"
find ${pkgdir} -name '.packlist' -delete
find ${pkgdir} -name '*.pod' -delete
+
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
diff --git a/abs/core/perl_modules/perl-data-dump/PKGBUILD b/abs/core/perl_modules/perl-data-dump/PKGBUILD
index a40b423..56d1bea 100644
--- a/abs/core/perl_modules/perl-data-dump/PKGBUILD
+++ b/abs/core/perl_modules/perl-data-dump/PKGBUILD
@@ -3,7 +3,7 @@
pkgname=perl-data-dump
pkgver=1.23
-pkgrel=1
+pkgrel=3
pkgdesc="Pretty printing of data structures"
arch=(any)
url="https://metacpan.org/release/Data-Dump"
diff --git a/abs/core/perl_modules/perl-data-optlist/PKGBUILD b/abs/core/perl_modules/perl-data-optlist/PKGBUILD
index 162c662..84d62ee 100644
--- a/abs/core/perl_modules/perl-data-optlist/PKGBUILD
+++ b/abs/core/perl_modules/perl-data-optlist/PKGBUILD
@@ -1,30 +1,28 @@
-# Maintainer: Justin Davis <jrcd83@gmail.com>
-# $Id: PKGBUILD 57546 2011-10-30 17:27:04Z juster $
+# $Id$
+# Maintainer: Jonathan Steel <jsteel@aur.archlinux.org>
+# Contributor: Justin Davis <jrcd83@gmail.com>
pkgname=perl-data-optlist
-pkgver=0.107
-pkgrel=1
-pkgdesc="parse and validate simple name/value option pairs"
-arch=(any)
-license=(PerlArtistic GPL)
-options=(!emptydirs)
-depends=('perl-params-util' 'perl-scalar-list-utils' 'perl-sub-install>=0.921')
-makedepends=('perl-extutils-makemaker>=6.30')
-checkdepends=('perl-test-simple')
-url=https://metacpan.org/release/Data-OptList
-source=("http://search.cpan.org/CPAN/authors/id/R/RJ/RJBS/Data-OptList-${pkgver}.tar.gz")
-md5sums=(17177b3cfb8941780a8736f9b9b30421)
-sha512sums=(06d0ca9b2f6142ea4c0de8c6f858bd96fb3964490e50f1caa677e2d53e144a4ce6c89097ad99d390ea86436923a449df8a38bd9064b0b91290b836f084d765f2)
-_distdir="${srcdir}/Data-OptList-${pkgver}"
+pkgver=0.110
+pkgrel=3
+pkgdesc="Parse and validate simple name/value option pairs"
+arch=('any')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl-params-util' 'perl-scalar-list-utils' 'perl-sub-install')
+makedepends=('perl-extutils-makemaker')
+url="https://metacpan.org/release/Data-OptList"
+source=(http://search.cpan.org/CPAN/authors/id/R/RJ/RJBS/Data-OptList-$pkgver.tar.gz)
+md5sums=('f9236c9ea5607134ad8a2b3dc901c4c5')
build() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor" \
+ PERL_MB_OPT="--installdirs vendor" \
MODULEBUILDRC=/dev/null
+ cd "$srcdir"/Data-OptList-$pkgver
- cd "$_distdir"
/usr/bin/perl Makefile.PL
make
)
@@ -32,19 +30,14 @@ build() {
check() {
( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- cd "$_distdir"
+ cd "$srcdir"/Data-OptList-$pkgver
+
make test
)
}
package() {
- cd "$_distdir"
- make DESTDIR="$pkgdir" install
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
-}
+ cd "$srcdir"/Data-OptList-$pkgver
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
+ make DESTDIR="$pkgdir"/ install
+}
diff --git a/abs/core/perl_modules/perl-data-uuid/PKGBUILD b/abs/core/perl_modules/perl-data-uuid/PKGBUILD
index a20fbe4..69eda71 100644
--- a/abs/core/perl_modules/perl-data-uuid/PKGBUILD
+++ b/abs/core/perl_modules/perl-data-uuid/PKGBUILD
@@ -1,51 +1,40 @@
-# CPAN Name : Data-UUID
-# Contributor: Anonymous
-# Generator : CPANPLUS::Dist::Arch 1.30
+# $Id$
+# Maintainer: Muflone http://www.muflone.com/contacts/english/
-pkgname='perl-data-uuid'
-pkgver='1.221'
-pkgrel='1'
+pkgname=perl-data-uuid
+_perl_namespace=Data
+_perl_module=UUID
+pkgver=1.221
+pkgrel=4
pkgdesc="Globally/Universally Unique Identifiers (GUIDs/UUIDs)"
-arch=('i686' 'x86_64')
-license=('PerlArtistic' 'GPL')
+arch=('x86_64')
+url="https://metacpan.org/release/${_perl_namespace}-${_perl_module}"
+license=('BSD')
+depends=('perl')
+source=("https://www.cpan.org/modules/by-module/${_perl_namespace}/${_perl_namespace}-${_perl_module}-${pkgver}.tar.gz")
+sha256sums=('3cc7b2a3a7b74b45a059e013f7fd878078500ea4b7269036f84556b022078667')
options=('!emptydirs')
-depends=('perl>=0')
-makedepends=()
-url='https://metacpan.org/release/Data-UUID'
-source=('http://search.cpan.org/CPAN/authors/id/R/RJ/RJBS/Data-UUID-1.221.tar.gz')
-md5sums=('7619929e8fe205a7fb83bc1c29ecbf99')
-sha512sums=('fa40219890f9adeb486a7ff636603d8695d81765ee858e396130100aaba96b524d80eef76e0c06eac2086fe3bb2d26114d94459466d29ddc82a7a7fcb2f5adac')
-_distdir="Data-UUID-1.221"
build() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
- MODULEBUILDRC=/dev/null
-
- cd "$srcdir/$_distdir"
- /usr/bin/perl Makefile.PL
- make
- )
+ cd "${_perl_namespace}-${_perl_module}-${pkgver}"
+ unset PERL5LIB PERL_MM_OPT PERL_MB_OPT PERL_LOCAL_LIB_ROOT
+ export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL=--skipdeps
+ perl Makefile.PL
+ make
}
check() {
- cd "$srcdir/$_distdir"
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- make test
- )
+ cd "${_perl_namespace}-${_perl_module}-${pkgver}"
+ unset PERL5LIB PERL_MM_OPT PERL_MB_OPT PERL_LOCAL_LIB_ROOT
+ export PERL_MM_USE_DEFAULT=1
+ make test
}
package() {
- cd "$srcdir/$_distdir"
- make install
-
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+ cd "${_perl_namespace}-${_perl_module}-${pkgver}"
+ unset PERL5LIB PERL_MM_OPT PERL_MB_OPT PERL_LOCAL_LIB_ROOT
+ make pure_install INSTALLDIRS=vendor DESTDIR="${pkgdir}"
+ # Install license file
+ install -m 755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
+ install -m 644 -t "${pkgdir}/usr/share/licenses/${pkgname}" "LICENSE"
}
-
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-date-manip/PKGBUILD b/abs/core/perl_modules/perl-date-manip/PKGBUILD
index 0ef2f9c..8688fd1 100644
--- a/abs/core/perl_modules/perl-date-manip/PKGBUILD
+++ b/abs/core/perl_modules/perl-date-manip/PKGBUILD
@@ -1,29 +1,31 @@
-# $Id: PKGBUILD 161416 2012-06-11 02:54:05Z eric $
-# Maintainer: Kevin Piche <kevin@archlinux.org>
-# Contributor: Andrew Simmons <andrew.simmons@gmail.com>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
pkgname=perl-date-manip
-_realname=Date-Manip
-pkgver=6.32
+pkgver=6.70
pkgrel=1
pkgdesc="Date::Manip - date manipulation routines"
arch=('any')
license=('PerlArtistic')
-url="http://search.cpan.org/dist/${_realname}/"
-depends=('perl-yaml-syck')
+url="http://search.cpan.org/dist/Date-Manip/"
+depends=('perl')
+checkdepends=('perl-test-inter')
options=('!emptydirs')
-source=(http://search.cpan.org/CPAN/authors/id/S/SB/SBECK/${_realname}-${pkgver}.tar.gz)
-md5sums=('0d5c1ee2f75f6407fb1035e3535f650b')
+source=("http://search.cpan.org/CPAN/authors/id/S/SB/SBECK/Date-Manip-${pkgver}.tar.gz")
+sha512sums=('67550a3f558fa0c075a9fb43bd59b23328d5d55d053c207a92db6a6e18cba6d2f53ca190110d2f1b00338b1e249d7021b3184f3d9f3965cba0160211a64beb26')
build() {
- cd "${srcdir}/${_realname}-${pkgver}"
+ cd Date-Manip-${pkgver}
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
- # install module in vendor directories.
- perl Build.PL installdirs=vendor destdir="${pkgdir}"
- perl Build
+check() {
+ cd Date-Manip-${pkgver}
+ make test
}
package() {
- cd "${srcdir}/${_realname}-${pkgver}"
- perl Build install
+ cd Date-Manip-${pkgver}
+ make DESTDIR="${pkgdir}" install
}
diff --git a/abs/core/perl_modules/perl-datetime-format-builder/PKGBUILD b/abs/core/perl_modules/perl-datetime-format-builder/PKGBUILD
index 71c3ed6..151e620 100644
--- a/abs/core/perl_modules/perl-datetime-format-builder/PKGBUILD
+++ b/abs/core/perl_modules/perl-datetime-format-builder/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 65778 2012-02-22 12:27:49Z spupykin $
+# $Id$
# Contributor: Caleb Cushing <xenoterracide@gmail.com>
pkgname=perl-datetime-format-builder
-pkgver=0.8000
-pkgrel=6
+pkgver=0.8100
+pkgrel=3
pkgdesc="Create DateTime parser classes and objects"
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('PerlArtistic' 'GPL')
options=('!emptydirs')
provides=('perl-datetime-format-builder=0.80')
diff --git a/abs/core/perl_modules/perl-datetime-format-iso8601/PKGBUILD b/abs/core/perl_modules/perl-datetime-format-iso8601/PKGBUILD
index c8e07df..6e2b05d 100644
--- a/abs/core/perl_modules/perl-datetime-format-iso8601/PKGBUILD
+++ b/abs/core/perl_modules/perl-datetime-format-iso8601/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 66111 2012-02-23 01:12:06Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
-# Contributor: Lukas Fleischer <archlinux at cryptocrack dot de>
+# Contributor: Lukas Fleischer <lfleischer@archlinux.org>
pkgname=perl-datetime-format-iso8601
pkgver=0.08
-pkgrel=1
+pkgrel=3
pkgdesc="Parses ISO8601 formats"
arch=('any')
url="http://search.cpan.org/dist/DateTime-Format-ISO8601/"
@@ -12,21 +12,20 @@ license=('PerlArtistic')
depends=('perl-datetime-format-builder' 'perl-datetime')
makedepends=()
optdepends=('perl-file-find-rule'
- 'perl-test-distribution'
'perl-test-pod')
options=(!emptydirs)
source=("http://search.cpan.org/CPAN/authors/id/J/JH/JHOBLITT/DateTime-Format-ISO8601-$pkgver.tar.gz")
md5sums=('b7c0a4b5e767a8d3b87f3dc678d8c30c')
build() {
- cd $srcdir/DateTime-Format-ISO8601-$pkgver
+ cd "$srcdir"/DateTime-Format-ISO8601-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
}
package() {
- cd $srcdir/DateTime-Format-ISO8601-$pkgver
+ cd "$srcdir"/DateTime-Format-ISO8601-$pkgver
make install DESTDIR="${pkgdir}"
- find ${pkgdir} -name perllocal.pod -delete
- find ${pkgdir} -name .packlist -delete
+ find "$pkgdir" -name perllocal.pod -delete
+ find "$pkgdir" -name .packlist -delete
}
diff --git a/abs/core/perl_modules/perl-datetime-format-mail/PKGBUILD b/abs/core/perl_modules/perl-datetime-format-mail/PKGBUILD
index b4b6c6f..8c38e26 100644
--- a/abs/core/perl_modules/perl-datetime-format-mail/PKGBUILD
+++ b/abs/core/perl_modules/perl-datetime-format-mail/PKGBUILD
@@ -2,22 +2,25 @@
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-datetime-format-mail
-pkgver=0.3001
-pkgrel=3
+pkgver=0.403
+pkgrel=2
pkgdesc="Convert between DateTime and RFC2822/822 formats "
-arch=('i686' 'x86_64')
-url="http://search.cpan.org/~DROLSKY/DateTime-Format-Mail"
+arch=('x86_64')
+url="http://search.cpan.org/dist/DateTime-Format-Mail"
license=('GPL' 'PerlArtistic')
depends=('perl>=5.10.0' 'perl-datetime' 'perl-params-validate>=0.67')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/D/DR/DROLSKY/DateTime-Format-Mail-$pkgver.tar.gz)
-md5sums=('15e36249e866463bd0237262a8e43b16')
+source=("http://search.cpan.org/CPAN/authors/id/B/BO/BOOK/DateTime-Format-Mail-$pkgver.tar.gz")
+md5sums=('b34a52d96290c42cf53e8db0a8f16ecd')
build() {
- cd $startdir/src/DateTime-Format-Mail-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make install DESTDIR=$startdir/pkg || return 1
- find $startdir/pkg -name '.packlist' -delete
- find $startdir/pkg -name '*.pod' -delete
+ cd "$srcdir"/DateTime-Format-Mail-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+package() {
+ cd "$srcdir"/DateTime-Format-Mail-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-datetime-format-sqlite/PKGBUILD b/abs/core/perl_modules/perl-datetime-format-sqlite/PKGBUILD
new file mode 100644
index 0000000..2fb7c83
--- /dev/null
+++ b/abs/core/perl_modules/perl-datetime-format-sqlite/PKGBUILD
@@ -0,0 +1,50 @@
+# Contributor: John D Jones III <j[nospace]n[nospace]b[nospace]e[nospace]k[nospace]1972 -_AT_- the domain name google offers a mail service at ending in dot com>
+# Generator : CPANPLUS::Dist::Arch 1.25
+
+pkgname='perl-datetime-format-sqlite'
+pkgver='0.11'
+pkgrel='1'
+pkgdesc="Parse and format SQLite dates and times"
+arch=('any')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl-datetime>=0.1' 'perl-datetime-format-builder>=0.6')
+makedepends=()
+url='http://search.cpan.org/dist/DateTime-Format-SQLite'
+source=('http://search.cpan.org/CPAN/authors/id/C/CF/CFAERBER/DateTime-Format-SQLite-0.11.tar.gz')
+md5sums=('9cc9cc861407a1bbc696226605279842')
+sha512sums=('061f831c2a8d653706d315c1cff24ad887e3f8c65afdbd2140066735649c097be921f217e6e2761f8f34604066c618f296d40e9c650c3a1bb085cadbdfa7b7b9')
+_distdir="DateTime-Format-SQLite-0.11"
+
+build() {
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ MODULEBUILDRC=/dev/null
+
+ cd "$srcdir/$_distdir"
+ /usr/bin/perl Makefile.PL
+ make
+ )
+}
+
+check() {
+ cd "$srcdir/$_distdir"
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
+ make test
+ )
+}
+
+package() {
+ cd "$srcdir/$_distdir"
+ make install
+
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+}
+
+# Local Variables:
+# mode: shell-script
+# sh-basic-offset: 2
+# End:
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-datetime-format-strptime/ChangeLog b/abs/core/perl_modules/perl-datetime-format-strptime/ChangeLog
deleted file mode 100644
index 46b7684..0000000
--- a/abs/core/perl_modules/perl-datetime-format-strptime/ChangeLog
+++ /dev/null
@@ -1,7 +0,0 @@
-2009-02-27 Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
-
- * 1.0900-1 :
- Adopted the PKGBUILD
- Modified the PKGBUILD to match new PKGBUILD-perl.proto
- Added missing dep perl-datetime
- Added a ChangeLog
diff --git a/abs/core/perl_modules/perl-datetime-format-strptime/PKGBUILD b/abs/core/perl_modules/perl-datetime-format-strptime/PKGBUILD
index 5f2d8de..9d83790 100644
--- a/abs/core/perl_modules/perl-datetime-format-strptime/PKGBUILD
+++ b/abs/core/perl_modules/perl-datetime-format-strptime/PKGBUILD
@@ -1,28 +1,31 @@
-# Contributor: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
-# Contributor: Francois Charette <firmicus@gmx.net>
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Caleb Cushing <xenoterracide@gmail.com>
pkgname=perl-datetime-format-strptime
-_pkgname=DateTime-Format-Strptime
-pkgver=1.0900
+pkgver=1.75
pkgrel=1
-pkgdesc="DateTime::Format::Strptime - Parse and format strp and strf time patterns"
-arch=('i686' 'x86_64')
-url="http://search.cpan.org/~RICKM/${_pkgname}"
-license=('GPL' 'PerlArtistic')
-depends=('perl>=5.10.0' 'perl-datetime')
-options=(!emptydirs)
-
-source=(http://www.cpan.org/authors/id/R/RI/RICKM/${_pkgname}-$pkgver.tgz)
-md5sums=('f84e3e11b2948ca0fc2848b9c123e473')
+epoch=1
+pkgdesc="Parse and Format DateTimes using Strptime"
+arch=('any')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl-datetime>=0.72' 'perl-datetime-locale>=0.45'
+ 'perl-datetime-timezone>=0.79' 'perl-params-validate>=0.64'
+ 'perl-package-deprecationmanager')
+url="http://search.cpan.org/dist/DateTime-Format-Strptime"
+source=("http://search.cpan.org/CPAN/authors/id/D/DR/DROLSKY/DateTime-Format-Strptime-${pkgver}.tar.gz")
+sha256sums=('4fcfb2ac4f79d7ff2855a405f39050d2ea691ee098ce54ede8af79c8d6ab3c19')
build() {
- cd $srcdir/${_pkgname}-$pkgver
-
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
-
- make || return 1
- make install DESTDIR=$pkgdir || return 1
+ export PERL_MM_USE_DEFAULT=1
+ cd "${srcdir}/DateTime-Format-Strptime-${pkgver}"
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
- find $pkgdir -name perllocal.pod -delete
- find $pkgdir -name .packlist -delete
+package() {
+ cd "${srcdir}/DateTime-Format-Strptime-${pkgver}"
+ make DESTDIR="$pkgdir" install
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
}
diff --git a/abs/core/perl_modules/perl-datetime-format-strptime/__changelog b/abs/core/perl_modules/perl-datetime-format-strptime/__changelog
new file mode 100644
index 0000000..fb5e7bb
--- /dev/null
+++ b/abs/core/perl_modules/perl-datetime-format-strptime/__changelog
@@ -0,0 +1 @@
+PKGBUILD: add epoch to ensure it is updated
diff --git a/abs/core/perl_modules/perl-datetime-format-w3cdtf/PKGBUILD b/abs/core/perl_modules/perl-datetime-format-w3cdtf/PKGBUILD
index 80a5f9b..105312c 100644
--- a/abs/core/perl_modules/perl-datetime-format-w3cdtf/PKGBUILD
+++ b/abs/core/perl_modules/perl-datetime-format-w3cdtf/PKGBUILD
@@ -1,23 +1,28 @@
-# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-datetime-format-w3cdtf
-pkgver=0.04
-pkgrel=3
+pkgver=0.07
+pkgrel=2
pkgdesc="Parse and format W3CDTF datetime strings"
-arch=('i686' 'x86_64')
-url="http://search.cpan.org/~KELLAN/DateTime-Format-W3CDTF"
+arch=('any')
+url="http://search.cpan.org/dist/DateTime-Format-W3CDTF"
license=('GPL' 'PerlArtistic')
depends=('perl>=5.10.0' 'perl-datetime')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/K/KE/KELLAN/DateTime-Format-W3CDTF-$pkgver.tar.gz)
-md5sums=('5ad0a41bb5de08f9c16395ea311bb491')
+source=(http://search.cpan.org/CPAN/authors/id/G/GW/GWILLIAMS/DateTime-Format-W3CDTF-$pkgver.tar.gz)
+sha256sums=('69a02b661bbf1daa14a4813cb6786eaa66dbdf2743f0b3f458e30234c3a26268')
build() {
- cd $startdir/src/DateTime-Format-W3CDTF-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make install DESTDIR=$startdir/pkg || return 1
- find $startdir/pkg -name '.packlist' -delete
- find $startdir/pkg -name '*.pod' -delete
+ cd "$srcdir"/DateTime-Format-W3CDTF-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+package() {
+ cd "$srcdir"/DateTime-Format-W3CDTF-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-datetime-locale/PKGBUILD b/abs/core/perl_modules/perl-datetime-locale/PKGBUILD
index 219e9c2..8d9d966 100644
--- a/abs/core/perl_modules/perl-datetime-locale/PKGBUILD
+++ b/abs/core/perl_modules/perl-datetime-locale/PKGBUILD
@@ -1,24 +1,29 @@
-# $Id: PKGBUILD 65785 2012-02-22 12:32:13Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-datetime-locale
-pkgver=0.45
-pkgrel=2
+pkgver=1.20
+pkgrel=1
pkgdesc="Localization support for DateTime.pm "
arch=(any)
url="http://search.cpan.org/dist/DateTime-Locale"
license=('GPL' 'PerlArtistic')
-depends=('perl-params-validate' 'perl-list-moreutils')
+depends=('perl-params-validate' 'perl-list-moreutils'
+ 'perl-file-sharedir' 'perl-file-sharedir-install')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/D/DR/DROLSKY/DateTime-Locale-$pkgver.tar.gz)
-md5sums=('8ba6a4b70f8fa7d987529c2e2c708862')
+source=(https://www.cpan.org/authors/id/D/DR/DROLSKY/DateTime-Locale-$pkgver.tar.gz)
+sha256sums=('998f034234441932c82a4598fa49a14f346d6e981d1d2d91a179913a9f81b898')
build() {
- cd $srcdir/DateTime-Locale-$pkgver
+ cd "$srcdir"/DateTime-Locale-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
- make install DESTDIR=$pkgdir
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+}
+
+package() {
+ cd "$srcdir"/DateTime-Locale-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-datetime-timezone/PKGBUILD b/abs/core/perl_modules/perl-datetime-timezone/PKGBUILD
index 7fe325f..e9fd111 100644
--- a/abs/core/perl_modules/perl-datetime-timezone/PKGBUILD
+++ b/abs/core/perl_modules/perl-datetime-timezone/PKGBUILD
@@ -1,28 +1,29 @@
-# $Id: PKGBUILD 73843 2012-07-16 05:40:15Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-datetime-timezone
-pkgver=1.46
+pkgver=2.19
pkgrel=1
pkgdesc="Time zone object base class and factory "
arch=(any)
url="http://search.cpan.org/dist/DateTime-TimeZone"
license=('GPL' 'PerlArtistic')
-depends=('perl-class-singleton>=1.03' 'perl-params-validate>=0.72' 'perl-class-load')
+depends=('perl-class-singleton>=1.03' 'perl-params-validate>=0.72' 'perl-class-load'
+ 'perl-list-allutils')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/D/DR/DROLSKY/DateTime-TimeZone-$pkgver.tar.gz)
-md5sums=('e83f412286d7787e3dfd5427a1943569')
+source=(https://www.cpan.org/CPAN/authors/id/D/DR/DROLSKY/DateTime-TimeZone-$pkgver.tar.gz)
+sha256sums=('b9192efe202d71b4ff7840718807a244bfca3992afd7e7ca78da20849f5ea4f8')
build() {
- cd $srcdir/DateTime-TimeZone-$pkgver
+ cd "$srcdir"/DateTime-TimeZone-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
}
package() {
- cd $srcdir/DateTime-TimeZone-$pkgver
- make install DESTDIR=$pkgdir
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+ cd "$srcdir"/DateTime-TimeZone-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-datetime/PKGBUILD b/abs/core/perl_modules/perl-datetime/PKGBUILD
index 839ff1c..e8d4895 100644
--- a/abs/core/perl_modules/perl-datetime/PKGBUILD
+++ b/abs/core/perl_modules/perl-datetime/PKGBUILD
@@ -1,37 +1,40 @@
-# $Id: PKGBUILD 71765 2012-06-02 10:29:58Z bluewind $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-datetime
-pkgver=0.72
-pkgrel=2
+pkgver=1.48
+pkgrel=1
pkgdesc="A complete, easy to use date and time object"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://search.cpan.org/dist/DateTime"
license=('GPL' 'PerlArtistic')
depends=('perl-datetime-timezone>=0.59' 'perl-datetime-locale>=0.41'
- 'perl-params-validate>=0.76' 'perl-math-round')
+ 'perl-params-validate>=0.76' 'perl-math-round'
+ 'perl-namespace-autoclean' 'perl-specio' 'perl-eval-closure'
+ 'perl-params-validationcompiler')
+makedepends=('perl-module-build')
LC_NUMERIC=C
provides=("perl-datetime=`printf %.4f $pkgver`")
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/D/DR/DROLSKY/DateTime-$pkgver.tar.gz)
-md5sums=('f50b328919fe8bf2d2b16ca0df35c3f3')
+source=(https://www.cpan.org/CPAN/authors/id/D/DR/DROLSKY/DateTime-$pkgver.tar.gz)
+sha256sums=('5005446eabed6ac96c93e40d284987f0fd1bbfd41a1a7dd5e2abe646dfd68c3e')
build() {
- cd $srcdir/DateTime-$pkgver
- perl Build.PL installdirs=vendor destdir="$pkgdir/"
- ./Build
+ cd "$srcdir"/DateTime-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-
-check() {
- cd $srcdir/DateTime-$pkgver
-# ./Build test
- true
-}
-
package() {
- cd $srcdir/DateTime-$pkgver
- ./Build install
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+ cd "$srcdir"/DateTime-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
diff --git a/abs/core/perl_modules/perl-dbd-mysql/PKGBUILD b/abs/core/perl_modules/perl-dbd-mysql/PKGBUILD
index 5794b3e..e0f591a 100644
--- a/abs/core/perl_modules/perl-dbd-mysql/PKGBUILD
+++ b/abs/core/perl_modules/perl-dbd-mysql/PKGBUILD
@@ -1,30 +1,31 @@
-# $Id: PKGBUILD 161944 2012-06-16 19:18:00Z eric $
-# Maintainer: kevin <kevin@archlinux.org>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
+# Contributor: kevin <kevin@archlinux.org>
# Contributor: Eric Johnson <eric@coding-zone.com>
pkgname=perl-dbd-mysql
-_realname=DBD-mysql
-pkgver=4.022
+pkgver=4.046
pkgrel=1
-pkgdesc="Perl/CPAN DBD::mysql module for interacting with MySQL via DBD"
-arch=('i686' 'x86_64')
+pkgdesc='Perl/CPAN DBD::mysql module for interacting with MySQL via DBD'
+arch=('x86_64')
license=('GPL' 'PerlArtistic')
-url="http://search.cpan.org/dist/${_realname}/"
-depends=('libmysqlclient' 'perl-dbi')
-makedepends=('mysql')
+url="http://search.cpan.org/dist/DBD-mysql/"
+depends=('libmariadbclient' 'perl-dbi')
+makedepends=('perl-devel-checklib')
+checkdepends=('mariadb' 'perl-test-deep')
options=('!emptydirs')
-source=(http://search.cpan.org/CPAN/authors/id/C/CA/CAPTTOFU/${_realname}-${pkgver}.tar.gz)
+source=(http://search.cpan.org/CPAN/authors/id/C/CA/CAPTTOFU/DBD-mysql-${pkgver}.tar.gz)
+sha512sums=('57b3243a724ac21a11b6eea10aa1cfc821f295cb5bf44f9eaabeb979d3f8e1f7f5e00d40b144a16688d0a358c82c2bb00f630e925e176f29a9ca84b8ee7fb9cc')
build() {
- cd "${srcdir}/${_realname}-${pkgver}"
-
- # install module in vendor directories.
+ cd DBD-mysql-$pkgver
perl Makefile.PL INSTALLDIRS=vendor --testsocket=/tmp/socket.mysql
make
}
-_check() {
- cd "${srcdir}/${_realname}-${pkgver}"
+check() {
+ cd DBD-mysql-$pkgver
mkdir -p /tmp/mysql_test
mysql_install_db \
--basedir=/usr \
@@ -34,12 +35,18 @@ _check() {
--datadir=/tmp/mysql_test &
sleep 10
DAEMON_PORT=$!
- make test || true
+ make test
kill -9 $DAEMON_PORT
}
package() {
- cd "${srcdir}/${_realname}-${pkgver}"
- make install DESTDIR="${pkgdir}"
+ cd DBD-mysql-$pkgver
+ make install DESTDIR="$pkgdir"
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
-md5sums=('20fb571245e3b9ac275b8329025c4bf6')
diff --git a/abs/core/perl_modules/perl-dbd-sqlite/PKGBUILD b/abs/core/perl_modules/perl-dbd-sqlite/PKGBUILD
new file mode 100644
index 0000000..b8137e2
--- /dev/null
+++ b/abs/core/perl_modules/perl-dbd-sqlite/PKGBUILD
@@ -0,0 +1,37 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgname=perl-dbd-sqlite
+pkgver=1.58
+pkgrel=1
+pkgdesc="Self-contained RDBMS in a DBI driver"
+arch=('x86_64')
+url="http://search.cpan.org/dist/DBD-SQLite"
+license=('GPL' 'PerlArtistic')
+depends=('perl-dbi' 'sqlite')
+source=(http://www.cpan.org/authors/id/I/IS/ISHIGAKI/DBD-SQLite-${pkgver}.tar.gz)
+sha512sums=('080d1e304fb0d43926ce0345df3367132c317ba113bdc11952c0a159bc68d988a024828a28e66be267f82e07731dee225723854fb80914ba7c476b27dbdeb212')
+
+build() {
+ cd DBD-SQLite-${pkgver}
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd DBD-SQLite-${pkgver}
+ make test
+}
+
+package() {
+ cd DBD-SQLite-${pkgver}
+ make install DESTDIR="${pkgdir}"
+
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
+}
diff --git a/abs/core/perl_modules/perl-dbi-shell/PKGBUILD b/abs/core/perl_modules/perl-dbi-shell/PKGBUILD
new file mode 100644
index 0000000..c14695a
--- /dev/null
+++ b/abs/core/perl_modules/perl-dbi-shell/PKGBUILD
@@ -0,0 +1,28 @@
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Maintainer: Charles Mauch <cmauch@gmail.com>
+
+pkgname=perl-dbi-shell
+pkgver=11.95
+pkgrel=6
+pkgdesc="Perl/CPAN Module DBI::Shell"
+arch=("any")
+url="http://search.cpan.org/dist/DBI-Shell"
+license=("GPL" "PerlArtistic")
+makedepends=("perl-text-reform" "perl-io-tee")
+depends=("perl-text-reform" "perl-io-tee")
+source=("https://www.cpan.org/authors/id/T/TL/TLOWERY/DBI-Shell-$pkgver.tar.gz")
+sha256sums=('44aa76c90a425d4aff9e2580a6baf334a5102fb794fbdb26e301294c190cbed9')
+
+build() {
+ cd "$srcdir"/DBI-Shell-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+package() {
+ cd "$srcdir"/DBI-Shell-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
+}
diff --git a/abs/core/perl_modules/perl-dbi/PKGBUILD b/abs/core/perl_modules/perl-dbi/PKGBUILD
index 602acd0..ef4b9d0 100644
--- a/abs/core/perl_modules/perl-dbi/PKGBUILD
+++ b/abs/core/perl_modules/perl-dbi/PKGBUILD
@@ -1,36 +1,38 @@
-# $Id: PKGBUILD 163571 2012-07-16 03:09:15Z eric $
-# Maintainer: kevin <kevin@archlinux.org>
-# Contributor: Matt Thompson <mattt@defunct.ca>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
pkgname=perl-dbi
-_realname=DBI
-pkgver=1.622
+pkgver=1.641
pkgrel=1
pkgdesc="Database independent interface for Perl"
-arch=('i686' 'x86_64')
+arch=('x86_64')
+url="http://search.cpan.org/dist/DBI/"
license=('GPL' 'PerlArtistic')
-url="http://search.cpan.org/dist/${_realname}/"
depends=('perl')
+checkdepends=('perl-test-pod' 'perl-test-pod-coverage')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/T/TI/TIMB/${_realname}-${pkgver}.tar.gz)
-md5sums=('9836bcf1b9acc842089aa10b16736909')
+source=(http://www.cpan.org/authors/id/T/TI/TIMB/DBI-$pkgver.tar.gz)
+sha512sums=('093eb28526e8290c0599437cd624b3e670cfff0ec149c1e8ad942f9f7facdafd2a8225bbf4efdb0d40ecf5a6088093ff9faec826cd4ec88bd0abd6125812137a')
build() {
- cd "${srcdir}/${_realname}-${pkgver}"
-
- # install module in vendor directories.
+ cd DBI-$pkgver
perl Makefile.PL INSTALLDIRS=vendor
make
}
check() {
- cd "${srcdir}/${_realname}-${pkgver}"
+ cd DBI-$pkgver
make test
}
package() {
- cd "${srcdir}/${_realname}-${pkgver}"
- make install DESTDIR="${pkgdir}"
+ cd DBI-$pkgver
+ make DESTDIR="$pkgdir" install
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
-
-# vim: ts=2 sw=2 et ft=sh
diff --git a/abs/core/perl_modules/perl-devel-checklib/PKGBUILD b/abs/core/perl_modules/perl-devel-checklib/PKGBUILD
new file mode 100644
index 0000000..cfd2a70
--- /dev/null
+++ b/abs/core/perl_modules/perl-devel-checklib/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: pzl <alsoelp _at_ gmail>
+
+pkgname=perl-devel-checklib
+pkgver=1.11
+pkgrel=3
+pkgdesc="Module to check if other perl modules are installed"
+arch=('any')
+url='http://search.cpan.org/dist/Devel-CheckLib/'
+license=('PerlArtistic' 'GPL')
+depends=('perl')
+checkdepends=('perl-io-captureoutput')
+options=('!emptydirs')
+source=("http://search.cpan.org/CPAN/authors/id/M/MA/MATTN/Devel-CheckLib-${pkgver}.tar.gz")
+sha512sums=('21a64cb2ec4f3769d604eba151074daa841d40d2073a93ec186e82d8496f5ca05728c5352a31c4f07765956b85cb3144225edb51b84245b0582267af55ef2e2f')
+
+build() {
+ cd Devel-CheckLib-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd Devel-CheckLib-$pkgver
+ make test
+}
+
+package() {
+ cd Devel-CheckLib-$pkgver
+ make install DESTDIR="$pkgdir"
+}
diff --git a/abs/core/perl_modules/perl-devel-globaldestruction/PKGBUILD b/abs/core/perl_modules/perl-devel-globaldestruction/PKGBUILD
new file mode 100644
index 0000000..17f43b5
--- /dev/null
+++ b/abs/core/perl_modules/perl-devel-globaldestruction/PKGBUILD
@@ -0,0 +1,30 @@
+# $Id$
+# Maintainer:
+
+pkgname=perl-devel-globaldestruction
+pkgver=0.14
+pkgrel=3
+pkgdesc="Expose the flag which marks global"
+arch=('any')
+url="http://search.cpan.org/dist/Devel-GlobalDestruction"
+license=('PerlArtistic' 'GPL')
+depends=('perl' 'perl-sub-exporter' 'perl-sub-exporter-progressive')
+options=('!emptydirs')
+source=(http://search.cpan.org/CPAN/authors/id/H/HA/HAARG/Devel-GlobalDestruction-$pkgver.tar.gz)
+md5sums=('24221ba322cf2dc46a1fc99b53e2380b')
+
+build() {
+ cd Devel-GlobalDestruction-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd Devel-GlobalDestruction-$pkgver
+ make test
+}
+
+package() {
+ cd Devel-GlobalDestruction-$pkgver
+ make DESTDIR="$pkgdir" install
+}
diff --git a/abs/core/perl_modules/perl-devel-stacktrace/PKGBUILD b/abs/core/perl_modules/perl-devel-stacktrace/PKGBUILD
new file mode 100644
index 0000000..01991ed
--- /dev/null
+++ b/abs/core/perl_modules/perl-devel-stacktrace/PKGBUILD
@@ -0,0 +1,40 @@
+# $Id$
+# Maintainer: Jaroslav Lichtblau <svetlemodry@archlinux.org>
+# Contributor: Moritz Bunkus <moritz@bunkus.org>
+
+pkgname=perl-devel-stacktrace
+pkgver=2.03
+pkgrel=1
+pkgdesc='An object representing a stack trace'
+arch=('any')
+url="https://metacpan.org/release/Devel-StackTrace"
+license=('PerlArtistic' 'GPL')
+depends=('perl>=5.6')
+options=('!emptydirs')
+source=(http://search.cpan.org/CPAN/authors/id/D/DR/DROLSKY/Devel-StackTrace-$pkgver.tar.gz)
+sha256sums=('7618cd4ebe24e254c17085f4b418784ab503cb4cb3baf8f48a7be894e59ba848')
+
+build() {
+ cd "${srcdir}"/Devel-StackTrace-$pkgver
+
+ export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL=--skipdeps
+ unset PERL5LIB PERL_MM_OPT
+ perl Makefile.PL
+ make
+}
+
+check() {
+ cd "${srcdir}"/Devel-StackTrace-$pkgver
+
+ export PERL_MM_USE_DEFAULT=1
+ unset PERL5LIB
+ make test
+}
+
+package() {
+ cd "${srcdir}"/Devel-StackTrace-$pkgver
+
+ make install INSTALLDIRS=vendor DESTDIR="${pkgdir}"
+
+ find "${pkgdir}" -name .packlist -o -name perllocal.pod -delete
+}
diff --git a/abs/core/perl_modules/perl-device-serialport/PKGBUILD b/abs/core/perl_modules/perl-device-serialport/PKGBUILD
index 7f0ba54..c714f61 100644
--- a/abs/core/perl_modules/perl-device-serialport/PKGBUILD
+++ b/abs/core/perl_modules/perl-device-serialport/PKGBUILD
@@ -1,25 +1,36 @@
-# $Id: PKGBUILD 71775 2012-06-02 10:30:18Z bluewind $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Ross melin <rdmelin@gmail.com>
pkgname=perl-device-serialport
pkgver=1.04
-pkgrel=4
+pkgrel=11
pkgdesc="POSIX clone of Win32::SerialPort"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://search.cpan.org/dist/Device-SerialPort"
license=('GPL' 'PerlArtistic')
depends=('perl')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/C/CO/COOK/Device-SerialPort-$pkgver.tar.gz)
-md5sums=('82c698151f934eb28c65d1838cee7d9e')
+source=(https://www.cpan.org/authors/id/C/CO/COOK/Device-SerialPort-$pkgver.tar.gz)
+sha256sums=('d392567cb39b4ea606c0e0acafd8ed72320311b995336ece5fcefcf9b150e9d7')
build() {
- cd $srcdir/Device-SerialPort-$pkgver
+ cd "$srcdir"/Device-SerialPort-$pkgver
eval `perl -V:archname`
PERL_MM_USE_DEFAULT=1 /usr/bin/perl Makefile.PL INSTALLDIRS=vendor
make
- make DESTDIR=$pkgdir install
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+}
+
+package() {
+ cd "$srcdir"/Device-SerialPort-$pkgver
+ make DESTDIR="$pkgdir" install
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
diff --git a/abs/core/perl_modules/perl-digest-sha1/PKGBUILD b/abs/core/perl_modules/perl-digest-sha1/PKGBUILD
index d65b0d1..9bab443 100644
--- a/abs/core/perl_modules/perl-digest-sha1/PKGBUILD
+++ b/abs/core/perl_modules/perl-digest-sha1/PKGBUILD
@@ -1,38 +1,45 @@
# $Id$
-# Maintainer: kevin <kevin@archlinux.org>
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: kevin <kevin@archlinux.org>
# Contributor: Manolis Tzanidakis
pkgname=perl-digest-sha1
_realname=Digest-SHA1
pkgver=2.13
-pkgrel=2
+pkgrel=10
pkgdesc="Perl interface to the SHA-1 Algorithm"
-arch=(i686 x86_64)
+arch=(x86_64)
license=('PerlArtistic')
url="http://search.cpan.org/dist/${_realname}/"
-depends=('perl>=5.10.0')
-options=(!emptydirs)
+depends=('perl')
+options=('!emptydirs')
source=(http://www.cpan.org/authors/id/G/GA/GAAS/${_realname}-${pkgver}.tar.gz)
replaces=('digest-sha1')
provides=('digest-sha1')
md5sums=('bd22388f268434f2b24f64e28bf1aa35')
build() {
- cd ${srcdir}/${_realname}-${pkgver}
+ cd "${srcdir}/${_realname}-${pkgver}"
# install module in vendor directories.
perl Makefile.PL INSTALLDIRS=vendor
make
+}
+
+check() {
+ cd "${srcdir}/${_realname}-${pkgver}"
make test
}
package() {
- cd ${srcdir}/${_realname}-${pkgver}
-
- make install DESTDIR=${pkgdir}
-
- # remove perllocal.pod and .packlist
- find ${pkgdir} -name perllocal.pod -delete
- find ${pkgdir} -name .packlist -delete
+ cd "${srcdir}/${_realname}-${pkgver}"
+ make install DESTDIR="${pkgdir}"
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
# vim: ts=2 sw=2 et ft=sh
diff --git a/abs/core/perl_modules/perl-dist-checkconflicts/PKGBUILD b/abs/core/perl_modules/perl-dist-checkconflicts/PKGBUILD
index fc8bd28..d5207cf 100644
--- a/abs/core/perl_modules/perl-dist-checkconflicts/PKGBUILD
+++ b/abs/core/perl_modules/perl-dist-checkconflicts/PKGBUILD
@@ -1,30 +1,29 @@
-# Maintainer: Justin Davis <jrcd83@gmail.com>
-# $Id: PKGBUILD 57550 2011-10-30 17:28:15Z juster $
+# $Id$
+# Maintainer: Jonathan Steel <jsteel@aur.archlinux.org>
+# Contributor: Justin Davis <jrcd83@gmail.com>
pkgname=perl-dist-checkconflicts
-pkgver=0.02
-pkgrel=1
-pkgdesc="declare version conflicts for your dist"
-arch=(any)
-license=(PerlArtistic GPL)
-options=(!emptydirs)
-depends=('perl-list-moreutils>=0.12' 'perl-sub-exporter')
-makedepends=('perl-extutils-makemaker>=6.31')
-checkdepends=('perl-test-fatal' 'perl-test-simple')
-url=https://metacpan.org/release/Dist-CheckConflicts
-source=("http://search.cpan.org/CPAN/authors/id/D/DO/DOY/Dist-CheckConflicts-${pkgver}.tar.gz")
-md5sums=(64b8d342ba11336b2969c274a60bbc5f)
-sha512sums=(e3a342141b13e3604f226d53706fa50b6dc9f96c39ad9c83b074289aff852cbbab97bdf7d389d426116f609589e3d0282b033e79230a5a4ed8782e2b0e58426d)
-_distdir="${srcdir}/Dist-CheckConflicts-${pkgver}"
+pkgver=0.11
+pkgrel=3
+pkgdesc="Declare version conflicts for your dist"
+arch=('any')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl-list-moreutils' 'perl-exporter')
+makedepends=('perl-extutils-makemaker')
+checkdepends=('perl-test-fatal' 'perl-module-runtime')
+url="https://metacpan.org/release/Dist-CheckConflicts"
+source=(http://search.cpan.org/CPAN/authors/id/D/DO/DOY/Dist-CheckConflicts-$pkgver.tar.gz)
+md5sums=('c8725a92b9169708b0f63036812070f2')
build() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor" \
+ PERL_MB_OPT="--installdirs vendor" \
MODULEBUILDRC=/dev/null
+ cd Dist-CheckConflicts-$pkgver
- cd "$_distdir"
/usr/bin/perl Makefile.PL
make
)
@@ -32,19 +31,14 @@ build() {
check() {
( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- cd "$_distdir"
+ cd Dist-CheckConflicts-$pkgver
+
make test
)
}
package() {
- cd "$_distdir"
- make DESTDIR="$pkgdir" install
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
-}
+ cd Dist-CheckConflicts-$pkgver
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
+ make DESTDIR="$pkgdir"/ install
+}
diff --git a/abs/core/perl_modules/perl-email-date-format/PKGBUILD b/abs/core/perl_modules/perl-email-date-format/PKGBUILD
index 6625738..a7151d5 100644
--- a/abs/core/perl_modules/perl-email-date-format/PKGBUILD
+++ b/abs/core/perl_modules/perl-email-date-format/PKGBUILD
@@ -1,26 +1,32 @@
-# $Id: PKGBUILD 150522 2012-02-18 12:04:18Z allan $
-# Maintainer:
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
# Contributor: Sergej Pupykin <pupykin.s+aur@gmail.com>
pkgname=perl-email-date-format
-pkgver=1.002
+pkgver=1.005
pkgrel=3
pkgdesc="produce RFC 2822 date strings"
arch=('any')
url="http://search.cpan.org/dist/Email-Date-Format"
license=('GPL' 'PerlArtistic')
depends=('perl')
+checkdepends=('perl-test-pod' 'perl-capture-tiny')
options=('!emptydirs')
source=("http://www.cpan.org/authors/id/R/RJ/RJBS/Email-Date-Format-$pkgver.tar.gz")
-md5sums=('7ae25275da6ab272aa8b40141eac9f82')
+md5sums=('030dcee3bc1a44674900b0132925bd03')
build() {
- cd "${srcdir}"/Email-Date-Format-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ cd Email-Date-Format-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
make
}
+check() {
+ cd Email-Date-Format-$pkgver
+ make test
+}
+
package() {
- cd "${srcdir}"/Email-Date-Format-$pkgver
+ cd Email-Date-Format-$pkgver
make DESTDIR="${pkgdir}" install
}
diff --git a/abs/core/perl_modules/perl-encode-locale/PKGBUILD b/abs/core/perl_modules/perl-encode-locale/PKGBUILD
index 05b129b..20d151e 100644
--- a/abs/core/perl_modules/perl-encode-locale/PKGBUILD
+++ b/abs/core/perl_modules/perl-encode-locale/PKGBUILD
@@ -1,52 +1,30 @@
-# Maintainer : Justin "juster" Davis <jrcd83@gmail.com>
-# Generator : pbjam 0.01
-# $Id: PKGBUILD 150524 2012-02-18 12:06:36Z allan $
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
pkgname=perl-encode-locale
-pkgver=1.03
-pkgrel=1
+pkgver=1.05
+pkgrel=3
pkgdesc="Determine the locale encoding"
-arch=(any)
-license=(PerlArtistic GPL)
+arch=('any')
+url="http://search.cpan.org/dist/Encode-Locale"
+license=('PerlArtistic' 'GPL')
+depends=('perl')
options=('!emptydirs')
-depends=('perl>=5.008')
-makedepends=()
-checkdepends=()
-conflicts=('perl-libwww<6')
-url=http://search.cpan.org/dist/Encode-Locale
-source=(http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/Encode-Locale-1.02.tar.gz)
-md5sums=('96a950ee9b57e47e2b990b4c5dd7bf6e')
-sha512sums=('7263de267486c835f37dd51da573c5002921a8365124e03eeed1e7a97bac368fff42351d6d31e05d3e596f3486ca5506d985f3992652908948006701d21663cf')
-_distdir="${srcdir}/Encode-Locale-1.02"
+source=(http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/Encode-Locale-$pkgver.tar.gz)
+sha1sums=('1e1632e869cb76e3fdbda0a83a192190ed178d60')
build() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
- MODULEBUILDRC=/dev/null
-
- cd "$_distdir"
- /usr/bin/perl Makefile.PL
- make
- )
+ cd Encode-Locale-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
}
check() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- cd "$_distdir"
- make test
- )
+ cd Encode-Locale-$pkgver
+ make test
}
package() {
- cd "$_distdir"
- make DESTDIR="$pkgdir" install
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+ cd Encode-Locale-$pkgver
+ make DESTDIR="$pkgdir" install
}
-
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-error/PKGBUILD b/abs/core/perl_modules/perl-error/PKGBUILD
index a8fa056..2518c31 100644
--- a/abs/core/perl_modules/perl-error/PKGBUILD
+++ b/abs/core/perl_modules/perl-error/PKGBUILD
@@ -1,34 +1,32 @@
-# $Id: PKGBUILD 163573 2012-07-16 03:20:23Z eric $
-# Maintainer: Dale Blount <dale@archlinux.org>
-# Contributor: Dale Blount <dale@archlinux.org>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
pkgname=perl-error
-_realname=Error
-pkgver=0.17018
+pkgver=0.17026
pkgrel=1
pkgdesc="Perl/CPAN Error module - Error/exception handling in an OO-ish way"
-url="http://search.cpan.org/dist/${_realname}/"
+url="http://search.cpan.org/dist/Error/"
arch=('any')
license=('PerlArtistic' 'GPL')
-depends=('perl>=5.10.0')
+depends=('perl')
+checkdepends=('perl-test-pod' 'perl-test-pod-coverage')
options=('!emptydirs')
-source=(http://search.cpan.org/CPAN/authors/id/S/SH/SHLOMIF/${_realname}-${pkgver}.tar.gz)
+source=(http://search.cpan.org/CPAN/authors/id/S/SH/SHLOMIF/Error-${pkgver}.tar.gz)
+sha512sums=('58d43a133fb74d94d726ae923cdfb7df8e1faf156247bb07cb7308218e21a627485f031d029b3ee3179d92e756dca7f1e6dd1e2f4378f420c72b171aefe2f410')
build() {
- cd "${srcdir}/${_realname}-${pkgver}"
- # install module in vendor directories.
+ cd Error-${pkgver}
perl Makefile.PL INSTALLDIRS=vendor
make
}
check() {
- cd "${srcdir}/${_realname}-${pkgver}"
+ cd Error-${pkgver}
make test
}
package() {
- cd "${srcdir}/${_realname}-${pkgver}"
- make install DESTDIR="${pkgdir}"
+ cd Error-${pkgver}
+ make DESTDIR="${pkgdir}" install
}
-md5sums=('1137a7bbb94c9508a2268c467583207f')
diff --git a/abs/core/perl_modules/perl-error/perl-error-0.17016-2-x86_64-build.log.1 b/abs/core/perl_modules/perl-error/perl-error-0.17016-2-x86_64-build.log.1
deleted file mode 100644
index 92c6633..0000000
--- a/abs/core/perl_modules/perl-error/perl-error-0.17016-2-x86_64-build.log.1
+++ /dev/null
@@ -1,72 +0,0 @@
-Checking if your kit is complete...
-Looks good
-Writing Makefile for Error
-Writing MYMETA.yml and MYMETA.json
-cp lib/Error.pm blib/lib/Error.pm
-cp lib/Error/Simple.pm blib/lib/Error/Simple.pm
-Manifying blib/man3/Error.3pm
-Manifying blib/man3/Error::Simple.3pm
-PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
-t/01throw.t .......................... ok
-t/02order.t .......................... ok
-t/03throw-non-Error.t ................ ok
-t/04use-base-Error-Simple.t .......... ok
-t/05text-errors-with-file-handles.t .. ok
-t/06customize-text-throw.t ........... ok
-t/07try-in-obj-destructor.t .......... ok
-
-# Failed test 'warn \n-terminated STDERR'
-# at t/08warndie.t line 77.
-# 'A warning at t/08warndie.t line 73.:
-# main::__ANON__() called at t/08warndie.t line 37
-# main::run_kid('CODE(0x1c905f0)') called at t/08warndie.t line 74
-# '
-# doesn't match '(?^:^A warning at (?^:t\/08warndie\.t) line 73:
-# \tmain::__ANON__\(\) called at (?^:t\/08warndie\.t) line 37
-# \tmain::run_kid\('CODE\(0x[0-9a-f]+\)'\) called at (?^:t\/08warndie\.t) line 74
-# $)'
-
-# Failed test 'warn unterminated STDERR'
-# at t/08warndie.t line 89.
-# 'A warning at t/08warndie.t line 85.:
-# main::__ANON__() called at t/08warndie.t line 37
-# main::run_kid('CODE(0x1c908f0)') called at t/08warndie.t line 86
-# '
-# doesn't match '(?^:^A warning at (?^:t\/08warndie\.t) line 85:
-# \tmain::__ANON__\(\) called at (?^:t\/08warndie\.t) line 37
-# \tmain::run_kid\('CODE\(0x[0-9a-f]+\)'\) called at (?^:t\/08warndie\.t) line 86
-# $)'
-
-# Failed test 'Custom warn STDERR'
-# at t/08warndie.t line 192.
-# 'My custom warning here: A warning at t/08warndie.t line 188.:
-# main::__ANON__() called at t/08warndie.t line 37
-# main::run_kid('CODE(0x1c953e8)') called at t/08warndie.t line 189
-# '
-# doesn't match '(?^:^My custom warning here: A warning at (?^:t\/08warndie\.t) line 188:
-# \tmain::__ANON__\(\) called at (?^:t\/08warndie\.t) line 37
-# \tmain::run_kid\('CODE\(0x[0-9a-f]+\)'\) called at (?^:t\/08warndie\.t) line 189
-# $)'
-# Looks like you failed 3 tests of 21.
-t/08warndie.t ........................
-Dubious, test returned 3 (wstat 768, 0x300)
-Failed 3/21 subtests
-t/09dollar-at.t ...................... ok
-t/10throw-in-catch.t ................. ok
-t/11rethrow.t ........................ ok
-t/12wrong-error-var.t ................ ok
-t/13except-arg0.t .................... ok
-t/pod-coverage.t ..................... skipped: Test::Pod::Coverage 1.04 required for testing POD coverage
-t/pod.t .............................. ok
-
-Test Summary Report
--------------------
-t/08warndie.t (Wstat: 768 Tests: 21 Failed: 3)
- Failed tests: 4, 6, 18
- Non-zero exit status: 3
-Files=15, Tests=62, 0 wallclock secs ( 0.05 usr 0.02 sys + 0.23 cusr 0.04 csys = 0.34 CPU)
-Result: FAIL
-Failed 1/15 test programs. 3/62 subtests failed.
-make: *** [test_dynamic] Error 255
-==> ERROR:(B A failure occurred in build().(B
- Aborting...(B
diff --git a/abs/core/perl_modules/perl-eval-closure/PKGBUILD b/abs/core/perl_modules/perl-eval-closure/PKGBUILD
new file mode 100644
index 0000000..8db8ddb
--- /dev/null
+++ b/abs/core/perl_modules/perl-eval-closure/PKGBUILD
@@ -0,0 +1,38 @@
+# $Id$
+# Maintainer: Sergej Pupykin <arch+pub@sergej.pp.ru>
+# Montainer: 3ED <krzysztof1987 at gmail dot com>
+#
+
+pkgname=perl-eval-closure
+_lastauthor=D/DO/DOY
+_pkgname=Eval-Closure
+pkgver=0.14
+pkgrel=3
+pkgdesc="safely and cleanly create closures via string eval"
+arch=('any')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl-try-tiny' 'perl-sub-exporter')
+checkdepends=('perl-test-requires' 'perl-test-fatal' 'perl-test-output')
+url="https://metacpan.org/release/${_pkgname}"
+source=(https://cpan.metacpan.org/authors/id/${_lastauthor}/${_pkgname}-${pkgver}.tar.gz)
+md5sums=('ceeb1fc579ac9af981fa6b600538c285')
+
+build() {
+ export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL="--skipdeps" \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='"$pkgdir"'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '"$pkgdir"'" \
+ MODULEBUILDRC=/dev/null
+
+ cd "${srcdir}/${_pkgname}-${pkgver}"
+ perl Makefile.PL
+ make
+}
+check() {
+ cd "${srcdir}/${_pkgname}-${pkgver}"
+ make test
+}
+package() {
+ cd "${srcdir}/${_pkgname}-${pkgver}"
+ make install
+}
diff --git a/abs/core/perl_modules/perl-expect/PKGBUILD b/abs/core/perl_modules/perl-expect/PKGBUILD
index 06e8c89..ea14b88 100644
--- a/abs/core/perl_modules/perl-expect/PKGBUILD
+++ b/abs/core/perl_modules/perl-expect/PKGBUILD
@@ -1,22 +1,20 @@
-# CPAN Name : Expect
-# Contributor: Max Roder <maxroder@web.de>
-# Contributor: DarkHeart
-# Generator : CPANPLUS::Dist::Arch 1.19
+# Contributor: John D Jones III AKA jnbek <jnbek1972 -_AT_- g m a i l -_Dot_- com>
+# Generator : CPANPLUS::Dist::Arch 1.32
pkgname='perl-expect'
-pkgver='1.21'
-pkgrel='2'
-pkgdesc="Perl version of Don Libes' Tcl-Expect"
+pkgver='1.33'
+pkgrel='1'
+pkgdesc="automate interactions with command line programs that expose a text terminal interface."
arch=('any')
license=('PerlArtistic' 'GPL')
options=('!emptydirs')
-depends=('perl-io-tty>=1.03')
+depends=('perl-io-tty' 'perl>=5.6.0')
makedepends=()
-url='http://search.cpan.org/dist/Expect'
-source=('http://search.cpan.org/CPAN/authors/id/R/RG/RGIERSIG/Expect-1.21.tar.gz')
-md5sums=('a151b0dc4d1a35c73941c65b7c26da5b')
-sha512sums=('496716b9e6544e9d6809b7f704df8199291d18ec9ec9ebb4fd2b7b341aa10d9b03989335c1f22d1faddbff0974ceba5b2823685fa08ce6a75e2f3ccaeb944e74')
-_distdir="${srcdir}/Expect-1.21"
+url='https://metacpan.org/release/Expect'
+source=('http://search.cpan.org/CPAN/authors/id/J/JA/JACOBY/Expect-1.33.tar.gz')
+md5sums=('1fbb052de1383966a3be5f420a34e83c')
+sha512sums=('6351e681d813a98cf12a882cb135c6dc5f38beb72fb96efe13c690b26704acb9c5654b2f27dd833ad078de83cb4144fef4aea381a768c54f9817247210e6b5bf')
+_distdir="expect.pm-Expect-1.33"
build() {
( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
@@ -25,22 +23,23 @@ build() {
PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
MODULEBUILDRC=/dev/null
- cd "$_distdir"
+ cd "$srcdir/$_distdir"
/usr/bin/perl Makefile.PL
make
)
}
check() {
- cd "$_distdir"
+ cd "$srcdir/$_distdir"
( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
make test
)
}
package() {
- cd "$_distdir"
+ cd "$srcdir/$_distdir"
make install
+
find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
}
diff --git a/abs/core/perl_modules/perl-exporter-tiny/PKGBUILD b/abs/core/perl_modules/perl-exporter-tiny/PKGBUILD
new file mode 100644
index 0000000..a758e48
--- /dev/null
+++ b/abs/core/perl_modules/perl-exporter-tiny/PKGBUILD
@@ -0,0 +1,48 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgname=perl-exporter-tiny
+pkgver=1.000000
+pkgrel=2
+pkgdesc="an exporter with the features of Sub::Exporter but only core dependencies"
+arch=('any')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl')
+url='http://search.cpan.org/dist/Exporter-Tiny'
+source=("http://search.cpan.org/CPAN/authors/id/T/TO/TOBYINK/Exporter-Tiny-$pkgver.tar.gz")
+sha512sums=('02e72b3d1ec09fb5b7da5638893a12098d3300cfc36ff417c8d5cd8a4ef54891d675310612130e118e0e6a88d615cc18cdc888ab7333f2fc1007632c82d4c349')
+_distdir="Exporter-Tiny-$pkgver"
+
+build() {
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ MODULEBUILDRC=/dev/null
+
+ cd "$srcdir/$_distdir"
+ /usr/bin/perl Makefile.PL
+ make
+ )
+}
+
+check() {
+ cd "$srcdir/$_distdir"
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
+ make test
+ )
+}
+
+package() {
+ cd "$srcdir/$_distdir"
+ make install
+
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+}
+
+# Local Variables:
+# mode: shell-script
+# sh-basic-offset: 2
+# End:
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-fcgi/PKGBUILD b/abs/core/perl_modules/perl-fcgi/PKGBUILD
index a03c4ba..1eee9e4 100644
--- a/abs/core/perl_modules/perl-fcgi/PKGBUILD
+++ b/abs/core/perl_modules/perl-fcgi/PKGBUILD
@@ -1,18 +1,18 @@
-# $Id: PKGBUILD 160531 2012-06-02 10:27:39Z bluewind $
+# $Id$
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-fcgi
-pkgver=0.74
-pkgrel=3
+pkgver=0.78
+pkgrel=5
pkgdesc="Fast CGI"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://search.cpan.org/dist/FCGI"
license=('GPL' 'PerlArtistic')
depends=('perl')
options=('!emptydirs')
-source=("http://www.cpan.org/CPAN/authors/id/F/FL/FLORA/FCGI-${pkgver}.tar.gz")
-md5sums=('462a77a0072480fea791a4d3095eb486')
+source=("http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/FCGI-${pkgver}.tar.gz")
+md5sums=('916cd2887b27265cd8dcfd3280135270')
build() {
cd "${srcdir}/FCGI-${pkgver}"
@@ -28,4 +28,12 @@ check() {
package() {
cd "${srcdir}/FCGI-${pkgver}"
make install DESTDIR="${pkgdir}"
+
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
diff --git a/abs/core/perl_modules/perl-file-homedir/PKGBUILD b/abs/core/perl_modules/perl-file-homedir/PKGBUILD
index 89f9735..6eb202c 100644
--- a/abs/core/perl_modules/perl-file-homedir/PKGBUILD
+++ b/abs/core/perl_modules/perl-file-homedir/PKGBUILD
@@ -1,44 +1,43 @@
-# Generator : CPANPLUS::Dist::Arch 1.19
+# Maintainer: Brian Bidulock <bidulock@openss7.org>
+# Contributor: chimeracoder <dev@chimeracoder.net>
-pkgname='perl-file-homedir'
-pkgver='0.99'
-pkgrel='1'
+pkgname=perl-file-homedir
+_cpanname=File-HomeDir
+pkgver=1.002
+pkgrel=2
pkgdesc="Find your home and other directories on any platform"
arch=('any')
license=('PerlArtistic' 'GPL')
options=('!emptydirs')
-depends=('perl>=5.5.30' 'perl-file-which>=0.05')
-makedepends=()
-url='http://search.cpan.org/dist/File-HomeDir'
-source=('http://search.cpan.org/CPAN/authors/id/A/AD/ADAMK/File-HomeDir-0.99.tar.gz')
-md5sums=('cb058c68393631344c2b906026091016')
-sha512sums=('ac154f07105fc0267488f152fa9b853f252a8ae8f8dcb39d204ae305ff2ff24e3682ff41b0f5dbb81fe5f8e842e555de009e93704084611b8f8e0e2d4c12192b')
-_distdir="${srcdir}/File-HomeDir-0.99"
+depends=('perl-file-which')
+makedepends=('perl-module-install')
+url="https://metacpan.org/release/$_cpanname"
+source=("https://cpan.metacpan.org/authors/id/R/RE/REHSACK/$_cpanname-$pkgver.tar.gz")
+md5sums=('1e999956661fbee165b088eedb5fee3c')
build() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
- MODULEBUILDRC=/dev/null
+ cd $_cpanname-$pkgver
- cd "$_distdir"
- /usr/bin/perl Makefile.PL
- make
- )
-}
+ # why isn't makepkg doing this?
+ export -n PERL_MM_OPT PERL5LIB PERL_LOCAL_LIB_ROOT
+ # install module in vendor directories.
+ PERL_MM_USE_DEFAULT=1 \
+ PERL_AUTOINSTALL='--skipdeps' \
+ perl Makefile.PL INSTALLDIRS=vendor
+ make INSTALLDIRS=vendor
+}
check() {
- cd "$_distdir"
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- make test
- )
+ cd $_cpanname-$pkgver
+ make test
}
-
package() {
- cd "$_distdir"
- make install
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+ cd $_cpanname-$pkgver
+
+ make INSTALLDIRS=vendor DESTDIR="$pkgdir" install
+
+ # remove perllocal.pod and .packlist
+ find "$pkgdir" -name '*.pod' -o -name '.packlist' -delete
}
# Local Variables:
diff --git a/abs/core/perl_modules/perl-file-listing/PKGBUILD b/abs/core/perl_modules/perl-file-listing/PKGBUILD
index 8656fc1..3b8a04f 100644
--- a/abs/core/perl_modules/perl-file-listing/PKGBUILD
+++ b/abs/core/perl_modules/perl-file-listing/PKGBUILD
@@ -1,49 +1,30 @@
-# Maintainer: Justin "juster" Davis <jrcd83@gmail.com>
-# $Id: PKGBUILD 150631 2012-02-19 01:02:52Z allan $
+# $Id$
+# Maintainer:
pkgname=perl-file-listing
pkgver=6.04
-pkgrel=1
+pkgrel=4
pkgdesc="parse directory listing"
-arch=(any)
-license=(PerlArtistic GPL)
-options=(!emptydirs)
-depends=('perl>=5.8.8' 'perl-http-date>=6')
-conflicts=('perl-libwww<6')
+arch=('any')
url="http://search.cpan.org/dist/File-Listing"
+license=('PerlArtistic' 'GPL')
+depends=('perl' 'perl-http-date')
+options=('!emptydirs')
source=("http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/File-Listing-${pkgver}.tar.gz")
-md5sums=('83f636b477741f3a014585bb9cc079a6')
-sha512sums=('a84198bc82003daaf88ed23218e34a7a1552dcd2855a9563e9609ce5df167a8295043501534c31614854fc8dd9c04b4af27b4d7320112c613914f94c86c2eeb2')
-_distdir="${srcdir}/File-Listing-${pkgver}"
+sha1sums=('02a41fe1b91f3f198712965360192f31d6d8d74e')
build() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
- MODULEBUILDRC=/dev/null
-
- cd "$_distdir"
- /usr/bin/perl Makefile.PL
- make
- )
+ cd File-Listing-${pkgver}
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
}
check() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- cd "$_distdir"
- make test
- )
+ cd File-Listing-${pkgver}
+ make test
}
package() {
- cd "$_distdir"
- make DESTDIR="$pkgdir" install
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+ cd File-Listing-${pkgver}
+ make DESTDIR="$pkgdir" install
}
-
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-file-remove/PKGBUILD b/abs/core/perl_modules/perl-file-remove/PKGBUILD
new file mode 100644
index 0000000..c5669eb
--- /dev/null
+++ b/abs/core/perl_modules/perl-file-remove/PKGBUILD
@@ -0,0 +1,29 @@
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Maintainer: Charles Mauch <cmauch@gmail.com>
+# Contributor: Francois Charette <firmicus@gmx.net>
+
+pkgname=perl-file-remove
+pkgver=1.57
+pkgrel=2
+pkgdesc="Remove files and directories"
+depends=('perl')
+arch=('any')
+url="http://search.cpan.org/dist/File-Remove"
+license=('GPL' 'PerlArtistic')
+options=('!emptydirs')
+source=(http://search.cpan.org/CPAN/authors/id/S/SH/SHLOMIF/File-Remove-$pkgver.tar.gz)
+md5sums=('fe7da64339206d6568037209a577724f')
+
+build() {
+ cd "$srcdir"/File-Remove-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+package() {
+ cd "$srcdir"/File-Remove-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
+}
diff --git a/abs/core/perl_modules/perl-file-sharedir-install/PKGBUILD b/abs/core/perl_modules/perl-file-sharedir-install/PKGBUILD
new file mode 100644
index 0000000..afbe164
--- /dev/null
+++ b/abs/core/perl_modules/perl-file-sharedir-install/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id$
+# Maintainer: Sergej Pupykin <arch+pub@sergej.pp.ru>
+# Maintainer: Jason St. John <jstjohn .. purdue . edu>
+# Contributor: AUR Perl <aurperl@juster.info>
+
+pkgname=perl-file-sharedir-install
+pkgver=0.13
+pkgrel=1
+pkgdesc="File::ShareDir::Install - Install read-only data files from a distribution"
+arch=('any')
+url="http://search.cpan.org/dist/File-ShareDir-Install"
+license=('GPL' 'PerlArtistic')
+checkdepends=('perl-test-pod' 'perl-test-pod-coverage')
+options=('!emptydirs')
+source=("http://cpan.org/modules/by-module/File/File-ShareDir-Install-${pkgver}.tar.gz")
+sha256sums=('45befdf0d95cbefe7c25a1daf293d85f780d6d2576146546e6828aad26e580f9')
+
+build() {
+ cd "File-ShareDir-Install-${pkgver}"
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd "File-ShareDir-Install-${pkgver}"
+ make test
+}
+
+package() {
+ cd "File-ShareDir-Install-${pkgver}"
+ make install DESTDIR="${pkgdir}"
+}
diff --git a/abs/core/perl_modules/perl-file-sharedir/PKGBUILD b/abs/core/perl_modules/perl-file-sharedir/PKGBUILD
index f57b2ba..e3dd42b 100644
--- a/abs/core/perl_modules/perl-file-sharedir/PKGBUILD
+++ b/abs/core/perl_modules/perl-file-sharedir/PKGBUILD
@@ -1,19 +1,20 @@
-# $Id: PKGBUILD 149415 2012-02-07 16:24:01Z heftig $
+# $Id$
# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
# Contributor: Caleb Cushing <xenoterracide@gmail.com>
pkgname=perl-file-sharedir
_realname=File-ShareDir
-pkgver=1.03
-pkgrel=2
+pkgver=1.102
+pkgrel=3
pkgdesc="Locate per-dist and per-module shared files"
arch=(any)
license=(PerlArtistic GPL)
depends=(perl-class-inspector)
url="http://search.cpan.org/dist/File-ShareDir"
options=('!emptydirs')
-source=("http://search.cpan.org/CPAN/authors/id/A/AD/ADAMK/$_realname-$pkgver.tar.gz")
-md5sums=('333a0903db23b9097adfbeb37b99d561')
+_author=REHSACK
+source=("http://search.cpan.org/CPAN/authors/id/${_author::1}/${_author::2}/${_author}/$_realname-$pkgver.tar.gz")
+md5sums=('553157f0e81cd2dabfe140ceb06cd03f')
build() {
cd "$srcdir/$_realname-$pkgver"
diff --git a/abs/core/perl_modules/perl-file-slurp-tiny/PKGBUILD b/abs/core/perl_modules/perl-file-slurp-tiny/PKGBUILD
new file mode 100644
index 0000000..100ba08
--- /dev/null
+++ b/abs/core/perl_modules/perl-file-slurp-tiny/PKGBUILD
@@ -0,0 +1,34 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
+
+pkgname=perl-file-slurp-tiny
+pkgver=0.004
+pkgrel=3
+pkgdesc="A simple, sane and efficient file slurper"
+arch=('any')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl')
+makedepends=()
+url='http://search.cpan.org/dist/File-Slurp-Tiny'
+source=("http://search.cpan.org/CPAN/authors/id/L/LE/LEONT/File-Slurp-Tiny-$pkgver.tar.gz")
+md5sums=('7575b81543281ea57cdb7e5eb3f73264')
+
+build() {
+ cd "$srcdir/File-Slurp-Tiny-$pkgver"
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd "$srcdir/File-Slurp-Tiny-$pkgver"
+ PERL_MM_USE_DEFAULT=1
+ make test
+}
+
+package() {
+ cd "$srcdir/File-Slurp-Tiny-$pkgver"
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -o -name '*.pod' -delete
+}
diff --git a/abs/core/perl_modules/perl-file-slurp/PKGBUILD b/abs/core/perl_modules/perl-file-slurp/PKGBUILD
index 5e96fd8..1db97f1 100644
--- a/abs/core/perl_modules/perl-file-slurp/PKGBUILD
+++ b/abs/core/perl_modules/perl-file-slurp/PKGBUILD
@@ -1,23 +1,29 @@
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-file-slurp
-pkgver=9999.13
-pkgrel=1
+pkgver=9999.19
+pkgrel=4
pkgdesc="Read/write/append files quickly"
-arch=('i686' 'x86_64')
-url="http://search.cpan.org/~DROLSKY/File-Slurp"
+arch=('any')
+url="http://search.cpan.org/dist/File-Slurp"
license=('GPL' 'PerlArtistic')
-depends=('perl>=5.10.0')
+depends=('perl>=5.14.0')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/D/DR/DROLSKY/File-Slurp-$pkgver.tar.gz)
-md5sums=('ac3cd9d466b99d1534762ff3549aaa66')
+source=(https://www.cpan.org/authors/id/U/UR/URI/File-Slurp-$pkgver.tar.gz)
+sha256sums=('ce29ebe995097ebd6e9bc03284714cdfa0c46dc94f6b14a56980747ea3253643')
build() {
- cd $startdir/src/File-Slurp-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make install DESTDIR=$startdir/pkg || return 1
- find $startdir/pkg -name '.packlist' -delete
- find $startdir/pkg -name '*.pod' -delete
+ cd "$srcdir"/File-Slurp-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+package() {
+ cd "$srcdir"/File-Slurp-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-file-which/PKGBUILD b/abs/core/perl_modules/perl-file-which/PKGBUILD
index 6ba407e..6bfc8f1 100644
--- a/abs/core/perl_modules/perl-file-which/PKGBUILD
+++ b/abs/core/perl_modules/perl-file-which/PKGBUILD
@@ -1,17 +1,20 @@
-# $Id: PKGBUILD 149416 2012-02-07 16:24:46Z heftig $
+# $Id$
# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com
# Contributor: Charles Mauch <cmauch@gmail.com>
pkgname=perl-file-which
_realname=File-Which
-pkgver=1.09
-pkgrel=3
+pkgver=1.22
+pkgrel=1
pkgdesc="Portable implementation of which"
arch=(any)
url="http://search.cpan.org/dist/File-Which"
license=(GPL PerlArtistic)
-source=("http://www.cpan.org/authors/id/A/AD/ADAMK/${_realname}-${pkgver}.tar.gz")
-md5sums=('b9429edaad7f45caafa4d458afcfd8af')
+depends=(perl)
+options=('!emptydirs')
+_author=PLICEASE
+source=("https://www.cpan.org/authors/id/${_author:0:1}/${_author:0:2}/$_author/${_realname}-${pkgver}.tar.gz")
+md5sums=('face60fafd220dc83fa581ef6f96d480')
build() {
cd "$srcdir/${_realname}-${pkgver}"
diff --git a/abs/core/perl_modules/perl-html-form/PKGBUILD b/abs/core/perl_modules/perl-html-form/PKGBUILD
index f14fb80..a9c5afd 100644
--- a/abs/core/perl_modules/perl-html-form/PKGBUILD
+++ b/abs/core/perl_modules/perl-html-form/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 69178 2012-04-10 00:11:28Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer : Justin "juster" Davis <jrcd83@gmail.com>
pkgname=perl-html-form
pkgver=6.03
-pkgrel=1
+pkgrel=4
pkgdesc="Class that represents an HTML form element"
arch=(any)
license=(PerlArtistic GPL)
@@ -19,8 +19,8 @@ build() {
cd "${srcdir}/HTML-Form-${pkgver}"
PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='"$pkgdir"'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '"$pkgdir"'" \
MODULEBUILDRC=/dev/null perl Makefile.PL
make
}
diff --git a/abs/core/perl_modules/perl-html-parser/PKGBUILD b/abs/core/perl_modules/perl-html-parser/PKGBUILD
index b30443f..172a9fe 100644
--- a/abs/core/perl_modules/perl-html-parser/PKGBUILD
+++ b/abs/core/perl_modules/perl-html-parser/PKGBUILD
@@ -1,35 +1,41 @@
-# $Id: PKGBUILD 160535 2012-06-02 10:27:46Z bluewind $
-# Maintainer: kevin <kevin@archlinux.org>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: kevin <kevin@archlinux.org>
# Contributor: Manolis Tzanidakis
-# Contributor: Firmicus <francois.archlinux.org>
+# Contributor: Firmicus <francois.archlinux.org>
pkgname=perl-html-parser
-_realname=HTML-Parser
-pkgver=3.69
-pkgrel=2
+pkgver=3.72
+pkgrel=5
pkgdesc="Perl HTML parser class"
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('PerlArtistic')
-url="http://search.cpan.org/dist/${_realname}/"
-depends=('perl-html-tagset' 'perl>=5.12.1')
-options=(!emptydirs)
-source=(http://www.cpan.org/authors/id/G/GA/GAAS/${_realname}-${pkgver}.tar.gz)
-md5sums=('d22cc6468ce670a56034be907e4e7c54')
+url="http://search.cpan.org/dist/HTML-Parser/"
+depends=('perl-html-tagset')
+checkdepends=('perl-test-pod')
+options=('!emptydirs')
+source=(http://www.cpan.org/authors/id/G/GA/GAAS/HTML-Parser-${pkgver}.tar.gz)
+md5sums=('eb7505e5f626913350df9dd4a03d54a8')
build() {
- cd "${srcdir}/${_realname}-${pkgver}"
- # install module in vendor directories.
+ cd HTML-Parser-${pkgver}
perl Makefile.PL INSTALLDIRS=vendor
make
}
check() {
- cd "${srcdir}/${_realname}-${pkgver}"
+ cd HTML-Parser-${pkgver}
make test
}
package() {
- cd "${srcdir}/${_realname}-${pkgver}"
+ cd HTML-Parser-${pkgver}
make install DESTDIR="${pkgdir}"
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
-# vim: ts=2 sw=2 et ft=sh
diff --git a/abs/core/perl_modules/perl-html-tagset/PKGBUILD b/abs/core/perl_modules/perl-html-tagset/PKGBUILD
index 3c69273..7e9d678 100644
--- a/abs/core/perl_modules/perl-html-tagset/PKGBUILD
+++ b/abs/core/perl_modules/perl-html-tagset/PKGBUILD
@@ -1,11 +1,12 @@
-# $Id: PKGBUILD 150635 2012-02-19 01:16:52Z allan $
-# Maintainer: kevin <kevin@archlinux.org>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@gmail.com>
+# Conributor: kevin <kevin@archlinux.org>
# Contributor: Manolis Tzanidakis
pkgname=perl-html-tagset
_realname=HTML-Tagset
pkgver=3.20
-pkgrel=3
+pkgrel=6
pkgdesc="Data tables useful in parsing HTML"
arch=('any')
license=('PerlArtistic')
diff --git a/abs/core/perl_modules/perl-html-template/PKGBUILD b/abs/core/perl_modules/perl-html-template/PKGBUILD
index ee70580..ffe3cb0 100644
--- a/abs/core/perl_modules/perl-html-template/PKGBUILD
+++ b/abs/core/perl_modules/perl-html-template/PKGBUILD
@@ -1,30 +1,34 @@
-# $Id: PKGBUILD 82 2009-07-17 19:56:55Z aaron $
-# Maintainer: Firmicus <francois.archlinux.org>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Firmicus <francois.archlinux.org>
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Charles Mauch <cmauch@gmail.com>
pkgname=perl-html-template
-_cpanname=HTML-Template
-pkgver=2.91
-pkgrel=1
+pkgver=2.97
+pkgrel=2
pkgdesc="A simple HTML templating system"
arch=('any')
url="http://search.cpan.org/dist/HTML-Template"
license=("GPL" "PerlArtistic")
depends=('perl')
+checkdepends=('perl-cgi')
options=('!emptydirs')
-source=("http://www.cpan.org/authors/id/W/WO/WONKO/${_cpanname}-${pkgver}.tar.gz")
+source=("http://www.cpan.org/authors/id/S/SA/SAMTREGAR/HTML-Template-$pkgver.tar.gz")
+sha512sums=('e1cb68db24db1692c0fb3838739798e5716340e3e78260ee95614af5bf29ee100cc86bbd15a2dda3bb98c7f2ecdf0e3ff8ca7775171a44d9ed347d7f9c850783')
build() {
- cd "${srcdir}/${_cpanname}-${pkgver}"
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ cd HTML-Template-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
make
}
+check() {
+ cd HTML-Template-$pkgver
+ make test
+}
+
package() {
- cd "${srcdir}/${_cpanname}-${pkgver}"
- make install DESTDIR="${pkgdir}"
- find "${pkgdir}" -name '.packlist' -delete
- find "${pkgdir}" -name '*.pod' -delete
+ cd HTML-Template-$pkgver
+ make DESTDIR="$pkgdir" install
}
-md5sums=('bb43b4bef739a705ef859c4e21e6194c')
diff --git a/abs/core/perl_modules/perl-html-tree/PKGBUILD b/abs/core/perl_modules/perl-html-tree/PKGBUILD
index f946545..d056d31 100644
--- a/abs/core/perl_modules/perl-html-tree/PKGBUILD
+++ b/abs/core/perl_modules/perl-html-tree/PKGBUILD
@@ -1,23 +1,30 @@
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Allan McRae <mcrae_allan@hotmail.com>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-html-tree
-pkgver=3.23
-pkgrel=6
+pkgver=5.06
+pkgrel=2
pkgdesc="Make parse trees out of HTML source"
-arch=('i686' 'x86_64')
-url="http://search.cpan.org/~PETEK/HTML-Tree"
+arch=('any')
+url="http://search.cpan.org/dist/HTML-Tree"
license=('GPL' 'PerlArtistic')
depends=('perl>=5.10.0' 'perl-html-tagset>=3.02' 'perl-html-parser>=3.46')
+makedepends=('perl-test-fatal' 'perl-module-build')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/P/PE/PETEK/HTML-Tree-$pkgver.tar.gz)
-md5sums=('6352f50be402301f79b580dd235d7762')
+source=(http://search.cpan.org/CPAN/authors/id/K/KE/KENTNL/HTML-Tree-$pkgver.tar.gz)
+sha256sums=('9c36eb19cbdf9a5906c858948ca51c35bd7561f52cc18c43281acbe57327536e')
build() {
- cd $startdir/src/HTML-Tree-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make install DESTDIR=$startdir/pkg || return 1
- find $startdir/pkg -name '.packlist' -delete
- find $startdir/pkg -name '*.pod' -delete
+ cd "$srcdir"/HTML-Tree-$pkgver
+ perl Build.PL installdirs=vendor destdir="$pkgdir/"
+ perl Build
+}
+
+package() {
+ cd "$srcdir"/HTML-Tree-$pkgver
+ perl Build install
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-http-cache-transparent/PKGBUILD b/abs/core/perl_modules/perl-http-cache-transparent/PKGBUILD
index 23a7170..83695bf 100644
--- a/abs/core/perl_modules/perl-http-cache-transparent/PKGBUILD
+++ b/abs/core/perl_modules/perl-http-cache-transparent/PKGBUILD
@@ -1,23 +1,29 @@
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Allan McRae <mcrae_allan@hotmail.com>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-http-cache-transparent
-pkgver=1.0
+pkgver=1.4
pkgrel=2
pkgdesc="Cache the result of http-gets persistently"
-arch=('i686' 'x86_64')
-url="http://search.cpan.org/~MATTIASH/HTTP-Cache-Transparent"
+arch=('any')
+url="http://search.cpan.org/dist/HTTP-Cache-Transparent"
license=('GPL' 'PerlArtistic')
depends=('perl>=5.10.0' 'perl-libwww')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/M/MA/MATTIASH/HTTP-Cache-Transparent-$pkgver.tar.gz)
-md5sums=('e198345ce8eee2562c807e84d65e3b4f')
+source=(https://www.cpan.org/authors/id/M/MA/MATTIASH/HTTP-Cache-Transparent-$pkgver.tar.gz)
+sha256sums=('6622e1b5e5af952b1711aea247bdcb1b91c2aac0f11f32f819a2d07e11dd2845')
build() {
- cd $startdir/src/HTTP-Cache-Transparent-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make install DESTDIR=$startdir/pkg || return 1
- find $startdir/pkg -name '.packlist' -delete
- find $startdir/pkg -name '*.pod' -delete
+ cd "$srcdir"/HTTP-Cache-Transparent-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+package() {
+ cd "$srcdir"/HTTP-Cache-Transparent-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-http-cookies/PKGBUILD b/abs/core/perl_modules/perl-http-cookies/PKGBUILD
index 578f05f..56ff5b2 100644
--- a/abs/core/perl_modules/perl-http-cookies/PKGBUILD
+++ b/abs/core/perl_modules/perl-http-cookies/PKGBUILD
@@ -1,52 +1,30 @@
-# Maintainer : Justin "juster" Davis <jrcd83@gmail.com>
-# Generator : pbjam 0.01
-# $Id: PKGBUILD 150637 2012-02-19 01:19:55Z allan $
+# $Id$
+# Maintainer:
pkgname=perl-http-cookies
-pkgver=6.01
-pkgrel=1
+pkgver=6.04
+pkgrel=2
pkgdesc="HTTP cookie jars"
-arch=(any)
-license=(PerlArtistic GPL)
+arch=('any')
+url="http://search.cpan.org/dist/HTTP-Cookies"
+license=('PerlArtistic' 'GPL')
+depends=('perl' 'perl-http-date' 'perl-http-message')
options=('!emptydirs')
-depends=('perl>=5.8.8' 'perl-http-date>=6' 'perl-http-message')
-makedepends=()
-checkdepends=()
-conflicts=('perl-libwww<6')
-url=http://search.cpan.org/dist/HTTP-Cookies
-source=(http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/HTTP-Cookies-6.00.tar.gz)
-md5sums=('21bed72b30a46604c152b7e25cf1cb45')
-sha512sums=('6399383e61a2fbad1dd130e67f51be32c118ed104065c109cde1e1262aed986fe3790231937dbdee861755bb58d365bc6f1dec316750f02700fce5014d1a1753')
-_distdir="${srcdir}/HTTP-Cookies-6.00"
+source=(http://search.cpan.org/CPAN/authors/id/O/OA/OALDERS/HTTP-Cookies-$pkgver.tar.gz)
+sha512sums=('e8b24b96e6630f1238e828edfbf7074fb9186a391fd1d129fb65a82748a4cf7d71669fa658c31957560a6faac3e638c8dc7aa3182acaa6fd14f0d56f3968f5e4')
build() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
- MODULEBUILDRC=/dev/null
-
- cd "$_distdir"
- /usr/bin/perl Makefile.PL
- make
- )
+ cd HTTP-Cookies-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
}
check() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- cd "$_distdir"
- make test
- )
+ cd HTTP-Cookies-$pkgver
+ make test
}
package() {
- cd "$_distdir"
- make DESTDIR="$pkgdir" install
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+ cd HTTP-Cookies-$pkgver
+ make DESTDIR="$pkgdir" install
}
-
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-http-daemon/HTTP-Daemon-6.01-Add-IPv6-support.patch b/abs/core/perl_modules/perl-http-daemon/HTTP-Daemon-6.01-Add-IPv6-support.patch
new file mode 100644
index 0000000..dd9d5ee
--- /dev/null
+++ b/abs/core/perl_modules/perl-http-daemon/HTTP-Daemon-6.01-Add-IPv6-support.patch
@@ -0,0 +1,305 @@
+From 067faffb8e596a53c9ac2ed7e571472f7a163681 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
+Date: Mon, 16 Jan 2017 16:13:08 +0100
+Subject: [PATCH] Add IPv6 support
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This patch ports the code from IO::Socket::INET to IO::Socket::IP in
+order to support IPv6.
+
+CPAN RT #91699, #71395.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ Makefile.PL | 1 +
+ README | 24 ++++++++++++------------
+ lib/HTTP/Daemon.pm | 43 ++++++++++++++++++++++++++++---------------
+ t/chunked.t | 34 +++++++++++++++++++++++-----------
+ 4 files changed, 64 insertions(+), 38 deletions(-)
+
+diff --git a/Makefile.PL b/Makefile.PL
+index 09c7e86..85d5712 100644
+--- a/Makefile.PL
++++ b/Makefile.PL
+@@ -14,6 +14,7 @@ WriteMakefile(
+ PREREQ_PM => {
+ 'Sys::Hostname' => 0,
+ 'IO::Socket' => 0,
++ 'IO::Socket::IP' => 0,
+ 'HTTP::Request' => 6,
+ 'HTTP::Response' => 6,
+ 'HTTP::Status' => 6,
+diff --git a/README b/README
+index be5a20a..ddb3b6e 100644
+--- a/README
++++ b/README
+@@ -24,12 +24,12 @@ SYNOPSIS
+ DESCRIPTION
+ Instances of the `HTTP::Daemon' class are HTTP/1.1 servers that listen
+ on a socket for incoming requests. The `HTTP::Daemon' is a subclass of
+- `IO::Socket::INET', so you can perform socket operations directly on it
++ `IO::Socket::IP', so you can perform socket operations directly on it
+ too.
+
+ The accept() method will return when a connection from a client is
+ available. The returned value will be an `HTTP::Daemon::ClientConn'
+- object which is another `IO::Socket::INET' subclass. Calling the
++ object which is another `IO::Socket::IP' subclass. Calling the
+ get_request() method on this object will read data from the client and
+ return an `HTTP::Request' object. The ClientConn object also provide
+ methods to send back various responses.
+@@ -40,13 +40,13 @@ DESCRIPTION
+ responses that conform to the HTTP/1.1 protocol.
+
+ The following methods of `HTTP::Daemon' are new (or enhanced) relative
+- to the `IO::Socket::INET' base class:
++ to the `IO::Socket::IP' base class:
+
+ $d = HTTP::Daemon->new
+ $d = HTTP::Daemon->new( %opts )
+ The constructor method takes the same arguments as the
+- `IO::Socket::INET' constructor, but unlike its base class it can
+- also be called without any arguments. The daemon will then set up a
++ `IO::Socket::IP' constructor, but unlike its base class it can also
++ be called without any arguments. The daemon will then set up a
+ listen queue of 5 connections and allocate some random port number.
+
+ A server that wants to bind to some specific address on the standard
+@@ -57,8 +57,8 @@ DESCRIPTION
+ LocalPort => 80,
+ );
+
+- See IO::Socket::INET for a description of other arguments that can
+- be used configure the daemon during construction.
++ See IO::Socket::IP for a description of other arguments that can be
++ used configure the daemon during construction.
+
+ $c = $d->accept
+ $c = $d->accept( $pkg )
+@@ -71,7 +71,7 @@ DESCRIPTION
+
+ The accept method will return `undef' if timeouts have been enabled
+ and no connection is made within the given time. The timeout()
+- method is described in IO::Socket.
++ method is described in IO::Socket::IP.
+
+ In list context both the client object and the peer address will be
+ returned; see the description of the accept method IO::Socket for
+@@ -89,9 +89,9 @@ DESCRIPTION
+ The default is the string "libwww-perl-daemon/#.##" where "#.##" is
+ replaced with the version number of this module.
+
+- The `HTTP::Daemon::ClientConn' is a `IO::Socket::INET' subclass.
+- Instances of this class are returned by the accept() method of
+- `HTTP::Daemon'. The following methods are provided:
++ The `HTTP::Daemon::ClientConn' is a `IO::Socket::IP' subclass. Instances
++ of this class are returned by the accept() method of `HTTP::Daemon'. The
++ following methods are provided:
+
+ $c->get_request
+ $c->get_request( $headers_only )
+@@ -227,7 +227,7 @@ DESCRIPTION
+ SEE ALSO
+ RFC 2616
+
+- IO::Socket::INET, IO::Socket
++ IO::Socket::IP, IO::Socket
+
+ COPYRIGHT
+ Copyright 1996-2003, Gisle Aas
+diff --git a/lib/HTTP/Daemon.pm b/lib/HTTP/Daemon.pm
+index 27a7bf4..0e22b77 100644
+--- a/lib/HTTP/Daemon.pm
++++ b/lib/HTTP/Daemon.pm
+@@ -5,8 +5,10 @@ use vars qw($VERSION @ISA $PROTO $DEBUG);
+
+ $VERSION = "6.01";
+
+-use IO::Socket qw(AF_INET INADDR_ANY INADDR_LOOPBACK inet_ntoa);
+-@ISA=qw(IO::Socket::INET);
++use Socket qw(AF_INET AF_INET6 INADDR_ANY IN6ADDR_ANY
++ INADDR_LOOPBACK IN6ADDR_LOOPBACK inet_ntop sockaddr_family);
++use IO::Socket::IP;
++@ISA=qw(IO::Socket::IP);
+
+ $PROTO = "HTTP/1.1";
+
+@@ -40,15 +42,26 @@ sub url
+ my $self = shift;
+ my $url = $self->_default_scheme . "://";
+ my $addr = $self->sockaddr;
+- if (!$addr || $addr eq INADDR_ANY) {
++ if (!$addr || $addr eq INADDR_ANY || $addr eq IN6ADDR_ANY) {
+ require Sys::Hostname;
+ $url .= lc Sys::Hostname::hostname();
+ }
+ elsif ($addr eq INADDR_LOOPBACK) {
+- $url .= inet_ntoa($addr);
++ $url .= inet_ntop(AF_INET, $addr);
++ }
++ elsif ($addr eq IN6ADDR_LOOPBACK) {
++ $url .= '[' . inet_ntop(AF_INET6, $addr) . ']';
+ }
+ else {
+- $url .= gethostbyaddr($addr, AF_INET) || inet_ntoa($addr);
++ my $host = $addr->sockhostname;
++ if (!defined $host) {
++ if (sockaddr_family($addr) eq AF_INET6) {
++ $host = '[' . inet_ntop(AF_INET6, $addr) . ']';
++ } else {
++ $host = inet_ntop(AF_INET6, $addr);
++ }
++ }
++ $url .= $host;
+ }
+ my $port = $self->sockport;
+ $url .= ":$port" if $port != $self->_default_port;
+@@ -77,8 +90,8 @@ sub product_tokens
+ package HTTP::Daemon::ClientConn;
+
+ use vars qw(@ISA $DEBUG);
+-use IO::Socket ();
+-@ISA=qw(IO::Socket::INET);
++use IO::Socket::IP ();
++@ISA=qw(IO::Socket::IP);
+ *DEBUG = \$HTTP::Daemon::DEBUG;
+
+ use HTTP::Request ();
+@@ -645,12 +658,12 @@ HTTP::Daemon - a simple http server class
+
+ Instances of the C<HTTP::Daemon> class are HTTP/1.1 servers that
+ listen on a socket for incoming requests. The C<HTTP::Daemon> is a
+-subclass of C<IO::Socket::INET>, so you can perform socket operations
++subclass of C<IO::Socket::IP>, so you can perform socket operations
+ directly on it too.
+
+ The accept() method will return when a connection from a client is
+ available. The returned value will be an C<HTTP::Daemon::ClientConn>
+-object which is another C<IO::Socket::INET> subclass. Calling the
++object which is another C<IO::Socket::IP> subclass. Calling the
+ get_request() method on this object will read data from the client and
+ return an C<HTTP::Request> object. The ClientConn object also provide
+ methods to send back various responses.
+@@ -661,7 +674,7 @@ desirable. Also note that the user is responsible for generating
+ responses that conform to the HTTP/1.1 protocol.
+
+ The following methods of C<HTTP::Daemon> are new (or enhanced) relative
+-to the C<IO::Socket::INET> base class:
++to the C<IO::Socket::IP> base class:
+
+ =over 4
+
+@@ -670,7 +683,7 @@ to the C<IO::Socket::INET> base class:
+ =item $d = HTTP::Daemon->new( %opts )
+
+ The constructor method takes the same arguments as the
+-C<IO::Socket::INET> constructor, but unlike its base class it can also
++C<IO::Socket::IP> constructor, but unlike its base class it can also
+ be called without any arguments. The daemon will then set up a listen
+ queue of 5 connections and allocate some random port number.
+
+@@ -682,7 +695,7 @@ HTTP port will be constructed like this:
+ LocalPort => 80,
+ );
+
+-See L<IO::Socket::INET> for a description of other arguments that can
++See L<IO::Socket::IP> for a description of other arguments that can
+ be used configure the daemon during construction.
+
+ =item $c = $d->accept
+@@ -699,7 +712,7 @@ class a subclass of C<HTTP::Daemon::ClientConn>.
+
+ The accept method will return C<undef> if timeouts have been enabled
+ and no connection is made within the given time. The timeout() method
+-is described in L<IO::Socket>.
++is described in L<IO::Socket::IP>.
+
+ In list context both the client object and the peer address will be
+ returned; see the description of the accept method L<IO::Socket> for
+@@ -721,7 +734,7 @@ replaced with the version number of this module.
+
+ =back
+
+-The C<HTTP::Daemon::ClientConn> is a C<IO::Socket::INET>
++The C<HTTP::Daemon::ClientConn> is a C<IO::Socket::IP>
+ subclass. Instances of this class are returned by the accept() method
+ of C<HTTP::Daemon>. The following methods are provided:
+
+@@ -895,7 +908,7 @@ Return a reference to the corresponding C<HTTP::Daemon> object.
+
+ RFC 2616
+
+-L<IO::Socket::INET>, L<IO::Socket>
++L<IO::Socket::IP>, L<IO::Socket>
+
+ =head1 COPYRIGHT
+
+diff --git a/t/chunked.t b/t/chunked.t
+index e11799f..c274b11 100644
+--- a/t/chunked.t
++++ b/t/chunked.t
+@@ -95,18 +95,30 @@ my $can_fork = $Config{d_fork} ||
+ my $tests = @TESTS;
+ my $tport = 8333;
+
+-my $tsock = IO::Socket::INET->new(LocalAddr => '0.0.0.0',
+- LocalPort => $tport,
+- Listen => 1,
+- ReuseAddr => 1);
++my @addresses = (
++ { server => '::', client => '::1' },
++ { server => '0.0.0.0', client => '127.0.0.1' }
++);
++my $family;
++for my $id (0..$#addresses) {
++ my $tsock = IO::Socket::IP->new(LocalAddr => $addresses[$id]->{server},
++ LocalPort => $tport,
++ Listen => 1,
++ ReuseAddr => 1);
++ if ($tsock) {
++ close $tsock;
++ $family = $id;
++ last;
++ }
++}
++
+ if (!$can_fork) {
+ plan skip_all => "This system cannot fork";
+ }
+-elsif (!$tsock) {
+- plan skip_all => "Cannot listen on 0.0.0.0:$tport";
++elsif (!defined $family) {
++ plan skip_all => "Cannot listen on unspecifed address and port $tport";
+ }
+ else {
+- close $tsock;
+ plan tests => $tests;
+ }
+
+@@ -132,9 +144,9 @@ if ($pid = fork) {
+ open my $fh, "| socket localhost $tport" or die;
+ print $fh $test;
+ }
+- use IO::Socket::INET;
+- my $sock = IO::Socket::INET->new(
+- PeerAddr => "127.0.0.1",
++ use IO::Socket::IP;
++ my $sock = IO::Socket::IP->new(
++ PeerAddr => $addresses[$family]->{client},
+ PeerPort => $tport,
+ ) or die;
+ if (0) {
+@@ -158,7 +170,7 @@ if ($pid = fork) {
+ } else {
+ die "cannot fork: $!" unless defined $pid;
+ my $d = HTTP::Daemon->new(
+- LocalAddr => '0.0.0.0',
++ LocalAddr => $addresses[$family]->{server},
+ LocalPort => $tport,
+ ReuseAddr => 1,
+ ) or die;
+--
+2.7.4
+
diff --git a/abs/core/perl_modules/perl-http-daemon/HTTP-Daemon-6.01-Handle-undef-and-empty-LocalAddr.patch b/abs/core/perl_modules/perl-http-daemon/HTTP-Daemon-6.01-Handle-undef-and-empty-LocalAddr.patch
new file mode 100644
index 0000000..f6fe289
--- /dev/null
+++ b/abs/core/perl_modules/perl-http-daemon/HTTP-Daemon-6.01-Handle-undef-and-empty-LocalAddr.patch
@@ -0,0 +1,48 @@
+From b54702ab21edbf1ea0dbc00d978aecc89e5764d6 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
+Date: Mon, 18 Sep 2017 15:21:16 +0200
+Subject: [PATCH] Handle undef and empty LocalAddr
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+IO::Socket::INET interprets undefined and empty string LocalAddr
+arguments as an unspecified address while IO::Socket::IP returns an
+error. This seems to be one of the differences between the two
+Socket implementations. Recent IO::Socket::IP (0.39) accepts undefined
+value, but still bail outs on an empty string.
+
+To improve compatibility, this patch adds a special handling for these
+two values to be accepted as an unspecified value. Though this should
+be corrected on IO::Socket:IP side probably.
+
+CPAN RT#91699
+CPAN RT#123069
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ lib/HTTP/Daemon.pm | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/lib/HTTP/Daemon.pm b/lib/HTTP/Daemon.pm
+index 0e22b77..1e9d48e 100644
+--- a/lib/HTTP/Daemon.pm
++++ b/lib/HTTP/Daemon.pm
+@@ -18,6 +18,14 @@ sub new
+ my($class, %args) = @_;
+ $args{Listen} ||= 5;
+ $args{Proto} ||= 'tcp';
++ # Handle undefined or empty local address the same way as
++ # IO::Socket::INET -- use unspecified address
++ for my $key (qw(LocalAddr LocalHost)) {
++ if (exists $args{$key} &&
++ (!defined($args{$key}) || $args{$key} eq '')) {
++ delete $args{$key};
++ }
++ }
+ return $class->SUPER::new(%args);
+ }
+
+--
+2.13.5
+
diff --git a/abs/core/perl_modules/perl-http-daemon/PKGBUILD b/abs/core/perl_modules/perl-http-daemon/PKGBUILD
index bf55adc..29d3d0e 100644
--- a/abs/core/perl_modules/perl-http-daemon/PKGBUILD
+++ b/abs/core/perl_modules/perl-http-daemon/PKGBUILD
@@ -1,53 +1,42 @@
-# Maintainer : Justin "juster" Davis <jrcd83@gmail.com>
-# Generator : pbjam 0.01
-# $Id: PKGBUILD 140094 2011-10-06 16:01:26Z bluewind $
+# $Id$
+# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgname=perl-http-daemon
-pkgver=6.00
-pkgrel=1
-pkgdesc="a simple http server class"
-arch=(any)
-license=(PerlArtistic GPL)
+pkgver=6.01
+pkgrel=5
+pkgdesc="Simple http server class"
+arch=('any')
+url='https://metacpan.org/pod/HTTP::Daemon'
+license=('PerlArtistic' 'GPL')
+depends=('perl' 'perl-http-date' 'perl-http-message' 'perl-lwp-mediatypes')
options=('!emptydirs')
-depends=('perl>=5.8.8' 'perl-http-date>=6' 'perl-http-message'
- 'perl-lwp-mediatypes>=6')
-makedepends=()
-checkdepends=()
-conflicts=('perl-libwww<6')
-url=http://search.cpan.org/dist/HTTP-Daemon
-source=(http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/HTTP-Daemon-6.00.tar.gz)
-md5sums=(36c8048775b8b53a6fb7c9d781658926)
-sha512sums=(9fcdfc46e359bea37b10c979212f14e1cb7a1e0a24d2602b5465426fdac65dd43e4c3a73c4a956505a675a01caeb8385e20723f4362dcaa326a3d829d618b455)
-_distdir="${srcdir}/HTTP-Daemon-6.00"
+source=(https://cpan.metacpan.org/authors/id/G/GA/GAAS/HTTP-Daemon-${pkgver}.tar.gz
+ HTTP-Daemon-6.01-Add-IPv6-support.patch
+ HTTP-Daemon-6.01-Handle-undef-and-empty-LocalAddr.patch)
+sha256sums=('43fd867742701a3f9fcc7bd59838ab72c6490c0ebaf66901068ec6997514adc2'
+ 'a4bac445248fb494f88e7189a74f1a5d916ae7778edd089ed5a97e0d443e1ebf'
+ '3c46084a36f4a3c3f83e7ed8f4393a6588a5c8d0dbdc948a4f0d6fddc65005ec')
-build() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
- MODULEBUILDRC=/dev/null
+prepare() {
+ cd "${srcdir}/HTTP-Daemon-${pkgver}"
+ patch -p1 < ../HTTP-Daemon-6.01-Add-IPv6-support.patch
+ patch -p1 < ../HTTP-Daemon-6.01-Handle-undef-and-empty-LocalAddr.patch
+}
- cd "$_distdir"
- /usr/bin/perl Makefile.PL
- make
- )
+build() {
+ cd "${srcdir}/HTTP-Daemon-${pkgver}"
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
}
check() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- cd "$_distdir"
- make test
- )
+ cd "${srcdir}/HTTP-Daemon-${pkgver}"
+ make test
}
package() {
- cd "$_distdir"
- make DESTDIR="$pkgdir" install
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+ cd "${srcdir}/HTTP-Daemon-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
+# vim: ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-http-date/PKGBUILD b/abs/core/perl_modules/perl-http-date/PKGBUILD
index 20ea327..245a8cf 100644
--- a/abs/core/perl_modules/perl-http-date/PKGBUILD
+++ b/abs/core/perl_modules/perl-http-date/PKGBUILD
@@ -1,51 +1,30 @@
-# Maintainer : Justin "juster" Davis <jrcd83@gmail.com>
-# Generator : pbjam 0.01
-# $Id: PKGBUILD 150639 2012-02-19 01:23:42Z allan $
+# $Id$
+# Maintainer:
pkgname=perl-http-date
-pkgver=6.01
-pkgrel=1
-pkgdesc="date conversion routines"
-arch=(any)
-license=(PerlArtistic GPL)
+pkgver=6.02
+pkgrel=4
+pkgdesc="Date conversion routines"
+arch=('any')
+url="http://search.cpan.org/dist/HTTP-Date"
+license=('PerlArtistic' 'GPL')
+depends=('perl')
options=('!emptydirs')
-depends=('perl>=5.8.8')
-makedepends=()
-checkdepends=()
-conflicts=('perl-libwww<6')
-url=http://search.cpan.org/dist/HTTP-Date
-source=(http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/HTTP-Date-6.00.tar.gz)
-md5sums=('41b875ac89c14d7f66515b52cdd12acd')
-sha512sums=('7101f30a8a3ac333d37d1c4120c3202ebeb961e742cbecd6b4af140fe575da09c3a3e5be3a2c96e8e33fa2d1e29b10abea59434c2c227d9b6386c306a377f81c')
-_distdir="${srcdir}/HTTP-Date-6.00"
+source=(http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/HTTP-Date-$pkgver.tar.gz)
+sha1sums=('85f8dbcad22f2680775a185ce91a42c89e0ad2a8')
build() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
- MODULEBUILDRC=/dev/null
-
- cd "$_distdir"
- /usr/bin/perl Makefile.PL
- make
- )
+ cd HTTP-Date-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
}
check() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- cd "$_distdir"
- make test
- )
+ cd HTTP-Date-$pkgver
+ make test
}
package() {
- cd "$_distdir"
- make DESTDIR="$pkgdir" install
+ cd HTTP-Date-$pkgver
+ make DESTDIR="$pkgdir" install
}
-
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-http-message/PKGBUILD b/abs/core/perl_modules/perl-http-message/PKGBUILD
index a743973..2378918 100644
--- a/abs/core/perl_modules/perl-http-message/PKGBUILD
+++ b/abs/core/perl_modules/perl-http-message/PKGBUILD
@@ -1,52 +1,37 @@
-# Maintainer : Justin "juster" Davis <jrcd83@gmail.com>
-# Generator : pbjam 0.01
-# $Id: PKGBUILD 150641 2012-02-19 01:25:44Z allan $
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Justin "juster" Davis <jrcd83@gmail.com>
+# Generator : pbjam 0.01
pkgname=perl-http-message
-pkgver=6.03
+pkgver=6.16
pkgrel=1
pkgdesc="HTTP style messages"
-arch=(any)
-license=(PerlArtistic GPL)
+arch=('any')
+url='http://search.cpan.org/dist/HTTP-Message'
+license=('PerlArtistic' 'GPL')
options=('!emptydirs')
-depends=('perl>=5.8.8' 'perl-encode-locale>=1' 'perl-html-parser>=3.33'
- 'perl-http-date>=6' 'perl-lwp-mediatypes>=6' 'perl-uri>=1.10')
-makedepends=()
-checkdepends=()
+depends=('perl' 'perl-encode-locale' 'perl-http-date' 'perl-lwp-mediatypes' 'perl-uri'
+ 'perl-io-html')
+makedepends=('perl-try-tiny')
conflicts=('perl-libwww<6')
-url=http://search.cpan.org/dist/HTTP-Message
-source=(http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/HTTP-Message-6.02.tar.gz)
-md5sums=('a6b28e44f7b5e5573362f042d522a456')
-sha512sums=('1091346307bf063ea6a65ddc8811da368d6080a11776fa5c4dc9df6beb9c8bc8cbe512fd711d44c43d4bd90a65c7195a1d3d5ed10257ef1e17d2145971d89c3c')
-_distdir="${srcdir}/HTTP-Message-6.02"
+source=("http://search.cpan.org/CPAN/authors/id/O/OA/OALDERS/HTTP-Message-$pkgver.tar.gz")
+sha512sums=('9dae693623fa81a0d62ec66fa59b71f5cdbdae6b3146617632b4de0dfa2bbe9eb0a51cf0e98e1ababd85aad97510b469da64ec2254d09bb89461412099344128')
build() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
- MODULEBUILDRC=/dev/null
-
- cd "$_distdir"
- /usr/bin/perl Makefile.PL
- make
- )
+ cd HTTP-Message-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
}
check() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- cd "$_distdir"
- make test
- )
+ cd HTTP-Message-$pkgver
+ make test
}
package() {
- cd "$_distdir"
- make DESTDIR="$pkgdir" install
+ cd HTTP-Message-$pkgver
+ make DESTDIR="$pkgdir" install
}
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-http-negotiate/PKGBUILD b/abs/core/perl_modules/perl-http-negotiate/PKGBUILD
index 850f45a..c12a54c 100644
--- a/abs/core/perl_modules/perl-http-negotiate/PKGBUILD
+++ b/abs/core/perl_modules/perl-http-negotiate/PKGBUILD
@@ -1,51 +1,30 @@
-# Maintainer : Justin "juster" Davis <jrcd83@gmail.com>
-# Generator : pbjam 0.01
-# $Id: PKGBUILD 150643 2012-02-19 01:27:33Z allan $
+# $Id$
+# Maintainer:
pkgname=perl-http-negotiate
pkgver=6.01
-pkgrel=1
-pkgdesc="choose a variant to serve"
-arch=(any)
-license=(PerlArtistic GPL)
+pkgrel=4
+pkgdesc="Choose a variant to serve"
+arch=('any')
+url="http://search.cpan.org/dist/HTTP-Negotiate"
+license=('PerlArtistic' 'GPL')
+depends=('perl' 'perl-http-message')
options=('!emptydirs')
-depends=('perl>=5.8.8' 'perl-http-message')
-makedepends=()
-checkdepends=()
-conflicts=('perl-libwww<6')
-url=http://search.cpan.org/dist/HTTP-Negotiate
-source=(http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/HTTP-Negotiate-6.00.tar.gz)
-md5sums=('f2d89957d1c4f62a86f18b08e07c2328')
-sha512sums=('d608fa0a9a0866c5d934561ea1a13844bab0d27d4ac332f5174e19c768e01675c6562d6bc4c4e4a5530c5a83de8b1edefa002ce42534217eba5a6d4edd779e74')
-_distdir="${srcdir}/HTTP-Negotiate-6.00"
+source=(http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/HTTP-Negotiate-$pkgver.tar.gz)
+sha1sums=('4a4974639d9b64f7132cb075f551f7293f788c62')
build() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
- MODULEBUILDRC=/dev/null
-
- cd "$_distdir"
- /usr/bin/perl Makefile.PL
- make
- )
+ cd HTTP-Negotiate-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
}
check() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- cd "$_distdir"
- make test
- )
+ cd HTTP-Negotiate-$pkgver
+ make test
}
package() {
- cd "$_distdir"
- make DESTDIR="$pkgdir" install
+ cd HTTP-Negotiate-$pkgver
+ make DESTDIR="$pkgdir" install
}
-
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-http-response-encoding/PKGBUILD b/abs/core/perl_modules/perl-http-response-encoding/PKGBUILD
index be9c20e..c65927c 100644
--- a/abs/core/perl_modules/perl-http-response-encoding/PKGBUILD
+++ b/abs/core/perl_modules/perl-http-response-encoding/PKGBUILD
@@ -1,28 +1,29 @@
-# $Id: PKGBUILD 3654 2009-10-07 08:13:13Z spupykin $
-# Maintainer: Allan McRae <allan@archlinux.org>
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: Mladen Pejakovic <pejakm@gmail.com>
pkgname=perl-http-response-encoding
pkgver=0.06
-pkgrel=1
+pkgrel=4
pkgdesc="Adds encoding to HTTP::Response"
-arch=(any)
+arch=('any')
url="http://search.cpan.org/dist/HTTP-Response-Encoding"
license=('GPL' 'PerlArtistic')
depends=('perl-libwww')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/D/DA/DANKOGAI/HTTP-Response-Encoding-$pkgver.tar.gz)
-md5sums=('7e1d46f2d88022580e1a18bb7ac4ab71')
+source=("https://www.cpan.org/authors/id/D/DA/DANKOGAI/HTTP-Response-Encoding-$pkgver.tar.gz")
+sha256sums=('10167b8e238a682004ab0d7accbe9d76eae2db57af07c5ae2dfa808074a4a8aa')
build() {
- cd $srcdir/HTTP-Response-Encoding-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
+ cd "${srcdir}"/HTTP-Response-Encoding-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
+
package() {
- cd $srcdir/HTTP-Response-Encoding-$pkgver
- make install DESTDIR=$pkgdir || return 1
- find $startdir/pkg -name '.packlist' -delete
- find $startdir/pkg -name '*.pod' -delete
+ cd "${srcdir}"/HTTP-Response-Encoding-$pkgver
+ make install DESTDIR="${pkgdir}"
+ find "${pkgdir}" -name '.packlist' -delete
+ find "${pkgdir}" -name '*.pod' -delete
}
-
diff --git a/abs/core/perl_modules/perl-http-server-simple/PKGBUILD b/abs/core/perl_modules/perl-http-server-simple/PKGBUILD
index 33dd3f3..06ba6de0 100644
--- a/abs/core/perl_modules/perl-http-server-simple/PKGBUILD
+++ b/abs/core/perl_modules/perl-http-server-simple/PKGBUILD
@@ -1,24 +1,29 @@
-# $Id: PKGBUILD 56432 2011-10-07 09:57:00Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-http-server-simple
-pkgver=0.44
+pkgver=0.52
pkgrel=1
-pkgdesc="Lightweight HTTP server "
+pkgdesc="Lightweight HTTP server"
arch=(any)
url="http://search.cpan.org/dist/HTTP-Server-Simple"
license=('GPL' 'PerlArtistic')
depends=('perl-uri')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/J/JE/JESSE/HTTP-Server-Simple-$pkgver.tar.gz)
-md5sums=('70d4ae98affb9e921ab1478bbdffca3b')
+source=(http://search.cpan.org/CPAN/authors/id/B/BP/BPS/HTTP-Server-Simple-$pkgver.tar.gz)
+sha256sums=('d8939fa4f12bd6b8c043537fd0bf96b055ac3686b9cdd9fa773dca6ae679cb4c')
build() {
- cd $srcdir/HTTP-Server-Simple-$pkgver
+ cd "$srcdir"/HTTP-Server-Simple-$pkgver
+ PERL_USE_UNSAFE_INC=1 \
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
- make install DESTDIR=$pkgdir
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+}
+
+package() {
+ cd "$srcdir"/HTTP-Server-Simple-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-image-size/PKGBUILD b/abs/core/perl_modules/perl-image-size/PKGBUILD
index db516ac..701e744 100644
--- a/abs/core/perl_modules/perl-image-size/PKGBUILD
+++ b/abs/core/perl_modules/perl-image-size/PKGBUILD
@@ -1,12 +1,12 @@
-# $Id: PKGBUILD 73855 2012-07-16 05:43:31Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: <francois . archlinux . org>
# Contributor: Lukas Jirkovsky <l.jirkovsky@gmail.com>
# Contributor: Igor Scabini <furester@gmail.com>
pkgname=perl-image-size
-pkgver=3.232
-pkgrel=1
+pkgver=3.300
+pkgrel=2
pkgdesc="Read the dimensions of an image in several popular formats"
arch=(any)
url="http://search.cpan.org/dist/Image-Size/"
@@ -14,16 +14,16 @@ license=('LGPL' 'PerlArtistic')
depends=('perl')
options=('!emptydirs')
source=("http://search.cpan.org/CPAN/authors/id/R/RJ/RJRAY/Image-Size-$pkgver.tar.gz")
-md5sums=('908db185487fabdd293f7759113b3a49')
+md5sums=('c8f7f5097cadb984e57e9c0cad1f16b3')
build() {
- cd $srcdir/Image-Size-$pkgver
+ cd "$srcdir"/Image-Size-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
}
package() {
- cd $srcdir/Image-Size-$pkgver
+ cd "$srcdir"/Image-Size-$pkgver
make install DESTDIR="$pkgdir"
find "$pkgdir" -name '.packlist' -delete
find "$pkgdir" -name '*.pod' -delete
diff --git a/abs/core/perl_modules/perl-inc-latest/PKGBUILD b/abs/core/perl_modules/perl-inc-latest/PKGBUILD
new file mode 100644
index 0000000..61b042b
--- /dev/null
+++ b/abs/core/perl_modules/perl-inc-latest/PKGBUILD
@@ -0,0 +1,31 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgname=perl-inc-latest
+pkgver=0.500
+pkgrel=4
+pkgdesc="Build, test, and install Perl modules"
+arch=('any')
+url="https://github.com/dagolden/inc-latest"
+license=('Apache')
+depends=('perl')
+checkdepends=('perl-cpan-meta')
+options=('!emptydirs')
+source=("http://search.cpan.org/CPAN/authors/id/D/DA/DAGOLDEN/inc-latest-$pkgver.tar.gz")
+sha512sums=('b312d1dfce963322796bc0127f0ecd82c12baacf9e5df40d9acc093221edd80f3696ce6d9f185ed24b21983147363d1d0ff3e273b8b5ce7559a6f16983a1385c')
+
+build() {
+ cd inc-latest-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd inc-latest-$pkgver
+ make test
+}
+
+package() {
+ cd inc-latest-$pkgver
+ make install DESTDIR="$pkgdir"
+}
diff --git a/abs/core/perl_modules/perl-io-captureoutput/PKGBUILD b/abs/core/perl_modules/perl-io-captureoutput/PKGBUILD
new file mode 100644
index 0000000..b984df5
--- /dev/null
+++ b/abs/core/perl_modules/perl-io-captureoutput/PKGBUILD
@@ -0,0 +1,33 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Simon Perry <aur [at] sanxion [dot] net>
+# Contributor: Anonymous
+# Generator : CPANPLUS::Dist::Arch 1.29
+
+pkgname=perl-io-captureoutput
+pkgver=1.1104
+pkgrel=3
+pkgdesc="capture STDOUT and STDERR from Perl code, subprocesses or XS"
+arch=('any')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl')
+url="http://search.cpan.org/dist/IO-CaptureOutput"
+source=("http://search.cpan.org/CPAN/authors/id/D/DA/DAGOLDEN/IO-CaptureOutput-$pkgver.tar.gz")
+sha512sums=('5694635c91e4dd11279c33fb9d58e2eb27014f4ea0a976e62c23505524e3d37264aab6d6b1cfe5d925e123d6aa240e574dbc4f489c6c1007da09631368af94f5')
+
+build() {
+ cd IO-CaptureOutput-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd IO-CaptureOutput-$pkgver
+ make test
+}
+
+package() {
+ cd IO-CaptureOutput-$pkgver
+ make install DESTDIR="$pkgdir"
+}
diff --git a/abs/core/perl_modules/perl-io-html/PKGBUILD b/abs/core/perl_modules/perl-io-html/PKGBUILD
new file mode 100644
index 0000000..7a86226
--- /dev/null
+++ b/abs/core/perl_modules/perl-io-html/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@gmail.com>
+
+pkgname=perl-io-html
+pkgver=1.001
+pkgrel=3
+pkgdesc="Open an HTML file with automatic charset detection"
+arch=('any')
+url='http://search.cpan.org/dist/IO-HTML'
+depends=('perl')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+source=(http://search.cpan.org/CPAN/authors/id/C/CJ/CJM/IO-HTML-$pkgver.tar.gz)
+sha1sums=('210b60f438502744c9c31a82329b19a6f9aecf63')
+
+build() {
+ export PERL_MM_USE_DEFAULT=1 PERL_MM_OPT="INSTALLDIRS=vendor" \
+ PERL_MB_OPT="--installdirs vendor"
+ cd IO-HTML-$pkgver
+ perl Makefile.PL
+ make
+}
+
+check() {
+ cd IO-HTML-$pkgver
+ make test
+}
+
+package() {
+ cd IO-HTML-$pkgver
+ make DESTDIR="$pkgdir" install
+}
diff --git a/abs/core/perl_modules/perl-io-socket-inet6/PKGBUILD b/abs/core/perl_modules/perl-io-socket-inet6/PKGBUILD
index 53dfb18..a51e163 100644
--- a/abs/core/perl_modules/perl-io-socket-inet6/PKGBUILD
+++ b/abs/core/perl_modules/perl-io-socket-inet6/PKGBUILD
@@ -2,8 +2,8 @@
# Generator : CPANPLUS::Dist::Arch 1.18
pkgname='perl-io-socket-inet6'
-pkgver=2.69
-pkgrel=1
+pkgver=2.72
+pkgrel=3
pkgdesc="Object interface for AF_INET|AF_INET6 domain sockets"
arch=('any')
license=('PerlArtistic' 'GPL')
@@ -12,15 +12,15 @@ depends=('perl-socket6>=0.12')
makedepends=()
url='http://search.cpan.org/dist/IO-Socket-INET6'
source=("http://search.cpan.org/CPAN/authors/id/S/SH/SHLOMIF/IO-Socket-INET6-$pkgver.tar.gz")
-md5sums=('12a80a5164a775294a9bf9c812fc3257')
-sha512sums=('be3398a64daafa0e90e6c66c6a51b94b4063f7fb6527fbb300f5ccd100770929b69b8472602117988cf0b452e4cfb857527861c272c8c0038b3e3efffac77cde')
-_distdir="${srcdir}/IO-Socket-INET6-$pkgver"
+md5sums=('510ddc1bd75a8340ca7226123fb545c1')
+sha512sums=('c6dc0bbcc81682d317597de26d5023de84781e4bd2af224145cc4980db7fcbc93295a7d0a80c1eaa649c6aebf4057d0b0159f47e6a6379d4b545b49305f28a37')
+_distdir="IO-Socket-INET6-$pkgver"
build() {
( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ PERL_MM_OPT="INSTALLDIRS=vendor" \
+ PERL_MB_OPT="--installdirs vendor" \
MODULEBUILDRC=/dev/null
cd "$_distdir"
@@ -38,7 +38,7 @@ check() {
package() {
cd "$_distdir"
- make install
+ make DESTDIR="$pkgdir" install
find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
}
diff --git a/abs/core/perl_modules/perl-io-socket-multicast/PKGBUILD b/abs/core/perl_modules/perl-io-socket-multicast/PKGBUILD
index 5bf7764..588e565 100644
--- a/abs/core/perl_modules/perl-io-socket-multicast/PKGBUILD
+++ b/abs/core/perl_modules/perl-io-socket-multicast/PKGBUILD
@@ -1,6 +1,6 @@
pkgname=perl-io-socket-multicast
pkgver=1.12
-pkgrel=2
+pkgrel=3
pkgdesc="IO::Socket::Multicast - Object interface to socket communications for perl"
arch=('any')
license=('PerlArtistic' 'GPL')
diff --git a/abs/core/perl_modules/perl-io-socket-ssl/PKGBUILD b/abs/core/perl_modules/perl-io-socket-ssl/PKGBUILD
index e144c03..dbdd4f8 100644
--- a/abs/core/perl_modules/perl-io-socket-ssl/PKGBUILD
+++ b/abs/core/perl_modules/perl-io-socket-ssl/PKGBUILD
@@ -1,33 +1,31 @@
-# $Id: PKGBUILD 163575 2012-07-16 03:26:30Z eric $
-# Maintainer: Kevin Piche <kevin@archlinux.org>
-# Contributor: Manolis Tzanidakis
-# Contributor: Francois Charette <francois.archlinux.org>
+# $Id$
+# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgname=perl-io-socket-ssl
-_cpanname=IO-Socket-SSL
-pkgver=1.76
+pkgver=2.056
pkgrel=1
pkgdesc="Nearly transparent SSL encapsulation for IO::Socket::INET"
arch=('any')
license=('GPL' 'PerlArtistic')
-url="http://search.cpan.org/dist/${_cpanname}/"
-depends=('perl-net-ssleay' 'perl>=5.10.0')
+url="http://search.cpan.org/dist/IO-Socket-SSL/"
+depends=('perl-net-ssleay' 'perl' 'perl-uri')
+checkdepends=('perl-io-socket-inet6')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/S/SU/SULLR/${_cpanname}-${pkgver}.tar.gz)
-sha1sums=('b27cfff3b5cf03f223431317abda03d44d1a902d')
+source=(http://www.cpan.org/authors/id/S/SU/SULLR/IO-Socket-SSL-${pkgver}.tar.gz)
+sha1sums=('281b20a3b50294b4362a7a7b9c631dc5a0d04b4c')
build() {
- cd "${srcdir}/${_cpanname}-${pkgver}"
- perl Makefile.PL INSTALLDIRS=vendor
+ cd IO-Socket-SSL-${pkgver}
+ yes | perl Makefile.PL INSTALLDIRS=vendor
make
}
check() {
- cd "${srcdir}/${_cpanname}-${pkgver}"
+ cd IO-Socket-SSL-${pkgver}
make test
}
package() {
- cd "${srcdir}/${_cpanname}-${pkgver}"
- make install DESTDIR="${pkgdir}"
+ cd IO-Socket-SSL-${pkgver}
+ make DESTDIR="${pkgdir}" install
}
diff --git a/abs/core/perl_modules/perl-io-tee/PKGBUILD b/abs/core/perl_modules/perl-io-tee/PKGBUILD
new file mode 100644
index 0000000..3d2e3d4
--- /dev/null
+++ b/abs/core/perl_modules/perl-io-tee/PKGBUILD
@@ -0,0 +1,26 @@
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Maintainer: Charles Mauch <cmauch@gmail.com>
+
+pkgname=perl-io-tee
+pkgver=0.64
+pkgrel=7
+pkgdesc="Perl/CPAN Module IO::Tee : Multiplex output to multiple handles"
+arch=("any")
+url="http://search.cpan.org/dist/IO-Tee"
+license=("GPL" "PerlArtistic")
+source=("https://www.cpan.org/authors/id/K/KE/KENSHAN/IO-Tee-$pkgver.tar.gz")
+sha256sums=('3ed276b1c2d3511338653c2532e73753d284943c1a8f5159ff37fecc2b345ed6')
+
+build() {
+ cd "$srcdir"/IO-Tee-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+package() {
+ cd "$srcdir"/IO-Tee-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
+}
diff --git a/abs/core/perl_modules/perl-io-tty/PKGBUILD b/abs/core/perl_modules/perl-io-tty/PKGBUILD
index 540af17..0812643 100644
--- a/abs/core/perl_modules/perl-io-tty/PKGBUILD
+++ b/abs/core/perl_modules/perl-io-tty/PKGBUILD
@@ -1,27 +1,34 @@
-# $Id: PKGBUILD 71803 2012-06-02 10:31:14Z bluewind $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Charles Mauch <cmauch@gmail.com>
pkgname=perl-io-tty
-pkgver=1.10
-pkgrel=2
+pkgver=1.12
+pkgrel=6
pkgdesc="Provide an interface to TTYs and PTYs"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://search.cpan.org/dist/IO-Tty/"
license=("GPL" "PerlArtistic")
depends=('glibc')
options=('!emptydirs')
source=("http://search.cpan.org/CPAN/authors/id/T/TO/TODDR/IO-Tty-$pkgver.tar.gz")
-md5sums=('46baec86a145e57f0ec661fa412b097c')
+md5sums=('11695a1a516b3bd1b90ce75ff0ce3e6d')
build() {
- cd $srcdir/IO-Tty-$pkgver
+ cd "$srcdir"/IO-Tty-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
}
-package(){
- cd $srcdir/IO-Tty-$pkgver
- make install DESTDIR=$pkgdir
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+package() {
+ cd "$srcdir"/IO-Tty-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
diff --git a/abs/core/perl_modules/perl-ipc-run3/PKGBUILD b/abs/core/perl_modules/perl-ipc-run3/PKGBUILD
new file mode 100644
index 0000000..e5d240e
--- /dev/null
+++ b/abs/core/perl_modules/perl-ipc-run3/PKGBUILD
@@ -0,0 +1,41 @@
+# $Id$
+# Maintainer: Rémy Oudompheng <remy@archlinux.org>
+# Contributor: John D Jones III <jnbek1972 -_AT_- g m a i l -_Dot_- com>
+# Generator : CPANPLUS::Dist::Arch 1.27
+
+pkgname='perl-ipc-run3'
+_dist=IPC-Run3
+pkgver=0.048
+pkgrel=4
+pkgdesc="run a subprocess with input/ouput redirection"
+arch=('any')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl')
+makedepends=()
+url='http://search.cpan.org/dist/IPC-Run3'
+source=("http://search.cpan.org/CPAN/authors/id/R/RJ/RJBS/${_dist}-${pkgver}.tar.gz")
+md5sums=('5a8cec571c51a118b265cf6e24e55761')
+sha512sums=('50432850d8dccd2e59aa6684d34f3e3242fd7df3eb4d9a5eb02dae389aa46b5fd68cc54114a157c3fe99956e68e74d575ab3db5009b7bf7d5c325f1f109b1262')
+
+build() {
+ cd "${srcdir}/${_dist}-${pkgver}"
+ unset PERL5LIB PERL_MM_OPT PERL_MB_OPT PERL_LOCAL_LIB_ROOT
+ export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL=--skipdeps
+ perl Makefile.PL
+ make
+}
+
+check() {
+ cd "${srcdir}/${_dist}-${pkgver}"
+ unset PERL5LIB PERL_MM_OPT PERL_MB_OPT PERL_LOCAL_LIB_ROOT
+ export PERL_MM_USE_DEFAULT=1
+ make test
+}
+
+package() {
+ cd "${srcdir}/${_dist}-${pkgver}"
+ unset PERL5LIB PERL_MM_OPT PERL_MB_OPT PERL_LOCAL_LIB_ROOT
+ make install INSTALLDIRS=vendor DESTDIR="$pkgdir"
+}
+
diff --git a/abs/core/perl_modules/perl-ipc-system-simple/PKGBUILD b/abs/core/perl_modules/perl-ipc-system-simple/PKGBUILD
index 80143e2..f970139 100644
--- a/abs/core/perl_modules/perl-ipc-system-simple/PKGBUILD
+++ b/abs/core/perl_modules/perl-ipc-system-simple/PKGBUILD
@@ -1,27 +1,31 @@
-# $Id: PKGBUILD 150564 2012-02-18 14:45:45Z pierre $
+# $Id$
# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
# Contributor: Caleb Cushing <xenoterracide@gmail.com>
pkgname=perl-ipc-system-simple
-_realname=IPC-System-Simple
-pkgver=1.21
-pkgrel=2
+pkgver=1.25
+pkgrel=3
pkgdesc="Run commands simply, with detailed diagnostics"
arch=('any')
+url="http://search.cpan.org/dist/IPC-System-Simple"
license=('PerlArtistic' 'GPL')
depends=('perl')
-url="http://search.cpan.org/dist/IPC-System-Simple"
options=('!emptydirs')
-source=("http://search.cpan.org/CPAN/authors/id/P/PJ/PJF/$_realname-$pkgver.tar.gz")
-md5sums=('8215b62fe1b8447b99e17861e2255288')
+source=("http://search.cpan.org/CPAN/authors/id/P/PJ/PJF/IPC-System-Simple-$pkgver.tar.gz")
+md5sums=('fb49e674e1d52e8e5646d08507d7fda5')
build() {
- cd "$srcdir/$_realname-$pkgver"
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ cd IPC-System-Simple-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
make
}
+check() {
+ cd IPC-System-Simple-$pkgver
+ make test
+}
+
package() {
- cd "$srcdir/$_realname-$pkgver"
+ cd IPC-System-Simple-$pkgver
make DESTDIR="$pkgdir" install
}
diff --git a/abs/core/perl_modules/perl-json/PKGBUILD b/abs/core/perl_modules/perl-json/PKGBUILD
index fa245f6..426bc3d 100644
--- a/abs/core/perl_modules/perl-json/PKGBUILD
+++ b/abs/core/perl_modules/perl-json/PKGBUILD
@@ -1,28 +1,28 @@
-# $Id: PKGBUILD 65872 2012-02-22 13:12:45Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-json
-pkgver=2.53
-pkgrel=2
+pkgver=2.97001
+pkgrel=1
pkgdesc="JSON (JavaScript Object Notation) encoder/decoder"
arch=('any')
url="http://search.cpan.org/dist/JSON"
license=('GPL' 'PerlArtistic')
depends=('perl>=5.10.0')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/M/MA/MAKAMAKA/JSON-$pkgver.tar.gz)
-md5sums=('7db1be00d44414c4962eeac222395a76')
+source=(http://search.cpan.org/CPAN/authors/id/I/IS/ISHIGAKI/JSON-$pkgver.tar.gz)
+sha256sums=('e277d9385633574923f48c297e1b8acad3170c69fa590e31fa466040fc6f8f5a')
build() {
- cd $srcdir/JSON-$pkgver
+ cd "$srcdir"/JSON-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
}
package() {
- cd $srcdir/JSON-$pkgver
- make install DESTDIR=$pkgdir
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+ cd "$srcdir"/JSON-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-libwww/PKGBUILD b/abs/core/perl_modules/perl-libwww/PKGBUILD
index 8aec958..e5a1593 100644
--- a/abs/core/perl_modules/perl-libwww/PKGBUILD
+++ b/abs/core/perl_modules/perl-libwww/PKGBUILD
@@ -1,53 +1,36 @@
-# Packager: Justin "juster" Davis <jrcd83@gmail.com>
-# $Id: PKGBUILD 150749 2012-02-21 19:40:54Z juster $
+# $Id$
+# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgname=perl-libwww
-pkgver=6.04
+pkgver=6.33
pkgrel=1
pkgdesc="The World-Wide Web library for Perl"
-arch=(any)
-license=(PerlArtistic GPL)
-options=(!emptydirs)
-depends=('perl>=5.8.1' 'perl-encode-locale' 'perl-file-listing>=6'
- 'perl-html-parser' 'perl-http-cookies>=6' 'perl-http-daemon>=6'
- 'perl-http-date>=6' 'perl-http-negotiate>=6' 'perl-lwp-mediatypes>=6'
- 'perl-net-http>=6' 'perl-uri>=1.10' 'perl-www-robotrules>=6'
- 'perl-http-message>=6')
+arch=('any')
+url="https://metacpan.org/release/libwww-perl"
+license=('PerlArtistic' 'GPL')
+depends=('perl' 'perl-encode-locale' 'perl-file-listing'
+ 'perl-html-parser' 'perl-http-cookies' 'perl-http-daemon'
+ 'perl-http-date' 'perl-http-negotiate' 'perl-lwp-mediatypes'
+ 'perl-net-http' 'perl-uri' 'perl-www-robotrules'
+ 'perl-http-message' 'perl-try-tiny')
optdepends=('perl-lwp-protocol-https: for https:// url schemes')
-url=https://metacpan.org/release/libwww-perl
-source=("http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/libwww-perl-${pkgver}.tar.gz")
-md5sums=(24acf2fe33b2295f048f8859e9665ee3)
-sha512sums=(9ea578e6da99e4002a35ae82d1ee025caf15b3bc7e40fbe71abd7e8592036f16bd0268453dfeedc2c445d957c45ec473b1ed4a1738b644d475d65f7cbdb6927b)
-_distdir="${srcdir}/libwww-perl-${pkgver}"
+checkdepends=('perl-test-fatal' 'perl-test-requiresinternet')
+options=('!emptydirs')
+source=(https://cpan.metacpan.org/authors/id/O/OA/OALDERS/libwww-perl-${pkgver}.tar.gz)
+sha1sums=('915f4afeb91269aea3476e408a3af7904c5361e4')
-build()
-(
- export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
- MODULEBUILDRC=/dev/null
-
- cd "$_distdir"
- /usr/bin/perl Makefile.PL
- make
-)
+build() {
+ cd libwww-perl-${pkgver}
+ perl Makefile.PL --aliases INSTALLDIRS=vendor
+ make
+}
-check()
-(
- export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- cd "$_distdir"
- make test
-)
+check() {
+ cd libwww-perl-${pkgver}
+ make test
+}
package() {
- cd "$_distdir"
- make DESTDIR="$pkgdir" install
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+ cd libwww-perl-${pkgver}
+ make DESTDIR="$pkgdir" install
}
-
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-lingua-en-numbers-ordinate/PKGBUILD b/abs/core/perl_modules/perl-lingua-en-numbers-ordinate/PKGBUILD
index fb62569..5ba0610 100644
--- a/abs/core/perl_modules/perl-lingua-en-numbers-ordinate/PKGBUILD
+++ b/abs/core/perl_modules/perl-lingua-en-numbers-ordinate/PKGBUILD
@@ -1,25 +1,29 @@
-# $Id: PKGBUILD 65879 2012-02-22 13:16:53Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Allan McRae <mcrae_allan@hotmail.com>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-lingua-en-numbers-ordinate
-pkgver=1.02
-pkgrel=4
+pkgver=1.04
+pkgrel=2
pkgdesc="Go from cardinal (53) to ordinal (53rd)"
arch=('any')
url="http://search.cpan.org/dist/Lingua-EN-Numbers-Ordinate"
license=('GPL' 'PerlArtistic')
depends=('perl>=5.10.0')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/S/SB/SBURKE/Lingua-EN-Numbers-Ordinate-$pkgver.tar.gz)
-md5sums=('e92078fafd9108a137972c4e9bae9e99')
+source=(http://search.cpan.org/CPAN/authors/id/N/NE/NEILB/Lingua-EN-Numbers-Ordinate-$pkgver.tar.gz)
+md5sums=('8d98839010f7f5cb3b2f593d2e00b505')
build() {
- cd $srcdir/Lingua-EN-Numbers-Ordinate-$pkgver
+ cd "$srcdir"/Lingua-EN-Numbers-Ordinate-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
- make install DESTDIR=$pkgdir
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+}
+
+package() {
+ cd "$srcdir"/Lingua-EN-Numbers-Ordinate-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-lingua-preferred/PKGBUILD b/abs/core/perl_modules/perl-lingua-preferred/PKGBUILD
index fa99326..1b450ba 100644
--- a/abs/core/perl_modules/perl-lingua-preferred/PKGBUILD
+++ b/abs/core/perl_modules/perl-lingua-preferred/PKGBUILD
@@ -1,25 +1,29 @@
-# $Id: PKGBUILD 65881 2012-02-22 13:17:22Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Allan McRae <mcrae_allan@hotmail.com>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-lingua-preferred
pkgver=0.2.4
-pkgrel=4
+pkgrel=6
pkgdesc="Pick a language based on user's preferences"
arch=('any')
url="http://search.cpan.org/dist/Lingua-Preferred"
license=('GPL' 'PerlArtistic')
depends=('perl>=5.10.0')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/E/ED/EDAVIS/Lingua-Preferred-$pkgver.tar.gz)
-md5sums=('37e883fafb05b1439de1121f41e8ad75')
+source=(https://www.cpan.org/authors/id/E/ED/EDAVIS/Lingua-Preferred-$pkgver.tar.gz)
+sha256sums=('fa58c4fac6b676f78caad6b472a785dd0c8fa67004a62294fbcfa3a3eb243c83')
build() {
- cd $srcdir/Lingua-Preferred-$pkgver
+ cd "$srcdir"/Lingua-Preferred-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
- make install DESTDIR=$pkgdir
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+}
+
+package() {
+ cd "$srcdir"/Lingua-Preferred-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-list-allutils/PKGBUILD b/abs/core/perl_modules/perl-list-allutils/PKGBUILD
new file mode 100644
index 0000000..2a14d9d
--- /dev/null
+++ b/abs/core/perl_modules/perl-list-allutils/PKGBUILD
@@ -0,0 +1,39 @@
+# CPAN Name : List::AllUtils
+# Contributor: Anton Leontiev <bunder /at/ t-25.ru>
+# Generator : CPANPLUS::Dist::Arch 1.29
+
+pkgname=perl-list-allutils
+pkgver=0.14
+pkgrel=4
+pkgdesc='Perl package that combines List::Util and List::MoreUtils in one bite-sized package'
+arch=('any')
+url='http://search.cpan.org/dist/List-AllUtils'
+license=('Artistic2.0')
+depends=('perl>=5.19.3' 'perl-list-moreutils>=0.28' 'perl-scalar-list-utils>=1.45'
+ 'perl-list-someutils' 'perl-list-utilsby')
+checkdepends=('perl-test-warnings')
+source=(http://search.cpan.org/CPAN/authors/id/D/DR/DROLSKY/List-AllUtils-$pkgver.tar.gz)
+options=(!emptydirs)
+sha256sums=('e45aa65927ae1975a000cc2fed14274627fa5e2bd09bab826a5f2c41d17ef6cd')
+
+build() {
+ cd List-AllUtils-$pkgver
+ unset PERL5LIB PERL_MM_OPT PERL_LOCAL_LIB_ROOT
+ export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL=--skipdeps
+ /usr/bin/perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd List-AllUtils-$pkgver
+ unset PERL5LIB PERL_MM_OPT PERL_LOCAL_LIB_ROOT
+ export PERL_MM_USE_DEFAULT=1
+ make test
+}
+
+package() {
+ cd List-AllUtils-$pkgver
+ unset PERL5LIB PERL_MM_OPT PERL_LOCAL_LIB_ROOT
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+}
diff --git a/abs/core/perl_modules/perl-list-compare/PKGBUILD b/abs/core/perl_modules/perl-list-compare/PKGBUILD
index 7480b98..66d3162 100644
--- a/abs/core/perl_modules/perl-list-compare/PKGBUILD
+++ b/abs/core/perl_modules/perl-list-compare/PKGBUILD
@@ -1,26 +1,33 @@
-# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $
-# Maintainer: Cecil H. Watson <knoppmyth@gmail.com>
+# Maintainer: Simon Perry <aur [at] sanxion [dot] net>
+# Contributor: Anton Bazhenov <anton.bazhenov at gmail>
pkgname=perl-list-compare
-_realname=List-Compare
-pkgver=0.37
+_pkgname=List-Compare
+pkgver=0.53
pkgrel=2
-pkgdesc="List::Compare - Compare elements of two or more lists"
-arch=(i686 x86_64)
-license=('PerlArtistic')
-url="http://search.cpan.org/dist/${_realname}/"
-depends=('perlxml' 'perl>=5.10.0')
-groups=('shepherd-dep')
+pkgdesc="Compare elements of two or more lists"
+arch=('any')
+url="http://search.cpan.org/~JKEENAN/List-Compare/"
+license=('GPL' 'PerlArtistic')
+makedepends=('perl-io-captureoutput')
+depends=('perl')
options=('!emptydirs')
-source=(ftp://ftp.cpan.org/pub/CPAN/authors/id/J/JK/JKEENAN/${_realname}-${pkgver}.tar.gz)
-md5sums=('7c730dd58cc31a5bbb8eb7006edd1704')
+source=(http://search.cpan.org/CPAN/authors/id/J/JK/JKEENAN/${_pkgname}-$pkgver.tar.gz)
+sha256sums=('fdbf4ff67b3135d44475fef7fcac0cd4706407d5720d26dca914860eb10f8550')
build() {
- cd ${startdir}/src/${_realname}-${pkgver}
- perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make DESTDIR=${startdir}/pkg install || return 1
+ cd $srcdir/${_pkgname}-$pkgver
- find ${startdir}/pkg -name '.packlist' -delete
- find ${startdir}/pkg -name 'perllocal.pod' -delete
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
+
+package() {
+ cd $srcdir/${_pkgname}-$pkgver
+
+ make DESTDIR=${pkgdir} install
+
+ find $pkgdir -name perllocal.pod -delete
+ find $pkgdir -name .packlist -delete
+}
+
diff --git a/abs/core/perl_modules/perl-list-moreutils-xs/PKGBUILD b/abs/core/perl_modules/perl-list-moreutils-xs/PKGBUILD
new file mode 100644
index 0000000..4256815
--- /dev/null
+++ b/abs/core/perl_modules/perl-list-moreutils-xs/PKGBUILD
@@ -0,0 +1,46 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Justin "juster" Davis <jrcd83@gmail.com>
+# Generator : pbjam 0.01
+
+pkgname=perl-list-moreutils-xs
+pkgver=0.428
+pkgrel=1
+pkgdesc="Provide the stuff missing in List::Util"
+url='http://search.cpan.org/dist/List-MoreUtils-XS'
+arch=('x86_64')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl')
+source=("http://search.cpan.org/CPAN/authors/id/R/RE/REHSACK/List-MoreUtils-XS-${pkgver}.tar.gz")
+sha512sums=('a608568e3c4a2e160e4f9afa26640be5b97ec83e301a6b81849e37951698b9423c0a969d7e8797a49b4fb6c5123780630a3726c64713922b90b21b947682c3dd')
+
+build() {
+ cd "${srcdir}/List-MoreUtils-XS-${pkgver}"
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd "${srcdir}/List-MoreUtils-XS-${pkgver}"
+ make test
+}
+
+package() {
+ cd "${srcdir}/List-MoreUtils-XS-${pkgver}"
+ make DESTDIR="$pkgdir" install
+
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
+}
+
+# Local Variables:
+# mode: shell-script
+# sh-basic-offset: 2
+# End:
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-list-moreutils/PKGBUILD b/abs/core/perl_modules/perl-list-moreutils/PKGBUILD
index a7d80bb..5dc037d 100644
--- a/abs/core/perl_modules/perl-list-moreutils/PKGBUILD
+++ b/abs/core/perl_modules/perl-list-moreutils/PKGBUILD
@@ -1,22 +1,46 @@
-# Maintainer: François Charette <firmicus ατ gmx δοτ net>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Justin "juster" Davis <jrcd83@gmail.com>
+# Generator : pbjam 0.01
pkgname=perl-list-moreutils
-pkgver=0.22
+pkgver=0.428
pkgrel=1
pkgdesc="Provide the stuff missing in List::Util"
-arch=('i686' 'x86_64')
-url="http://search.cpan.org/~VPARSEVAL/List-MoreUtils"
-license=('GPL' 'PerlArtistic')
-depends=('perl>=5.10.0')
+arch=('any')
+license=('PerlArtistic' 'GPL')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/V/VP/VPARSEVAL/List-MoreUtils-$pkgver.tar.gz)
-md5sums=('3a6ec506f40662ab1296c48c5eb72016')
+depends=('perl-exporter-tiny' 'perl-list-moreutils-xs')
+url=http://search.cpan.org/dist/List-MoreUtils
+source=("http://search.cpan.org/CPAN/authors/id/R/RE/REHSACK/List-MoreUtils-${pkgver}.tar.gz")
+sha512sums=('f7e11f10f1d7bd3b8f9f8bc2fc325e1a9230056f68591da624aed01fb4e4cbac20caeae0c3e2aa3acc8b71febd6d4149284367f051d3c1e608e3a4ca8b62dbd8')
build() {
- cd $startdir/src/List-MoreUtils-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make install DESTDIR=$startdir/pkg || return 1
- find $startdir/pkg -name '.packlist' -delete
- find $startdir/pkg -name '*.pod' -delete
+ cd "${srcdir}/List-MoreUtils-${pkgver}"
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
}
+
+check() {
+ cd "${srcdir}/List-MoreUtils-${pkgver}"
+ make test
+}
+
+package() {
+ cd "${srcdir}/List-MoreUtils-${pkgver}"
+ make DESTDIR="$pkgdir" install
+
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
+}
+
+# Local Variables:
+# mode: shell-script
+# sh-basic-offset: 2
+# End:
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-list-someutils/PKGBUILD b/abs/core/perl_modules/perl-list-someutils/PKGBUILD
new file mode 100644
index 0000000..e40fca7
--- /dev/null
+++ b/abs/core/perl_modules/perl-list-someutils/PKGBUILD
@@ -0,0 +1,38 @@
+# CPAN Name : List::AllUtils
+# Contributor: Anton Leontiev <bunder /at/ t-25.ru>
+# Generator : CPANPLUS::Dist::Arch 1.29
+
+pkgname=perl-list-someutils
+pkgver=0.56
+pkgrel=1
+pkgdesc='Perl package that combines List::Util and List::MoreUtils in one bite-sized package'
+arch=('any')
+url='http://search.cpan.org/dist/List-SomeUtils'
+license=('Artistic2.0')
+depends=('perl' 'perl-module-implementation')
+checkdepends=('perl-test-warnings')
+source=(http://search.cpan.org/CPAN/authors/id/D/DR/DROLSKY/List-SomeUtils-$pkgver.tar.gz)
+options=(!emptydirs)
+sha256sums=('eaa7d99ce86380c0389876474c8eb84acc0a6bfeef1b0fc23a292592de6f89f7')
+
+build() {
+ cd List-SomeUtils-$pkgver
+ unset PERL5LIB PERL_MM_OPT PERL_LOCAL_LIB_ROOT
+ export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL=--skipdeps
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd List-SomeUtils-$pkgver
+ unset PERL5LIB PERL_MM_OPT PERL_LOCAL_LIB_ROOT
+ export PERL_MM_USE_DEFAULT=1
+ make test
+}
+
+package() {
+ cd List-SomeUtils-$pkgver
+ unset PERL5LIB PERL_MM_OPT PERL_LOCAL_LIB_ROOT
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+}
diff --git a/abs/core/perl_modules/perl-list-utilsby/PKGBUILD b/abs/core/perl_modules/perl-list-utilsby/PKGBUILD
new file mode 100644
index 0000000..74c937d
--- /dev/null
+++ b/abs/core/perl_modules/perl-list-utilsby/PKGBUILD
@@ -0,0 +1,44 @@
+# Maintainer: Maxwell Pray a.k.a. Synthead <synthead@gmail.com>
+
+pkgname=perl-list-utilsby
+_cpanname="List-UtilsBy"
+pkgver=0.11
+pkgrel=1
+pkgdesc="Higher-order list utility functions"
+arch=('any')
+url="http://search.cpan.org/~pevans/$_cpanname"
+license=('GPL' 'PerlArtistic')
+depends=('perl>=5.5.0')
+options=('!emptydirs')
+# Function to change to the working directory and set
+# environment variables to override undesired options.
+prepareEnvironment() {
+ cd "$srcdir/$_cpanname-$pkgver"
+ export \
+ PERL_MM_USE_DEFAULT=1 \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='"$pkgdir"'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '"$pkgdir"'" \
+ MODULEBUILDRC=/dev/null
+}
+source=("http://search.cpan.org/CPAN/authors/id/P/PE/PEVANS/$_cpanname-$pkgver.tar.gz")
+sha256sums=('faddf43b4bc21db8e4c0e89a26e5f23fe626cde3491ec651b6aa338627f5775a')
+
+build() {
+ prepareEnvironment
+ /usr/bin/perl Makefile.PL
+ make
+}
+
+check() {
+ prepareEnvironment
+ make test
+}
+
+package() {
+ prepareEnvironment
+ make install
+
+ # Remove "perllocal.pod" and ".packlist".
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+}
diff --git a/abs/core/perl_modules/perl-locale-gettext/PKGBUILD b/abs/core/perl_modules/perl-locale-gettext/PKGBUILD
index e2bb2e3..22fede7 100644
--- a/abs/core/perl_modules/perl-locale-gettext/PKGBUILD
+++ b/abs/core/perl_modules/perl-locale-gettext/PKGBUILD
@@ -1,27 +1,24 @@
-# $Id: PKGBUILD 160541 2012-06-02 10:27:56Z bluewind $
+# $Id$
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: Mark Rosenstand <mark@borkware.net>
# Contributor: Paul Mattal <paul@archlinux.org>
pkgname=perl-locale-gettext
-_realname=gettext
-pkgver=1.05
-pkgrel=9
+_realname=Locale-gettext
+pkgver=1.07
+pkgrel=5
pkgdesc="Permits access from Perl to the gettext() family of functions"
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('GPL' 'PerlArtistic')
url="http://search.cpan.org/dist/${_realname}/"
depends=('gettext' 'perl')
options=(!emptydirs)
-source=("http://search.cpan.org/CPAN/authors/id/P/PV/PVANDRY/${_realname}-${pkgver}.tar.gz"
- 'compatibility-with-POSIX-module.patch')
-md5sums=('f3d3f474a1458f37174c410dfef61a46'
- '854302f34d01a2f8ae739187788973dd')
+source=("http://search.cpan.org/CPAN/authors/id/P/PV/PVANDRY/${_realname}-${pkgver}.tar.gz")
+md5sums=('bc652758af65c24500f1d06a77415019')
build() {
cd "${srcdir}/${_realname}-${pkgver}"
- patch -Np1 -i ${srcdir}/compatibility-with-POSIX-module.patch
# install module in vendor directories.
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
@@ -40,4 +37,12 @@ package() {
# remove perllocal.pod and .packlist
find "${pkgdir}" -name perllocal.pod -delete
find "${pkgdir}" -name .packlist -delete
+
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
diff --git a/abs/core/perl_modules/perl-locale-gettext/compatibility-with-POSIX-module.patch b/abs/core/perl_modules/perl-locale-gettext/compatibility-with-POSIX-module.patch
deleted file mode 100644
index ad67551..0000000
--- a/abs/core/perl_modules/perl-locale-gettext/compatibility-with-POSIX-module.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/gettext.pm 2005-05-31 20:11:16.000000000 -0700
-+++ b/gettext.pm 2009-10-07 12:39:42.000000000 -0700
-@@ -32,6 +32,7 @@
- =cut
-
- use Carp;
-+use POSIX qw(:locale_h);
-
- require Exporter;
- require DynaLoader;
diff --git a/abs/core/perl_modules/perl-locale-maketext-lexicon/PKGBUILD b/abs/core/perl_modules/perl-locale-maketext-lexicon/PKGBUILD
index 9011337..65bbe42 100644
--- a/abs/core/perl_modules/perl-locale-maketext-lexicon/PKGBUILD
+++ b/abs/core/perl_modules/perl-locale-maketext-lexicon/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 56446 2011-10-07 10:01:16Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Charles Mauch <cmauch@gmail.com>
pkgname=perl-locale-maketext-lexicon
-pkgver=0.91
-pkgrel=1
+pkgver=1.00
+pkgrel=2
pkgdesc="Perl/CPAN Module Locale::Maketext::Lexicon : Use other catalog formats in Maketext"
arch=(any)
depends=(perl)
@@ -12,17 +12,17 @@ url="http://search.cpan.org/dist/Locale-Maketext-Lexicon"
license=("GPL" "PerlArtistic")
options=(!emptydirs)
source=("http://search.cpan.org/CPAN/authors/id/D/DR/DRTECH/Locale-Maketext-Lexicon-$pkgver.tar.gz")
-md5sums=('ead74d03d40c72cd52d4d70771bbd122')
+md5sums=('51acf0cb00cc01a2c8f560d74dd6c593')
build() {
- cd $srcdir/Locale-Maketext-Lexicon-$pkgver
+ cd "$srcdir"/Locale-Maketext-Lexicon-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
}
package() {
- cd $srcdir/Locale-Maketext-Lexicon-$pkgver
- make install DESTDIR=$pkgdir
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+ cd "$srcdir"/Locale-Maketext-Lexicon-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-log-dispatch/PKGBUILD b/abs/core/perl_modules/perl-log-dispatch/PKGBUILD
index bd2aaaf..a55fa02 100644
--- a/abs/core/perl_modules/perl-log-dispatch/PKGBUILD
+++ b/abs/core/perl_modules/perl-log-dispatch/PKGBUILD
@@ -1,23 +1,53 @@
-# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman
-# Contributor: xduugu
+# Maintainer: Brian Bidulock <bidulock@Openss7.org>
+# Contributor: John D Jones III AKA jnbek <jnbek1972 -_AT_- g m a i l -_Dot_- com>
+# Generator : CPANPLUS::Dist::Arch 1.32
-pkgname=perl-log-dispatch
-pkgver=2.32
-pkgrel=1
-pkgdesc="Log messages to multiple outputs"
-arch=('i686' 'x86_64')
-url="http://search.cpan.org/~DROLSKY/Log-Dispatch"
-license=('GPL' 'PerlArtistic')
-depends=('perl-params-validate>=0.15')
+pkgname='perl-log-dispatch'
+pkgver='2.67'
+pkgrel='1'
+pkgdesc="Dispatches messages to one or more outputs"
+arch=('any')
+license=('PerlArtistic' 'GPL')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/D/DR/DROLSKY/Log-Dispatch-$pkgver.tar.gz)
+depends=('perl-devel-globaldestruction' 'perl-dist-checkconflicts>=0.02' 'perl-ipc-run3' 'perl-module-runtime' 'perl-params-validate>=1.03' 'perl>=5.006')
+makedepends=()
+checkdepends=('perl-test-fatal' 'perl-test-needs' 'perl-specio' 'perl-namespace-autoclean'
+ 'perl-eval-closure' 'perl-params-validationcompiler')
+url='https://metacpan.org/release/Log-Dispatch'
+source=("http://search.cpan.org/CPAN/authors/id/D/DR/DROLSKY/Log-Dispatch-${pkgver}.tar.gz")
+md5sums=('d68e256e80ca4e1482b86abf6bcee552')
+sha512sums=('ab03777800fa758a502e69b25669c3e4ae851d9dcf5f2f4d1a21a94cc61aca866ac361d2a5db3d22d19cb4d11da29ecec19935e29fcad40bb831fb27175846d6')
+_distdir="Log-Dispatch-${pkgver}"
build() {
- cd $startdir/src/Log-Dispatch-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make install DESTDIR=$startdir/pkg || return 1
- find $startdir/pkg -name '.packlist' -delete
- find $startdir/pkg -name '*.pod' -delete
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ MODULEBUILDRC=/dev/null
+
+ cd "$srcdir/$_distdir"
+ /usr/bin/perl Makefile.PL
+ make
+ )
+}
+
+check() {
+ cd "$srcdir/$_distdir"
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
+ make test
+ )
}
-md5sums=('4bcb3b0678e327d13f3aec7a8d4915af')
+
+package() {
+ cd "$srcdir/$_distdir"
+ make install
+
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+}
+
+# Local Variables:
+# mode: shell-script
+# sh-basic-offset: 2
+# End:
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-lwp-mediatypes/PKGBUILD b/abs/core/perl_modules/perl-lwp-mediatypes/PKGBUILD
index 625b2bd..f985f72 100644
--- a/abs/core/perl_modules/perl-lwp-mediatypes/PKGBUILD
+++ b/abs/core/perl_modules/perl-lwp-mediatypes/PKGBUILD
@@ -1,49 +1,30 @@
-# Packager: Justin "juster" Davis <jrcd83@gmail.com>
-# $Id: PKGBUILD 150744 2012-02-21 19:28:44Z juster $
+# $Id$
+# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgname=perl-lwp-mediatypes
pkgver=6.02
-pkgrel=1
-pkgdesc="guess media type for a file or a URL"
-arch=(any)
-license=(PerlArtistic GPL)
-options=(!emptydirs)
-depends=('perl>=5.6.2')
-conflicts=('perl-libwww<6')
-url=https://metacpan.org/release/LWP-MediaTypes
-source=("http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/LWP-MediaTypes-${pkgver}.tar.gz")
-md5sums=(8c5f25fb64b974d22aff424476ba13c9)
-sha512sums=(b2ad33fb2c6dd7afaa9b8dd2ed6a15b2ecc35d13bcdf5297ce1632ea77406def0840a24c5213187707b665f28cc9bbea5774bfd1a4070d1f6192e904f707b94e)
-_distdir="${srcdir}/LWP-MediaTypes-${pkgver}"
+pkgrel=4
+pkgdesc="Guess the media type of a file or a URL"
+arch=('any')
+url="https://metacpan.org/release/LWP-MediaTypes"
+depends=('perl')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+source=(http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/LWP-MediaTypes-${pkgver}.tar.gz)
+sha1sums=('f56891f4e718a5f1f16f09ae37d32e454095cbed')
-build()
-(
- export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
- MODULEBUILDRC=/dev/null
-
- cd "$_distdir"
- /usr/bin/perl Makefile.PL
- make
-)
+build() {
+ cd "${srcdir}/LWP-MediaTypes-${pkgver}"
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
-check()
-(
- export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- cd "$_distdir"
- make test
-)
+check() {
+ cd "${srcdir}/LWP-MediaTypes-${pkgver}"
+ make test
+}
package() {
- cd "$_distdir"
- make DESTDIR="$pkgdir" install
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+ cd "${srcdir}/LWP-MediaTypes-${pkgver}"
+ make DESTDIR="$pkgdir" install
}
-
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-lwp-protocol-https/PKGBUILD b/abs/core/perl_modules/perl-lwp-protocol-https/PKGBUILD
new file mode 100644
index 0000000..ac3518e
--- /dev/null
+++ b/abs/core/perl_modules/perl-lwp-protocol-https/PKGBUILD
@@ -0,0 +1,38 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@gmail.com>
+
+pkgname=perl-lwp-protocol-https
+pkgver=6.07
+pkgrel=2
+pkgdesc="Provide https support for LWP::UserAgent"
+arch=('any')
+url="https://metacpan.org/release/LWP-Protocol-https"
+license=('PerlArtistic' 'GPL')
+depends=('ca-certificates' 'perl-io-socket-ssl' 'perl-net-http' 'perl-libwww')
+checkdepends=('perl-test-requiresinternet')
+options=('!emptydirs')
+source=("http://search.cpan.org/CPAN/authors/id/O/OA/OALDERS/LWP-Protocol-https-$pkgver.tar.gz"
+ certs.patch)
+sha512sums=('4a07cd8a1c44e31781069a632a77f3af43747933420e831b4fd4a12faac7dc04f0c6b10ea773c3e14ecb66209a547b3587c0e3f481a55b9929db65f7b10343aa'
+ '7ee0ad7c40f526fb3ba1148f13f2601c11fe68c72b4aaf22b628709c2877b7d49ee6dc1c722bb091b97251d76fceec4a9b39dcf3778d7f19b79fdd8c5754a444')
+
+prepare() {
+ cd LWP-Protocol-https-${pkgver}
+ patch -p1 -i ../certs.patch
+}
+
+build() {
+ cd LWP-Protocol-https-${pkgver}
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd LWP-Protocol-https-${pkgver}
+ make test
+}
+
+package() {
+ cd LWP-Protocol-https-${pkgver}
+ make DESTDIR="$pkgdir" install
+}
diff --git a/abs/core/perl_modules/perl-lwp-protocol-https/certs.patch b/abs/core/perl_modules/perl-lwp-protocol-https/certs.patch
new file mode 100644
index 0000000..a2edc40
--- /dev/null
+++ b/abs/core/perl_modules/perl-lwp-protocol-https/certs.patch
@@ -0,0 +1,43 @@
+diff --git a/Makefile.PL.orig b/Makefile.PL
+index fc8ef4a..26313e2 100644
+--- a/Makefile.PL.orig
++++ b/Makefile.PL
+@@ -26,7 +26,6 @@ my %WriteMakefileArgs = (
+ 'LWP::UserAgent' => '6.06',
+ 'Net::HTTPS' => 6,
+ 'IO::Socket::SSL' => "1.54",
+- 'Mozilla::CA' => "20110101",
+ 'perl' => '5.008001',
+ },
+ },
+diff --git a/lib/LWP/Protocol/https.pm.orig b/lib/LWP/Protocol/https.pm
+index ed4d832..b8667cf 100644
+--- a/lib/LWP/Protocol/https.pm.orig
++++ b/lib/LWP/Protocol/https.pm
+@@ -25,25 +25,7 @@ sub _extra_sock_opts
+ }
+ if ($ssl_opts{SSL_verify_mode}) {
+ unless (exists $ssl_opts{SSL_ca_file} || exists $ssl_opts{SSL_ca_path}) {
+- eval {
+- require Mozilla::CA;
+- };
+- if ($@) {
+- if ($@ =~ /^Can't locate Mozilla\/CA\.pm/) {
+- $@ = <<'EOT';
+-Can't verify SSL peers without knowing which Certificate Authorities to trust
+-
+-This problem can be fixed by either setting the PERL_LWP_SSL_CA_FILE
+-environment variable or by installing the Mozilla::CA module.
+-
+-To disable verification of SSL peers set the PERL_LWP_SSL_VERIFY_HOSTNAME
+-environment variable to 0. If you do this you can't be sure that you
+-communicate with the expected peer.
+-EOT
+- }
+- die $@;
+- }
+- $ssl_opts{SSL_ca_file} = Mozilla::CA::SSL_ca_file();
++ $ssl_opts{SSL_ca_file} = '/etc/ssl/certs/ca-certificates.crt';
+ }
+ }
+ $self->{ssl_opts} = \%ssl_opts;
diff --git a/abs/core/perl_modules/perl-lwp-useragent-determined/PKGBUILD b/abs/core/perl_modules/perl-lwp-useragent-determined/PKGBUILD
new file mode 100644
index 0000000..ced3aec
--- /dev/null
+++ b/abs/core/perl_modules/perl-lwp-useragent-determined/PKGBUILD
@@ -0,0 +1,50 @@
+# Contributor: John D Jones III <j[nospace]n[nospace]b[nospace]e[nospace]k[nospace]1972 -_AT_- the domain name google offers a mail service at ending in dot com>
+# Generator : CPANPLUS::Dist::Arch 1.25
+
+pkgname='perl-lwp-useragent-determined'
+pkgver='1.06'
+pkgrel='1'
+pkgdesc="a virtual browser that retries errors"
+arch=('any')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl-libwww')
+makedepends=()
+url='http://search.cpan.org/dist/LWP-UserAgent-Determined'
+source=('http://search.cpan.org/CPAN/authors/id/J/JE/JESSE/LWP-UserAgent-Determined-1.06.tar.gz')
+md5sums=('3485fe63fba0b3f7d23370f5a31496dc')
+sha512sums=('05c85e923b7e2a643455242da2785743be6a1889200a1a922e81fd882943ad136cd4050d96e24af1b60000e264272e5b1fd04e95e8113923f412494adceb4f66')
+_distdir="LWP-UserAgent-Determined-1.06"
+
+build() {
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ MODULEBUILDRC=/dev/null
+
+ cd "$srcdir/$_distdir"
+ /usr/bin/perl Makefile.PL
+ make
+ )
+}
+
+check() {
+ cd "$srcdir/$_distdir"
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
+ make test
+ )
+}
+
+package() {
+ cd "$srcdir/$_distdir"
+ make install
+
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+}
+
+# Local Variables:
+# mode: shell-script
+# sh-basic-offset: 2
+# End:
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-mailtools/PKGBUILD b/abs/core/perl_modules/perl-mailtools/PKGBUILD
index 117352a..cb7d453 100644
--- a/abs/core/perl_modules/perl-mailtools/PKGBUILD
+++ b/abs/core/perl_modules/perl-mailtools/PKGBUILD
@@ -1,28 +1,30 @@
-# $Id: PKGBUILD 140680 2011-10-18 03:11:21Z eric $
-# Maintainer: Kevin Piche <kevin@archlinux.org>
-# Contributor: Eric Johnson <eric@coding-zone.com>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
pkgname=perl-mailtools
-_realname=MailTools
-pkgver=2.08
+pkgver=2.20
pkgrel=1
-pkgdesc="Perl module that provides email tools"
+pkgdesc="Various e-mail related modules"
arch=('any')
-url="http://search.cpan.org/dist/${_realname}/"
-license=('PerlArtistic')
-depends=('perl>=5.10.0')
+url="https://metacpan.org/release/MailTools"
+license=('PerlArtistic' 'GPL')
+depends=('perl-timedate')
options=('!emptydirs')
-source=(http://search.cpan.org/CPAN/authors/id/M/MA/MARKOV/${_realname}-${pkgver}.tar.gz)
-md5sums=('0245bf7985c6661e0cf31a59657a18f0')
+source=("http://search.cpan.org/CPAN/authors/id/M/MA/MARKOV/MailTools-$pkgver.tar.gz")
+sha512sums=('fb9a330c5b5795d68fc0e5bb6c5f1d7d525e8e1e87996f6fac7120e46bc22897c9f0c23f121866cb10d7ce4ffd9ac979b31602dbec379a8d15e8257a2c725a5e')
build() {
- cd "${srcdir}/${_realname}-${pkgver}"
- # install module in vendor directories.
+ cd MailTools-$pkgver
perl Makefile.PL INSTALLDIRS=vendor
make
}
+check() {
+ cd MailTools-$pkgver
+ make test
+}
+
package() {
- cd "${srcdir}/${_realname}-${pkgver}"
- make install DESTDIR="${pkgdir}"
+ cd MailTools-$pkgver
+ make DESTDIR="$pkgdir" install
}
diff --git a/abs/core/perl_modules/perl-math-round/PKGBUILD b/abs/core/perl_modules/perl-math-round/PKGBUILD
index 2881d28..dfd08b5 100644
--- a/abs/core/perl_modules/perl-math-round/PKGBUILD
+++ b/abs/core/perl_modules/perl-math-round/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 143938 2011-11-30 21:38:22Z giovanni $
+# $Id$
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-math-round
-pkgver=0.06
-pkgrel=5
+pkgver=0.07
+pkgrel=2
pkgdesc="Perl extension for rounding numbers"
arch=('any')
url="http://search.cpan.org/dist/Math-Round"
@@ -12,7 +12,7 @@ license=('GPL' 'PerlArtistic')
depends=('perl')
options=('!emptydirs')
source=("http://www.cpan.org/authors/id/G/GR/GROMMEL/Math-Round-$pkgver.tar.gz")
-md5sums=('552cef2753b246f97a6e20d8dee66e7c')
+md5sums=('b74c5d2a3f891c19dafd7ce638732fd1')
build() {
cd "${srcdir}/Math-Round-${pkgver}"
diff --git a/abs/core/perl_modules/perl-mime-charset/PKGBUILD b/abs/core/perl_modules/perl-mime-charset/PKGBUILD
new file mode 100644
index 0000000..ccbf46a
--- /dev/null
+++ b/abs/core/perl_modules/perl-mime-charset/PKGBUILD
@@ -0,0 +1,40 @@
+# $Id$
+# Maintainer: Rémy Oudompheng <remy@archlinux.org>
+# Contributor: John D Jones III AKA jnbek <jnbek1972 -_AT_- g m a i l -_Dot_- com>
+# Generator : CPANPLUS::Dist::Arch 1.32
+
+pkgname='perl-mime-charset'
+_dist="MIME-Charset"
+pkgver='1.012.2'
+pkgrel=4
+pkgdesc="Charset Information for MIME"
+arch=('any')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl')
+checkdepends=('perl-test-pod')
+url='https://metacpan.org/release/MIME-Charset'
+source=("http://search.cpan.org/CPAN/authors/id/N/NE/NEZUMI/${_dist}-${pkgver}.tar.gz")
+md5sums=('71440416376248c31aa3bef753fae28d')
+sha512sums=('2273bf0b86eb042e5aa8bcf958eefefde7dce6701eea5ae8c0fe9997e7d3e90d837a7791ade30f84536a15116175c796daee60da6625f409d214844dfedfde4d')
+
+build() {
+ cd "${srcdir}/${_dist}-${pkgver}"
+ unset PERL5LIB PERL_MM_OPT PERL_MB_OPT PERL_LOCAL_LIB_ROOT
+ export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL=--skipdeps
+ perl Makefile.PL
+ make
+}
+
+check() {
+ cd "${srcdir}/${_dist}-${pkgver}"
+ unset PERL5LIB PERL_MM_OPT PERL_MB_OPT PERL_LOCAL_LIB_ROOT
+ export PERL_MM_USE_DEFAULT=1
+ make test
+}
+
+package() {
+ cd "${srcdir}/${_dist}-${pkgver}"
+ unset PERL5LIB PERL_MM_OPT PERL_MB_OPT PERL_LOCAL_LIB_ROOT
+ make install INSTALLDIRS=vendor DESTDIR="$pkgdir"
+}
diff --git a/abs/core/perl_modules/perl-mime-lite/PKGBUILD b/abs/core/perl_modules/perl-mime-lite/PKGBUILD
index c0cfe7f..4685a91 100644
--- a/abs/core/perl_modules/perl-mime-lite/PKGBUILD
+++ b/abs/core/perl_modules/perl-mime-lite/PKGBUILD
@@ -1,38 +1,31 @@
-# $Id: PKGBUILD 151298 2012-02-25 13:17:16Z pierre $
+# $Id$
# Maintainer: kevin <kevin@archlinux.org>
# Contributor: Eric Johnson <eric@coding-zone.com>
pkgname=perl-mime-lite
-_realname=MIME-Lite
-pkgver=3.028
-pkgrel=1
+pkgver=3.030
+pkgrel=3
pkgdesc="Perl module that provides lightweight MIME generator"
arch=('any')
+url="http://search.cpan.org/dist/MIME-Lite/"
license=('GPL' 'PerlArtistic')
-url="http://search.cpan.org/dist/${_realname}/"
depends=('perl-email-date-format' 'perl-mailtools' 'perl-mime-types' 'perl')
options=('!emptydirs')
-source=("http://search.cpan.org/CPAN/authors/id/R/RJ/RJBS/${_realname}-${pkgver}.tar.gz")
-md5sums=('b24770b664db269a2a6e984f66c19fa7')
+source=("http://search.cpan.org/CPAN/authors/id/R/RJ/RJBS/MIME-Lite-${pkgver}.tar.gz")
+md5sums=('5a6d90329e049eee77248d667343acc7')
build() {
- cd ${srcdir}/${_realname}-${pkgver}
- # install module in vendor directories.
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ cd MIME-Lite-${pkgver}
+ perl Makefile.PL INSTALLDIRS=vendor
make
}
check() {
- cd ${srcdir}/${_realname}-${pkgver}
+ cd MIME-Lite-${pkgver}
make test
}
package() {
- cd ${srcdir}/${_realname}-${pkgver}
- make install DESTDIR=${pkgdir}
-
- # remove perllocal.pod and .packlist
- find ${pkgdir} -name perllocal.pod -delete
- find ${pkgdir} -name .packlist -delete
+ cd MIME-Lite-${pkgver}
+ make DESTDIR="${pkgdir}" install
}
-# vim: ts=2 sw=2 et ft=sh
diff --git a/abs/core/perl_modules/perl-mime-tools/PKGBUILD b/abs/core/perl_modules/perl-mime-tools/PKGBUILD
index 7ed81bb..d5e74a9 100644
--- a/abs/core/perl_modules/perl-mime-tools/PKGBUILD
+++ b/abs/core/perl_modules/perl-mime-tools/PKGBUILD
@@ -1,15 +1,17 @@
-# $Id: PKGBUILD 161352 2012-06-10 06:11:24Z giovanni $
-# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
+# $Id$
+# Maintainer: Thore Bödecker <foxxx0@archlinux.org>
+# Conntributor: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-mime-tools
-pkgver=5.503
-pkgrel=1
+pkgver=5.509
+pkgrel=5
pkgdesc="Parses streams to create MIME entities"
arch=('any')
-url="http://search.cpan.org/dist/MIME-tools"
+url="https://metacpan.org/pod/MIME::Tools"
license=('GPL' 'PerlArtistic')
depends=('perl-mailtools' 'perl-io-stringy' 'perl-convert-binhex')
+checkdepends=('perl-test-deep')
options=('!emptydirs')
provides=('perl-mime-body=5.428.0' 'perl-mime-decoder' 'perl-mime-decoder-base64'
'perl-mime-decoder-binary' 'perl-mime-decoder-binhex' 'perl-mime-decoder-gzip64'
@@ -18,8 +20,8 @@ provides=('perl-mime-body=5.428.0' 'perl-mime-decoder' 'perl-mime-decoder-base64
'perl-mime-field-conttype=5.428.0' 'perl-mime-field-paramval=5.428.0' 'perl-mime-head=5.428.0'
'perl-mime-parser' 'perl-mime-parser-filer' 'perl-mime-parser-reader'
'perl-mime-parser-results' 'perl-mime-worddecoder' 'perl-mime-words=5.428.0')
-source=("http://www.cpan.org/authors/id/D/DS/DSKOLL/MIME-tools-${pkgver}.tar.gz")
-md5sums=('f86b968e9405318224b7a9f4574505d0')
+source=("https://www.cpan.org/authors/id/D/DS/DSKOLL/MIME-tools-${pkgver}.tar.gz")
+sha512sums=('0407b09916144eafbee0c75758306e0f44c27db0e8aabf033267f9903f676f0415de99927dcfdb69f9e9d4123d63c280f526dff92e0d97744761c888df90667a')
build() {
cd "${srcdir}/MIME-tools-${pkgver}"
@@ -28,10 +30,15 @@ build() {
make
}
+check() {
+ cd "${srcdir}/MIME-tools-${pkgver}"
+ export PERL_MM_USE_DEFAULT=1
+ unset PERL5LIB
+ make test
+}
+
package() {
cd "${srcdir}/MIME-tools-${pkgver}"
- make install DESTDIR="${pkgdir}"
- find ${pkgdir} -name '.packlist' -delete
- find ${pkgdir} -name '*.pod' -delete
+ make install DESTDIR="${pkgdir}"
}
diff --git a/abs/core/perl_modules/perl-mime-types/PKGBUILD b/abs/core/perl_modules/perl-mime-types/PKGBUILD
index b4b4265..361f099 100644
--- a/abs/core/perl_modules/perl-mime-types/PKGBUILD
+++ b/abs/core/perl_modules/perl-mime-types/PKGBUILD
@@ -1,33 +1,32 @@
-# $Id: PKGBUILD 151300 2012-02-25 13:18:30Z pierre $
-# Maintainer: Jan de Groot
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Jan de Groot
# Contributor: Charles Mauch <cmauch@gmail.com>
pkgname=perl-mime-types
-_realname=MIME-Types
-pkgver=1.34
+pkgver=2.17
pkgrel=1
pkgdesc="Perl/CPAN Module MIME::Types : Information and processing MIME types"
arch=('any')
+url="http://search.cpan.org/dist/MIME-Types/"
license=('PerlArtistic')
-url="http://search.cpan.org/dist/${_realname}/"
depends=('perl')
options=('!emptydirs')
-source=("http://www.cpan.org/authors/id/M/MA/MARKOV/${_realname}-${pkgver}.tar.gz")
-md5sums=('87c496480e463c0b7792e7f5429e50d1')
+source=("http://www.cpan.org/authors/id/M/MA/MARKOV/MIME-Types-${pkgver}.tar.gz")
+sha512sums=('a834ddfa70fbaa5688a2a35626c489a48448e273638312609faaa8fbf07ba656254d1f907ba5f25518e93fd62b7b9265eec700c38c8446876dca24e07d8b15c4')
build() {
- cd "${srcdir}/${_realname}-${pkgver}"
- # install module in vendor directories.
+ cd MIME-Types-${pkgver}
perl Makefile.PL INSTALLDIRS=vendor
make
}
check() {
- cd "${srcdir}/${_realname}-${pkgver}"
+ cd MIME-Types-${pkgver}
make test
}
package() {
- cd "${srcdir}/${_realname}-${pkgver}"
- make install DESTDIR="${pkgdir}"
+ cd MIME-Types-${pkgver}
+ make DESTDIR="${pkgdir}" install
}
diff --git a/abs/core/perl_modules/perl-module-build/PKGBUILD b/abs/core/perl_modules/perl-module-build/PKGBUILD
index 96712a7..25c91a8 100644
--- a/abs/core/perl_modules/perl-module-build/PKGBUILD
+++ b/abs/core/perl_modules/perl-module-build/PKGBUILD
@@ -1,18 +1,20 @@
-# $Id: PKGBUILD 166452 2012-09-08 01:51:46Z eric $
-# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
-# Contributor : Alan Young <harleypig@gmail.com>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+# Contributor: Alan Young <harleypig@gmail.com>
pkgname=perl-module-build
-pkgver=0.4003
-pkgrel=1
+pkgver=0.4224
+pkgrel=6
pkgdesc="Build, test, and install Perl modules"
arch=('any')
+url="http://search.cpan.org/dist/Module-Build"
license=('PerlArtistic' 'GPL')
-url='http://search.cpan.org/dist/Module-Build'
-depends=('perl>=5.6.1')
+depends=('perl' 'perl-cpan-meta' 'perl-inc-latest')
+checkdepends=('perl-par-dist' 'perl-archive-zip')
options=('!emptydirs')
source=(http://search.cpan.org/CPAN/authors/id/L/LE/LEONT/Module-Build-$pkgver.tar.gz)
-md5sums=('ed5fe7e023af43b0722639b13ece8d2d')
+sha512sums=('c08e84c542a882aa16a682a81cbb7a4860774a3f6a0ec2e720ba9e9bcea76dab331999fee86bf8b92edc08560d7cef4a7c2dfa4e626ab9b22da965e715af531f')
build() {
cd Module-Build-$pkgver
diff --git a/abs/core/perl_modules/perl-module-implementation/PKGBUILD b/abs/core/perl_modules/perl-module-implementation/PKGBUILD
index 03b2fa5..d58e8b4 100644
--- a/abs/core/perl_modules/perl-module-implementation/PKGBUILD
+++ b/abs/core/perl_modules/perl-module-implementation/PKGBUILD
@@ -3,23 +3,23 @@
# Contributor: 3ED <krzysztof1987 at gmail dot com>
pkgname=perl-module-implementation
-pkgver=0.06
-pkgrel=2
+pkgver=0.09
+pkgrel=3
pkgdesc="Loads one of several alternate underlying implementations for a module"
arch=('any')
license=('PerlArtistic')
options=('!emptydirs')
-depends=('perl-module-runtime>=0.012')
+depends=('perl-module-runtime>=0.012' 'perl-try-tiny')
checkdepends=('perl-test-requires' 'perl-test-fatal')
url="http://search.cpan.org/dist/Module-Implementation/"
source=(http://search.cpan.org/CPAN/authors/id/D/DR/DROLSKY/Module-Implementation-$pkgver.tar.gz)
-md5sums=('748f3540162fc52222d761fab3efb266')
+md5sums=('52e3fe0ca6b1eff0488d59b7aacc0667')
build() {
cd "${srcdir}/Module-Implementation-${pkgver}"
export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL="--skipdeps" \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='"$pkgdir"'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '"$pkgdir"'" \
MODULEBUILDRC=/dev/null
perl Makefile.PL
make
diff --git a/abs/core/perl_modules/perl-module-install/PKGBUILD b/abs/core/perl_modules/perl-module-install/PKGBUILD
new file mode 100644
index 0000000..61b0453
--- /dev/null
+++ b/abs/core/perl_modules/perl-module-install/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: dracorp aka Piotr Rogoza <piotr.r.public at gmail.com>
+
+pkgname=perl-module-install
+pkgver=1.19
+pkgrel=1
+pkgdesc="Module::Install - Standalone, extensible Perl module installer"
+arch=('any')
+url='http://search.cpan.org/dist/Module-Install'
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl-file-remove' 'perl-json' 'perl-module-build' 'perl-module-scandeps' 'perl-par-dist'
+ 'perl-cpan-meta' 'perl-yaml-tiny')
+source=("http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/Module-Install-$pkgver.tar.gz")
+sha512sums=('68a255402c98955cfcb5a8a99555fe511b89d5fccf96ee1c498cab347c8945f3abe53485ea936f7419420d9c7beb52c861516f4cfd299812cebf80eab50fa5ba')
+
+build() {
+ cd Module-Install-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd Module-Install-$pkgver
+ make test
+}
+
+package() {
+ cd Module-Install-$pkgver
+ make install DESTDIR="$pkgdir"
+}
diff --git a/abs/core/perl_modules/perl-module-runtime/PKGBUILD b/abs/core/perl_modules/perl-module-runtime/PKGBUILD
index 974f137..bc49dc6 100644
--- a/abs/core/perl_modules/perl-module-runtime/PKGBUILD
+++ b/abs/core/perl_modules/perl-module-runtime/PKGBUILD
@@ -1,27 +1,27 @@
-# $Id: PKGBUILD 66098 2012-02-23 01:03:59Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
pkgname=perl-module-runtime
-pkgver=0.013
-pkgrel=1
+pkgver=0.014
+pkgrel=4
pkgdesc="runtime module handling"
arch=('any')
url="http://search.cpan.org/dist/Module-Runtime/"
-license=('perl')
-depends=('perl-params-classify')
+license=('GPL' 'PerlArtistic')
+depends=('perl' 'perl-module-build')
options=(!emptydirs)
source=("http://search.cpan.org/CPAN/authors/id/Z/ZE/ZEFRAM/Module-Runtime-$pkgver.tar.gz")
-md5sums=('62b88b1f5f0e975a5d7c80cd46167b97')
+md5sums=('a6597bc25536a30476f0d75b64d35734')
build() {
- cd $srcdir/Module-Runtime-$pkgver
+ cd "$srcdir"/Module-Runtime-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
}
package() {
- cd $srcdir/Module-Runtime-$pkgver
+ cd "$srcdir"/Module-Runtime-$pkgver
make install DESTDIR="${pkgdir}"
- find ${pkgdir} -name perllocal.pod -delete
- find ${pkgdir} -name .packlist -delete
+ find "$pkgdir" -name perllocal.pod -delete
+ find "$pkgdir" -name .packlist -delete
}
diff --git a/abs/core/perl_modules/perl-module-scandeps/PKGBUILD b/abs/core/perl_modules/perl-module-scandeps/PKGBUILD
new file mode 100644
index 0000000..1c193e3
--- /dev/null
+++ b/abs/core/perl_modules/perl-module-scandeps/PKGBUILD
@@ -0,0 +1,33 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: xRemaLx <anton.komolov@gmail.com>
+
+pkgname=perl-module-scandeps
+_pkgname=Module-ScanDeps
+pkgver=1.24
+pkgrel=2
+pkgdesc="Scan file prerequisites"
+arch=('any')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl')
+makedepends=('perl-test-requires')
+url="http://search.cpan.org/dist/Module-ScanDeps"
+source=("http://search.cpan.org/CPAN/authors/id/R/RS/RSCHUPP/Module-ScanDeps-$pkgver.tar.gz")
+sha512sums=('7f3d9821aa863d8ebc78fb5fb3c7172ce133169ec54ed91b90e05ba50654b4bd0282b3a760adfc8b6bd553dda4116dbf51972bb2af94b59f6f04daeba996e889')
+
+build() {
+ cd Module-ScanDeps-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd Module-ScanDeps-$pkgver
+ make test
+}
+
+package() {
+ cd Module-ScanDeps-$pkgver
+ make DESTDIR="$pkgdir" install
+}
diff --git a/abs/core/perl_modules/perl-mro-compat/PKGBUILD b/abs/core/perl_modules/perl-mro-compat/PKGBUILD
new file mode 100644
index 0000000..234ef2e
--- /dev/null
+++ b/abs/core/perl_modules/perl-mro-compat/PKGBUILD
@@ -0,0 +1,47 @@
+# $Id$
+# Maintainer: Sergej Pupykin <arch+pub@sergej.pp.ru>
+pkgname='perl-mro-compat'
+pkgver=0.13
+pkgrel=2
+pkgdesc="mro::* interface compatibility for Perls < 5.9.5"
+arch=('any')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl')
+makedepends=()
+url='http://search.cpan.org/dist/MRO-Compat'
+source=("http://search.cpan.org/CPAN/authors/id/H/HA/HAARG/MRO-Compat-$pkgver.tar.gz")
+sha256sums=('8a2c3b6ccc19328d5579d02a7d91285e2afd85d801f49d423a8eb16f323da4f8')
+
+build() {
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='"$pkgdir"'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '"$pkgdir"'" \
+ PERL_USE_UNSAFE_INC=1 \
+ MODULEBUILDRC=/dev/null
+
+ cd "${srcdir}/MRO-Compat-${pkgver}"
+ /usr/bin/perl Makefile.PL
+ make
+ )
+}
+
+check() {
+ cd "${srcdir}/MRO-Compat-${pkgver}"
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
+ make test
+ )
+}
+
+package() {
+ cd "${srcdir}/MRO-Compat-${pkgver}"
+ make install
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+}
+
+# Local Variables:
+# mode: shell-script
+# sh-basic-offset: 2
+# End:
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-namespace-autoclean/PKGBUILD b/abs/core/perl_modules/perl-namespace-autoclean/PKGBUILD
new file mode 100644
index 0000000..6ec5550
--- /dev/null
+++ b/abs/core/perl_modules/perl-namespace-autoclean/PKGBUILD
@@ -0,0 +1,35 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: John D Jones III AKA jnbek <jnbek1972 -_AT_- g m a i l -_Dot_- com>
+# Generator : CPANPLUS::Dist::Arch 1.32
+
+pkgname=perl-namespace-autoclean
+pkgver=0.28
+pkgrel=3
+pkgdesc="Keep imports out of your namespace"
+arch=('any')
+license=('PerlArtistic' 'GPL')
+url='https://metacpan.org/release/namespace-autoclean'
+depends=('perl-b-hooks-endofscope' 'perl-sub-identify' 'perl-namespace-clean')
+checkdepends=('perl-test-requires' 'perl-moo' 'perl-sub-name' 'perl-mouse')
+options=('!emptydirs')
+source=("http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/namespace-autoclean-$pkgver.tar.gz")
+sha512sums=('2541f69862b334fcfe30059d025668175de1b182a5c8ee8f2619bf1d661c316a38fe2014f274bb23e887cd36959f98abb297154ac8ceb600e2e93cbd4a75e28d')
+
+build() {
+ cd "$srcdir"/namespace-autoclean-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd "$srcdir"/namespace-autoclean-$pkgver
+ make test
+}
+
+package() {
+ cd "$srcdir"/namespace-autoclean-$pkgver
+ make DESTDIR="$pkgdir"/ install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-namespace-clean/PKGBUILD b/abs/core/perl_modules/perl-namespace-clean/PKGBUILD
new file mode 100644
index 0000000..2374be3
--- /dev/null
+++ b/abs/core/perl_modules/perl-namespace-clean/PKGBUILD
@@ -0,0 +1,50 @@
+# $Id$
+# Maintainer: Sergej Pupykin <arch+pub@sergej.pp.ru>
+# Maintainer: Maxwell Pray a.k.a. Synthead <synthead@gmail.com>
+# Contributor: Justin Davis <jrcd83@gmail.com>
+
+_cpanname="namespace-clean"
+pkgname="perl-$_cpanname"
+pkgver=0.27
+pkgrel=3
+pkgdesc="Keep imports and functions out of your namespace"
+arch=("any")
+license=("PerlArtistic" "GPL")
+options=("!emptydirs")
+depends=("perl>=5.5.0" "perl-b-hooks-endofscope>=0.12" "perl-package-stash>=0.23")
+url="http://search.cpan.org/dist/$_cpanname"
+source=("http://search.cpan.org/CPAN/authors/id/R/RI/RIBASUSHI/$_cpanname-$pkgver.tar.gz")
+sha1sums=('a76713df74b2b865ffed31603e1a1fae544c3026')
+
+# Function to change to the working directory and set
+# environment variables to override undesired options.
+prepareEnvironment() {
+ cd "$srcdir/$_cpanname-$pkgver"
+ export \
+ PERL_MM_USE_DEFAULT=1 \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='"$pkgdir"'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '"$pkgdir"'" \
+ MODULEBUILDRC=/dev/null
+}
+sha1sums=('c16ff66b1b4c7e8a507a8c4e4d809d60040e9d33')
+sha1sums=('4aa49b40cbcc7f1ee587dc3d5ec337f77c78fc4b')
+
+build() {
+ prepareEnvironment
+ /usr/bin/perl Makefile.PL
+ make
+}
+
+check() {
+ prepareEnvironment
+ make test
+}
+
+package() {
+ prepareEnvironment
+ make install
+
+ # Remove "perllocal.pod" and ".packlist".
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+}
diff --git a/abs/core/perl_modules/perl-net-http/PKGBUILD b/abs/core/perl_modules/perl-net-http/PKGBUILD
index 89eb246..46596c4 100644
--- a/abs/core/perl_modules/perl-net-http/PKGBUILD
+++ b/abs/core/perl_modules/perl-net-http/PKGBUILD
@@ -1,45 +1,42 @@
-# Packager: Justin "juster" Davis <jrcd83@gmail.com>
-# $Id: PKGBUILD 150758 2012-02-21 20:00:38Z juster $
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Justin "juster" Davis <jrcd83@gmail.com>
pkgname=perl-net-http
-pkgver=6.03
+pkgver=6.18
pkgrel=1
pkgdesc="Low-level HTTP connection (client)"
-arch=(any)
-license=(PerlArtistic GPL)
-options=(!emptydirs)
-depends=('perl>=5.6.2')
+arch=('any')
+url=http://search.cpan.org/dist/Net-HTTP
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl')
+checkdepends=('perl-uri')
conflicts=('perl-libwww<6')
-url=https://metacpan.org/release/Net-HTTP
-source=("http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/Net-HTTP-${pkgver}.tar.gz")
-md5sums=(86957940d96649ca782b686686b82e7b)
-sha512sums=(a9ffbe5a4c6e1633b130549bb292c9dce093436e0d80d3a9b2ac95c3d1f5d16d734388a1d52094cb34194a7b8973bfa24c549cced4fdc42f36ec08876f551a32)
-_distdir="${srcdir}/Net-HTTP-${pkgver}"
+source=("http://cpan.metacpan.org/authors/id/O/OA/OALDERS/Net-HTTP-$pkgver.tar.gz")
+sha512sums=('89cf197c8717fd368a892b0d37efccb7c2aa46ece7851906282f33aa5a2105809fa0b917c56f94d217731568c20e2ff86eb455607d0bc24eb6d093c3fbab185d')
-build()
-(
+build() {
export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ PERL_MM_OPT="INSTALLDIRS=vendor" \
+ PERL_MB_OPT="--installdirs vendor" \
MODULEBUILDRC=/dev/null
- cd "$_distdir"
+ cd Net-HTTP-${pkgver}
/usr/bin/perl Makefile.PL
make
-)
+}
-check()
-(
+check() {
export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- cd "$_distdir"
+ cd Net-HTTP-${pkgver}
make test
-)
+}
package() {
- cd "$_distdir"
+ cd Net-HTTP-${pkgver}
make DESTDIR="$pkgdir" install
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
}
# Local Variables:
diff --git a/abs/core/perl_modules/perl-net-sftp-foreign/Changes b/abs/core/perl_modules/perl-net-sftp-foreign/Changes
index eff2bb0..8012661 100644
--- a/abs/core/perl_modules/perl-net-sftp-foreign/Changes
+++ b/abs/core/perl_modules/perl-net-sftp-foreign/Changes
@@ -1,5 +1,73 @@
Revision history for Net::SFTP::Foreign
+1.77 Nov 5, 2013
+ - release as stable
+ - fix misspellings in error message
+
+1.76_04 Oct 2, 2013
+ - fix 'Use of "goto" to jump into a construct is deprecated'
+ warning (bug report by Brent Bates)
+ - don't force permissions from rput when copy_perm is unset
+
+1.76_03 Aug 26, 2013
+ - fix several spelling errors
+ - add spell checking test
+ - remove pod test from MANIFEST
+ - ensure that pty is not destroyed before main object (bug
+ report by Stephen Wylie) during global destruction
+
+1.76_02 Apr 29, 2013
+ - remove warning happening when best_effort was set, specially
+ visible from Compat module (bug report by emerlyn at
+ PerlMonks)
+
+1.76_01 Apr 26, 2013
+ - protect against callbacks setting $\ (bug report by Thomas
+ Wadley)
+
+1.75 Apr 2, 2013
+ - release as stable
+
+1.74_07 Mar 21, 2013
+ - seek method was returning offset instead of success value
+ (bug report by Paul Kolano).
+
+1.74_06 Mar 12, 2013
+ - disconnect may kill some unrelated process when called
+ repeatly (bug report by Douglas Wilson)
+ - debug was clobbering $!
+
+1.74_05 Feb 5, 2013
+ - error was not being set on timeouts (bug report by Kqfh
+ Jjgrn)
+
+1.74_04 Oct 25, 2012
+ - overwriting rename of a file over itself was broken (bug
+ report by Mike Wilder)
+ - stat and lstat path arguments is now optional and defaults
+ to '.' (bug report by Paul Kolano)
+ - fstat was broken
+ - add git repository and bugtracker into meta files
+
+1.74_03 Sep 21, 2012
+ - put_content was broken (bug report by Caleb Cushing)
+ - document put_content method
+ - add more tests
+
+1.74_02 Jul 11, 2012
+ - rget was dieing when trying to copy remote symbolic links
+ - add support for get method slow-start feature: when file
+ size is unknown don't start asking for $queue_size packets
+ as it slows down the transfer of small files, instead,
+ starting from a queue size of one go gradually increasing it
+ until the stated maximum is reached (bug report by David
+ R. Wagner)
+ - parse supported2 extension
+
+1.74_01
+ - add support for password_prompt (feature request by Douglas
+ Wilson)
+
1.73 May 11, 2012
- password authentication was broken on Solaris (maybe also on
others) due to an incorrect waitpid call (bug report and
@@ -134,6 +202,7 @@ Revision history for Net::SFTP::Foreign
get_symlink options using hashes
- remove operation inside put_symlink was clobbering error and
status from previous symlink call
+ - solve several minor bugs related to autodie handling
- do not die from inside DESTROY methods when autodie is set
- resume feature in get method was broken
- refactor numbered logic inside _inc_numbered sub
diff --git a/abs/core/perl_modules/perl-net-sftp-foreign/PKGBUILD b/abs/core/perl_modules/perl-net-sftp-foreign/PKGBUILD
index 61fb3b8..7fa9937 100644
--- a/abs/core/perl_modules/perl-net-sftp-foreign/PKGBUILD
+++ b/abs/core/perl_modules/perl-net-sftp-foreign/PKGBUILD
@@ -1,20 +1,22 @@
+# Maintainer: "Jameson Pugh <imntreal@gmail.com>"
# Contributor: Alessandro Sagratini <ale_sagra at hotmail dot com>
+
pkgname=perl-net-sftp-foreign
-pkgver=1.73
+pkgver=1.89
pkgrel=1
pkgdesc="Perl SFTP client using the native SSH client application"
-arch=(any)
-url=http://search.cpan.org/~salva/Net-SFTP-Foreign
+arch=('any')
+url='http://search.cpan.org/~salva/Net-SFTP-Foreign'
license=('GPL' 'PerlArtistic')
depends=('perl>=5.10.0')
optdepends=('perl-file-which' 'perl-sort-key')
-options=(!emptydirs)
+options=('!emptydirs')
changelog=Changes
-source=(http://search.cpan.org/CPAN/authors/id/S/SA/SALVA/Net-SFTP-Foreign-$pkgver.tar.gz)
-md5sums=('3de69b9281027e484a30e3efa581981f')
+source=("http://search.cpan.org/CPAN/authors/id/S/SA/SALVA/Net-SFTP-Foreign-${pkgver}.tar.gz")
+sha256sums=('9bd33e130581c1fc3eb6108eaf9056c1507428cace04a572f7afe816d83b08a7')
build() {
- cd "$srcdir/Net-SFTP-Foreign-$pkgver"
+ cd "${srcdir}/Net-SFTP-Foreign-${pkgver}"
# install module in vendor directories.
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
@@ -22,9 +24,11 @@ build() {
}
package() {
- cd "$srcdir/Net-SFTP-Foreign-$pkgver"
+ cd "${srcdir}/Net-SFTP-Foreign-${pkgver}"
make install DESTDIR=${pkgdir} || return 1
# remove perllocal.pod and .packlist
- find "$pkgdir" -name perllocal.pod -delete
- find "$pkgdir" -name .packlist -delete
+ find "${pkgdir}" -name perllocal.pod -delete
+ find "${pkgdir}" -name .packlist -delete
}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-net-smtp-ssl/PKGBUILD b/abs/core/perl_modules/perl-net-smtp-ssl/PKGBUILD
new file mode 100644
index 0000000..443868e
--- /dev/null
+++ b/abs/core/perl_modules/perl-net-smtp-ssl/PKGBUILD
@@ -0,0 +1,27 @@
+# $Id$
+# Maintainer: Chris Brannon <cmbrannon79@gmail.com>
+# Contributor: Abhishek Dasgupta <abhidg@gmail.com>
+
+pkgname=perl-net-smtp-ssl
+pkgver=1.04
+pkgrel=3
+pkgdesc="SSL support for Net::SMTP"
+arch=(any)
+url="http://search.cpan.org/dist/Net-SMTP-SSL/"
+license=('GPL' 'PerlArtistic')
+depends=('perl-io-socket-ssl')
+options=(!emptydirs)
+source=("http://search.cpan.org/CPAN/authors/id/R/RJ/RJBS/Net-SMTP-SSL-$pkgver.tar.gz")
+sha256sums=('7b29c45add19d3d5084b751f7ba89a8e40479a446ce21cfd9cc741e558332a00')
+
+package() {
+ cd "${srcdir}/Net-SMTP-SSL-${pkgver}"
+ # Install module into the vendor directories.
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+ make DESTDIR="$pkgdir" install || return 1
+
+ # Remove .packlist and perllocal.pod files.
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name 'perllocal.pod' -delete
+}
diff --git a/abs/core/perl_modules/perl-net-ssleay/PKGBUILD b/abs/core/perl_modules/perl-net-ssleay/PKGBUILD
index 8476265..a45314a 100644
--- a/abs/core/perl_modules/perl-net-ssleay/PKGBUILD
+++ b/abs/core/perl_modules/perl-net-ssleay/PKGBUILD
@@ -1,38 +1,59 @@
-# $Id: PKGBUILD 160545 2012-06-02 10:28:03Z bluewind $
-# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
+# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org>
+# Contributor: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: Manolis Tzanidakis
pkgname=perl-net-ssleay
_cpanname=Net-SSLeay
-pkgver=1.48
+pkgver=1.85
pkgrel=2
-pkgdesc="Perl extension for using OpenSSL"
-arch=('i686' 'x86_64')
+pkgdesc='Perl extension for using OpenSSL'
+url='https://search.cpan.org/dist/Net-SSLeay/'
+arch=('x86_64')
license=('custom:BSD')
-url="http://search.cpan.org/dist/${_cpanname}/"
depends=('openssl')
-options=(!emptydirs)
+makedepends=('chrpath')
replaces=('net-ssleay')
provides=('net-ssleay')
-source=("http://www.cpan.org/authors/id/M/MI/MIKEM/${_cpanname}-${pkgver}.tar.gz")
-md5sums=('4e10d9da28f26732e37807820bf72af5')
+options=('!emptydirs')
+source=(https://www.cpan.org/authors/id/M/MI/MIKEM/${_cpanname}-${pkgver}.tar.gz)
+sha512sums=('74e0f2f56b707f1ff845c78c1fa7ce26a71b8f943bb99e994d4e065d1f42259fe4cd1a6a17d333459727534158f9541f116dbc8515122380807d9450b0faa26b')
-build() {
- cd ${srcdir}/${_cpanname}-${pkgver}
+prepare() {
+ cd ${_cpanname}-${pkgver}
+ sed -i \
+ -e "/\$opts->{optimize} = '-O2 -g';/d" \
+ inc/Module/Install/PRIVATE/Net/SSLeay.pm
+}
- # install module in vendor directories.
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL -- INSTALLDIRS=vendor
+build() {
+ cd ${_cpanname}-${pkgver}
+ export OPTIMIZE="${CFLAGS}"
+ export OPENSSL_PREFIX=/usr
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
}
+check() {
+ cd ${_cpanname}-${pkgver}
+ make test
+}
+
package() {
- cd ${srcdir}/${_cpanname}-${pkgver}
+ cd ${_cpanname}-${pkgver}
- make install DESTDIR=${pkgdir}
+ make install DESTDIR="${pkgdir}"
+ install -Dm 644 README "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
- # remove perllocal.pod and .packlist
- find ${pkgdir} -name perllocal.pod -delete
- find ${pkgdir} -name .packlist -delete
+ # strip rpath
+ find "${pkgdir}" -name '*.so' -exec chrpath -d '{}' \;
- install -D -m644 README "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ # template start; name=perl-binary-module-dependency; version=1;
+ if [[ $(find "${pkgdir}/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=${_perlver_min}" "perl<${_perlver_max}")
+ fi
+ # template end;
}
+
+# vim: ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-net-upnp/PKGBUILD b/abs/core/perl_modules/perl-net-upnp/PKGBUILD
index 9d2945e..894d2a8 100644
--- a/abs/core/perl_modules/perl-net-upnp/PKGBUILD
+++ b/abs/core/perl_modules/perl-net-upnp/PKGBUILD
@@ -1,18 +1,18 @@
-# $Id: PKGBUILD 143946 2011-11-30 21:55:00Z giovanni $
+# $Id: PKGBUILD 310007 2017-11-15 14:11:34Z foutrelis $
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: Drew Gilbert <gilbert dot drew at gmail dot com>
pkgname=perl-net-upnp
-pkgver=1.4.2
-pkgrel=4
+pkgver=1.4.3
+pkgrel=3
pkgdesc="Perl Module UPnP"
-arch=('i686' 'x86_64')
-url="http://search.cpan.org/~skonno/Net-UPnP-1.4.2/"
+arch=('x86_64')
+url="http://search.cpan.org/~skonno/Net-UPnP-1.4.3/"
license=('BSD' 'PerlArtistic')
options=('!emptydirs')
source=("http://search.cpan.org/CPAN/authors/id/S/SK/SKONNO/Net-UPnP-${pkgver}.tar.gz")
depends=('perl')
-md5sums=('bc009fd76b565df40a70aca49af82a7d')
+md5sums=('a30d7cc54290946aeb028650cfdc9279')
build() {
cd "${srcdir}/Net-UPnP-${pkgver}"
@@ -22,11 +22,17 @@ build() {
make
}
-package() {
+check() {
cd "${srcdir}/Net-UPnP-${pkgver}"
- make install DESTDIR="${pkgdir}"
+ make test
+}
+
+package() {
+ cd "${srcdir}/Net-UPnP-${pkgver}"
- find ${pkgdir} -name '.packlist' -delete
- find ${pkgdir} -name '*.pod' -delete
+ make install DESTDIR="${pkgdir}"
+
+ # install license file
+ install -Dm644 "README" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
diff --git a/abs/core/perl_modules/perl-package-deprecationmanager/PKGBUILD b/abs/core/perl_modules/perl-package-deprecationmanager/PKGBUILD
index ae69247..9907a06 100644
--- a/abs/core/perl_modules/perl-package-deprecationmanager/PKGBUILD
+++ b/abs/core/perl_modules/perl-package-deprecationmanager/PKGBUILD
@@ -1,47 +1,34 @@
-# Maintainer: Justin Davis (juster) <jrcd83@gmail.com>
-# $Id: PKGBUILD 71653 2012-05-31 15:45:01Z juster $
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Jonathan Steel <jsteel@aur.archlinux.org>
+# Contributor: Justin Davis (juster) <jrcd83@gmail.com>
pkgname=perl-package-deprecationmanager
-pkgver=0.13
-pkgrel=1
-pkgdesc='Manage deprecation warnings for your distribution'
-arch=(any)
-license=(PerlArtistic GPL)
-options=(!emptydirs)
-depends=(perl-list-moreutils perl-params-util perl-sub-install)
-checkdepends=(perl-test-fatal perl-test-requires)
-url=https://metacpan.org/release/Package-DeprecationManager
-source=("http://search.cpan.org/CPAN/authors/id/D/DR/DROLSKY/Package-DeprecationManager-$pkgver.tar.gz")
-md5sums=(f81ae3c0f9bcac048eb4bff348b79f67)
-sha512sums=(393841bc8a6a96dfc3ce9e2787d532f0e5ba45ef07a8d95be4450ad399b0ae3c4929f8abf07892194fca85c7de75c118a5b611a816b565a7945e34ebca36c4a8)
-_dir="$srcdir/Package-DeprecationManager-$pkgver"
+pkgver=0.17
+pkgrel=3
+pkgdesc="Manage deprecation warnings for your distribution"
+arch=('any')
+license=('Artistic2.0')
+depends=('perl-params-util' 'perl-sub-install' 'perl-sub-name' 'perl-package-stash'
+ 'perl-module-implementation' 'perl-namespace-autoclean')
+checkdepends=('perl-test-fatal' 'perl-test-warnings')
+options=('!emptydirs')
+url="https://metacpan.org/release/Package-DeprecationManager"
+source=(http://search.cpan.org/CPAN/authors/id/D/DR/DROLSKY/Package-DeprecationManager-$pkgver.tar.gz)
+md5sums=('7b46e92aaae3047ede3c67c1714ab88e')
-build()
-(
- cd "$_dir"
- export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL=--skipdeps
- unset PERL5LIB PERL_MM_OPT
- /usr/bin/perl Makefile.PL
+build() {
+ cd "$srcdir"/Package-DeprecationManager-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
make
-)
+}
-check()
-(
- cd "$_dir"
- export PERL_MM_USE_DEFAULT=1
- unset PERL5LIB
+check() {
+ cd "$srcdir"/Package-DeprecationManager-$pkgver
make test
-)
+}
-package()
-(
- cd "$_dir"
- make install INSTALLDIRS=vendor DESTDIR="$pkgdir"
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
-)
-
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
+package() {
+ cd "$srcdir"/Package-DeprecationManager-$pkgver
+ make install DESTDIR="$pkgdir"
+}
diff --git a/abs/core/perl_modules/perl-package-stash-xs/PKGBUILD b/abs/core/perl_modules/perl-package-stash-xs/PKGBUILD
index ee83389..9b0a708 100644
--- a/abs/core/perl_modules/perl-package-stash-xs/PKGBUILD
+++ b/abs/core/perl_modules/perl-package-stash-xs/PKGBUILD
@@ -1,50 +1,53 @@
-# Maintainer: Justin Davis <jrcd83@gmail.com>
-# $Id: PKGBUILD 71819 2012-06-02 10:31:46Z bluewind $
+# $Id$
+# Maintainer: Jonathan Steel <jsteel at aur.archlinux.org>
+# Contributor: Justin Davis <jrcd83@gmail.com>
pkgname=perl-package-stash-xs
-pkgver=0.25
-pkgrel=2
-pkgdesc="faster and more correct implementation of the Package::Stash API"
-arch=(i686 x86_64)
-license=(PerlArtistic GPL)
-options=(!emptydirs)
-depends=('perl>=5.8.1')
-makedepends=('perl-extutils-makemaker>=6.30')
-checkdepends=('perl-test-fatal' 'perl-test-simple')
-url=https://metacpan.org/release/Package-Stash-XS
-source=("http://search.cpan.org/CPAN/authors/id/D/DO/DOY/Package-Stash-XS-${pkgver}.tar.gz")
-md5sums=(52ece18842c46da8fb7a4a14dea910ab)
-sha512sums=(2b539d9ba1a68c5ba681e9eabbcde4b396f66dc8dbd3b1e333286ea7ce39b93b97ec4bd97c31681720a925553b128371ce2c48f11254806aebd5de868a22b528)
-_distdir="${srcdir}/Package-Stash-XS-${pkgver}"
+pkgver=0.28
+pkgrel=7
+pkgdesc="Faster and more correct implementation of the Package::Stash API"
+arch=('x86_64')
+url="http://search.cpan.org/dist/Package-Stash-XS"
+license=('PerlArtistic' 'GPL')
+depends=('perl')
+makedepends=('perl-extutils-makemaker')
+checkdepends=('perl-test-fatal' 'perl-test-requires')
+options=('!emptydirs')
+source=(http://search.cpan.org/CPAN/authors/id/D/DO/DOY/Package-Stash-XS-$pkgver.tar.gz)
+md5sums=('9664356ec3be02626cbd3081ec246b70')
build() {
( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ PERL_MM_OPT="INSTALLDIRS=vendor" \
+ PERL_MB_OPT="--installdirs vendor" \
MODULEBUILDRC=/dev/null
- cd "$_distdir"
+ cd Package-Stash-XS-${pkgver}
+
/usr/bin/perl Makefile.PL
+
make
)
}
check() {
( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- cd "$_distdir"
+ cd Package-Stash-XS-${pkgver}
+
make test
)
}
package() {
- cd "$_distdir"
- make DESTDIR="$pkgdir" install
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
-}
+ cd Package-Stash-XS-${pkgver}
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
+ make DESTDIR="$pkgdir"/ install
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
+}
diff --git a/abs/core/perl_modules/perl-package-stash/PKGBUILD b/abs/core/perl_modules/perl-package-stash/PKGBUILD
index b985727..c50f3a9 100644
--- a/abs/core/perl_modules/perl-package-stash/PKGBUILD
+++ b/abs/core/perl_modules/perl-package-stash/PKGBUILD
@@ -1,52 +1,33 @@
-# Maintainer: Justin Davis <jrcd83@gmail.com>
-# $Id: PKGBUILD 57663 2011-11-01 00:48:37Z juster $
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Jonathan Steel <jsteel@aur.archlinux.org>
+# Contributor: Justin Davis <jrcd83@gmail.com>
pkgname=perl-package-stash
-pkgver=0.33
-pkgrel=2
-pkgdesc="routines for manipulating stashes"
-arch=(any)
-license=(PerlArtistic GPL)
-options=(!emptydirs)
-depends=('perl>=5.8.1' 'perl-dist-checkconflicts>=0.02'
- 'perl-package-deprecationmanager' 'perl-scalar-list-utils'
- 'perl-package-stash-xs>=0.24')
-makedepends=('perl-extutils-makemaker>=6.30')
-checkdepends=('perl-test-fatal' 'perl-test-requires' 'perl-test-simple')
-url=https://metacpan.org/release/Package-Stash
-source=("http://search.cpan.org/CPAN/authors/id/D/DO/DOY/Package-Stash-${pkgver}.tar.gz")
-md5sums=(fe1f6efa0dbd46f8520903b436f185f1)
-sha512sums=(8b3e62caa7ac99f1429d4ab4c3a00265a8ca2aa6281c5c254c4fb455d8a262c445a1daafa405208f902fd352e18ef121a37303ceb27caabb0bdc3c14b807508b)
-_distdir="${srcdir}/Package-Stash-${pkgver}"
+pkgver=0.37
+pkgrel=4
+pkgdesc="Routines for manipulating stashes"
+arch=('any')
+url="http://search.cpan.org/dist/Package-Stash"
+license=('PerlArtistic' 'GPL')
+depends=('perl-dist-checkconflicts' 'perl-package-stash-xs' 'perl-module-implementation')
+checkdepends=('perl-test-fatal' 'perl-test-requires')
+options=('!emptydirs')
+source=(http://search.cpan.org/CPAN/authors/id/D/DO/DOY/Package-Stash-$pkgver.tar.gz)
+sha1sums=('43fc4e362ac1a45eb27fe779806cbd96c891e2dc')
build() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
- MODULEBUILDRC=/dev/null
-
- cd "$_distdir"
- /usr/bin/perl Makefile.PL
- make
- )
+ cd Package-Stash-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
}
check() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- cd "$_distdir"
- make test
- )
+ cd Package-Stash-$pkgver
+ make test
}
package() {
- cd "$_distdir"
- make DESTDIR="$pkgdir" install
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+ cd Package-Stash-$pkgver
+ make DESTDIR="$pkgdir" install
}
-
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-par-dist/PKGBUILD b/abs/core/perl_modules/perl-par-dist/PKGBUILD
new file mode 100644
index 0000000..9034e91
--- /dev/null
+++ b/abs/core/perl_modules/perl-par-dist/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: TDY <tdy@gmx.com>
+# Contributor: François Charette <firmicus ατ gmx δοτ net>
+
+pkgname=perl-par-dist
+pkgver=0.49
+pkgrel=3
+pkgdesc="Perl bindings to create and manipulate PAR distributions"
+arch=('any')
+url="http://search.cpan.org/dist/PAR-Dist/"
+license=('GPL' 'PerlArtistic')
+depends=('perl')
+options=('!emptydirs')
+source=("http://search.cpan.org/CPAN/authors/id/R/RS/RSCHUPP/PAR-Dist-$pkgver.tar.gz")
+md5sums=('bd852113974544f3c8c107ab4055cf8c')
+
+build() {
+ cd "$srcdir/PAR-Dist-$pkgver"
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd "$srcdir/PAR-Dist-$pkgver"
+ make test
+}
+
+package() {
+ cd "$srcdir/PAR-Dist-$pkgver"
+ make install DESTDIR="$pkgdir"
+}
diff --git a/abs/core/perl_modules/perl-params-classify/PKGBUILD b/abs/core/perl_modules/perl-params-classify/PKGBUILD
index d0dae4a..caa6278 100644
--- a/abs/core/perl_modules/perl-params-classify/PKGBUILD
+++ b/abs/core/perl_modules/perl-params-classify/PKGBUILD
@@ -1,23 +1,43 @@
-# $Id: PKGBUILD 71821 2012-06-02 10:31:50Z bluewind $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
pkgname=perl-params-classify
pkgver=0.013
-pkgrel=2
+pkgrel=10
pkgdesc="argument type classification"
-arch=(i686 x86_64)
+arch=(x86_64)
license=('PerlArtistic')
url="http://search.cpan.org/~zefram/Params-Classify"
options=(!emptydirs)
-depends=('perl>=5.10.1')
-source=("http://search.cpan.org/CPAN/authors/id/Z/ZE/ZEFRAM/Params-Classify-$pkgver.tar.gz")
-md5sums=('63d24fbec775472ada49d16bce4a9b1f')
+depends=('perl')
+makedepends=('perl-module-build')
+source=("http://search.cpan.org/CPAN/authors/id/Z/ZE/ZEFRAM/Params-Classify-$pkgver.tar.gz"
+ 'op-sibling-fixes.patch')
+md5sums=('63d24fbec775472ada49d16bce4a9b1f'
+ '6a115714a269b34decf42fc445a2d0e0')
+
+prepare() {
+ cd "$srcdir"/Params-Classify-$pkgver
+ # https://rt.cpan.org/Public/Bug/Display.html?id=114490
+ patch -Np1 -i ../op-sibling-fixes.patch
+}
build() {
- cd $srcdir/Params-Classify-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
- make
- make install DESTDIR=${pkgdir}
- find ${pkgdir} -name perllocal.pod -delete
- find ${pkgdir} -name .packlist -delete
+ cd "$srcdir"/Params-Classify-$pkgver
+ perl Build.PL installdirs=vendor destdir="$pkgdir/"
+ perl Build
+}
+
+package() {
+ cd "$srcdir"/Params-Classify-$pkgver
+ perl Build install
+ find "$pkgdir" -name perllocal.pod -delete
+ find "$pkgdir" -name .packlist -delete
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
diff --git a/abs/core/perl_modules/perl-params-classify/op-sibling-fixes.patch b/abs/core/perl_modules/perl-params-classify/op-sibling-fixes.patch
new file mode 100644
index 0000000..98dd25e
--- /dev/null
+++ b/abs/core/perl_modules/perl-params-classify/op-sibling-fixes.patch
@@ -0,0 +1,79 @@
+--- Params-Classify-0.013a/lib/Params/Classify.xs 2010-11-16 15:35:47.000000000 -0500
++++ Params-Classify-0.013b/lib/Params/Classify.xs 2017-03-26 15:38:12.384693301 -0400
+@@ -41,6 +41,26 @@
+ # define FPTR2DPTR(t,x) ((t)(UV)(x))
+ #endif /* !FPTR2DPTR */
+
++#ifndef OpHAS_SIBLING
++# define OpHAS_SIBLING(o) (cBOOL((o)->op_sibling))
++#endif
++
++#ifndef OpSIBLING
++# define OpSIBLING(o) (0 + (o)->op_sibling)
++#endif
++
++#ifndef OpMORESIB_set
++# define OpMORESIB_set(o, sib) ((o)->op_sibling = (sib))
++#endif
++
++#ifndef OpLASTSIB_set
++# define OpLASTSIB_set(o, parent) ((o)->op_sibling = NULL)
++#endif
++
++#ifndef OpMAYBESIB_set
++# define OpMAYBESIB_set(o, sib, parent) ((o)->op_sibling = (sib))
++#endif
++
+ #ifndef ptr_table_new
+
+ struct q_ptr_tbl_ent {
+@@ -625,8 +645,8 @@
+ OP *(*ppfunc)(pTHX);
+ I32 cvflags;
+ pushop = cUNOPx(op)->op_first;
+- if(!pushop->op_sibling) pushop = cUNOPx(pushop)->op_first;
+- for(cvop = pushop; cvop->op_sibling; cvop = cvop->op_sibling) ;
++ if(!OpHAS_SIBLING(pushop)) pushop = cUNOPx(pushop)->op_first;
++ for(cvop = pushop; OpHAS_SIBLING(cvop); cvop = OpSIBLING(cvop)) ;
+ if(!(cvop->op_type == OP_RV2CV &&
+ !(cvop->op_private & OPpENTERSUB_AMPER) &&
+ (cv = rvop_cv(cUNOPx(cvop)->op_first)) &&
+@@ -635,20 +655,20 @@
+ return nxck_entersub(aTHX_ op);
+ cvflags = CvXSUBANY(cv).any_i32;
+ op = nxck_entersub(aTHX_ op); /* for prototype checking */
+- aop = pushop->op_sibling;
+- bop = aop->op_sibling;
++ aop = OpSIBLING(pushop);
++ bop = OpSIBLING(aop);
+ if(bop == cvop) {
+ if(!(cvflags & PC_ALLOW_UNARY)) return op;
+ unary:
+- pushop->op_sibling = bop;
+- aop->op_sibling = NULL;
++ OpLASTSIB_set(pushop, bop);
++ OpLASTSIB_set(aop, NULL);
+ op_free(op);
+ op = newUNOP(OP_NULL, 0, aop);
+ op->op_type = OP_RAND;
+ op->op_ppaddr = ppfunc;
+ op->op_private = (U8)cvflags;
+ return op;
+- } else if(bop && bop->op_sibling == cvop) {
++ } else if(bop && OpSIBLING(op) == cvop) {
+ if(!(cvflags & PC_ALLOW_BINARY)) return op;
+ if(ppfunc == THX_pp_check_sclass &&
+ (cvflags & PC_TYPE_MASK) == SCLASS_REF) {
+@@ -667,9 +687,9 @@
+ cvflags &= ~PC_TYPE_MASK;
+ ppfunc = THX_pp_check_dyn_battr;
+ }
+- pushop->op_sibling = cvop;
+- aop->op_sibling = NULL;
+- bop->op_sibling = NULL;
++ OpLASTSIB_set(pushop, cvop);
++ OpLASTSIB_set(aop, NULL);
++ OpLASTSIB_set(bop, NULL);
+ op_free(op);
+ op = newBINOP(OP_NULL, 0, aop, bop);
+ op->op_type = OP_RAND;
diff --git a/abs/core/perl_modules/perl-params-util/PKGBUILD b/abs/core/perl_modules/perl-params-util/PKGBUILD
index 415ad58..0b17b67 100644
--- a/abs/core/perl_modules/perl-params-util/PKGBUILD
+++ b/abs/core/perl_modules/perl-params-util/PKGBUILD
@@ -1,43 +1,46 @@
-# Maintainer: Justin Davis (juster) <jrcd83@gmail.com>
-# $Id: PKGBUILD 72466 2012-06-15 00:05:46Z juster $
+# $Id$
+# Maintainer: Jonathan Steel <jsteel at aur.archlinux.org>
+# Contributor: Justin Davis (juster) <jrcd83@gmail.com>
pkgname=perl-params-util
pkgver=1.07
-pkgrel=1
+pkgrel=8
pkgdesc='Simple, compact and correct param-checking functions'
-arch=(i686 x86_64)
-license=(PerlArtistic GPL)
-options=(!emptydirs)
-depends=('perl>=5.5.30')
-url=https://metacpan.org/release/Params-Util
+arch=('x86_64')
+url="https://metacpan.org/release/Params-Util"
+license=('PerlArtistic' 'GPL')
+depends=('perl')
+options=('!emptydirs')
source=("http://search.cpan.org/CPAN/authors/id/A/AD/ADAMK/Params-Util-$pkgver.tar.gz")
-md5sums=(02db120c0eef87aae1830cc62bdec37b)
-sha512sums=(ff471b01b33414fc5e1c68d97c21171a95d3418c33e3c45f9910cc768898690e35051506a83ad9403a200336654c14b8efc9d471c4b3fe3321047a7603d6fd56)
-_dir="$srcdir/Params-Util-$pkgver"
+sha256sums=('30f1ec3f2cf9ff66ae96f973333f23c5f558915bb6266881eac7423f52d7c76c')
-build()
-(
- cd "$_dir"
+build() {
+ cd "$srcdir/Params-Util-$pkgver"
export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL=--skipdeps
unset PERL5LIB PERL_MM_OPT
/usr/bin/perl Makefile.PL
make
-)
+}
-check()
-(
- cd "$_dir"
+check() {
+ cd "$srcdir/Params-Util-$pkgver"
export PERL_MM_USE_DEFAULT=1
unset PERL5LIB
make test
-)
+}
-package()
-(
- cd "$_dir"
+package() {
+ cd "$srcdir/Params-Util-$pkgver"
make install INSTALLDIRS=vendor DESTDIR="$pkgdir"
find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
-)
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
+}
# Local Variables:
# mode: shell-script
diff --git a/abs/core/perl_modules/perl-params-validate/PKGBUILD b/abs/core/perl_modules/perl-params-validate/PKGBUILD
index b14f42d..accfb83 100644
--- a/abs/core/perl_modules/perl-params-validate/PKGBUILD
+++ b/abs/core/perl_modules/perl-params-validate/PKGBUILD
@@ -1,27 +1,35 @@
-# $Id: PKGBUILD 71825 2012-06-02 10:31:58Z bluewind $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-params-validate
-pkgver=1.06
-pkgrel=3
+pkgver=1.29
+pkgrel=1
pkgdesc="Validate sub params against a spec"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://search.cpan.org/dist/Params-Validate"
license=('GPL' 'PerlArtistic')
depends=('perl' 'perl-module-implementation')
+makedepends=('perl-module-build')
options=('!emptydirs')
-source=("http://www.cpan.org/authors/id/D/DR/DROLSKY/Params-Validate-${pkgver}.tar.gz")
-md5sums=('4f7a281269cd30d7c3994ba5acb50857')
+source=("https://www.cpan.org/authors/id/D/DR/DROLSKY/Params-Validate-${pkgver}.tar.gz")
+sha256sums=('49a68dfb430bea028042479111d19068e08095e5a467e320b7ab7bde3d729733')
build() {
cd Params-Validate-${pkgver}
perl ./Build.PL --installdirs=vendor
./Build
}
-package(){
+package() {
cd Params-Validate-${pkgver}
- ./Build install --destdir=${pkgdir}
- find ${pkgdir} -name '.packlist' -delete
- find ${pkgdir} -name '*.pod' -delete
+ ./Build install --destdir="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
diff --git a/abs/core/perl_modules/perl-parse-recdescent/PKGBUILD b/abs/core/perl_modules/perl-parse-recdescent/PKGBUILD
index ab2ae40..386339d 100644
--- a/abs/core/perl_modules/perl-parse-recdescent/PKGBUILD
+++ b/abs/core/perl_modules/perl-parse-recdescent/PKGBUILD
@@ -1,29 +1,31 @@
-# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-parse-recdescent
-pkgver=1.965001
+pkgver=1.967015
pkgrel=1
pkgdesc="Recursive descent parser generator"
arch=(any)
url="http://search.cpan.org/dist/Parse-RecDescent"
license=('GPL' 'PerlArtistic')
depends=('perl>=5.10.0')
+makedepends=('perl-module-build')
options=('!emptydirs')
LC_NUMERIC=C
provides=("perl-parse-recdescent=`printf %.6f ${pkgver}`")
-source=(http://www.cpan.org/authors/id/D/DC/DCONWAY/Parse-RecDescent-$pkgver.tar.gz)
-md5sums=('e91351ad179a3843fbe8e521b135acaf')
+source=(http://search.cpan.org/CPAN/authors/id/J/JT/JTBRAUN/Parse-RecDescent-$pkgver.tar.gz)
+sha256sums=('1943336a4cb54f1788a733f0827c0c55db4310d5eae15e542639c9dd85656e37')
build() {
- cd $srcdir/Parse-RecDescent-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
+ cd "$srcdir"/Parse-RecDescent-$pkgver
+ perl Build.PL installdirs=vendor destdir="$pkgdir/"
+ perl Build
}
+
package() {
- cd $srcdir/Parse-RecDescent-$pkgver
- make install DESTDIR=$pkgdir || return 1
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+ cd "$srcdir"/Parse-RecDescent-$pkgver
+ perl Build install
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
-
diff --git a/abs/core/perl_modules/perl-parse-yapp/PKGBUILD b/abs/core/perl_modules/perl-parse-yapp/PKGBUILD
new file mode 100644
index 0000000..8abf85f
--- /dev/null
+++ b/abs/core/perl_modules/perl-parse-yapp/PKGBUILD
@@ -0,0 +1,27 @@
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Maintainer: Charles Mauch <cmauch@gmail.com>
+
+pkgname=perl-parse-yapp
+pkgver=1.05
+pkgrel=9
+pkgdesc="Perl/CPAN Module Parse::Yapp : Generates OO LALR parser modules"
+arch=("any")
+url="http://search.cpan.org/dist/Parse-Yapp"
+license=("GPL" "PerlArtistic")
+depends=('perl')
+source=("https://www.cpan.org/authors/id/F/FD/FDESAR/Parse-Yapp-$pkgver.tar.gz")
+sha256sums=('228a6cfb483ade811720bb77647900ef359dfc3e071359eb73d39e4a1cc6f22b')
+
+build() {
+ cd "$srcdir"/Parse-Yapp-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+package() {
+ cd "$srcdir"/Parse-Yapp-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
+}
diff --git a/abs/core/perl_modules/perl-path-class/PKGBUILD b/abs/core/perl_modules/perl-path-class/PKGBUILD
new file mode 100644
index 0000000..abf211e
--- /dev/null
+++ b/abs/core/perl_modules/perl-path-class/PKGBUILD
@@ -0,0 +1,49 @@
+# Packager: Justin "juster" Davis <jrcd83@gmail.com>
+# $Id$
+
+pkgname=perl-path-class
+pkgver=0.37
+pkgrel=4
+pkgdesc="Cross-platform path specification manipulation"
+arch=(any)
+license=(PerlArtistic GPL)
+options=(!emptydirs)
+depends=('perl')
+makedepends=('perl-module-build')
+url="http://search.cpan.org/dist/Path-Class"
+source=("http://search.cpan.org/CPAN/authors/id/K/KW/KWILLIAMS/Path-Class-${pkgver}.tar.gz")
+md5sums=('13e6db714f6d5a0e62ca1c4a7fc4d0f3')
+
+build()
+(
+ export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor" \
+ PERL_MB_OPT="--installdirs vendor" \
+ MODULEBUILDRC=/dev/null
+
+ cd Path-Class-${pkgver}
+ /usr/bin/perl Build.PL
+ ./Build
+)
+
+check()
+(
+ export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
+ cd Path-Class-${pkgver}
+ ./Build test
+)
+
+package() {
+ export PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='"$pkgdir"'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '"$pkgdir"'"
+
+ cd Path-Class-${pkgver}
+ ./Build install
+}
+
+# Local Variables:
+# mode: shell-script
+# sh-basic-offset: 2
+# End:
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-perl4-corelibs/PKGBUILD b/abs/core/perl_modules/perl-perl4-corelibs/PKGBUILD
new file mode 100644
index 0000000..f96e190
--- /dev/null
+++ b/abs/core/perl_modules/perl-perl4-corelibs/PKGBUILD
@@ -0,0 +1,31 @@
+# $Id$
+# Maintainer:
+
+pkgname=perl-perl4-corelibs
+pkgver=0.004
+pkgrel=3
+pkgdesc="Libraries historically supplied with Perl 4"
+arch=('any')
+url="https://metacpan.org/release/Perl4-CoreLibs"
+license=('PerlArtistic' 'GPL')
+depends=('perl')
+makedepends=('perl-module-build')
+options=('!emptydirs')
+source=("http://search.cpan.org/CPAN/authors/id/Z/ZE/ZEFRAM/Perl4-CoreLibs-$pkgver.tar.gz")
+sha512sums=('71083f1640e95559ee4bc5a7f1bbe6beacec048a073e211ab7f6ee4de26463f6ae3d87e99e00a41ea8f2f93a5e96367bafe907ef3367e400de35123c22eb7b88')
+
+build() {
+ cd Perl4-CoreLibs-$pkgver
+ perl Build.PL
+ ./Build
+}
+
+check() {
+ cd Perl4-CoreLibs-$pkgver
+ ./Build test
+}
+
+package() {
+ cd Perl4-CoreLibs-$pkgver
+ ./Build install installdirs=vendor destdir="$pkgdir"
+}
diff --git a/abs/core/perl_modules/perl-php-serialization/PKGBUILD b/abs/core/perl_modules/perl-php-serialization/PKGBUILD
index 428ee8e..d395dc9 100644
--- a/abs/core/perl_modules/perl-php-serialization/PKGBUILD
+++ b/abs/core/perl_modules/perl-php-serialization/PKGBUILD
@@ -1,30 +1,50 @@
-# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman
-# Contributor: Ross melin <rdmelin@gmail.com>
+# Contributor: John D Jones III <j[nospace]n[nospace]b[nospace]e[nospace]k[nospace]1972 -_AT_- the domain name google offers a mail service at ending in dot com>
+# Generator : CPANPLUS::Dist::Arch 1.25
-# Required by zoneminder
-
-pkgname=perl-php-serialization
-pkgver=0.27
-pkgrel=2
-pkgdesc="PHP::Serialization"
-arch=('i686' 'x86_64')
-url="http://search.cpan.org/~php-serialization/PHP-Serialization"
-license=('GPL' 'PerlArtistic')
-depends=('perl')
+pkgname='perl-php-serialization'
+pkgver='0.34'
+pkgrel='1'
+pkgdesc="simple flexible means of converting the output of PHP's serialize() into the equivalent Perl memory structure, and vice versa."
+arch=('any')
+license=('PerlArtistic' 'GPL')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/J/JB/JBROWN/php-serialization/PHP-Serialization-$pkgver.tar.gz)
-md5sums=('2fb3f63071c5c2119b4eebe39b329684')
+depends=('perl')
+makedepends=()
+url='http://search.cpan.org/dist/PHP-Serialization'
+source=('http://search.cpan.org/CPAN/authors/id/B/BO/BOBTFISH/PHP-Serialization-0.34.tar.gz')
+md5sums=('333af0848ad79931875a35cc61dc22e0')
+sha512sums=('72218973f21ab71419751cf818e6bd998235aa74bf8ae60ec4a6080ba169d0d7fcefde4f433ce3f6f30ed3084a651deb8aa3a5dd818fc6ebf3fb6188def4efe7')
+_distdir="PHP-Serialization-0.34"
build() {
- cd $startdir/src/PHP-Serialization-$pkgver
- eval `perl -V:archname`
- PERL_MM_USE_DEFAULT=1 /usr/bin/perl Makefile.PL \
- INSTALLDIRS=vendor || return 1
-
- /usr/bin/make || return 1
- /usr/bin/make DESTDIR=$startdir/pkg install || return 1
- /usr/bin/find $startdir/pkg -name '.packlist' -delete
- /usr/bin/find $startdir/pkg -name '*.pod' -delete
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ MODULEBUILDRC=/dev/null
+
+ cd "$srcdir/$_distdir"
+ /usr/bin/perl Makefile.PL
+ make
+ )
+}
+
+check() {
+ cd "$srcdir/$_distdir"
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
+ make test
+ )
+}
+
+package() {
+ cd "$srcdir/$_distdir"
+ make install
+
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
}
+# Local Variables:
+# mode: shell-script
+# sh-basic-offset: 2
+# End:
# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-proc-daemon/PKGBUILD b/abs/core/perl_modules/perl-proc-daemon/PKGBUILD
index f5df566..f6d3b64 100644
--- a/abs/core/perl_modules/perl-proc-daemon/PKGBUILD
+++ b/abs/core/perl_modules/perl-proc-daemon/PKGBUILD
@@ -1,23 +1,50 @@
-# Contributor: xduugu
+# Contributor: John D Jones III AKA jnbek <jnbek1972 -_AT_- g m a i l -_Dot_- com>
+# Generator : CPANPLUS::Dist::Arch 1.32
-pkgname=perl-proc-daemon
-pkgver=0.03
-pkgrel=1
-pkgdesc="run Perl program as a daemon process"
-arch=('i686' 'x86_64')
-url="http://search.cpan.org/~EHOOD/Proc-Daemon"
-license=('GPL' 'PerlArtistic')
-depends=('perl')
+pkgname='perl-proc-daemon'
+pkgver='0.22'
+pkgrel='1'
+pkgdesc="Run Perl program(s) as a daemon process"
+arch=('any')
+license=('PerlArtistic' 'GPL')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/E/EH/EHOOD/Proc-Daemon-$pkgver.tar.gz)
-md5sums=('6e1b83ac0f0add22f63597733f38c973')
-sha1sums=('25df5ee454527772ff95bc44980101a6766edb8a')
+depends=('perl')
+makedepends=('perl-proc-processtable')
+url='https://metacpan.org/release/Proc-Daemon'
+source=('http://search.cpan.org/CPAN/authors/id/A/AK/AKREAL/Proc-Daemon-0.22.tar.gz')
+md5sums=('0c10a6291d776025d3cfd58e49b540af')
+sha512sums=('4845882034fc5ddd34361bff90d265fe512a7b3a54238bc899a07bf29ce1d030f45c6de769c146767436a61d17ddc7198e344a3c073bc168af16f05872f38af5')
+_distdir="Proc-Daemon-0.22"
build() {
- cd "$srcdir/Proc-Daemon-$pkgver"
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make install DESTDIR="$pkgdir/" || return 1
- find "$pkgdir" -name '.packlist' -delete
- find "$pkgdir" -name '*.pod' -delete
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ MODULEBUILDRC=/dev/null
+
+ cd "$srcdir/$_distdir"
+ /usr/bin/perl Makefile.PL
+ make
+ )
+}
+
+check() {
+ cd "$srcdir/$_distdir"
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
+ make test
+ )
}
+
+package() {
+ cd "$srcdir/$_distdir"
+ make install
+
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+}
+
+# Local Variables:
+# mode: shell-script
+# sh-basic-offset: 2
+# End:
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-proc-pid-file/PKGBUILD b/abs/core/perl_modules/perl-proc-pid-file/PKGBUILD
index ad69d71..813c306 100644
--- a/abs/core/perl_modules/perl-proc-pid-file/PKGBUILD
+++ b/abs/core/perl_modules/perl-proc-pid-file/PKGBUILD
@@ -1,25 +1,50 @@
-# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $
-# Maintainer: Cecil H. Watson <knoppmyth@gmail.com>
+# Contributor: John D Jones III AKA jnbek <jnbek1972 -_AT_- g m a i l -_Dot_- com>
+# Generator : CPANPLUS::Dist::Arch 1.30
-pkgname=perl-proc-pid-file
-_realname=Proc-PID-File
-pkgver=1.24
-pkgrel=1
-pkgdesc="Proc::PID::File a module to manage process idfiles"
-arch=(i686 x86_64)
-license=('PerlArtistic')
-url="http://search.cpan.org/dist/${_realname}/"
-depends=('perlxml' 'perl>=5.10.0')
+pkgname='perl-proc-pid-file'
+pkgver='1.27'
+pkgrel='2'
+pkgdesc="A module to manage PID files"
+arch=('any')
+license=('PerlArtistic' 'GPL')
options=('!emptydirs')
-source=(ftp://ftp.cpan.org/pub/CPAN/authors/id/E/EC/ECALDER/${_realname}-${pkgver}.tar.gz)
-md5sums=('90b636492ae72def975a9ef9cac90fda')
+depends=('perl')
+makedepends=()
+url='https://metacpan.org/release/Proc-PID-File'
+source=('http://search.cpan.org/CPAN/authors/id/E/EC/ECALDER/Proc-PID-File-1.27.tar.gz')
+md5sums=('3fcb07f914f863f9a0967b35af562f9f')
+sha512sums=('05d5bcdcc6a9fb2d2cb3779fb6ad6469c7c7845147eae1a4a27dec5bf728ad4fde5c4e2d44bf91382e7609fd701a23dd6fe9edb798dbeecc012d240e25a79bb3')
+_distdir="Proc-PID-File-1.27"
build() {
- cd ${startdir}/src/${_realname}-${pkgver}
- perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make DESTDIR=${startdir}/pkg install || return 1
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ MODULEBUILDRC=/dev/null
- find ${startdir}/pkg -name '.packlist' -delete
- find ${startdir}/pkg -name 'perllocal.pod' -delete
+ cd "$srcdir/$_distdir"
+ /usr/bin/perl Makefile.PL
+ make
+ )
}
+
+check() {
+ cd "$srcdir/$_distdir"
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
+ make test
+ )
+}
+
+package() {
+ cd "$srcdir/$_distdir"
+ make install
+
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+}
+
+# Local Variables:
+# mode: shell-script
+# sh-basic-offset: 2
+# End:
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-proc-processtable/PKGBUILD b/abs/core/perl_modules/perl-proc-processtable/PKGBUILD
index 8f5ffc1..19211fa 100644
--- a/abs/core/perl_modules/perl-proc-processtable/PKGBUILD
+++ b/abs/core/perl_modules/perl-proc-processtable/PKGBUILD
@@ -1,18 +1,18 @@
# $Id$
-# Maintainer: Felix Yan <felixonmars@gmail.com>
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
pkgname=perl-proc-processtable
-pkgver=0.51
+pkgver=0.55
pkgrel=1
pkgdesc="Provides a consistent interface to process table information."
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://search.cpan.org/dist/Proc-ProcessTable/"
license=('PerlArtistic')
depends=('perl')
provides=('perl-proc-killall' 'perl-proc-killfam' 'perl-proc-processtable-process')
options=(!emptydirs)
source=("http://search.cpan.org/CPAN/authors/id/J/JW/JWB/Proc-ProcessTable-$pkgver.tar.gz")
-md5sums=('711238eb8ce7f5583ffef084d8facceb')
+sha512sums=('2af3860c6d48508aecd1d97d323ede21318b801873a24fbc4340fa5b526ad7d1c5b55c52044a73cc92e6c0f5dac612c21089bb8cbe4b1d779bb3eb9a7b87bed1')
build() {
cd "$srcdir/Proc-ProcessTable-$pkgver"
@@ -32,4 +32,12 @@ package() {
make install DESTDIR="${pkgdir}"
find "${pkgdir}" -name perllocal.pod -delete
find "${pkgdir}" -name .packlist -delete
+
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
diff --git a/abs/core/perl_modules/perl-role-tiny/PKGBUILD b/abs/core/perl_modules/perl-role-tiny/PKGBUILD
new file mode 100644
index 0000000..d0c84eb
--- /dev/null
+++ b/abs/core/perl_modules/perl-role-tiny/PKGBUILD
@@ -0,0 +1,44 @@
+# $Id$
+# Maintainer: Sergej Pupykin <arch+pub@sergej.pp.ru>
+# Contributor: John D Jones III <jnbek1972 -_AT_- g m a i l -_Dot_- com>
+# Generator : CPANPLUS::Dist::Arch 1.29
+
+pkgname='perl-role-tiny'
+pkgver=2.000005
+pkgrel=3
+pkgdesc="Roles. Like a nouvelle cuisine portion size slice of Moose."
+arch=('any')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl')
+makedepends=()
+checkdepends=('perl-test-fatal>=0.003')
+url='http://search.cpan.org/dist/Role-Tiny/'
+source=("http://search.cpan.org/CPAN/authors/id/H/HA/HAARG/Role-Tiny-$pkgver.tar.gz")
+sha256sums=('593a29b621e029bf0218d0154d5dfdf6ec502afc49adeeadae6afd0c70063115')
+
+build() {
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='"$pkgdir"'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '"$pkgdir"'" \
+ MODULEBUILDRC=/dev/null
+
+ cd "$srcdir/Role-Tiny-$pkgver"
+ perl Makefile.PL
+ make
+ )
+}
+
+check() {
+ cd "$srcdir/Role-Tiny-$pkgver"
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
+ make test
+ )
+}
+
+package() {
+ cd "$srcdir/Role-Tiny-$pkgver"
+ make install
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+}
diff --git a/abs/core/perl_modules/perl-sdl/PKGBUILD b/abs/core/perl_modules/perl-sdl/PKGBUILD
index d8273a3..3f39048 100644
--- a/abs/core/perl_modules/perl-sdl/PKGBUILD
+++ b/abs/core/perl_modules/perl-sdl/PKGBUILD
@@ -1,13 +1,13 @@
-# $Id: PKGBUILD 168746 2012-10-15 12:11:10Z heftig $
+# $Id$
# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: Sarah Hay <sarahhay@mb.sympatico.ca>
pkgname=perl-sdl
-pkgver=2.540
-pkgrel=3
+pkgver=2.546
+pkgrel=6
pkgdesc="Simple DirectMedia Layer for Perl"
-arch=(i686 x86_64)
+arch=(x86_64)
license=(LGPL)
url="http://sdl.perl.org"
depends=(perl-alien-sdl perl-tie-simple
@@ -18,9 +18,9 @@ replaces=(sdl_perl)
conflicts=(sdl_perl)
provides=("sdl_perl=$pkgver")
# http://search.cpan.org/dist/SDL/
-_author=JTPALMER
+_author=FROGGS
source=(http://search.cpan.org/CPAN/authors/id/${_author::1}/${_author::2}/$_author/SDL-$pkgver.tar.gz)
-md5sums=('1a5d7849cbdfde4982b28458e38ab172')
+md5sums=('a93283d0fff67bdec5ff4bb8c1d30a09')
build() {
cd SDL-$pkgver
@@ -39,4 +39,12 @@ check() {
package() {
cd SDL-$pkgver
perl Build install destdir="$pkgdir"
+
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
diff --git a/abs/core/perl_modules/perl-sgmls/PKGBUILD b/abs/core/perl_modules/perl-sgmls/PKGBUILD
new file mode 100644
index 0000000..062b38a
--- /dev/null
+++ b/abs/core/perl_modules/perl-sgmls/PKGBUILD
@@ -0,0 +1,52 @@
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
+
+_cpanname=SGMLSpm
+pkgname=perl-sgmls
+epoch=1
+pkgver=1.1
+pkgrel=5
+pkgdesc="A Post-Processor for SGMLS and NSGMLS"
+arch=('any')
+url="http://search.cpan.org/dist/SGMLSpm"
+license=('GPL' 'PerlArtistic')
+depends=('perl')
+options=('!emptydirs' 'docs')
+source=(http://search.cpan.org/CPAN/authors/id/R/RA/RAAB/SGMLSpm-$pkgver.tar.gz)
+md5sums=('746c74ae969992cedb1a2879b4168090')
+
+prepare() {
+ cd "$srcdir/$_cpanname-$pkgver"
+ find . -type f -exec chmod 0644 {} \;
+}
+
+prepareEnvironment() {
+ cd "$srcdir/$_cpanname-$pkgver"
+ export \
+ PERL_MM_USE_DEFAULT=1 \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='"$pkgdir"'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '"$pkgdir"'" \
+ MODULEBUILDRC=/dev/null
+}
+
+build() {
+ prepareEnvironment
+ /usr/bin/perl Makefile.PL
+ make
+}
+
+check() {
+ prepareEnvironment
+ make test
+}
+
+package() {
+ prepareEnvironment
+ make install
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+
+ # FS#51874
+ ln -sv /usr/bin/vendor_perl/sgmlspl.pl $pkgdir/usr/bin/sgmlspl
+}
diff --git a/abs/core/perl_modules/perl-shell/PKGBUILD b/abs/core/perl_modules/perl-shell/PKGBUILD
deleted file mode 100644
index 31e5278..0000000
--- a/abs/core/perl_modules/perl-shell/PKGBUILD
+++ /dev/null
@@ -1,26 +0,0 @@
-# Maintainer: graysky <graysky AT archlnux DOT us>
-
-pkgname=perl-shell
-_realname=Shell
-pkgver=0.72
-_pkgver=0.72_01
-pkgrel=2
-pkgdesc="Run shell commands transparently within perl."
-arch=(any)
-license=('PerlArtistic')
-url="http://search.cpan.org/dist/${_realname}/"
-depends=('perl>=5.011')
-options=(!emptydirs)
-source=(http://search.cpan.org/CPAN/authors/id/F/FE/FERREIRA/${_realname}-${_pkgver}.tar.gz)
-sha256sums=('823c044e668239be0ac96d0006f5fc9646b8a9a8adfd5f58f2dcd297e875106f')
-
-build() {
- cd ${srcdir}/${_realname}-${_pkgver}
- perl Makefile.PL
- make
-}
-
-package() {
- cd ${srcdir}/${_realname}-${_pkgver}
- make install DESTDIR=${pkgdir}
-}
diff --git a/abs/core/perl_modules/perl-soap-lite/PKGBUILD b/abs/core/perl_modules/perl-soap-lite/PKGBUILD
index f5e8ee2..dad16c0 100644
--- a/abs/core/perl_modules/perl-soap-lite/PKGBUILD
+++ b/abs/core/perl_modules/perl-soap-lite/PKGBUILD
@@ -3,7 +3,7 @@
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-soap-lite
-pkgver=1.20
+pkgver=1.26
pkgrel=1
pkgdesc="Client and server side SOAP implementation"
arch=('any')
@@ -43,7 +43,7 @@ provides=(
perl-xmlrpc-transport-tcp
)
source=("http://search.cpan.org/CPAN/authors/id/P/PH/PHRED/SOAP-Lite-${pkgver}.tar.gz")
-md5sums=('b49632017cb5ba43c85d60cbe638af07')
+md5sums=('1c53fe1b6d986599b1277462062ae303')
build() {
cd "${srcdir}/SOAP-Lite-${pkgver}"
diff --git a/abs/core/perl_modules/perl-socket6/PKGBUILD b/abs/core/perl_modules/perl-socket6/PKGBUILD
index 88c8acc..dd30376 100644
--- a/abs/core/perl_modules/perl-socket6/PKGBUILD
+++ b/abs/core/perl_modules/perl-socket6/PKGBUILD
@@ -1,49 +1,38 @@
-# Maintainer: Florian Pritz <bluewind@xinu.at>
-# Generator : CPANPLUS::Dist::Arch 1.18
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Florian Pritz <bluewind@xinu.at>
-pkgname='perl-socket6'
-pkgver='0.23'
-pkgrel='2'
-pkgdesc="getaddrinfo/getnameinfo support module"
-arch=('i686' 'x86_64')
+pkgname=perl-socket6
+pkgver=0.28
+pkgrel=4
+pkgdesc="A getaddrinfo/getnameinfo support module"
+arch=('x86_64')
+url='http://search.cpan.org/dist/Socket6'
license=('PerlArtistic' 'GPL')
-options=('!emptydirs')
depends=('perl')
-makedepends=()
-url='http://search.cpan.org/dist/Socket6'
-source=('http://search.cpan.org/CPAN/authors/id/U/UM/UMEMOTO/Socket6-0.23.tar.gz')
-md5sums=('2c02adb13c449d48d232bb704ddbd492')
-sha512sums=('39ced223ecdef89e6fa241031019bb5a73e63d2dfdaf3edb55bfea0cb81b91bea09f1cc26b2d15fa28d32227cc13cdb093c70f0ba346c9bdb523359de53d96f9')
-_distdir="${srcdir}/Socket6-0.23"
+options=('!emptydirs')
+source=(http://search.cpan.org/CPAN/authors/id/U/UM/UMEMOTO/Socket6-$pkgver.tar.gz)
+sha1sums=('5903fbf53e0e25623bf71c252c3a073389686ed0')
build() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
- MODULEBUILDRC=/dev/null
-
- cd "$_distdir"
- /usr/bin/perl Makefile.PL
- make
- )
+ cd Socket6-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
}
check() {
- cd "$_distdir"
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- make test
- )
+ cd Socket6-$pkgver
+ make test
}
package() {
- cd "$_distdir"
- make install
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+ cd Socket6-$pkgver
+ make DESTDIR="$pkgdir" install
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
-
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-specio/PKGBUILD b/abs/core/perl_modules/perl-specio/PKGBUILD
new file mode 100644
index 0000000..c2f734c
--- /dev/null
+++ b/abs/core/perl_modules/perl-specio/PKGBUILD
@@ -0,0 +1,33 @@
+# $Id: PKGBUILD 191857 2016-10-10 11:17:38Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+
+pkgname=perl-specio
+pkgver=0.42
+pkgrel=1
+pkgdesc="Type constraints and coercions for Perl"
+arch=('any')
+url="http://search.cpan.org/dist/Specio"
+license=('GPL' 'PerlArtistic')
+depends=('perl-role-tiny' 'perl-test-fatal' 'perl-mro-compat' 'perl-devel-stacktrace')
+options=('!emptydirs')
+source=(http://search.cpan.org/CPAN/authors/id/D/DR/DROLSKY/Specio-$pkgver.tar.gz)
+sha256sums=('23298b93a26d7ae3c1d58106f5898d84ddc71b626afdbf801bddb04d5e524ef6')
+
+build() {
+ cd "$srcdir"/Specio-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+package() {
+ cd "$srcdir"/Specio-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
+}
diff --git a/abs/core/perl_modules/perl-sub-exporter-progressive/PKGBUILD b/abs/core/perl_modules/perl-sub-exporter-progressive/PKGBUILD
new file mode 100644
index 0000000..22e1baa
--- /dev/null
+++ b/abs/core/perl_modules/perl-sub-exporter-progressive/PKGBUILD
@@ -0,0 +1,30 @@
+# $Id$
+# Maintainer: Jonathan Steel <jsteel@aur.archlinux.org>
+# Contributor: Alan Young <harleypig@gmail.com>
+
+pkgname=perl-sub-exporter-progressive
+pkgver=0.001013
+pkgrel=3
+pkgdesc="Only use Sub::Exporter if you need it"
+arch=('any')
+url="http://search.cpan.org/dist/Sub-Exporter-Progressive"
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+source=(http://search.cpan.org/CPAN/authors/id/F/FR/FREW/Sub-Exporter-Progressive-$pkgver.tar.gz)
+md5sums=('72cf6acdd2a0a8b105821a4db98e4ebe')
+
+build() {
+ cd "$srcdir"/Sub-Exporter-Progressive-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd "$srcdir"/Sub-Exporter-Progressive-$pkgver
+ make test
+}
+
+package() {
+ cd "$srcdir"/Sub-Exporter-Progressive-$pkgver
+ make DESTDIR="$pkgdir" install
+}
diff --git a/abs/core/perl_modules/perl-sub-exporter/PKGBUILD b/abs/core/perl_modules/perl-sub-exporter/PKGBUILD
index 2d2adb3..ac2b5d5 100644
--- a/abs/core/perl_modules/perl-sub-exporter/PKGBUILD
+++ b/abs/core/perl_modules/perl-sub-exporter/PKGBUILD
@@ -1,29 +1,28 @@
-# Maintainer: Justin Davis <jrcd83@gmail.com>
-# $Id: PKGBUILD 57551 2011-10-30 17:28:18Z juster $
+# $Id$
+# Maintainer: Jonathan Steel <jsteel@aur.archlinux.org>
+# Contributor: Justin Davis <jrcd83@gmail.com>
pkgname=perl-sub-exporter
-pkgver=0.982
-pkgrel=1
-pkgdesc="a sophisticated exporter for custom-built routines"
-arch=(any)
-license=(PerlArtistic GPL)
-options=(!emptydirs)
-depends=('perl>=5.6.0' 'perl-data-optlist>=0.1' 'perl-params-util>=0.14'
- 'perl-sub-install>=0.92')
-url=https://metacpan.org/release/Sub-Exporter
-source=("http://search.cpan.org/CPAN/authors/id/R/RJ/RJBS/Sub-Exporter-${pkgver}.tar.gz")
-md5sums=(db90a0d73a5ca2d185dd6c6d2fc848f0)
-sha512sums=(10fc2a27d28f47cc5193c13e598e7c16caac0ede5700b0301ab04db371b9250348aa69e076b259d3f5a1ebbdd8793c3230e5f71a0adb1554b1d2fd04b2969d97)
-_distdir="${srcdir}/Sub-Exporter-${pkgver}"
+pkgver=0.987
+pkgrel=3
+pkgdesc="A sophisticated exporter for custom-built routines"
+arch=('any')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl' 'perl-data-optlist' 'perl-params-util' 'perl-sub-install')
+url="https://metacpan.org/release/Sub-Exporter"
+source=(http://search.cpan.org/CPAN/authors/id/R/RJ/RJBS/Sub-Exporter-$pkgver.tar.gz)
+md5sums=('5332d269a7ba387773fcd140b72a0ed2')
build() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
+ PERL_AUTOINSTALL="--skipdeps" \
+ PERL_MM_OPT="INSTALLDIRS=vendor" \
+ PERL_MB_OPT="--installdirs vendor" \
MODULEBUILDRC=/dev/null
- cd "$_distdir"
+ cd "$srcdir"/Sub-Exporter-$pkgver
+
/usr/bin/perl Makefile.PL
make
)
@@ -31,19 +30,15 @@ build() {
check() {
( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- cd "$_distdir"
+
+ cd "$srcdir"/Sub-Exporter-$pkgver
+
make test
)
}
package() {
- cd "$_distdir"
- make DESTDIR="$pkgdir" install
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
-}
+ cd "$srcdir"/Sub-Exporter-$pkgver
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
+ make DESTDIR="$pkgdir"/ install
+}
diff --git a/abs/core/perl_modules/perl-sub-identify/PKGBUILD b/abs/core/perl_modules/perl-sub-identify/PKGBUILD
new file mode 100644
index 0000000..b428187
--- /dev/null
+++ b/abs/core/perl_modules/perl-sub-identify/PKGBUILD
@@ -0,0 +1,34 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: John D Jones III <jnbek1972 -_AT_- g m a i l -_Dot_- com>
+
+pkgname=perl-sub-identify
+pkgver=0.14
+pkgrel=4
+pkgdesc="Retrieve names of code references"
+arch=('x86_64')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl')
+checkdepends=('perl-test-pod')
+url='http://search.mcpan.org/dist/Sub-Identify'
+source=("http://search.mcpan.org/CPAN/authors/id/R/RG/RGARCIA/Sub-Identify-$pkgver.tar.gz")
+sha512sums=('f69f542c84c5c3ca1f1c7f5f58fd2cf19279a65229f43117c31f24ab0e49d5f329bef2bc00f22252fd2e52b4e17f16b279dac438920668e046e59f2e22e52c14')
+
+build() {
+ cd "$srcdir/Sub-Identify-$pkgver"
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd "$srcdir/Sub-Identify-$pkgver"
+ make test
+}
+
+package() {
+ cd "$srcdir/Sub-Identify-$pkgver"
+ make DESTDIR="$pkgdir"/ install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-sub-install/PKGBUILD b/abs/core/perl_modules/perl-sub-install/PKGBUILD
index 08b4b65..9fbb71a 100644
--- a/abs/core/perl_modules/perl-sub-install/PKGBUILD
+++ b/abs/core/perl_modules/perl-sub-install/PKGBUILD
@@ -1,46 +1,31 @@
-# Maintainer: Justin Davis (juster) <jrcd83@gmail.com>
-# $Id: PKGBUILD 71649 2012-05-31 15:44:24Z juster $
+# $Id$
+# Maintainer: Jonathan Steel <jsteel@aur.archlinux.org>
+# Contributor: Justin Davis (juster) <jrcd83@gmail.com>
pkgname=perl-sub-install
-pkgver=0.926
-pkgrel=1
-pkgdesc='install subroutines into packages easily'
-arch=(any)
-license=(PerlArtistic GPL)
-options=(!emptydirs)
-depends=(perl)
-url=https://metacpan.org/release/Sub-Install
-source=("http://search.cpan.org/CPAN/authors/id/R/RJ/RJBS/Sub-Install-$pkgver.tar.gz")
-md5sums=(89a7f82dd840bc2401f281b5f24732b9)
-sha512sums=(c536e1ace79ce8c6bd4a6e580cc2e181671b54f07cef231a84094c854779aee556de4b2ff0a95f0e6a8aca87f77a6e19d148071a48fe5c6e9c0ca15314f0c9cc)
-_dir="$srcdir/Sub-Install-$pkgver"
+pkgver=0.928
+pkgrel=3
+pkgdesc="Install subroutines into packages easily"
+arch=('any')
+url="https://metacpan.org/release/Sub-Install"
+license=('PerlArtistic' 'GPL')
+depends=('perl')
+options=('!emptydirs')
+source=(http://search.cpan.org/CPAN/authors/id/R/RJ/RJBS/Sub-Install-$pkgver.tar.gz)
+sha1sums=('868c6cb4c0232d9ac3f865f232359f82012be8d6')
-build()
-(
- cd "$_dir"
- export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL=--skipdeps
- unset PERL5LIB PERL_MM_OPT
- /usr/bin/perl Makefile.PL
+build() {
+ cd Sub-Install-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
make
-)
+}
-check()
-(
- cd "$_dir"
- export PERL_MM_USE_DEFAULT=1
- unset PERL5LIB
+check() {
+ cd Sub-Install-$pkgver
make test
-)
+}
-package()
-(
- cd "$_dir"
- make install INSTALLDIRS=vendor DESTDIR="$pkgdir"
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
-)
-
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
+package() {
+ cd Sub-Install-$pkgver
+ make DESTDIR="$pkgdir" install
+}
diff --git a/abs/core/perl_modules/perl-sub-name/PKGBUILD b/abs/core/perl_modules/perl-sub-name/PKGBUILD
new file mode 100644
index 0000000..c671f5b
--- /dev/null
+++ b/abs/core/perl_modules/perl-sub-name/PKGBUILD
@@ -0,0 +1,33 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Maxwell Pray a.k.a. Synthead <synthead@gmail.com>
+# Contributor: Justin Davis <jrcd83@gmail.com>
+
+pkgname=perl-sub-name
+_cpanname=Sub-Name
+pkgver=0.21
+pkgrel=4
+pkgdesc="(re)name a sub"
+arch=('x86_64')
+license=('PerlArtistic' 'GPL')
+depends=('perl')
+options=('!emptydirs')
+url="http://search.cpan.org/dist/$_cpanname"
+source=("http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/$_cpanname-$pkgver.tar.gz")
+md5sums=('7e7a181e30b3249d0b81585f55e36621')
+
+build() {
+ cd "$srcdir/$_cpanname-$pkgver"
+ perl Makefile.PL
+ make
+}
+
+check() {
+ cd "$srcdir/$_cpanname-$pkgver"
+ make test
+}
+
+package() {
+ cd "$srcdir/$_cpanname-$pkgver"
+ make install INSTALLDIRS=vendor DESTDIR="$pkgdir"
+}
diff --git a/abs/core/perl_modules/perl-sub-uplevel/PKGBUILD b/abs/core/perl_modules/perl-sub-uplevel/PKGBUILD
index 86409ac..2613d09 100644
--- a/abs/core/perl_modules/perl-sub-uplevel/PKGBUILD
+++ b/abs/core/perl_modules/perl-sub-uplevel/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 65925 2012-02-22 13:43:26Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Francois Charette <firmicus@gmx.net>
pkgname=perl-sub-uplevel
-pkgver=0.22
+pkgver=0.2800
pkgrel=2
pkgdesc="apparently run a function in a higher stack frame "
arch=('any')
@@ -11,14 +11,18 @@ url="http://search.cpan.org/dist/Sub-Uplevel"
license=('GPL' 'PerlArtistic')
depends=('perl')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/D/DA/DAGOLDEN/Sub-Uplevel-$pkgver.tar.gz)
-md5sums=('c166738a97c0424a0075ebe205d285db')
+source=(https://www.cpan.org/authors/id/D/DA/DAGOLDEN/Sub-Uplevel-$pkgver.tar.gz)
+sha256sums=('b4f3f63b80f680a421332d8851ddbe5a8e72fcaa74d5d1d98f3c8cc4a3ece293')
build() {
- cd $srcdir/Sub-Uplevel-$pkgver
+ cd "$srcdir"/Sub-Uplevel-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
- make install DESTDIR=$pkgdir
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+}
+
+package() {
+ cd "$srcdir"/Sub-Uplevel-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-sys-cpu/PKGBUILD b/abs/core/perl_modules/perl-sys-cpu/PKGBUILD
index 325fd89..11e0b9b 100644
--- a/abs/core/perl_modules/perl-sys-cpu/PKGBUILD
+++ b/abs/core/perl_modules/perl-sys-cpu/PKGBUILD
@@ -5,7 +5,7 @@
pkgname=perl-sys-cpu
pkgver=0.61
-pkgrel=1
+pkgrel=2
pkgdesc="Perl extension for getting CPU information. Currently only number of CPU's supported."
arch=('any')
url="http://search.cpan.org/~mkoderer/Sys-CPU-$pkgver/"
diff --git a/abs/core/perl_modules/perl-sys-meminfo/PKGBUILD b/abs/core/perl_modules/perl-sys-meminfo/PKGBUILD
index 05ef17d..7660eab 100644
--- a/abs/core/perl_modules/perl-sys-meminfo/PKGBUILD
+++ b/abs/core/perl_modules/perl-sys-meminfo/PKGBUILD
@@ -3,7 +3,7 @@
pkgname='perl-sys-meminfo'
pkgver='0.98'
-pkgrel='1'
+pkgrel='2'
pkgdesc="Perl extension for return the total amount of physical memory"
arch=('any')
license=('PerlArtistic' 'GPL')
diff --git a/abs/core/perl_modules/perl-sys-mmap/PKGBUILD b/abs/core/perl_modules/perl-sys-mmap/PKGBUILD
new file mode 100644
index 0000000..84e263f
--- /dev/null
+++ b/abs/core/perl_modules/perl-sys-mmap/PKGBUILD
@@ -0,0 +1,50 @@
+# Contributor: John D Jones III AKA jnbek <jnbek1972 -_AT_- g m a i l -_Dot_- com>
+# Generator : CPANPLUS::Dist::Arch 1.32
+
+pkgname='perl-sys-mmap'
+pkgver='0.19'
+pkgrel='2'
+pkgdesc="uses mmap to map in a file as a Perl variable"
+arch=('i686' 'x86_64')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl')
+makedepends=()
+url='https://metacpan.org/release/Sys-Mmap'
+source=('http://search.cpan.org/CPAN/authors/id/S/SW/SWALTERS/Sys-Mmap-0.19.tar.gz')
+md5sums=('990c9106a88dc843035f7bcb109e6c0e')
+sha512sums=('4e6409cddd13322b4cdaad832e6d0233776e51098b499fd05d8e642e547eb1ed7add5bb9fb339e69048a3293140098e282b51698eb6d188ace71ad58c1628556')
+_distdir="Sys-Mmap-0.19"
+
+build() {
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ MODULEBUILDRC=/dev/null
+
+ cd "$srcdir/$_distdir"
+ /usr/bin/perl Makefile.PL
+ make
+ )
+}
+
+check() {
+ cd "$srcdir/$_distdir"
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
+ make test
+ )
+}
+
+package() {
+ cd "$srcdir/$_distdir"
+ make install
+
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+}
+
+# Local Variables:
+# mode: shell-script
+# sh-basic-offset: 2
+# End:
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-template-toolkit/PKGBUILD b/abs/core/perl_modules/perl-template-toolkit/PKGBUILD
index 157cad2..0bc941b 100644
--- a/abs/core/perl_modules/perl-template-toolkit/PKGBUILD
+++ b/abs/core/perl_modules/perl-template-toolkit/PKGBUILD
@@ -5,16 +5,16 @@
# Contributor: FJ <joostef@gmail.com>
pkgname=perl-template-toolkit
-pkgver=2.26
-pkgrel=3
+pkgver=2.27
+pkgrel=4
pkgdesc="Perl template processing system"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://search.cpan.org/dist/Template-Toolkit/"
license=('PerlArtistic')
depends=('perl-appconfig' 'perl')
options=('!emptydirs')
source=(http://search.cpan.org/CPAN/authors/id/A/AB/ABW/Template-Toolkit-$pkgver.tar.gz)
-md5sums=('4c289856ebee446ebbe2629b24f0734b')
+md5sums=('a7fae5d4fe5918f33105d92a62134067')
build() {
cd Template-Toolkit-$pkgver
diff --git a/abs/core/perl_modules/perl-term-progressbar/PKGBUILD b/abs/core/perl_modules/perl-term-progressbar/PKGBUILD
index 133603f..d158eeb 100644
--- a/abs/core/perl_modules/perl-term-progressbar/PKGBUILD
+++ b/abs/core/perl_modules/perl-term-progressbar/PKGBUILD
@@ -1,23 +1,27 @@
-# This PKGBUILD was autocreated. See http://xtermin.us/archperl/ for details
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Charles Mauch <cmauch@gmail.com>
pkgname=perl-term-progressbar
-pkgver=2.09
-pkgrel=3
+pkgver=2.21
+pkgrel=1
pkgdesc="Perl/CPAN Module Term::ProgressBar : Progress bar in just ASCII using Term"
-arch=("i686" "x86_64")
-url="http://search.cpan.org/FLUFFY/Term-ProgressBar"
+arch=("any")
+url="http://search.cpan.org/dist/Term-ProgressBar"
license=("GPL" "PerlArtistic")
-source=("http://www.cpan.org/authors/id/F/FL/FLUFFY/Term-ProgressBar-2.09.tar.gz")
-md5sums=('440dfd04fe51a12d314e9adf2445f04a')
-makedepends=("perl-class-methodmaker" "perl-term-readkey")
depends=("perl-class-methodmaker" "perl-term-readkey")
+source=("http://search.cpan.org/CPAN/authors/id/M/MA/MANWAR/Term-ProgressBar-$pkgver.tar.gz")
+sha256sums=('66994f1a6ca94d8d92e3efac406142fb0d05033360c0acce2599862db9c30e44')
build() {
- cd $startdir/src/Term-ProgressBar-2.09
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make install DESTDIR=$startdir/pkg || return 1
- find $startdir/pkg -name '.packlist' -delete
- find $startdir/pkg -name '*.pod' -delete
+ cd "$srcdir"/Term-ProgressBar-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+package() {
+ cd "$srcdir"/Term-ProgressBar-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-term-readkey/PKGBUILD b/abs/core/perl_modules/perl-term-readkey/PKGBUILD
index 33397b2..aeda3a6 100644
--- a/abs/core/perl_modules/perl-term-readkey/PKGBUILD
+++ b/abs/core/perl_modules/perl-term-readkey/PKGBUILD
@@ -1,36 +1,43 @@
# $Id$
-# Maintainer: kevin <kevin@archlinux.org>
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: kevin <kevin@archlinux.org>
# Contributor: Wael Nasreddine <gandalf@siemens-mobiles.org>
-# Contributor: Francois Charette <francois.archlinux.org>
+# Contributor: Francois Charette <francois.archlinux.org>
pkgname=perl-term-readkey
_realname=TermReadKey
-pkgver=2.30.01
+pkgver=2.37
pkgrel=4
pkgdesc="Provides simple control over terminal driver modes"
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('custom')
-depends=('perl>=5.10.0' 'glibc')
-url="http://search.cpan.org/~stsi/${_realname}/"
-source=(http://search.cpan.org/CPAN/authors/id/S/ST/STSI/${_realname}-$pkgver.tar.gz)
+depends=('perl' 'glibc')
+url="http://search.cpan.org/~jstowe/${_realname}/"
options=('!emptydirs')
-md5sums=('6c099eddb76ec9b92179f1ed929be71a')
+source=(http://search.cpan.org/CPAN/authors/id/J/JS/JSTOWE/${_realname}-$pkgver.tar.gz)
+md5sums=('e8ea15c16333ac4f8d146d702e83cc0c')
-build()
-{
- cd ${srcdir}/TermReadKey-$pkgver
+build() {
+ cd "${srcdir}/TermReadKey-$pkgver"
perl Makefile.PL INSTALLDIRS=vendor
make
+}
+
+check() {
+ cd "${srcdir}/TermReadKey-$pkgver"
make test
}
package() {
- cd ${srcdir}/TermReadKey-$pkgver
- make DESTDIR=${pkgdir} install
- install -d ${pkgdir}/usr/share/licenses/$pkgname/
- head -7 README > ${pkgdir}/usr/share/licenses/$pkgname/LICENSE
-
- # remove perllocal.pod and .packlist
- find ${pkgdir} -name perllocal.pod -delete
- find ${pkgdir} -name .packlist -delete
+ cd "${srcdir}/TermReadKey-$pkgver"
+ make DESTDIR="${pkgdir}" install
+ install -d "${pkgdir}/usr/share/licenses/$pkgname/"
+ head -7 README > "${pkgdir}/usr/share/licenses/$pkgname/LICENSE"
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
diff --git a/abs/core/perl_modules/perl-test-exception/PKGBUILD b/abs/core/perl_modules/perl-test-exception/PKGBUILD
index ccf2bc6..793ad69 100644
--- a/abs/core/perl_modules/perl-test-exception/PKGBUILD
+++ b/abs/core/perl_modules/perl-test-exception/PKGBUILD
@@ -1,26 +1,27 @@
-# This PKGBUILD was autocreated. See http://xtermin.us/archperl/ for details
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Charles Mauch <cmauch@gmail.com>
pkgname=perl-test-exception
-pkgver=0.31
-pkgrel=1
+pkgver=0.43
+pkgrel=3
pkgdesc="Perl/CPAN Module Test::Exception : Functions for testing exceptionbased code"
arch=("any")
-url="http://search.cpan.org/~adie/"
-license=("GPL" "Artistic")
-makedepends=("perl-sub-uplevel")
+url="http://search.cpan.org/dist/Test-Exception/"
+license=("GPL" "PerlArtistic")
depends=("perl-sub-uplevel")
-source=("http://search.cpan.org/CPAN/authors/id/A/AD/ADIE/Test-Exception-$pkgver.tar.gz")
-md5sums=('adb57ca7614d15e5b307bf5e024b35a8')
+source=("http://search.cpan.org/CPAN/authors/id/E/EX/EXODIST/Test-Exception-$pkgver.tar.gz")
+md5sums=('572d355026fb0b87fc2b8c64b83cada0')
build() {
- cd $srcdir/Test-Exception-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
- make
+ cd "$srcdir"/Test-Exception-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
}
+
package() {
- cd $srcdir/Test-Exception-$pkgver
- make install DESTDIR=$pkgdir
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+ cd "$srcdir"/Test-Exception-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-test-fatal/PKGBUILD b/abs/core/perl_modules/perl-test-fatal/PKGBUILD
index dfae079..3309313 100644
--- a/abs/core/perl_modules/perl-test-fatal/PKGBUILD
+++ b/abs/core/perl_modules/perl-test-fatal/PKGBUILD
@@ -1,46 +1,31 @@
-# Maintainer: Justin Davis (juster) <jrcd83@gmail.com>
-# $Id: PKGBUILD 71635 2012-05-31 15:12:33Z juster $
+# $Id$
+# Maintainer: Jonathan Steel <jsteel@aur.archlinux.org>
+# Contributor: Justin Davis (juster) <jrcd83@gmail.com>
pkgname=perl-test-fatal
-pkgver=0.010
-pkgrel=1
-pkgdesc='incredibly simple helpers for testing code with exceptions'
-arch=(any)
-license=(PerlArtistic GPL)
-options=(!emptydirs)
-depends=('perl-try-tiny>=0.07')
-url=https://metacpan.org/release/Test-Fatal
-source=("http://search.cpan.org/CPAN/authors/id/R/RJ/RJBS/Test-Fatal-$pkgver.tar.gz")
-md5sums=(d8052d4160e8d999cbeb574592f26541)
-sha512sums=(24ed85a957e316f49673613295978ff4f2485f762427a8e51594221fe7601d6df3ab1d92dd5a9a8943cce42a04a3a712b781a7ae31403995a03bbf177006edf6)
-_dir="$srcdir/Test-Fatal-$pkgver"
+pkgver=0.014
+pkgrel=3
+pkgdesc="Incredibly simple helpers for testing code with exceptions"
+arch=('any')
+url="https://metacpan.org/release/Test-Fatal"
+license=('PerlArtistic' 'GPL')
+depends=('perl-try-tiny')
+options=('!emptydirs')
+source=(http://search.cpan.org/CPAN/authors/id/R/RJ/RJBS/Test-Fatal-$pkgver.tar.gz)
+sha1sums=('6984ef1c0aed1d2c8334e8f20818cbf269abc345')
-build()
-(
- cd "$_dir"
- export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL=--skipdeps
- unset PERL5LIB PERL_MM_OPT
- /usr/bin/perl Makefile.PL
+build() {
+ cd "$srcdir/Test-Fatal-$pkgver"
+ perl Makefile.PL
make
-)
+}
-check()
-(
- cd "$_dir"
- export PERL_MM_USE_DEFAULT=1
- unset PERL5LIB
+check() {
+ cd "$srcdir/Test-Fatal-$pkgver"
make test
-)
+}
-package()
-(
- cd "$_dir"
- make install INSTALLDIRS=vendor DESTDIR="$pkgdir"
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
-)
-
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
+package() {
+ cd "$srcdir/Test-Fatal-$pkgver"
+ make INSTALLDIRS=vendor DESTDIR="$pkgdir" install
+}
diff --git a/abs/core/perl_modules/perl-test-pod/PKGBUILD b/abs/core/perl_modules/perl-test-pod/PKGBUILD
index 5adb9d1..f6e0d22 100644
--- a/abs/core/perl_modules/perl-test-pod/PKGBUILD
+++ b/abs/core/perl_modules/perl-test-pod/PKGBUILD
@@ -1,30 +1,32 @@
-# $Id: PKGBUILD 140682 2011-10-18 03:16:34Z eric $
-# Maintainer: Kevin <kevin@archlinux.org>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Kevin <kevin@archlinux.org>
# Contributor: Firmicus <francois.archlinux.org>
pkgname=perl-test-pod
-_realname=Test-Pod
-pkgver=1.45
+pkgver=1.52
pkgrel=1
pkgdesc="Check for POD errors in files"
arch=('any')
-url="http://search.cpan.org/dist/${_realname}/"
+url="http://search.cpan.org/dist/Test-Pod/"
license=('GPL' 'PerlArtistic')
depends=('perl')
options=('!emptydirs')
-source=(http://search.cpan.org/CPAN/authors/id/D/DW/DWHEELER/${_realname}-${pkgver}.tar.gz)
-md5sums=('089c8f272931df82f6c4d11a74f04628')
+source=(http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/Test-Pod-${pkgver}.tar.gz)
+sha512sums=('9b078488e1da8b907f5f3a46452aa9bfd49db61f1539d076dccebf9a8b476eaf0f539f00badc9c500b1e732a8827331b2286375924986efb990367767eeb8365')
build() {
- cd "${srcdir}/${_realname}-${pkgver}"
- perl Build.PL installdirs=vendor
- ./Build
+ cd Test-Pod-${pkgver}
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
}
-package() {
- cd "${srcdir}/${_realname}-${pkgver}"
- ./Build install destdir="${pkgdir}"
+check() {
+ cd Test-Pod-${pkgver}
+ make test
+}
- find "${pkgdir}" -name '.packlist' -delete
- find "${pkgdir}" -name '*.pod' -delete
+package() {
+ cd Test-Pod-${pkgver}
+ make DESTDIR="${pkgdir}" install
}
diff --git a/abs/core/perl_modules/perl-test-requires/PKGBUILD b/abs/core/perl_modules/perl-test-requires/PKGBUILD
index c7de2ab..ac440ad 100644
--- a/abs/core/perl_modules/perl-test-requires/PKGBUILD
+++ b/abs/core/perl_modules/perl-test-requires/PKGBUILD
@@ -1,10 +1,11 @@
# $Id$
-# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Maintainer: Jonathan Steel <jsteel@aur.archlinux.org>
+# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Justin Davis <jrcd83@gmail.com>
-pkgname='perl-test-requires'
-pkgver='0.06'
-pkgrel='1'
+pkgname=perl-test-requires
+pkgver=0.10
+pkgrel=3
pkgdesc="Checks to see if the module can be loaded"
arch=('any')
license=('PerlArtistic' 'GPL')
@@ -12,18 +13,20 @@ options=('!emptydirs')
depends=('perl')
url='http://search.cpan.org/dist/Test-Requires'
source=("http://search.cpan.org/CPAN/authors/id/T/TO/TOKUHIROM/Test-Requires-$pkgver.tar.gz")
-md5sums=('6ce0da3cceadb6420d4c3c5bb69f64db')
+md5sums=('0d5da779609d0c8fa6f796b45ff8c6f3')
build() {
- cd "${srcdir}/Test-Requires-$pkgver"
- export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
- MODULEBUILDRC=/dev/null
- perl Makefile.PL
+ cd "$srcdir"/Test-Requires-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
make
+}
+
+check() {
+ cd "$srcdir"/Test-Requires-$pkgver
make test
- make install
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+}
+
+package() {
+ cd "$srcdir"/Test-Requires-$pkgver
+ make DESTDIR="$pkgdir"/ install
}
diff --git a/abs/core/perl_modules/perl-test-warn/PKGBUILD b/abs/core/perl_modules/perl-test-warn/PKGBUILD
index 1b5626d..4f25e61 100644
--- a/abs/core/perl_modules/perl-test-warn/PKGBUILD
+++ b/abs/core/perl_modules/perl-test-warn/PKGBUILD
@@ -1,29 +1,29 @@
-# $Id: PKGBUILD 70452 2012-05-07 13:45:39Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Firmicus <francois.archlinux.org>
pkgname=perl-test-warn
-pkgver=0.24
-pkgrel=1
+pkgver=0.32
+pkgrel=2
pkgdesc="Perl extension to test methods for warnings "
arch=(any)
-url="http://search.cpan.org/~CHORNY/Test-Warn"
+url="http://search.cpan.org/dist/Test-Warn/"
license=('GPL' 'PerlArtistic')
depends=('perl-tree-dag-node' 'perl-sub-uplevel>=0.12' 'perl>=5.10.0')
options=('!emptydirs')
-source=(http://search.cpan.org/CPAN/authors/id/C/CH/CHORNY/Test-Warn-$pkgver.tar.gz)
-md5sums=('a27990b62f8fd0aa290bb617ae0157a5')
+source=("http://search.cpan.org/CPAN/authors/id/B/BI/BIGJ/Test-Warn-$pkgver.tar.gz")
+sha256sums=('2fc516e71f9ef453be22a4619d91eb3f78df414a57dfa0fd745d3bff50bf73d2')
build() {
- cd $srcdir/Test-Warn-$pkgver
+ cd "$srcdir"/Test-Warn-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
}
package() {
- cd $srcdir/Test-Warn-$pkgver
- make install DESTDIR=$pkgdir
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+ cd "$srcdir"/Test-Warn-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-text-charwidth/PKGBUILD b/abs/core/perl_modules/perl-text-charwidth/PKGBUILD
new file mode 100644
index 0000000..bcb6034
--- /dev/null
+++ b/abs/core/perl_modules/perl-text-charwidth/PKGBUILD
@@ -0,0 +1,38 @@
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Maintainer: Charles Mauch <cmauch@gmail.com>
+
+pkgname=perl-text-charwidth
+pkgver=0.04
+pkgrel=16
+pkgdesc="Perl/CPAN Module Text::CharWidth"
+arch=("x86_64")
+url="http://search.cpan.org/dist/Text-CharWidth"
+license=("GPL" "PerlArtistic")
+options=('!emptydirs')
+source=("https://www.cpan.org/authors/id/K/KU/KUBOTA/Text-CharWidth-${pkgver}.tar.gz")
+sha256sums=('abded5f4fdd9338e89fd2f1d8271c44989dae5bf50aece41b6179d8e230704f8')
+
+build() {
+ cd Text-CharWidth-${pkgver}
+
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+
+ make
+}
+
+package() {
+ cd Text-CharWidth-${pkgver}
+
+ make install DESTDIR="$pkgdir"
+
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
+}
diff --git a/abs/core/perl_modules/perl-text-iconv/PKGBUILD b/abs/core/perl_modules/perl-text-iconv/PKGBUILD
index 1e35fce..b9ab604 100644
--- a/abs/core/perl_modules/perl-text-iconv/PKGBUILD
+++ b/abs/core/perl_modules/perl-text-iconv/PKGBUILD
@@ -1,25 +1,39 @@
-# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $
-# Maintainer: damir <damir@archlinux.org>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
# Contributor: Francois Charette <firmicus@gmx.net>
pkgname=perl-text-iconv
_realname=Text-Iconv
pkgver=1.7
-pkgrel=2
+pkgrel=14
pkgdesc="Interface to iconv codeset conversion"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://search.cpan.org/dist/${_realname}/"
license=('GPL' 'PerlArtistic')
-depends=('perl>=5.10.0')
+depends=('perl')
options=('!emptydirs')
source=(http://www.cpan.org/authors/id/M/MP/MPIOTR/${_realname}-${pkgver}.tar.gz)
md5sums=('81b26e069eaebb084e91ea3c009b67ae')
build() {
- cd ${startdir}/src/${_realname}-${pkgver}
- perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make DESTDIR=${startdir}/pkg install || return 1
- find ${startdir}/pkg -name '.packlist' -delete
- find ${startdir}/pkg -name '*.pod' -delete
+ cd "${srcdir}/${_realname}-${pkgver}"
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd "${srcdir}/${_realname}-${pkgver}"
+ make test
+}
+
+package() {
+ cd "${srcdir}/${_realname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
diff --git a/abs/core/perl_modules/perl-text-patch/PKGBUILD b/abs/core/perl_modules/perl-text-patch/PKGBUILD
index d7751e4..9dbf253 100644
--- a/abs/core/perl_modules/perl-text-patch/PKGBUILD
+++ b/abs/core/perl_modules/perl-text-patch/PKGBUILD
@@ -1,26 +1,31 @@
-# $Id: PKGBUILD 125357 2011-05-26 06:26:28Z angvp $
-# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
-# Contributor: Caleb Cushing <xenoterracide@gmail.com>
+# $Id$
+# Maintainer:
+
pkgname=perl-text-patch
-_realname=Text-Patch
pkgver=1.8
-pkgrel=1
+pkgrel=4
pkgdesc="Patches text with given patch"
-arch=(any)
-license=(PerlArtistic GPL)
-depends=(perl)
-url='http://search.cpan.org/dist/$_realname'
+arch=('any')
+url="http://search.cpan.org/dist/Text-Patch"
+license=('PerlArtistic' 'GPL')
+depends=('perl')
+checkdepends=('perl-text-diff')
options=('!emptydirs')
-source=("http://search.cpan.org/CPAN/authors/id/C/CA/CADE/$_realname-$pkgver.tar.gz")
-md5sums=('ad5e453d5ba3b48afd8163114d0fee1c')
+source=("http://search.cpan.org/CPAN/authors/id/C/CA/CADE/Text-Patch-$pkgver.tar.gz")
+sha1sums=('025d6249ae2b57b2f92cc7e1761b94a5fdbe4635')
build() {
- cd "$srcdir/$_realname-$pkgver"
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ cd Text-Patch-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
make
}
+check() {
+ cd Text-Patch-$pkgver
+ make test
+}
+
package() {
- cd "$srcdir/$_realname-$pkgver"
+ cd Text-Patch-$pkgver
make DESTDIR="$pkgdir" install
}
diff --git a/abs/core/perl_modules/perl-text-reform/PKGBUILD b/abs/core/perl_modules/perl-text-reform/PKGBUILD
new file mode 100644
index 0000000..e54b7b6
--- /dev/null
+++ b/abs/core/perl_modules/perl-text-reform/PKGBUILD
@@ -0,0 +1,29 @@
+# $Id$
+# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman
+# Maintainer: Firmicus <francois.archlinux.org>
+
+pkgname=perl-text-reform
+_realname=Text-Reform
+pkgver=1.20
+pkgrel=4
+pkgdesc="Manual text wrapping and reformatting "
+arch=(any)
+url="http://search.cpan.org/dist/Text-Reform"
+license=('GPL' 'PerlArtistic')
+depends=('perl')
+options=('!emptydirs')
+source=(http://search.cpan.org/CPAN/authors/id/C/CH/CHORNY/${_realname}-$pkgver.tar.gz)
+md5sums=('f37f5834f3dc221eacd09bdfcfe40918')
+
+build() {
+ cd "${srcdir}"/Text-Reform-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+package() {
+ cd "${srcdir}"/Text-Reform-$pkgver
+ make install DESTDIR="${pkgdir}"
+ find "${pkgdir}" -name '.packlist' -delete
+ find "${pkgdir}" -name '*.pod' -delete
+}
diff --git a/abs/core/perl_modules/perl-text-wrapi18n/PKGBUILD b/abs/core/perl_modules/perl-text-wrapi18n/PKGBUILD
new file mode 100644
index 0000000..12ef95f
--- /dev/null
+++ b/abs/core/perl_modules/perl-text-wrapi18n/PKGBUILD
@@ -0,0 +1,33 @@
+# $Id: PKGBUILD 67415 2012-03-11 13:48:47Z cbrannon $
+# Maintainer: Thorsten Töpper <atsutane-tu@freethoughts.de>
+# Contributor: Aaron Griffin <aaron@archlinux.org>
+
+pkgname=perl-text-wrapi18n
+_realname=Text-WrapI18N
+pkgver=0.06
+pkgrel=8
+pkgdesc="Line wrapping module with support for multibyte, fullwidth, and combining characters and languages without whitespaces between words"
+arch=('any')
+license=('GPL' 'PerlArtistic')
+url="http://search.cpan.org/dist/${_realname}/"
+depends=('perl-text-charwidth')
+options=('!emptydirs')
+source=("http://search.cpan.org/CPAN/authors/id/K/KU/KUBOTA/${_realname}-${pkgver}.tar.gz")
+md5sums=('0799c16a00926e6c18d400c2e2861d5f')
+
+build() {
+ cd ${srcdir}/${_realname}-${pkgver}
+ # install module in vendor directories.
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+ make test
+}
+
+package() {
+ cd ${srcdir}/${_realname}-${pkgver}
+ make DESTDIR=${pkgdir} install
+
+ # remove perllocal.pod, .packlist, and empty dirs:
+ find ${pkgdir} -name '.packlist' -delete
+ find ${pkgdir} -name 'perllocal.pod' -delete
+}
diff --git a/abs/core/perl_modules/perl-tie-simple/PKGBUILD b/abs/core/perl_modules/perl-tie-simple/PKGBUILD
index 14324be..2826b0b 100644
--- a/abs/core/perl_modules/perl-tie-simple/PKGBUILD
+++ b/abs/core/perl_modules/perl-tie-simple/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 149417 2012-02-07 16:25:32Z heftig $
+# $Id$
# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
pkgname=perl-tie-simple
_realname=Tie-Simple
-pkgver=1.03
-pkgrel=2
+pkgver=1.04
+pkgrel=3
pkgdesc="Variable ties made easier: much, much, much easier..."
arch=(any)
license=(PerlArtistic GPL)
@@ -12,7 +12,7 @@ depends=(perl)
url="http://search.cpan.org/dist/Tie-Simple"
options=('!emptydirs')
source=("http://search.cpan.org/CPAN/authors/id/H/HA/HANENKAMP/$_realname-$pkgver.tar.gz")
-md5sums=('198f7ec68c9b954251c4ed163ee112c7')
+md5sums=('e5b49588609d6212d3b9bc808cab7aa4')
build() {
cd "$srcdir/$_realname-$pkgver"
diff --git a/abs/core/perl_modules/perl-time-format/PKGBUILD b/abs/core/perl_modules/perl-time-format/PKGBUILD
index 5d240f7..082af78 100644
--- a/abs/core/perl_modules/perl-time-format/PKGBUILD
+++ b/abs/core/perl_modules/perl-time-format/PKGBUILD
@@ -5,7 +5,7 @@
pkgname=perl-time-format
pkgver=1.12
-pkgrel=2
+pkgrel=4
pkgdesc="Perl/CPAN Module Time::Format : Easytouse datetime formatting"
arch=(any)
url="http://search.cpan.org/dist/Time-Format"
diff --git a/abs/core/perl_modules/perl-time-modules/PKGBUILD b/abs/core/perl_modules/perl-time-modules/PKGBUILD
index fd41453..bd273e1 100644
--- a/abs/core/perl_modules/perl-time-modules/PKGBUILD
+++ b/abs/core/perl_modules/perl-time-modules/PKGBUILD
@@ -1,18 +1,18 @@
-# $Id: PKGBUILD 62353 2012-01-19 16:06:20Z seblu $
-# Maintainer: Sébastien Luttringer <seblu@aur.archlinux.org>
+# $Id$
+# Maintainer: Sébastien Luttringer
# Contributor: Alessandro Sagratini <ale_sagra at hotmail dot com>
# Contributor: Philippe LUC <philfifi@gmail.com>
pkgname=perl-time-modules
-pkgver=2011.0517
-pkgrel=1
-pkgdesc='Perl time related module'
-url="http://search.cpan.org/~muir/Time-modules-$pkgver/"
+pkgver=2013.0912
+pkgrel=3
+pkgdesc='Perl time related modules'
+url='http://search.cpan.org/~muir/Time-modules/'
license=('GPL' 'PerlArtistic')
options=('!emptydirs')
arch=('any')
source=("http://search.cpan.org/CPAN/authors/id/M/MU/MUIR/modules/Time-modules-$pkgver.tar.gz")
-md5sums=('67204ebc06211a877665765f91dc4e51')
+md5sums=('a4330144e24c356ca4c925d14e5ab06b')
build() {
cd Time-modules-$pkgver
@@ -25,4 +25,4 @@ package() {
make install DESTDIR="$pkgdir/"
}
-# vim:set ts=2 sw=2 ft=sh et:
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-timedate/PKGBUILD b/abs/core/perl_modules/perl-timedate/PKGBUILD
index bd7d0e3..041ee58 100644
--- a/abs/core/perl_modules/perl-timedate/PKGBUILD
+++ b/abs/core/perl_modules/perl-timedate/PKGBUILD
@@ -1,37 +1,37 @@
# $Id$
-# Maintainer: Kevin Piche <kevin@archlinux.org>
+# Maintainer: Felix Yan <felixonmars@gmail.com>
+# Contributor: Kevin Piche <kevin@archlinux.org>
# Contributor: Manolis Tzanidakis
pkgname=perl-timedate
_realname=TimeDate
-pkgver=1.20
-pkgrel=2
+pkgver=2.30
+pkgrel=4
pkgdesc="Date formating subroutines"
-arch=(any)
+arch=('any')
license=('PerlArtistic')
url="http://search.cpan.org/dist/${_realname}/"
-depends=('perl>=5.10.0')
-source=(http://www.cpan.org/authors/id/G/GB/GBARR/${_realname}-${pkgver}.tar.gz)
-options=(!emptydirs)
+depends=('perl')
replaces=('timedate')
provides=('timedate')
-md5sums=('7da7452bce4c684e4238e6d09b390200')
+options=('!emptydirs')
+source=("http://www.cpan.org/authors/id/G/GB/GBARR/${_realname}-${pkgver}.tar.gz")
+md5sums=('b1d91153ac971347aee84292ed886c1c')
build() {
- cd $srcdir/${_realname}-${pkgver}
+ cd ${_realname}-${pkgver}
# install module in vendor directories.
perl Makefile.PL INSTALLDIRS=vendor
make
+}
+
+check() {
+ cd ${_realname}-${pkgver}
make test
}
package() {
- cd $srcdir/${_realname}-${pkgver}
- make install DESTDIR=${pkgdir}
-
- # remove perllocal.pod and .packlist
- find ${pkgdir} -name perllocal.pod -delete
- find ${pkgdir} -name .packlist -delete
+ cd ${_realname}-${pkgver}
+ make install DESTDIR="${pkgdir}"
}
-# vim: ts=2 sw=2 et ft=sh
diff --git a/abs/core/perl_modules/perl-tk-tablematrix/PKGBUILD b/abs/core/perl_modules/perl-tk-tablematrix/PKGBUILD
index 4244683..6b53fda 100644
--- a/abs/core/perl_modules/perl-tk-tablematrix/PKGBUILD
+++ b/abs/core/perl_modules/perl-tk-tablematrix/PKGBUILD
@@ -1,25 +1,38 @@
-# $Id: PKGBUILD,v 1.8 2008/03/24 17:11:47 sergej Exp $
-# Maintainer: Sergej Pupykin <sergej@aur.archlinux.org>
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Charles Mauch <cmauch@gmail.com>
pkgname=perl-tk-tablematrix
pkgver=1.23
-pkgrel=4
+pkgrel=18
pkgdesc="Display data in TableSpreadsheet format"
-arch=("i686" "x86_64")
-url="http://search.cpan.org/CERNEY/Tk-TableMatrix"
+arch=("x86_64")
+url="http://search.cpan.org/dist/Tk-TableMatrix"
license=("GPL" "PerlArtistic")
depends=('perl-tk')
options=('!emptydirs')
-source=("http://www.cpan.org/authors/id/C/CE/CERNEY/Tk-TableMatrix-$pkgver.tar.gz")
-md5sums=('6b7653d129bf1a8327054a88b58d6364')
+source=("https://www.cpan.org/authors/id/C/CE/CERNEY/Tk-TableMatrix-${pkgver}.tar.gz")
+sha256sums=('ce9ace8d1c1245b80ea6b2e72ee3e7f75ca4111026e403134b8ecad02ec931da')
build() {
- cd $startdir/src/Tk-TableMatrix-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make install DESTDIR=$startdir/pkg || return 1
- find $startdir/pkg -name '.packlist' -delete
- find $startdir/pkg -name '*.pod' -delete
- rm -f $startdir/pkg/usr/lib/perl5/vendor_perl/auto/Tk/pTk/extralibs.ld
+ cd Tk-TableMatrix-${pkgver}
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+package() {
+ cd Tk-TableMatrix-${pkgver}
+ make install DESTDIR="$pkgdir"
+
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
+ find "$pkgdir" -name 'extralibs.ld' -delete
+
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
diff --git a/abs/core/perl_modules/perl-tk/PKGBUILD b/abs/core/perl_modules/perl-tk/PKGBUILD
index 6d9a17a..fbf5909 100644
--- a/abs/core/perl_modules/perl-tk/PKGBUILD
+++ b/abs/core/perl_modules/perl-tk/PKGBUILD
@@ -1,37 +1,33 @@
# $Id$
-# Maintainer: Felix Yan <felixonmars@gmail.com>
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
# Contributor: François Charette <francois ατ archlinux δοτ org>
# Contributor: Jason Chu <jchu@xentac.net>
# Contributor: Juergen Hoetzel <juergen@archlinux.org>
pkgname=perl-tk
-pkgver=804.032
-pkgrel=3
+pkgver=804.034
+pkgrel=1
pkgdesc="A graphical user interface toolkit for Perl"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://search.cpan.org/dist/Tk"
license=('PerlArtistic' 'GPL' 'custom')
depends=('libpng' 'libjpeg' 'tk' 'perl')
+checkdepends=('xorg-server-xvfb' 'perl-devel-leak' 'perl-test-pod')
options=('!emptydirs' '!strip')
-source=(http://www.cpan.org/authors/id/S/SR/SREZIC/Tk-${pkgver}.tar.gz
- https://github.com/eserte/perl-tk/commit/ba3a92a779f7adcf655b7e45b40ee5b0cb79bc8b.patch
- https://github.com/eserte/perl-tk/commit/1ca4589ef5a87999ec564081900bc8fdaed83c74.patch)
+source=(http://www.cpan.org/authors/id/S/SR/SREZIC/Tk-${pkgver}.tar.gz)
+sha512sums=('8d04fd902db72f80f749256453703e40c94fd009c6a196c608dd3bde4eeb99f974a154d5f52b28baa9e67f75529f0180619989c16cae28a9417b647908de04b6')
build() {
cd Tk-$pkgver
- # FS#40692
- patch -p1 -i ../1ca4589ef5a87999ec564081900bc8fdaed83c74.patch
- patch -p1 -i ../ba3a92a779f7adcf655b7e45b40ee5b0cb79bc8b.patch
-
perl Makefile.PL INSTALLDIRS=vendor
make
}
-#check() {
-# cd Tk-$pkgver
-# make test
-#}
+check() {
+ cd Tk-$pkgver
+ xvfb-run make -j1 test
+}
package() {
cd Tk-$pkgver
@@ -42,7 +38,12 @@ package() {
"${pkgdir}/usr/share/licenses/${pkgname}/tk.license"
install -D -m644 pTk/Tix.license \
"${pkgdir}/usr/share/licenses/${pkgname}/tix.license"
+
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
-md5sums=('47a84c70d1fd254ccece208303e6e9d5'
- '27c00e07b221a41dd6113e677c15af5d'
- 'ea4ef20075bfd7da735a87245feeb061')
diff --git a/abs/core/perl_modules/perl-tree-dag-node/PKGBUILD b/abs/core/perl_modules/perl-tree-dag-node/PKGBUILD
index f5c7216..dcb3df9 100644
--- a/abs/core/perl_modules/perl-tree-dag-node/PKGBUILD
+++ b/abs/core/perl_modules/perl-tree-dag-node/PKGBUILD
@@ -1,23 +1,28 @@
-# $Id: PKGBUILD 65974 2012-02-22 14:07:15Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
pkgname=perl-tree-dag-node
-pkgver=1.06
-pkgrel=3
+pkgver=1.31
+pkgrel=1
pkgdesc="base class for trees"
arch=('any')
url="http://search.cpan.org/dist/Tree-DAG_Node"
license=('GPL' 'PerlArtistic')
+depends=('perl-file-slurp-tiny')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/C/CO/COGENT/Tree-DAG_Node-$pkgver.tar.gz)
-md5sums=('3b006f128bd1d8961fc57c466ffa05f2')
+source=(https://www.cpan.org/authors/id/R/RS/RSAVAGE/Tree-DAG_Node-$pkgver.tgz)
+sha256sums=('1c8ba69772568b3758054247097512c550efe31517c329fb65eef7afccc9d304')
build() {
- cd $srcdir/Tree-DAG_Node-$pkgver
+ cd "$srcdir"/Tree-DAG_Node-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
- make install DESTDIR=$pkgdir
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+}
+
+package() {
+ cd "$srcdir"/Tree-DAG_Node-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-try-tiny/PKGBUILD b/abs/core/perl_modules/perl-try-tiny/PKGBUILD
index f70a01e..821b68b 100644
--- a/abs/core/perl_modules/perl-try-tiny/PKGBUILD
+++ b/abs/core/perl_modules/perl-try-tiny/PKGBUILD
@@ -1,49 +1,32 @@
-# Maintainer: Justin Davis <jrcd83@gmail.com>
-# $Id: PKGBUILD 57540 2011-10-30 17:10:04Z juster $
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
pkgname=perl-try-tiny
-pkgver=0.11
+pkgver=0.30
pkgrel=1
-pkgdesc="minimal try/catch with proper localization of \$@"
-arch=(any)
-license=(PerlArtistic GPL)
-options=(!emptydirs)
-makedepends=('perl-extutils-makemaker')
-checkdepends=('perl-test-simple')
-url=https://metacpan.org/release/Try-Tiny
-source=("http://search.cpan.org/CPAN/authors/id/D/DO/DOY/Try-Tiny-${pkgver}.tar.gz")
-md5sums=(4d2c8ff385ac3513edf4c042dd0eacbe)
-sha512sums=(42a98d0996e4195b1618e99080f67791ec9b09c8c4de669aafcbe75c609718d700a6831dd5a68d8f7bda563c29ce3a8495bbf548b8d38a155471875889d8c701)
-_distdir="${srcdir}/Try-Tiny-${pkgver}"
+pkgdesc="Minimal try/catch with proper localization of \$@"
+arch=('any')
+url="http://search.cpan.org/dist/Try-Tiny"
+license=('MIT')
+depends=('perl')
+options=('!emptydirs')
+source=("http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/Try-Tiny-${pkgver}.tar.gz")
+sha512sums=('f523736ab0504ca0f7150be312e62988c4b9473a9e8469b0746dc8364945e2922c64c92e95e6c2b5792c5d6399dabea3d00aa45c065155b95519d5658a07216c')
build() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
- MODULEBUILDRC=/dev/null
-
- cd "$_distdir"
- /usr/bin/perl Makefile.PL
- make
- )
+ cd Try-Tiny-${pkgver}
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
}
check() {
- ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- cd "$_distdir"
- make test
- )
+ cd Try-Tiny-${pkgver}
+ make test
}
package() {
- cd "$_distdir"
- make DESTDIR="$pkgdir" install
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+ cd Try-Tiny-${pkgver}
+ make DESTDIR="$pkgdir" install
+ # upstream typo :/
+ install -D -m644 LICENCE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
-
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-unicode-linebreak/PKGBUILD b/abs/core/perl_modules/perl-unicode-linebreak/PKGBUILD
new file mode 100644
index 0000000..3ed46bc
--- /dev/null
+++ b/abs/core/perl_modules/perl-unicode-linebreak/PKGBUILD
@@ -0,0 +1,39 @@
+# $ID$
+# Maintainer: Rémy Oudompheng <remy@archlinux.org>
+
+pkgname=perl-unicode-linebreak
+_dist=Unicode-LineBreak
+pkgver=2017.004
+pkgrel=2
+pkgdesc="UAX #14 Unicode Line Breaking Algorithm"
+arch=('x86_64')
+url="https://metacpan.org/release/${_dist}"
+license=('PerlArtistic' 'GPL')
+depends=('perl' 'perl-mime-charset' 'libthai')
+checkdepends=('perl-test-pod')
+options=('!emptydirs')
+source=(https://cpan.metacpan.org/authors/id/N/NE/NEZUMI/${_dist}-${pkgver}.tar.gz)
+# Checksums from https://cpan.metacpan.org/authors/id/N/NE/NEZUMI/CHECKSUMS
+md5sums=('de7672227922260ac92d20bbad29660b')
+sha256sums=('655bc3c4cb60ad0770d97816716cfe322f24e602c70e595f5941dfa02c40cb76')
+
+build() {
+ cd "${srcdir}/${_dist}-${pkgver}"
+ unset PERL5LIB PERL_MM_OPT PERL_MB_OPT PERL_LOCAL_LIB_ROOT
+ export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL=--skipdeps
+ perl Makefile.PL
+ make
+}
+
+check() {
+ cd "${srcdir}/${_dist}-${pkgver}"
+ unset PERL5LIB PERL_MM_OPT PERL_MB_OPT PERL_LOCAL_LIB_ROOT
+ export PERL_MM_USE_DEFAULT=1
+ make test
+}
+
+package() {
+ cd "${srcdir}/${_dist}-${pkgver}"
+ unset PERL5LIB PERL_MM_OPT PERL_MB_OPT PERL_LOCAL_LIB_ROOT
+ make install INSTALLDIRS=vendor DESTDIR="$pkgdir"
+}
diff --git a/abs/core/perl_modules/perl-unicode-map/PKGBUILD b/abs/core/perl_modules/perl-unicode-map/PKGBUILD
index 1d03e86..d3dc5ef 100644
--- a/abs/core/perl_modules/perl-unicode-map/PKGBUILD
+++ b/abs/core/perl_modules/perl-unicode-map/PKGBUILD
@@ -1,30 +1,50 @@
-# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman
-# Contributor: Ross melin <rdmelin@gmail.com>
+# Contributor: John D Jones III <j[nospace]n[nospace]b[nospace]e[nospace]k[nospace]1972 -_AT_- the domain name google offers a mail service at ending in dot com>
+# Generator : CPANPLUS::Dist::Arch 1.27
-# Required by zoneminder
-
-pkgname=perl-unicode-map
-pkgver=0.112
-pkgrel=2
-pkgdesc="Unicode::Map"
+pkgname='perl-unicode-map'
+pkgver='0.112'
+pkgrel='3'
+pkgdesc="V0.112 - maps charsets from and to utf16 unicode "
arch=('i686' 'x86_64')
-url="http://search.cpan.org/~MSCHWARTZ/Unicode-Map"
-license=('GPL' 'PerlArtistic')
-depends=('perl')
+license=('PerlArtistic' 'GPL')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/M/MS/MSCHWARTZ/Unicode-Map-$pkgver.tar.gz)
+depends=('perl>=0')
+makedepends=()
+url='http://search.cpan.org/dist/Unicode-Map'
+source=('http://search.cpan.org/CPAN/authors/id/M/MS/MSCHWARTZ/Unicode-Map-0.112.tar.gz')
md5sums=('edaa8fc5ddf0e5d805e274283dd0625d')
+sha512sums=('f66961ee84db7316289176cf43ddb8366ecfaf614130f8b1018931a92b96d16a97f231da6fdd1d8c1bd95ddd50f4b93d82ff87affbbd1162c894b1f302f27d4f')
+_distdir="Unicode-Map-0.112"
build() {
- cd $startdir/src/Unicode-Map-$pkgver
- eval `perl -V:archname`
- PERL_MM_USE_DEFAULT=1 /usr/bin/perl Makefile.PL \
- INSTALLDIRS=vendor || return 1
-
- /usr/bin/make || return 1
- /usr/bin/make DESTDIR=$startdir/pkg install || return 1
- /usr/bin/find $startdir/pkg -name '.packlist' -delete
- /usr/bin/find $startdir/pkg -name '*.pod' -delete
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ MODULEBUILDRC=/dev/null
+
+ cd "$srcdir/$_distdir"
+ /usr/bin/perl Makefile.PL
+ make
+ )
+}
+
+check() {
+ cd "$srcdir/$_distdir"
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
+ make test
+ )
+}
+
+package() {
+ cd "$srcdir/$_distdir"
+ make install
+
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
}
+# Local Variables:
+# mode: shell-script
+# sh-basic-offset: 2
+# End:
# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-unicode-string/PKGBUILD b/abs/core/perl_modules/perl-unicode-string/PKGBUILD
index 06ebb3e..1ff763b 100644
--- a/abs/core/perl_modules/perl-unicode-string/PKGBUILD
+++ b/abs/core/perl_modules/perl-unicode-string/PKGBUILD
@@ -1,28 +1,33 @@
-# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $
-# Maintainer: James Rayner <iphitus@gmail.com>
+# Maintainer: Simon Perry <aur [at] sanxion [dot] net>
+# Contributor: James Rayner <iphitus@gmail.com>
# Contributor: Andrew Simmons <andrew.simmons@gmail.com>
pkgname=perl-unicode-string
_realname=Unicode-String
-pkgver=2.09
+pkgver=2.10
pkgrel=3
pkgdesc="String of Unicode characters for perl (UCS2/UTF16)"
-arch=(i686 x86_64)
+arch=('arm' 'armv6h' 'armv7h' 'i686' 'x86_64')
license=('PerlArtistic')
url="http://search.cpan.org/dist/${_realname}/"
-depends=('perl>=5.10.0')
+depends=('perl')
options=(!emptydirs)
-source=(http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/${_realname}-${pkgver}.tar.gz)
-md5sums=('553e68e603723bf7c631f8701ab0d678')
+source=(http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/GAAS/${_realname}-${pkgver}.tar.gz)
+sha256sums=('894a110ece479546af8afec0972eec7320c86c4dea4e6b354dff3c7526ba9b68')
build() {
- cd ${startdir}/src/${_realname}-${pkgver}
- # install module in vendor directories.
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make install DESTDIR=${startdir}/pkg || return 1
+ cd "${srcdir}/${_realname}-${pkgver}"
+ # in stall module in vendor directories.
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd "${srcdir}/${_realname}-${pkgver}"
+ make test
+}
- # remove perllocal.pod and .packlist
- find ${startdir}/pkg -name perllocal.pod -delete
- find ${startdir}/pkg -name .packlist -delete
+package() {
+ cd "${srcdir}/${_realname}-${pkgver}"
+ make install DESTDIR="${pkgdir}"
}
diff --git a/abs/core/perl_modules/perl-unicode-utf8simple/PKGBUILD b/abs/core/perl_modules/perl-unicode-utf8simple/PKGBUILD
index a5b9dfb..b3fb861 100644
--- a/abs/core/perl_modules/perl-unicode-utf8simple/PKGBUILD
+++ b/abs/core/perl_modules/perl-unicode-utf8simple/PKGBUILD
@@ -1,23 +1,29 @@
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Allan McRae <mcrae_allan@hotmail.com>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-unicode-utf8simple
pkgver=1.06
-pkgrel=2
+pkgrel=6
pkgdesc="Conversions to/from UTF8 from/to characterse"
-arch=('i686' 'x86_64')
-url="http://search.cpan.org/~GUS/Unicode-UTF8simple"
+arch=('any')
+url="http://search.cpan.org/dist/Unicode-UTF8simple"
license=('GPL' 'PerlArtistic')
depends=('perl>=5.10.0')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/G/GU/GUS/Unicode-UTF8simple-$pkgver.tar.gz)
-md5sums=('1d90907170ed41690a572a2d6ed6e7da')
+source=(https://www.cpan.org/authors/id/G/GU/GUS/Unicode-UTF8simple-$pkgver.tar.gz)
+sha256sums=('e1249ac08daceb8a83c170c00810001f15d73418e9595711bee663d0130c0fe5')
build() {
- cd $startdir/src/Unicode-UTF8simple-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make install DESTDIR=$startdir/pkg || return 1
- find $startdir/pkg -name '.packlist' -delete
- find $startdir/pkg -name '*.pod' -delete
+ cd "$srcdir"/Unicode-UTF8simple-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+package() {
+ cd "$srcdir"/Unicode-UTF8simple-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-uri/PKGBUILD b/abs/core/perl_modules/perl-uri/PKGBUILD
index 7f18b32..c6b5531 100644
--- a/abs/core/perl_modules/perl-uri/PKGBUILD
+++ b/abs/core/perl_modules/perl-uri/PKGBUILD
@@ -1,21 +1,22 @@
-# $Id: PKGBUILD 140684 2011-10-18 03:20:44Z eric $
-# Maintainer: eric <eric@archlinux.org>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
# Contributor: Manolis Tzanidakis
# Contributor: Firmicus <francois.archlinux.org>
pkgname=perl-uri
_realname=URI
-pkgver=1.59
+pkgver=1.74
pkgrel=1
pkgdesc="Uniform Resource Identifiers (absolute and relative)"
arch=('any')
url="http://search.cpan.org/dist/${_realname}/"
license=('PerlArtistic')
-depends=('perl>=5.10.0')
+depends=('perl')
+checkdepends=('perl-test-needs')
provides=('perl-uri-escape=3.30')
options=('!emptydirs')
-source=(http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/${_realname}-$pkgver.tar.gz)
-md5sums=('fecebf8fa20e2d26ea4a1649c095e96e')
+source=("http://cpan.metacpan.org/authors/id/E/ET/ETHER/${_realname}-${pkgver}.tar.gz")
+sha512sums=('b537bd09c355989a2bb1919e2c228cf189e57f993add4246fa482d8ee5ec814266c6fb3229befce2f294456ee784a819d9a54013c43a2ad41b5d8914fabf046b')
build() {
cd "${srcdir}/${_realname}-$pkgver"
@@ -24,6 +25,11 @@ build() {
make
}
+check() {
+ cd "${srcdir}/${_realname}-${pkgver}"
+ make test
+}
+
package() {
cd "${srcdir}/${_realname}-$pkgver"
make install DESTDIR="${pkgdir}"
diff --git a/abs/core/perl_modules/perl-variable-magic/PKGBUILD b/abs/core/perl_modules/perl-variable-magic/PKGBUILD
new file mode 100644
index 0000000..e13315d
--- /dev/null
+++ b/abs/core/perl_modules/perl-variable-magic/PKGBUILD
@@ -0,0 +1,55 @@
+# $Id$
+# Maintainer: Sergej Pupykin <arch+pub@sergej.pp.ru>
+# Maintainer: Maxwell Pray a.k.a. Synthead <synthead@gmail.com>
+# Contributor: Justin Davis <jrcd83@gmail.com>
+
+pkgname="perl-variable-magic"
+_cpanname="Variable-Magic"
+pkgver=0.62
+pkgrel=1
+pkgdesc="Associate user-defined magic to variables from Perl."
+arch=("x86_64")
+license=("PerlArtistic" "GPL")
+options=("!emptydirs")
+depends=("perl")
+url="http://search.cpan.org/dist/$_cpanname"
+source=("http://search.cpan.org/CPAN/authors/id/V/VP/VPIT/$_cpanname-$pkgver.tar.gz")
+
+# Function to change to the working directory and set
+# environment variables to override undesired options.
+prepareEnvironment() {
+ cd "$srcdir/$_cpanname-$pkgver"
+ export \
+ PERL_MM_USE_DEFAULT="1" \
+ PERL_AUTOINSTALL="--skipdeps" \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='${pkgdir//\'/\\\'}'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '${pkgdir//\'/\\\'}'" \
+ MODULEBUILDRC="/dev/null"
+}
+sha256sums=('3f9a18517e33f006a9c2fc4f43f01b54abfe6ff2eae7322424f31069296b615c')
+
+build() {
+ prepareEnvironment
+ /usr/bin/perl Makefile.PL
+ make
+}
+
+check() {
+ prepareEnvironment
+ make test
+}
+
+package() {
+ prepareEnvironment
+ make install
+
+ # Remove "perllocal.pod" and ".packlist".
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
+}
diff --git a/abs/core/perl_modules/perl-wsdl/PKGBUILD b/abs/core/perl_modules/perl-wsdl/PKGBUILD
index e2c580f..9e51bd3 100644
--- a/abs/core/perl_modules/perl-wsdl/PKGBUILD
+++ b/abs/core/perl_modules/perl-wsdl/PKGBUILD
@@ -1,6 +1,6 @@
pkgname=perl-wsdl
pkgver=3.003
-pkgrel=1
+pkgrel=2
pkgdesc="SOAP-WSDL provides a SOAP client with WSDL support"
arch=(any)
url="http://search.cpan.org/~swalters/SOAP-WSDL/"
diff --git a/abs/core/perl_modules/perl-www-mechanize/PKGBUILD b/abs/core/perl_modules/perl-www-mechanize/PKGBUILD
index ea4e61b..6b76209 100644
--- a/abs/core/perl_modules/perl-www-mechanize/PKGBUILD
+++ b/abs/core/perl_modules/perl-www-mechanize/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 66104 2012-02-23 01:05:44Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Francois Charette <firmicus@gmx.net>
pkgname=perl-www-mechanize
-pkgver=1.72
+pkgver=1.88
pkgrel=1
pkgdesc="Automates web page form & link interaction"
arch=(any)
@@ -12,14 +12,18 @@ license=('GPL' 'PerlArtistic')
depends=('perl-libwww' 'perl-html-parser' 'perl-uri' 'perl-http-response-encoding'
'perl-http-server-simple' 'perl-test-warn' 'perl-html-form')
options=('!emptydirs')
-source=(http://search.cpan.org/CPAN/authors/id/J/JE/JESSE/WWW-Mechanize-$pkgver.tar.gz)
-md5sums=('231709669de7d912185b91e454206532')
+source=(http://search.cpan.org/CPAN/authors/id/O/OA/OALDERS/WWW-Mechanize-$pkgver.tar.gz)
+sha256sums=('36d97e778ab911ab5a762d551541686cbf3463c571f474322f7b5da77f50a879')
build() {
- cd $srcdir/WWW-Mechanize-$pkgver
+ cd "$srcdir"/WWW-Mechanize-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
- make install DESTDIR=$pkgdir
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+}
+
+package() {
+ cd "$srcdir"/WWW-Mechanize-$pkgver
+ make install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-www-robotrules/PKGBUILD b/abs/core/perl_modules/perl-www-robotrules/PKGBUILD
index 790cf73..94d7f6e 100644
--- a/abs/core/perl_modules/perl-www-robotrules/PKGBUILD
+++ b/abs/core/perl_modules/perl-www-robotrules/PKGBUILD
@@ -1,49 +1,30 @@
-# Packager: Justin "juster" Davis <jrcd83@gmail.com>
-# $Id: PKGBUILD 150764 2012-02-21 20:29:03Z juster $
+# $Id$
+# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgname=perl-www-robotrules
pkgver=6.02
-pkgrel=1
-pkgdesc="database of robots.txt-derived permissions"
-arch=(any)
-license=(PerlArtistic GPL)
-options=(!emptydirs)
-depends=('perl>=5.8.1' 'perl-uri>=1.10')
-conflicts=('perl-libwww<6')
-url=https://metacpan.org/release/WWW-RobotRules
-source=("http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/WWW-RobotRules-${pkgver}.tar.gz")
-md5sums=(b7186e8b8b3701e70c22abf430742403)
-sha512sums=(781a2fc90e4efed901a91ecf4f2aaac2684409c6a75a8434ff140654838bb05d11f8fa760642e20eee96450d3ced6815a4dab11a4245bc8120c69ca68ab49e44)
-_distdir="${srcdir}/WWW-RobotRules-${pkgver}"
+pkgrel=4
+pkgdesc="Database of robots.txt-derived permissions"
+arch=('any')
+url="https://metacpan.org/release/WWW-RobotRules"
+license=('PerlArtistic' 'GPL')
+depends=('perl' 'perl-uri')
+options=('!emptydirs')
+source=(http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/WWW-RobotRules-${pkgver}.tar.gz)
+sha1sums=('e158e6559307878b32d8e4c241bf257c2bc88ebb')
-build()
-(
- export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
- PERL_AUTOINSTALL=--skipdeps \
- PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
- PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
- MODULEBUILDRC=/dev/null
-
- cd "$_distdir"
- /usr/bin/perl Makefile.PL
- make
-)
+build() {
+ cd "${srcdir}/WWW-RobotRules-${pkgver}"
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
-check()
-(
- export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
- cd "$_distdir"
- make test
-)
+check() {
+ cd "${srcdir}/WWW-RobotRules-${pkgver}"
+ make test
+}
package() {
- cd "$_distdir"
- make DESTDIR="$pkgdir" install
- find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+ cd "${srcdir}/WWW-RobotRules-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
-
-# Local Variables:
-# mode: shell-script
-# sh-basic-offset: 2
-# End:
-# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-x10/PKGBUILD b/abs/core/perl_modules/perl-x10/PKGBUILD
index 51283d5..bfcfaa1 100644
--- a/abs/core/perl_modules/perl-x10/PKGBUILD
+++ b/abs/core/perl_modules/perl-x10/PKGBUILD
@@ -1,30 +1,50 @@
-# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman
-# Contributor: Ross melin <rdmelin@gmail.com>
+# Contributor: John D Jones III <jnbek1972 -_AT_- g m a i l -_Dot_- com>
+# Generator : CPANPLUS::Dist::Arch 1.29
-# Required by zoneminder
-
-pkgname=perl-x10
-pkgver=0.03
-pkgrel=2
-pkgdesc="X10"
-arch=('i686' 'x86_64')
-url="http://search.cpan.org/~ROBF/X10"
-license=('GPL' 'PerlArtistic')
-depends=('perl-astro-suntime>=0.01' 'perl-device-serialport' 'perl-time-modules')
+pkgname='perl-x10'
+pkgver='0.03'
+pkgrel='3'
+pkgdesc="Manage X10 devices in Perl"
+arch=('any')
+license=('PerlArtistic' 'GPL')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/R/RO/ROBF/X10-$pkgver.tar.gz)
+depends=('perl-astro-suntime>=0.01' 'perl-device-serialport' 'perl-time-modules')
+makedepends=()
+url='http://search.mcpan.org/dist/X10'
+source=('http://search.mcpan.org/CPAN/authors/id/R/RO/ROBF/X10-0.03.tar.gz')
md5sums=('056b3d98fab545865148b948de6784c7')
+sha512sums=('6ed2b9526732dc5f704ceb94f3a9abb51c208aabb6f127480046ce1f01ecf763e4de2dcb5bf52ef598831dbd5ba78ff9d108238001070076b0cc05c7681dea2f')
+_distdir="X10-0.03"
build() {
- cd $startdir/src/X10-$pkgver
- eval `perl -V:archname`
- PERL_MM_USE_DEFAULT=1 /usr/bin/perl Makefile.PL \
- INSTALLDIRS=vendor || return 1
-
- /usr/bin/make || return 1
- /usr/bin/make DESTDIR=$startdir/pkg install || return 1
- /usr/bin/find $startdir/pkg -name '.packlist' -delete
- /usr/bin/find $startdir/pkg -name '*.pod' -delete
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB="" \
+ PERL_AUTOINSTALL=--skipdeps \
+ PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \
+ PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \
+ MODULEBUILDRC=/dev/null
+
+ cd "$srcdir/$_distdir"
+ /usr/bin/perl Makefile.PL
+ make
+ )
+}
+
+check() {
+ cd "$srcdir/$_distdir"
+ ( export PERL_MM_USE_DEFAULT=1 PERL5LIB=""
+ make test
+ )
+}
+
+package() {
+ cd "$srcdir/$_distdir"
+ make install
+
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
}
+# Local Variables:
+# mode: shell-script
+# sh-basic-offset: 2
+# End:
# vim:set ts=2 sw=2 et:
diff --git a/abs/core/perl_modules/perl-xml-dom/PKGBUILD b/abs/core/perl_modules/perl-xml-dom/PKGBUILD
index 07e39f2..767a9c0 100644
--- a/abs/core/perl_modules/perl-xml-dom/PKGBUILD
+++ b/abs/core/perl_modules/perl-xml-dom/PKGBUILD
@@ -1,14 +1,16 @@
-# Maintainer: kfgz <kfgz at interia pl>
+# Maintainer: Brian Bidulock <bidulock@openss7.org>
+# Contributor: kfgz <kfgz at interia pl>
# Contributor: François Charette <firmicus at gmx dot net>
pkgname=perl-xml-dom
pkgver=1.44
-pkgrel=7
+pkgrel=9
pkgdesc="Implements Level 1 of W3's DOM"
arch=('i686' 'x86_64')
url="http://search.cpan.org/dist/XML-DOM"
license=('GPL' 'PerlArtistic')
-depends=('perl>=5.10.0' 'perlxml>=2.30' 'perl-xml-regexp' 'libxml-perl>=0.07' 'perl-libwww')
+#'perlxml>=2.30'
+depends=('perl>=5.10.0' 'perl-xml-regexp' 'libxml-perl>=0.07' 'perl-libwww')
options=('!emptydirs')
source=(http://www.cpan.org/authors/id/T/TJ/TJMATHER/XML-DOM-${pkgver}.tar.gz)
md5sums=('1ec2032a06e5762984f7a332c199c205')
@@ -19,9 +21,20 @@ build() {
make
}
+_perl_depends() {
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
+}
+
package() {
cd ${srcdir}/XML-DOM-${pkgver}
make install DESTDIR=${pkgdir}
find ${pkgdir} -name '.packlist' -delete
find ${pkgdir} -name '*.pod' -delete
+ _perl_depends
}
diff --git a/abs/core/perl_modules/perl-xml-libxml/PKGBUILD b/abs/core/perl_modules/perl-xml-libxml/PKGBUILD
index 24c6acd..ad82aab 100644
--- a/abs/core/perl_modules/perl-xml-libxml/PKGBUILD
+++ b/abs/core/perl_modules/perl-xml-libxml/PKGBUILD
@@ -1,29 +1,44 @@
-# Maintainer: François Charette <francois.archlinux.org>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Jonathan Steel <jsteel@aur.archlinux.org>
+# Contributor: Justin "juster" Davis <jrcd83@gmail.com>
+# Contributor: François Charette <francois.archlinux.org>
pkgname=perl-xml-libxml
-pkgver=1.70
-pkgrel=2
+pkgver=2.0132
+pkgrel=1
pkgdesc="Interface to the libxml library"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://search.cpan.org/dist/XML-LibXML"
license=('GPL')
-depends=('libxml2' 'perl-xml-sax>=0.11' 'perl-xml-namespacesupport>=1.07')
+depends=('libxml2' 'perl-xml-sax' 'perl-xml-namespacesupport')
+checkdepends=('perl-test-pod' 'perl-test-leaktrace' 'perl-cpan-changes' 'perl-uri')
provides=('perl-libxml' 'perl-xml-libxml-common')
replaces=('perl-libxml' 'perl-xml-libxml-common')
-conflicts=('perl-libxml' 'perl-xml-libxml-common')
-install=perl-xml-libxml.install
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/P/PA/PAJAS/XML-LibXML-$pkgver.tar.gz)
+install=perl-xml-libxml.install
+source=(http://www.cpan.org/authors/id/S/SH/SHLOMIF/XML-LibXML-$pkgver.tar.gz)
+sha512sums=('3df1cb67ea955133492f2b6f8def2b28079c59e99170a31820aca69ea81686c4b67171509f1b311faab9389d200c4a24942b3950d7c0730ff1233a009b398fce')
build() {
- cd $srcdir/XML-LibXML-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
+ cd "$srcdir"/XML-LibXML-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
}
+
+check() {
+ cd "$srcdir"/XML-LibXML-$pkgver
+ make test
+}
+
package() {
- cd $srcdir/XML-LibXML-$pkgver
- make pure_install doc_install DESTDIR=$pkgdir || return 1
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+ cd "$srcdir"/XML-LibXML-$pkgver
+ make pure_install doc_install DESTDIR="$pkgdir"/
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
-md5sums=('33d4294f708e20c298cfe534d1166844')
diff --git a/abs/core/perl_modules/perl-xml-libxml/perl-xml-libxml.install b/abs/core/perl_modules/perl-xml-libxml/perl-xml-libxml.install
index e92cacc..3a8eb1e 100644
--- a/abs/core/perl_modules/perl-xml-libxml/perl-xml-libxml.install
+++ b/abs/core/perl_modules/perl-xml-libxml/perl-xml-libxml.install
@@ -1,26 +1,23 @@
-# Maintainer: François Charette <francois.archlinux.org>
+post_install() {
+ echo ":: Installing SAX XML Parsers"
+ perl -MXML::SAX -e "XML::SAX->add_parser(q(XML::LibXML::SAX::Parser))->save_parsers()"
+ perl -MXML::SAX -e "XML::SAX->add_parser(q(XML::LibXML::SAX))->save_parsers()"
+}
-pkgname=perl-xml-libxml
-pkgver=1.70
-pkgrel=2
-pkgdesc="Interface to the libxml library"
-arch=('i686' 'x86_64')
-url="http://search.cpan.org/dist/XML-LibXML"
-license=('GPL')
-depends=('libxml2' 'perl-xml-sax>=0.11' 'perl-xml-namespacesupport>=1.07')
-provides=('perl-libxml' 'perl-xml-libxml-common')
-replaces=('perl-libxml' 'perl-xml-libxml-common')
-conflicts=('perl-libxml' 'perl-xml-libxml-common')
-install=perl-xml-libxml.install
-options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/P/PA/PAJAS/XML-LibXML-$pkgver.tar.gz)
+post_upgrade() {
+ if [[ ! -f /usr/share/perl5/vendor_perl/XML/SAX/ParserDetails.ini ]]; then
+ post_install
+ else
+ libxmlcount=`grep -c XML::LibXML::SAX /usr/share/perl5/vendor_perl/XML/SAX/ParserDetails.ini`
+ if [[ $libxmlcount == 0 ]]; then
+ post_install
+ fi
+ fi
+}
-build() {
- cd $srcdir/XML-LibXML-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make pure_install doc_install DESTDIR=$pkgdir || return 1
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+pre_remove() {
+ if [[ -f /usr/share/perl5/vendor_perl/XML/SAX/ParserDetails.ini ]]; then
+ perl -MXML::SAX -e "XML::SAX->remove_parser(q(XML::LibXML::SAX::Parser))->save_parsers()"
+ perl -MXML::SAX -e "XML::SAX->remove_parser(q(XML::LibXML::SAX))->save_parsers()"
+ fi
}
-md5sums=('33d4294f708e20c298cfe534d1166844')
diff --git a/abs/core/perl_modules/perl-xml-libxslt/PKGBUILD b/abs/core/perl_modules/perl-xml-libxslt/PKGBUILD
index 708898b..69b9301 100644
--- a/abs/core/perl_modules/perl-xml-libxslt/PKGBUILD
+++ b/abs/core/perl_modules/perl-xml-libxslt/PKGBUILD
@@ -1,30 +1,41 @@
-# Id:$
-# Maintainer: François Charette <firmicus ατ gmx δοτ net>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Jonathan Steel <jsteel@aur.archlinux.org>
+# Contributor: Justin "juster" Davis <jrcd83@gmail.com>
+# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-xml-libxslt
-pkgver=1.70
-pkgrel=6
-pkgdesc="Interface to the gnome libxslt library "
-arch=('i686' 'x86_64')
+pkgver=1.96
+pkgrel=1
+pkgdesc="Interface to the gnome libxslt library"
+arch=('x86_64')
url="http://search.cpan.org/dist/XML-LibXSLT"
license=('GPL')
depends=('perl-xml-libxml' 'libxslt')
-source=(http://www.cpan.org/authors/id/P/PA/PAJAS/XML-LibXSLT-$pkgver.tar.gz)
-md5sums=('c63a7913999de076e5c911810f69b392')
+checkdepends=('perl-test-pod')
+options=('!emptydirs')
+source=(http://www.cpan.org/authors/id/S/SH/SHLOMIF/XML-LibXSLT-$pkgver.tar.gz)
+sha512sums=('7b6e22889c538bbd861c6420cd56893d229676d3afc1cf30e17cae48a4714139769a99a48a99f1dff52864f4989e410303007c07941625bf6bd12a24276c35e6')
build() {
- cd $srcdir/XML-LibXSLT-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ cd XML-LibXSLT-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
make
}
-check () {
- cd $srcdir/XML-LibXSLT-$pkgver
+check() {
+ cd XML-LibXSLT-$pkgver
make test
}
package() {
- cd $srcdir/XML-LibXSLT-$pkgver
- make install DESTDIR=$pkgdir
+ cd XML-LibXSLT-$pkgver
+ make DESTDIR="$pkgdir" install
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
-
diff --git a/abs/core/perl_modules/perl-xml-namespacesupport/PKGBUILD b/abs/core/perl_modules/perl-xml-namespacesupport/PKGBUILD
index a641a81..6f5b6e3 100644
--- a/abs/core/perl_modules/perl-xml-namespacesupport/PKGBUILD
+++ b/abs/core/perl_modules/perl-xml-namespacesupport/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 143952 2011-11-30 22:08:16Z giovanni $
+# $Id$
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-xml-namespacesupport
-pkgver=1.11
+pkgver=1.12
pkgrel=2
pkgdesc="Generic namespace helpers (ported from SAX2)"
arch=('any')
@@ -12,7 +12,7 @@ license=('GPL')
depends=('perl')
options=('!emptydirs')
source=("http://www.cpan.org/authors/id/P/PE/PERIGRIN/XML-NamespaceSupport-${pkgver}.tar.gz")
-md5sums=('222cca76161cd956d724286d36b607da')
+md5sums=('a8916c6d095bcf073e1108af02e78c97')
build() {
cd "${srcdir}/XML-NamespaceSupport-${pkgver}"
diff --git a/abs/core/perl_modules/perl-xml-parser/PKGBUILD b/abs/core/perl_modules/perl-xml-parser/PKGBUILD
index 3e2a9db..f790eca 100644
--- a/abs/core/perl_modules/perl-xml-parser/PKGBUILD
+++ b/abs/core/perl_modules/perl-xml-parser/PKGBUILD
@@ -1,42 +1,38 @@
-# $Id: PKGBUILD 160565 2012-06-02 10:28:38Z bluewind $
-# Maintainer:
-# Contributor: firmicus <francois@archlinux.org>
-# Contributor: dorphell <dorphell@archlinux.org>
-# Contributor: herb <hrose@archlinux.org>
+# $Id$
+# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgname=perl-xml-parser
-_realname=XML-Parser
-pkgver=2.41
-pkgrel=3
+pkgver=2.44
+pkgrel=6
pkgdesc="Expat-based XML parser module for perl"
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('GPL' 'PerlArtistic')
-url="http://search.cpan.org/dist/${_realname}/"
+url="http://search.cpan.org/dist/XML-Parser/"
depends=('perl' 'expat')
-replaces=('perlxml')
-provides=("perlxml=${pkgver}")
options=('!emptydirs')
-source=("http://search.cpan.org/CPAN/authors/id/T/TO/TODDR/${_realname}-${pkgver}.tar.gz")
-md5sums=('c320d2ffa459e6cdc6f9f59c1185855e')
+source=("http://search.cpan.org/CPAN/authors/id/T/TO/TODDR/XML-Parser-${pkgver}.tar.gz")
+sha1sums=('0ab6b932713ec1f9927a1b1c619b6889a5c12849')
build() {
- cd "${srcdir}/${_realname}-${pkgver}"
-
- # install module in vendor directories.
+ cd XML-Parser-${pkgver}
perl Makefile.PL INSTALLDIRS=vendor
make
}
check() {
- cd "${srcdir}/${_realname}-${pkgver}"
+ cd XML-Parser-${pkgver}
make test
}
package() {
- cd "${srcdir}/${_realname}-${pkgver}"
- make install DESTDIR="${pkgdir}"
+ cd XML-Parser-${pkgver}
+ make DESTDIR="${pkgdir}" install
- # remove perllocal.pod and .packlist.
- find "${pkgdir}" -name perllocal.pod -delete
- find "${pkgdir}" -name .packlist -delete
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
diff --git a/abs/core/perl_modules/perl-xml-regexp/PKGBUILD b/abs/core/perl_modules/perl-xml-regexp/PKGBUILD
index 639ee87..e94119f 100644
--- a/abs/core/perl_modules/perl-xml-regexp/PKGBUILD
+++ b/abs/core/perl_modules/perl-xml-regexp/PKGBUILD
@@ -2,16 +2,16 @@
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-xml-regexp
-pkgver=0.03
-pkgrel=7
+pkgver=0.04
+pkgrel=3
pkgdesc="Regular expressions for XML tokens"
arch=('any')
url="http://search.cpan.org/dist/XML-RegExp"
license=('GPL' 'PerlArtistic')
depends=('perl')
options=('!emptydirs')
-source=("http://www.cpan.org/authors/id/T/TJ/TJMATHER/XML-RegExp-${pkgver}.tar.gz")
-md5sums=('5826b24e0d05714e25c2bb04e1f1c09b')
+source=("https://www.cpan.org/authors/id/T/TJ/TJMATHER/XML-RegExp-${pkgver}.tar.gz")
+sha256sums=('df1990096036085c8e2d45904fe180f82bfed40f1a7e05243f334ea10090fc54')
build() {
cd XML-RegExp-${pkgver}
@@ -24,8 +24,8 @@ build() {
package() {
cd XML-RegExp-${pkgver}
- make install DESTDIR=${pkgdir}
+ make install DESTDIR="$pkgdir"
- find ${pkgdir} -name '.packlist' -delete
- find ${pkgdir} -name '*.pod' -delete
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-xml-rss/PKGBUILD b/abs/core/perl_modules/perl-xml-rss/PKGBUILD
index 0178106..4911253 100644
--- a/abs/core/perl_modules/perl-xml-rss/PKGBUILD
+++ b/abs/core/perl_modules/perl-xml-rss/PKGBUILD
@@ -1,29 +1,27 @@
-# $Id: PKGBUILD 65992 2012-02-22 14:14:06Z spupykin $
+# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Francois Charette <firmicus@gmx.net>
pkgname=perl-xml-rss
-pkgver=1.49
-pkgrel=2
+pkgver=1.60
+pkgrel=1
pkgdesc="Parse or create Rich Site Summaries (RSS)"
arch=('any')
url="http://search.cpan.org/dist/XML-RSS"
license=('GPL' 'PerlArtistic')
depends=('perl-datetime' 'perl-datetime-format-mail' 'perl-datetime-format-w3cdtf'
- 'perl-html-parser' 'perlxml>=2.23')
+ 'perl-html-parser' 'perl-xml-parser')
options=('!emptydirs')
source=(http://search.cpan.org/CPAN/authors/id/S/SH/SHLOMIF/XML-RSS-$pkgver.tar.gz)
-md5sums=('b22c5ca9c226ca7b7698a9387f2f1908')
+sha256sums=('4b3359878bb1a2bc06dae7ed17b00143a2b89c814b8b12f6e2780f35b1528677')
build() {
- cd $srcdir/XML-RSS-$pkgver
+ cd "$srcdir"/XML-RSS-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
}
package() {
- cd $srcdir/XML-RSS-$pkgver
- make install DESTDIR=$pkgdir
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+ cd "$srcdir"/XML-RSS-$pkgver
+ make install DESTDIR="$pkgdir"
}
diff --git a/abs/core/perl_modules/perl-xml-sax-base/PKGBUILD b/abs/core/perl_modules/perl-xml-sax-base/PKGBUILD
index 7e3ae07..d304e33 100644
--- a/abs/core/perl_modules/perl-xml-sax-base/PKGBUILD
+++ b/abs/core/perl_modules/perl-xml-sax-base/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 143954 2011-11-30 22:11:53Z giovanni $
+# $Id$
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: James Hunt <lazy at brandnewmath dot com>
pkgname=perl-xml-sax-base
-pkgver=1.08
+pkgver=1.09
pkgrel=2
pkgdesc="Base class SAX Drivers and Filters"
arch=('any')
@@ -12,7 +12,7 @@ license=('GPL' 'PerlArtistic')
depends=('perl')
options=('!emptydirs')
source=("http://www.cpan.org/authors/id/G/GR/GRANTM/XML-SAX-Base-$pkgver.tar.gz")
-md5sums=('38c8c3247dfd080712596118d70dbe32')
+md5sums=('ec347a14065dd7aec7d9fb181b2d7946')
build() {
cd $srcdir/XML-SAX-Base-$pkgver
diff --git a/abs/core/perl_modules/perl-xml-sax-expat/PKGBUILD b/abs/core/perl_modules/perl-xml-sax-expat/PKGBUILD
new file mode 100644
index 0000000..2baf727
--- /dev/null
+++ b/abs/core/perl_modules/perl-xml-sax-expat/PKGBUILD
@@ -0,0 +1,28 @@
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Francois Charette <firmicus@gmx.net>
+
+pkgname=perl-xml-sax-expat
+pkgver=0.51
+pkgrel=5
+pkgdesc="SAX2 Driver for Expat (XML::Parser) "
+arch=('any')
+url="http://search.cpan.org/dist/XML-SAX-Expat"
+license=('GPL' 'PerlArtistic')
+depends=('perl-xml-namespacesupport' 'perl-xml-parser' 'perl-xml-sax')
+install=perl-xml-sax-expat.install
+options=('!emptydirs')
+source=(https://www.cpan.org/authors/id/B/BJ/BJOERN/XML-SAX-Expat-$pkgver.tar.gz)
+sha256sums=('4c016213d0ce7db2c494e30086b59917b302db8c292dcd21f39deebd9780c83f')
+
+build() {
+ cd "$srcdir"/XML-SAX-Expat-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+package(){
+ cd "$srcdir"/XML-SAX-Expat-$pkgver
+ make pure_install doc_install DESTDIR="$pkgdir"
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
+}
diff --git a/abs/core/perl_modules/perl-xml-sax-expat/perl-xml-sax-expat.install b/abs/core/perl_modules/perl-xml-sax-expat/perl-xml-sax-expat.install
new file mode 100644
index 0000000..a95c9e3
--- /dev/null
+++ b/abs/core/perl_modules/perl-xml-sax-expat/perl-xml-sax-expat.install
@@ -0,0 +1,17 @@
+post_install() {
+if [ ! -r /usr/lib/perl5/site_perl/current/XML/SAX/ParserDetails.ini ]; then
+ perl -MXML::SAX -e "XML::SAX->add_parser(q(XML::SAX::Expat))->save_parsers()"
+fi
+}
+
+post_upgrade() {
+if [ ! -r /usr/lib/perl5/site_perl/current/XML/SAX/ParserDetails.ini ]; then
+ perl -MXML::SAX -e "XML::SAX->add_parser(q(XML::SAX::Expat))->save_parsers()"
+fi
+}
+
+pre_remove() {
+ if [[ -f /usr/share/perl5/vendor_perl/XML/SAX/ParserDetails.ini ]]; then
+ perl -MXML::SAX -e "XML::SAX->remove_parser(q(XML::SAX::Expat))->save_parsers()"
+ fi
+}
diff --git a/abs/core/perl_modules/perl-xml-sax/PKGBUILD b/abs/core/perl_modules/perl-xml-sax/PKGBUILD
index 394b72f..39b6194 100644
--- a/abs/core/perl_modules/perl-xml-sax/PKGBUILD
+++ b/abs/core/perl_modules/perl-xml-sax/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 143956 2011-11-30 22:15:20Z giovanni $
+# $Id$
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-xml-sax
-pkgver=0.99
-pkgrel=3
+pkgver=1.00
+pkgrel=1
pkgdesc="Simple API for XML"
arch=('any')
url="http://search.cpan.org/dist/XML-SAX"
@@ -12,27 +12,24 @@ license=('GPL' 'PerlArtistic')
depends=('perl' 'perl-xml-sax-base' 'perl-xml-namespacesupport')
options=('!emptydirs')
install=perl-xml-sax.install
-source=("http://www.cpan.org/authors/id/G/GR/GRANTM/XML-SAX-$pkgver.tar.gz"
- 'perl-xml-sax.patch')
-md5sums=('290f5375ae87fdebfdb5bc3854019f24'
- 'f114c4aad3221d3e7d8314d13b84a869')
+source=("http://www.cpan.org/authors/id/G/GR/GRANTM/XML-SAX-$pkgver.tar.gz")
+sha512sums=('95553c9693d8a310747b4b86d4e80a58d4056b18cfc334f6979c98d0e9034a34253bfb17daecfc5bb28b1bd65e6baf52136f5135a969fadba86aa4148ea9bc1d')
build() {
- cd $srcdir/XML-SAX-$pkgver
- patch -Np1 -i "${srcdir}/perl-xml-sax.patch"
+ cd XML-SAX-$pkgver
PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
make
}
check() {
- cd $srcdir/XML-SAX-$pkgver
+ cd XML-SAX-$pkgver
make test
}
package() {
- cd $srcdir/XML-SAX-$pkgver
- make install DESTDIR=$pkgdir
+ cd XML-SAX-$pkgver
+ PERLLIB=blib/lib make install DESTDIR="$pkgdir"
- find $pkgdir -name '.packlist' -delete
- find $pkgdir -name '*.pod' -delete
+ find "$pkgdir" -name '.packlist' -delete
+ find "$pkgdir" -name '*.pod' -delete
}
diff --git a/abs/core/perl_modules/perl-xml-sax/perl-xml-sax.patch b/abs/core/perl_modules/perl-xml-sax/perl-xml-sax.patch
deleted file mode 100644
index 880468b..0000000
--- a/abs/core/perl_modules/perl-xml-sax/perl-xml-sax.patch
+++ /dev/null
@@ -1,46 +0,0 @@
---- a/Makefile.PL 2011-09-04 23:37:48.000000000 +0200
-+++ b/Makefile.PL 2011-10-07 18:12:50.000000000 +0200
-@@ -12,43 +12,3 @@
- 'XML::NamespaceSupport' => 0.03,
- },
- );
--
--sub MY::install {
-- package MY;
-- my $script = shift->SUPER::install(@_);
--
-- # Only modify existing ParserDetails.ini if user agrees
--
-- my $write_ini_ok = 0;
--
-- eval { require XML::SAX };
-- if ($@) {
-- $write_ini_ok = 1;
-- }
-- else {
-- my $dir = File::Basename::dirname($INC{'XML/SAX.pm'});
-- if (-e File::Spec->catfile($dir, 'SAX', 'ParserDetails.ini')) {
-- $write_ini_ok =
-- ExtUtils::MakeMaker::prompt(
-- "Do you want XML::SAX to alter ParserDetails.ini?", "Y"
-- ) =~ /^y/i;
-- }
-- else {
-- $write_ini_ok = 1;
-- }
-- }
--
-- if ($write_ini_ok) {
-- $script =~ s/install :: (.*)$/install :: $1 install_sax_pureperl/m;
-- $script .= <<"INSTALL";
--
--install_sax_pureperl :
--\t\@\$(PERL) -MXML::SAX -e "XML::SAX->add_parser(q(XML::SAX::PurePerl))->save_parsers()"
--
--INSTALL
--
-- }
--
-- return $script;
--}
--
diff --git a/abs/core/perl_modules/perl-xml-simple/PKGBUILD b/abs/core/perl_modules/perl-xml-simple/PKGBUILD
index 5d5b910..7c4af54 100644
--- a/abs/core/perl_modules/perl-xml-simple/PKGBUILD
+++ b/abs/core/perl_modules/perl-xml-simple/PKGBUILD
@@ -1,27 +1,33 @@
-# $Id: PKGBUILD 87823 2010-08-18 11:13:59Z jgc $
-# Maintainer: Jan de Groot <jgc@archlinux.org>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Jan de Groot <jgc@archlinux.org>
# Contributor: kleptophobiac@gmail.com
pkgname=perl-xml-simple
_realname=XML-Simple
-pkgver=2.18
-pkgrel=3
+pkgver=2.25
+pkgrel=1
pkgdesc="Simple XML parser for perl"
-arch=(any)
+arch=('any')
license=('PerlArtistic')
url="http://search.cpan.org/dist/${_realname}/"
-depends=('perl-xml-parser' 'perl>=5.10.0')
+depends=('perl-xml-sax-expat')
options=('!emptydirs')
-source=(ftp://ftp.cpan.org/pub/CPAN/authors/id/G/GR/GRANTM/${_realname}-${pkgver}.tar.gz)
-md5sums=('593aa8001e5c301cdcdb4bb3b63abc33')
+source=("ftp://ftp.cpan.org/pub/CPAN/authors/id/G/GR/GRANTM/${_realname}-${pkgver}.tar.gz")
+sha512sums=('0f1a6a1bdb8f6ac6fa4deef33d09930eb4758b4a3ed4431624004ffa2b1eb02f0d6ce14cb4942162cb76f7aa39fea4ec6a71e1eb9ebd464b710db7024bdd990c')
build() {
cd "${srcdir}/${_realname}-${pkgver}"
perl Makefile.PL INSTALLDIRS=vendor
make
}
+
+check() {
+ cd "${srcdir}/${_realname}-${pkgver}"
+ make test
+}
+
package() {
cd "${srcdir}/${_realname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
-
diff --git a/abs/core/perl_modules/perl-xml-simple/__changelog b/abs/core/perl_modules/perl-xml-simple/__changelog
deleted file mode 100644
index 93bb26d..0000000
--- a/abs/core/perl_modules/perl-xml-simple/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-change perl dep to 'perl>=5.10.0'
diff --git a/abs/core/perl_modules/perl-xml-treepp/PKGBUILD b/abs/core/perl_modules/perl-xml-treepp/PKGBUILD
index a935963..04e55c6 100644
--- a/abs/core/perl_modules/perl-xml-treepp/PKGBUILD
+++ b/abs/core/perl_modules/perl-xml-treepp/PKGBUILD
@@ -2,7 +2,7 @@
pkgname=perl-xml-treepp
_authorpath=K/KA/KAWASAKI # this is uggly
pkgver=0.43
-pkgrel=2
+pkgrel=3
pkgdesc='XML::TreePP module parses an XML document and expands it for a hash tree.'
_dist=XML-TreePP
arch=('any')
diff --git a/abs/core/perl_modules/perl-xml-twig/PKGBUILD b/abs/core/perl_modules/perl-xml-twig/PKGBUILD
index b8be295..13e8acf 100644
--- a/abs/core/perl_modules/perl-xml-twig/PKGBUILD
+++ b/abs/core/perl_modules/perl-xml-twig/PKGBUILD
@@ -1,33 +1,31 @@
-# $Id: PKGBUILD 162138 2012-06-22 05:50:38Z eric $
-# Maintainer: damir <damir@archlinux.org>
-# Maintainer/Contributor: Francois Charette <firmicus@gmx.net>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
pkgname=perl-xml-twig
-_realname=XML-Twig
-pkgver=3.40
-pkgrel=1
+pkgver=3.52
+pkgrel=3
pkgdesc="A module for easy processing of XML"
arch=('any')
-url="http://search.cpan.org/dist/${_realname}/"
+url="http://search.cpan.org/dist/XML-Twig/"
license=('GPL' 'PerlArtistic')
depends=('perl-xml-parser' 'perl-text-iconv' 'perl')
-checkdepends=('perl-libwww' 'perl-test-pod' 'perl-xml-simple' 'perl-html-tree')
+checkdepends=('perl-libwww' 'perl-test-pod' 'perl-xml-simple' 'perl-html-tree' 'perl-xml-xpath' 'perl-tie-ixhash')
options=('!emptydirs')
-source=("http://www.cpan.org/authors/id/M/MI/MIROD/${_realname}-${pkgver}.tar.gz")
-sha1sums=('37fec67bd2c60d53e861f13a64c1c9e0426858c2')
+source=("http://www.cpan.org/authors/id/M/MI/MIROD/XML-Twig-${pkgver}.tar.gz")
+sha1sums=('ce4ad6f055ea677ab5526e55677faffcc6457eb8')
build() {
- cd "${srcdir}/${_realname}-${pkgver}"
+ cd XML-Twig-${pkgver}
perl Makefile.PL -y INSTALLDIRS=vendor
make
}
check() {
- cd "${srcdir}/${_realname}-${pkgver}"
- make test
+ cd XML-Twig-${pkgver}
+ make test || warning "Tests failed"
}
package() {
- cd "${srcdir}/${_realname}-${pkgver}"
+ cd XML-Twig-${pkgver}
make DESTDIR="${pkgdir}" install
}
diff --git a/abs/core/perl_modules/perl-xml-writer/PKGBUILD b/abs/core/perl_modules/perl-xml-writer/PKGBUILD
index 2e4496a..8defa63 100644
--- a/abs/core/perl_modules/perl-xml-writer/PKGBUILD
+++ b/abs/core/perl_modules/perl-xml-writer/PKGBUILD
@@ -1,23 +1,32 @@
-# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman
+# $Id$
+# Maintainer: Justin Davis <jrcd83@gmail.com>
# Contributor: François Charette <firmicus ατ gmx δοτ net>
pkgname=perl-xml-writer
-pkgver=0.604
-pkgrel=1
+pkgver=0.625
+pkgrel=3
pkgdesc="Module for writing XML documents"
-arch=('i686' 'x86_64')
-url="http://search.cpan.org/~JOSEPHW/XML-Writer"
-license=('GPL' 'PerlArtistic')
-depends=('perl>=5.10.0')
+arch=('any')
+url="http://search.cpan.org/dist/XML-Writer"
+license=('custom')
+depends=('perl')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/J/JO/JOSEPHW/XML-Writer-$pkgver.tar.gz)
-md5sums=('88cd8aec7da39028c2aaf809265a8d68')
+source=(https://www.cpan.org/authors/id/J/JO/JOSEPHW/XML-Writer-$pkgver.tar.gz)
+sha256sums=('e080522c6ce050397af482665f3965a93c5d16f5e81d93f6e2fe98084ed15fbe')
build() {
- cd $startdir/src/XML-Writer-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make install DESTDIR=$startdir/pkg || return 1
- find $startdir/pkg -name '.packlist' -delete
- find $startdir/pkg -name '*.pod' -delete
+ cd XML-Writer-$pkgver
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd XML-Writer-$pkgver
+ make test
+}
+
+package() {
+ cd XML-Writer-$pkgver
+ make DESTDIR="${pkgdir}" install
+ install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
diff --git a/abs/core/perl_modules/perl-xml-xpath/PKGBUILD b/abs/core/perl_modules/perl-xml-xpath/PKGBUILD
index fddb97d..81ae23a 100644
--- a/abs/core/perl_modules/perl-xml-xpath/PKGBUILD
+++ b/abs/core/perl_modules/perl-xml-xpath/PKGBUILD
@@ -1,23 +1,30 @@
-# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman
-# Contributor: François Charette <firmicus ατ gmx δοτ net>
+# $Id$
+#Maintainer:
pkgname=perl-xml-xpath
-pkgver=1.13
-pkgrel=4
-pkgdesc="A set of modules for parsing and evaluating"
-arch=('i686' 'x86_64')
-url="http://search.cpan.org/dist/XML-XPath"
-license=('GPL' 'PerlArtistic')
-depends=('perl>=5.10.0' 'perlxml>=2.23')
+pkgver=1.42
+pkgrel=1
+pkgdesc="A set of modules for parsing and evaluating XPath statements"
+arch=('any')
+url="https://metacpan.org/release/XML-XPath"
+license=('PerlArtistic' 'GPL')
+depends=('perl' 'perl-xml-parser')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/M/MS/MSERGEANT/XML-XPath-$pkgver.tar.gz)
-md5sums=('b5919d9220d83982feb6e2321850c5d7')
+source=("https://cpan.metacpan.org/authors/id/M/MA/MANWAR/XML-XPath-$pkgver.tar.gz")
+sha1sums=('addb3668a25ba45b7242bd2ff78a1f704d6edf14')
build() {
- cd $startdir/src/XML-XPath-$pkgver
- PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1
- make || return 1
- make install DESTDIR=$startdir/pkg || return 1
- find $startdir/pkg -name '.packlist' -delete
- find $startdir/pkg -name '*.pod' -delete
+ cd "${srcdir}/XML-XPath-${pkgver}"
+ perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+check() {
+ cd "${srcdir}/XML-XPath-${pkgver}"
+# make test
+}
+
+package() {
+ cd "${srcdir}/XML-XPath-${pkgver}"
+ make DESTDIR="$pkgdir" install
}
diff --git a/abs/core/perl_modules/perl-yaml-syck/PKGBUILD b/abs/core/perl_modules/perl-yaml-syck/PKGBUILD
index 1b3f73a..8acadac 100644
--- a/abs/core/perl_modules/perl-yaml-syck/PKGBUILD
+++ b/abs/core/perl_modules/perl-yaml-syck/PKGBUILD
@@ -1,37 +1,38 @@
-# $Id: PKGBUILD 160567 2012-06-02 10:28:42Z bluewind $
-# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman
-# Maintainer: kevin <kevin@archlinux.org>
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
pkgname=perl-yaml-syck
-_realname=YAML-Syck
-pkgver=1.20
-pkgrel=2
+pkgver=1.30
+pkgrel=4
pkgdesc="Fast, lightweight YAML loader and dumper"
-arch=('i686' 'x86_64')
-license=('custom')
-url="http://search.cpan.org/dist/${_realname}/"
+arch=('x86_64')
+url="http://search.cpan.org/dist/YAML-Syck/"
+license=('BSD' 'custom')
depends=('perl')
options=('!emptydirs')
-source=(http://www.cpan.org/authors/id/T/TO/TODDR/${_realname}-$pkgver.tar.gz)
-md5sums=('8f6d04ee5817b8479e1234264a8d458d')
+source=(http://www.cpan.org/authors/id/T/TO/TODDR/YAML-Syck-$pkgver.tar.gz)
+sha512sums=('3c38c77589c12652b456ad95120b3223df9e96475a9478692511bf6207ce81bc61204feaa332dbd913d934c41cf5d6515420961b31c20c9fe245373e81ecdda4')
build() {
- cd "${srcdir}/${_realname}-$pkgver"
-
- # install module in vendor directories.
+ cd YAML-Syck-$pkgver
perl Makefile.PL INSTALLDIRS=vendor
make
}
check() {
- cd "${srcdir}/${_realname}-$pkgver"
+ cd YAML-Syck-$pkgver
make test
}
package() {
- cd "${srcdir}/${_realname}-$pkgver"
+ cd YAML-Syck-$pkgver
make install DESTDIR="${pkgdir}"
-
- # license.
install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/COPYING"
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+ _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);')
+ _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);')
+ depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
}
diff --git a/abs/core/perl_modules/perl-yaml-tiny/PKGBUILD b/abs/core/perl_modules/perl-yaml-tiny/PKGBUILD
new file mode 100644
index 0000000..3759296
--- /dev/null
+++ b/abs/core/perl_modules/perl-yaml-tiny/PKGBUILD
@@ -0,0 +1,36 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: AUR Perl <aurperl@juster.info>
+# Generator : CPANPLUS::Dist::Arch 1.15
+
+pkgname=perl-yaml-tiny
+pkgver=1.73
+pkgrel=1
+pkgdesc="Read/Write YAML files with as little code as possible"
+arch=('any')
+license=('PerlArtistic' 'GPL')
+options=('!emptydirs')
+depends=('perl')
+checkdepends=('perl-cpan-meta>=2.150001' 'perl-pod-coverage')
+url='http://search.cpan.org/dist/YAML-Tiny'
+source=("http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/YAML-Tiny-$pkgver.tar.gz")
+sha512sums=('5999e220025aa8076e5e0e9e73e80c2da21660e77f6744d73e8e29962221d02d33a36e9829c44abf7d4f45abae069d8e121c8019bd1600b7e64db5e54efd9987')
+
+build() {
+ cd "${srcdir}/YAML-Tiny-${pkgver}"
+
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+}
+
+check() {
+ cd "${srcdir}/YAML-Tiny-${pkgver}"
+ make test
+}
+
+package() {
+ cd "${srcdir}/YAML-Tiny-${pkgver}"
+ make install DESTDIR="${pkgdir}"
+ find "$pkgdir" -name .packlist -o -name perllocal.pod -delete
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/php/PKGBUILD b/abs/core/php/PKGBUILD
index e73312c..67a725a 100644
--- a/abs/core/php/PKGBUILD
+++ b/abs/core/php/PKGBUILD
@@ -8,14 +8,12 @@ pkgname=('php'
'php-fpm'
'php-embed'
'php-phpdbg'
- 'php-pear'
+ 'php-dblib'
'php-enchant'
'php-gd'
'php-imap'
'php-intl'
- 'php-ldap'
- 'php-mcrypt'
- 'php-mssql'
+ 'php-sodium'
'php-odbc'
'php-pgsql'
'php-pspell'
@@ -23,63 +21,56 @@ pkgname=('php'
'php-sqlite'
'php-tidy'
'php-xsl')
-pkgver=5.6.30
+pkgver=7.2.4
pkgrel=1
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('PHP')
url='http://www.php.net'
-makedepends=('apache' 'c-client' 'postgresql-libs' 'libldap' 'postfix'
- 'sqlite' 'unixodbc' 'net-snmp' 'libzip' 'enchant' 'file' 'freetds'
- 'libmcrypt' 'tidy' 'aspell' 'libltdl' 'gd' 'icu'
- 'curl' 'libxslt' 'openssl' 'db' 'gmp' 'systemd')
-source=("http://www.php.net/distributions/${pkgbase}-${pkgver}.tar.xz"
- "http://www.php.net/distributions/${pkgbase}-${pkgver}.tar.xz.asc"
- 'php.ini.patch' 'linhes.ini' 'apache.conf' 'php-fpm.conf.in.patch'
- 'logrotate.d.php-fpm' 'php-fpm.service' 'php-fpm.tmpfiles')
-validpgpkeys=('6E4F6AB321FDC07F2C332E3AC2BF0BC433CFC8B3'
- '0BD78B5F97500D450838F95DFE857D9A90D90EC1')
+makedepends=('apache' 'aspell' 'c-client' 'db' 'enchant' 'gd' 'gmp' 'icu' 'libsodium' 'libxslt' 'libzip' 'net-snmp'
+ 'postgresql-libs' 'sqlite' 'systemd' 'tidy' 'unixodbc' 'curl' 'libtool' 'postfix' 'freetds' 'pcre')
+checkdepends=('procps-ng')
+source=("https://php.net/distributions/${pkgbase}-${pkgver}.tar.xz"{,.asc}
+ 'apache.patch' 'apache.conf' 'php-fpm.patch' 'php-fpm.tmpfiles' 'php.ini.patch' 'linhes.ini' 'enchant-2.patch')
+validpgpkeys=('B1B44D8F021E4E2D6021E995DC9FF8D3EE5AF27F'
+ '1729F83938DA44E27BA0F4D3DBDB397470D12172')
prepare() {
cd ${srcdir}/${pkgbase}-${pkgver}
+ patch -p0 -i ${srcdir}/apache.patch
+ patch -p0 -i ${srcdir}/php-fpm.patch
patch -p0 -i ${srcdir}/php.ini.patch
- patch -p0 -i ${srcdir}/php-fpm.conf.in.patch
- # Just because our Apache 2.4 is configured with a threaded MPM by default does not mean we want to build a ZTS PHP.
- # Let's supress this behaviour and build a SAPI that works fine with the prefork MPM.
- sed '/APACHE_THREADED_MPM=/d' -i sapi/apache2handler/config.m4 -i configure
+ patch -p1 -i ../enchant-2.patch
- # Allow php-tidy to compile with tidy-html5
- sed 's/buffio\.h/tidybuffio\.h/' -i ext/tidy/tidy.c
+ rm tests/output/stream_isatty_*.phpt
}
build() {
+ # http://site.icu-project.org/download/61#TOC-Migration-Issues
+ CPPFLAGS+=' -DU_USING_ICU_NAMESPACE=1'
+
local _phpconfig="--srcdir=../${pkgbase}-${pkgver} \
--config-cache \
--prefix=/usr \
- --sysconfdir=/etc/${pkgbase} \
+ --sbindir=/usr/bin \
+ --sysconfdir=/etc/php \
--localstatedir=/var \
- --libdir=/usr/lib/${pkgbase} \
- --datarootdir=/usr/share/${pkgbase} \
- --datadir=/usr/share/${pkgbase} \
- --program-suffix=${pkgbase#php} \
--with-layout=GNU \
- --with-config-file-path=/etc/${pkgbase} \
- --with-config-file-scan-dir=/etc/${pkgbase}/conf.d \
+ --with-config-file-path=/etc/php \
+ --with-config-file-scan-dir=/etc/php/conf.d \
--disable-rpath \
+ --mandir=/usr/share/man \
--without-pear \
"
- local _phpextensions="--enable-bcmath=shared \
+ local _phpextensions="\
+ --enable-bcmath=shared \
--enable-calendar=shared \
--enable-dba=shared \
--enable-exif=shared \
--enable-ftp=shared \
- --enable-gd-native-ttf \
--enable-intl=shared \
--enable-mbstring \
- --enable-opcache \
- --enable-phar=shared \
- --enable-posix=shared \
--enable-shmop=shared \
--enable-soap=shared \
--enable-sockets=shared \
@@ -91,314 +82,261 @@ build() {
--with-curl=shared \
--with-db4=/usr \
--with-enchant=shared,/usr \
- --with-fpm-systemd \
--with-freetype-dir=/usr \
- --with-xpm-dir=/usr \
--with-gd=shared,/usr \
--with-gdbm \
--with-gettext=shared \
--with-gmp=shared \
--with-iconv=shared \
- --with-icu-dir=/usr \
--with-imap-ssl \
--with-imap=shared \
--with-kerberos=/usr \
- --with-jpeg-dir=/usr \
- --with-vpx-dir=no \
--with-ldap=shared \
--with-ldap-sasl \
--with-libzip \
- --with-mcrypt=shared \
--with-mhash \
- --with-mssql=shared \
--with-mysql-sock=/run/mysqld/mysqld.sock \
- --with-mysql=shared,mysqlnd \
--with-mysqli=shared,mysqlnd \
- --with-openssl=shared \
+ --with-openssl \
+ --with-password-argon2 \
--with-pcre-regex=/usr \
- --with-pdo-dblib=shared,/usr \
+ --with-pdo-dblib=shared,/usr \
--with-pdo-mysql=shared,mysqlnd \
--with-pdo-odbc=shared,unixODBC,/usr \
--with-pdo-pgsql=shared \
--with-pdo-sqlite=shared,/usr \
--with-pgsql=shared \
- --with-png-dir=/usr \
--with-pspell=shared \
+ --with-readline \
--with-snmp=shared \
+ --with-sodium=shared \
--with-sqlite3=shared,/usr \
--with-tidy=shared \
--with-unixODBC=shared,/usr \
--with-xmlrpc=shared \
--with-xsl=shared \
--with-zlib \
+ --enable-pcntl \
"
- export EXTENSION_DIR=/usr/lib/${pkgbase}/modules
- export PEAR_INSTALLDIR=/usr/share/${pkgbase}/pear
+ EXTENSION_DIR=/usr/lib/php/modules
+ export EXTENSION_DIR
- cd ${srcdir}/${pkgbase}-${pkgver}
-
- # php
- mkdir -p ${srcdir}/build-php
- cd ${srcdir}/build-php
- ln -sf ../${pkgbase}-${pkgver}/configure
+ mkdir ${srcdir}/build
+ cd ${srcdir}/build
+ ln -s ../${pkgbase}-${pkgver}/configure
./configure ${_phpconfig} \
- --disable-cgi \
- --with-readline \
- --enable-pcntl \
- ${_phpextensions}
- make
-
- # cgi and fcgi
- # reuse the previous run; this will save us a lot of time
- cp -Ta ${srcdir}/build-php ${srcdir}/build-cgi
- cd ${srcdir}/build-cgi
- ./configure ${_phpconfig} \
- --disable-cli \
--enable-cgi \
- ${_phpextensions}
- make
-
- # apache
- cp -Ta ${srcdir}/build-php ${srcdir}/build-apache
- cd ${srcdir}/build-apache
- ./configure ${_phpconfig} \
- --disable-cli \
- --with-apxs2 \
- ${_phpextensions}
- make
-
- # fpm
- cp -Ta ${srcdir}/build-php ${srcdir}/build-fpm
- cd ${srcdir}/build-fpm
- ./configure ${_phpconfig} \
- --disable-cli \
--enable-fpm \
+ --with-fpm-systemd \
+ --with-fpm-acl \
--with-fpm-user=http \
--with-fpm-group=http \
+ --enable-embed=shared \
${_phpextensions}
make
- # embed
- cp -Ta ${srcdir}/build-php ${srcdir}/build-embed
- cd ${srcdir}/build-embed
+ # apache
+ # reuse the previous run; this will save us a lot of time
+ cp -a ${srcdir}/build ${srcdir}/build-apache
+ cd ${srcdir}/build-apache
./configure ${_phpconfig} \
- --disable-cli \
- --enable-embed=shared \
+ --with-apxs2 \
${_phpextensions}
make
# phpdbg
- cp -Ta ${srcdir}/build-php ${srcdir}/build-phpdbg
+ cp -a ${srcdir}/build ${srcdir}/build-phpdbg
cd ${srcdir}/build-phpdbg
./configure ${_phpconfig} \
- --disable-cli \
- --disable-cgi \
- --with-readline \
--enable-phpdbg \
${_phpextensions}
make
+}
- # pear
- sed -i 's#@$(top_builddir)/sapi/cli/php $(PEAR_INSTALL_FLAGS) pear/install-pear-nozlib.phar -d#@$(top_builddir)/sapi/cli/php $(PEAR_INSTALL_FLAGS) pear/install-pear-nozlib.phar -p $(bindir)/php$(program_suffix) -d#' ${srcdir}/php-${pkgver}/pear/Makefile.frag
- cp -Ta ${srcdir}/build-php ${srcdir}/build-pear
- cd ${srcdir}/build-pear
- ./configure ${_phpconfig} \
- --disable-cgi \
- --with-readline \
- --enable-pcntl \
- --with-pear \
- ${_phpextensions}
- make
+check() {
+ cd ${srcdir}/${pkgbase}-${pkgver}
+
+ # Check if sendmail was configured correctly (FS#47600)
+ ${srcdir}/build/sapi/cli/php -n -r 'echo ini_get("sendmail_path");' | grep -q '/usr/bin/sendmail'
+
+ export REPORT_EXIT_STATUS=1
+ export NO_INTERACTION=1
+ export SKIP_ONLINE_TESTS=1
+ export SKIP_SLOW_TESTS=1
+
+ ${srcdir}/build/sapi/cli/php -n run-tests.php -n -P {tests,Zend}
}
package_php() {
- pkgdesc='An HTML-embedded scripting language'
- depends=('pcre' 'libxml2' 'curl' 'libzip' 'php-gd' 'php-mcrypt')
+ pkgdesc='A general-purpose scripting language that is especially suited to web development'
+ depends=('libxml2' 'curl' 'libzip' 'pcre' 'argon2' 'php-gd')
+ replaces=('php-ldap')
+ conflicts=('php-ldap')
+ provides=("php-ldap=${pkgver}")
#backup=('etc/php/php.ini')
install='php.install'
- cd ${srcdir}/build-php
- make -j1 INSTALL_ROOT=${pkgdir} install
-
- # install php.ini
+ cd ${srcdir}/build
+ make -j1 INSTALL_ROOT=${pkgdir} install-{modules,cli,build,headers,programs,pharcmd}
install -D -m644 ${srcdir}/${pkgbase}-${pkgver}/php.ini-production ${pkgdir}/etc/php/php.ini
install -d -m755 ${pkgdir}/etc/php/conf.d/
- install -D -m644 ${srcdir}/linhes.ini ${pkgdir}/etc/php/conf.d/linhes.ini
+ install -D -m644 ${srcdir}/linhes.ini ${pkgdir}/etc/php/conf.d/linhes.ini
# remove static modules
rm -f ${pkgdir}/usr/lib/php/modules/*.a
# remove modules provided by sub packages
- rm -f ${pkgdir}/usr/lib/php/modules/{enchant,gd,imap,intl,ldap,mcrypt,mssql,odbc,pdo_odbc,pgsql,pdo_pgsql,pspell,snmp,sqlite3,pdo_sqlite,tidy,xsl}.so
-
+ rm -f ${pkgdir}/usr/lib/php/modules/{enchant,gd,imap,intl,sodium,odbc,pdo_dblib,pdo_odbc,pgsql,pdo_pgsql,pspell,snmp,sqlite3,pdo_sqlite,tidy,xsl}.so
# remove empty directory
rmdir ${pkgdir}/usr/include/php/include
-
}
package_php-cgi() {
pkgdesc='CGI and FCGI SAPI for PHP'
depends=('php')
- install -D -m755 ${srcdir}/build-cgi/sapi/cgi/php-cgi ${pkgdir}/usr/bin/php-cgi
+ cd ${srcdir}/build
+ make -j1 INSTALL_ROOT=${pkgdir} install-cgi
}
package_php-apache() {
pkgdesc='Apache SAPI for PHP'
depends=('php' 'apache')
- backup=('etc/httpd/conf/extra/php5_module.conf')
- install='php-apache.install'
+ backup=('etc/httpd/conf/extra/php7_module.conf')
- install -D -m755 ${srcdir}/build-apache/libs/libphp5.so ${pkgdir}/usr/lib/httpd/modules/libphp5.so
- install -D -m644 ${srcdir}/apache.conf ${pkgdir}/etc/httpd/conf/extra/php5_module.conf
+ install -D -m755 ${srcdir}/build-apache/libs/libphp7.so ${pkgdir}/usr/lib/httpd/modules/libphp7.so
+ install -D -m644 ${srcdir}/apache.conf ${pkgdir}/etc/httpd/conf/extra/php7_module.conf
}
package_php-fpm() {
pkgdesc='FastCGI Process Manager for PHP'
depends=('php' 'systemd')
- backup=('etc/php/php-fpm.conf')
- install='php-fpm.install'
-
- install -D -m755 ${srcdir}/build-fpm/sapi/fpm/php-fpm ${pkgdir}/usr/bin/php-fpm
- install -D -m644 ${srcdir}/build-fpm/sapi/fpm/php-fpm.8 ${pkgdir}/usr/share/man/man8/php-fpm.8
- install -D -m644 ${srcdir}/build-fpm/sapi/fpm/php-fpm.conf ${pkgdir}/etc/php/php-fpm.conf
- install -D -m644 ${srcdir}/logrotate.d.php-fpm ${pkgdir}/etc/logrotate.d/php-fpm
- install -d -m755 ${pkgdir}/etc/php/fpm.d
+ backup=('etc/php/php-fpm.conf' 'etc/php/php-fpm.d/www.conf')
+ options=('!emptydirs')
+
+ cd ${srcdir}/build
+ make -j1 INSTALL_ROOT=${pkgdir} install-fpm
+ install -D -m644 sapi/fpm/php-fpm.service ${pkgdir}/usr/lib/systemd/system/php-fpm.service
install -D -m644 ${srcdir}/php-fpm.tmpfiles ${pkgdir}/usr/lib/tmpfiles.d/php-fpm.conf
- install -D -m644 ${srcdir}/php-fpm.service ${pkgdir}/usr/lib/systemd/system/php-fpm.service
}
package_php-embed() {
pkgdesc='Embedded PHP SAPI library'
- depends=('php')
+ depends=('php' 'libsystemd')
+ options=('!emptydirs')
- install -D -m755 ${srcdir}/build-embed/libs/libphp5.so ${pkgdir}/usr/lib/libphp5.so
- install -D -m644 ${srcdir}/${pkgbase}-${pkgver}/sapi/embed/php_embed.h ${pkgdir}/usr/include/php/sapi/embed/php_embed.h
+ cd ${srcdir}/build
+ make -j1 INSTALL_ROOT=${pkgdir} PHP_SAPI=embed install-sapi
}
package_php-phpdbg() {
pkgdesc='Interactive PHP debugger'
depends=('php')
+ options=('!emptydirs')
- install -D -m755 ${srcdir}/build-phpdbg/sapi/phpdbg/phpdbg ${pkgdir}/usr/bin/phpdbg
+ cd ${srcdir}/build-phpdbg
+ make -j1 INSTALL_ROOT=${pkgdir} install-phpdbg
}
-package_php-pear() {
- pkgdesc='PHP Extension and Application Repository'
- depends=('php')
- backup=('etc/php/pear.conf')
+package_php-dblib() {
+ pkgdesc='dblib module for PHP'
+ depends=('php' 'freetds')
- cd ${srcdir}/build-pear
- make install-pear INSTALL_ROOT=${pkgdir}
- rm -rf ${pkgdir}/usr/share/pear/.{channels,depdb,depdblock,filemap,lock,registry}
+ install -D -m755 ${srcdir}/build/modules/pdo_dblib.so ${pkgdir}/usr/lib/php/modules/pdo_dblib.so
}
package_php-enchant() {
pkgdesc='enchant module for PHP'
depends=('php' 'enchant')
- install -D -m755 ${srcdir}/build-php/modules/enchant.so ${pkgdir}/usr/lib/php/modules/enchant.so
+ install -D -m755 ${srcdir}/build/modules/enchant.so ${pkgdir}/usr/lib/php/modules/enchant.so
}
package_php-gd() {
pkgdesc='gd module for PHP'
depends=('php' 'gd')
- install -D -m755 ${srcdir}/build-php/modules/gd.so ${pkgdir}/usr/lib/php/modules/gd.so
+ install -D -m755 ${srcdir}/build/modules/gd.so ${pkgdir}/usr/lib/php/modules/gd.so
}
package_php-imap() {
pkgdesc='imap module for PHP'
depends=('php' 'c-client')
- install -D -m755 ${srcdir}/build-php/modules/imap.so ${pkgdir}/usr/lib/php/modules/imap.so
+ install -D -m755 ${srcdir}/build/modules/imap.so ${pkgdir}/usr/lib/php/modules/imap.so
}
package_php-intl() {
pkgdesc='intl module for PHP'
depends=('php' 'icu')
- install -D -m755 ${srcdir}/build-php/modules/intl.so ${pkgdir}/usr/lib/php/modules/intl.so
+ install -D -m755 ${srcdir}/build/modules/intl.so ${pkgdir}/usr/lib/php/modules/intl.so
}
-package_php-ldap() {
- pkgdesc='ldap module for PHP'
- depends=('php' 'libldap')
-
- install -D -m755 ${srcdir}/build-php/modules/ldap.so ${pkgdir}/usr/lib/php/modules/ldap.so
-}
-
-package_php-mcrypt() {
- pkgdesc='mcrypt module for PHP'
- depends=('php' 'libmcrypt' 'libltdl')
-
- install -D -m755 ${srcdir}/build-php/modules/mcrypt.so ${pkgdir}/usr/lib/php/modules/mcrypt.so
-}
-
-package_php-mssql() {
- pkgdesc='mssql module for PHP'
- depends=('php' 'freetds')
+package_php-sodium() {
+ pkgdesc='sodium module for PHP'
+ depends=('php' 'libsodium')
- install -D -m755 ${srcdir}/build-php/modules/mssql.so ${pkgdir}/usr/lib/php/modules/mssql.so
+ install -D -m755 ${srcdir}/build/modules/sodium.so ${pkgdir}/usr/lib/php/modules/sodium.so
}
package_php-odbc() {
pkgdesc='ODBC modules for PHP'
depends=('php' 'unixodbc')
- install -D -m755 ${srcdir}/build-php/modules/odbc.so ${pkgdir}/usr/lib/php/modules/odbc.so
- install -D -m755 ${srcdir}/build-php/modules/pdo_odbc.so ${pkgdir}/usr/lib/php/modules/pdo_odbc.so
+ install -D -m755 ${srcdir}/build/modules/odbc.so ${pkgdir}/usr/lib/php/modules/odbc.so
+ install -D -m755 ${srcdir}/build/modules/pdo_odbc.so ${pkgdir}/usr/lib/php/modules/pdo_odbc.so
}
package_php-pgsql() {
pkgdesc='PostgreSQL modules for PHP'
depends=('php' 'postgresql-libs')
- install -D -m755 ${srcdir}/build-php/modules/pgsql.so ${pkgdir}/usr/lib/php/modules/pgsql.so
- install -D -m755 ${srcdir}/build-php/modules/pdo_pgsql.so ${pkgdir}/usr/lib/php/modules/pdo_pgsql.so
+ install -D -m755 ${srcdir}/build/modules/pgsql.so ${pkgdir}/usr/lib/php/modules/pgsql.so
+ install -D -m755 ${srcdir}/build/modules/pdo_pgsql.so ${pkgdir}/usr/lib/php/modules/pdo_pgsql.so
}
package_php-pspell() {
pkgdesc='pspell module for PHP'
depends=('php' 'aspell')
- install -D -m755 ${srcdir}/build-php/modules/pspell.so ${pkgdir}/usr/lib/php/modules/pspell.so
+ install -D -m755 ${srcdir}/build/modules/pspell.so ${pkgdir}/usr/lib/php/modules/pspell.so
}
package_php-snmp() {
pkgdesc='snmp module for PHP'
depends=('php' 'net-snmp')
- install -D -m755 ${srcdir}/build-php/modules/snmp.so ${pkgdir}/usr/lib/php/modules/snmp.so
+ install -D -m755 ${srcdir}/build/modules/snmp.so ${pkgdir}/usr/lib/php/modules/snmp.so
}
package_php-sqlite() {
pkgdesc='sqlite module for PHP'
depends=('php' 'sqlite')
- install -D -m755 ${srcdir}/build-php/modules/sqlite3.so ${pkgdir}/usr/lib/php/modules/sqlite3.so
- install -D -m755 ${srcdir}/build-php/modules/pdo_sqlite.so ${pkgdir}/usr/lib/php/modules/pdo_sqlite.so
+ install -D -m755 ${srcdir}/build/modules/sqlite3.so ${pkgdir}/usr/lib/php/modules/sqlite3.so
+ install -D -m755 ${srcdir}/build/modules/pdo_sqlite.so ${pkgdir}/usr/lib/php/modules/pdo_sqlite.so
}
package_php-tidy() {
pkgdesc='tidy module for PHP'
depends=('php' 'tidy')
- install -D -m755 ${srcdir}/build-php/modules/tidy.so ${pkgdir}/usr/lib/php/modules/tidy.so
+ install -D -m755 ${srcdir}/build/modules/tidy.so ${pkgdir}/usr/lib/php/modules/tidy.so
}
package_php-xsl() {
pkgdesc='xsl module for PHP'
depends=('php' 'libxslt')
- install -D -m755 ${srcdir}/build-php/modules/xsl.so ${pkgdir}/usr/lib/php/modules/xsl.so
+ install -D -m755 ${srcdir}/build/modules/xsl.so ${pkgdir}/usr/lib/php/modules/xsl.so
}
-md5sums=('68753955a8964ae49064c6424f81eb3e'
+md5sums=('8266120cf6500a96f1ba335d9ef1e01b'
'SKIP'
- '8da5e525fcbea84adf54ba2da15e25f0'
- '4ecf586ef1597aa5eb977573954b5d21'
- 'dec2cbaad64e3abf4f0ec70e1de4e8e9'
- '16b5e2e4da59f15bea4c2db78a7bc8dc'
- '25bc67ad828e8147a817410b68d8016c'
- 'cc2940f5312ba42e7aa1ddfab74b84c4'
- 'c60343df74f8e1afb13b084d5c0e47ed')
+ '13cda50a6a420d04ddc26935ded3164e'
+ '0677a10d2e721472d6fccb470356b322'
+ '6505b11a92265cd6563119f8a2e047aa'
+ 'c60343df74f8e1afb13b084d5c0e47ed'
+ 'e034326b07074eaabf45b43c30f8d5fa'
+ 'c25450566a6d88427c02d1647984d3c7'
+ 'e3883dce91ed21e23a3d7ae9fa80216d')
diff --git a/abs/core/php/__changelog b/abs/core/php/__changelog
index 7419a02..603981d 100644
--- a/abs/core/php/__changelog
+++ b/abs/core/php/__changelog
@@ -1,8 +1,7 @@
-PKGBUILD: package_php: add deps 'php-gd' 'php-mcrypt' since we have them in linhes.ini
+PKGBUILD: package_php: add deps 'php-gd' since we have them in linhes.ini
PKGBUILD: package_php: comment out backup=('etc/php/php.ini')
-PKGBUILD: change dep tidyhtml to tidy
-PKGBUILD: add linhes.ini and put it in /etc/php/conf.d/
-php.ini.patch: open_basedir commented out
+PKGBUILD: package_php: add linhes.ini and put it in /etc/php/conf.d/
+ install -D -m644 ${srcdir}/linhes.ini ${pkgdir}/etc/php/conf.d/linhes.ini
PKGBUILD: add php.install:
post_upgrade & post_install
diff --git a/abs/core/php/apache.conf b/abs/core/php/apache.conf
index c3ca0aa..b516b5e 100644
--- a/abs/core/php/apache.conf
+++ b/abs/core/php/apache.conf
@@ -1,7 +1,7 @@
-# Required modules: dir_module, php5_module
+# Required modules: dir_module, php7_module
<IfModule dir_module>
- <IfModule php5_module>
+ <IfModule php7_module>
DirectoryIndex index.php index.html
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
diff --git a/abs/core/php/apache.patch b/abs/core/php/apache.patch
new file mode 100644
index 0000000..81b2cd8
--- /dev/null
+++ b/abs/core/php/apache.patch
@@ -0,0 +1,20 @@
+--- sapi/apache2handler/config.m4.orig
++++ sapi/apache2handler/config.m4
+@@ -122,7 +122,6 @@
+ PHP_BUILD_THREAD_SAFE
+ fi
+ else
+- APACHE_THREADED_MPM=`$APXS_HTTPD -V | grep 'threaded:.*yes'`
+ if test -n "$APACHE_THREADED_MPM"; then
+ PHP_BUILD_THREAD_SAFE
+ fi
+--- configure.orig
++++ configure
+@@ -7018,7 +7018,6 @@
+
+ fi
+ else
+- APACHE_THREADED_MPM=`$APXS_HTTPD -V | grep 'threaded:.*yes'`
+ if test -n "$APACHE_THREADED_MPM"; then
+
+ enable_maintainer_zts=yes
diff --git a/abs/core/php/enchant-2.patch b/abs/core/php/enchant-2.patch
new file mode 100644
index 0000000..93c0ce5
--- /dev/null
+++ b/abs/core/php/enchant-2.patch
@@ -0,0 +1,84 @@
+--- php-7.1.13/ext/enchant/config.m4.orig 2018-01-03 02:32:29.000000000 +0000
++++ php-7.1.13/ext/enchant/config.m4 2018-01-21 22:10:03.788875780 +0000
+@@ -14,9 +14,9 @@
+ ENCHANT_SEARCH_DIRS="/usr/local /usr"
+ fi
+ for i in $ENCHANT_SEARCH_DIRS; do
+- if test -f $i/include/enchant/enchant.h; then
++ if test -f $i/include/enchant-2/enchant.h; then
+ ENCHANT_DIR=$i
+- ENCHANT_INCDIR=$i/include/enchant
++ ENCHANT_INCDIR=$i/include/enchant-2
+ elif test -f $i/include/enchant.h; then
+ ENCHANT_DIR=$i
+ ENCHANT_INCDIR=$i/include
+@@ -31,7 +31,7 @@
+
+ AC_DEFINE(HAVE_ENCHANT,1,[ ])
+ PHP_SUBST(ENCHANT_SHARED_LIBADD)
+- PHP_ADD_LIBRARY_WITH_PATH(enchant, $ENCHANT_LIBDIR, ENCHANT_SHARED_LIBADD)
++ PHP_ADD_LIBRARY_WITH_PATH(enchant-2, $ENCHANT_LIBDIR, ENCHANT_SHARED_LIBADD)
+ PHP_ADD_INCLUDE($ENCHANT_INCDIR)
+ PHP_CHECK_LIBRARY(enchant, enchant_broker_set_param,
+ [
+--- php-7.1.13/configure.orig 2018-01-21 22:03:51.494656374 +0000
++++ php-7.1.13/configure 2018-01-21 22:12:35.932571143 +0000
+@@ -29838,9 +29838,9 @@
+ ENCHANT_SEARCH_DIRS="/usr/local /usr"
+ fi
+ for i in $ENCHANT_SEARCH_DIRS; do
+- if test -f $i/include/enchant/enchant.h; then
++ if test -f $i/include/enchant-2/enchant.h; then
+ ENCHANT_DIR=$i
+- ENCHANT_INCDIR=$i/include/enchant
++ ENCHANT_INCDIR=$i/include/enchant-2
+ elif test -f $i/include/enchant.h; then
+ ENCHANT_DIR=$i
+ ENCHANT_INCDIR=$i/include
+@@ -29862,7 +29862,7 @@
+
+
+ if test "$ext_shared" = "yes"; then
+- ENCHANT_SHARED_LIBADD="-lenchant $ENCHANT_SHARED_LIBADD"
++ ENCHANT_SHARED_LIBADD="-lenchant-2 $ENCHANT_SHARED_LIBADD"
+ if test -n "$ENCHANT_LIBDIR"; then
+
+ if test "$ENCHANT_LIBDIR" != "/usr/$PHP_LIBDIR" && test "$ENCHANT_LIBDIR" != "/usr/lib"; then
+--- php-7.2.1/ext/enchant/enchant.c.orig 2018-01-02 22:36:05.000000000 +0000
++++ php-7.2.1/ext/enchant/enchant.c 2018-01-21 22:34:50.205791491 +0000
+@@ -741,7 +741,7 @@
+ for (i = 0; i < n_sugg; i++) {
+ add_next_index_string(sugg, suggs[i]);
+ }
+- enchant_dict_free_suggestions(pdict->pdict, suggs);
++ enchant_dict_free_string_list(pdict->pdict, suggs);
+ }
+
+
+@@ -798,7 +798,7 @@
+ add_next_index_string(return_value, suggs[i]);
+ }
+
+- enchant_dict_free_suggestions(pdict->pdict, suggs);
++ enchant_dict_free_string_list(pdict->pdict, suggs);
+ }
+ }
+ /* }}} */
+@@ -818,7 +818,7 @@
+
+ PHP_ENCHANT_GET_DICT;
+
+- enchant_dict_add_to_personal(pdict->pdict, word, wordlen);
++ enchant_dict_add(pdict->pdict, word, wordlen);
+ }
+ /* }}} */
+
+@@ -856,7 +856,7 @@
+
+ PHP_ENCHANT_GET_DICT;
+
+- RETURN_BOOL(enchant_dict_is_in_session(pdict->pdict, word, wordlen));
++ RETURN_BOOL(enchant_dict_is_added(pdict->pdict, word, wordlen));
+ }
+ /* }}} */
+
diff --git a/abs/core/php/linhes.ini b/abs/core/php/linhes.ini
index a85a5ef..8883064 100644
--- a/abs/core/php/linhes.ini
+++ b/abs/core/php/linhes.ini
@@ -12,7 +12,7 @@
error_log = syslog
; How many GET/POST/COOKIE input variables may be accepted
-max_input_vars = 3000
+max_input_vars = 6000
; This directive determines whether or not PHP will recognize code between
; <? and ?> tags as PHP source which should be processed as such. It is
diff --git a/abs/core/php/logrotate.d.php-fpm b/abs/core/php/logrotate.d.php-fpm
deleted file mode 100644
index 2146ddd..0000000
--- a/abs/core/php/logrotate.d.php-fpm
+++ /dev/null
@@ -1,8 +0,0 @@
-/var/log/php-fpm.log {
- missingok
- notifempty
- delaycompress
- postrotate
- /bin/kill -SIGUSR1 `cat /run/php-fpm/php-fpm.pid 2>/dev/null` 2>/dev/null || true
- endscript
-}
diff --git a/abs/core/php/php-fpm.conf.in.patch b/abs/core/php/php-fpm.conf.in.patch
deleted file mode 100644
index f9721a1..0000000
--- a/abs/core/php/php-fpm.conf.in.patch
+++ /dev/null
@@ -1,52 +0,0 @@
---- sapi/fpm/php-fpm.conf.in 2015-01-21 01:40:37.000000000 +0100
-+++ sapi/fpm/php-fpm.conf.in 2015-01-22 16:22:09.076969777 +0100
-@@ -12,7 +12,7 @@
- ; Relative path can also be used. They will be prefixed by:
- ; - the global prefix if it's been set (-p argument)
- ; - @prefix@ otherwise
--;include=etc/fpm.d/*.conf
-+;include=/etc/php/fpm.d/*.conf
-
- ;;;;;;;;;;;;;;;;;;
- ; Global Options ;
-@@ -22,7 +22,7 @@
- ; Pid file
- ; Note: the default prefix is @EXPANDED_LOCALSTATEDIR@
- ; Default Value: none
--;pid = run/php-fpm.pid
-+pid = /run/php-fpm/php-fpm.pid
-
- ; Error log file
- ; If it's set to "syslog", log is sent to syslogd instead of being written
-@@ -161,7 +161,8 @@
- ; (IPv6 and IPv4-mapped) on a specific port;
- ; '/path/to/unix/socket' - to listen on a unix socket.
- ; Note: This value is mandatory.
--listen = 127.0.0.1:9000
-+;listen = 127.0.0.1:9000
-+listen = /run/php-fpm/php-fpm.sock
-
- ; Set listen(2) backlog.
- ; Default Value: 65535 (-1 on FreeBSD and OpenBSD)
-@@ -172,9 +173,9 @@
- ; BSD-derived systems allow connections regardless of permissions.
- ; Default Values: user and group are set as the running user
- ; mode is set to 0660
--;listen.owner = @php_fpm_user@
--;listen.group = @php_fpm_group@
--;listen.mode = 0660
-+listen.owner = @php_fpm_user@
-+listen.group = @php_fpm_group@
-+listen.mode = 0660
- ; When POSIX Access Control Lists are supported you can set them using
- ; these options, value is a comma separated list of user/group names.
- ; When set, listen.owner and listen.group are ignored
-@@ -476,7 +477,7 @@
- ; Chdir to this directory at the start.
- ; Note: relative path can be used.
- ; Default Value: current directory or / when chroot
--;chdir = /var/www
-+;chdir = /srv/http
-
- ; Redirect worker stdout and stderr into main error log. If not set, stdout and
- ; stderr will be redirected to /dev/null according to FastCGI specs.
diff --git a/abs/core/php/php-fpm.install b/abs/core/php/php-fpm.install
deleted file mode 100644
index 3572a76..0000000
--- a/abs/core/php/php-fpm.install
+++ /dev/null
@@ -1,9 +0,0 @@
-post_install() {
- if [[ ! -d run/php-fpm ]]; then
- usr/bin/systemd-tmpfiles --create php-fpm.conf
- fi
-}
-
-post_upgrade() {
- post_install
-}
diff --git a/abs/core/php/php-fpm.service b/abs/core/php/php-fpm.service
index 6e2faaf..8afb974 100644
--- a/abs/core/php/php-fpm.service
+++ b/abs/core/php/php-fpm.service
@@ -1,12 +1,12 @@
[Unit]
-Description=The PHP FastCGI Process Manager
+Description=The PHP 5.6 FastCGI Process Manager
After=syslog.target network.target
[Service]
Type=notify
-PIDFile=/run/php-fpm/php-fpm.pid
+PIDFile=/run/php56-fpm/php-fpm.pid
PrivateTmp=true
-ExecStart=/usr/bin/php-fpm --nodaemonize --pid /run/php-fpm/php-fpm.pid
+ExecStart=/usr/bin/php56-fpm --nodaemonize --pid /run/php56-fpm/php-fpm.pid
ExecReload=/bin/kill -USR2 $MAINPID
[Install]
diff --git a/abs/core/php/php.ini.patch b/abs/core/php/php.ini.patch
index 9a904f9..e0248fc 100644
--- a/abs/core/php/php.ini.patch
+++ b/abs/core/php/php.ini.patch
@@ -1,24 +1,6 @@
---- php.ini-production 2015-01-21 01:40:37.000000000 +0100
-+++ php.ini-production 2015-01-22 16:23:17.311890258 +0100
-@@ -295,7 +295,7 @@
- ; and below. This directive makes most sense if used in a per-directory
- ; or per-virtualhost web server configuration file.
- ; http://php.net/open-basedir
--;open_basedir =
-+;open_basedir = /srv/http/:/home/:/tmp/:/usr/share/php/pear/:/usr/share/webapps/
-
- ; This directive allows you to disable certain functions for security reasons.
- ; It receives a comma-delimited list of function names.
-@@ -708,7 +708,7 @@
- ;;;;;;;;;;;;;;;;;;;;;;;;;
-
- ; UNIX: "/path1:/path2"
--;include_path = ".:/php/includes"
-+include_path = ".:/usr/share/php/pear"
- ;
- ; Windows: "\path1;\path2"
- ;include_path = ".;c:\php\includes"
-@@ -731,7 +731,7 @@
+--- php.ini-production.orig
++++ php.ini-production
+@@ -734,7 +734,7 @@
; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
@@ -27,94 +9,70 @@
; On windows:
; extension_dir = "ext"
-@@ -869,48 +869,48 @@
- ; If you only provide the name of the extension, PHP will look for it in its
- ; default extension directory.
+@@ -883,47 +883,44 @@
+ ; deprecated in a future PHP major version. So, when it is possible, please
+ ; move to the new ('extension=<ext>) syntax.
;
--; Windows Extensions
--; Note that ODBC support is built in, so no dll is needed for it.
--; Note that many DLL files are located in the extensions/ (PHP 4) ext/ (PHP 5)
--; extension folders as well as the separate PECL DLL download (PHP 5).
--; Be sure to appropriately set the extension_dir directive.
+-; Notes for Windows environments :
+-;
+-; - ODBC support is built in, so no dll is needed for it.
+-; - Many DLL files are located in the extensions/ (PHP 4) or ext/ (PHP 5+)
+-; extension folders as well as the separate PECL DLL download (PHP 5+).
+-; Be sure to appropriately set the extension_dir directive.
-;
--;extension=php_bz2.dll
--;extension=php_curl.dll
--;extension=php_fileinfo.dll
--;extension=php_gd2.dll
--;extension=php_gettext.dll
--;extension=php_gmp.dll
--;extension=php_intl.dll
--;extension=php_imap.dll
--;extension=php_interbase.dll
--;extension=php_ldap.dll
--;extension=php_mbstring.dll
--;extension=php_exif.dll ; Must be after mbstring as it depends on it
--;extension=php_mysql.dll
--;extension=php_mysqli.dll
--;extension=php_oci8_12c.dll ; Use with Oracle Database 12c Instant Client
--;extension=php_openssl.dll
--;extension=php_pdo_firebird.dll
--;extension=php_pdo_mysql.dll
--;extension=php_pdo_oci.dll
--;extension=php_pdo_odbc.dll
--;extension=php_pdo_pgsql.dll
--;extension=php_pdo_sqlite.dll
--;extension=php_pgsql.dll
--;extension=php_shmop.dll
++;extension=bcmath
+ ;extension=bz2
+-;extension=curl
+-;extension=fileinfo
+-;extension=gd2
++;extension=calendar
++extension=curl
++;extension=dba
++;extension=enchant
++;extension=exif
++;extension=ftp
++;extension=gd
+ ;extension=gettext
+ ;extension=gmp
+-;extension=intl
++;extension=iconv
+ ;extension=imap
+-;extension=interbase
++;extension=intl
++;extension=sodium
+ ;extension=ldap
+-;extension=mbstring
+-;extension=exif ; Must be after mbstring as it depends on it
+ ;extension=mysqli
+-;extension=oci8_12c ; Use with Oracle Database 12c Instant Client
+-;extension=openssl
+-;extension=pdo_firebird
++;extension=odbc
++;zend_extension=opcache
++;extension=pdo_dblib
+ ;extension=pdo_mysql
+-;extension=pdo_oci
+ ;extension=pdo_odbc
+ ;extension=pdo_pgsql
+ ;extension=pdo_sqlite
+ ;extension=pgsql
++;extension=pspell
+ ;extension=shmop
-
--; The MIBS data available in the PHP distribution must be installed.
--; See http://www.php.net/manual/en/snmp.installation.php
--;extension=php_snmp.dll
+-; The MIBS data available in the PHP distribution must be installed.
+-; See http://www.php.net/manual/en/snmp.installation.php
+ ;extension=snmp
-
--;extension=php_soap.dll
--;extension=php_sockets.dll
--;extension=php_sqlite3.dll
--;extension=php_sybase_ct.dll
--;extension=php_tidy.dll
--;extension=php_xmlrpc.dll
--;extension=php_xsl.dll
-+;extension=bcmath.so
-+;extension=bz2.so
-+;extension=calendar.so
-+extension=curl.so
-+;extension=dba.so
-+;extension=enchant.so
-+;extension=exif.so
-+;extension=ftp.so
-+;extension=gd.so
-+;extension=gettext.so
-+;extension=gmp.so
-+;extension=iconv.so
-+;extension=imap.so
-+;extension=intl.so
-+;extension=ldap.so
-+;extension=mcrypt.so
-+;extension=mssql.so
-+;extension=mysql.so
-+;extension=mysqli.so
-+;extension=odbc.so
-+;zend_extension=opcache.so
-+;extension=openssl.so
-+;extension=pdo_mysql.so
-+;extension=pdo_odbc.so
-+;extension=pdo_pgsql.so
-+;extension=pdo_sqlite.so
-+;extension=pgsql.so
-+;extension=phar.so
-+;extension=posix.so
-+;extension=pspell.so
-+;extension=shmop.so
-+;extension=snmp.so
-+;extension=soap.so
-+;extension=sockets.so
-+;extension=sqlite3.so
-+;extension=sysvmsg.so
-+;extension=sysvsem.so
-+;extension=sysvshm.so
-+;extension=tidy.so
-+;extension=xmlrpc.so
-+;extension=xsl.so
-+;extension=zip.so
+ ;extension=soap
+ ;extension=sockets
+ ;extension=sqlite3
++;extension=sysvmsg
++;extension=sysvsem
++;extension=sysvshm
+ ;extension=tidy
+ ;extension=xmlrpc
+ ;extension=xsl
++extension=zip
;;;;;;;;;;;;;;;;;;;
; Module Settings ;
diff --git a/abs/core/pinentry/PKGBUILD b/abs/core/pinentry/PKGBUILD
index 2da4a57..dbcb71c 100644
--- a/abs/core/pinentry/PKGBUILD
+++ b/abs/core/pinentry/PKGBUILD
@@ -1,36 +1,41 @@
# $Id$
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
+# Maintainer: Gaetan Bisson <bisson@archlinux.org>
+
pkgname=pinentry
-pkgver=0.9.0
+pkgver=1.1.0
pkgrel=1
-pkgdesc="a collection of simple PIN or passphrase entry dialogs which utilize the Assuan protocol"
-arch=('i686' 'x86_64')
+pkgdesc='Collection of simple PIN or passphrase entry dialogs which utilize the Assuan protocol'
+url='http://gnupg.org/related_software/pinentry/'
+arch=('x86_64')
license=('GPL')
-url="http://gnupg.org/related_software/pinentry/"
-depends=('ncurses' 'libcap>=2.16')
-makedepends=('gtk2' 'qt4')
-optdepends=('gtk2: for gtk2 backend'
- 'qt4: for qt4 backend')
-source=(ftp://ftp.gnupg.org/gcrypt/$pkgname/$pkgname-$pkgver.tar.bz2)
-install=pinentry.install
-md5sums=('40a05856cb3accf6679987b7899b0f5a')
+depends=('ncurses' 'libcap' 'libassuan' 'libsecret')
+makedepends=('gtk2' 'qt5-base' 'gcr')
+optdepends=('gtk2: gtk2 backend'
+ 'qt5-base: qt backend'
+ 'gcr: gnome3 backend')
+source=("ftp://ftp.gnupg.org/gcrypt/${pkgname}/${pkgname}-${pkgver}.tar.bz2"{,.sig})
+sha256sums=('68076686fa724a290ea49cdf0d1c0c1500907d1b759a3bcbfbec0293e8f56570'
+ 'SKIP')
+validpgpkeys=('D8692123C4065DEA5E0F3AB5249B39D24F25E3B6')
build() {
- cd $srcdir/$pkgname-$pkgver
- for file in qt4/*.moc; do
- moc-qt4 ${file/.moc/.h} > ${file}
- done
- ./configure --prefix=/usr \
- --enable-pinentry-curses \
- --disable-pinentry-gtk \
- --disable-pinentry-qt \
- --enable-pinentry-gtk2 \
- --enable-pinentry-qt4 \
- --enable-fallback-curses
- make
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure \
+ --prefix=/usr \
+ --enable-pinentry-tty \
+ --enable-pinentry-curses \
+ --enable-fallback-curses \
+ --enable-pinentry-emacs \
+ --enable-pinentry-gtk2 \
+ --enable-pinentry-gnome3 \
+ --enable-pinentry-qt \
+ --enable-libsecret \
+
+ make
}
package() {
- cd $srcdir/$pkgname-$pkgver
- make DESTDIR=${pkgdir} install
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/abs/core/pinentry/pinentry.install b/abs/core/pinentry/pinentry.install
deleted file mode 100644
index eed2c71..0000000
--- a/abs/core/pinentry/pinentry.install
+++ /dev/null
@@ -1,20 +0,0 @@
-infodir=usr/share/info
-filelist=(pinentry.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/abs/core/poppler/PKGBUILD b/abs/core/poppler/PKGBUILD
index 6048751..3c2f396 100644
--- a/abs/core/poppler/PKGBUILD
+++ b/abs/core/poppler/PKGBUILD
@@ -1,89 +1,87 @@
# $Id$
+# Maintainer: AndyRTR <andyrtr@archlinux.org>
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgbase=poppler
-pkgname=('poppler' 'poppler-glib' 'poppler-qt4' 'poppler-qt5')
-pkgver=0.39.0
+pkgname=('poppler' 'poppler-glib' 'poppler-qt5')
+pkgver=0.62.0
pkgrel=1
-arch=(i686 x86_64)
+arch=(x86_64)
license=('GPL')
-makedepends=('libjpeg' 'gcc-libs' 'cairo' 'fontconfig' 'openjpeg' 'gtk2' 'qt4' 'pkgconfig' 'lcms2' 'gobject-introspection' 'icu' 'qt5-base' 'git' 'python2')
+makedepends=('libjpeg' 'gcc-libs' 'cairo' 'fontconfig' 'openjpeg2' 'gtk3' 'pkgconfig' 'lcms2'
+ 'gobject-introspection' 'icu' 'qt5-base' 'git' 'nss' 'gtk-doc' 'curl' 'poppler-data'
+ 'cmake' 'python2') # python2 just for make-glib-api-docs/gtkdoc.py
options=('!emptydirs')
-url="http://poppler.freedesktop.org/"
-source=(http://poppler.freedesktop.org/${pkgbase}-${pkgver}.tar.xz
- git://anongit.freedesktop.org/poppler/test)
-md5sums=('5100960c61b932430b5d74068d71f530'
- 'SKIP')
+url="https://poppler.freedesktop.org/"
+source=(https://poppler.freedesktop.org/${pkgbase}-${pkgver}.tar.xz
+ test::git+https://anongit.freedesktop.org/git/poppler/test/#commit=0d2bfd4
+ gtk-doc.patch)
+sha256sums=('5b9a73dfd4d6f61d165ada1e4f0abd2d420494bf9d0b1c15d0db3f7b83a729c6'
+ 'SKIP'
+ '4032a01456e2372e8f7c805f18634437285ce703fbcfe0fc9a3884ac39edc9ee')
-build() {
+prepare() {
+ mkdir build
cd ${pkgbase}-${pkgver}
- ./configure --prefix=/usr --sysconfdir=/etc \
- --localstatedir=/var --disable-static \
- --enable-cairo-output \
- --enable-xpdf-headers \
- --enable-libjpeg --enable-zlib \
- --enable-poppler-qt4 \
- --enable-poppler-qt5 \
- --enable-poppler-glib
+ sed -i -e "s:python:python2:" make-glib-api-docs
+
+ # https://bugzilla.gnome.org/show_bug.cgi?id=789800#c10
+ patch -Np1 -i ../gtk-doc.patch
+}
+
+build() {
+ cd build
+ cmake ../${pkgbase}-${pkgver} \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX:PATH=/usr \
+ -DCMAKE_INSTALL_LIBDIR=/usr/lib \
+ -DENABLE_XPDF_HEADERS=ON \
+ -DENABLE_GTK_DOC=ON
make
}
check() {
- cd "${srcdir}/${pkgbase}-${pkgver}"
- LANG=en_US.UTF8 make check
+ cd build
+ LANG=en_US.UTF8 make test
}
package_poppler() {
pkgdesc="PDF rendering library based on xpdf 3.0"
- depends=('libjpeg' 'gcc-libs' 'cairo' 'fontconfig' 'openjpeg' 'lcms2')
+ depends=('libjpeg' 'gcc-libs' 'cairo' 'fontconfig' 'openjpeg2' 'lcms2' 'nss' 'curl')
optdepends=('poppler-data: encoding data to display PDF documents containing CJK characters')
- conflicts=("poppler-qt3<${pkgver}")
+ conflicts=("poppler-qt3<${pkgver}" "poppler-qt4<${pkgver}")
- cd "${srcdir}/${pkgbase}-${pkgver}"
- sed -e 's/^glib_subdir =.*/glib_subdir =/' \
- -e 's/^qt4_subdir =.*/qt4_subdir =/' \
- -e 's/^qt5_subdir =.*/qt5_subdir =/' -i Makefile
+ cd build
make DESTDIR="${pkgdir}" install
- rm -f "${pkgdir}"/usr/lib/pkgconfig/poppler-{glib,qt4,qt5}.pc
+ # cleanup for splitted build
+ rm -vrf "${pkgdir}"/usr/include/poppler/{glib,qt5}
+ rm -vf "${pkgdir}"//usr/lib/libpoppler-{glib,qt5}.*
+ rm -vf "${pkgdir}"/usr/lib/pkgconfig/poppler-{glib,qt5}.pc
+ rm -vrf "${pkgdir}"/usr/{lib,share}/gir*
+ rm -vrf "${pkgdir}"/usr/share/gtk-doc
}
package_poppler-glib() {
pkgdesc="Poppler glib bindings"
depends=("poppler=${pkgver}" 'glib2')
- cd "${pkgbase}-${pkgver}"
- make -C poppler DESTDIR="${pkgdir}" install-libLTLIBRARIES
+ cd build
+
make -C glib DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/lib/pkgconfig"
install -m644 poppler-glib.pc "${pkgdir}/usr/lib/pkgconfig/"
- rm -f "${pkgdir}"/usr/lib/libpoppler.*
- rm -f "${pkgdir}/usr/bin/poppler-glib-demo"
-}
-
-package_poppler-qt4() {
- pkgdesc="Poppler Qt4 bindings"
- provides=("poppler-qt=${pkgver}")
- replaces=('poppler-qt')
- conflicts=('poppler-qt')
- depends=("poppler=${pkgver}" 'qt4')
-
- cd "${pkgbase}-${pkgver}"
- make -C poppler DESTDIR="${pkgdir}" install-libLTLIBRARIES
- make -C qt4 DESTDIR="${pkgdir}" install
- install -m755 -d "${pkgdir}/usr/lib/pkgconfig"
- install -m644 poppler-qt4.pc "${pkgdir}/usr/lib/pkgconfig/"
- rm -f "${pkgdir}"/usr/lib/libpoppler.*
+ rm -vf "${pkgdir}"/usr/lib/libpoppler.*
+ rm -vf "${pkgdir}/usr/bin/poppler-glib-demo"
}
package_poppler-qt5() {
pkgdesc="Poppler Qt5 bindings"
depends=("poppler=${pkgver}" 'qt5-base')
- cd "${pkgbase}-${pkgver}"
- make -C poppler DESTDIR="${pkgdir}" install-libLTLIBRARIES
+ cd build
make -C qt5 DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/lib/pkgconfig"
install -m644 poppler-qt5.pc "${pkgdir}/usr/lib/pkgconfig/"
- rm -f "${pkgdir}"/usr/lib/libpoppler.*
}
+
diff --git a/abs/core/poppler/gtk-doc.patch b/abs/core/poppler/gtk-doc.patch
new file mode 100644
index 0000000..1b37bc5
--- /dev/null
+++ b/abs/core/poppler/gtk-doc.patch
@@ -0,0 +1,24 @@
+--- a/gtkdoc.py
++++ b/gtkdoc.py
+@@ -319,9 +319,9 @@ class GTKDoc(object):
+ ldflags = ' "-L%s" %s ' % (self.library_path, additional_ldflags) +
+ ldflags
+ current_ld_library_path = env.get('LD_LIBRARY_PATH')
+ if current_ld_library_path:
+- env['RUN'] = 'LD_LIBRARY_PATH="%s:%s" ' % (self.library_path, current_ld_library_path)
++ env['LD_LIBRARY_PATH'] = '%s:%s' % (self.library_path, current_ld_library_path)
+ else:
+- env['RUN'] = 'LD_LIBRARY_PATH="%s" ' % self.library_path
++ env['LD_LIBRARY_PATH'] = self.library_path
+
+ if ldflags:
+ env['LDFLAGS'] = '%s %s' % (ldflags, env.get('LDFLAGS', ''))
+@@ -332,8 +332,6 @@ class GTKDoc(object):
+ self.logger.debug('CFLAGS=%s', env['CFLAGS'])
+ if 'LDFLAGS' in env:
+ self.logger.debug('LDFLAGS %s', env['LDFLAGS'])
+- if 'RUN' in env:
+- self.logger.debug('RUN=%s', env['RUN'])
+ self._run_command(['gtkdoc-scangobj', '--module=%s' % self.module_name],
+ env=env, cwd=self.output_dir)
+
diff --git a/abs/core/procps-ng/PKGBUILD b/abs/core/procps-ng/PKGBUILD
index a017867..50bc58f 100644
--- a/abs/core/procps-ng/PKGBUILD
+++ b/abs/core/procps-ng/PKGBUILD
@@ -4,15 +4,17 @@
pkgname=procps-ng
pkgver=3.3.12
-pkgrel=1
+pkgrel=3
pkgdesc='Utilities for monitoring your system and its processes'
url='https://gitlab.com/procps-ng/procps'
license=('GPL' 'LGPL')
-arch=('i686' 'x86_64')
+arch=('x86_64')
makedepends=('systemd')
depends=('ncurses' 'libsystemd')
-source=("http://downloads.sourceforge.net/project/${pkgname}/Production/${pkgname}-${pkgver}.tar.xz")
-sha1sums=('82c0745f150f1385ca01fe7d24f05f74e31c94c6')
+source=("https://downloads.sourceforge.net/project/${pkgname}/Production/${pkgname}-${pkgver}.tar.xz"
+ 'impossibly-high-memory.patch')
+sha256sums=('6ed65ab86318f37904e8f9014415a098bec5bc53653e5d9ab404f95ca5e1a7d4'
+ '1095223d697cf86b7086839666222b853bfa80bb83c7b09eaeceb0c506bea980')
groups=('base')
@@ -24,6 +26,7 @@ install=install
prepare() {
cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -p1 -i ../impossibly-high-memory.patch
sed 's:<ncursesw/:<:g' -i watch.c
}
@@ -38,6 +41,7 @@ build() {
--sbindir=/usr/bin \
--enable-watch8bit \
--with-systemd \
+ --disable-modern-top \
--disable-kill \
# kill is provided by util-linux
diff --git a/abs/core/procps-ng/impossibly-high-memory.patch b/abs/core/procps-ng/impossibly-high-memory.patch
new file mode 100644
index 0000000..2fef731
--- /dev/null
+++ b/abs/core/procps-ng/impossibly-high-memory.patch
@@ -0,0 +1,75 @@
+From a2ceb95e2a7d5bf0270f0d342d2edb560f5cfcf4 Mon Sep 17 00:00:00 2001
+From: Jim Warner <james.warner@comcast.net>
+Date: Thu, 17 Aug 2017 01:11:11 -0500
+Subject: [PATCH] top: protect against the anomalous 'Mem' graph display
+
+Until this patch, top falsely assumed that there would
+always be some (small) amount of physical memory after
+subtracting 'used' and 'available' from the total. But
+as the issue referenced below attests, a sum of 'used'
+and 'available' might exceed that total memory amount.
+
+I'm not sure if this is a problem with our calculation
+of the 'used' amount, a flaw in the kernel 'available'
+algorithms or some other reason I cannot even imagine.
+
+Anyway, this patch protects against such a contingency
+through the following single line addition of new code
+. if (pct_used + pct_misc > 100.0 || pct_misc < 0) ...
+
+The check for less than zero is not actually necessary
+as long as the source numbers remain unsigned. However
+should they ever become signed, we'll have protection.
+
+[ Most of the changes in this commit simply separate ]
+[ a variable's definition from its associated logic. ]
+
+Reference(s):
+https://gitlab.com/procps-ng/procps/issues/64
+
+Signed-off-by: Jim Warner <james.warner@comcast.net>
+---
+ top/top.c | 19 ++++++++++++-------
+ 1 files changed, 12 insertions(+), 7 deletions(-)
+
+diff --git a/top/top.c b/top/top.c
+index 385df1d..948805e 100644
+--- a/top/top.c
++++ b/top/top.c
+@@ -5249,21 +5249,26 @@ numa_nope:
+ { "%-.*s~4", "%-.*s~6", "%-.*s~6", Graph_blks }
+ };
+ char used[SMLBUFSIZ], util[SMLBUFSIZ], dual[MEDBUFSIZ];
+- int ix = w->rc.graph_mems - 1;
+- float pct_used = (float)kb_main_used * (100.0 / (float)kb_main_total),
++ float pct_used, pct_misc, pct_swap;
++ int ix, num_used, num_misc;
++
++ pct_used = (float)kb_main_used * (100.0 / (float)kb_main_total);
+ #ifdef MEMGRAPH_OLD
+- pct_misc = (float)(kb_main_buffers + kb_main_cached) * (100.0 / (float)kb_main_total),
++ pct_misc = (float)(kb_main_buffers + kb_main_cached) * (100.0 / (float)kb_main_total);
+ #else
+- pct_misc = (float)(kb_main_total - kb_main_available - kb_main_used) * (100.0 / (float)kb_main_total),
++ pct_misc = (float)(kb_main_total - kb_main_available - kb_main_used) * (100.0 / (float)kb_main_total);
+ #endif
+- pct_swap = kb_swap_total ? (float)kb_swap_used * (100.0 / (float)kb_swap_total) : 0;
++ if (pct_used + pct_misc > 100.0 || pct_misc < 0) pct_misc = 0;
++ pct_swap = kb_swap_total ? (float)kb_swap_used * (100.0 / (float)kb_swap_total) : 0;
++ ix = w->rc.graph_mems - 1;
+ #ifndef QUICK_GRAPHS
+- int num_used = (int)((pct_used * Graph_adj) + .5),
+- num_misc = (int)((pct_misc * Graph_adj) + .5);
++ num_used = (int)((pct_used * Graph_adj) + .5),
++ num_misc = (int)((pct_misc * Graph_adj) + .5);
+ if (num_used + num_misc > Graph_len) --num_misc;
+ snprintf(used, sizeof(used), gtab[ix].used, num_used, gtab[ix].type);
+ snprintf(util, sizeof(util), gtab[ix].misc, num_misc, gtab[ix].type);
+ #else
++ (void)num_used; (void)num_misc;
+ snprintf(used, sizeof(used), gtab[ix].used, (int)((pct_used * Graph_adj) + .5), gtab[ix].type);
+ snprintf(util, sizeof(util), gtab[ix].misc, (int)((pct_misc * Graph_adj) + .4), gtab[ix].type);
+ #endif
+--
+libgit2 0.26.0
+
diff --git a/abs/core/psmisc/PKGBUILD b/abs/core/psmisc/PKGBUILD
index 28e7909..a5ff727 100644
--- a/abs/core/psmisc/PKGBUILD
+++ b/abs/core/psmisc/PKGBUILD
@@ -1,25 +1,25 @@
-# $Id: PKGBUILD 162759 2012-06-29 18:27:42Z eric $
+# $Id$
# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgname=psmisc
-pkgver=22.19
+pkgver=23.1
pkgrel=1
pkgdesc="Miscellaneous procfs tools"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://psmisc.sourceforge.net/index.html"
license=('GPL')
groups=('base')
depends=('ncurses')
-source=(http://downloads.sourceforge.net/psmisc/${pkgname}-${pkgver}.tar.gz)
-sha1sums=('4c8fb774449f966f78c4c6e1d77d1a24b4187410')
+source=(http://downloads.sourceforge.net/psmisc/${pkgname}-${pkgver}.tar.xz)
+sha256sums=('2e84d474cf75dfbe3ecdacfb797bbfab71a35c7c2639d1b9f6d5f18b2149ba30')
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
+ cd ${pkgname}-${pkgver}
./configure --prefix=/usr
make
}
package() {
- cd "${srcdir}/${pkgname}-${pkgver}"
+ cd ${pkgname}-${pkgver}
make DESTDIR="${pkgdir}" install
}
diff --git a/abs/core/python/PKGBUILD b/abs/core/python/PKGBUILD
new file mode 100644
index 0000000..914da6b
--- /dev/null
+++ b/abs/core/python/PKGBUILD
@@ -0,0 +1,113 @@
+# $Id$
+# Maintainer: Angel Velasquez <angvp@archlinux.org>
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Stéphane Gaudreault <stephane@archlinux.org>
+# Contributor: Allan McRae <allan@archlinux.org>
+# Contributor: Jason Chu <jason@archlinux.org>
+
+pkgname=python
+pkgver=3.6.4
+pkgrel=2
+_pybasever=3.6
+pkgdesc="Next generation of the python high-level scripting language"
+arch=('x86_64')
+license=('custom')
+url="http://www.python.org/"
+depends=('expat' 'bzip2' 'gdbm' 'openssl' 'libffi' 'zlib')
+makedepends=('tk' 'sqlite' 'valgrind' 'bluez-libs' 'mpdecimal' 'llvm' 'gdb' 'xorg-server-xvfb')
+optdepends=('python-setuptools'
+ 'python-pip'
+ 'sqlite'
+ 'mpdecimal: for decimal'
+ 'xz: for lzma'
+ 'tk: for tkinter')
+provides=('python3')
+replaces=('python3')
+source=("https://www.python.org/ftp/python/${pkgver%rc*}/Python-${pkgver}.tar.xz"{,.asc}
+ dont-make-libpython-readonly.patch)
+sha512sums=('09ba2103ac517ac4d262f00380c9aac836a53401ce252540c17fd821a3b92e1ddf32528d00772221eb3126b12cb95b62c3ac3e852f4951e6f2eb406c88c848a2'
+ 'SKIP'
+ '2ef96708d5b13ae2a3d2cc62c87b4780e60ecfce914e190564492def3a11d5e56977659f41c7f9d12266e58050c766bce4e2b5d50b708eb792794fa8357920c4')
+validpgpkeys=('0D96DF4D4110E5C43FBFB17F2D347EA6AA65421D') # Ned Deily (Python release signing key) <nad@python.org>
+
+prepare() {
+ cd Python-${pkgver}
+
+ # FS#45809
+ patch -p1 -i ../dont-make-libpython-readonly.patch
+
+ # FS#23997
+ sed -i -e "s|^#.* /usr/local/bin/python|#!/usr/bin/python|" Lib/cgi.py
+
+ # Ensure that we are using the system copy of various libraries (expat, zlib, libffi, and libmpdec),
+ # rather than copies shipped in the tarball
+ rm -r Modules/expat
+ rm -r Modules/zlib
+ rm -r Modules/_ctypes/{darwin,libffi}*
+ rm -r Modules/_decimal/libmpdec
+}
+
+build() {
+ cd Python-${pkgver}
+
+ # Disable bundled pip & setuptools
+ ./configure --prefix=/usr \
+ --enable-shared \
+ --with-threads \
+ --with-computed-gotos \
+ --enable-optimizations \
+ --with-lto \
+ --enable-ipv6 \
+ --with-system-expat \
+ --with-dbmliborder=gdbm:ndbm \
+ --with-system-ffi \
+ --with-system-libmpdec \
+ --enable-loadable-sqlite-extensions \
+ --without-ensurepip
+
+ # Obtain next free server number for xvfb-run; this even works in a chroot environment.
+ #export servernum=99
+ #while ! xvfb-run -a -n "$servernum" /bin/true 2>/dev/null; do servernum=$((servernum+1)); done
+
+ #LC_CTYPE=en_US.UTF-8 xvfb-run -a -n "$servernum" make EXTRA_CFLAGS="$CFLAGS"
+ LC_CTYPE=en_US.UTF-8 make EXTRA_CFLAGS="$CFLAGS"
+}
+
+check() {
+ # test_gdb is expected to fail with LTO
+ # test_subprocess hangs on 3.6.3
+
+ cd Python-${pkgver}
+
+ # Obtain next free server number for xvfb-run; this even works in a chroot environment.
+ export servernum=99
+ while ! xvfb-run -a -n "$servernum" /bin/true 2>/dev/null; do servernum=$((servernum+1)); done
+
+ LD_LIBRARY_PATH="${srcdir}/Python-${pkgver}":${LD_LIBRARY_PATH} \
+ LC_CTYPE=en_US.UTF-8 xvfb-run -a -n "$servernum" \
+ "${srcdir}/Python-${pkgver}/python" -m test.regrtest -v -uall -x test_gdb -x test_subprocess
+}
+
+package() {
+ cd Python-${pkgver}
+
+ # Hack to avoid building again
+ sed -i 's/^all:.*$/all: build_all/' Makefile
+
+ make DESTDIR="${pkgdir}" EXTRA_CFLAGS="$CFLAGS" install
+
+ # Why are these not done by default...
+ ln -s python3 "${pkgdir}"/usr/bin/python
+ ln -s python3-config "${pkgdir}"/usr/bin/python-config
+ ln -s idle3 "${pkgdir}"/usr/bin/idle
+ ln -s pydoc3 "${pkgdir}"/usr/bin/pydoc
+ ln -s python${_pybasever}.1 "${pkgdir}"/usr/share/man/man1/python.1
+
+ # some useful "stuff" FS#46146
+ install -dm755 "${pkgdir}"/usr/lib/python${_pybasever}/Tools/{i18n,scripts}
+ install -m755 Tools/i18n/{msgfmt,pygettext}.py "${pkgdir}"/usr/lib/python${_pybasever}/Tools/i18n/
+ install -m755 Tools/scripts/{README,*py} "${pkgdir}"/usr/lib/python${_pybasever}/Tools/scripts/
+
+ # License
+ install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
diff --git a/abs/core/python/__changelog b/abs/core/python/__changelog
new file mode 100644
index 0000000..33c291f
--- /dev/null
+++ b/abs/core/python/__changelog
@@ -0,0 +1 @@
+PKGBUILD: don't use xvfb-run to make
diff --git a/abs/core/python/dont-make-libpython-readonly.patch b/abs/core/python/dont-make-libpython-readonly.patch
new file mode 100644
index 0000000..92308bf
--- /dev/null
+++ b/abs/core/python/dont-make-libpython-readonly.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile.pre.in b/Makefile.pre.in
+index ce2c0aa..7d6dcf7 100644
+--- a/Makefile.pre.in
++++ b/Makefile.pre.in
+@@ -60,7 +60,7 @@ INSTALL_DATA= @INSTALL_DATA@
+ # Shared libraries must be installed with executable mode on some systems;
+ # rather than figuring out exactly which, we always give them executable mode.
+ # Also, making them read-only seems to be a good idea...
+-INSTALL_SHARED= ${INSTALL} -m 555
++INSTALL_SHARED= ${INSTALL} -m 755
+
+ MKDIR_P= @MKDIR_P@
+
diff --git a/abs/core/python2-contextlib2/PKGBUILD b/abs/core/python2-contextlib2/PKGBUILD
new file mode 100644
index 0000000..43bd8cf
--- /dev/null
+++ b/abs/core/python2-contextlib2/PKGBUILD
@@ -0,0 +1,27 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Cedric Girard <girard.cedric@gmail.com>
+
+_pypiname=contextlib2
+pkgname=python2-contextlib2
+pkgver=0.5.5
+pkgrel=1
+pkgdesc="contextlib2 is a backport of the standard library’s contextlib module to earlier Python versions"
+arch=('any')
+url="http://pypi.python.org/pypi/${_pypiname}"
+license=('PSF')
+depends=('python2')
+makedepends=('python2-setuptools')
+source=("https://pypi.io/packages/source/${_pypiname:0:1}/${_pypiname}/${_pypiname}-$pkgver.tar.gz")
+sha512sums=('d5c97ff8eef7d8b14da0bfdc3515f8019bcc05e24cb922ce08ca2366d5182b029d873bbf172e9e6791297df05e24f6faf40868550063dcdb54f451b14c9e505d')
+
+build() {
+ cd "${srcdir}/${_pypiname}-$pkgver"
+ python2 setup.py build
+}
+
+package() {
+ cd ${_pypiname}-$pkgver
+ python2 setup.py install --root="${pkgdir}"
+ install -Dm644 LICENSE.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
diff --git a/abs/core/python2/PKGBUILD b/abs/core/python2/PKGBUILD
index 8615d48..aabe74a 100644
--- a/abs/core/python2/PKGBUILD
+++ b/abs/core/python2/PKGBUILD
@@ -5,22 +5,27 @@
# Contributor: Jason Chu <jason@archlinux.org>
pkgname=python2
-pkgver=2.7.11
+pkgver=2.7.14
pkgrel=2
_pybasever=2.7
pkgdesc="A high-level scripting language"
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('PSF')
url="http://www.python.org/"
depends=('bzip2' 'gdbm' 'openssl' 'zlib' 'expat' 'sqlite' 'libffi')
-makedepends=('tk' 'bluez-libs' 'hardening-wrapper')
-checkdepends=('gdb' 'file')
+makedepends=('tk' 'bluez-libs')
+checkdepends=('gdb' 'file' 'xorg-server-xvfb')
optdepends=('tk: for IDLE'
'python2-setuptools'
'python2-pip')
conflicts=('python<3')
-source=(http://www.python.org/ftp/python/${pkgver%rc?}/Python-${pkgver}.tar.xz)
-sha1sums=('c3b8bbe3f084c4d4ea13ffb03d75a5e22f9756ff')
+source=("https://www.python.org/ftp/python/${pkgver%rc?}/Python-${pkgver}.tar.xz"{,.asc}
+ descr_ref.patch fix-profile-task.patch)
+sha512sums=('78310b0be6388ffa15f29a80afb9ab3c03a572cb094e9da00cfe391afadb51696e41f592eb658d6a31a2f422fdac8a55214a382cbb8cfb43d4a127d5b35ea7f9'
+ 'SKIP'
+ '2e16eb23eb402dbe921c09bce99b400c10939114b4a1ded0e94a744d8cb66427947bc8d07c4fb054f9fe0906d10d1da509fc2273fd136225c0f019cc43dd045d'
+ '5d7b47bfa9f13cf5fb827546189d823033278f96866366fca5257aaf819c92ffb26e2116426c84ab78d9ae3178eebb591fa4b2f22cfc2725e3e3e795fdb5c2b6')
+validpgpkeys=('C01E1CAD5EA2C4F0B8E3571504C367C218ADD4FF') # Benjamin Peterson
prepare() {
cd Python-${pkgver}
@@ -38,11 +43,6 @@ prepare() {
sed -i "s/python2.3/python2/g" Lib/distutils/tests/test_build_scripts.py \
Lib/distutils/tests/test_install_scripts.py
- # TODO: Still not passed
- # Silent test_gdb failures on 'no symbol table loaded'.
- #sed -i '/ignore_patterns = (/a "No symbol table is loaded. Use the \\"file\\" command.",' \
- # Lib/test/test_gdb.py
-
# Ensure that we are using the system copy of various libraries (expat, zlib and libffi),
# rather than copies shipped in the tarball
rm -r Modules/expat
@@ -55,6 +55,13 @@ prepare() {
# Workaround asdl_c.py/makeopcodetargets.py errors after we touched the shebangs
touch Include/Python-ast.h Python/Python-ast.c Python/opcode_targets.h
+
+ # FS#48761
+ # http://bugs.python.org/issue25750
+ patch -Np1 -i ../descr_ref.patch
+
+ # Backport from Python 3.x
+ patch -Np2 -i ../fix-profile-task.patch
}
build() {
@@ -64,6 +71,8 @@ build() {
./configure --prefix=/usr \
--enable-shared \
--with-threads \
+ --enable-optimizations \
+ --with-lto \
--enable-ipv6 \
--enable-unicode=ucs4 \
--with-system-expat \
@@ -75,23 +84,22 @@ build() {
}
check() {
- # As of 2.7.11, 2 tests failed:
- # test_doctest test_gdb
- # Besides, test_thread disabled as it will stuck
-
- # $SHELL was set to avoid a test failure in test_gdb (it still fails due to other reasons, though)
+ # Since 2.7.13,
+ # test_replace_overflow (present in test_bytes, test_str, test_string, test_unicode, test_userstring) segfault on i686
+ # test_bigrepeat (present in test_tuple) segfault on i686
cd Python-${pkgver}
- SHELL=/bin/sh LD_LIBRARY_PATH="${srcdir}/Python-${pkgver}":${LD_LIBRARY_PATH} \
- "${srcdir}/Python-${pkgver}/python" -m test.regrtest -v -uall -x test_thread || warning "Tests failed"
+ LD_LIBRARY_PATH="${srcdir}/Python-${pkgver}":${LD_LIBRARY_PATH} \
+ xvfb-run "${srcdir}/Python-${pkgver}/python" -m test.regrtest -v -uall -x test_bytes test_str test_string test_tuple test_unicode test_userstring
}
package() {
cd Python-${pkgver}
- make DESTDIR="${pkgdir}" altinstall maninstall
- #LinHES
- ln -sf python2 "${pkgdir}/usr/bin/python"
+ # Hack to avoid building again
+ sed -i 's/^all:.*$/all: build_all/' Makefile
+
+ make DESTDIR="${pkgdir}" altinstall maninstall
rm "${pkgdir}"/usr/share/man/man1/python.1
diff --git a/abs/core/python2/__changelog b/abs/core/python2/__changelog
deleted file mode 100644
index d8cc127..0000000
--- a/abs/core/python2/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: add symlink making python2->python
diff --git a/abs/core/python2/descr_ref.patch b/abs/core/python2/descr_ref.patch
new file mode 100644
index 0000000..b55cf58
--- /dev/null
+++ b/abs/core/python2/descr_ref.patch
@@ -0,0 +1,58 @@
+When calling tp_descr_get(self, obj, type), make sure that we own a reference to "self"
+
+diff -ru Python-2.7.9/Objects/typeobject.c Python-2.7.9-fixed//Objects/typeobject.c
+--- Python-2.7.9/Objects/typeobject.c 2014-12-10 16:59:57.000000000 +0100
++++ Python-2.7.9-fixed//Objects/typeobject.c 2015-11-27 20:39:58.276156800 +0100
+@@ -2542,6 +2542,7 @@
+ PyTypeObject *metatype = Py_TYPE(type);
+ PyObject *meta_attribute, *attribute;
+ descrgetfunc meta_get;
++ PyObject* res;
+
+ if (!PyString_Check(name)) {
+ PyErr_Format(PyExc_TypeError,
+@@ -2563,6 +2564,7 @@
+ meta_attribute = _PyType_Lookup(metatype, name);
+
+ if (meta_attribute != NULL) {
++ Py_INCREF(meta_attribute);
+ meta_get = Py_TYPE(meta_attribute)->tp_descr_get;
+
+ if (meta_get != NULL && PyDescr_IsData(meta_attribute)) {
+@@ -2570,10 +2572,11 @@
+ * writes. Assume the attribute is not overridden in
+ * type's tp_dict (and bases): call the descriptor now.
+ */
+- return meta_get(meta_attribute, (PyObject *)type,
++ res = meta_get(meta_attribute, (PyObject *)type,
+ (PyObject *)metatype);
++ Py_DECREF(meta_attribute);
++ return res;
+ }
+- Py_INCREF(meta_attribute);
+ }
+
+ /* No data descriptor found on metatype. Look in tp_dict of this
+@@ -2581,6 +2584,7 @@
+ attribute = _PyType_Lookup(type, name);
+ if (attribute != NULL) {
+ /* Implement descriptor functionality, if any */
++ Py_INCREF(attribute);
+ descrgetfunc local_get = Py_TYPE(attribute)->tp_descr_get;
+
+ Py_XDECREF(meta_attribute);
+@@ -2588,11 +2592,12 @@
+ if (local_get != NULL) {
+ /* NULL 2nd argument indicates the descriptor was
+ * found on the target object itself (or a base) */
+- return local_get(attribute, (PyObject *)NULL,
++ res = local_get(attribute, (PyObject *)NULL,
+ (PyObject *)type);
++ Py_DECREF(attribute);
++ return res;
+ }
+
+- Py_INCREF(attribute);
+ return attribute;
+ }
+
diff --git a/abs/core/python2/fix-profile-task.patch b/abs/core/python2/fix-profile-task.patch
new file mode 100644
index 0000000..c6558ef
--- /dev/null
+++ b/abs/core/python2/fix-profile-task.patch
@@ -0,0 +1,13 @@
+diff --git a/Python-2.7.13/Makefile.pre.in b/Python-2.7.13/Makefile.pre.in
+index e288964..22edc27 100644
+--- a/Python-2.7.13/Makefile.pre.in
++++ b/Python-2.7.13/Makefile.pre.in
+@@ -456,7 +456,7 @@ build_all_generate_profile:
+
+ run_profile_task:
+ : # FIXME: can't run for a cross build
+- $(LLVM_PROF_FILE) ./$(BUILDPYTHON) $(PROFILE_TASK) || true
++ $(LLVM_PROF_FILE) $(RUNSHARED) ./$(BUILDPYTHON) $(PROFILE_TASK) || true
+
+ build_all_merge_profile:
+ $(LLVM_PROF_MERGER)
diff --git a/abs/core/python_modules/cython/PKGBUILD b/abs/core/python_modules/cython/PKGBUILD
new file mode 100644
index 0000000..6826749
--- /dev/null
+++ b/abs/core/python_modules/cython/PKGBUILD
@@ -0,0 +1,52 @@
+# $Id$
+# Maintainer: Antonio Rojas <arojas@archlinux.org>
+# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Igor Scabini <furester @ gmail.com>
+
+pkgname=(cython cython2)
+pkgbase=cython
+pkgver=0.27.3
+pkgrel=3
+pkgdesc="C-Extensions for Python"
+arch=(x86_64)
+url="http://cython.org"
+license=(APACHE)
+makedepends=(python-setuptools python2-setuptools)
+source=($pkgbase-$pkgver.tar.gz::"https://github.com/cython/cython/archive/$pkgver.tar.gz")
+sha256sums=('648feb8a257574a3e4ef854475e7d767732ef26e870d2f9fcc1ca5b244b3ac89')
+
+prepare() {
+ cp -r cython-$pkgver cython2-$pkgver
+ find cython2-$pkgver -name '*.py' | xargs sed -e 's|/usr/bin/env python|/usr/bin/env python2|' -e 's|/usr/bin/python|/usr/bin/python2|' -i
+}
+
+build() {
+ cd cython-$pkgver
+ python setup.py build
+
+ cd ../cython2-$pkgver
+ python2 setup.py build
+}
+
+package_cython() {
+ depends=(python python-setuptools)
+
+ cd cython-$pkgver
+ python setup.py install --root="$pkgdir" --skip-build
+
+ for f in cygdb cython cythonize; do
+ mv "$pkgdir"/usr/bin/$f "$pkgdir"/usr/bin/${f}3
+ ln -s ${f}3 "$pkgdir"/usr/bin/$f
+ done
+}
+
+package_cython2() {
+ depends=(python2 python2-setuptools)
+
+ cd cython2-$pkgver
+ python2 setup.py install --root="$pkgdir" --skip-build
+
+ for f in cygdb cython cythonize; do
+ mv "$pkgdir"/usr/bin/$f "$pkgdir"/usr/bin/${f}2
+ done
+}
diff --git a/abs/core/python_modules/python-docutils/PKGBUILD b/abs/core/python_modules/docutils/PKGBUILD
index c0b5341..1b7cbe6 100644
--- a/abs/core/python_modules/python-docutils/PKGBUILD
+++ b/abs/core/python_modules/docutils/PKGBUILD
@@ -4,26 +4,24 @@
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
pkgbase=docutils
-pkgname=('python2-docutils')
-pkgver=0.11
-pkgrel=2
+pkgname=('python-docutils' 'python2-docutils')
+pkgver=0.14
+pkgrel=1
pkgdesc='Set of tools for processing plaintext docs into formats such as HTML, XML, or LaTeX'
arch=('any')
url='http://docutils.sourceforge.net'
license=('custom')
-makedepends=('python2')
+makedepends=('python' 'python2')
source=("http://downloads.sourceforge.net/$pkgbase/$pkgbase-$pkgver.tar.gz")
-md5sums=('20ac380a18b369824276864d98ec0ad6')
+md5sums=('c53768d63db3873b7d452833553469de')
build() {
cd $pkgbase-$pkgver
-# for _p in "$srcdir"/*.patch; do
-# msg2 "${_p##*/}"
-# patch -p2 -i "$_p"
-# done
-# python3 setup.py build --build-lib=build/python
-# find build/python -type f -exec \
-# sed -i '1s,^#! \?/usr/bin/\(env \|\)python$,#!/usr/bin/python3,' {} \;
+ msg2 python3
+ python3 setup.py build --build-lib=build/python
+ find build/python -type f -exec \
+ sed -i '1s,^#! \?/usr/bin/\(env \|\)python$,#!/usr/bin/python3,' {} \;
+ msg2 python2
python2 setup.py build --build-lib=build/python2
find build/python2 -type f -exec \
sed -i '1s,^#! \?/usr/bin/\(env \|\)python$,#!/usr/bin/python2,' {} \;
@@ -40,20 +38,20 @@ check() {
PYTHONPATH="$PWD/build/python2/" python2 test/alltests.py
}
-#package_python-docutils() {
-# depends=('python')
-#
-# cd $pkgbase-$pkgver
-# python setup.py build --build-lib=build/python \
+package_python-docutils() {
+ depends=('python')
+
+ cd $pkgbase-$pkgver
+ python setup.py build --build-lib=build/python \
install --root="$pkgdir" --optimize=1
# symlink without .py
-# for f in "$pkgdir"/usr/bin/*.py; do
-# ln -s "$(basename $f)" "$pkgdir/usr/bin/$(basename $f .py)"
-# done
+ for f in "$pkgdir"/usr/bin/*.py; do
+ ln -s "$(basename $f)" "$pkgdir/usr/bin/$(basename $f .py)"
+ done
# setup license
-# install -D -m644 COPYING.txt "$pkgdir/usr/share/licenses/$pkgname/COPYING.txt"
-# install -D -m644 licenses/python* "$pkgdir/usr/share/licenses/$pkgname/"
-#}
+ install -D -m644 COPYING.txt "$pkgdir/usr/share/licenses/$pkgname/COPYING.txt"
+ install -D -m644 licenses/python* "$pkgdir/usr/share/licenses/$pkgname/"
+}
package_python2-docutils() {
depends=('python2')
diff --git a/abs/core/python_modules/python-docutils/python2-docutils.install b/abs/core/python_modules/docutils/python2-docutils.install
index 3e414af..3e414af 100644
--- a/abs/core/python_modules/python-docutils/python2-docutils.install
+++ b/abs/core/python_modules/docutils/python2-docutils.install
diff --git a/abs/core/python_modules/gitpython/PKGBUILD b/abs/core/python_modules/gitpython/PKGBUILD
deleted file mode 100644
index 9c72ac0..0000000
--- a/abs/core/python_modules/gitpython/PKGBUILD
+++ /dev/null
@@ -1,20 +0,0 @@
-# Contributor: Jon Bergli Heier <snakebite@jvnv.net>
-pkgname=gitpython
-pkgver=0.3.2
-pkgrel=1
-pkgdesc="A python library used to interact with Git repositories"
-arch=('any')
-url="http://gitorious.org/git-python"
-license=('BSD')
-depends=('python2' 'git' 'python-gitdb')
-conflicts=('gitpython-git')
-source=("http://pypi.python.org/packages/source/G/GitPython/GitPython-${pkgver}.RC1.tar.gz")
-
-build() {
- cd "$srcdir/GitPython-$pkgver.RC1"
- python2 setup.py install --root="$pkgdir/" --optimize=1 || return 1
- install -D -m 644 LICENSE "$pkgdir"/usr/share/licenses/gitpython/LICENSE
-}
-# vim:set ts=2 sw=2 et:
-md5sums=('849082fe29adc653a3621465213cab96')
-
diff --git a/abs/core/python_modules/m2r/PKGBUILD b/abs/core/python_modules/m2r/PKGBUILD
new file mode 100644
index 0000000..da5739a
--- /dev/null
+++ b/abs/core/python_modules/m2r/PKGBUILD
@@ -0,0 +1,56 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgbase=m2r
+pkgname=(m2r python2-m2r)
+pkgver=0.1.14
+pkgrel=1
+pkgdesc="Markdown to reStructuredText converter"
+arch=('any')
+url="https://github.com/miyakogi/m2r"
+license=('MIT')
+makedepends=('python-setuptools' 'python2-setuptools' 'python-mistune' 'python2-mistune'
+ 'python-docutils' 'python2-docutils')
+checkdepends=('python2-mock' 'python-pygments' 'python2-pygments' 'python-pytest-runner'
+ 'python2-pytest-runner')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/miyakogi/m2r/archive/v$pkgver.tar.gz")
+sha512sums=('ad6c8c8df199c193af92b1fc7e144f4a5653f8a077d5d29a5ad378d96c7a94c5c9d933042bdbc0e0ddd6128c83211066efaac7d0b6a6c68b62b3552d2bfd886e')
+
+prepare() {
+ cp -a m2r-$pkgver{,-py2}
+}
+
+build() {
+ cd "$srcdir"/m2r-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/m2r-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir"/m2r-$pkgver
+ python setup.py pytest
+
+ cd "$srcdir"/m2r-$pkgver-py2
+ python2 setup.py pytest
+}
+
+package_m2r() {
+ depends=('python-mistune' 'python-docutils' 'python-setuptools')
+
+ cd "$srcdir"/m2r-$pkgver
+ python setup.py install --root="$pkgdir" --prefix=/usr --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+package_python2-m2r() {
+ depends=('python2-mistune' 'python2-docutils' 'python2-setuptools')
+
+ cd "$srcdir"/m2r-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --prefix=/usr --optimize=1
+ mv "$pkgdir"/usr/bin/m2r{,-python2}
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/python_modules/pygobject/PKGBUILD b/abs/core/python_modules/pygobject/PKGBUILD
index fc8f1c7..ba196da 100644
--- a/abs/core/python_modules/pygobject/PKGBUILD
+++ b/abs/core/python_modules/pygobject/PKGBUILD
@@ -1,56 +1,68 @@
# $Id$
-# Maintainer: Ionut Biru <ibiru@archlinux.org>
+# Contributor: Ionut Biru <ibiru@archlinux.org>
pkgbase=pygobject
-pkgname=(python2-gobject pygobject-devel)
-pkgver=3.18.2
+pkgname=(python-gobject python2-gobject pygobject-devel)
+pkgver=3.26.1
pkgrel=1
-arch=(i686 x86_64)
-url="https://live.gnome.org/PyGObject"
+pkgdesc="Python Bindings for GLib/GObject/GIO/GTK+"
+url="https://wiki.gnome.org/Projects/PyGObject"
+arch=(x86_64)
license=(LGPL)
-makedepends=(python2 python2-cairo gobject-introspection gnome-common)
-source=(https://download.gnome.org/sources/$pkgbase/${pkgver:0:4}/$pkgbase-$pkgver.tar.xz)
-sha256sums=('2a3cad1517916b74e131e6002c3824361aee0671ffb0d55ded119477fc1c2c5f')
+depends=(gobject-introspection-runtime)
+makedepends=(python{,2}-cairo gobject-introspection git autoconf-archive)
+optdepends=('cairo: Cairo bindings')
+_commit=55cb08b71cd23f56b97d912af22ca24e787fd5d7 # tags/3.26.1^0
+source=("git+https://git.gnome.org/browse/pygobject#commit=$_commit")
+sha256sums=('SKIP')
+
+pkgver() {
+ cd $pkgbase
+ git describe --tags | sed 's/-/+/g'
+}
prepare() {
- mkdir build-py2 build-py3 devel
- cd ${pkgbase}-${pkgver}
+ mkdir build-py{2,3} devel
+ cd $pkgbase
+ NOCONFIGURE=1 ./autogen.sh
}
-build() {
- cd build-py2
- ../${pkgbase}-${pkgver}/configure --prefix=/usr --with-python=/usr/bin/python2
+_build() (
+ cd build-py$1
+ ../$pkgbase/configure --prefix=/usr --with-python=/usr/bin/python$1
+ sed -i 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
+)
-# cd ../build-py3
-# ../${pkgbase}-${pkgver}/configure --prefix=/usr --with-python=/usr/bin/python
-# make
+build() {
+ _build 2
+ _build 3
}
-#package_python-gobject() {
-# pkgdesc="Python 3 bindings for GObject"
-# depends=('gobject-introspection-runtime' "pygobject-devel=$pkgver" 'python' 'cairo')
+package_python-gobject() {
+ depends=("pygobject-devel=$pkgver" python)
-# cd build-py3
-# make DESTDIR="$pkgdir" install
-# rm -r "$pkgdir"/usr/{include,lib/pkgconfig}
-#}
+ cd build-py3
+ make DESTDIR="$pkgdir" install
+ mv "$pkgdir"/usr/{include,lib/pkgconfig} "$srcdir/devel"
+}
package_python2-gobject() {
- pkgdesc="Python 2 bindings for GObject"
- depends=('gobject-introspection-runtime' "pygobject-devel=$pkgver" 'python2' 'cairo')
+ pkgdesc="${pkgdesc/Python/Python2}"
+ depends=("pygobject-devel=$pkgver" python2)
cd build-py2
make DESTDIR="$pkgdir" install
- mv "$pkgdir"/usr/{include,lib/pkgconfig} "$srcdir/devel"
- python2 -m compileall "$pkgdir"//usr/lib/python2.7/site-packages/gi
+ python2 -m compileall "$pkgdir"/usr/lib/python2.7/site-packages/gi
+ rm -r "$pkgdir"/usr/{include,lib/pkgconfig}
}
package_pygobject-devel() {
- pkgdesc="Development files for the pygobject bindings"
+ pkgdesc="Common development files for pygobject"
+ optdepends=()
- cd "devel"
- mkdir -p "$pkgdir"/usr/{include,lib}
+ cd devel
+ mkdir -p "$pkgdir/usr/lib"
mv include "$pkgdir/usr/"
mv pkgconfig "$pkgdir/usr/lib/"
}
diff --git a/abs/core/python_modules/pygobject/__changelog b/abs/core/python_modules/pygobject/__changelog
deleted file mode 100644
index 9715c21..0000000
--- a/abs/core/python_modules/pygobject/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD - comment out all python 3 stuff and only build for py 2
diff --git a/abs/core/python_modules/pygobject2/PKGBUILD b/abs/core/python_modules/pygobject2/PKGBUILD
index ba3d035..bca11a0 100644
--- a/abs/core/python_modules/pygobject2/PKGBUILD
+++ b/abs/core/python_modules/pygobject2/PKGBUILD
@@ -2,73 +2,69 @@
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgbase=pygobject2
-pkgname=(python2-gobject2 pygobject2-devel)
-pkgver=2.28.6
-pkgrel=12
-arch=(i686 x86_64)
+pkgname=(python-gobject2 python2-gobject2 pygobject2-devel)
+pkgver=2.28.7
+pkgrel=1
+pkgdesc="Python bindings for GObject (legacy)"
url="http://www.pygtk.org/"
+arch=(x86_64)
license=(LGPL)
-makedepends=(python2 git)
-
-# pygobject-2-28 branch: https://git.gnome.org/browse/pygobject/log/?h=pygobject-2-28
-source=('git://git.gnome.org/pygobject#commit=9456ba7')
+depends=(glib2)
+makedepends=(python python2 git)
+options=(!emptydirs)
+_commit=c9594b6a91e6ca2086fedec2ed8249e0a9c029fc # tags/PYGOBJECT_2_28_7^0
+source=("git+https://git.gnome.org/browse/pygobject#commit=$_commit")
sha256sums=('SKIP')
-prepare() {
+pkgver() {
cd pygobject
- autoreconf -fi
-
- cp -a . ../python2-build
+ git describe --tags | sed 's/^PYGOBJECT_//;s/_/./g;s/-/+/g'
+}
- find -O3 ../python2-build \
- \( -name '*.py' -o -name '*.py.in' \) \
- -exec sed -i '1s|python$|&2|' {} +
+prepare() {
+ mkdir build-py{2,3} devel
+ cd pygobject
+ find . \( -name '*.py' -o -name '*.py.in' \) -exec sed -i '1s|python$|&2|' {} +
+ autoreconf -fvi
}
-build() {
- cd python2-build
- ./configure --prefix=/usr --disable-introspection \
- PYTHON=/usr/bin/python2
+_build() (
+ cd build-py$1
+ ../pygobject/configure --prefix=/usr --disable-introspection PYTHON=/usr/bin/python$1
+ sed -i 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
+)
- cd ../pygobject
-# ./configure --prefix=/usr --disable-introspection
-# make
+build() {
+ _build 2
+ _build 3
}
-#package_python-gobject2() {
-# pkgdesc="Python 3 bindings for GObject2"
-# depends=(glib2 pygobject2-devel python)
-# replaces=(py3gobject)
-# provides=("py3gobject=$pkgver")
+package_python-gobject2() {
+ depends=("pygobject2-devel=$pkgver" python)
-# cd pygobject
-# make DESTDIR="$pkgdir" install
-
- # Delete devel stuff
-# rm -r "$pkgdir"/usr/{include,lib/pkgconfig,share/{gtk-doc,pygobject/xsl}}
-#}
+ cd build-py3
+ make DESTDIR="$pkgdir" install
+ rm -r "$pkgdir"/usr/{include,lib/pkgconfig,share/pygobject/xsl}
+ rm -r "$pkgdir"/usr/share/gtk-doc
+}
package_python2-gobject2() {
- pkgdesc="Python 2 bindings for GObject2"
- depends=(glib2 pygobject2-devel python2)
- replaces=(pygobject)
- provides=("pygobject=$pkgver")
+ pkgdesc="${pkgdesc/Python/Python2}"
+ depends=("pygobject2-devel=$pkgver" python2)
- cd python2-build
+ cd build-py2
make DESTDIR="$pkgdir" install
-
+ mv "$pkgdir"/usr/{include,lib/pkgconfig,share/pygobject/xsl} "$srcdir/devel"
rm -r "$pkgdir"/usr/share/gtk-doc
-
- # Split devel stuff
- cd ..
- mkdir -p devel/usr/{lib,share/pygobject}
- mv {"$pkgdir",devel}/usr/include
- mv {"$pkgdir",devel}/usr/lib/pkgconfig
- mv {"$pkgdir",devel}/usr/share/pygobject/xsl
}
package_pygobject2-devel() {
- pkgdesc="Development files for the pygobject bindings"
- mv devel/* "$pkgdir"
+ pkgdesc="Common development files for pygobject2"
+
+ cd devel
+ mkdir -p "$pkgdir"/usr/{lib,share/pygobject}
+ mv include "$pkgdir/usr/"
+ mv pkgconfig "$pkgdir/usr/lib/"
+ mv xsl "$pkgdir/usr/share/pygobject/"
}
diff --git a/abs/core/python_modules/pygobject2/__changelog b/abs/core/python_modules/pygobject2/__changelog
deleted file mode 100644
index 92b1ef7..0000000
--- a/abs/core/python_modules/pygobject2/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-remove python3
diff --git a/abs/core/python_modules/pygtk/PKGBUILD b/abs/core/python_modules/pygtk/PKGBUILD
index 9e9f145..661d7d8 100644
--- a/abs/core/python_modules/pygtk/PKGBUILD
+++ b/abs/core/python_modules/pygtk/PKGBUILD
@@ -4,32 +4,42 @@
pkgname=pygtk
pkgver=2.24.0
-pkgrel=5
+pkgrel=8
pkgdesc="Python bindings for the GTK widget set"
-arch=('i686' 'x86_64')
+url="http://www.pygtk.org/"
+arch=('x86_64')
license=('LGPL')
-depends=('libglade' 'python2-cairo' 'pygobject')
+depends=('libglade' 'python2-cairo' 'python2-gobject2')
makedepends=('python2-numpy' 'pygobject2-devel')
optdepends=('python2-numpy')
-url="http://www.pygtk.org/"
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2
- python27.patch)
+source=(https://download.gnome.org/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2
+ python27.patch
+ fix-leaks-of-pango-objects.patch)
sha256sums=('cd1c1ea265bd63ff669e92a2d3c2a88eb26bcd9e5363e0f82c896e649f206912'
- '39a30456cba055a452bb55c74ef1ff2f5f7bfaad22855b4dd569ab009b56b682')
+ '39a30456cba055a452bb55c74ef1ff2f5f7bfaad22855b4dd569ab009b56b682'
+ '0ca9e910e9bb88897089dd19752a419aa78de15463df766cb19a1d0c2dd45bcb')
prepare() {
cd "${srcdir}/${pkgname}-${pkgver}"
- #https://bugzilla.gnome.org/show_bug.cgi?id=623965
+ # https://bugzilla.gnome.org/show_bug.cgi?id=623965
patch -Np1 -i "${srcdir}/python27.patch"
+ # https://bugzilla.gnome.org/show_bug.cgi?id=660216
+ patch -Np1 -i "${srcdir}/fix-leaks-of-pango-objects.patch"
+
+ # Python 2
sed -i -e 's#env python$#env python2#' examples/pygtk-demo/{,demos/}*.py
+
+ # No docs
+ sed -i '/^SUBDIRS =/s/docs//' Makefile.in
}
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- PYTHON=/usr/bin/python2 ./configure --prefix=/usr
+ PYTHON=/usr/bin/python2 ./configure --prefix=/usr --disable-docs
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
diff --git a/abs/core/python_modules/pygtk/fix-leaks-of-pango-objects.patch b/abs/core/python_modules/pygtk/fix-leaks-of-pango-objects.patch
new file mode 100644
index 0000000..c935dd6
--- /dev/null
+++ b/abs/core/python_modules/pygtk/fix-leaks-of-pango-objects.patch
@@ -0,0 +1,59 @@
+From eca72baa5616fbe4dbebea43c7e5940847dc5ab8 Mon Sep 17 00:00:00 2001
+From: "Owen W. Taylor" <otaylor@fishsoup.net>
+Date: Tue, 27 Sep 2011 00:17:52 -0400
+Subject: Fix leaks of Pango objects
+
+Gtk.PrintContext.create_pango_context()
+Gtk.PrintContext.create_pango_layout()
+pangocairo.CairoContext.create_layout()
+
+were leaking the objects they returned.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=660216
+
+diff --git a/gtk/gtk-2.10.defs b/gtk/gtk-2.10.defs
+index 69c7e0c..faa45e1 100644
+--- a/gtk/gtk-2.10.defs
++++ b/gtk/gtk-2.10.defs
+@@ -1388,12 +1388,14 @@
+ (define-method create_pango_context
+ (of-object "GtkPrintContext")
+ (c-name "gtk_print_context_create_pango_context")
++ (caller-owns-return #t)
+ (return-type "PangoContext*")
+ )
+
+ (define-method create_pango_layout
+ (of-object "GtkPrintContext")
+ (c-name "gtk_print_context_create_pango_layout")
++ (caller-owns-return #t)
+ (return-type "PangoLayout*")
+ )
+
+diff --git a/pangocairo.override b/pangocairo.override
+index bb923e6..5101107 100644
+--- a/pangocairo.override
++++ b/pangocairo.override
+@@ -118,11 +118,16 @@ _wrap_pango_cairo_update_context(PyGObject *self, PyObject *args, PyObject *kwar
+ static PyObject *
+ _wrap_pango_cairo_create_layout(PyGObject *self)
+ {
+- PangoLayout *ret;
++ PangoLayout *layout;
++ PyObject *ret;
+
+- ret = pango_cairo_create_layout(PycairoContext_GET(self));
++ layout = pango_cairo_create_layout(PycairoContext_GET(self));
+ /* pygobject_new handles NULL checking */
+- return pygobject_new((GObject *)ret);
++ ret = pygobject_new((GObject *)layout);
++ if (layout)
++ g_object_unref(layout);
++
++ return ret;
+ }
+
+ static PyObject *
+--
+cgit v0.10.2
+
diff --git a/abs/core/python_modules/python-opengl/LICENSE b/abs/core/python_modules/pyopengl/LICENSE
index 11d88fb..11d88fb 100644
--- a/abs/core/python_modules/python-opengl/LICENSE
+++ b/abs/core/python_modules/pyopengl/LICENSE
diff --git a/abs/core/python_modules/pyopengl/PKGBUILD b/abs/core/python_modules/pyopengl/PKGBUILD
new file mode 100644
index 0000000..dbb05c9
--- /dev/null
+++ b/abs/core/python_modules/pyopengl/PKGBUILD
@@ -0,0 +1,51 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Josh Taylor <joshtaylor.mail@gmail.com>
+# Contributor: simo <simo@archlinux.org>
+# Contributor: Douglas Soares de Andrade <douglas@archlinux.org>
+# Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
+
+pkgbase=pyopengl
+pkgname=('python2-opengl' 'python-opengl')
+pkgver=3.1.0
+pkgrel=3
+pkgdesc="The cross platform Python binding to OpenGL and related APIs"
+url="http://pyopengl.sourceforge.net/"
+license=('BSD')
+arch=('any')
+makedepends=('freeglut' 'python2-setuptools' 'python-setuptools')
+source=("https://pypi.python.org/packages/source/P/PyOpenGL/PyOpenGL-${pkgver}.tar.gz"
+ 'LICENSE')
+md5sums=('0de021941018d46d91e5a8c11c071693'
+ '0b53c508a63e5dbaf44cdfb0fa103b3a')\
+
+prepare() {
+ cp -a PyOpenGL-${pkgver} python-PyOpenGL-${pkgver}
+
+ # Fix the shebang
+ sed -i 's|#!/usr/bin/env python|#!/usr/bin/python2|' \
+ PyOpenGL-${pkgver}/OpenGL/Tk/__init__.py
+ sed -i 's|#! /usr/bin/env python|#!/usr/bin/python2|' \
+ PyOpenGL-${pkgver}/OpenGL/arrays/{_,}buffers.py
+}
+
+package_python2-opengl() {
+ depends=('python2' 'freeglut')
+ conflicts=('python-pyopengl' 'python-opengl<=3.0.1-4')
+ replaces=('python-pyopengl' 'python-opengl<=3.0.1-4')
+
+ cd PyOpenGL-${pkgver}
+ python2 setup.py install --root="${pkgdir}" --optimize=1
+ install -Dm644 "${srcdir}/LICENSE" \
+ "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
+
+package_python-opengl() {
+ depends=('python' 'freeglut')
+
+ cd python-PyOpenGL-${pkgver}
+ python setup.py install --root="${pkgdir}" --optimize=1
+ install -Dm644 "${srcdir}/LICENSE" \
+ "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
+
diff --git a/abs/core/python_modules/pyopenssl/PKGBUILD b/abs/core/python_modules/pyopenssl/PKGBUILD
index d99cafa..2753f8f 100644
--- a/abs/core/python_modules/pyopenssl/PKGBUILD
+++ b/abs/core/python_modules/pyopenssl/PKGBUILD
@@ -4,16 +4,18 @@
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
pkgbase=pyopenssl
-pkgname=('python2-pyopenssl')
-pkgver=16.0.0
+pkgname=('python-pyopenssl' 'python2-pyopenssl')
+pkgver=17.5.0
pkgrel=1
arch=('any')
url="http://pypi.python.org/pypi/pyOpenSSL"
license=('LGPL2.1')
-makedepends=('openssl' 'python2-setuptools' 'python2-cryptography')
-checkdepends=('python2-pytest-runner')
-source=(http://pypi.python.org/packages/source/p/pyOpenSSL/pyOpenSSL-$pkgver.tar.gz)
-md5sums=('9587d813dcf656e9f2760e41a3682dc3')
+makedepends=('openssl' 'python-setuptools' 'python2-setuptools' 'python-cryptography'
+ 'python2-cryptography')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner' 'python-pretend' 'python2-pretend'
+ 'python-flaky' 'python2-flaky')
+source=("https://pypi.io/packages/source/p/pyOpenSSL/pyOpenSSL-$pkgver.tar.gz")
+sha512sums=('f194662b5842f1e3a4fcb910b9f2e6482d1dcdf834f306acc3dd6d9723f65038f7bff550248fa6268d90c839c9d9e8248bb6c7d399495fe6aed25291b93ece86')
prepare() {
cp -a pyOpenSSL-$pkgver{,-py2}
@@ -23,7 +25,7 @@ prepare() {
build () {
cd "$srcdir"/pyOpenSSL-$pkgver
-# python setup.py build
+ python setup.py build
cd "$srcdir"/pyOpenSSL-$pkgver-py2
python2 setup.py build
@@ -32,16 +34,19 @@ build () {
check () {
(
cd "$srcdir"/pyOpenSSL-$pkgver
- python setup.py ptr
+ python setup.py pytest
cd "$srcdir"/pyOpenSSL-$pkgver-py2
- python2 setup.py ptr
+ python2 setup.py pytest
) || warning "Tests failed due to missing SSLv3_METHOD"
}
package_python-pyopenssl(){
pkgdesc="Python3 wrapper module around the OpenSSL library"
depends=('openssl' 'python-six' 'python-cryptography')
+ replaces=('pyopenssl')
+ provides=('pyopenssl')
+ conflicts=('pyopenssl')
cd "$srcdir"/pyOpenSSL-$pkgver
python setup.py install --root="$pkgdir" --optimize=1
@@ -50,9 +55,6 @@ package_python-pyopenssl(){
package_python2-pyopenssl(){
pkgdesc="Python2 wrapper module around the OpenSSL library"
depends=('openssl' 'python2-six' 'python2-cryptography')
- replaces=('pyopenssl')
- provides=('pyopenssl')
- conflicts=('pyopenssl')
cd "$srcdir"/pyOpenSSL-$pkgver-py2
python2 setup.py install --root="$pkgdir" --optimize=1
diff --git a/abs/core/python_modules/pyopenssl/__changelog b/abs/core/python_modules/pyopenssl/__changelog
deleted file mode 100644
index 3de0e7a..0000000
--- a/abs/core/python_modules/pyopenssl/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: rm py 3 stuff
-PKGBUILD: move provides/replaces/conflicts to python2-pyopenssl
diff --git a/abs/core/python_modules/pyqt/PKGBUILD b/abs/core/python_modules/pyqt/PKGBUILD
deleted file mode 100644
index 669bc4c..0000000
--- a/abs/core/python_modules/pyqt/PKGBUILD
+++ /dev/null
@@ -1,99 +0,0 @@
-# $Id: PKGBUILD 163679 2012-07-17 18:11:04Z andrea $
-# Maintainer: Andrea Scarpino <andrea@archlinux.org>
-# Contributor: Douglas Soares de Andrade <douglas@archlinux.org>
-# Contributor: riai <riai@bigfoot.com> Ben <ben@benmazer.net>
-
-pkgbase=pyqt
-pkgname=('pyqt-common' 'python2-pyqt')
-pkgver=4.9.4
-pkgrel=2
-arch=('i686' 'x86_64')
-url="http://riverbankcomputing.co.uk/software/pyqt/intro"
-license=('GPL')
-makedepends=('qt' 'python2-sip'
- 'python-opengl' 'qt-assistant-compat' 'qtwebkit' 'python2-dbus')
-source=("http://riverbankcomputing.co.uk/static/Downloads/PyQt4/PyQt-x11-gpl-${pkgver}.tar.gz"
- 'fix-pyuic4.patch')
-md5sums=('a0b6a820633366365af5124ddbd059c7'
- '097651aea0bafded5abdfd6d62afd2ad')
-
-build() {
- # FS#30728
- cd "${srcdir}"/PyQt-x11-gpl-${pkgver}
- patch -p1 -i "${srcdir}"/fix-pyuic4.patch
- cd ..
-
- cp -r PyQt-x11-gpl-${pkgver} Py2Qt-x11-gpl-${pkgver}
-
- #cd "${srcdir}/PyQt-x11-gpl-${pkgver}"
- #python configure.py \
- # --confirm-license \
- # --qsci-api
-
- # Thanks Gerardo for the rpath fix
- #find -name 'Makefile' | xargs sed -i 's|-Wl,-rpath,/usr/lib||g;s|-Wl,-rpath,.* ||g'
-
- #make
-
- ### Python2 version ###
- cd "${srcdir}/Py2Qt-x11-gpl-${pkgver}"
- python2 configure.py \
- --confirm-license \
- -v /usr/share/sip \
- --qsci-api
-
- # Thanks Gerardo for the rpath fix
- find -name 'Makefile' | xargs sed -i 's|-Wl,-rpath,/usr/lib||g;s|-Wl,-rpath,.* ||g'
-
- make
-}
-
-package_pyqt-common(){
- pkgdesc="Common PyQt files shared between pyqt and python2-pyqt"
-
- cd "${srcdir}/Py2Qt-x11-gpl-${pkgver}"
- make -C pyrcc DESTDIR="${pkgdir}" install
- make -C pylupdate DESTDIR="${pkgdir}" install
- make -C designer INSTALL_ROOT="${pkgdir}" install
-
- install -Dm644 PyQt4.api "${pkgdir}"/usr/share/qt/qsci/api/python/PyQt4.api
-}
-
-package_pyqt(){
- pkgdesc="A set of Python 3.x bindings for the Qt toolkit"
- depends=('qtwebkit' 'python-sip' 'python-dbus' 'pyqt-common')
- optdepends=('phonon: enable audio and video in PyQt applications'
- 'qscintilla: QScintilla API'
- 'qt-assistant-compat: add PyQt online help in Qt Assistant')
-
- cd "${srcdir}/PyQt-x11-gpl-${pkgver}"
- # INSTALL_ROOT is needed for the QtDesigner module, the other Makefiles use DESTDIR
- make DESTDIR="${pkgdir}" INSTALL_ROOT="${pkgdir}" install
-
- # Provided by pyqt-common
- rm "${pkgdir}"/usr/bin/{pylupdate4,pyrcc4}
- rm "${pkgdir}"/usr/lib/qt/plugins/designer/libpythonplugin.so
- rm "${pkgdir}"/usr/share/qt/qsci/api/python/PyQt4.api
-}
-
-package_python2-pyqt(){
- pkgdesc="A set of Python 2.x bindings for the Qt toolkit"
- depends=('qtwebkit' 'python2-sip' 'python2-dbus' 'pyqt-common')
- optdepends=('phonon: enable audio and video in PyQt applications'
- 'python-opengl: enable OpenGL 3D graphics in PyQt applications'
- 'qscintilla: QScintilla API'
- 'qt-assistant-compat: add PyQt online help in Qt Assistant')
- provides=('python2-qt')
-
- cd "${srcdir}/Py2Qt-x11-gpl-${pkgver}"
- # INSTALL_ROOT is needed for the QtDesigner module, the other Makefiles use DESTDIR
- make DESTDIR="${pkgdir}" INSTALL_ROOT="${pkgdir}" install
-
- # Fix conflicts with pyqt
- mv "${pkgdir}"/usr/bin/{,python2-}pyuic4
-
- # Provided by pyqt-common
- rm "${pkgdir}"/usr/bin/{pylupdate4,pyrcc4}
- rm "${pkgdir}"/usr/lib/qt/plugins/designer/libpythonplugin.so
- rm "${pkgdir}"/usr/share/qt/qsci/api/python/PyQt4.api
-}
diff --git a/abs/core/python_modules/pyqt/__changelog b/abs/core/python_modules/pyqt/__changelog
deleted file mode 100644
index 9731eb3..0000000
--- a/abs/core/python_modules/pyqt/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-removed python3
diff --git a/abs/core/python_modules/pyqt/fix-pyuic4.patch b/abs/core/python_modules/pyqt/fix-pyuic4.patch
deleted file mode 100644
index 2173443..0000000
--- a/abs/core/python_modules/pyqt/fix-pyuic4.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-# HG changeset patch
-# User Phil Thompson <phil at riverbankcomputing.com>
-# Date 2012-07-13 13:39:28 +0100
-# Node ID 29b668ada14c1428a3bbfe8f0324c6626bd5ac9a
-# Parent fd0f3da9d79ca9858d10a20c15fb85456cb832d7
-Fixed a regression in pyuic's handling of custom widgets.
-
-diff --git a/pyuic/uic/Compiler/qobjectcreator.py b/pyuic/uic/Compiler/qobjectcreator.py
---- a/pyuic/uic/Compiler/qobjectcreator.py
-+++ b/pyuic/uic/Compiler/qobjectcreator.py
-@@ -1,6 +1,6 @@
- #############################################################################
- ##
--## Copyright (C) 2011 Riverbank Computing Limited.
-+## Copyright (C) 2012 Riverbank Computing Limited.
- ## Copyright (C) 2006 Thorsten Marek.
- ## All right reserved.
- ##
-@@ -100,7 +100,6 @@
- assert widgetClass not in self._widgets
- self._widgets[widgetClass] = (baseClass, module)
-
--
- def _resolveBaseclass(self, baseClass):
- try:
- for x in range(0, 10):
-@@ -114,19 +113,17 @@
- except KeyError:
- raise ValueError("unknown baseclass %s" % baseClass)
-
--
- def search(self, cls):
- try:
-- self._usedWidgets.add(cls)
- baseClass = self._resolveBaseclass(self._widgets[cls][0])
- DEBUG("resolved baseclass of %s: %s" % (cls, baseClass))
--
-- return type(cls, (baseClass,),
-- {"module" : ""})
--
- except KeyError:
- return None
-
-+ self._usedWidgets.add(cls)
-+
-+ return type(cls, (baseClass, ), {"module" : ""})
-+
- def _writeImportCode(self):
- imports = {}
- for widget in self._usedWidgets:
-diff --git a/pyuic/uic/objcreator.py b/pyuic/uic/objcreator.py
---- a/pyuic/uic/objcreator.py
-+++ b/pyuic/uic/objcreator.py
-@@ -102,19 +102,26 @@
- self._modules.append(self._customWidgets)
-
- def createQObject(self, classname, *args, **kwargs):
-- # Handle scoped names, typically static factory methods.
-- parts = classname.split('.')
-- factory = self.findQObjectType(parts[0])
-+ # Handle regular and custom widgets.
-+ factory = self.findQObjectType(classname)
-
-- if factory is not None:
-- for part in parts[1:]:
-- factory = getattr(factory, part, None)
-- if factory is None:
-- break
-- else:
-- return self._cpolicy.instantiate(factory, *args, **kwargs)
-+ if factory is None:
-+ # Handle scoped names, typically static factory methods.
-+ parts = classname.split('.')
-
-- raise NoSuchWidgetError(classname)
-+ if len(parts) > 1:
-+ factory = self.findQObjectType(parts[0])
-+
-+ if factory is not None:
-+ for part in parts[1:]:
-+ factory = getattr(factory, part, None)
-+ if factory is None:
-+ break
-+
-+ if factory is None:
-+ raise NoSuchWidgetError(classname)
-+
-+ return self._cpolicy.instantiate(factory, *args, **kwargs)
-
- def invoke(self, rname, method, args=()):
- return self._cpolicy.invoke(rname, method, args)
diff --git a/abs/core/python_modules/pyqt5/PKGBUILD b/abs/core/python_modules/pyqt5/PKGBUILD
new file mode 100644
index 0000000..faad5db
--- /dev/null
+++ b/abs/core/python_modules/pyqt5/PKGBUILD
@@ -0,0 +1,128 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+# Contributor: Yichao Yu <yyc1992@gmail.com>
+# Contributor: Douglas Soares de Andrade <douglas@archlinux.org>
+# Contributor: riai <riai@bigfoot.com> Ben <ben@benmazer.net>
+
+pkgbase=pyqt5
+pkgname=('pyqt5-common' 'python-pyqt5' 'python2-pyqt5')
+pkgver=5.10.1
+pkgrel=1
+arch=('x86_64')
+url="http://riverbankcomputing.co.uk/software/pyqt/intro"
+license=('GPL')
+makedepends=('python-sip' 'python2-sip' 'python-opengl' 'python2-opengl'
+ 'python2-dbus' 'python-dbus' 'qt5-connectivity'
+ 'qt5-multimedia' 'qt5-tools' 'qt5-serialport' 'qt5-svg'
+ 'qt5-webengine' 'qt5-webkit' 'qt5-websockets' 'qt5-x11extras' 'qt5-networkauth')
+source=("http://sourceforge.net/projects/pyqt/files/PyQt5/PyQt-$pkgver/PyQt5_gpl-$pkgver.tar.gz" pyqt-support-new-qt.patch)
+sha512sums=('04cd0292f7a088f9c0d088d7c73ec96cfc40253f771dfdf194eb92be7635e6fcaf04863fa24215e9c34a096658549bb2feeb8d8fdca1e39ed87f0256ef0f790b'
+ '9e4184291c0ece0bf375da3e0cf6e3f22df33eea1ee2b981fe9e2a0ba7d625583dd513c029c49562189986c0145262ac2aa8e5aa85701a981b3ed4061f4acf36')
+
+prepare() {
+ # Support new versions of Qt - don't remove, needs to be reapplied after every new Qt release
+ pushd PyQt5_gpl-$pkgver
+ # patch -p1 -i ../pyqt-support-new-qt.patch
+ popd
+
+ # The additional include path was removed due to this line, I don't really know why they are doing this...
+ sed -i '/target_config.dbus_inc_dirs = \[\]/d' PyQt5_gpl-$pkgver/configure.py
+
+ cp -a PyQt5_gpl-$pkgver{,-py2}
+}
+
+build() {
+ cd "$srcdir"/PyQt5_gpl-$pkgver
+ python configure.py \
+ --confirm-license \
+ --no-sip-files \
+ --qsci-api \
+ -q /usr/bin/qmake-qt5
+
+ # Thanks Gerardo for the rpath fix
+ find -name 'Makefile' | xargs sed -i 's|-Wl,-rpath,/usr/lib||g;s|-Wl,-rpath,.* ||g'
+
+ make
+
+ cd "$srcdir"/PyQt5_gpl-$pkgver-py2
+ python2 configure.py \
+ --confirm-license \
+ --no-sip-files \
+ --qsci-api \
+ -q /usr/bin/qmake-qt5
+
+ # Thanks Gerardo for the rpath fix
+ find -name 'Makefile' | xargs sed -i 's|-Wl,-rpath,/usr/lib||g;s|-Wl,-rpath,.* ||g'
+
+ make
+}
+
+package_pyqt5-common(){
+ pkgdesc="Common PyQt files shared between python-pyqt5 and python2-pyqt5"
+ depends=('qt5-base')
+
+ cd PyQt5_gpl-$pkgver
+ install -Dm644 PyQt5.api "$pkgdir"/usr/share/qt/qsci/api/python/PyQt5.api
+
+ install -d "$pkgdir"/usr/share/sip/PyQt5
+ cp -a sip/* "$pkgdir"/usr/share/sip/PyQt5
+}
+
+package_python-pyqt5(){
+ pkgdesc="A set of Python 3.x bindings for the Qt5 toolkit"
+ depends=('python-sip' 'pyqt5-common')
+ optdepends=('python-opengl: enable OpenGL 3D graphics in PyQt applications'
+ 'python-dbus: for python-dbus mainloop support'
+ 'qt5-multimedia: QtMultimedia, QtMultimediaWidgets'
+ 'qt5-tools: QtHelp, QtDesigner'
+ 'qt5-svg: QtSvg'
+ 'qt5-webkit: QtWebKit, QtWebKitWidgets'
+ 'qt5-xmlpatterns: QtXmlPatterns'
+ 'qt5-declarative: QtQml, qmlplugin'
+ 'qt5-serialport: QtSerialPort'
+ 'qt5-websockets: QtWebSockets'
+ 'qt5-connectivity: QtNfc, QtBluetooth'
+ 'qt5-webengine: QtWebEngine, QtWebEngineCore, QtWebEngineWidgets'
+ 'qt5-x11extras: QtX11Extras'
+ 'qt5-networkauth: QtNetworkAuth')
+
+ cd PyQt5_gpl-$pkgver
+ # INSTALL_ROOT is needed for the QtDesigner module, the other Makefiles use DESTDIR
+ make DESTDIR="$pkgdir" INSTALL_ROOT="$pkgdir" install
+
+ # Provided by pyqt-common
+ rm "$pkgdir"/usr/share/qt/qsci/api/python/PyQt5.api
+}
+
+package_python2-pyqt5(){
+ pkgdesc="A set of Python 2.x bindings for the Qt5 toolkit"
+ depends=('python2-sip' 'pyqt5-common' 'python2-enum34')
+ optdepends=('python2-opengl: enable OpenGL 3D graphics in PyQt applications'
+ 'python-dbus: for python-dbus mainloop support'
+ 'qt5-multimedia: QtMultimedia, QtMultimediaWidgets'
+ 'qt5-tools: QtHelp, QtDesigner'
+ 'qt5-svg: QtSvg'
+ 'qt5-webkit: QtWebKit, QtWebKitWidgets'
+ 'qt5-xmlpatterns: QtXmlPatterns'
+ 'qt5-declarative: QtQml, qmlplugin'
+ 'qt5-serialport: QtSerialPort'
+ 'qt5-websockets: QtWebSockets'
+ 'qt5-connectivity: QtNfc, QtBluetooth'
+ 'qt5-webengine: QtWebEngine, QtWebEngineCore, QtWebEngineWidgets'
+ 'qt5-x11extras: QtX11Extras'
+ 'qt5-networkauth: QtNetworkAuth')
+
+ cd PyQt5_gpl-$pkgver-py2
+ # INSTALL_ROOT is needed for the QtDesigner module, the other Makefiles use DESTDIR
+ make DESTDIR="$pkgdir" INSTALL_ROOT="$pkgdir" install
+
+ # Fix conflicts with python-pyqt5
+ mv "$pkgdir"/usr/bin/{,python2-}pyuic5
+ mv "$pkgdir"/usr/bin/{,python2-}pylupdate5
+ mv "$pkgdir"/usr/bin/{,python2-}pyrcc5
+
+ rm "$pkgdir"/usr/lib/qt/plugins/designer/libpyqt5.so
+ rm "$pkgdir"/usr/lib/qt/plugins/PyQt5/libpyqt5qmlplugin.so
+ rm "$pkgdir"/usr/share/qt/qsci/api/python/PyQt5.api
+}
diff --git a/abs/core/python_modules/pyqt5/pyqt-support-new-qt.patch b/abs/core/python_modules/pyqt5/pyqt-support-new-qt.patch
new file mode 100644
index 0000000..3dd100a
--- /dev/null
+++ b/abs/core/python_modules/pyqt5/pyqt-support-new-qt.patch
@@ -0,0 +1,12 @@
+diff -ru a/sip/QtCore/QtCoremod.sip b/sip/QtCore/QtCoremod.sip
+--- a/sip/QtCore/QtCoremod.sip 2016-12-25 18:56:11.000000000 +0100
++++ b/sip/QtCore/QtCoremod.sip 2017-01-24 12:03:50.707514377 +0100
+@@ -22,7 +22,7 @@
+
+ %Module(name=PyQt5.QtCore, call_super_init=True, default_VirtualErrorHandler=PyQt5, keyword_arguments="Optional", use_limited_api=True)
+
+-%Timeline {Qt_5_0_0 Qt_5_0_1 Qt_5_0_2 Qt_5_1_0 Qt_5_1_1 Qt_5_2_0 Qt_5_2_1 Qt_5_3_0 Qt_5_3_1 Qt_5_3_2 Qt_5_4_0 Qt_5_4_1 Qt_5_4_2 Qt_5_5_0 Qt_5_5_1 Qt_5_6_0 Qt_5_6_1 Qt_5_6_2 Qt_5_6_3 Qt_5_6_4 Qt_5_6_5 Qt_5_6_6 Qt_5_6_7 Qt_5_6_8 Qt_5_6_9 Qt_5_7_0 Qt_5_7_1 Qt_5_8_0 Qt_5_8_1 Qt_5_9_0 Qt_5_9_1 Qt_5_9_2 Qt_5_9_3 Qt_5_10_0}
++%Timeline {Qt_5_0_0 Qt_5_0_1 Qt_5_0_2 Qt_5_1_0 Qt_5_1_1 Qt_5_2_0 Qt_5_2_1 Qt_5_3_0 Qt_5_3_1 Qt_5_3_2 Qt_5_4_0 Qt_5_4_1 Qt_5_4_2 Qt_5_5_0 Qt_5_5_1 Qt_5_6_0 Qt_5_6_1 Qt_5_6_2 Qt_5_6_3 Qt_5_6_4 Qt_5_6_5 Qt_5_6_6 Qt_5_6_7 Qt_5_6_8 Qt_5_6_9 Qt_5_7_0 Qt_5_7_1 Qt_5_8_0 Qt_5_8_1 Qt_5_9_0 Qt_5_9_1 Qt_5_9_2 Qt_5_9_3 Qt_5_10_0 Qt_5_10_1}
+
+ %Platforms {WS_X11 WS_WIN WS_MACX}
+
diff --git a/abs/core/python_modules/python-apipkg/PKGBUILD b/abs/core/python_modules/python-apipkg/PKGBUILD
new file mode 100644
index 0000000..7e085a7
--- /dev/null
+++ b/abs/core/python_modules/python-apipkg/PKGBUILD
@@ -0,0 +1,51 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgbase=python-apipkg
+pkgname=('python-apipkg' 'python2-apipkg')
+pkgver=1.4
+pkgrel=3
+pkgdesc="Namespace control and lazy-import mechanism"
+arch=('any')
+license=('MIT')
+url="https://bitbucket.org/hpk42/apipkg"
+makedepends=('python-setuptools' 'python2-setuptools')
+checkdepends=('python-pytest' 'python2-pytest')
+source=("https://files.pythonhosted.org/packages/source/a/apipkg/apipkg-$pkgver.tar.gz")
+sha512sums=('118f806706944513f50d3cdef596b32f8ce585cfaf94d2531a6d260f90a0e2147177161aaa6f5d6823150e6182d0f73be3dc01259b8a2f8d710733a22ea54789')
+
+prepare() {
+ cp -a apipkg-${pkgver}{,-py2}
+}
+
+build() {
+ cd "$srcdir/apipkg-${pkgver}"
+ python setup.py build
+
+ cd "$srcdir/apipkg-${pkgver}-py2"
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir/apipkg-${pkgver}"
+ py.test
+
+ cd "$srcdir/apipkg-${pkgver}-py2"
+ py.test2
+}
+
+package_python-apipkg() {
+ depends=('python')
+
+ cd apipkg-${pkgver}
+ python setup.py install --root="${pkgdir}" --optimize=1
+ install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
+
+package_python2-apipkg() {
+ depends=('python2')
+
+ cd apipkg-${pkgver}-py2
+ python2 setup.py install --root="${pkgdir}" --optimize=1
+ install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
diff --git a/abs/core/python_modules/python-appdirs/PKGBUILD b/abs/core/python_modules/python-appdirs/PKGBUILD
index 95552c7..2b6a71c 100644
--- a/abs/core/python_modules/python-appdirs/PKGBUILD
+++ b/abs/core/python_modules/python-appdirs/PKGBUILD
@@ -3,14 +3,14 @@
# Contributor: Tobias Roettger <toroettg@gmail.com>
pkgbase=python-appdirs
-pkgname=(python2-appdirs)
+pkgname=(python-appdirs python2-appdirs)
pkgver=1.4.3
-pkgrel=1
+pkgrel=2
pkgdesc='A small Python module for determining appropriate platform-specific dirs, e.g. a "user data dir".'
arch=('any')
url="https://github.com/ActiveState/appdirs"
license=('MIT')
-makedepends=('python2-setuptools')
+makedepends=('python-setuptools' 'python2-setuptools')
source=("https://pypi.io/packages/source/a/appdirs/appdirs-$pkgver.tar.gz")
md5sums=('44c679904082a2133f5566c8a0d3ab42')
@@ -19,16 +19,16 @@ prepare() {
}
build() {
-# cd "$srcdir"/appdirs-$pkgver
-# python setup.py build
+ cd "$srcdir"/appdirs-$pkgver
+ python setup.py build
cd "$srcdir"/appdirs-$pkgver-py2
python2 setup.py build
}
check() {
-# cd "$srcdir"/appdirs-$pkgver
-# python setup.py test
+ cd "$srcdir"/appdirs-$pkgver
+ python setup.py test
cd "$srcdir"/appdirs-$pkgver-py2
python2 setup.py test
diff --git a/abs/core/python_modules/python-appdirs/__changelog b/abs/core/python_modules/python-appdirs/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-appdirs/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-asn1crypto/PKGBUILD b/abs/core/python_modules/python-asn1crypto/PKGBUILD
new file mode 100644
index 0000000..2caede9
--- /dev/null
+++ b/abs/core/python_modules/python-asn1crypto/PKGBUILD
@@ -0,0 +1,52 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Ionut Biru <ibiru@archlinux.org>
+# Contributor: Massimiliano Torromeo < massimiliano DOT torromeo AT gmail DOT com >
+
+pkgbase=python-asn1crypto
+pkgname=('python-asn1crypto' 'python2-asn1crypto')
+pkgver=0.24.0
+pkgrel=1
+arch=('any')
+license=('MIT')
+pkgdesc="Python ASN.1 library with a focus on performance and a pythonic API"
+url="https://github.com/wbond/asn1crypto"
+makedepends=('python-setuptools' 'python2-setuptools')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/wbond/asn1crypto/archive/$pkgver.tar.gz")
+sha512sums=('426cc380903b4dd7aadd7b831e3a11ee3442c961a33b856d4aa8d9060e829f2e0ad905a60c4d6504569718fe2cee01d9be31628c89ef030bc34281e381c898e8')
+
+prepare() {
+ cp -a asn1crypto-$pkgver{,-py2}
+}
+
+build() {
+ cd "$srcdir"/asn1crypto-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/asn1crypto-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir"/asn1crypto-$pkgver
+ python run.py tests
+
+ cd "$srcdir"/asn1crypto-$pkgver-py2
+ python2 run.py tests
+}
+
+package_python-asn1crypto() {
+ depends=('python')
+
+ cd asn1crypto-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/python-asn1crypto/LICENSE
+}
+
+package_python2-asn1crypto() {
+ depends=('python2')
+
+ cd asn1crypto-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/python2-asn1crypto/LICENSE
+}
diff --git a/abs/core/python_modules/python-attrs/PKGBUILD b/abs/core/python_modules/python-attrs/PKGBUILD
new file mode 100644
index 0000000..ba6f128
--- /dev/null
+++ b/abs/core/python_modules/python-attrs/PKGBUILD
@@ -0,0 +1,52 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgbase=python-attrs
+pkgname=('python-attrs' 'python2-attrs')
+pkgver=17.4.0
+pkgrel=1
+pkgdesc="Attributes without boilerplate."
+arch=('any')
+license=('MIT')
+url="https://attrs.readthedocs.org/"
+makedepends=('python-setuptools' 'python2-setuptools')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner' 'python-zope-interface'
+ 'python2-zope-interface' 'python-hypothesis' 'python2-hypothesis')
+source=("https://pypi.io/packages/source/a/attrs/attrs-$pkgver.tar.gz")
+sha512sums=('b631cd5af1be7c78175230363a3cf9d37cb0237d87b24f994812b5734985d114708d5bf7ee5d92b8b13c6b8daa313efde4a9f60f0630df0b62bbcf4928a016ff')
+
+prepare() {
+ cp -a attrs-$pkgver{,-py2}
+}
+
+build() {
+ cd "$srcdir"/attrs-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/attrs-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir"/attrs-$pkgver
+ python setup.py pytest
+
+ cd "$srcdir"/attrs-$pkgver-py2
+ python2 setup.py pytest
+}
+
+package_python-attrs() {
+ depends=('python')
+
+ cd attrs-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1 --skip-build
+ install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
+
+package_python2-attrs() {
+ depends=('python2')
+
+ cd attrs-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1 --skip-build
+ install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
diff --git a/abs/core/python_modules/python-automat/PKGBUILD b/abs/core/python_modules/python-automat/PKGBUILD
new file mode 100644
index 0000000..cde0c88
--- /dev/null
+++ b/abs/core/python_modules/python-automat/PKGBUILD
@@ -0,0 +1,57 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgbase=python-automat
+pkgname=('python-automat' 'python2-automat')
+pkgver=0.6.0
+pkgrel=1
+arch=('any')
+license=('MIT')
+pkgdesc="Self-service finite-state machines for the programmer on the go."
+url="https://github.com/glyph/automat"
+makedepends=('python-setuptools-scm' 'python2-setuptools-scm' 'm2r' 'python2-m2r' 'python-attrs'
+ 'python2-attrs')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/glyph/automat/archive/v$pkgver.tar.gz")
+sha512sums=('18488b7815ee6f1c19db17fef7b63b7c8b46639a7a2cd5060dd611c880d9c7828bf2ebf978c2eef560140b66333a94060d9f77c9e8f89342425229065a0a6f7f')
+
+prepare() {
+ cp -a automat-$pkgver{,-py2}
+
+ # Set version for setuptools_scm
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+}
+
+build() {
+ cd "$srcdir"/automat-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/automat-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir"/automat-$pkgver
+ python setup.py pytest
+
+ cd "$srcdir"/automat-$pkgver-py2
+ python2 setup.py pytest
+}
+
+package_python-automat() {
+ depends=('python-attrs' 'python-setuptools')
+
+ cd automat-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/python-automat/LICENSE
+}
+
+package_python2-automat() {
+ depends=('python2-attrs' 'python2-setuptools')
+
+ cd automat-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/python2-automat/LICENSE
+
+ mv "$pkgdir"/usr/bin/automat-visualize{,2}
+}
diff --git a/abs/core/python_modules/python-babel/PKGBUILD b/abs/core/python_modules/python-babel/PKGBUILD
new file mode 100644
index 0000000..fcbdc4b
--- /dev/null
+++ b/abs/core/python_modules/python-babel/PKGBUILD
@@ -0,0 +1,54 @@
+# $Id$
+# Maintainer: Morten Linderud <foxboron@archlinux.no>
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor : Giedrius Slavinskas <giedrius25@gmail.com>
+
+pkgbase=python-babel
+pkgname=(python-babel python2-babel)
+pkgver=2.5.3
+pkgrel=4
+pkgdesc="A collection of tools for internationalizing Python applications"
+url="http://babel.pocoo.org/"
+license=("BSD")
+arch=('any')
+makedepends=('python' 'python2'
+ 'python-setuptools' 'python2-setuptools'
+ 'python-pytz' 'python2-pytz')
+noextract=("core-28.zip")
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/python-babel/babel/archive/v$pkgver.tar.gz"
+ "core-29.zip::http://unicode.org/Public/cldr/29/core.zip")
+sha256sums=('4c231f28875552abe18c6c10829cec0884d7eeb27423b562357250dc32090cb9'
+ 'b3308f8d3b4a80045ce4262b2784ac8d99775e80aaacafbf1277833f6b28ffda')
+
+prepare() {
+ cp -a babel-$pkgver{,-py2}
+ cp "$srcdir"/core-29.zip babel-$pkgver-py2/cldr/
+ cp "$srcdir"/core-29.zip babel-$pkgver/cldr/
+}
+
+build(){
+ cd "$srcdir/babel-$pkgver"
+ python setup.py import_cldr
+ python setup.py build
+
+ cd "$srcdir/babel-$pkgver-py2"
+ python2 setup.py import_cldr
+ python2 setup.py build
+}
+
+package_python-babel() {
+ depends=('python' 'python-pytz')
+
+ cd "$srcdir"/babel-${pkgver}
+ python setup.py install --root="$pkgdir" --optimize=1 --skip-build
+ install -D -m0644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+package_python2-babel() {
+ depends=('python2' 'python2-pytz')
+
+ cd "$srcdir"/babel-${pkgver}-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1 --skip-build
+ mv "$pkgdir"/usr/bin/pybabel "$pkgdir"/usr/bin/pybabel2
+ install -D -m0644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
diff --git a/abs/core/python_modules/python-beaker/PKGBUILD b/abs/core/python_modules/python-beaker/PKGBUILD
index fbc3bae..8947e3f 100644
--- a/abs/core/python_modules/python-beaker/PKGBUILD
+++ b/abs/core/python_modules/python-beaker/PKGBUILD
@@ -1,42 +1,60 @@
# $Id$
-# Maintainer : Ionut Biru <ibiru@archlinux.org>
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Ionut Biru <ibiru@archlinux.org>
# Contributor: Massimiliano Torromeo < massimiliano DOT torromeo AT gmail DOT com >
-pkgname=('python2-beaker')
-pkgver=1.6.4
+pkgbase=python-beaker
+pkgname=('python-beaker' 'python2-beaker')
+pkgver=1.8.1
pkgrel=2
arch=('any')
license=('custom')
pkgdesc="Caching and sessions WSGI middleware for use with web applications and stand-alone Python scripts and applications"
url="http://beaker.groovie.org/"
-makedepends=('python2-setuptools')
-source=("http://cheeseshop.python.org/packages/source/B/Beaker/Beaker-${pkgver}.tar.gz")
-md5sums=('c2e102870ed4c53104dec48ceadf8e9d')
+makedepends=('python-setuptools' 'python2-setuptools' 'git')
+checkdepends=('python-nose' 'python2-nose' 'python-mock' 'python2-mock' 'python-sqlalchemy' 'python2-sqlalchemy'
+ 'python-crypto' 'python2-crypto' 'python-coverage' 'python2-coverage' 'python-webtest' 'python2-webtest'
+ 'python-beautifulsoup4' 'python2-beautifulsoup4')
+source=("git+https://github.com/bbangert/beaker.git#tag=$pkgver")
+md5sums=('SKIP')
+
+prepare() {
+ cp -a beaker{,-py2}
+
+ sed -i "s#/usr/bin/python#/usr/bin/python3#" beaker/beaker/crypto/pbkdf2.py
+ sed -i "s#/usr/bin/python#/usr/bin/python2#" beaker-py2/beaker/crypto/pbkdf2.py
+}
build() {
- cp -r Beaker-${pkgver} python2-Beaker-${pkgver}
-
- cd "${srcdir}/Beaker-${pkgver}"
- sed -i "s#/usr/bin/python#/usr/bin/python3#" beaker/crypto/pbkdf2.py
-# python3 setup.py build
+ cd "$srcdir"/beaker
+ python3 setup.py build
- cd "${srcdir}/python2-Beaker-${pkgver}"
- sed -i "s#/usr/bin/python#/usr/bin/python2#" beaker/crypto/pbkdf2.py
+ cd "$srcdir"/beaker-py2
python2 setup.py build
}
-#package_python-beaker() {
-# depends=('python')
+check() {
+ cd "$srcdir"/beaker
+ mkdir tests_py3
+ 2to3 -w -n -o tests_py3 tests/*.py
+ PYTHONPATH="$PWD/build/lib:$PYTHONPATH" nosetests3 --py3where=tests_py3
+
+ cd "$srcdir"/beaker-py2
+ PYTHONPATH="$PWD/build/lib:$PYTHONPATH" nosetests2
+}
+
+package_python-beaker() {
+ depends=('python')
-# cd "${srcdir}/Beaker-${pkgver}"
-# python3 setup.py install --root="${pkgdir}" --optimize=1
-# install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/python-beaker/LICENSE"
-#}
+ cd beaker
+ python3 setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/python-beaker/LICENSE
+}
package_python2-beaker() {
depends=('python2')
- cd "${srcdir}/python2-Beaker-${pkgver}"
- python2 setup.py install --root="${pkgdir}" --optimize=1
- install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/python2-beaker/LICENSE"
+ cd beaker-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/python2-beaker/LICENSE
}
diff --git a/abs/core/python_modules/python-beaker/__changelog b/abs/core/python_modules/python-beaker/__changelog
deleted file mode 100644
index 9715c21..0000000
--- a/abs/core/python_modules/python-beaker/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD - comment out all python 3 stuff and only build for py 2
diff --git a/abs/core/python_modules/python-beautifulsoup4/PKGBUILD b/abs/core/python_modules/python-beautifulsoup4/PKGBUILD
index 9af6084..5ed3781 100644
--- a/abs/core/python_modules/python-beautifulsoup4/PKGBUILD
+++ b/abs/core/python_modules/python-beautifulsoup4/PKGBUILD
@@ -4,15 +4,15 @@
# Contributor: Giovanni Scafora <giovanni@archlinux.org>
pkgbase=python-beautifulsoup4
-pkgname=('python2-beautifulsoup4')
+pkgname=('python-beautifulsoup4' 'python2-beautifulsoup4')
pkgver=4.6.0
-pkgrel=1
+pkgrel=2
pkgdesc="A Python HTML/XML parser designed for quick turnaround projects like screen-scraping"
arch=('any')
url="http://www.crummy.com/software/BeautifulSoup/index.html"
license=('PSF')
-makedepends=('python2-setuptools')
-checkdepends=('python2-pytest')
+makedepends=('python-setuptools' 'python2-setuptools')
+checkdepends=('python-pytest' 'python2-pytest')
source=("http://www.crummy.com/software/BeautifulSoup/bs4/download/${pkgver%.*}/${pkgbase#*-}-$pkgver.tar.gz")
sha512sums=('1a7eee4218e58cc3852e71fe4f0892f673bb46a851941264766a38eff8ef05d612d88b4641fcb478ce8f66ac50dc987ca039923c4bbb11867c74813289f7e578')
@@ -21,16 +21,16 @@ prepare() {
}
build() {
-# cd "$srcdir"/beautifulsoup4-$pkgver
-# python setup.py build
+ cd "$srcdir"/beautifulsoup4-$pkgver
+ python setup.py build
cd "$srcdir"/beautifulsoup4-$pkgver-py2
python2 setup.py build
}
check() {
-# cd "$srcdir"/beautifulsoup4-$pkgver/build
-# py.test
+ cd "$srcdir"/beautifulsoup4-$pkgver/build
+ py.test
cd "$srcdir"/beautifulsoup4-$pkgver-py2/build
py.test2
diff --git a/abs/core/python_modules/python-beautifulsoup4/__changelog b/abs/core/python_modules/python-beautifulsoup4/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-beautifulsoup4/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-cairo/PKGBUILD b/abs/core/python_modules/python-cairo/PKGBUILD
new file mode 100644
index 0000000..9f91cbb
--- /dev/null
+++ b/abs/core/python_modules/python-cairo/PKGBUILD
@@ -0,0 +1,43 @@
+# $Id$
+# Maintainer: Angel Velasquez <angvp@archlinux.org>
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+
+pkgbase=python-cairo
+pkgname=(python-cairo python2-cairo)
+pkgver=1.16.2
+pkgrel=1
+pkgdesc="Python bindings for the cairo graphics library"
+arch=('x86_64')
+url="https://pycairo.readthedocs.io/en/latest/"
+license=('LGPL2.1' 'MPL')
+makedepends=(python python2 cairo git)
+_commit=c74dc1e3589bd8a197582836c7db2ab400a988bb # tags/v1.16.2
+source=("git+https://github.com/pygobject/pycairo/#commit=$_commit")
+sha256sums=('SKIP')
+
+pkgver() {
+ cd pycairo
+ git describe --tags | sed 's/^v//;s/-/+/g'
+}
+
+
+build() {
+ cd pycairo
+ python2 setup.py build
+ python setup.py build
+}
+
+package_python2-cairo() {
+ depends=('cairo' 'python2')
+ pkgdesc="Python2 bindings for the cairo graphics library"
+
+ cd pycairo
+ python2 setup.py install --skip-build --root="${pkgdir}" --optimize='1'
+}
+
+package_python-cairo() {
+ depends=('cairo' 'python')
+
+ cd pycairo
+ python setup.py install --skip-build --root="${pkgdir}" --optimize='1'
+}
diff --git a/abs/core/python_modules/python-cffi/PKGBUILD b/abs/core/python_modules/python-cffi/PKGBUILD
index 5a4ef04..fdf8f2f 100644
--- a/abs/core/python_modules/python-cffi/PKGBUILD
+++ b/abs/core/python_modules/python-cffi/PKGBUILD
@@ -3,51 +3,51 @@
# Contributor: lilydjwg <lilydjwg@gmail.com>
pkgbase=python-cffi
-pkgname=(python2-cffi)
-pkgver=1.5.2
-_revision=4640c7bfb3166763943b428bc7ae9d3585e45c34
+pkgname=(python-cffi python2-cffi)
+pkgver=1.11.5
pkgrel=1
pkgdesc="Foreign Function Interface for Python calling C code"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://cffi.readthedocs.org/"
license=('MIT')
-makedepends=('python2-setuptools' 'python2-pycparser' 'mercurial')
-checkdepends=('python2-pytest-runner')
-source=("hg+https://felixonmars@bitbucket.org/cffi/cffi#revision=$_revision")
-sha512sums=('SKIP')
+makedepends=('python-setuptools' 'python2-setuptools' 'python-pycparser' 'python2-pycparser')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner')
+source=("$pkgbase-$pkgver.tar.gz::https://bitbucket.org/cffi/cffi/get/v$pkgver.tar.gz")
+sha512sums=('f2f485aa8c541f82a0caef41ef48f7c0b3432208588e4748463fd7ceffb762c645751d66e910b7d56b22cc51a2e99305a626de4abc2f2fae13c6a58009d41651')
prepare() {
- cp -a cffi{,-py2}
+ mv cffi-cffi-* cffi-$pkgver
+ cp -a cffi-$pkgver{,-py2}
}
build() {
-# cd "$srcdir/cffi"
-# python3 setup.py build
+ cd "$srcdir"/cffi-$pkgver
+ python setup.py build
- cd "$srcdir/cffi-py2"
+ cd "$srcdir"/cffi-$pkgver-py2
python2 setup.py build
}
check() {
- cd "$srcdir/cffi"
- python3 setup.py ptr
+ cd "$srcdir"/cffi-$pkgver
+ python setup.py pytest
- cd "$srcdir/cffi-py2"
- python2 setup.py ptr
+ cd "$srcdir"/cffi-$pkgver-py2
+ python2 setup.py pytest
}
package_python-cffi() {
depends=('python-pycparser')
- cd "$srcdir/cffi"
- python3 setup.py install --root="$pkgdir/" --optimize=1
- install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+ cd cffi-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}
package_python2-cffi() {
depends=('python2-pycparser')
- cd "$srcdir/cffi-py2"
- python2 setup.py install --root="$pkgdir/" --optimize=1
- install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+ cd cffi-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}
diff --git a/abs/core/python_modules/python-cffi/__changelog b/abs/core/python_modules/python-cffi/__changelog
deleted file mode 100644
index 488d3cf..0000000
--- a/abs/core/python_modules/python-cffi/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: rm py 3 stuff
diff --git a/abs/core/python_modules/python-chardet/PKGBUILD b/abs/core/python_modules/python-chardet/PKGBUILD
index 13bc9fa..6b6332d 100644
--- a/abs/core/python_modules/python-chardet/PKGBUILD
+++ b/abs/core/python_modules/python-chardet/PKGBUILD
@@ -4,13 +4,13 @@
# Contributor: William Rea <sillywilly@gmail.com>
pkgbase=python-chardet
-pkgname=('python2-chardet')
+pkgname=('python-chardet' 'python2-chardet')
pkgver=3.0.4
-pkgrel=1
+pkgrel=2
arch=('any')
url="https://github.com/chardet/chardet"
license=('LGPL')
-makedepends=('python2-setuptools')
+makedepends=('python-setuptools' 'python2-setuptools')
source=("https://pypi.io/packages/source/c/chardet/chardet-${pkgver}.tar.gz")
sha512sums=('61a03b23447a2bfe52ceed4dd1b9afdb5784da1933a623776883ee9f297e341f633e27f0ce0230bd5fdc5fdb5382105ab42736a74a417ddeb9f83af57455dba5')
diff --git a/abs/core/python_modules/python-chardet/__changelog b/abs/core/python_modules/python-chardet/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-chardet/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-cherrypy/PKGBUILD b/abs/core/python_modules/python-cherrypy/PKGBUILD
index 5fd491b..19f1a4e 100644
--- a/abs/core/python_modules/python-cherrypy/PKGBUILD
+++ b/abs/core/python_modules/python-cherrypy/PKGBUILD
@@ -4,14 +4,14 @@
# Contributor: Douglas Soares de Andrade <dsa@aur.archlinux.org>
# Contributor: Armando M. Baratti <amblistas@ajato.com.br>
# Contributor: Florian Richter <Florian_Richter@gmx.de>
-pkgname=('python2-cherrypy')
+pkgname=('python-cherrypy' 'python2-cherrypy')
pkgver=8.9.1
-pkgrel=1
+pkgrel=2
pkgdesc="A pythonic, object-oriented web development framework"
arch=('any')
url="http://www.cherrypy.org"
license=('BSD')
-makedepends=('python2' 'python2-setuptools')
+makedepends=('python' 'python-setuptools' 'python2' 'python2-setuptools')
checkdepends=('python2-mock')
source=("https://pypi.python.org/packages/56/aa/91005730bdc5c0da8291a2f411aacbc5c3729166c382e2193e33f28044a3/CherryPy-8.9.1.tar.gz")
md5sums=('7abe5198e48f14cfee57a07d23875a4b')
@@ -19,8 +19,8 @@ md5sums=('7abe5198e48f14cfee57a07d23875a4b')
build() {
cp -r CherryPy-${pkgver} CherryPy-${pkgver}-py2
-# cd CherryPy-${pkgver}
-# python ./setup.py build
+ cd CherryPy-${pkgver}
+ python ./setup.py build
cd "${srcdir}/CherryPy-${pkgver}-py2"
python2 ./setup.py build
diff --git a/abs/core/python_modules/python-cherrypy/__changelog b/abs/core/python_modules/python-cherrypy/__changelog
deleted file mode 100644
index 60db758..0000000
--- a/abs/core/python_modules/python-cherrypy/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: remove py3 stuff
diff --git a/abs/core/python_modules/python-click/PKGBUILD b/abs/core/python_modules/python-click/PKGBUILD
index 06d9ce5..c5334bd 100644
--- a/abs/core/python_modules/python-click/PKGBUILD
+++ b/abs/core/python_modules/python-click/PKGBUILD
@@ -2,15 +2,15 @@
# Contributor: Carl George < arch at cgtx dot us >
pkgbase=python-click
-pkgname=("python2-click")
+pkgname=("python-click" "python2-click")
_realname=click
pkgver=6.7
-pkgrel=1
+pkgrel=2
pkgdesc="A simple wrapper around optparse for powerful command line utilities"
arch=("any")
url="http://click.pocoo.org/"
license=("BSD")
-makedepends=("python2-setuptools")
+makedepends=("python-setuptools" "python2-setuptools")
source=("https://github.com/pallets/click/archive/${pkgver}.tar.gz")
sha256sums=('40b20383dcbfbe73ab0917374f3dbe866fcf0d88c2a348618bf4419ea136f0dd')
@@ -19,8 +19,8 @@ prepare() {
}
build() {
-# cd "${srcdir}/${_realname}-${pkgver}"
-# python setup.py build
+ cd "${srcdir}/${_realname}-${pkgver}"
+ python setup.py build
cd "${srcdir}/${_realname}-${pkgver}-python2"
python2 setup.py build
diff --git a/abs/core/python_modules/python-constantly/PKGBUILD b/abs/core/python_modules/python-constantly/PKGBUILD
new file mode 100644
index 0000000..dd9445f
--- /dev/null
+++ b/abs/core/python_modules/python-constantly/PKGBUILD
@@ -0,0 +1,53 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgbase=python-constantly
+pkgname=('python-constantly' 'python2-constantly')
+pkgver=15.1.0
+pkgrel=2
+pkgdesc='Symbolic constants in Python'
+arch=('any')
+license=('MIT')
+url='https://github.com/twisted/constantly'
+makedepends=('python-setuptools' 'python2-setuptools' 'git')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner' 'python-twisted' 'python2-twisted')
+source=("git+https://github.com/twisted/constantly.git#tag=$pkgver")
+md5sums=('SKIP')
+
+prepare() {
+ cp -a constantly{,-py2}
+}
+
+build() {
+ cd "$srcdir"/constantly
+ python setup.py build
+
+ cd "$srcdir"/constantly-py2
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir"/constantly
+ python setup.py ptr
+
+ cd "$srcdir"/constantly-py2
+ python2 setup.py ptr
+}
+
+package_python-constantly() {
+ depends=('python')
+
+ cd constantly
+ python setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+package_python2-constantly() {
+ depends=('python2')
+
+ cd constantly-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/python_modules/python-coverage/PKGBUILD b/abs/core/python_modules/python-coverage/PKGBUILD
new file mode 100644
index 0000000..b1d2326
--- /dev/null
+++ b/abs/core/python_modules/python-coverage/PKGBUILD
@@ -0,0 +1,72 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Clément Démoulins <clement@archivel.fr>
+# Contributor: Fazlul Shahriar <fshahriar@gmail.com>
+
+pkgbase=python-coverage
+pkgname=(python-coverage python2-coverage)
+pkgver=4.5.1
+pkgrel=1
+pkgdesc="A tool for measuring code coverage of Python programs"
+arch=('x86_64')
+url="http://nedbatchelder.com/code/coverage/"
+license=('Apache')
+makedepends=('python-setuptools' 'python2-setuptools')
+checkdepends=('python-mock' 'python2-mock' 'python-pytest-xdist' 'python2-pytest-xdist'
+ 'python-pycontracts' 'python2-pycontracts' 'python-greenlet' 'python2-greenlet'
+ 'python-virtualenv' 'python2-virtualenv' 'python-pyenchant' 'python2-pyenchant'
+ 'python-pylint' 'python2-pylint' 'python-unittest-mixins' 'python2-unittest-mixins'
+ 'python-flaky' 'python2-flaky')
+source=("$pkgbase-$pkgver.tar.gz::https://bitbucket.org/ned/coveragepy/get/coverage-$pkgver.tar.gz")
+sha512sums=('72e03b35140596d7b6cd2976d35ecfd931b8c5518ae09dddeb2e204e73cee5e4f87341458dabbf5fdc6774a89342383ccd01d98ec7a8291f9cf8d9c1e5e9d0e9')
+
+prepare() {
+ mv ned-coveragepy-* coveragepy-$pkgver
+ cp -a coveragepy-$pkgver{,-py2}
+}
+
+check() {
+ # Hack entry points by installing it
+
+ export LC_CTYPE=en_US.UTF-8
+
+ (
+ cd "$srcdir/coveragepy-$pkgver"
+ virtualenv "$srcdir/pyvenv" --system-site-packages
+ . "$srcdir/pyvenv/bin/activate"
+ export PYTHONPATH="$PYTHONPATH:/usr/lib/python3.6/site-packages"
+ python setup.py --quiet develop
+ python igor.py zip_mods install_egg remove_extension
+ python igor.py test_with_tracer py
+ python setup.py --quiet build_ext --inplace
+ python igor.py test_with_tracer c
+ ) || warning "Python 3 tests failed"
+
+ (
+ cd "$srcdir/coveragepy-$pkgver-py2"
+ virtualenv2 "$srcdir/pyvenv-py2" --system-site-packages
+ . "$srcdir/pyvenv-py2/bin/activate"
+ export PYTHONPATH="$PYTHONPATH:/usr/lib/python2.7/site-packages"
+ python setup.py --quiet develop
+ python igor.py zip_mods install_egg remove_extension
+ python igor.py test_with_tracer py
+ python setup.py --quiet build_ext --inplace
+ python igor.py test_with_tracer c
+ ) || warning "Python 2 tests failed"
+}
+
+package_python-coverage() {
+ depends=('python')
+
+ cd coveragepy-$pkgver
+ python3 setup.py install --root="$pkgdir" --optimize=1
+}
+
+package_python2-coverage() {
+ depends=('python2')
+
+ cd coveragepy-$pkgver
+ python2 setup.py install --root="$pkgdir" --optimize=1
+
+ mv "$pkgdir/usr/bin/coverage" "$pkgdir/usr/bin/coverage2"
+}
diff --git a/abs/core/python_modules/python-cryptography/PKGBUILD b/abs/core/python_modules/python-cryptography/PKGBUILD
index d336c94..e578a2e 100644
--- a/abs/core/python_modules/python-cryptography/PKGBUILD
+++ b/abs/core/python_modules/python-cryptography/PKGBUILD
@@ -2,51 +2,54 @@
# Maintainer: Felix Yan <felixonmars@archlinux.org>
pkgbase=python-cryptography
-pkgname=('python2-cryptography')
-pkgver=1.3.1
+pkgname=('python-cryptography' 'python2-cryptography')
+pkgver=2.1.4
pkgrel=1
pkgdesc="A package designed to expose cryptographic recipes and primitives to Python developers"
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('Apache')
url="http://pypi.python.org/pypi/cryptography"
-makedepends=('python2-setuptools' 'python2-six' 'python2-cffi' 'python2-enum34'
- 'python2-pyasn1' 'python2-idna' 'python2-ipaddress')
-checkdepends=('python2-pytest-runner' "python2-cryptography-vectors=$pkgver"
- 'python2-iso8601' 'python2-pretend' 'python2-pyasn1-modules'
- 'python2-hypothesis')
-source=("http://pypi.python.org/packages/source/c/cryptography/cryptography-$pkgver.tar.gz")
-md5sums=('bc8148d2ff2d80fef8ef2d2e856b3a7f')
+makedepends=('python-setuptools' 'python2-setuptools' 'python-six' 'python2-six' 'python-cffi'
+ 'python2-cffi' 'python2-enum34' 'python-pyasn1' 'python2-pyasn1' 'python-idna'
+ 'python2-idna' 'python2-ipaddress' 'python-asn1crypto' 'python2-asn1crypto')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner' "python-cryptography-vectors=$pkgver"
+ "python2-cryptography-vectors=$pkgver" 'python-iso8601' 'python2-iso8601'
+ 'python-pretend' 'python2-pretend' 'python-hypothesis' 'python2-hypothesis'
+ 'python-pytz' 'python2-pytz')
+source=("https://pypi.io/packages/source/c/cryptography/cryptography-$pkgver.tar.gz")
+sha512sums=('f749cb4384badc174a842514e5a4fee2ed01ab9c716799d8d9d5301f6d2d97b6c41deb9e425f48928b639fa34bef8c05529ed7e5b777ef5ca75c244f8fda8fd4')
prepare() {
cp -a cryptography-${pkgver}{,-python2}
}
build() {
- cd "$srcdir"/cryptography-$pkgver
-# python setup.py build
-
- cd "$srcdir"/cryptography-$pkgver-python2
- python2 setup.py build
+ cd "$srcdir"/cryptography-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/cryptography-$pkgver-python2
+ python2 setup.py build
}
check() {
- cd "$srcdir"/cryptography-$pkgver
- PYTHONPATH="$PWD/build/lib.linux-$CARCH-3.5:$PYTHONPATH" python setup.py ptr
+ cd "$srcdir"/cryptography-$pkgver
+ python setup.py pytest
- cd "$srcdir"/cryptography-$pkgver-python2
- PYTHONPATH="$PWD/build/lib.linux-$CARCH-2.7:$PYTHONPATH" python2 setup.py ptr
+ cd "$srcdir"/cryptography-$pkgver-python2
+ python2 setup.py pytest
}
-
+
package_python-cryptography() {
- depends=('python-pyasn1' 'python-six' 'python-cffi' 'python-idna')
-
- cd cryptography-$pkgver
- python setup.py install --root="$pkgdir" --optimize=1 --skip-build
+ depends=('python-six' 'python-cffi' 'python-idna' 'python-setuptools' 'python-asn1crypto')
+
+ cd cryptography-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1 --skip-build
}
-
+
package_python2-cryptography() {
- depends=('python2-pyasn1' 'python2-six' 'python2-cffi' 'python2-enum34' 'python2-idna' 'python2-ipaddress')
-
- cd cryptography-$pkgver-python2
- python2 setup.py install --root="$pkgdir" --optimize=1 --skip-build
+ depends=('python2-six' 'python2-cffi' 'python2-enum34' 'python2-idna' 'python2-ipaddress'
+ 'python2-setuptools' 'python2-asn1crypto')
+
+ cd cryptography-$pkgver-python2
+ python2 setup.py install --root="$pkgdir" --optimize=1 --skip-build
}
diff --git a/abs/core/python_modules/python-cryptography/__changelog b/abs/core/python_modules/python-cryptography/__changelog
deleted file mode 100644
index 488d3cf..0000000
--- a/abs/core/python_modules/python-cryptography/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: rm py 3 stuff
diff --git a/abs/core/python_modules/python-dateutil/PKGBUILD b/abs/core/python_modules/python-dateutil/PKGBUILD
index 5ce709f..7088ced 100644
--- a/abs/core/python_modules/python-dateutil/PKGBUILD
+++ b/abs/core/python_modules/python-dateutil/PKGBUILD
@@ -2,16 +2,16 @@
#Contributor: lilydjwg <lilydjwg@gmail.com>
pkgbase=python-dateutil
-pkgname=('python2-dateutil')
-pkgver=2.6.0
-pkgrel=2
+pkgname=('python-dateutil' 'python2-dateutil')
+pkgver=2.6.1
+pkgrel=1
pkgdesc="Provides powerful extensions to the standard datetime module"
arch=('any')
license=('custom')
url="https://github.com/dateutil/dateutil"
-makedepends=('python2-setuptools' 'python2-six')
+makedepends=('python-setuptools' 'python2-setuptools' 'python-six' 'python2-six')
source=("$pkgbase-$pkgver.tar.gz"::"https://github.com/dateutil/dateutil/archive/$pkgver.tar.gz")
-md5sums=('7ac719938274be8da1ab870c3b35941c')
+md5sums=('8d1081ed9d4eaef11d47a7bbd62ca903')
build() {
cd $srcdir
diff --git a/abs/core/python_modules/python-dateutil/__changelog b/abs/core/python_modules/python-dateutil/__changelog
deleted file mode 100644
index 3dd9c2c..0000000
--- a/abs/core/python_modules/python-dateutil/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: remove py3 python-dateutils
diff --git a/abs/core/python_modules/python-decorator/PKGBUILD b/abs/core/python_modules/python-decorator/PKGBUILD
index 5b9d85f..eb51ec6 100644
--- a/abs/core/python_modules/python-decorator/PKGBUILD
+++ b/abs/core/python_modules/python-decorator/PKGBUILD
@@ -1,30 +1,59 @@
+# $Id$
# Maintainer: Thomas Dziedzic < gostrc at gmail >
# Contributor: Pierre Chapuis <catwell at archlinux dot us>
-pkgname=python-decorator
-pkgver=3.3.2
+pkgname=('python-decorator' 'python2-decorator')
+pkgver=4.2.1
pkgrel=1
pkgdesc='Python Decorator module'
arch=('any')
url='http://pypi.python.org/pypi/decorator'
license=('BSD')
-depends=('python2')
-source=("http://pypi.python.org/packages/source/d/decorator/decorator-${pkgver}.tar.gz"
+makedepends=('python2' 'python' 'python-setuptools' 'python2-setuptools')
+source=('https://pypi.python.org/packages/70/f1/cb9373195639db13063f55eb06116310ad691e1fd125e6af057734dc44ea/decorator-4.2.1.tar.gz'
'LICENSE.txt')
+md5sums=('e886337e9f70e70d45d67266b8e66044'
+ '0ca76d2c707f09dbb04acc425ea1a08b')
build() {
- cd decorator-${pkgver}
+ # Make python and python2 builds possible
+ cp -r decorator-$pkgver decorator2-$pkgver
+
+ cd "$srcdir/decorator-$pkgver"
+
+ python3 setup.py build
+
+ cd "$srcdir/decorator2-$pkgver"
python2 setup.py build
}
-package() {
- cd decorator-${pkgver}
+package_python2-decorator() {
+depends=('python2')
+replaces=('python-decorator<=3.3.2-1')
+ cd "${srcdir}/decorator2-${pkgver}"
- python2 setup.py install --root=${pkgdir} --optimize=1
+ python2 setup.py install --root="${pkgdir}" --optimize=1
- install -D -m644 ${srcdir}/LICENSE.txt \
- ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
+ install -D -m644 "${srcdir}/LICENSE.txt" \
+ "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
+package_python-decorator() {
+depends=('python')
+ cd "${srcdir}/decorator-${pkgver}"
+
+ python3 setup.py install --root="${pkgdir}" --optimize=1
+
+ install -D -m644 "${srcdir}/LICENSE.txt" \
+ "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
+
+check() {
+ cd "$srcdir/decorator-$pkgver"
+
+ python3 setup.py test
+
+ cd "$srcdir/decorator2-$pkgver"
+
+ python2 setup.py test
}
-md5sums=('446f5165af67eb0fcd8fd28abd259e86'
- '0ca76d2c707f09dbb04acc425ea1a08b')
diff --git a/abs/core/python_modules/python-decorator/__changelog b/abs/core/python_modules/python-decorator/__changelog
deleted file mode 100644
index e69de29..0000000
--- a/abs/core/python_modules/python-decorator/__changelog
+++ /dev/null
diff --git a/abs/core/python_modules/python-docutils/01-python33-relative-import.patch b/abs/core/python_modules/python-docutils/01-python33-relative-import.patch
deleted file mode 100644
index f2c4247..0000000
--- a/abs/core/python_modules/python-docutils/01-python33-relative-import.patch
+++ /dev/null
@@ -1,196 +0,0 @@
-From 12e5aa7b94e0a0ec37e754527e06707005d28d1c Mon Sep 17 00:00:00 2001
-From: milde <milde@929543f6-e4f2-0310-98a6-ba3bd3dd1d04>
-Date: Wed, 11 Jul 2012 12:25:14 +0000
-Subject: [PATCH] Fix [3541369] Relative __import__ also with Python 3.3.
-
-git-svn-id: https://docutils.svn.sourceforge.net/svnroot/docutils/trunk@7486 929543f6-e4f2-0310-98a6-ba3bd3dd1d04
----
- docutils/HISTORY.txt | 1 +
- docutils/docutils/_compat.py | 11 +++++++++++
- docutils/docutils/languages/__init__.py | 8 ++++++--
- docutils/docutils/parsers/__init__.py | 5 ++++-
- .../docutils/parsers/rst/directives/__init__.py | 6 +++++-
- .../docutils/parsers/rst/languages/__init__.py | 6 +++++-
- docutils/docutils/readers/__init__.py | 5 ++++-
- docutils/docutils/writers/__init__.py | 7 +++++--
- 8 files changed, 41 insertions(+), 8 deletions(-)
-
-diff --git a/docutils/docutils/_compat.py b/docutils/docutils/_compat.py
-index 1450534..19654a6 100644
---- a/docutils/docutils/_compat.py
-+++ b/docutils/docutils/_compat.py
-@@ -35,3 +35,14 @@ else:
- # using this hack since 2to3 "fixes" the relative import
- # when using ``from io import BytesIO``
- BytesIO = __import__('io').BytesIO
-+
-+if sys.version_info < (2,5):
-+ import __builtin__
-+
-+ def __import__(name, globals={}, locals={}, fromlist=[], level=-1):
-+ """Compatibility definition for Python 2.4.
-+
-+ Silently ignore the `level` argument missing in Python < 2.5.
-+ """
-+ # we need the level arg because the default changed in Python 3.3
-+ return __builtin__.__import__(name, globals, locals, fromlist)
-diff --git a/docutils/docutils/languages/__init__.py b/docutils/docutils/languages/__init__.py
-index 675bb0e..57d3ec2 100644
---- a/docutils/docutils/languages/__init__.py
-+++ b/docutils/docutils/languages/__init__.py
-@@ -11,7 +11,11 @@ This package contains modules for language-dependent features of Docutils.
-
- __docformat__ = 'reStructuredText'
-
-+import sys
-+
- from docutils.utils import normalize_language_tag
-+if sys.version_info < (2,5):
-+ from docutils._compat import __import__
-
- _languages = {}
-
-@@ -26,7 +30,7 @@ def get_language(language_code, reporter=None):
- if tag in _languages:
- return _languages[tag]
- try:
-- module = __import__(tag, globals(), locals())
-+ module = __import__(tag, globals(), locals(), level=1)
- except ImportError:
- continue
- _languages[tag] = module
-@@ -35,6 +39,6 @@ def get_language(language_code, reporter=None):
- reporter.warning(
- 'language "%s" not supported: ' % language_code +
- 'Docutils-generated text will be in English.')
-- module = __import__('en', globals(), locals())
-+ module = __import__('en', globals(), locals(), level=1)
- _languages[tag] = module # warn only one time!
- return module
-diff --git a/docutils/docutils/parsers/__init__.py b/docutils/docutils/parsers/__init__.py
-index 2683376..341e358 100644
---- a/docutils/docutils/parsers/__init__.py
-+++ b/docutils/docutils/parsers/__init__.py
-@@ -8,7 +8,10 @@ This package contains Docutils parser modules.
-
- __docformat__ = 'reStructuredText'
-
-+import sys
- from docutils import Component
-+if sys.version_info < (2,5):
-+ from docutils._compat import __import__
-
-
- class Parser(Component):
-@@ -43,5 +46,5 @@ def get_parser_class(parser_name):
- parser_name = parser_name.lower()
- if parser_name in _parser_aliases:
- parser_name = _parser_aliases[parser_name]
-- module = __import__(parser_name, globals(), locals())
-+ module = __import__(parser_name, globals(), locals(), level=1)
- return module.Parser
-diff --git a/docutils/docutils/parsers/rst/directives/__init__.py b/docutils/docutils/parsers/rst/directives/__init__.py
-index b00a676..fdc70d7 100644
---- a/docutils/docutils/parsers/rst/directives/__init__.py
-+++ b/docutils/docutils/parsers/rst/directives/__init__.py
-@@ -10,8 +10,12 @@ __docformat__ = 'reStructuredText'
-
- import re
- import codecs
-+import sys
-+
- from docutils import nodes
- from docutils.parsers.rst.languages import en as _fallback_language_module
-+if sys.version_info < (2,5):
-+ from docutils._compat import __import__
-
-
- _directive_registry = {
-@@ -109,7 +113,7 @@ def directive(directive_name, language_module, document):
- # Error handling done by caller.
- return None, messages
- try:
-- module = __import__(modulename, globals(), locals())
-+ module = __import__(modulename, globals(), locals(), level=1)
- except ImportError, detail:
- messages.append(document.reporter.error(
- 'Error importing directive module "%s" (directive "%s"):\n%s'
-diff --git a/docutils/docutils/parsers/rst/languages/__init__.py b/docutils/docutils/parsers/rst/languages/__init__.py
-index 53017d7..5a151e4 100644
---- a/docutils/docutils/parsers/rst/languages/__init__.py
-+++ b/docutils/docutils/parsers/rst/languages/__init__.py
-@@ -12,7 +12,11 @@ reStructuredText.
-
- __docformat__ = 'reStructuredText'
-
-+import sys
-+
- from docutils.utils import normalize_language_tag
-+if sys.version_info < (2,5):
-+ from docutils._compat import __import__
-
- _languages = {}
-
-@@ -21,7 +25,7 @@ def get_language(language_code):
- if tag in _languages:
- return _languages[tag]
- try:
-- module = __import__(tag, globals(), locals())
-+ module = __import__(tag, globals(), locals(), level=1)
- except ImportError:
- continue
- _languages[tag] = module
-diff --git a/docutils/docutils/readers/__init__.py b/docutils/docutils/readers/__init__.py
-index a28248f..e3e6fb5 100644
---- a/docutils/docutils/readers/__init__.py
-+++ b/docutils/docutils/readers/__init__.py
-@@ -8,9 +8,12 @@ This package contains Docutils Reader modules.
-
- __docformat__ = 'reStructuredText'
-
-+import sys
-
- from docutils import utils, parsers, Component
- from docutils.transforms import universal
-+if sys.version_info < (2,5):
-+ from docutils._compat import __import__
-
-
- class Reader(Component):
-@@ -103,5 +106,5 @@ def get_reader_class(reader_name):
- reader_name = reader_name.lower()
- if reader_name in _reader_aliases:
- reader_name = _reader_aliases[reader_name]
-- module = __import__(reader_name, globals(), locals())
-+ module = __import__(reader_name, globals(), locals(), level=1)
- return module.Reader
-diff --git a/docutils/docutils/writers/__init__.py b/docutils/docutils/writers/__init__.py
-index e30dbf6..8fcee0c 100644
---- a/docutils/docutils/writers/__init__.py
-+++ b/docutils/docutils/writers/__init__.py
-@@ -8,11 +8,14 @@ This package contains Docutils Writer modules.
-
- __docformat__ = 'reStructuredText'
-
--
- import os.path
-+import sys
-+
- import docutils
- from docutils import languages, Component
- from docutils.transforms import universal
-+if sys.version_info < (2,5):
-+ from docutils._compat import __import__
-
-
- class Writer(Component):
-@@ -130,5 +133,5 @@ def get_writer_class(writer_name):
- writer_name = writer_name.lower()
- if writer_name in _writer_aliases:
- writer_name = _writer_aliases[writer_name]
-- module = __import__(writer_name, globals(), locals())
-+ module = __import__(writer_name, globals(), locals(), level=1)
- return module.Writer
---
-1.6.5.GIT
-
diff --git a/abs/core/python_modules/python-docutils/__changelog b/abs/core/python_modules/python-docutils/__changelog
deleted file mode 100644
index 3439597..0000000
--- a/abs/core/python_modules/python-docutils/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: rm python 3 stuff
diff --git a/abs/core/python_modules/python-execnet/PKGBUILD b/abs/core/python_modules/python-execnet/PKGBUILD
new file mode 100644
index 0000000..e0940a2
--- /dev/null
+++ b/abs/core/python_modules/python-execnet/PKGBUILD
@@ -0,0 +1,52 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgbase=python-execnet
+pkgname=('python-execnet' 'python2-execnet')
+pkgver=1.5.0
+pkgrel=1
+pkgdesc="Rapid multi-Python deployment"
+arch=('any')
+license=('MIT')
+url="http://codespeak.net/execnet"
+makedepends=('python-setuptools' 'python2-setuptools' 'python-apipkg' 'python2-apipkg')
+checkdepends=('python-pytest-timeout' 'python2-pytest-timeout' 'procps-ng' 'openssh' 'pypy')
+source=("https://pypi.io/packages/source/e/execnet/execnet-$pkgver.tar.gz")
+sha512sums=('ca2b571fafdf8f68b3cc7a04ee326e3255828d4cde28ead65d0cef325569c3a6dee09359e525152248038de65326ffc6b75c8362f53aa5c0b3f736eb596cb2d9')
+
+prepare() {
+ cp -a execnet-${pkgver}{,-py2}
+}
+
+build() {
+ cd "$srcdir/execnet-${pkgver}"
+ python setup.py build
+
+ cd "$srcdir/execnet-${pkgver}-py2"
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir/execnet-${pkgver}"
+ PYTHONPATH="$PWD/build/lib:$PYTHONPATH" py.test testing
+
+ cd "$srcdir/execnet-${pkgver}-py2"
+ PYTHONPATH="$PWD/build/lib:$PYTHONPATH" py.test2 testing
+}
+
+package_python-execnet() {
+ depends=('python-apipkg')
+
+ cd execnet-${pkgver}
+ python setup.py install --root="${pkgdir}" --optimize=1
+ install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
+
+package_python2-execnet() {
+ depends=('python2-apipkg')
+
+ cd execnet-${pkgver}-py2
+ python2 setup.py install --root="${pkgdir}" --optimize=1
+ install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
+
diff --git a/abs/core/python_modules/python-feedparser/PKGBUILD b/abs/core/python_modules/python-feedparser/PKGBUILD
index 6e21842..ab2cb73 100644
--- a/abs/core/python_modules/python-feedparser/PKGBUILD
+++ b/abs/core/python_modules/python-feedparser/PKGBUILD
@@ -2,15 +2,14 @@
# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgbase=python-feedparser
-#pkgname=('python2-feedparser' 'python-feedparser' 'python-sgmllib')
-pkgname=('python2-feedparser')
+pkgname=('python2-feedparser' 'python-feedparser' 'python-sgmllib')
pkgver=5.2.1
-pkgrel=2
+pkgrel=3
pkgdesc="Parse RSS and Atom feeds in Python"
arch=('any')
url="https://github.com/kurtmckee/feedparser/"
license=('custom')
-makedepends=('python2' 'libxml2' 'python2-setuptools')
+makedepends=('python' 'python2' 'libxml2' 'python2-setuptools' 'python-setuptools')
source=(feedparser-${pkgver}.tar.gz::https://github.com/kurtmckee/feedparser/archive/${pkgver}.tar.gz)
sha1sums=('13c9a17f821e46ba9a34d8777e0ae47a6eb86de4')
@@ -20,13 +19,13 @@ prepare() {
cp -r feedparser-${pkgver} feedparser-${pkgver}-sgmllib
(cd feedparser-${pkgver}-python2; sed -i 's#env python$#env python2#' feedparser/feedparsertest.py)
-# (cd feedparser-${pkgver}-python; 2to3 -w feedparser/feedparser.py feedparser/feedparsertest.py)
+ (cd feedparser-${pkgver}-python; 2to3 -w feedparser/feedparser.py feedparser/feedparsertest.py)
}
-#build() {
-# cd feedparser-${pkgver}-sgmllib
-# python /usr/lib/python3.6/compileall.py feedparser/sgmllib3.py
-#}
+build() {
+ cd feedparser-${pkgver}-sgmllib
+ python /usr/lib/python3.6/compileall.py feedparser/sgmllib3.py
+}
package_python2-feedparser() {
depends=('python2' 'libxml2' )
diff --git a/abs/core/python_modules/python-feedparser/__changelog b/abs/core/python_modules/python-feedparser/__changelog
deleted file mode 100644
index c6e1e55..0000000
--- a/abs/core/python_modules/python-feedparser/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: don't build py 3 stuff
diff --git a/abs/core/python_modules/python-flask-login/PKGBUILD b/abs/core/python_modules/python-flask-login/PKGBUILD
index 06d268f..23e4d9c 100644
--- a/abs/core/python_modules/python-flask-login/PKGBUILD
+++ b/abs/core/python_modules/python-flask-login/PKGBUILD
@@ -2,27 +2,28 @@
# Maintainer: Felix Yan <felixonmars@archlinux.org>
pkgbase=python-flask-login
-pkgname=('python2-flask-login')
-pkgver=0.4.0
-pkgrel=2
+pkgname=('python2-flask-login' 'python-flask-login')
+pkgver=0.4.1
+pkgrel=1
pkgdesc="User session management for Flask."
arch=('any')
url="https://pythonhosted.org/Flask-Login/"
license=('MIT')
-makedepends=('python2-setuptools' 'python2-flask' 'git')
-checkdepends=('python2-nose' 'python2-mock' 'python2-blinker')
-source=("git+https://github.com/maxcountryman/flask-login.git#tag=$pkgver")
-md5sums=('SKIP')
+makedepends=('python-setuptools' 'python2-setuptools' 'python-flask' 'python2-flask')
+checkdepends=('python-nose' 'python2-nose' 'python-mock' 'python2-mock' 'python-blinker'
+ 'python2-blinker' 'python-semantic-version' 'python2-semantic-version')
+source=("$pkgname-$pkgver.tar.gz::https://github.com/maxcountryman/flask-login/archive/$pkgver.tar.gz")
+sha512sums=('c87a2948ac37439ddd76f3f11584bdd5910cb00e96a7400343cf4dadc5a0f9bc84d40bdc068d2e8c05bd5a510046e18473e9ad71502c5039a5f05b371ce9bb4c')
prepare() {
- cp -a flask-login{,-py2}
+ cp -a flask-login-$pkgver{,-py2}
}
check() {
-# cd "$srcdir"/flask-login
-# nosetests3
+ cd "$srcdir"/flask-login-$pkgver
+ nosetests3
- cd "$srcdir"/flask-login-py2
+ cd "$srcdir"/flask-login-$pkgver-py2
# https://github.com/maxcountryman/flask-login/issues/232
nosetests2 || warning "Tests failed"
}
@@ -30,7 +31,7 @@ check() {
package_python-flask-login() {
depends=('python-flask')
- cd flask-login
+ cd flask-login-$pkgver
python setup.py install --root="$pkgdir" --optimize=1
mkdir -p "$pkgdir"/usr/share/licenses/$pkgname
@@ -40,7 +41,7 @@ package_python-flask-login() {
package_python2-flask-login() {
depends=('python2-flask')
- cd flask-login-py2
+ cd flask-login-$pkgver-py2
python2 setup.py install --root="$pkgdir" --optimize=1
mkdir -p "$pkgdir"/usr/share/licenses/$pkgname
diff --git a/abs/core/python_modules/python-flask-login/__changelog b/abs/core/python_modules/python-flask-login/__changelog
deleted file mode 100644
index 60db758..0000000
--- a/abs/core/python_modules/python-flask-login/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: remove py3 stuff
diff --git a/abs/core/python_modules/python-flask/PKGBUILD b/abs/core/python_modules/python-flask/PKGBUILD
index dc2cb23..8dc26b8 100644
--- a/abs/core/python_modules/python-flask/PKGBUILD
+++ b/abs/core/python_modules/python-flask/PKGBUILD
@@ -4,45 +4,42 @@
# Contributor: Thomas Dziedzic < gostrc at gmail >
# Contributor: Tarmo Heiskanen <turskii@gmail.com>
-pkgname=('python2-flask')
+pkgbase=python-flask
+pkgname=('python-flask' 'python2-flask')
pkgver=0.12.2
-pkgrel=2
+pkgrel=4
pkgdesc='Micro webdevelopment framework for Python'
url='http://flask.pocoo.org/'
arch=('any')
license=('custom:BSD')
-makedepends=('python2-setuptools')
-source=("https://github.com/pallets/flask/archive/${pkgver}.tar.gz")
+makedepends=('python-setuptools' 'python2-setuptools')
+source=("https://github.com/pallets/flask/archive/0.12.2.tar.gz")
sha512sums=('5007129eed63902a39c6652f0868348629f3f6e09d38a764a6ed0e77f6e87f0a28068cfeee6ecb2dee92ccee771d57f42ba816f856e49f08b8c1dfe6bde9873c')
prepare() {
-# cp -r "flask-$pkgver" "python-flask-$pkgver"
+ cp -r "flask-$pkgver" "python-flask-$pkgver"
cp -r "flask-$pkgver" "python2-flask-$pkgver"
}
-build_python-flask() {
- cd "$pkgname-$pkgver"
-
+buildk() {
+ cd "$srcdir/python-flask-$pkgver"
python setup.py build
-}
-
-build_python2-flask() {
- cd "$pkgname-$pkgver"
+ cd "$srcdir/python2-flask-$pkgver"
python setup.py build
}
-check_python-flask() {
- cd "$pkgname-$pkgver"
+check() {
+ cd "$srcdir/python-flask-$pkgver"
python setup.py test
- cd "$pkgname-$pkgver"
+ cd "$srcdir/python2-flask-$pkgver"
python2 setup.py test
}
package_python-flask() {
depends=('python-werkzeug' 'python-jinja' 'python-itsdangerous' 'python-click')
- cd "$pkgname-$pkgver"
+ cd "$srcdir/python-flask-$pkgver"
python setup.py install --prefix=/usr --root="$pkgdir" --optimize=1
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
@@ -50,7 +47,7 @@ package_python-flask() {
package_python2-flask() {
depends=('python2-werkzeug' 'python2-jinja' 'python2-itsdangerous' 'python2-click')
- cd "$pkgname-$pkgver"
+ cd "$srcdir/python2-flask-$pkgver"
python2 setup.py install --root="$pkgdir" --optimize=1
mv "$pkgdir"/usr/bin/flask "$pkgdir"/usr/bin/flask2
diff --git a/abs/core/python_modules/python-flask/__changelog b/abs/core/python_modules/python-flask/__changelog
deleted file mode 100644
index 60db758..0000000
--- a/abs/core/python_modules/python-flask/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: remove py3 stuff
diff --git a/abs/core/python_modules/python-future/PKGBUILD b/abs/core/python_modules/python-future/PKGBUILD
index 1b96edc..3cc7fa5 100644
--- a/abs/core/python_modules/python-future/PKGBUILD
+++ b/abs/core/python_modules/python-future/PKGBUILD
@@ -5,15 +5,15 @@
# Contributor: Melissa Padilla <mpadilla2 at hotmail dot com>
pkgbase=python-future
-pkgname=(python2-future)
+pkgname=(python-future python2-future)
pkgver=0.16.0
-pkgrel=2
+pkgrel=3
pkgdesc="Clean single-source support for Python 3 and 2"
url="http://python-future.org/"
arch=('any')
license=('MIT')
-makedepends=('python2-setuptools')
-checkdepends=('python2-requests')
+makedepends=('python-setuptools' 'python2-setuptools')
+checkdepends=('python-requests' 'python2-requests')
options=('!emptydirs')
source=("https://pypi.io/packages/source/f/future/future-$pkgver.tar.gz")
sha256sums=('e39ced1ab767b5936646cedba8bcce582398233d6a627067d4c6a454c90cfedb')
@@ -23,16 +23,16 @@ prepare() {
}
build() {
-# cd "$srcdir"/future-$pkgver
-# python setup.py build
+ cd "$srcdir"/future-$pkgver
+ python setup.py build
cd "$srcdir"/future-$pkgver-py2
python2 setup.py build
}
check() {
-# cd "$srcdir"/future-$pkgver
-# PYTHONPATH="$PWD/build/lib:$PYTHONPATH" python setup.py test || warning "Tests failed"
+ cd "$srcdir"/future-$pkgver
+ PYTHONPATH="$PWD/build/lib:$PYTHONPATH" python setup.py test || warning "Tests failed"
cd "$srcdir"/future-$pkgver-py2
PYTHONPATH="$PWD/build/lib:$PYTHONPATH" python2 setup.py test
diff --git a/abs/core/python_modules/python-future/__changelog b/abs/core/python_modules/python-future/__changelog
deleted file mode 100644
index 60db758..0000000
--- a/abs/core/python_modules/python-future/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: remove py3 stuff
diff --git a/abs/core/python_modules/python-gitdb/PKGBUILD b/abs/core/python_modules/python-gitdb/PKGBUILD
index 258d97e..7403f17 100644
--- a/abs/core/python_modules/python-gitdb/PKGBUILD
+++ b/abs/core/python_modules/python-gitdb/PKGBUILD
@@ -1,19 +1,49 @@
-# Contributor: Jon Bergli Heier <snakebite@jvnv.net>
-pkgname=python-gitdb
-pkgver=0.5.2
+# Maintainer: NicoHood <archlinux {cat} nicohood {dog} de>
+# PGP ID: 97312D5EB9D7AE7D0BD4307351DAE9B7C1AE9161
+# Contributor: Carl George < arch at cgtx dot us >
+
+_pkgname=python-gitdb
+_pypiname=gitdb2
+pkgbase=python-gitdb
+pkgdesc="A pure-Python git object database"
+pkgname=('python-gitdb' 'python2-gitdb')
+pkgver=2.0.3
pkgrel=1
-pkgdesc="IO of git-style object databases"
-arch=('i686' 'x86_64')
-url="http://pypi.python.org/pypi/gitdb"
+url="https://github.com/gitpython-developers/gitdb"
license=('BSD')
-depends=('python2' 'python-async')
-source=("http://pypi.python.org/packages/source/g/gitdb/gitdb-${pkgver}.tar.gz")
+arch=("any")
+makedepends=('python' 'python-setuptools' 'python2' 'python2-setuptools')
+source=("${_pkgname}-${pkgver}.tar.gz::https://pypi.org/packages/source/g/${_pypiname}/${_pypiname}-${pkgver}.tar.gz")
+# "${_pkgname}-${pkgver}.tar.gz.asc::https://pypi.org/packages/source/g/${_pypiname}/${_pypiname}-${pkgver}.tar.gz.asc")
+#sha512sums=('4be643b933b47f5511702aa9df5c3210847f059dff9a4794779040660cd60c5af7de5072eb18bc17971edba9a5551e9ba51dbe360194b7d454ee4f23348c8063'
+# 'SKIP')
+#validpgpkeys=('4477ADC5977D7C60D2A7E3789FEE1C6A3B07188F') # Sebastian Thiel (In Rust I trust!) <byronimo@gmail.com>
+prepare() {
+ cp -a "${srcdir}/${_pypiname}-${pkgver}"{,-py2}
+}
build() {
- cd "$srcdir/gitdb-$pkgver"
- python2 setup.py install --root="$pkgdir/" || return 1
+ cd "${srcdir}/${_pypiname}-${pkgver}"
+ python setup.py build
+
+ cd "${srcdir}/${_pypiname}-${pkgver}-py2"
+ python2 setup.py build
+}
+
+package_python-gitdb() {
+ depends=('python' 'python-smmap>=2.0.0')
+
+ cd "${srcdir}/${_pypiname}-${pkgver}"
+ python setup.py install --skip-build --root="${pkgdir}" --optimize=1
+ install -Dm644 "LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
-# vim:set ts=2 sw=2 et:
-md5sums=('98655385607aed62101318051f7c9364')
+package_python2-gitdb() {
+ depends=('python2' 'python2-smmap>=2.0.0')
+
+ cd "${srcdir}/${_pypiname}-${pkgver}-py2"
+ python2 setup.py install --skip-build --root="${pkgdir}" --optimize=1
+ install -Dm644 "LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
+md5sums=('d5217eb94ebd36fcec62b929d1f72b00')
diff --git a/abs/core/python_modules/python-gitpython/PKGBUILD b/abs/core/python_modules/python-gitpython/PKGBUILD
new file mode 100644
index 0000000..3c6807e
--- /dev/null
+++ b/abs/core/python_modules/python-gitpython/PKGBUILD
@@ -0,0 +1,48 @@
+# Maintainer: NicoHood <archlinux {cat} nicohood {dog} de>
+# PGP ID: 97312D5EB9D7AE7D0BD4307351DAE9B7C1AE9161
+# Contributor: brent s. <bts[at]square-r00t[dot]net>
+
+_pkgname=python-gitpython
+_pypiname=GitPython
+pkgbase=python-gitpython
+pkgdesc="A python library used to interact with Git repositories"
+pkgname=('python-gitpython' 'python2-gitpython')
+pkgver=2.1.8
+pkgrel=1
+url="https://github.com/gitpython-developers/gitpython"
+license=('BSD')
+arch=("any")
+makedepends=('python' 'python-setuptools' 'python2' 'python2-setuptools')
+source=("${_pkgname}-${pkgver}.tar.gz::https://pypi.org/packages/source/G/${_pypiname}/${_pypiname}-${pkgver}.tar.gz"
+ "${_pkgname}-${pkgver}.tar.gz.asc::https://pypi.org/packages/source/G/${_pypiname}/${_pypiname}-${pkgver}.tar.gz.asc")
+sha512sums=('9ddef0c9c1b99b3c554257c913efa1e0928fd8bdedae3c9fbbc261d337ed73a62472f3d47c9f55812f5e4c7abb9ea04fb03a6818984060b7847948d75dc2b98a'
+ 'SKIP')
+validpgpkeys=('2CF6E0B51AAF73F09B1C21174D1DA68C88710E60') # Sebastian Thiel (In Rust I trust!) <byronimo@gmail.com>
+
+prepare() {
+ cp -a "${srcdir}/${_pypiname}-${pkgver}"{,-py2}
+}
+
+build() {
+ cd "${srcdir}/${_pypiname}-${pkgver}"
+ python setup.py build
+
+ cd "${srcdir}/${_pypiname}-${pkgver}-py2"
+ python2 setup.py build
+}
+
+package_python-gitpython() {
+ depends=('python' 'python-gitdb>=2.0.0')
+
+ cd "${srcdir}/${_pypiname}-${pkgver}"
+ python setup.py install --skip-build --root="${pkgdir}" --optimize=1
+ install -Dm644 "LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
+
+package_python2-gitpython() {
+ depends=('python2' 'python2-gitdb>=2.0.0')
+
+ cd "${srcdir}/${_pypiname}-${pkgver}-py2"
+ python2 setup.py install --skip-build --root="${pkgdir}" --optimize=1
+ install -Dm644 "LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
diff --git a/abs/core/python_modules/python-html5lib/PKGBUILD b/abs/core/python_modules/python-html5lib/PKGBUILD
index 0ef62da..4991390 100644
--- a/abs/core/python_modules/python-html5lib/PKGBUILD
+++ b/abs/core/python_modules/python-html5lib/PKGBUILD
@@ -1,42 +1,63 @@
+# Maintainer: Eli Schwartz <eschwartz@archlinux.org>
+# Maintainer: Jelle van der Waa <jelle@archlinux.org>
+# Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
# Contributor: Erol V. Aktay <e.aktay@gmail.com>
-# Maintainer: Daniel J Griffiths <ghost1227@archlinux.us>
pkgbase=python-html5lib
-pkgname=('python2-html5lib')
-pkgver=0.999999999
+pkgname=('python2-html5lib' 'python-html5lib')
+pkgver=1.0.1
pkgrel=2
arch=('any')
url="https://github.com/html5lib"
license=('MIT')
-makedepends=('python2' 'unzip' 'python2-webencodings')
-checkdepends=('python2-six' 'python2-pytest' 'python2-lxml' 'python2-mock')
-source=($pkgbase-$pkgver.tar.gz::https://github.com/html5lib/html5lib-python/archive/${pkgver}.tar.gz
- LICENSE)
-md5sums=('a81446ef3ce3ef18f5e8e242b7072b83'
- '838c366f69b72c5df05c96dff79b35f2')
+makedepends=('python-setuptools' 'python2-setuptools' 'python-webencodings' 'python2-webencodings')
+checkdepends=('python-six' 'python2-six' 'python-pytest-expect' 'python2-pytest-expect'
+ 'python-lxml' 'python2-lxml' 'python-mock' 'python2-mock')
+_test_commit=c305da74fae50fb018870de7a042da36c1a93b65
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/html5lib/html5lib-python/archive/${pkgver}.tar.gz"
+ "https://github.com/html5lib/html5lib-tests/archive/${_test_commit}.tar.gz")
+sha256sums=('fabbebd6a55d07842087f13849076eeed350aa8bb6c9ec840f6a6aba9388db06'
+ 'cb261423c644b3469ac66926e290060b481371d0952995d270492fc761d0209a')
-package_python-html5lib() {
-pkgdesc="A Python HTML parser/tokenizer based on the WHATWG HTML5 spec"
-depends=('python' 'python-six' 'python-webencodings')
- cd ${srcdir}/html5lib-python-${pkgver}
+prepare() {
+ cd "${srcdir}"/html5lib-python-${pkgver}
- python3 setup.py install --root=${pkgdir}
- install -Dm755 $srcdir/LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
+ rmdir html5lib/tests/testdata
+ ln -sfT ../../../html5lib-tests-${_test_commit} html5lib/tests/testdata
}
-package_python2-html5lib() {
-depends=('python2' 'python2-six' 'python2-webencodings')
-pkgdesc="A Python2 HTML parser/tokenizer based on the WHATWG HTML5 spec"
- cd ${srcdir}/html5lib-python-${pkgver}
+build() {
+ cd "${srcdir}"/html5lib-python-${pkgver}
- python2 setup.py install --root=${pkgdir}
- install -Dm755 $srcdir/LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
+ python setup.py build
+ python2 setup.py build
}
check() {
- cd ${srcdir}/html5lib-python-${pkgver}/html5lib/tests
+ cd "${srcdir}"/html5lib-python-${pkgver}
+
+ py.test
+ py.test2
+}
+
+package_python-html5lib() {
+ pkgdesc="A Python HTML parser/tokenizer based on the WHATWG HTML5 spec"
+ depends=('python' 'python-six' 'python-webencodings')
+ optdepends=('python-lxml: lxml treebuilder'
+ 'python-genshi: genshi treewalker')
+ cd "${srcdir}"/html5lib-python-${pkgver}
+
+ python setup.py install --root="${pkgdir}" --optimize=1 --skip-build
+ install -Dm755 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
+}
+
+package_python2-html5lib() {
+ pkgdesc="A Python2 HTML parser/tokenizer based on the WHATWG HTML5 spec"
+ depends=('python2' 'python2-six' 'python2-webencodings')
+ optdepends=('python2-lxml: lxml treebuilder'
+ 'python2-genshi: genshi treewalker')
+ cd "${srcdir}"/html5lib-python-${pkgver}
-# nosetests2
-
-# nosetests
+ python2 setup.py install --root="${pkgdir}" --optimize=1 --skip-build
+ install -Dm755 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
}
diff --git a/abs/core/python_modules/python-html5lib/__changelog b/abs/core/python_modules/python-html5lib/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-html5lib/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-hyperlink/PKGBUILD b/abs/core/python_modules/python-hyperlink/PKGBUILD
new file mode 100644
index 0000000..cfe2472
--- /dev/null
+++ b/abs/core/python_modules/python-hyperlink/PKGBUILD
@@ -0,0 +1,53 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgbase=python-hyperlink
+pkgname=('python-hyperlink' 'python2-hyperlink')
+pkgver=18.0.0
+pkgrel=1
+pkgdesc='A featureful, correct URL for Python'
+arch=('any')
+license=('BSD')
+url='https://github.com/python-hyper/hyperlink'
+makedepends=('python-idna' 'python2-idna' 'python-setuptools' 'python2-setuptools')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/python-hyper/hyperlink/archive/v$pkgver.tar.gz")
+sha512sums=('b50bdd7a635804da449a6f2902e833f39d408e72a2b8e46a8b2bb773e2c310e0d4dced3f683951f8777e6104fe8d4faa4390f1a677bfb257c0e88dff860f1523')
+
+prepare() {
+ cp -a hyperlink-$pkgver{,-py2}
+}
+
+build() {
+ cd "$srcdir"/hyperlink-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/hyperlink-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir"/hyperlink-$pkgver
+ python setup.py pytest
+
+ cd "$srcdir"/hyperlink-$pkgver-py2
+ python2 setup.py pytest
+}
+
+package_python-hyperlink() {
+ depends=('python-idna')
+
+ cd hyperlink-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+package_python2-hyperlink() {
+ depends=('python2-idna')
+
+ cd hyperlink-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/python_modules/python-hypothesis/PKGBUILD b/abs/core/python_modules/python-hypothesis/PKGBUILD
new file mode 100644
index 0000000..cca4fcc
--- /dev/null
+++ b/abs/core/python_modules/python-hypothesis/PKGBUILD
@@ -0,0 +1,78 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgbase=python-hypothesis
+pkgname=('python-hypothesis' 'python2-hypothesis')
+pkgver=3.50.2
+pkgrel=1
+pkgdesc="Advanced Quickcheck style testing library for Python"
+arch=('any')
+license=('MPL')
+url="https://hypothesis.readthedocs.org"
+makedepends=('python-setuptools' 'python2-setuptools' 'python-attrs' 'python2-attrs'
+ 'python-coverage' 'python2-coverage' 'python2-enum34')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner' 'flake8' 'python2-flake8' 'python-pytz'
+ 'python2-pytz' 'python-numpy' 'python2-numpy' 'python-faker' 'python2-faker'
+ 'python-flaky' 'python2-flaky' 'python-pytest-benchmark' 'python2-pytest-benchmark'
+ 'python-django' 'python2-django' 'python-pytest-xdist' 'python2-pytest-xdist'
+ 'python-mock' 'python2-mock' 'python-pandas' 'python2-pandas')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/HypothesisWorks/hypothesis-python/archive/$pkgver.tar.gz")
+sha512sums=('9f62646a9095f108cc3c82190f0aabcdd4b0aa4044a0daf84f4bc3cc4f3de9cd2d6a01dafdf42b8cd3a6c14d433dc3f3fea24a80ef853637670ca00179d823b8')
+
+prepare() {
+ # Make tests faster
+ sed -i 's/ -n 2$/ -n 16/' hypothesis-python-$pkgver/tox.ini
+
+ cp -a hypothesis-python-$pkgver{,-py2}
+
+ rm -r hypothesis-python-$pkgver/tests/py2
+ rm -r hypothesis-python-$pkgver-py2/tests/py3
+
+ export LC_CTYPE=en_US.UTF-8
+}
+
+build() {
+ cd "$srcdir"/hypothesis-python-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/hypothesis-python-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir"/hypothesis-python-$pkgver
+ mv tests/django ../
+ python setup.py pytest
+ mv ../django tests/
+ PYTHONPATH="$PWD/build/lib:$PYTHONPATH" python -m tests.django.manage test tests.django
+
+ cd "$srcdir"/hypothesis-python-$pkgver-py2
+ mv tests/django ../
+ python2 setup.py pytest
+ mv ../django tests/
+ PYTHONPATH="$PWD/build/lib:$PYTHONPATH" python2 -m tests.django.manage test tests.django
+}
+
+package_python-hypothesis() {
+ depends=('python-attrs' 'python-coverage')
+ optdepends=('python-pytz: for datetime and django module'
+ 'python-faker: for fakefactory and django module'
+ 'python-django: for django module'
+ 'python-numpy: for numpy module'
+ 'python-pytest: for pytest module')
+
+ cd hypothesis-python-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
+}
+
+package_python2-hypothesis() {
+ depends=('python2-attrs' 'python2-coverage' 'python2-enum34')
+ optdepends=('python2-pytz: for datetime and django module'
+ 'python2-faker: for fakefactory and django module'
+ 'python2-django: for django module'
+ 'python2-numpy: for numpy module'
+ 'python2-pytest: for pytest module')
+
+ cd hypothesis-python-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+}
diff --git a/abs/core/python_modules/python-idna/PKGBUILD b/abs/core/python_modules/python-idna/PKGBUILD
index dd2fb8f..00a64bf 100644
--- a/abs/core/python_modules/python-idna/PKGBUILD
+++ b/abs/core/python_modules/python-idna/PKGBUILD
@@ -2,32 +2,32 @@
# Maintainer: Felix Yan <felixonmars@archlinux.org>
pkgbase=python-idna
-pkgname=('python2-idna')
-pkgver=2.5
+pkgname=('python-idna' 'python2-idna')
+pkgver=2.6
pkgrel=1
pkgdesc="Internationalized Domain Names in Applications (IDNA)"
arch=('any')
license=('BSD')
url="https://github.com/kjd/idna"
-makedepends=('python2-setuptools')
+makedepends=('python-setuptools' 'python2-setuptools')
source=("https://pypi.io/packages/source/i/idna/idna-$pkgver.tar.gz")
-md5sums=('fc1d992bef73e8824db411bb5d21f012')
+sha512sums=('cb5dbfab44c4d11521c67f9d29391f184d1267a3da6dc89f4ed12c60a7a909d5c7474c3ea2bddd0af7063f4f620e87a8dd586bb07e8b961b30b1dd7c969704c2')
prepare() {
cp -a idna-$pkgver{,-py2}
}
build() {
-# cd "$srcdir"/idna-$pkgver
-# python setup.py build
+ cd "$srcdir"/idna-$pkgver
+ python setup.py build
cd "$srcdir"/idna-$pkgver-py2
python2 setup.py build
}
check() {
-# cd "$srcdir"/idna-$pkgver
-# python setup.py test
+ cd "$srcdir"/idna-$pkgver
+ python setup.py test
cd "$srcdir"/idna-$pkgver-py2
python2 setup.py test
diff --git a/abs/core/python_modules/python-idna/__changelog b/abs/core/python_modules/python-idna/__changelog
deleted file mode 100644
index 60db758..0000000
--- a/abs/core/python_modules/python-idna/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: remove py3 stuff
diff --git a/abs/core/python_modules/python-imagesize/PKGBUILD b/abs/core/python_modules/python-imagesize/PKGBUILD
new file mode 100644
index 0000000..c8ee2da
--- /dev/null
+++ b/abs/core/python_modules/python-imagesize/PKGBUILD
@@ -0,0 +1,39 @@
+pkgbase=python-imagesize
+pkgname=('python-imagesize' 'python2-imagesize')
+pkgver=1.0.0
+pkgrel=1
+
+pkgdesc='Getting image size from png/jpeg/jpeg2000/gif file'
+url='https://github.com/shibukawa/imagesize_py'
+arch=('any')
+license=('MIT')
+
+makedepends=('python-setuptools' 'python2-setuptools')
+
+source=("https://files.pythonhosted.org/packages/source/i/imagesize/imagesize-$pkgver.tar.gz")
+
+md5sums=('9aa76df782f1df5b917794638b6bb6c2')
+
+build() {
+ cp -r imagesize-$pkgver imagesize-$pkgver-py2
+
+ cd "$srcdir"/imagesize-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/imagesize-$pkgver-py2
+ python2 setup.py build
+}
+
+package_python-imagesize() {
+ depends=('python')
+
+ cd imagesize-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
+}
+
+package_python2-imagesize() {
+ depends=('python2')
+
+ cd imagesize-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+}
diff --git a/abs/core/python_modules/python-incremental/PKGBUILD b/abs/core/python_modules/python-incremental/PKGBUILD
new file mode 100644
index 0000000..22c9f73
--- /dev/null
+++ b/abs/core/python_modules/python-incremental/PKGBUILD
@@ -0,0 +1,54 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgbase=python-incremental
+pkgname=('python-incremental' 'python2-incremental')
+pkgver=17.5.0
+pkgrel=1
+pkgdesc='A small library that versions your Python projects'
+arch=('any')
+license=('MIT')
+url='https://github.com/hawkowl/incremental'
+makedepends=('python-setuptools' 'python2-setuptools' 'python-click' 'python2-click'
+ 'python-twisted' 'python2-twisted')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/hawkowl/incremental/archive/incremental-$pkgver.tar.gz")
+sha512sums=('42490edf99355d6c1da0015273e92549bd72ecb2674dd4ce5d0b4a7d34ae9d425ebd1708a2420f67963b4baef5b2a12b76a23d67abb7d306e6208e08d79175d7')
+
+prepare() {
+ cp -a incremental-incremental-$pkgver{,-py2}
+}
+
+build() {
+ cd "$srcdir"/incremental-incremental-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/incremental-incremental-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir"/incremental-incremental-$pkgver
+ LC_CTYPE=en_US.UTF-8 python setup.py ptr
+
+ cd "$srcdir"/incremental-incremental-$pkgver-py2
+ python2 setup.py ptr
+}
+
+package_python-incremental() {
+ depends=('python-click' 'python-twisted')
+
+ cd incremental-incremental-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+package_python2-incremental() {
+ depends=('python2-click' 'python2-twisted')
+
+ cd incremental-incremental-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/python_modules/python-itsdangerous/PKGBUILD b/abs/core/python_modules/python-itsdangerous/PKGBUILD
index 4b643d8..4e575b0 100644
--- a/abs/core/python_modules/python-itsdangerous/PKGBUILD
+++ b/abs/core/python_modules/python-itsdangerous/PKGBUILD
@@ -2,14 +2,14 @@
# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
# Contributor: Alexander Rødseth <rodseth@gmail.com>
-pkgname=('python2-itsdangerous')
+pkgname=('python-itsdangerous' 'python2-itsdangerous')
pkgver=0.24
-pkgrel=3
+pkgrel=4
pkgdesc='Various helpers to pass trusted data to untrusted environments'
arch=('any')
url="http://pypi.python.org/pypi/itsdangerous"
license=('BSD')
-makedepends=('python2')
+makedepends=('python' 'python2')
source=("$pkgname-$pkgver.tar.gz::https://github.com/mitsuhiko/itsdangerous/archive/${pkgver}.tar.gz")
sha256sums=('b035b2da1d493b00a5ee7a5b750f96929de87b610643939fbe382902774626fc')
diff --git a/abs/core/python_modules/python-itsdangerous/__changelog b/abs/core/python_modules/python-itsdangerous/__changelog
deleted file mode 100644
index 60db758..0000000
--- a/abs/core/python_modules/python-itsdangerous/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: remove py3 stuff
diff --git a/abs/core/python_modules/python-jinja/Fix-PrefixLoader-does-not-pass-globals-to-load.patch b/abs/core/python_modules/python-jinja/Fix-PrefixLoader-does-not-pass-globals-to-load.patch
deleted file mode 100644
index 8100449..0000000
--- a/abs/core/python_modules/python-jinja/Fix-PrefixLoader-does-not-pass-globals-to-load.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 478983594423dcdb85e26ea7a02b8d1d72215db6 Mon Sep 17 00:00:00 2001
-From: Morris Jobke <morris.jobke@gmail.com>
-Date: Mon, 27 May 2013 00:54:52 +0300
-Subject: [PATCH] Fix "PrefixLoader does not pass globals to load"
-
-Fix mitsuhiko/jinja2#225
----
- jinja2/loaders.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/jinja2/loaders.py b/jinja2/loaders.py
-index a9a2625..cc9c683 100644
---- a/jinja2/loaders.py
-+++ b/jinja2/loaders.py
-@@ -349,7 +349,7 @@ def get_source(self, environment, template):
- def load(self, environment, name, globals=None):
- loader, local_name = self.get_loader(name)
- try:
-- return loader.load(environment, local_name)
-+ return loader.load(environment, local_name, globals)
- except TemplateNotFound:
- # re-raise the exception with the correct fileame here.
- # (the one that includes the prefix)
---
-1.8.1.6
-
diff --git a/abs/core/python_modules/python-jinja/PKGBUILD b/abs/core/python_modules/python-jinja/PKGBUILD
index a7e3b6d..1bcd44e 100644
--- a/abs/core/python_modules/python-jinja/PKGBUILD
+++ b/abs/core/python_modules/python-jinja/PKGBUILD
@@ -2,23 +2,23 @@
# Maintainer: Evangelos Foutras <evangelos@foutrelis.com>
# Contributor: Peter Baldwin <bald_pete@hotmail.com>
-pkgname=('python2-jinja')
-pkgver=2.7.2
-pkgrel=2
+pkgname=('python-jinja' 'python2-jinja')
+pkgver=2.10
+pkgrel=1
pkgdesc="A simple pythonic template language written in Python"
arch=('any')
url="http://jinja.pocoo.org/"
license=('BSD')
-makedepends=('python2-setuptools'
+makedepends=('python-setuptools' 'python2-setuptools' 'python-markupsafe'
'python2-markupsafe')
-source=(http://pypi.python.org/packages/source/J/Jinja2/Jinja2-$pkgver.tar.gz)
-sha256sums=('310a35fbccac3af13ebf927297f871ac656b9da1d248b1fe6765affa71b53235')
+source=(https://pypi.org/packages/source/J/Jinja2/Jinja2-$pkgver.tar.gz)
+sha256sums=('f84be1bb0040caca4cea721fcbbbbd61f9be9464ca236387158b0feea01914a4')
build() {
cd "$srcdir"
rm -rf python{2,3}-build
- for builddir in python2-build; do
+ for builddir in python{2,3}-build; do
cp -r Jinja2-$pkgver $builddir
pushd $builddir
${builddir%-build} setup.py build
@@ -26,15 +26,15 @@ build() {
done
}
-#package_python-jinja() {
-# depends=('python-setuptools' 'python-markupsafe')
+package_python-jinja() {
+ depends=('python-setuptools' 'python-markupsafe')
-# cd "$srcdir/python3-build"
+ cd "$srcdir/python3-build"
-# python3 setup.py install --root="$pkgdir" -O1
+ python3 setup.py install --root="$pkgdir" -O1
-# install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
-#}
+ install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
package_python2-jinja() {
depends=('python2-setuptools' 'python2-markupsafe')
diff --git a/abs/core/python_modules/python-jinja/__changelog b/abs/core/python_modules/python-jinja/__changelog
deleted file mode 100644
index 3439597..0000000
--- a/abs/core/python_modules/python-jinja/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: rm python 3 stuff
diff --git a/abs/core/python_modules/python-jsonschema/PKGBUILD b/abs/core/python_modules/python-jsonschema/PKGBUILD
index 45de390..4d13b81 100644
--- a/abs/core/python_modules/python-jsonschema/PKGBUILD
+++ b/abs/core/python_modules/python-jsonschema/PKGBUILD
@@ -1,38 +1,66 @@
# $Id$
-# Maintainer: Daniel Wallace <danielwallace at gtmanfred.com>
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Daniel Wallace <danielwallace at gtmanfred.com>
# Contributor: Bogdan Szczurek <thebodzio@gmail.com>
# Contributor: Ismo Toijala <ismo.toijala@gmail.com>
pkgbase=python-jsonschema
-_pkgname=jsonschema
-pkgname=(python2-jsonschema)
+pkgname=('python-jsonschema' 'python2-jsonschema')
pkgver=2.6.0
-pkgrel=1
+pkgrel=2
pkgdesc="An implementation of JSON Schema validation for Python"
-arch=(any)
+arch=('any')
url="http://pypi.python.org/pypi/jsonschema"
license=('MIT')
-makedepends=(python2-setuptools)
-source=("https://pypi.io/packages/source/j/jsonschema/${pkgname:8}-$pkgver.tar.gz")
+makedepends=('python-setuptools' 'python2-setuptools' 'python2-functools32' 'python-vcversioner'
+ 'python2-vcversioner')
+checkdepends=('python-twisted' 'python2-twisted' 'python-mock' 'python2-mock'
+ 'python-strict-rfc3339' 'python2-strict-rfc3339' 'python-rfc3987' 'python2-rfc3987'
+ 'python-webcolors' 'python2-webcolors')
+source=("$pkgbase-$pkgver.tar.bz2::https://github.com/Julian/jsonschema/archive/v$pkgver.tar.gz")
+sha512sums=('863888fa70d7ae000530dcb405455d370a42c75b1e72970724d56397a1364da9198adb655ddebb6e8570b4bcf6ee17d26b712db86ddad15f65132dc9774e7255')
-prepare(){
- cp -a $_pkgname-$pkgver $_pkgname-$pkgver-2
- find $_pkgname-$pkgver-2 -name \*.py -exec sed -i '1s/python$/&2/' {} +
+prepare() {
+ echo -n "$pkgver-0-UNKNOWN" > jsonschema-$pkgver/version.txt
+ cp -a jsonschema-$pkgver{,-py2}
+ find jsonschema-$pkgver-py2 -name \*.py -exec sed -i '1s/python$/&2/' {} +
+}
+
+build() {
+ cd "$srcdir"/jsonschema-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/jsonschema-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir"/jsonschema-$pkgver
+ PYTHONPATH="$PWD/build/lib" JSON_SCHEMA_TEST_SUITE=json trial3 jsonschema
+ python -m doctest README.rst
+
+ cd "$srcdir"/jsonschema-$pkgver-py2
+ PYTHONPATH="$PWD/build/lib" JSON_SCHEMA_TEST_SUITE=json trial jsonschema
+ # TODO: figure out why
+ rm -r build/lib/jsonschema/__pycache__
+ python2 -m doctest README.rst
}
package_python-jsonschema() {
- cd "$srcdir/$_pkgname-$pkgver"
- python setup.py install --root="$pkgdir/" --optimize=1
- depends=(python)
- install -D -m644 json/LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE
+ depends=('python-setuptools')
+
+ cd jsonschema-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 json/LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}
package_python2-jsonschema() {
- cd "$srcdir/$_pkgname-$pkgver-2"
- python2 setup.py install --root="$pkgdir/" --optimize=1
- depends=(python2-functools32)
- install -D -m644 json/LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE
- mv $pkgdir/usr/bin/jsonschema{,2}
+ depends=('python2-setuptools' 'python2-functools32')
+
+ cd jsonschema-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 json/LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+
+ mv "$pkgdir"/usr/bin/jsonschema{,2}
}
-md5sums=('50c6b69a373a8b55ff1e0ec6e78f13f4')
diff --git a/abs/core/python_modules/python-jsonschema/__changelog b/abs/core/python_modules/python-jsonschema/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-jsonschema/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-lxml/PKGBUILD b/abs/core/python_modules/python-lxml/PKGBUILD
index e12b716..bfb65bf 100644
--- a/abs/core/python_modules/python-lxml/PKGBUILD
+++ b/abs/core/python_modules/python-lxml/PKGBUILD
@@ -1,49 +1,98 @@
-# $Id: PKGBUILD 162858 2012-07-02 13:06:22Z giovanni $
-# Maintainer:
-
-pkgname=('python2-lxml')
-pkgver=2.3.4
-pkgrel=2
-pkgdesc="Python binding for the libxml2 and libxslt libraries"
-arch=('i686' 'x86_64')
+# $Id$
+# Maintainer: Angel Velasquez <angvp@archlinux.org>
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgbase=python-lxml
+pkgname=('python-lxml' 'python2-lxml' 'python-lxml-docs')
+pkgver=4.1.1
+pkgrel=1
+arch=('x86_64')
license=('BSD' 'custom')
url="http://lxml.de/"
-makedepends=('python2' 'libxslt')
-source=(http://pypi.python.org/packages/source/l/lxml/lxml-${pkgver}.tar.gz{,.asc})
-sha1sums=('90a226d8a2ee38de47fc3351445dab6df0e33a20'
- '7962be7794d7f4c87d2fce0104c27990f48f1ce1')
+makedepends=('libxslt' 'python-setuptools' 'python2-setuptools' 'epydoc' 'python2-pygments'
+ 'python2-docutils' 'cython' 'cython2')
+checkdepends=('python-cssselect' 'python2-cssselect' 'python-html5lib' 'python2-html5lib'
+ 'python-beautifulsoup4' 'python2-beautifulsoup4')
+source=("https://github.com/lxml/lxml/archive/lxml-$pkgver.tar.gz")
+sha512sums=('69c64fc9f34bd8250dffcc32b6dcc93490731cd32778d7257a232fc5a126e74433ce6d4351683b71872cbeccd2c4d5a970e8fc2e631bbc273125be2b7f61ef31')
+
+prepare() {
+ mv lxml-lxml-$pkgver lxml-$pkgver
+ cp -a lxml-$pkgver{,-py2}
+
+ # Setting LC_CTYPE to workaround encoding issue
+ export LC_CTYPE=en_US.UTF-8
+}
+
+build() {
+ cd "$srcdir"/lxml-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/lxml-$pkgver-py2
+ python2 setup.py build
+ make PYTHON=python2 html
+}
check() {
- cd "${srcdir}"/lxml-$pkgver
+ # TODO: Find a sane way to skip inplace build
+
+ cd "$srcdir"/lxml-$pkgver
+ make PYTHON=python test
+
+ cd "$srcdir"/lxml-$pkgver-py2
make PYTHON=python2 test
- #make PYTHON=python test
+}
+
+package_python-lxml() {
+ pkgdesc="Python3 binding for the libxml2 and libxslt libraries"
+ depends=('python' 'libxslt')
+ optdepends=('python-beautifulsoup4: support for beautifulsoup parser to parse not well formed HTML'
+ 'python-cssselect: support for cssselect'
+ 'python-html5lib: support for html5lib parser'
+ 'python-lxml-docs: offline docs')
+
+ cd lxml-$pkgver
+ python setup.py install --root="$pkgdir" --skip-build --optimize=1
+
+ install -Dm644 LICENSES.txt \
+ "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+ install -Dm644 doc/licenses/BSD.txt \
+ "$pkgdir"/usr/share/licenses/$pkgname/BSD.txt
+ install -Dm644 doc/licenses/elementtree.txt \
+ "$pkgdir"/usr/share/licenses/$pkgname/elementtree.txt
}
package_python2-lxml() {
+ pkgdesc="Python2 binding for the libxml2 and libxslt libraries"
depends=('python2' 'libxslt')
- optdepends=('python2-beautifulsoup3: support for parsing not well formed HTML')
+ optdepends=('python2-beautifulsoup4: support for beautifulsoup parser to parse not well formed HTML'
+ 'python2-cssselect: support for cssselect'
+ 'python2-html5lib: support for html5lib parser'
+ 'python-lxml-docs: offline docs')
- cd "${srcdir}"/lxml-$pkgver
- python2 setup.py install --root="${pkgdir}" --optimize=1
+ cd lxml-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --skip-build --optimize=1
install -Dm644 LICENSES.txt \
- "${pkgdir}"/usr/share/licenses/$pkgname/LICENSE
+ "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
install -Dm644 doc/licenses/BSD.txt \
- "${pkgdir}"/usr/share/licenses/$pkgname/BSD.txt
+ "$pkgdir"/usr/share/licenses/$pkgname/BSD.txt
install -Dm644 doc/licenses/elementtree.txt \
- "${pkgdir}"/usr/share/licenses/$pkgname/elementtree.txt
+ "$pkgdir"/usr/share/licenses/$pkgname/elementtree.txt
}
-package_python-lxml() {
- depends=('python' 'libxslt')
+package_python-lxml-docs() {
+ pkgdesc="Python binding for the libxml2 and libxslt libraries (docs)"
+ options=('docs')
- cd "${srcdir}"/lxml-$pkgver
- python setup.py install --root="${pkgdir}" --optimize=1
+ cd lxml-$pkgver-py2
+ install -d "$pkgdir"/usr/share/doc/$pkgbase
+ cp -r doc/html "$pkgdir"/usr/share/doc/$pkgbase
install -Dm644 LICENSES.txt \
- "${pkgdir}"/usr/share/licenses/$pkgname/LICENSE
+ "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
install -Dm644 doc/licenses/BSD.txt \
- "${pkgdir}"/usr/share/licenses/$pkgname/BSD.txt
+ "$pkgdir"/usr/share/licenses/$pkgname/BSD.txt
install -Dm644 doc/licenses/elementtree.txt \
- "${pkgdir}"/usr/share/licenses/$pkgname/elementtree.txt
+ "$pkgdir"/usr/share/licenses/$pkgname/elementtree.txt
}
diff --git a/abs/core/python_modules/python-lxml/__changelog b/abs/core/python_modules/python-lxml/__changelog
deleted file mode 100644
index 9731eb3..0000000
--- a/abs/core/python_modules/python-lxml/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-removed python3
diff --git a/abs/core/python_modules/python-mako/PKGBUILD b/abs/core/python_modules/python-mako/PKGBUILD
index 71440e4..b662825 100644
--- a/abs/core/python_modules/python-mako/PKGBUILD
+++ b/abs/core/python_modules/python-mako/PKGBUILD
@@ -1,54 +1,58 @@
# $Id$
-# Maintainer :
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
-pkgname=('python2-mako')
-pkgver=0.9.1
-pkgrel=2
-pkgdesc="Hyperfast and lightweight templating for the Python2 platform"
+pkgbase=python-mako
+pkgname=('python-mako' 'python2-mako')
+pkgver=1.0.7
+pkgrel=1
+pkgdesc="A super-fast templating language that borrows the best ideas from the existing templating languages"
arch=('any')
url="http://www.makotemplates.org/"
license=('MIT')
-makedepends=('python2-setuptools')
-checkdepends=('python2-nose')
-source=(https://pypi.python.org/packages/source/M/Mako/Mako-$pkgver.tar.gz{,.asc})
-sha1sums=('aa01bafca5a835eb92a9048be92414fa83da102b'
- 'SKIP')
+makedepends=('python-setuptools' 'python2-setuptools' 'python-markupsafe' 'python2-markupsafe'
+ 'python-beaker' 'python2-beaker')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner' 'python-mock' 'python2-mock'
+ 'python-babel' 'python2-babel' 'python-pygments' 'python2-pygments'
+ 'python-dogpile.cache' 'python2-dogpile.cache')
+source=("https://pypi.io/packages/source/M/Mako/Mako-$pkgver.tar.gz"{,.asc})
+sha512sums=('d67af6788bf8603010361ce8b6d0355b0191657c07f3b5845f9d5e91653c3e349a7b35d5b36aa9c7f291973c83911ce94075e1cad78e6935d0ed4ee9c6e2a571'
+ 'SKIP')
+validpgpkeys=('83AF7ACE251C13E6BB7DEFBD330239C1C4DAFEE1') # Michael Bayer
prepare() {
- cp -r Mako-$pkgver python2-Mako-$pkgver
- mv Mako-$pkgver/scripts/mako-render Mako-$pkgver/scripts/python3-mako-render
-# 2to3 -nw Mako-$pkgver/scripts/python3-mako-render
- sed -i 's/mako-render/python3-mako-render/' Mako-$pkgver/setup.py
+ cp -a Mako-$pkgver{,-py2}
}
build() {
- cd Mako-$pkgver
-# python3 setup.py build
+ cd "$srcdir"/Mako-$pkgver
+ python setup.py build
- cd ../python2-Mako-$pkgver
- python2 setup.py build
+ cd "$srcdir"/Mako-$pkgver-py2
+ python2 setup.py build
}
check() {
- cd Mako-$pkgver
-# python3 setup.py test
+ cd "$srcdir"/Mako-$pkgver
+ python setup.py ptr
- cd ../python2-Mako-$pkgver
- python2 setup.py test
+ cd "$srcdir"/Mako-$pkgver-py2
+ python2 setup.py ptr
}
-#package_python-mako() {
-# depends=('python-markupsafe' 'python-beaker')
+package_python-mako() {
+ depends=('python-markupsafe' 'python-beaker' 'python-setuptools')
-# cd Mako-$pkgver
-# python3 setup.py install --root="$pkgdir" --optimize=1
-# install -D LICENSE "$pkgdir/usr/share/licenses/python-mako/COPYING"
-#}
+ cd Mako-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
+ install -D LICENSE "$pkgdir"/usr/share/licenses/$pkgname/COPYING
+}
package_python2-mako() {
- depends=('python2-markupsafe' 'python2-beaker')
+ depends=('python2-markupsafe' 'python2-beaker' 'python2-setuptools')
+
+ cd Mako-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+ install -D LICENSE "$pkgdir"/usr/share/licenses/$pkgname/COPYING
- cd python2-Mako-$pkgver
- python2 setup.py install --root="$pkgdir" --optimize=1
- install -D LICENSE "$pkgdir/usr/share/licenses/python2-mako/COPYING"
+ mv "$pkgdir"/usr/bin/mako-render{,2}
}
diff --git a/abs/core/python_modules/python-mako/__changelog b/abs/core/python_modules/python-mako/__changelog
deleted file mode 100644
index 9715c21..0000000
--- a/abs/core/python_modules/python-mako/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD - comment out all python 3 stuff and only build for py 2
diff --git a/abs/core/python_modules/python-markupsafe/PKGBUILD b/abs/core/python_modules/python-markupsafe/PKGBUILD
index 17725d0..ec6d6f9 100644
--- a/abs/core/python_modules/python-markupsafe/PKGBUILD
+++ b/abs/core/python_modules/python-markupsafe/PKGBUILD
@@ -1,50 +1,53 @@
# $Id$
-# Maintainer : Felix Yan <felixonmars@gmail.com>
+# Maintainer : Felix Yan <felixonmars@archlinux.org>
# Contributor: Ionut Biru <ibiru@archlinux.org>
# Contributor: Alex Anthony <alex.anthony28991@gmail.com>
-pkgname=('python2-markupsafe')
-pkgver=0.21
+pkgname=('python-markupsafe' 'python2-markupsafe')
+pkgver=1.0
pkgrel=1
pkgdesc="Implements a XML/HTML/XHTML Markup safe string for Python"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://pypi.python.org/pypi/MarkupSafe"
license=('custom')
-makedepends=('python2-setuptools')
-source=("http://pypi.python.org/packages/source/M/MarkupSafe/MarkupSafe-${pkgver}.tar.gz")
-sha512sums=('ecedf56be7ad1723c4d7bf799e1aefb8ceb0a28840a1b8ffdc2dee0f734149430cf5dfd5d335591e9934cf223255475e9c04da5ab34ed69e7845298f599d81bc')
+makedepends=('python-setuptools' 'python2-setuptools')
+source=("https://pypi.io/packages/source/M/MarkupSafe/MarkupSafe-${pkgver}.tar.gz")
+sha512sums=('7437a02cb1b9c1d6d6c20b13d394f24a1cd1cb8c743f832d8b1cbb6ab8846f70f54d924dd693423b33c4d592e772983ae38fd4a35961e233457c48bd3584ecb8')
+
+prepare() {
+ cp -a MarkupSafe-$pkgver{,-py2}
+}
build() {
- cp -r MarkupSafe-${pkgver} python2-MarkupSafe-${pkgver}
-# cd "${srcdir}/MarkupSafe-${pkgver}"
-# python setup.py build
+ cd "$srcdir"/MarkupSafe-$pkgver
+ python setup.py build
- cd "${srcdir}/python2-MarkupSafe-${pkgver}"
+ cd "$srcdir"/MarkupSafe-$pkgver-py2
python2 setup.py build
}
check() {
-# cd "${srcdir}/MarkupSafe-${pkgver}"
-# python setup.py test
+ cd "$srcdir"/MarkupSafe-$pkgver
+ python setup.py test
- cd "${srcdir}/python2-MarkupSafe-${pkgver}"
+ cd "$srcdir"/MarkupSafe-$pkgver-py2
python2 setup.py test
}
-#package_python-markupsafe() {
-# depends=('python')
+package_python-markupsafe() {
+ depends=('python')
-# cd MarkupSafe-${pkgver}
-# python setup.py install --root="${pkgdir}" --optimize=1
+ cd MarkupSafe-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
-# install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/python-markupsafe/LICENSE"
-#}
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/python-markupsafe/LICENSE
+}
package_python2-markupsafe() {
depends=('python2')
- cd python2-MarkupSafe-${pkgver}
- python2 setup.py install --root="${pkgdir}" --optimize=1
+ cd MarkupSafe-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
- install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/python2-markupsafe/LICENSE"
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/python2-markupsafe/LICENSE
}
diff --git a/abs/core/python_modules/python-markupsafe/__changelog b/abs/core/python_modules/python-markupsafe/__changelog
deleted file mode 100644
index 488d3cf..0000000
--- a/abs/core/python_modules/python-markupsafe/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: rm py 3 stuff
diff --git a/abs/core/python_modules/python-mistune/PKGBUILD b/abs/core/python_modules/python-mistune/PKGBUILD
new file mode 100644
index 0000000..dc1f2cc
--- /dev/null
+++ b/abs/core/python_modules/python-mistune/PKGBUILD
@@ -0,0 +1,37 @@
+# $Id$
+# Maintainer: Kyle Keen <keenerd@gmail.com>
+# Contributor: shmilee
+
+pkgbase=python-mistune
+_pkgname=mistune
+pkgname=('python-mistune' 'python2-mistune')
+pkgver=0.8.1
+pkgrel=1
+pkgdesc="The fastest markdown parser in pure Python with renderer feature."
+arch=('any')
+url="https://github.com/lepture/mistune"
+license=('BSD')
+depends=('python')
+makedepends=('python-setuptools' 'python2-setuptools')
+source=("https://github.com/lepture/mistune/archive/v${pkgver}.tar.gz")
+md5sums=('48de519df46992d12b45d562ee5bfedb')
+
+prepare() {
+ cd "$srcdir"
+ cp -r "$srcdir/$_pkgname-$pkgver" "$srcdir/${_pkgname}2-$pkgver"
+}
+
+package_python-mistune() {
+ cd "$srcdir/${_pkgname}-$pkgver"
+ python setup.py install --root="$pkgdir/"
+ install -Dm644 LICENSE "$pkgdir/usr/share/licenses/python-mistune/LICENSE"
+}
+
+package_python2-mistune() {
+ depends=('python2')
+ cd "$srcdir/${_pkgname}2-$pkgver"
+ python2 setup.py install --root="$pkgdir/"
+ install -Dm644 LICENSE "$pkgdir/usr/share/licenses/python2-mistune/LICENSE"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/python_modules/python-mock/PKGBUILD b/abs/core/python_modules/python-mock/PKGBUILD
index 63fd848..c2ec77d 100644
--- a/abs/core/python_modules/python-mock/PKGBUILD
+++ b/abs/core/python_modules/python-mock/PKGBUILD
@@ -3,38 +3,51 @@
# Contributor: Felix Kaiser <felix.kaiser@fxkr.net>
pkgbase=python-mock
-pkgname=(python2-mock)
-pkgver=1.0.1
-pkgrel=3
+pkgname=(python2-mock python-mock)
+pkgver=2.0.0
+pkgrel=2
pkgdesc='Mocking and Patching Library for Testing'
url='http://www.voidspace.org.uk/python/mock/'
-makedepends=('python2')
+makedepends=('python2' 'python' 'python-setuptools' 'python2-setuptools')
+checkdepends=('python-nose' 'python2-nose' 'python-pbr' 'python2-pbr' 'python-six' 'python2-six' 'git')
license=('BSD')
arch=('any')
-source=("http://pypi.python.org/packages/source/m/mock/mock-$pkgver.tar.gz")
-md5sums=('c3971991738caa55ec7c356bbc154ee2')
+source=("https://files.pythonhosted.org/packages/source/m/mock/mock-$pkgver.tar.gz")
+md5sums=('0febfafd14330c9dcaa40de2d82d40ad')
build() {
cd "$srcdir"
cp -rf "mock-$pkgver" "mock2-$pkgver"
-# cd "$srcdir/mock-$pkgver"
-# python3 setup.py build
+ cd "$srcdir/mock-$pkgver"
+ python3 setup.py build
cd "$srcdir/mock2-$pkgver"
python2 setup.py build
}
-#package_python-mock() {
-#depends=('python')
-# cd "$srcdir/mock-$pkgver"
-# python3 setup.py install --optimize=1 --root="$pkgdir"
-# install -Dm644 LICENSE.txt "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
-#}
+package_python-mock() {
+depends=('python' 'python-six' 'python-pbr')
+ cd "$srcdir/mock-$pkgver"
+ python3 setup.py install --optimize=1 --root="$pkgdir"
+ install -Dm644 LICENSE.txt "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
+}
package_python2-mock() {
-depends=('python2')
+depends=('python2' 'python2-six' 'python2-pbr' 'python2-funcsigs') # Backported Py > 3.3 functionality
cd "$srcdir/mock2-$pkgver"
python2 setup.py install --optimize=1 --root="$pkgdir"
install -Dm644 LICENSE.txt "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
}
+
+check() {
+ cd "$srcdir/mock2-$pkgver/"
+ sed -i 's/unittest2/unittest/g' mock/tests/*.py
+
+ echo 'python tests'
+ python -m unittest discover
+
+ # Does not run because of self.assertRaisesRegex() usage in unitests, which is self.assertRaisesRegexp() in Python 2.7
+ echo 'python2 tests'
+ #python2 -m unittest discover
+}
diff --git a/abs/core/python_modules/python-mock/__changelog b/abs/core/python_modules/python-mock/__changelog
deleted file mode 100644
index 488d3cf..0000000
--- a/abs/core/python_modules/python-mock/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: rm py 3 stuff
diff --git a/abs/core/python_modules/python-more-itertools/PKGBUILD b/abs/core/python_modules/python-more-itertools/PKGBUILD
new file mode 100644
index 0000000..3a07dda
--- /dev/null
+++ b/abs/core/python_modules/python-more-itertools/PKGBUILD
@@ -0,0 +1,36 @@
+# $Id$
+# Maintainer: Kyle Keen <keenerd@gmail.com>
+# Contributor: Germán Osella Massa <gosella@gmail.com>
+
+pkgbase=python-more-itertools
+pkgname=('python-more-itertools' 'python2-more-itertools')
+pkgver=3.1.0
+pkgrel=1
+pkgdesc='More routines for operating on iterables, beyond itertools'
+arch=('any')
+url='https://github.com/erikrose/more-itertools'
+#url='https://pypi.python.org/pypi/more-itertools'
+license=('MIT')
+depends=('python')
+makedepends=('python-setuptools' 'python2-setuptools' 'python2-six')
+source=("https://files.pythonhosted.org/packages/source/m/more-itertools/more-itertools-$pkgver.tar.gz")
+md5sums=('e3dad64e30d0220039d0cb036ae7532c')
+
+prepare() {
+ cp -R "more-itertools-$pkgver" "py2-more-itertools-$pkgver"
+}
+
+package_python-more-itertools() {
+ cd "$srcdir/more-itertools-$pkgver"
+ python3 setup.py install --root="$pkgdir/" --optimize=0
+ install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
+
+package_python2-more-itertools() {
+ depends=('python2' 'python2-six')
+ cd "$srcdir/py2-more-itertools-$pkgver"
+ python2 setup.py install --root="$pkgdir/" --optimize=0
+ install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/python_modules/python-ndg-httpsclient/PKGBUILD b/abs/core/python_modules/python-ndg-httpsclient/PKGBUILD
index 7b0047f..0d2f022 100644
--- a/abs/core/python_modules/python-ndg-httpsclient/PKGBUILD
+++ b/abs/core/python_modules/python-ndg-httpsclient/PKGBUILD
@@ -3,24 +3,25 @@
# Contributor: Hugo Osvaldo Barrera <hugo@osvaldobarrera.com.ar>
pkgbase=python-ndg-httpsclient
-pkgname=(python2-ndg-httpsclient)
+pkgname=(python-ndg-httpsclient python2-ndg-httpsclient)
_pkgname=ndg_httpsclient
-pkgver=0.4.2
-pkgrel=2
+pkgver=0.4.4
+pkgrel=1
pkgdesc="Provides enhanced HTTPS support for httplib and urllib2 using PyOpenSSL"
arch=(any)
url="https://pypi.python.org/pypi/ndg-httpsclient"
license=('BSD')
-makedepends=(python2-setuptools python2-pyopenssl python2-pyasn1)
+makedepends=(python2-setuptools python2-pyopenssl python2-pyasn1
+ python-setuptools python-pyopenssl python-pyasn1)
options=(!emptydirs)
source=(https://files.pythonhosted.org/packages/source/n/ndg-httpsclient/$_pkgname-$pkgver.tar.gz)
-sha256sums=('580987ef194334c50389e0d7de885fccf15605c13c6eecaabd8d6c43768eb8ac')
+sha256sums=('fba4d4798dcac2965874f24afb6631b4326baa4bd02505744d34f690c354856a')
build() {
cd "$srcdir"/$_pkgname-$pkgver
-# rm -rf ../buildpy3; mkdir ../buildpy3
-# python setup.py build -b ../buildpy3
+ rm -rf ../buildpy3; mkdir ../buildpy3
+ python setup.py build -b ../buildpy3
rm -rf ../buildpy2; mkdir ../buildpy2
python2 setup.py build -b ../buildpy2
diff --git a/abs/core/python_modules/python-ndg-httpsclient/__changelog b/abs/core/python_modules/python-ndg-httpsclient/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-ndg-httpsclient/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-nose/PKGBUILD b/abs/core/python_modules/python-nose/PKGBUILD
index be20823..beafe17 100644
--- a/abs/core/python_modules/python-nose/PKGBUILD
+++ b/abs/core/python_modules/python-nose/PKGBUILD
@@ -5,16 +5,16 @@
# Contributor: Cilyan Olowen <gaknar@gmail.com>
pkgbase=python-nose
-pkgname=('python2-nose' 'python-nose-doc')
-pkgver=1.3.1
-pkgrel=2
+pkgname=('python-nose' 'python2-nose' 'python-nose-doc')
+pkgver=1.3.7
+pkgrel=3
pkgdesc="A discovery-based unittest extension"
arch=('any')
url='http://readthedocs.org/docs/nose/'
license=('LGPL2.1')
-makedepends=('python2' 'python2-setuptools' 'python2-sphinx')
-source=("http://pypi.python.org/packages/source/n/nose/nose-${pkgver}.tar.gz")
-md5sums=('672398801ddf5ba745c55c6eed79c5aa')
+makedepends=('python' 'python-setuptools' 'python2' 'python2-setuptools' 'python2-sphinx')
+source=("https://pypi.python.org/packages/source/n/nose/nose-${pkgver}.tar.gz")
+md5sums=('4d3ad0ff07b61373d2cefc89c5d0b20b')
build() {
cd "$srcdir/nose-$pkgver"
@@ -22,12 +22,12 @@ build() {
cp -R "$srcdir/nose-$pkgver" "$srcdir/nose2-$pkgver"
}
-#package_python-nose() {
-# depends=('python' 'python-setuptools')
-# cd "$srcdir/nose-$pkgver"
-# python3 setup.py install --prefix=/usr --root="${pkgdir}"
-# mv "$pkgdir/usr/bin/nosetests" "$pkgdir/usr/bin/nosetests3"
-#}
+package_python-nose() {
+ depends=('python' 'python-setuptools')
+ cd "$srcdir/nose-$pkgver"
+ python3 setup.py install --prefix=/usr --root="${pkgdir}"
+ ln -s nosetests "$pkgdir/usr/bin/nosetests3"
+}
package_python2-nose() {
depends=('python2' 'python2-setuptools')
@@ -40,7 +40,7 @@ package_python2-nose() {
package_python-nose-doc(){
pkgdesc="Nose documentation and examples"
cd "$srcdir/nose-$pkgver/doc"
- make SPHINXBUILD=sphinx-build22 html
+ make SPHINXBUILD=sphinx-build2 html
mkdir -p "$pkgdir/usr/share/doc/python-nose"
cp -r .build/html "$pkgdir/usr/share/doc/python-nose"
cp -r ../examples "$pkgdir/usr/share/doc/python-nose"
diff --git a/abs/core/python_modules/python-nose/__changelog b/abs/core/python_modules/python-nose/__changelog
deleted file mode 100644
index 488d3cf..0000000
--- a/abs/core/python_modules/python-nose/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: rm py 3 stuff
diff --git a/abs/core/python_modules/python-numpy/PKGBUILD b/abs/core/python_modules/python-numpy/PKGBUILD
index 8c9c6be..6c92605 100755
--- a/abs/core/python_modules/python-numpy/PKGBUILD
+++ b/abs/core/python_modules/python-numpy/PKGBUILD
@@ -1,61 +1,85 @@
-# $Id: PKGBUILD 138131 2011-09-17 03:10:10Z allan $
+# $Id$
# Maintainer: Jan de Groot <jgc@archlinux.org>
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
# Contributor: Douglas Soares de Andrade <dsa@aur.archlinux.org>
# Contributor: Angel 'angvp' Velasquez <angvp[at]archlinux.com.ve>
pkgbase=python-numpy
-pkgname=('python2-numpy')
-pkgver=1.6.1
+pkgname=('python2-numpy' 'python-numpy')
+pkgver=1.14.2
pkgrel=1
pkgdesc="Scientific tools for Python"
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('custom')
-url="http://numpy.scipy.org/"
-makedepends=('lapack' 'python2' 'python2-distribute' 'gcc-fortran' 'python2-nose')
-source=(http://downloads.sourceforge.net/numpy/numpy-${pkgver}.tar.gz)
-md5sums=('2bce18c08fc4fce461656f0f4dd9103e')
+url="http://www.numpy.org/"
+makedepends=('cblas' 'lapack' 'python' 'python2' 'python-setuptools' 'python2-setuptools' 'gcc-fortran'
+ 'python-nose' 'python2-nose' 'cython' 'cython2')
+options=('staticlibs')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/numpy/numpy/archive/v$pkgver.tar.gz" 'site.cfg')
+sha512sums=('65b10462011e033669b700f0688df2e8630a097323fc7d72e71549fdfc2258546fe6f1317e0d51e1a0c9ab86451e0998ccbc7daa9af690652a96034571d5b76b'
+ '03a0f161be4963625f110a26167efbd300a12bd4cf99c8250c47ac865466d03fc8640e7e4fb6a59c39bf8b797609f5ed50afbc720d1fcbd2c4c57263cf8b406b')
-build() {
- cd "${srcdir}"
- cp -a numpy-${pkgver} numpy-py2-${pkgver}
+prepare() {
+ cp site.cfg numpy-$pkgver
+ cp -a numpy-$pkgver numpy-py2-$pkgver
+ cd numpy-py2-$pkgver
+
+ sed -e "s|#![ ]*/usr/bin/python$|#!/usr/bin/python2|" \
+ -e "s|#![ ]*/usr/bin/env python$|#!/usr/bin/env python2|" \
+ -e "s|#![ ]*/bin/env python$|#!/usr/bin/env python2|" \
+ -i $(find . -name '*.py')
+}
- export Atlas=None
+build() {
export LDFLAGS="$LDFLAGS -shared"
echo "Building Python2"
- cd "${srcdir}/numpy-py2-${pkgver}"
+ cd numpy-py2-$pkgver
python2 setup.py config_fc --fcompiler=gnu95 build
- #echo "Building Python3"
- #cd "${srcdir}/numpy-${pkgver}"
- #python setup.py config_fc --fcompiler=gnu95 build
+ echo "Building Python3"
+ cd ../numpy-$pkgver
+ python setup.py config_fc --fcompiler=gnu95 build
}
package_python2-numpy() {
- depends=('lapack' 'python2')
- optdepends=('python-nose: testsuite')
+ depends=('lapack' 'python2' 'cblas')
+ optdepends=('python2-nose: testsuite')
+
+ _pyver=2.7
- cd "${srcdir}/numpy-py2-${pkgver}"
+ export ATLAS=None
+ export LDFLAGS="$LDFLAGS -shared"
+
+ cd numpy-py2-$pkgver
python2 setup.py config_fc --fcompiler=gnu95 install --prefix=/usr --root="${pkgdir}" --optimize=1
install -m755 -d "${pkgdir}/usr/share/licenses/python2-numpy"
install -m644 LICENSE.txt "${pkgdir}/usr/share/licenses/python2-numpy/"
- sed -i -e "s|#![ ]*/usr/bin/python$|#!/usr/bin/python2|" \
- -e "s|#![ ]*/usr/bin/env python$|#!/usr/bin/env python2|" \
- -e "s|#![ ]*/bin/env python$|#!/usr/bin/env python2|" \
- $(find ${pkgdir} -name '*.py')
+ install -m755 -d "${pkgdir}/usr/include/python${_pyver}"
+ ln -sf /usr/lib/python${_pyver}/site-packages/numpy/core/include/numpy "${pkgdir}/usr/include/python${_pyver}/numpy"
}
package_python-numpy() {
- depends=('lapack' 'python')
+ depends=('lapack' 'python' 'cblas')
+ optdepends=('python-nose: testsuite')
provides=("python3-numpy=${pkgver}")
replaces=('python3-numpy')
conflicts=('python3-numpy')
- cd "${srcdir}/numpy-${pkgver}"
+ _pyver=3.6
+ _pyinc=3.6m
+
+ export ATLAS=None
+ export LDFLAGS="$LDFLAGS -shared"
+
+ cd numpy-$pkgver
python setup.py config_fc --fcompiler=gnu95 install --prefix=/usr --root="${pkgdir}" --optimize=1
- install -m755 -d "${pkgdir}/usr/share/licenses/python3-numpy"
- install -m644 LICENSE.txt "${pkgdir}/usr/share/licenses/python3-numpy/"
+ install -m755 -d "${pkgdir}/usr/share/licenses/python-numpy"
+ install -m644 LICENSE.txt "${pkgdir}/usr/share/licenses/python-numpy/"
+
+ install -m755 -d "${pkgdir}/usr/include/python${_pyinc}"
+ ln -sf /usr/lib/python${_pyver}/site-packages/numpy/core/include/numpy "${pkgdir}/usr/include/python${_pyinc}/numpy"
}
diff --git a/abs/core/python_modules/python-numpy/__changelog b/abs/core/python_modules/python-numpy/__changelog
deleted file mode 100644
index 3bc4789..0000000
--- a/abs/core/python_modules/python-numpy/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-remove python3 support
diff --git a/abs/core/python_modules/python-numpy/site.cfg b/abs/core/python_modules/python-numpy/site.cfg
new file mode 100644
index 0000000..528d890
--- /dev/null
+++ b/abs/core/python_modules/python-numpy/site.cfg
@@ -0,0 +1,4 @@
+[atlas]
+atlas_libs = cblas
+libraries = cblas
+
diff --git a/abs/core/python_modules/python-oauth/PKGBUILD b/abs/core/python_modules/python-oauth/PKGBUILD
deleted file mode 100644
index 1404fec..0000000
--- a/abs/core/python_modules/python-oauth/PKGBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# Maintainer: Snowknight (hopkinsth@gmail.com)
-pkgname=python-oauth
-pkgver=1.0.1
-pkgrel=6
-pkgdesc="An open protocol to allow API authentication in a simple and standard method from desktop and web applications."
-arch=('any')
-url="http://code.google.com/p/oauth/"
-license=('MIT')
-depends=('python2')
-#makedepends=('python2-distribute')
-makedepends=('setuptools')
-source=(http://pypi.python.org/packages/source/o/oauth/oauth-${pkgver}.tar.gz)
-md5sums=('30ed3cc8c11d7841a89feab437aabf81')
-sha1sums=('b2d7609e4852b33d0d33f0bc6ae5cab8fadca014')
-
-build() {
- cd ${srcdir}/oauth-${pkgver}
-
- python2 setup.py build || return 1
-}
-package() {
- cd ${srcdir}/oauth-${pkgver}
- python2 setup.py install --root=${pkgdir} || return 1
-
- install -Dm644 LICENSE.txt ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
-}
-
diff --git a/abs/core/python_modules/python-opengl/PKGBUILD b/abs/core/python_modules/python-opengl/PKGBUILD
deleted file mode 100644
index 57f77fd..0000000
--- a/abs/core/python_modules/python-opengl/PKGBUILD
+++ /dev/null
@@ -1,27 +0,0 @@
-# $Id: PKGBUILD 150966 2012-02-24 10:19:17Z pierre $
-# Contributor: Josh Taylor <joshtaylor.mail@gmail.com>
-# Contributor: simo <simo@archlinux.org>
-# Contributor: Douglas Soares de Andrade <douglas@archlinux.org>
-# Maintainer: Daniel J Griffiths <ghost1227@archlinux.us>
-
-pkgname=python-opengl
-pkgver=3.0.1
-pkgrel=3
-pkgdesc="The cross platform Python binding to OpenGL and related APIs"
-url="http://pyopengl.sourceforge.net"
-license=('BSD')
-arch=('any')
-depends=('python2' 'tk' 'freeglut' 'setuptools')
-provides=('pyopengl' 'python-pyopengl')
-conflicts=('pyopengl' 'python-pyopengl')
-source=("http://downloads.sourceforge.net/pyopengl/PyOpenGL-${pkgver}.tar.gz"
- 'LICENSE')
-md5sums=('221d4a6a0928fcfeef26751370ec5f52'
- '0b53c508a63e5dbaf44cdfb0fa103b3a')
-
-package() {
- cd ${srcdir}/PyOpenGL-${pkgver}
- python2 setup.py install --root=${pkgdir}
- install -Dm644 ${srcdir}/LICENSE \
- ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
-}
diff --git a/abs/core/python_modules/python-packaging/PKGBUILD b/abs/core/python_modules/python-packaging/PKGBUILD
index c7e2b7a..34a48bc 100644
--- a/abs/core/python_modules/python-packaging/PKGBUILD
+++ b/abs/core/python_modules/python-packaging/PKGBUILD
@@ -2,15 +2,15 @@
# Maintainer: Felix Yan <felixonmars@archlinux.org>
pkgbase=python-packaging
-pkgname=(python2-packaging)
+pkgname=(python-packaging python2-packaging)
pkgver=16.8
-pkgrel=2
+pkgrel=3
pkgdesc="Core utilities for Python packages"
arch=('any')
url="https://github.com/pypa/packaging"
license=('Apache')
-makedepends=('python2-setuptools' 'python2-pyparsing' 'git')
-checkdepends=('python2-pytest-runner' 'python2-pretend' 'python2-coverage')
+makedepends=('python-setuptools' 'python2-setuptools' 'python-pyparsing' 'python2-pyparsing' 'git')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner' 'python-pretend' 'python2-pretend' 'python-coverage' 'python2-coverage')
source=("git+https://github.com/pypa/packaging.git#tag=$pkgver")
md5sums=('SKIP')
@@ -19,16 +19,16 @@ prepare() {
}
build() {
-# cd "$srcdir"/packaging
-# python setup.py build
+ cd "$srcdir"/packaging
+ python setup.py build
cd "$srcdir"/packaging-py2
python2 setup.py build
}
check() {
-# cd "$srcdir"/packaging
-# python setup.py ptr
+ cd "$srcdir"/packaging
+ python setup.py ptr
cd "$srcdir"/packaging-py2
python2 setup.py ptr
diff --git a/abs/core/python_modules/python-packaging/__changelog b/abs/core/python_modules/python-packaging/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-packaging/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-parted/PKGBUILD b/abs/core/python_modules/python-parted/PKGBUILD
deleted file mode 100644
index 0e2aa3c..0000000
--- a/abs/core/python_modules/python-parted/PKGBUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-# Maintainer: Nikos Skalkotos <skalkoto at gmail dot com>
-# Contributor: Achilleas Pipinellis <axilleas archlinux info>
-# Contributor: Stéphane Gaudreault <stephane@archlinux.org>
-# Contributor: kfgz <kfgz at interia pl>
-# Contributor: Gökmen Görgen <gkmngrgn at gmail dot com>
-# Contributor: Baurzhan Muftakhidinov <baurthefirst (at) gmail (dot) com>
-
-_pkgname=pyparted
-pkgname=python-parted
-pkgver=3.10.1
-pkgrel=2
-pkgdesc="Python module for GNU parted"
-url="https://github.com/dcantrell/pyparted"
-arch=('i686' 'x86_64')
-license=('GPL2')
-depends=('python2' 'parted>=3.0')
-makedepends=('pkg-config')
-conflicts=('pyparted-git')
-replaces=('pyparted')
-source=("https://github.com/dcantrell/${_pkgname}/archive/${_pkgname}-${pkgver}.tar.gz")
-
-build() {
- cd "${srcdir}/${_pkgname}-${_pkgname}-${pkgver}"
- python2 setup.py build
-}
-
-package() {
- cd "${srcdir}/${_pkgname}-${_pkgname}-${pkgver}"
- python2 setup.py install --prefix=/usr --root="${pkgdir}" --optimize=1 --skip-build
-}
-sha512sums=('d2842ba919808ccb757f6852e17c725b7db6e94db31548366fbdf2376960f8cf6ce239cb33282b4eca02f20a94f85bd58e8fc1d40834670c9684f5903c3515e5')
-
diff --git a/abs/core/python_modules/python-parted/__changelog b/abs/core/python_modules/python-parted/__changelog
deleted file mode 100644
index 3cf54c1..0000000
--- a/abs/core/python_modules/python-parted/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-From AUR python2-pyparted
diff --git a/abs/core/python_modules/python-path/PKGBUILD b/abs/core/python_modules/python-path/PKGBUILD
index 2b7dcbc..d387ee7 100644
--- a/abs/core/python_modules/python-path/PKGBUILD
+++ b/abs/core/python_modules/python-path/PKGBUILD
@@ -2,18 +2,18 @@
# Maintainer: Kyle Keen <keenerd@gmail.com>
pkgbase=python-path
-pkgname=(python2-path)
-pkgver=10.1
+pkgname=(python-path python2-path)
+pkgver=10.4
pkgrel=1
pkgdesc="Aka path.py, implements path objects as first-class entities"
arch=('any')
url="https://pypi.python.org/pypi/path.py"
license=('MIT')
-depends=('python2' 'python2-setuptools')
-makedepends=('python2-setuptools')
+depends=('python' 'python-setuptools')
+makedepends=('python-setuptools' 'python2-setuptools')
#source=("https://pypi.python.org/packages/source/p/path.py/path.py-$pkgver.tar.gz")
source=("https://files.pythonhosted.org/packages/source/p/path.py/path.py-$pkgver.tar.gz")
-md5sums=('f9d31317ceeb798f6b5eac8d3b8e5988')
+md5sums=('84ed5ec53c113554662194bb8cdfc04e')
# formerly a dependency of python-pickleshare
# now used by nothing so back to the AUR
diff --git a/abs/core/python_modules/python-path/__changelog b/abs/core/python_modules/python-path/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-path/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-pbr/PKGBUILD b/abs/core/python_modules/python-pbr/PKGBUILD
new file mode 100644
index 0000000..1a0ab63
--- /dev/null
+++ b/abs/core/python_modules/python-pbr/PKGBUILD
@@ -0,0 +1,61 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Daniel Wallace <danielwallace at gtmanfred dot com>
+# Contributor: Limao Luo <luolimao+AUR@gmail.com>
+
+pkgbase=python-pbr
+pkgname=(python-pbr python2-pbr)
+pkgver=3.1.1
+pkgrel=1
+pkgdesc="Python Build Reasonableness"
+arch=('any')
+url='https://pypi.python.org/pypi/pbr'
+license=('Apache')
+makedepends=('python2-setuptools' 'python-setuptools' 'git')
+checkdepends=('python-testscenarios' 'python2-testscenarios' 'python-testrepository' 'python2-testrepository'
+ 'python-testresources' 'python2-testresources' 'python-mock' 'python2-mock' 'python-virtualenv'
+ 'python2-virtualenv' 'python-wheel' 'python2-wheel' 'python-sphinx' 'python2-sphinx')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/openstack-dev/pbr/archive/$pkgver.tar.gz")
+sha512sums=('c96079408f7ec0ac2e84f94e0cec5b1e6f2ca80460556cbef11568ad8a0f4bf760d5c3451fea408cd6e12acf136254d2769726310911d2e6871cea4bebdb4670')
+
+prepare() {
+ cp -a pbr-$pkgver{,-py2}
+
+ find pbr-$pkgver-py2 -name \*.py -exec sed -i '1s/python$/&2/' {} +
+
+ export PBR_VERSION=$pkgver
+}
+
+build() {
+ cd "$srcdir"/pbr-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/pbr-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir"/pbr-$pkgver
+ python setup.py testr || warning "Tests failed"
+
+ cd "$srcdir"/pbr-$pkgver-py2
+ PYTHON=python2 python2 setup.py testr || warning "Tests failed"
+}
+
+package_python-pbr() {
+ depends=('python-setuptools')
+
+ cd pbr-$pkgver
+ python setup.py install -O1 --root="$pkgdir"
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+package_python2-pbr() {
+ depends=('python2-setuptools')
+
+ cd pbr-$pkgver-py2
+ python2 setup.py install -O1 --root="$pkgdir"
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+
+ mv "$pkgdir"/usr/bin/pbr{,2}
+}
diff --git a/abs/core/python_modules/python-pexpect/PKGBUILD b/abs/core/python_modules/python-pexpect/PKGBUILD
index 4034457..e93207c 100644
--- a/abs/core/python_modules/python-pexpect/PKGBUILD
+++ b/abs/core/python_modules/python-pexpect/PKGBUILD
@@ -1,38 +1,39 @@
# $Id$
-# Maintainer: Alexander Rødseth <rodseth@gmail.com>
+# Maintainer: Alexander F Rødseth <xyproto@archlinux.org>
# Contributor: Aaron Schaefer <aaron@elasticdog.com>
-pkgname=('python2-pexpect')
-pkgver=3.2
+pkgname=('python-pexpect' 'python2-pexpect')
+pkgver=4.4.0
pkgrel=1
-pkgdesc='Make Python a better tool for controlling and automating other programs'
+pkgdesc='For controlling and automating applications'
arch=('any')
-url='http://pexpect.readthedocs.org/en/latest/'
+url='https://pexpect.readthedocs.org/en/stable/'
license=('MIT')
-makedepends=('python2')
-conflicts=('python-pexpect<=2.4')
-replaces=('python-pexpect<=2.4')
-source=("http://pypi.python.org/packages/source/p/pexpect/pexpect-$pkgver.tar.gz")
-sha256sums=('dbc4c9a01c118e198d1b6ca76f31eb7292f212567f253e6b36a880e5168e961f')
+makedepends=('python' 'python2')
+source=("https://pypi.python.org/packages/fa/c3/60c0cbf96f242d0b47a82e9ca634dcd6dcb043832cf05e17540812e1c707/pexpect-$pkgver.tar.gz")
+sha256sums=('67b85a1565968e3d5b5e7c9283caddc90c3947a2625bed1905be27bd5a03e47d')
prepare() {
cp -r "pexpect-$pkgver" "python2-pexpect-$pkgver"
sed -i 's:env python:env python2:' "python2-pexpect-$pkgver/pexpect/FSM.py"
}
-#package_python-pexpect() {
-# depends+=('python')
-# cd "pexpect-$pkgver"
-# python setup.py install --root="$pkgdir"
-# install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
-#}
+package_python-pexpect() {
+ depends+=('python' 'python-ptyprocess')
+
+ cd "pexpect-$pkgver"
+ python setup.py install --root="$pkgdir"
+ install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
package_python2-pexpect() {
- depends+=('python2')
+ depends+=('python2' 'python2-ptyprocess')
+
cd "python2-pexpect-$pkgver"
python2 setup.py install --root="$pkgdir"
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
-# vim:set ts=2 sw=2 et:
+# vim: ts=2 sw=2 et:
+# getver: pypi.python.org/pypi/pexpect
diff --git a/abs/core/python_modules/python-pexpect/__changelog b/abs/core/python_modules/python-pexpect/__changelog
deleted file mode 100644
index 488d3cf..0000000
--- a/abs/core/python_modules/python-pexpect/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: rm py 3 stuff
diff --git a/abs/core/python_modules/python-pillow/PKGBUILD b/abs/core/python_modules/python-pillow/PKGBUILD
index 461c4a7..ad443c6 100644
--- a/abs/core/python_modules/python-pillow/PKGBUILD
+++ b/abs/core/python_modules/python-pillow/PKGBUILD
@@ -3,72 +3,80 @@
# Contributor: minder
pkgbase=python-pillow
-pkgname=(python2-pillow)
-pkgver=2.6.1
+pkgname=(python-pillow python2-pillow)
+pkgver=5.0.0
pkgrel=1
_appname=Pillow
_py2basever=2.7
-_py3basever=3.4m
+_py3basever=3.6m
pkgdesc="Python Imaging Library (PIL) fork. Python3 version."
-arch=('i686' 'x86_64')
-url="http://python-pillow.github.io/"
+arch=('x86_64')
+url="https://python-pillow.github.io/"
license=('BSD')
-makedepends=('python2-setuptools' 'lcms' 'libwebp' 'tk')
-source=("http://pypi.python.org/packages/source/P/$_appname/$_appname-$pkgver.zip")
-md5sums=('f86e88a0f79f226dcdbf045b404cbdeb')
+depends=('lcms2' 'libtiff' 'openjpeg2')
+optdepends=('freetype2: for the ImageFont module'
+ 'libraqm: for complex text scripts'
+ 'libwebp: for webp images'
+ 'tk: for the ImageTK module')
+makedepends=('python-setuptools' 'python2-setuptools' 'freetype2' 'libraqm' 'libwebp' 'tk')
+checkdepends=('python-pytest' 'python2-pytest')
+source=("https://files.pythonhosted.org/packages/source/P/$_appname/$_appname-$pkgver.tar.gz"
+ "freetype-2.9-testfailure.patch::https://github.com/python-pillow/Pillow/commit/4afed260dc8a2b926a8dccfeed45b085d67425ca.patch")
+md5sums=('08094bc48aae6877c94f8db4b8ee8e52'
+ '04e168f81a434e76dab09456ad7930f9')
+
+# future optional things:
+# libimagequant
+
+prepare() {
+ cd "$srcdir/${_appname}-$pkgver"
+ patch -p1 < ../freetype-2.9-testfailure.patch
+}
build() {
- cd "$srcdir"
- cp -r "$srcdir/$_appname-$pkgver" "$srcdir/${_appname}2-$pkgver"
-}
+ cd "$srcdir/${_appname}-$pkgver"
+ python setup.py build
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir/${_appname}-$pkgver"
-#package_python-pillow() {
-# depends=('python' 'lcms' 'libwebp')
-# optdepends=('tk: for the ImageTK module'
-# 'sane: for the Sane module'
-# 'python-pyqt4: for the ImageQt module')
-# cd "$srcdir/$_appname-$pkgver"
-# python3 setup.py install --root="$pkgdir/" --optimize=0
-# pushd Sane
-# python3 setup.py install --root="$pkgdir/" --optimize=0
-# popd
-# install -Dm644 docs/LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+ export PYTHONPATH="$PWD/build/lib.linux-$CARCH-${_py3basever%m}"
+ python selftest.py
+ pytest
+ export PYTHONPATH="$PWD/build/lib.linux-$CARCH-$_py2basever"
+ python2 selftest.py
+ pytest2
+}
-# install -dm755 "$pkgdir/usr/include/python$_py3basever/"
-# install -m644 -t "$pkgdir/usr/include/python$_py3basever/" libImaging/*.h
+package_python-pillow() {
+ depends+=('python')
+ optdepends+=('python-olefile: OLE2 file support'
+ 'python-pyqt4: for the ImageQt module'
+ 'python-pyqt5: for the ImageQt module'
+ 'python-pyside: for the ImageQt module')
+ cd "$srcdir/$_appname-$pkgver"
+ python3 setup.py install --root="$pkgdir/" --optimize=1
+ install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
-# # clean up bins
-# cd "$pkgdir/usr/bin"
-# for f in *.py; do
-# mv "$f" "${f%.py}"
-# done
-#}
+ install -dm755 "$pkgdir/usr/include/python$_py3basever/"
+ install -m644 -t "$pkgdir/usr/include/python$_py3basever/" src/libImaging/*.h
+}
package_python2-pillow() {
pkgdesc="Python Imaging Library (PIL) fork. Python2 version."
- depends=('python2' 'lcms' 'libwebp')
- optdepends=('tk: for the ImageTK module'
- 'sane: for the Sane module'
- 'python2-pyqt4: for the ImageQt module')
+ depends+=('python2')
+ optdepends+=('python2-olefile: OLE2 file support'
+ 'python2-pyqt5: for the ImageQt module'
+ 'python2-pyqt4: for the ImageQt module'
+ 'python2-pyside: for the ImageQt module')
provides=('python-imaging' 'python2-imaging')
conflicts=('python-imaging' 'python2-imaging')
- replaces=('python2-imaging')
- cd "$srcdir/${_appname}2-$pkgver"
- sed -i 's|/usr/local/bin/python$|/usr/bin/env python2|' PIL/OleFileIO.py
- python2 setup.py install --root="$pkgdir/" --optimize=0
-# pushd Sane
- python2 setup.py install --root="$pkgdir/" --optimize=0
-# popd
-
- install -Dm644 docs/LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+ cd "$srcdir/${_appname}-$pkgver"
+ python2 setup.py install --root="$pkgdir/" --optimize=1
+ install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
install -dm755 "$pkgdir/usr/include/python$_py2basever/"
- install -m644 -t "$pkgdir/usr/include/python$_py2basever/" libImaging/*.h
-
- # clean up bins
- cd "$pkgdir/usr/bin"
- for f in *.py; do
- mv "$f" "${f%.py}2"
- done
+ install -m644 -t "$pkgdir/usr/include/python$_py2basever/" src/libImaging/*.h
}
-
diff --git a/abs/core/python_modules/python-pillow/__changelog b/abs/core/python_modules/python-pillow/__changelog
deleted file mode 100644
index 8e7b951..0000000
--- a/abs/core/python_modules/python-pillow/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD - comment out all python 3 stuff and only build for py 2
-PKGBUILD - rm sane dep
diff --git a/abs/core/python_modules/python-pip/PKGBUILD b/abs/core/python_modules/python-pip/PKGBUILD
index acef38b..3531f1e 100644
--- a/abs/core/python_modules/python-pip/PKGBUILD
+++ b/abs/core/python_modules/python-pip/PKGBUILD
@@ -2,14 +2,14 @@
# Maintainer: Dan McGee <dan@archlinux.org>
# Contributor: Sebastien Binet <binet@lblbox>
-pkgname=('python2-pip')
+pkgname=('python-pip' 'python2-pip')
pkgver=9.0.1
-pkgrel=2
+pkgrel=3
pkgdesc="The PyPA recommended tool for installing Python packages"
url="https://pip.pypa.io/"
arch=('any')
license=('MIT')
-makedepends=('python2' 'python2-setuptools')
+makedepends=('python' 'python-setuptools' 'python2' 'python2-setuptools')
source=(https://pypi.io/packages/source/p/pip/pip-${pkgver}.tar.gz)
md5sums=('35f01da33009719497f01a4ba69d63c9')
sha256sums=('09f243e1a7b461f654c26a725fa373211bb7ff17a9300058b205c61658ca940d')
@@ -23,6 +23,9 @@ package_python-pip() {
install -D -m644 LICENSE.txt \
"$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+
+ install -dm755 "$pkgdir"/usr/share/bash-completion/completions
+ PYTHONPATH="$pkgdir"/usr/lib/python3.6/site-packages "$pkgdir"/usr/bin/pip completion --bash > "$pkgdir"/usr/share/bash-completion/completions/pip
}
package_python2-pip() {
@@ -33,12 +36,16 @@ package_python2-pip() {
cd "$srcdir/pip-$pkgver"
python2 setup.py build
python2 setup.py install --prefix=/usr --root="$pkgdir"
-
+
mv "$pkgdir/usr/bin/pip" "$pkgdir/usr/bin/pip2"
sed -i "s|#!/usr/bin/env python$|#!/usr/bin/env python2|" \
${pkgdir}/usr/lib/python2.7/site-packages/pip/__init__.py
python2 -m compileall ${pkgdir}/usr/lib/python2.7/site-packages/pip/__init__.py
-
+
install -D -m644 LICENSE.txt \
"$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+
+ install -dm755 "$pkgdir"/usr/share/bash-completion/completions
+ PYTHONPATH="$pkgdir"/usr/lib/python2.7/site-packages "$pkgdir"/usr/bin/pip2 completion --bash > "$pkgdir"/usr/share/bash-completion/completions/pip2
+ sed -i 's/pip/pip2/g' "$pkgdir"/usr/share/bash-completion/completions/pip2
}
diff --git a/abs/core/python_modules/python-pip/__changelog b/abs/core/python_modules/python-pip/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-pip/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-pluggy/PKGBUILD b/abs/core/python_modules/python-pluggy/PKGBUILD
new file mode 100644
index 0000000..8f304a4
--- /dev/null
+++ b/abs/core/python_modules/python-pluggy/PKGBUILD
@@ -0,0 +1,53 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgbase=python-pluggy
+pkgname=(python-pluggy python2-pluggy)
+pkgver=0.6.0
+pkgrel=2
+pkgdesc="Plugin and hook calling mechanisms for python"
+arch=('any')
+url="https://www.pluggypayments.com/docs/python"
+license=('MIT')
+makedepends=('python-setuptools' 'python2-setuptools')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/pytest-dev/pluggy/archive/$pkgver.tar.gz")
+sha512sums=('ed8fe81907c7dc476ebfbf0f7e0f902577323d64014765e7d7bfe22c2dc7e4977e1ce7ad55ce7f4e923ae23d206d6c3bcc6663de760c877fce82298cc21079db')
+
+prepare() {
+ cp -a pluggy-$pkgver{,-py2}
+}
+
+build() {
+ cd "$srcdir"/pluggy-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/pluggy-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir"/pluggy-$pkgver
+ python setup.py pytest
+
+ cd "$srcdir"/pluggy-$pkgver-py2
+ python2 setup.py pytest
+}
+
+package_python-pluggy() {
+ depends=('python')
+
+ cd pluggy-$pkgver
+ python setup.py install -O1 --root "$pkgdir"
+
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+package_python2-pluggy() {
+ depends=('python2')
+
+ cd pluggy-$pkgver-py2
+ python2 setup.py install -O1 --root "$pkgdir"
+
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
diff --git a/abs/core/python_modules/python-ply/LICENSE b/abs/core/python_modules/python-ply/LICENSE
new file mode 100644
index 0000000..9738628
--- /dev/null
+++ b/abs/core/python_modules/python-ply/LICENSE
@@ -0,0 +1,28 @@
+Copyright (C) 2001-2015,
+David M. Beazley (Dabeaz LLC)
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+* Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+* Neither the name of the David Beazley or Dabeaz LLC may be used to
+ endorse or promote products derived from this software without
+ specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/abs/core/python_modules/python-ply/PKGBUILD b/abs/core/python_modules/python-ply/PKGBUILD
index 3c8cace..3b0d7d7 100644
--- a/abs/core/python_modules/python-ply/PKGBUILD
+++ b/abs/core/python_modules/python-ply/PKGBUILD
@@ -1,45 +1,53 @@
# $Id$
-# Maintainer: Felix Yan <felixonmars@gmail.com>
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
# Contributor: Alexander Rødseth <rodseth@gmail.com>
# Contributor: Marcin "avalan" Falkiewicz <avalatron@gmail.com>
# Contributor: C Anthony Risinger <anthony@xtfx.me>
pkgbase=python-ply
-pkgname=(python2-ply)
-pkgver=3.4
-pkgrel=4
+pkgname=(python-ply python2-ply)
+pkgver=3.11
+pkgrel=1
pkgdesc='Implementation of lex and yacc parsing tools'
arch=('any')
url='http://www.dabeaz.com/ply/'
license=('BSD')
-makedepends=('python2-setuptools')
-source=("${url}ply-$pkgver.tar.gz")
-sha256sums=('af435f11b7bdd69da5ffbc3fecb8d70a7073ec952e101764c88720cdefb2546b')
+makedepends=('python-setuptools' 'python2-setuptools')
+source=("${url}ply-$pkgver.tar.gz"
+ LICENSE)
+sha512sums=('37e39a4f930874933223be58a3da7f259e155b75135f1edd47069b3b40e5e96af883ebf1c8a1bbd32f914a9e92cfc12e29fec05cf61b518f46c1d37421b20008'
+ '5cea085a23ed260afc9084380c1d59e3942c2385089a8eb2391a89c85cde4df2ceb7eed21bb8c4d0cad5b78e59742da69e4c5c78fd0e223f5c99c56e9296a075')
prepare() {
- cp -r ${pkgbase#python-}-$pkgver{,-py2}
+ cp -a ply-$pkgver{,-py2}
}
-#package_python-ply() {
-# depends=('python')
+check() {
+ cd "ply-$pkgver/test"
+ python testlex.py
+ python testyacc.py
-# cd "${pkgbase#python-}-$pkgver"
+ cd "$srcdir/ply-$pkgver-py2/test"
+ python2 testlex.py
+ python2 testyacc.py
+}
+
+package_python-ply() {
+ depends=('python')
+
+ cd "ply-$pkgver"
+ python setup.py install --root="$pkgdir"
-# python setup.py install --root="$pkgdir"
-
-# install -d "$pkgdir/usr/share/licenses/$pkgname"
-# head -n30 README > "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
-#}
+ install -Dm644 ../LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
package_python2-ply() {
depends=('python2')
- cd "${pkgbase#python-}-$pkgver-py2"
-
+ cd "ply-$pkgver-py2"
python2 setup.py install --root="$pkgdir"
-
- install -d "$pkgdir/usr/share/licenses/$pkgname"
- head -n30 README > "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+
+ install -Dm644 ../LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
# vim:set ts=2 sw=2 et:
diff --git a/abs/core/python_modules/python-ply/__changelog b/abs/core/python_modules/python-ply/__changelog
deleted file mode 100644
index 488d3cf..0000000
--- a/abs/core/python_modules/python-ply/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: rm py 3 stuff
diff --git a/abs/core/python_modules/python-ptyprocess/PKGBUILD b/abs/core/python_modules/python-ptyprocess/PKGBUILD
new file mode 100644
index 0000000..12092d4
--- /dev/null
+++ b/abs/core/python_modules/python-ptyprocess/PKGBUILD
@@ -0,0 +1,38 @@
+# $Id$
+# Maintainer: Kyle Keen <keenerd@gmail.com>
+# Contributor: Will Shanks <wsha dot code at g mail dot com>
+
+pkgbase=python-ptyprocess
+pkgname=(python-ptyprocess python2-ptyprocess)
+_pkgname=ptyprocess
+pkgver=0.5.2
+pkgrel=1
+pkgdesc="Run a subprocess in a pseudo terminal"
+url="https://github.com/pexpect/ptyprocess"
+arch=('any')
+license=('ISC')
+depends=('python')
+makedepends=('python-setuptools' 'python2-setuptools')
+source=("https://pypi.io/packages/source/p/$_pkgname/$_pkgname-$pkgver.tar.gz"
+ 'https://raw.githubusercontent.com/pexpect/ptyprocess/master/LICENSE')
+md5sums=('d3b8febae1b8c53b054bd818d0bb8665'
+ 'cfdcd51fa7d5808da4e74346ee394490')
+
+prepare() {
+ cd "$srcdir"
+ cp -r $_pkgname-$pkgver ${_pkgname}2-$pkgver
+}
+
+package_python-ptyprocess() {
+ cd "$srcdir/$_pkgname-$pkgver"
+ python3 setup.py install --root="$pkgdir/" --prefix=/usr --optimize=0
+ install -Dm644 "$srcdir/LICENSE" "$pkgdir/usr/share/licenses/python-$_pkgname/LICENSE"
+}
+
+package_python2-ptyprocess() {
+ depends=('python2')
+ cd "$srcdir/${_pkgname}2-$pkgver"
+ python2 setup.py install --root="$pkgdir/" --prefix=/usr --optimize=0
+ install -Dm644 "$srcdir/LICENSE" "$pkgdir/usr/share/licenses/python2-$_pkgname/LICENSE"
+}
+
diff --git a/abs/core/python_modules/python-py/PKGBUILD b/abs/core/python_modules/python-py/PKGBUILD
index d0fec8b..9a2b083 100644
--- a/abs/core/python_modules/python-py/PKGBUILD
+++ b/abs/core/python_modules/python-py/PKGBUILD
@@ -1,5 +1,5 @@
# $Id$
-# Maintainer: Felix Yan <felixonmars@gmail.com>
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
# Contributor: Sebastian Wiesner <lunaryorn googlemail com>
# Contributor: Igor Ramos Tiburcio <irtigor@yahoo.com.br>
# Contributor: Wieland Hoffmann <themineo+aur@gmail.com>
@@ -7,51 +7,54 @@
# Contributor: Felix Kaiser <felix.kaiser@fxkr.net>
pkgbase=python-py
-pkgname=('python2-py')
-pkgver=1.4.20
-pkgrel=3
+pkgname=('python-py' 'python2-py')
+pkgver=1.5.3
+pkgrel=1
pkgdesc="library with cross-python path, ini-parsing, io, code, log facilities"
arch=('any')
license=('MIT')
-url="http://pylib.readthedocs.org/en/latest/"
-makedepends=('python2-setuptools')
-checkdepends=('python2-pytest')
-source=("http://pypi.python.org/packages/source/p/py/py-$pkgver.tar.gz")
+url="http://py.readthedocs.io/"
+makedepends=('python-setuptools' 'python2-setuptools')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/pytest-dev/py/archive/$pkgver.tar.gz")
+sha512sums=('60a9fc99a61f8a31a91b4217972dd957ea1d651c8818a91e84a957e907abd4f5feff7715ef64f2902d9f0444f8210a93938fc78787992dca484a2a1311523874')
prepare() {
- cp -r py-${pkgver}{,-py2}
+ cp -a py-$pkgver{,-py2}
+
+ export LC_CTYPE=en_US.UTF-8
}
build() {
-# cd "$srcdir/py-${pkgver}"
-# python setup.py build
+ cd "$srcdir"/py-$pkgver
+ python setup.py build
- cd "$srcdir/py-${pkgver}-py2"
+ cd "$srcdir"/py-$pkgver-py2
python2 setup.py build
}
check() {
-# cd "$srcdir/py-${pkgver}"
-# LANG=en_US.utf8 py.test
+ # Known failure: https://github.com/pytest-dev/py/issues/104
+
+ cd "$srcdir"/py-$pkgver
+ python setup.py pytest || warning "Tests failed"
- cd "$srcdir/py-${pkgver}-py2"
- LANG=en_US.utf8 py.test2
+ cd "$srcdir"/py-$pkgver-py2
+ python2 setup.py pytest || warning "Tests failed"
}
-#package_python-py() {
-# depends=('python')
+package_python-py() {
+ depends=('python')
-# cd py-${pkgver}
-# python setup.py install --root="${pkgdir}" --optimize=1
-# install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
-#}
+ cd py-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
package_python2-py() {
depends=('python2')
- cd py-${pkgver}-py2
- python2 setup.py install --root="${pkgdir}" --optimize=1
- install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ cd py-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}
-
-sha512sums=('db392bd8d52ac2bf7b4785e18aaf58564596f66f15d355ee6f6e4169f6da7847331096ac7118c758ee5ce3f1865502a45f92ca2c99f411c12ee316760ca2b212')
diff --git a/abs/core/python_modules/python-py/__changelog b/abs/core/python_modules/python-py/__changelog
deleted file mode 100644
index 488d3cf..0000000
--- a/abs/core/python_modules/python-py/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: rm py 3 stuff
diff --git a/abs/core/python_modules/python-pyasn1-modules/PKGBUILD b/abs/core/python_modules/python-pyasn1-modules/PKGBUILD
new file mode 100644
index 0000000..282cca9
--- /dev/null
+++ b/abs/core/python_modules/python-pyasn1-modules/PKGBUILD
@@ -0,0 +1,50 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgbase=python-pyasn1-modules
+pkgname=('python-pyasn1-modules' 'python2-pyasn1-modules')
+pkgver=0.2.1
+pkgrel=1
+pkgdesc="A collection of ASN.1-based protocols modules"
+arch=('any')
+license=('BSD')
+url="http://pypi.python.org/pypi/pyasn1-modules"
+makedepends=('python-pyasn1' 'python2-pyasn1' 'python-setuptools' 'python2-setuptools')
+source=("https://pypi.io/packages/source/p/pyasn1-modules/pyasn1-modules-$pkgver.tar.gz")
+sha512sums=('2d8b6bee59434fee41747625236c1d7eb5081a1cef66aa0a0e9e75869c3641a418d21544edafe65f1808ad0dacd9cf1047dd036ff5ce668bb3bf1f6e662e4a5e')
+
+prepare() {
+ cp -a pyasn1-modules-$pkgver{,-py2}
+}
+
+build() {
+ cd "$srcdir"/pyasn1-modules-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/pyasn1-modules-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir"/pyasn1-modules-$pkgver
+ PYTHONPATH=. python tests/__main__.py
+
+ cd "$srcdir"/pyasn1-modules-$pkgver-py2
+ PYTHONPATH=. python2 tests/__main__.py
+}
+
+package_python-pyasn1-modules() {
+ depends=('python-pyopenssl' 'python-pyasn1')
+
+ cd pyasn1-modules-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1 --skip-build
+ install -Dm644 LICENSE.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.txt
+}
+
+package_python2-pyasn1-modules() {
+ depends=('python2-pyopenssl' 'python2-pyasn1')
+
+ cd pyasn1-modules-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1 --skip-build
+ install -Dm644 LICENSE.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.txt
+}
diff --git a/abs/core/python_modules/python-pyasn1/PKGBUILD b/abs/core/python_modules/python-pyasn1/PKGBUILD
index ae8b69c..dbfab2a 100644
--- a/abs/core/python_modules/python-pyasn1/PKGBUILD
+++ b/abs/core/python_modules/python-pyasn1/PKGBUILD
@@ -2,17 +2,17 @@
# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgbase=python-pyasn1
-pkgname=('python2-pyasn1')
-pkgver=0.1.9
+pkgname=('python-pyasn1' 'python2-pyasn1')
+pkgver=0.4.2
pkgrel=1
arch=('any')
url="http://sourceforge.net/projects/pyasn1/"
license=('BSD')
-makedepends=('python2-setuptools')
+makedepends=('python-setuptools' 'python2-setuptools')
replaces=('pyasn1')
provides=('pyasn1')
-source=(http://downloads.sourceforge.net/sourceforge/pyasn1/pyasn1-${pkgver}.tar.gz)
-sha1sums=('d19599c5d9d039ead21ffcd1a2392c29a838ae03')
+source=(https://pypi.io/packages/source/p/pyasn1/pyasn1-$pkgver.tar.gz)
+sha512sums=('30e7cdfd2f7b182081f951bd94169a300a577f95fbfcb4ddb6dc288617b2776265018d246ae0adb649650ee94aab9122a428313d7a61559f97ed7f02b9670709')
check() {
cd pyasn1-${pkgver}
@@ -26,7 +26,7 @@ package_python-pyasn1() {
cd pyasn1-${pkgver}
python setup.py install --root="${pkgdir}"
- install -D -m 644 LICENSE.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ install -D -m 644 LICENSE.rst "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
package_python2-pyasn1() {
@@ -35,5 +35,5 @@ package_python2-pyasn1() {
cd pyasn1-${pkgver}
python2 setup.py install --root="${pkgdir}"
- install -D -m 644 LICENSE.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ install -D -m 644 LICENSE.rst "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
diff --git a/abs/core/python_modules/python-pyasn1/__changelog b/abs/core/python_modules/python-pyasn1/__changelog
deleted file mode 100644
index 60db758..0000000
--- a/abs/core/python_modules/python-pyasn1/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: remove py3 stuff
diff --git a/abs/core/python_modules/python-pybluez/PKGBUILD b/abs/core/python_modules/python-pybluez/PKGBUILD
index e48f941..99594e6 100644
--- a/abs/core/python_modules/python-pybluez/PKGBUILD
+++ b/abs/core/python_modules/python-pybluez/PKGBUILD
@@ -3,29 +3,29 @@
# Contributor: cs-cam - me.at.camdaniel.com
pkgbase=python-pybluez
-pkgname=(python2-pybluez)
-pkgver=0.20
+pkgname=(python-pybluez python2-pybluez)
+pkgver=0.22
pkgrel=2
pkgdesc="Python wrapper for the BlueZ Bluetooth stack"
-arch=('i686' 'x86_64')
-url="http://code.google.com/p/pybluez/"
+arch=('x86_64')
+url="http://karulis.github.io/pybluez/"
license=('GPL')
-makedepends=('python2' 'bluez-libs')
-source=(http://pybluez.googlecode.com/files/PyBluez-$pkgver.zip)
-md5sums=('1e7fad332d50f089bbce69070c877ef6')
+makedepends=('python-setuptools' 'python2-setuptools' 'bluez-libs')
+source=("$pkgname-$pkgver.tar.gz::https://github.com/karulis/pybluez/archive/$pkgver.tar.gz")
+md5sums=('06f71ca6d4216ace671d5e588ec85887')
-#package_python-pybluez() {
-# depends=('python' 'bluez-libs')
+package_python-pybluez() {
+ depends=('python' 'bluez-libs')
-# cd $srcdir/PyBluez-$pkgver
-# python setup.py install --root=$pkgdir
-# ln -s bluetooth/_bluetooth.so $pkgdir/usr/lib/python3.3/site-packages/_bluetooth.so
-#}
+ cd "$srcdir"/pybluez-$pkgver
+ python setup.py install --root="$pkgdir"
+# ln -s bluetooth/_bluetooth.so "$pkgdir"/usr/lib/python3.3/site-packages/_bluetooth.so
+}
package_python2-pybluez() {
depends=('python2' 'bluez-libs')
- cd $srcdir/PyBluez-$pkgver
- python2 setup.py install --root=$pkgdir
-# ln -s bluetooth/_bluetooth.so $pkgdir/usr/lib/python2.7/site-packages/_bluetooth.so
+ cd "$srcdir"/pybluez-$pkgver
+ python2 setup.py install --root="$pkgdir"
+# ln -s bluetooth/_bluetooth.so "$pkgdir"/usr/lib/python2.7/site-packages/_bluetooth.so
}
diff --git a/abs/core/python_modules/python-pybluez/__changelog b/abs/core/python_modules/python-pybluez/__changelog
deleted file mode 100644
index 488d3cf..0000000
--- a/abs/core/python_modules/python-pybluez/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: rm py 3 stuff
diff --git a/abs/core/python_modules/python-pycparser/PKGBUILD b/abs/core/python_modules/python-pycparser/PKGBUILD
index 6b36524..621a643 100644
--- a/abs/core/python_modules/python-pycparser/PKGBUILD
+++ b/abs/core/python_modules/python-pycparser/PKGBUILD
@@ -1,53 +1,59 @@
# $Id$
-# Maintainer: Felix Yan <felixonmars@gmail.com>
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
# Contributor: Justin Dray <justin@dray.be>
# Contributor: Alexander Rødseth <rodseth@gmail.com>
# Contributor: lang2 <wenzhi.liang@gmail.com>
pkgbase=python-pycparser
-pkgname=(python2-pycparser)
-pkgver=2.10
-pkgrel=4
+pkgname=(python-pycparser python2-pycparser)
+pkgver=2.18
+pkgrel=1
pkgdesc='C parser and AST generator written in Python'
url='https://github.com/eliben/pycparser'
-makedepends=('python2-ply' 'git')
+makedepends=('python-ply' 'python2-ply' 'python-setuptools' 'python2-setuptools')
arch=('any')
license=('BSD')
-source=('https://github.com/eliben/pycparser/archive/release_v2.10.zip')
-sha256sums=('1217244f882c330782f4762a1fb37cef21a929ce0123ac388e7e367c35ddbae3')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/eliben/pycparser/archive/release_v$pkgver.tar.gz")
+sha512sums=('76426b000ed601a8e90a1eda34374b62acdf51dcf2048881ca0d4ebc3310e25728905c2f6843dd363d497b7cf0fd8311dab6c0de74f4a5c2f25d3b1d488f082a')
prepare() {
- cp -r pycparser-release_v${pkgver}{,-py2}
+ cp -a pycparser-release_v$pkgver{,-py2}
}
build() {
-# cd pycparser-release_v${pkgver}
-# python setup.py build
-
-# cd pycparser
-# python _build_tables.py
+ cd "$srcdir"/pycparser-release_v$pkgver
+ python setup.py build
+ cd pycparser
+ python _build_tables.py
- cd "$srcdir/pycparser-release_v${pkgver}-py2"
+ cd "$srcdir"/pycparser-release_v$pkgver-py2
python2 setup.py build
-
cd pycparser
python2 _build_tables.py
}
-#package_python-pycparser() {
-# depends=('python-ply')
+check() {
+ cd "$srcdir"/pycparser-release_v$pkgver
+ python tests/all_tests.py
-# cd pycparser-release_v${pkgver}
+ cd "$srcdir"/pycparser-release_v$pkgver-py2
+ python2 tests/all_tests.py
+}
-# python setup.py install --root="$pkgdir" --optimize=1
-# install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
-#}
+package_python-pycparser() {
+ depends=('python-ply')
+
+ cd pycparser-release_v$pkgver
+
+ python setup.py install --root="$pkgdir" --optimize=1
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
package_python2-pycparser() {
depends=('python2-ply')
- cd pycparser-release_v${pkgver}-py2
+ cd pycparser-release_v$pkgver-py2
python2 setup.py install --root="$pkgdir" --optimize=1
- install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}
diff --git a/abs/core/python_modules/python-pycparser/__changelog b/abs/core/python_modules/python-pycparser/__changelog
deleted file mode 100644
index 488d3cf..0000000
--- a/abs/core/python_modules/python-pycparser/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: rm py 3 stuff
diff --git a/abs/core/python_modules/python-pycurl/PKGBUILD b/abs/core/python_modules/python-pycurl/PKGBUILD
index 10f640e..a7ef90a 100644
--- a/abs/core/python_modules/python-pycurl/PKGBUILD
+++ b/abs/core/python_modules/python-pycurl/PKGBUILD
@@ -1,31 +1,31 @@
# $Id$
# Maintainer: Felix Yan <felixonmars@archlinux.org>
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
-# Contributor: Angel 'angvp' Velasquez <angvp[at]archlinux.com.ve>
+# Contributor: Angel 'angvp' Velasquez <angvp[at]archlinux.com.ve>
-_pypiname=pycurl
-pkgbase=python-$_pypiname
-pkgname=('python2-pycurl')
-pkgver=7.43.0
+pkgbase=python-pycurl
+pkgname=('python-pycurl' 'python2-pycurl')
+pkgver=7.43.0.1
pkgrel=1
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://pycurl.sourceforge.net/"
license=('LGPL' 'MIT')
-makedepends=('python2' 'curl' 'git')
-checkdepends=('python2-bottle' 'python2-nose-show-skipped'
- 'vsftpd' 'python2-flaky' 'python2-pyflakes')
-source=("git+https://github.com/pycurl/pycurl.git#tag=REL_${pkgver//./_}")
-sha1sums=('SKIP')
+makedepends=('python' 'python2' 'curl')
+checkdepends=('python-bottle' 'python2-bottle' 'python-nose-show-skipped' 'python2-nose-show-skipped'
+ 'vsftpd' 'python-flaky' 'python2-flaky' 'python-pyflakes' 'python2-pyflakes')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/pycurl/pycurl/archive/REL_${pkgver//./_}.tar.gz")
+sha512sums=('304212ec704dda0f630abb67c14478098f8609c64a2ccc041e519af2237d803885a27d18aac1dd77ec7526cdc7bc1fab046f3be6c94b10a2e1ae43500d2c2ffe')
prepare() {
- cp -a $_pypiname{,-py2}
+ mv pycurl-REL_${pkgver//./_} pycurl-$pkgver
+ cp -a pycurl-$pkgver{,-py2}
- cd "$srcdir/$_pypiname"
+ cd "$srcdir"/pycurl-$pkgver
find . -name '*.py' -exec sed -i -e "s|#! /usr/bin/env python|#!/usr/bin/env python3|" {} +
sed -i 's/"share", "doc", PACKAGE/"share", "doc", "python-pycurl"/' setup.py
sed -e "s/nosetests/nosetests3/" -e "s/python/python3/" -i tests/run.sh
- cd "$srcdir/$_pypiname-py2"
+ cd "$srcdir"/pycurl-$pkgver-py2
find . -name '*.py' -exec sed -i -e "s|#! /usr/bin/env python|#!/usr/bin/env python2|" {} +
sed -i 's/"share", "doc", PACKAGE/"share", "doc", "python2-pycurl"/' setup.py
sed -e "s/nosetests/nosetests2/" -e "s/python/python2/" -i tests/run.sh
@@ -33,11 +33,11 @@ prepare() {
}
build() {
-# cd "$srcdir/$_pypiname"
-# make
-# python3 setup.py build --with-ssl
+ cd "$srcdir"/pycurl-$pkgver
+ make
+ python3 setup.py build --with-ssl
- cd "$srcdir/$_pypiname-py2"
+ cd "$srcdir"/pycurl-$pkgver-py2
make
python2 setup.py build --with-ssl
}
@@ -46,10 +46,10 @@ check() {
export PYCURL_VSFTPD_PATH=vsftpd
# We don't have HTTP2 enabled
- cd "$srcdir/$_pypiname"
- PYTHONPATH="$PWD/build/lib.linux-$CARCH-3.5:$PYTHONPATH" make test || warning "Tests failed"
+ cd "$srcdir"/pycurl-$pkgver
+ PYTHONPATH="$PWD/build/lib.linux-$CARCH-3.6:$PYTHONPATH" make test || warning "Tests failed"
- cd "$srcdir/$_pypiname-py2"
+ cd "$srcdir"/pycurl-$pkgver-py2
PYTHONPATH="$PWD/build/lib.linux-$CARCH-2.7:$PYTHONPATH" make PYTHON=python2 NOSETESTS=nosetests2 test || warning "Tests failed"
}
@@ -57,19 +57,16 @@ package_python-pycurl() {
pkgdesc="A Python 3.x interface to libcurl"
depends=('python' 'curl')
- cd $_pypiname
- python setup.py install -O1 --root="${pkgdir}"
- install -D -m644 COPYING-MIT "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ cd pycurl-$pkgver
+ python setup.py install -O1 --root="$pkgdir"
+ install -D -m644 COPYING-MIT "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}
package_python2-pycurl() {
pkgdesc="A Python 2.x interface to libcurl"
depends=('python2' 'curl')
- provides=('python-pycurl')
- replaces=('python-pycurl')
- conflicts=('python-pycurl')
- cd $_pypiname-py2
- python2 setup.py install -O1 --root="${pkgdir}"
- install -D -m644 COPYING-MIT "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ cd pycurl-$pkgver-py2
+ python2 setup.py install -O1 --root="$pkgdir"
+ install -D -m644 COPYING-MIT "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}
diff --git a/abs/core/python_modules/python-pycurl/__changelog b/abs/core/python_modules/python-pycurl/__changelog
deleted file mode 100644
index a7b93d7..0000000
--- a/abs/core/python_modules/python-pycurl/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: rm py 3 stuff
-
diff --git a/abs/core/python_modules/python-pygments/PKGBUILD b/abs/core/python_modules/python-pygments/PKGBUILD
index fa1e572..37fe169 100644
--- a/abs/core/python_modules/python-pygments/PKGBUILD
+++ b/abs/core/python_modules/python-pygments/PKGBUILD
@@ -2,51 +2,58 @@
# Maintainer: Evangelos Foutras <evangelos@foutrelis.com>
# Contributor: Timm Preetz <timm@preetz.us>
-pkgname=('python2-pygments')
-pkgver=1.6
-pkgrel=3
+pkgname=('python-pygments' 'python2-pygments' 'pygmentize')
+pkgver=2.2.0
+pkgrel=1
pkgdesc="Python syntax highlighter"
arch=('any')
url="http://pygments.org/"
license=('BSD')
-makedepends=('python2-setuptools')
+makedepends=('python-setuptools' 'python2-setuptools')
options=('!emptydirs')
-source=(http://pypi.python.org/packages/source/P/Pygments/Pygments-$pkgver.tar.gz)
-sha256sums=('799ed4caf77516e54440806d8d9cd82a7607dfdf4e4fb643815171a4b5c921c0')
-
-build() {
- cd "$srcdir"
-
- rm -rf python{2,3}-build
- for builddir in python2-build; do
- cp -r Pygments-$pkgver $builddir
- pushd $builddir
- ${builddir%-build} setup.py build
- popd
- done
-}
+source=(https://pypi.org/packages/source/P/Pygments/Pygments-$pkgver.tar.gz)
+sha256sums=('dbae1046def0efb574852fab9e90209b23f556367b5a320c0bcb871c77c3e8cc')
-#package_python-pygments() {
-# depends=('python-setuptools')
-# install=python-pygments.install
+package_python-pygments() {
+ depends=('python-setuptools')
-# cd "$srcdir/python3-build"
+ cd "$srcdir/Pygments-$pkgver"
-# python3 setup.py install --root="$pkgdir" -O1
+ python3 setup.py install --root="$pkgdir" -O1
- # pygmentize has been moved to the python2-pygments package
-# rm "$pkgdir/usr/bin/pygmentize"
+ # pygmentize is shipped in its own package
+ rm "$pkgdir/usr/bin/pygmentize"
-# install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
-#}
+ install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
package_python2-pygments() {
depends=('python2-setuptools')
+ install=python2-pygments.install
- cd "$srcdir/python2-build"
+ cd "$srcdir/Pygments-$pkgver"
python2 setup.py install --root="$pkgdir" -O1
+ # pygmentize is shipped in its own package
+ rm "$pkgdir/usr/bin/pygmentize"
+
+ install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
+
+package_pygmentize() {
+ depends=('python-pygments')
+
+ cd "$srcdir/Pygments-$pkgver"
+
+ python3 setup.py install --root="$pkgdir" -O1
+
+ # Remove all files except for usr/bin/pygmentize
+ find "$pkgdir" -type f -not -name pygmentize -delete
+
+ # Drop version dependency from console script
+ sed -i "s/Pygments==$pkgver/Pygments/g" "$pkgdir/usr/bin/pygmentize"
+
install -Dm644 external/pygments.bashcomp \
"$pkgdir/usr/share/bash-completion/completions/pygmentize"
diff --git a/abs/core/python_modules/python-pygments/__changelog b/abs/core/python_modules/python-pygments/__changelog
deleted file mode 100644
index 488d3cf..0000000
--- a/abs/core/python_modules/python-pygments/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: rm py 3 stuff
diff --git a/abs/core/python_modules/python-pygments/python-pygments.install b/abs/core/python_modules/python-pygments/python-pygments.install
deleted file mode 100644
index eab5811..0000000
--- a/abs/core/python_modules/python-pygments/python-pygments.install
+++ /dev/null
@@ -1,7 +0,0 @@
-post_upgrade() {
- if (($(vercmp $2 1.4-5) < 0)); then
- echo '/usr/bin/pygmentize has been moved to the python2-pygments package'
- fi
-}
-
-# vim:set ts=2 sw=2 et:
diff --git a/abs/core/python_modules/python-pygments/python2-pygments.install b/abs/core/python_modules/python-pygments/python2-pygments.install
new file mode 100644
index 0000000..3949246
--- /dev/null
+++ b/abs/core/python_modules/python-pygments/python2-pygments.install
@@ -0,0 +1,7 @@
+post_upgrade() {
+ if (($(vercmp $2 2.0.2-2) < 0)); then
+ echo ':: /usr/bin/pygmentize has been moved to the pygmentize package'
+ fi
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/python_modules/python-pyparsing/PKGBUILD b/abs/core/python_modules/python-pyparsing/PKGBUILD
index 510d8bf..97da919 100644
--- a/abs/core/python_modules/python-pyparsing/PKGBUILD
+++ b/abs/core/python_modules/python-pyparsing/PKGBUILD
@@ -7,13 +7,13 @@
# Contributor: Michael Krauss <hippodriver@gmx.net>
pkgname=python-pyparsing
-pkgname=('python2-pyparsing')
+pkgname=('python-pyparsing' 'python2-pyparsing')
pkgver=2.2.0
-pkgrel=1
+pkgrel=2
pkgdesc='General parsing module for Python'
arch=('any')
url='http://pyparsing.wikispaces.com/'
-makedepends=('python2-setuptools' 'subversion')
+makedepends=('python-setuptools' 'python2-setuptools' 'subversion')
license=('MIT')
source=("svn://svn.code.sf.net/p/pyparsing/code/tags/pyparsing_$pkgver")
sha256sums=('SKIP')
@@ -26,8 +26,8 @@ prepare() {
}
build() {
-# cd "$srcdir"/pyparsing_$pkgver/src
-# python setup.py build
+ cd "$srcdir"/pyparsing_$pkgver/src
+ python setup.py build
cd "$srcdir"/pyparsing_$pkgver-py2/src
python2 setup.py build
@@ -36,8 +36,8 @@ build() {
check() {
export LC_CTYPE=en_US.UTF-8
-# cd "$srcdir"/pyparsing_$pkgver/src
-# python unitTests.py
+ cd "$srcdir"/pyparsing_$pkgver/src
+ python unitTests.py
cd "$srcdir"/pyparsing_$pkgver-py2/src
python2 unitTests.py
diff --git a/abs/core/python_modules/python-pyparsing/__changelog b/abs/core/python_modules/python-pyparsing/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-pyparsing/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-pyparted/PKGBUILD b/abs/core/python_modules/python-pyparted/PKGBUILD
new file mode 100644
index 0000000..e5a46cb
--- /dev/null
+++ b/abs/core/python_modules/python-pyparted/PKGBUILD
@@ -0,0 +1,44 @@
+# Maintainer: Nikos Skalkotos <skalkoto at gmail dot com>
+# Contributor: Christian Hesse <mail@eworm.de>
+# Contributor: Dennis Værum <dennis.vaerum (at) gmail (dot) com>
+# Contributor: Achilleas Pipinellis <axilleas archlinux info>
+# Contributor: Stéphane Gaudreault <stephane@archlinux.org>
+# Contributor: kfgz <kfgz at interia pl>
+# Contributor: Gökmen Görgen <gkmngrgn at gmail dot com>
+# Contributor: Baurzhan Muftakhidinov <baurthefirst (at) gmail (dot) com>
+
+_pkgname=pyparted
+pkgbase=python-${_pkgname}
+pkgname=(python-${_pkgname} python2-${_pkgname})
+pkgver=3.11.1
+pkgrel=2
+pkgdesc="Python module for GNU parted"
+url="https://github.com/rhinstaller/pyparted"
+arch=('i686' 'x86_64')
+license=('GPL2')
+makedepends=('pkg-config' 'python' 'python2' 'parted>=3.0')
+conflicts=('pyparted-git')
+replaces=('pyparted')
+source=("https://github.com/dcantrell/${_pkgname}/archive/v${pkgver}.tar.gz")
+sha512sums=('4fe627693db803a82cacb37be8f2bee3527ee8d0d564229d7328a4e5c8dfa7cdd7a06c328ac7fa6b07c8f0c74d5db304410eaf312a60a0d494525d32c873fefd')
+
+package_python-pyparted() {
+ pkgdesc="Python module for GNU parted - python 3.x pkg"
+ depends=('python' 'parted>=3.0')
+
+ cd "${srcdir}/${_pkgname}-${pkgver}"
+ python3 setup.py build
+ python3 setup.py install --prefix=/usr --root="${pkgdir}" --optimize=1 --skip-build
+}
+
+package_python2-pyparted() {
+ pkgdesc="Python module for GNU parted - python 2.x pkg"
+ depends=('python2' 'parted>=3.0')
+ replaces=('python-parted')
+ conflicts=('python-parted')
+
+ cd "${srcdir}/${_pkgname}-${pkgver}"
+ python2 setup.py build
+ python2 setup.py install --prefix=/usr --root="${pkgdir}" --optimize=1 --skip-build
+}
+
diff --git a/abs/core/python_modules/python-pyrss2gen/PKGBUILD b/abs/core/python_modules/python-pyrss2gen/PKGBUILD
index 69258ca..e11d4ee 100644
--- a/abs/core/python_modules/python-pyrss2gen/PKGBUILD
+++ b/abs/core/python_modules/python-pyrss2gen/PKGBUILD
@@ -1,14 +1,14 @@
# Maintainer: Chris Warrick <aur@chriswarrick.com>
pkgbase=python-pyrss2gen
-pkgname=('python2-pyrss2gen')
+pkgname=('python-pyrss2gen' 'python2-pyrss2gen')
_pyname=PyRSS2Gen
pkgver=1.1
-pkgrel=6
+pkgrel=7
pkgdesc='A Python library for generating RSS 2.0 feeds.'
arch=('any')
url="http://www.dalkescientific.com/Python/PyRSS2Gen.html"
license=('BSD')
-makedepends=('python2' 'python2-setuptools')
+makedepends=('python' 'python2' 'python-setuptools' 'python2-setuptools')
options=(!emptydirs)
source=("http://www.dalkescientific.com/Python/${_pyname}-${pkgver}.tar.gz")
md5sums=("c56b9453d52b0a70be4f3e95112058aa")
diff --git a/abs/core/python_modules/python-pyrss2gen/__changelog b/abs/core/python_modules/python-pyrss2gen/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-pyrss2gen/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-pysocks/PKGBUILD b/abs/core/python_modules/python-pysocks/PKGBUILD
index e9e91f2..966eae2 100644
--- a/abs/core/python_modules/python-pysocks/PKGBUILD
+++ b/abs/core/python_modules/python-pysocks/PKGBUILD
@@ -3,25 +3,25 @@
# Contributor: Michael Schubert <mschu.dev at gmail>
pkgbase=python-pysocks
-pkgname=(python2-pysocks)
-pkgver=1.6.7
+pkgname=(python-pysocks python2-pysocks)
+pkgver=1.6.8
pkgrel=1
pkgdesc="SOCKS4, SOCKS5 or HTTP proxy (Anorov fork PySocks replaces socksipy)"
arch=('any')
license=('BSD')
url="https://github.com/Anorov/PySocks"
-makedepends=('python2-setuptools')
+makedepends=('python-setuptools' 'python2-setuptools')
checkdepends=('lib32-glibc' 'python2-twisted' 'python2-tornado')
source=("$pkgbase-$pkgver.tar.gz::https://github.com/Anorov/PySocks/archive/$pkgver.tar.gz")
-sha512sums=('6b670b2246c2c3c8d0b5424f6fb65cbab1d030d58b15f99db9eb232ead5e853c52af637f3d429e3fe88c70792f3b4913219b6694fa0e81318cdd40c41c1b17d6')
+sha512sums=('d6d28a77e1162dee2574c5ca69a01b94ebb3c0c5e9f875569ace2689ea31a4eebed1463472731635b242698a3a3215cadd79744c068610995d81f95ef94dd228')
prepare() {
cp -a PySocks-$pkgver{,-py2}
}
build() {
-# cd "$srcdir"/PySocks-$pkgver
-# python setup.py build
+ cd "$srcdir"/PySocks-$pkgver
+ python setup.py build
cd "$srcdir"/PySocks-$pkgver-py2
python2 setup.py build
@@ -41,8 +41,8 @@ check_disabled() {
python2 sockstest.py
-# cd "$srcdir"/PySocks-$pkgver/test
-# python sockstest.py
+ cd "$srcdir"/PySocks-$pkgver/test
+ python sockstest.py
./mocks shutdown
diff --git a/abs/core/python_modules/python-pysocks/__changelog b/abs/core/python_modules/python-pysocks/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-pysocks/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-pytest-forked/PKGBUILD b/abs/core/python_modules/python-pytest-forked/PKGBUILD
new file mode 100644
index 0000000..02d7776
--- /dev/null
+++ b/abs/core/python_modules/python-pytest-forked/PKGBUILD
@@ -0,0 +1,58 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgbase=python-pytest-forked
+pkgname=('python-pytest-forked' 'python2-pytest-forked')
+pkgver=0.2
+pkgrel=1
+pkgdesc='run tests in isolated forked subprocesses'
+arch=('any')
+license=('MIT')
+url='https://github.com/pytest-dev/pytest-forked'
+makedepends=('python-pytest' 'python2-pytest' 'python-setuptools-scm' 'python2-setuptools-scm')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/pytest-dev/pytest-forked/archive/v$pkgver.tar.gz")
+md5sums=('3c26f166ff2532c103a6572405db68b1')
+
+prepare() {
+ cp -a pytest-forked-$pkgver{,-py2}
+
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+}
+
+build() {
+ cd "$srcdir"/pytest-forked-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/pytest-forked-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ # Hack entry points by installing it
+
+ cd "$srcdir"/pytest-forked-$pkgver
+ python setup.py install --root="$PWD/tmp_install" --optimize=1
+ PYTHONPATH="$PWD/tmp_install/usr/lib/python3.6/site-packages:$PYTHONPATH" py.test
+
+ cd "$srcdir"/pytest-forked-$pkgver-py2
+ python2 setup.py install --root="$PWD/tmp_install" --optimize=1
+ PYTHONPATH="$PWD/tmp_install/usr/lib/python2.7/site-packages:$PYTHONPATH" py.test2
+}
+
+package_python-pytest-forked() {
+ depends=('python-pytest')
+
+ cd pytest-forked-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+package_python2-pytest-forked() {
+ depends=('python2-pytest')
+
+ cd pytest-forked-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/python_modules/python-pytest-runner/PKGBUILD b/abs/core/python_modules/python-pytest-runner/PKGBUILD
index 5d106ce..8928aa0 100644
--- a/abs/core/python_modules/python-pytest-runner/PKGBUILD
+++ b/abs/core/python_modules/python-pytest-runner/PKGBUILD
@@ -2,14 +2,14 @@
# Maintainer: Felix Yan <felixonmars@archlinux.org>
pkgbase=python-pytest-runner
-pkgname=('python2-pytest-runner')
+pkgname=('python-pytest-runner' 'python2-pytest-runner')
pkgver=2.11.1
-pkgrel=1
+pkgrel=2
pkgdesc="Invoke py.test as distutils command with dependency resolution"
arch=('any')
license=('MIT')
url="https://github.com/pytest-dev/pytest-runner"
-makedepends=('python2-pytest' 'python2-setuptools-scm' 'git')
+makedepends=('python-pytest' 'python-setuptools-scm' 'python2-pytest' 'python2-setuptools-scm' 'git')
source=("git+https://github.com/pytest-dev/pytest-runner.git#tag=$pkgver")
sha512sums=('SKIP')
@@ -18,17 +18,17 @@ prepare() {
}
build() {
-# cd "$srcdir"/pytest-runner
-# python setup.py build
+ cd "$srcdir"/pytest-runner
+ python setup.py build
cd "$srcdir"/pytest-runner-py2
python2 setup.py build
}
check() {
-# cd "$srcdir"/pytest-runner
-# python setup.py egg_info
-# PYTHONPATH="$PWD" pytest
+ cd "$srcdir"/pytest-runner
+ python setup.py egg_info
+ PYTHONPATH="$PWD" pytest
cd "$srcdir"/pytest-runner-py2
python2 setup.py egg_info
diff --git a/abs/core/python_modules/python-pytest-runner/__changelog b/abs/core/python_modules/python-pytest-runner/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-pytest-runner/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-pytest-xdist/PKGBUILD b/abs/core/python_modules/python-pytest-xdist/PKGBUILD
new file mode 100644
index 0000000..5fd48ca
--- /dev/null
+++ b/abs/core/python_modules/python-pytest-xdist/PKGBUILD
@@ -0,0 +1,58 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgbase=python-pytest-xdist
+pkgname=('python-pytest-xdist' 'python2-pytest-xdist')
+pkgver=1.22.2
+pkgrel=1
+pkgdesc='py.test xdist plugin for distributed testing and loop-on-failing modes'
+arch=('any')
+license=('MIT')
+url='https://bitbucket.org/pytest-dev/pytest-xdist'
+makedepends=('python-pytest' 'python2-pytest' 'python-setuptools_scm' 'python2-setuptools_scm'
+ 'python-execnet' 'python2-execnet' 'python-pytest-forked' 'python2-pytest-forked')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/pytest-dev/pytest-xdist/archive/v$pkgver.tar.gz")
+sha512sums=('22de52876bdbcfdeb5ee14d4159ed8535d3f3afa1c2d67116f4d249cced24627163b34f3e1629b2198eb6f5672e4a7db7c864f6e45a37759be01ab2753a20dce')
+
+prepare() {
+ cp -a pytest-xdist-$pkgver{,-py2}
+
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
+}
+
+build() {
+ cd "$srcdir"/pytest-xdist-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/pytest-xdist-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ # Hack entry points by installing it
+
+ cd "$srcdir"/pytest-xdist-$pkgver
+ python setup.py install --root="$PWD/tmp_install" --optimize=1
+ PYTHONPATH="$PWD/tmp_install/usr/lib/python3.6/site-packages:$PYTHONPATH" py.test
+
+ cd "$srcdir"/pytest-xdist-$pkgver-py2
+ python2 setup.py install --root="$PWD/tmp_install" --optimize=1
+ PYTHONPATH="$PWD/tmp_install/usr/lib/python2.7/site-packages:$PYTHONPATH" py.test2
+}
+
+package_python-pytest-xdist() {
+ depends=('python-pytest-forked' 'python-execnet')
+
+ cd pytest-xdist-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+package_python2-pytest-xdist() {
+ depends=('python2-pytest-forked' 'python2-execnet')
+
+ cd pytest-xdist-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/python_modules/python-pytest/PKGBUILD b/abs/core/python_modules/python-pytest/PKGBUILD
index d8db835..0a9faed 100644
--- a/abs/core/python_modules/python-pytest/PKGBUILD
+++ b/abs/core/python_modules/python-pytest/PKGBUILD
@@ -1,56 +1,63 @@
# $Id$
-# Maintainer: Felix Yan <felixonmars@gmail.com>
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
# Contributor: Felix Kaiser <felix.kaiser@fxkr.net>
pkgbase=python-pytest
-pkgname=('python2-pytest')
-pkgver=2.5.2
-pkgrel=3
+pkgname=('python-pytest' 'python2-pytest')
+pkgver=3.5.0
+pkgrel=1
pkgdesc="Simple powerful testing with Python"
arch=('any')
license=('MIT')
url="http://pytest.org/"
-makedepends=('python2-setuptools' 'python2-py')
-checkdepends=('lsof' 'python2-nose' 'twisted' 'python2-mock' 'python2-yaml' 'python2-pexpect')
-source=("http://pypi.python.org/packages/source/p/pytest/pytest-$pkgver.tar.gz")
+makedepends=('python-setuptools' 'python2-setuptools' 'python-py' 'python2-py' 'python-pluggy'
+ 'python2-pluggy' 'python-attrs' 'python2-attrs' 'python-more-itertools'
+ 'python2-more-itertools' 'python2-funcsigs')
+checkdepends=('lsof' 'python-nose' 'python2-nose' 'python-mock' 'python2-mock' 'python-tox'
+ 'python2-tox' 'python-yaml' 'python2-yaml' 'python-pytest-xdist'
+ 'python2-pytest-xdist' 'python-twisted' 'python2-twisted' 'python-requests'
+ 'python2-requests' 'python-hypothesis' 'python2-hypothesis')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/pytest-dev/pytest/archive/$pkgver.tar.gz")
+sha512sums=('3e67f411b45f0cce6921d65926b3c6b7bcf6169a8e96eb8f74465d795a49d690c7027db3cb3147868ce238d5b416a6e87de27728598e4a526bf6bbb7a5506913')
prepare() {
- cp -r pytest-${pkgver}{,-py2}
+ cp -a pytest-$pkgver{,-py2}
+
+ export SETUPTOOLS_SCM_PRETEND_VERSION=$pkgver
}
build() {
-# cd "$srcdir/pytest-${pkgver}"
-# python setup.py build
+ cd "$srcdir"/pytest-$pkgver
+ python setup.py build
- cd "$srcdir/pytest-${pkgver}-py2"
+ cd "$srcdir"/pytest-$pkgver-py2
python2 setup.py build
}
check() {
-# cd "$srcdir/pytest-${pkgver}"
-# python setup.py test
+ cd "$srcdir"/pytest-$pkgver
+ python setup.py test
- cd "$srcdir/pytest-${pkgver}-py2"
- # Tests fail with 2.5.2: https://bitbucket.org/hpk42/pytest/issue/493/example-failure-in-pytests-own-testcase
+ cd "$srcdir"/pytest-$pkgver-py2
python2 setup.py test
}
-#package_python-pytest() {
-# depends=('python' 'python-py' 'python-setuptools')
+package_python-pytest() {
+ depends=('python-py' 'python-setuptools' 'python-pluggy' 'python-attrs' 'python-more-itertools')
-# cd pytest-${pkgver}
-# python setup.py install --root="${pkgdir}" --optimize=1
-# install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
-#}
+ cd pytest-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
package_python2-pytest() {
- depends=('python2' 'python2-py' 'python2-setuptools')
+ depends=('python2-py' 'python2-setuptools' 'python2-pluggy' 'python2-attrs'
+ 'python2-more-itertools' 'python2-funcsigs')
- cd pytest-${pkgver}-py2
- python2 setup.py install --root="${pkgdir}" --optimize=1
- install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ cd pytest-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
- mv "${pkgdir}/usr/bin/py.test" "${pkgdir}/usr/bin/py.test2"
+ mv "$pkgdir"/usr/bin/py.test{,2}
+ mv "$pkgdir"/usr/bin/pytest{,2}
}
-
-sha512sums=('d291f229f4c0a2132c437dde6ca04bf87701fe270c2fa314104badad9221ab866251890c66387d23fefd3ab1f928ee3b290dac21e3d62e7660af8903e85a2f36')
diff --git a/abs/core/python_modules/python-pytest/__changelog b/abs/core/python_modules/python-pytest/__changelog
deleted file mode 100644
index 488d3cf..0000000
--- a/abs/core/python_modules/python-pytest/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: rm py 3 stuff
diff --git a/abs/core/python_modules/python-pytz/PKGBUILD b/abs/core/python_modules/python-pytz/PKGBUILD
index 3e77d2a..fca20e0 100644
--- a/abs/core/python_modules/python-pytz/PKGBUILD
+++ b/abs/core/python_modules/python-pytz/PKGBUILD
@@ -3,16 +3,15 @@
# Contributor: Douglas Soares de Andrade <dsa@aur.archlinux.org>
# Contributor: William Rea <sillywilly@gmail.com>
-pkgname=('python2-pytz')
-pkgver=2017.2
+pkgname=('python-pytz' 'python2-pytz')
+pkgver=2018.3
pkgrel=1
arch=('any')
url="http://pypi.python.org/pypi/pytz"
license=("MIT")
-makedepends=('python2')
-source=(https://pypi.python.org/packages/a4/09/c47e57fc9c7062b4e83b075d418800d322caa87ec0ac21e6308bd3a2d519/pytz-2017.2.zip{,.asc})
-md5sums=('f89bde8a811c8a1a5bac17eaaa94383c'
- 'SKIP')
+makedepends=('python' 'python2')
+source=("https://pypi.io/packages/source/p/pytz/pytz-${pkgver}.tar.gz")
+md5sums=('abb07c09c79f78d7c04f222a550c99ef')
validpgpkeys=('C7ECC365AB6F255E1EB9BA1701FA998FBAC6374A')
build(){
@@ -23,8 +22,7 @@ build(){
check(){
cd $srcdir/pytz-$pkgver/pytz/tests
-# python3 test_tzinfo.py
-
+ python3 test_tzinfo.py
python2 test_tzinfo.py
}
@@ -50,7 +48,7 @@ package_python2-pytz(){
cd $srcdir/pytz2-$pkgver
# python 2 fix
- sed -i 's_#!/usr/bin/env python_#!/usr/bin/env python2_' pytz/tzfile.py
+# sed -i 's_#!/usr/bin/env python_#!/usr/bin/env python2_' pytz/tzfile.py
python2 setup.py install --root="$pkgdir/"
diff --git a/abs/core/python_modules/python-pytz/__changelog b/abs/core/python_modules/python-pytz/__changelog
deleted file mode 100644
index c6e1e55..0000000
--- a/abs/core/python_modules/python-pytz/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: don't build py 3 stuff
diff --git a/abs/core/python_modules/python-rebulk/PKGBUILD b/abs/core/python_modules/python-rebulk/PKGBUILD
index c7338bf..b7473a8 100644
--- a/abs/core/python_modules/python-rebulk/PKGBUILD
+++ b/abs/core/python_modules/python-rebulk/PKGBUILD
@@ -1,15 +1,15 @@
# Maintainer: Sebastien Leduc <sebastien@sleduc.fr>
-pkgname=('python2-rebulk')
+pkgname=('python-rebulk' 'python2-rebulk')
pkgbase='python-rebulk'
_guser='Toilal'
_gproject="rebulk"
pkgver=0.9.0
-pkgrel=1
+pkgrel=2
pkgdesc=" Define simple search patterns in bulk to perform advanced matching on any string. "
arch=("any")
url="https://github.com/Toilal/rebulk"
license=('MIT')
-makedepends=('python2' 'python2-setuptools' 'python2-pytest-runner')
+makedepends=('python' 'python2' 'python-setuptools' 'python2-setuptools' 'python-pytest-runner' 'python2-pytest-runner')
options=(!emptydirs)
source=("https://github.com/${_guser}/${_gproject}/archive/${pkgver}.tar.gz")
md5sums=('7f76cd95e6ca9219202aeaa9b1b7b7c8')
diff --git a/abs/core/python_modules/python-rebulk/__changelog b/abs/core/python_modules/python-rebulk/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-rebulk/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-regex/PKGBUILD b/abs/core/python_modules/python-regex/PKGBUILD
index 13c1ca0..e07a3c2 100644
--- a/abs/core/python_modules/python-regex/PKGBUILD
+++ b/abs/core/python_modules/python-regex/PKGBUILD
@@ -1,46 +1,68 @@
# Maintainer: Jelle van der Waa <jelle@archlinux.org>
+# Maintainer: Eli Schwartz <eschwartz@archlinux.org>
# Contributor: Nikola Milinković <nikmil@gmail.com>
# Submitter: Xiao-Long Chen <chenxiaolong@cxl.epac.to>
_pkgbase=regex
pkgbase=python-regex
-pkgname=('python2-regex')
-#pkgname=python-regex
-pkgver=2017.07.11
+pkgname=('python-regex' 'python2-regex')
+pkgname=python-regex
+pkgver=2018.02.21
pkgrel=1
pkgdesc="Alternative python regular expression module."
-arch=('x86_64' 'i686')
+arch=('x86_64')
url="https://bitbucket.org/mrabarnett/mrab-regex"
license=('Python')
-makedepends=('python2-setuptools')
+makedepends=('python-setuptools' 'python2-setuptools')
options=(!emptydirs)
source=(https://pypi.io/packages/source/r/${_pkgbase}/${_pkgbase}-${pkgver}.tar.gz)
-sha256sums=('dbda8bdc31a1c85445f1a1b29d04abda46e5c690f8f933a9cc3a85a358969616')
+sha256sums=('b44624a38d07d3c954c84ad302c29f7930f4bf01443beef5589e9157b14e2a29')
+
+build() {
+ cd "regex-${pkgver}"
+
+ python setup.py build
+ python2 setup.py build
+}
+
+check() {
+ cd "regex-${pkgver}"
+
+ pushd build/lib.linux-${CARCH}-3*/
+ python test_regex.py
+ popd
+
+ pushd build/lib.linux-${CARCH}-2*/
+ python2 test_regex.py
+ popd
+}
package_python2-regex() {
depends=('python2')
- conflicts=('python2-regex-hg')
pkgdesc="Alternative python regular expression module. (python2 version)"
cd "regex-${pkgver}"
- python2 setup.py install --root="${pkgdir}/" --optimize=1
+ python2 setup.py install --root="${pkgdir}/" --optimize=1 --skip-build
install -v -m755 -d "${pkgdir}/usr/share/doc/python2-regex"
install -v -m644 ./docs/Features.html "${pkgdir}/usr/share/doc/python2-regex/"
install -v -m644 ./docs/Features.rst "${pkgdir}/usr/share/doc/python2-regex/"
install -v -m644 ./docs/UnicodeProperties.txt "${pkgdir}/usr/share/doc/python2-regex/"
+
+ sed -n '1,/^$/p' regex_2/regex.py | install -Dm644 /dev/stdin "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
}
package_python-regex() {
depends=('python')
- conflicts=('python-regex-hg')
pkgdesc="Alternative python regular expression module. (python3 version)"
cd "regex-${pkgver}"
- python setup.py install --root="${pkgdir}/" --optimize=1
+ python setup.py install --root="${pkgdir}/" --optimize=1 --skip-build
install -v -m755 -d "${pkgdir}/usr/share/doc/python-regex"
install -v -m644 ./docs/Features.html "${pkgdir}/usr/share/doc/python-regex/"
install -v -m644 ./docs/Features.rst "${pkgdir}/usr/share/doc/python-regex/"
install -v -m644 ./docs/UnicodeProperties.txt "${pkgdir}/usr/share/doc/python-regex/"
+
+ sed -n '1,/^$/p' regex_3/regex.py | install -Dm644 /dev/stdin "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
}
diff --git a/abs/core/python_modules/python-regex/__changelog b/abs/core/python_modules/python-regex/__changelog
deleted file mode 100644
index c6e1e55..0000000
--- a/abs/core/python_modules/python-regex/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: don't build py 3 stuff
diff --git a/abs/core/python_modules/python-requests-cache/PKGBUILD b/abs/core/python_modules/python-requests-cache/PKGBUILD
index b7d9937..39784ed 100644
--- a/abs/core/python_modules/python-requests-cache/PKGBUILD
+++ b/abs/core/python_modules/python-requests-cache/PKGBUILD
@@ -2,16 +2,17 @@
pkgbase=python-requests-cache
_pyname=requests-cache
-pkgname=('python2-requests-cache')
-makedepends=('python2' 'python2-setuptools')
-pkgver=0.4.12
-pkgrel=2
+pkgname=('python-requests-cache' 'python2-requests-cache')
+makedepends=('python' 'python2' 'python-setuptools' 'python2-setuptools'
+ 'python-requests' 'python2-requests')
+pkgver=0.4.13
+pkgrel=1
pkgdesc="Persistent cache for requests library"
arch=('any')
url="https://github.com/reclosedev/requests-cache"
license=('BSD')
source=("${_pyname}-${pkgver}.tar.gz::https://github.com/reclosedev/${_pyname}/archive/v${pkgver}.tar.gz")
-sha512sums=('06d563d59c24f311209b81beb96130b75d1e849e0bb94ad636b3ac269eed7c89fdddfed8da86560473c4463425ea98953d30fb3da05efd614907855f130587fc')
+sha512sums=('54d814c9c4da1b1fa6f4ec124faee7e74e7ca52bc90ae7c948f19e9cb7657fe2b41f5de6c5fafe259526312d82dc5efd81ad01a741a66baf12ea2a358334f912')
package_python-requests-cache() {
depends=('python')
diff --git a/abs/core/python_modules/python-requests-cache/__changelog b/abs/core/python_modules/python-requests-cache/__changelog
deleted file mode 100644
index 60db758..0000000
--- a/abs/core/python_modules/python-requests-cache/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: remove py3 stuff
diff --git a/abs/core/python_modules/python-requests/PKGBUILD b/abs/core/python_modules/python-requests/PKGBUILD
index d5e1fb4..e791c7b 100644
--- a/abs/core/python_modules/python-requests/PKGBUILD
+++ b/abs/core/python_modules/python-requests/PKGBUILD
@@ -3,25 +3,26 @@
# Contributor: Massimiliano Torromeo <massimiliano.torromeo@gmail.com>
pkgbase=python-requests
-pkgname=('python2-requests')
-pkgver=2.18.1
+pkgname=('python-requests' 'python2-requests')
+pkgver=2.18.4
pkgrel=1
pkgdesc="Python HTTP for Humans"
arch=('any')
url="http://python-requests.org"
license=('Apache')
-makedepends=('python2-setuptools' 'python2-chardet'
- 'python2-urllib3' 'python2-idna')
-checkdepends=('python2-pytest-httpbin'
- 'python2-pytest-mock' 'python2-pysocks')
+makedepends=('python-setuptools' 'python2-setuptools' 'python-chardet' 'python2-chardet'
+ 'python-urllib3' 'python2-urllib3' 'python-idna' 'python2-idna')
+checkdepends=('python-pytest-httpbin' 'python2-pytest-httpbin' 'python-pytest-mock'
+ 'python2-pytest-mock' 'python-pysocks' 'python2-pysocks')
source=("$pkgbase-$pkgver.tar.gz::https://github.com/kennethreitz/requests/archive/v$pkgver.tar.gz"
certs.patch)
-sha512sums=('a80e0487b4b729e69522817bc2eec2a9c5f1df34df385581b3e937c2409e0fcb4e1f9b4794b198c8b8a57fc05b1bc513fc70d41b324ae251de0fa9bc7c9e6947'
+sha512sums=('8ca20fe18d13b8c62977be0c51617f2ae8618d3d002ad4dc554362828855db7359274efbff0cd13e8c5699508913e91205cffcf306221a70321e74ac10b2d4d7'
'424a3bb01b23409284f6c9cd2bc22d92df31b85cfd96e1d1b16b5d68adeca670dfed4fff7977d8b10980102b0f780eacc465431021fcd661f3a17168a02a39a3')
prepare() {
cd "$srcdir"/requests-$pkgver
- sed -i '/certifi/d' setup.py
+ sed -e '/certifi/d' \
+ -i setup.py
patch -p1 -i "$srcdir"/certs.patch
cd "$srcdir"
@@ -30,16 +31,16 @@ prepare() {
}
build() {
-# cd "$srcdir"/requests-$pkgver
-# python setup.py build
+ cd "$srcdir"/requests-$pkgver
+ python setup.py build
cd "$srcdir"/requests-$pkgver-py2
python2 setup.py build
}
check() {
-# cd "$srcdir"/requests-$pkgver
-# py.test tests
+ cd "$srcdir"/requests-$pkgver
+ py.test tests
cd "$srcdir"/requests-$pkgver-py2
py.test2 tests
diff --git a/abs/core/python_modules/python-requests/__changelog b/abs/core/python_modules/python-requests/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-requests/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-rpyc/PKGBUILD b/abs/core/python_modules/python-rpyc/PKGBUILD
index 55fcea4..63d9987 100644
--- a/abs/core/python_modules/python-rpyc/PKGBUILD
+++ b/abs/core/python_modules/python-rpyc/PKGBUILD
@@ -1,10 +1,10 @@
# Maintainer: Sebastien Leduc <sebastien AT sleduc DOT fr>
-pkgname=('python2-rpyc')
+pkgname=('python-rpyc' 'python2-rpyc')
pkgbase='python-rpyc'
_realname=rpyc
pkgver=3.4.0
-pkgrel=1
+pkgrel=2
pkgdesc="Remote Python Call (RPyC), a transparent and symmetric RPC library"
url="http://rpyc.readthedocs.org"
arch=('any')
diff --git a/abs/core/python_modules/python-rpyc/__changelog b/abs/core/python_modules/python-rpyc/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-rpyc/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-service-identity/PKGBUILD b/abs/core/python_modules/python-service-identity/PKGBUILD
new file mode 100644
index 0000000..6575c5c
--- /dev/null
+++ b/abs/core/python_modules/python-service-identity/PKGBUILD
@@ -0,0 +1,55 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgbase=python-service-identity
+pkgname=('python-service-identity' 'python2-service-identity')
+pkgver=17.0.0
+pkgrel=1
+pkgdesc="Service identity verification for pyOpenSSL"
+arch=('any')
+license=('MIT')
+url="http://pypi.python.org/pypi/service_identity"
+makedepends=('python-pyopenssl' 'python2-pyopenssl' 'python-pyasn1' 'python2-pyasn1'
+ 'python-setuptools' 'python2-setuptools' 'python-pyasn1-modules' 'python2-pyasn1-modules'
+ 'python-attrs' 'python2-attrs' 'python-idna' 'python2-idna')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/pyca/service_identity/archive/$pkgver.tar.gz")
+sha512sums=('3824cb473420a5ce6779fd35ff931189ed68286ad1f7f2936e3253a785cd76a77bbb95210a4a5fde1b1ef0c8d9c762b8e89ab44dce60ee43e34b2553ab78b5aa')
+
+prepare() {
+ cp -a service_identity-$pkgver{,-py2}
+}
+
+build() {
+ cd "$srcdir"/service_identity-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/service_identity-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir"/service_identity-$pkgver
+ python setup.py pytest
+
+ cd "$srcdir"/service_identity-$pkgver-py2
+ python2 setup.py pytest
+}
+
+package_python-service-identity() {
+ depends=('python-pyopenssl' 'python-pyasn1' 'python-pyasn1-modules' 'python-attrs')
+ optdepends=('python-idna: for Internationalized Domain Names support')
+
+ cd service_identity-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1 --skip-build
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+package_python2-service-identity() {
+ depends=('python2-pyopenssl' 'python2-pyasn1' 'python2-pyasn1-modules' 'python2-attrs')
+ optdepends=('python2-idna: for Internationalized Domain Names support')
+
+ cd service_identity-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1 --skip-build
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
diff --git a/abs/core/python_modules/python-setuptools-git/PKGBUILD b/abs/core/python_modules/python-setuptools-git/PKGBUILD
new file mode 100644
index 0000000..d91d3df
--- /dev/null
+++ b/abs/core/python_modules/python-setuptools-git/PKGBUILD
@@ -0,0 +1,54 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgbase=python-setuptools-git
+pkgname=('python-setuptools-git' 'python2-setuptools-git')
+pkgver=1.2
+pkgrel=1
+pkgdesc='Setuptools revision control system plugin for Git'
+arch=('any')
+license=('BSD')
+url='https://github.com/msabramo/setuptools-git'
+makedepends=('python-setuptools' 'python2-setuptools' 'git')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/msabramo/setuptools-git/archive/$pkgver.tar.gz")
+sha512sums=('368d56003a440c5be00685356b0aef97fdea4a84a6d4e56d59964833b55de4916353e061f2eebf2de4dac2df4783a0a1b2d58ba88e1a93979b38a2b62900c1c1')
+
+prepare() {
+ cp -a setuptools-git-$pkgver{,-py2}
+}
+
+build() {
+ cd "$srcdir"/setuptools-git-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/setuptools-git-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ git config --global user.email "deedbeaf"
+
+ cd "$srcdir"/setuptools-git-$pkgver
+ python setup.py test
+
+ cd "$srcdir"/setuptools-git-$pkgver-py2
+ python2 setup.py test
+}
+
+package_python-setuptools-git() {
+ depends=('python-setuptools' 'git')
+
+ cd setuptools-git-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.txt
+}
+
+package_python2-setuptools-git() {
+ depends=('python2-setuptools' 'git')
+
+ cd setuptools-git-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.txt
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/python_modules/python-setuptools-scm/PKGBUILD b/abs/core/python_modules/python-setuptools-scm/PKGBUILD
index c874b8b..d4d0da6 100644
--- a/abs/core/python_modules/python-setuptools-scm/PKGBUILD
+++ b/abs/core/python_modules/python-setuptools-scm/PKGBUILD
@@ -3,17 +3,17 @@
# Contributor: Hugo Osvaldo Barrera <hugo@barrera.io>
pkgbase=python-setuptools-scm
-pkgname=(python2-setuptools-scm)
-pkgver=1.15.6
+pkgname=(python-setuptools-scm python2-setuptools-scm)
+pkgver=1.17.0
pkgrel=1
pkgdesc="Handles managing your python package versions in scm metadata."
arch=('any')
url="https://github.com/pypa/setuptools_scm"
license=('MIT')
-makedepends=('python2-setuptools')
-checkdepends=('python2-pytest' 'mercurial' 'git' 'python2-pip')
+makedepends=('python-setuptools' 'python2-setuptools')
+checkdepends=('python-pytest' 'python2-pytest' 'mercurial' 'git' 'python-pip' 'python2-pip')
source=("$pkgbase-$pkgver.tar.gz::https://github.com/pypa/setuptools_scm/archive/v$pkgver.tar.gz")
-sha512sums=('c97669232a492e19bdb073c48f9e792ee029ee2af2191da65461436e2a66a3adf5ad490f0a1429c33a5574d4afeb0d54afedfe78f581fff890ecfc787d08ef5a')
+sha512sums=('8846a4c0b8a901108ee3444f1682235a68d74dec6468f5f32af6502c11e9a7aedf6f81744d9fdd4d71d59b4f9ddc1e9685ca7e2084ebb247800e6d03d7e15899')
prepare() {
cp -a setuptools_scm-$pkgver{,-py2}
@@ -22,9 +22,9 @@ prepare() {
}
build() {
-# cd "$srcdir"/setuptools_scm-$pkgver
-# python setup.py build
-# python setup.py egg_info
+ cd "$srcdir"/setuptools_scm-$pkgver
+ python setup.py build
+ python setup.py egg_info
cd "$srcdir"/setuptools_scm-$pkgver-py2
python2 setup.py build
@@ -34,9 +34,9 @@ build() {
check() {
# Hack entry points by installing it
-# cd "$srcdir"/setuptools_scm-$pkgver
-# python setup.py install --root="$PWD/tmp_install" --optimize=1
-# SETUPTOOLS_SCM_PRETEND_VERSION= PYTHONPATH="$PWD/tmp_install/usr/lib/python3.6/site-packages:$PYTHONPATH" py.test
+ cd "$srcdir"/setuptools_scm-$pkgver
+ python setup.py install --root="$PWD/tmp_install" --optimize=1
+ SETUPTOOLS_SCM_PRETEND_VERSION= PYTHONPATH="$PWD/tmp_install/usr/lib/python3.6/site-packages:$PYTHONPATH" py.test
cd "$srcdir"/setuptools_scm-$pkgver-py2
python2 setup.py install --root="$PWD/tmp_install" --optimize=1
diff --git a/abs/core/python_modules/python-setuptools-scm/__changelog b/abs/core/python_modules/python-setuptools-scm/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-setuptools-scm/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-setuptools/PKGBUILD b/abs/core/python_modules/python-setuptools/PKGBUILD
index 31a941e..c90e33c 100644
--- a/abs/core/python_modules/python-setuptools/PKGBUILD
+++ b/abs/core/python_modules/python-setuptools/PKGBUILD
@@ -3,48 +3,55 @@
# Maintainer: Felix Yan <felixonmars@archlinux.org>
pkgbase=python-setuptools
-pkgname=('python2-setuptools')
-pkgver=36.2.0
+pkgname=('python-setuptools' 'python2-setuptools')
+pkgver=39.0.1
pkgrel=1
epoch=1
pkgdesc="Easily download, build, install, upgrade, and uninstall Python packages"
arch=('any')
license=('PSF')
url="http://pypi.python.org/pypi/setuptools"
-makedepends=('python2-packaging' 'python2-appdirs'
- 'python2-pip')
-checkdepends=('python2-pytest-runner'
- 'python2-pytest-flake8' 'python2-backports.unittest_mock' 'git')
+makedepends=('python-packaging' 'python2-packaging' 'python-appdirs' 'python2-appdirs')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner' 'python-pytest-flake8'
+ 'python2-pytest-flake8' 'python-mock' 'python2-mock' 'python-pytest-fixture-config'
+ 'python2-pytest-fixture-config' 'python-pytest-virtualenv' 'python2-pytest-virtualenv'
+ 'python-wheel' 'python2-wheel' 'python-pip' 'python2-pip' 'git')
source=("$pkgbase-$pkgver.tar.gz::https://github.com/pypa/setuptools/archive/v$pkgver.tar.gz")
-sha512sums=('579e63feb9f5ea33e29f4ae3a2736a2cfd18e83927775a56553dbe34bcfa32f325457204333d4f183759dbcd57e4ad7f8b166fcfbf626db597b18e14bbcd9ea4')
+sha512sums=('34df8f10e89825975c82059c759690a2cc1486fc84c71a76875b92c2452529fbdd628e11e3043e479ea3f031af18b37a37b86d2a8d2505c300188eccdc109332')
prepare() {
- # Don't download and install deps
- sed -i '/pip.main(args)/d' setuptools-$pkgver/bootstrap.py
-
- rm -r setuptools-$pkgver/pkg_resources/_vendor
+ rm -r setuptools-$pkgver/{pkg_resources,setuptools}/_vendor
# Remove post-release tag since we are using stable tags
sed -e '/tag_build = .post/d' \
-e '/tag_date = 1/d' \
-i setuptools-$pkgver/setup.cfg
+ # 'Clean' installation is expected to fail since we removed bundled packages
+ sed -i '/^def test_clean_env_install/i import pytest\n\n@pytest.mark.xfail' setuptools-$pkgver/setuptools/tests/test_virtualenv.py
+
+ # Tests failed. Importing an unbundled new setuptools in a virtualenv does not work, but this won't
+ # affect normal virtualenv usage (which don't have to import the unbundled setuptools in *current*
+ # dir.
+ sed -e '/^def test_pip_upgrade_from_source/i @pytest.mark.xfail' \
+ -e '/^def test_test_command_install_requirements/i @pytest.mark.xfail' \
+ -i setuptools-$pkgver/setuptools/tests/test_virtualenv.py
+
cp -a setuptools-$pkgver{,-py2}
-# cd "$srcdir"/setuptools-$pkgver
-# sed -i -e "s|^#\!.*/usr/bin/env python|#!/usr/bin/env python3|" setuptools/command/easy_install.py
+ cd "$srcdir"/setuptools-$pkgver
+ sed -i -e "s|^#\!.*/usr/bin/env python|#!/usr/bin/env python3|" setuptools/command/easy_install.py
cd "$srcdir"/setuptools-$pkgver-py2
sed -i -e "s|^#\!.*/usr/bin/env python|#!/usr/bin/env python2|" setuptools/command/easy_install.py
- sed -i -e "s|'pip'|'pip2'|" setuptools/tests/{test_develop.py,test_namespaces.py}
export SETUPTOOLS_INSTALL_WINDOWS_SPECIFIC_FILES=0
}
build() {
-# cd "$srcdir"/setuptools-$pkgver
-# python bootstrap.py
-# python setup.py build
+ cd "$srcdir"/setuptools-$pkgver
+ python bootstrap.py
+ python setup.py build
cd "$srcdir"/setuptools-$pkgver-py2
python2 bootstrap.py
@@ -58,8 +65,8 @@ check() { (
# https://github.com/pypa/setuptools/pull/810
export PYTHONDONTWRITEBYTECODE=1
-# cd "$srcdir"/setuptools-$pkgver
-# python setup.py pytest
+ cd "$srcdir"/setuptools-$pkgver
+ python setup.py pytest
cd "$srcdir"/setuptools-$pkgver-py2
python2 setup.py pytest
diff --git a/abs/core/python_modules/python-setuptools/__changelog b/abs/core/python_modules/python-setuptools/__changelog
deleted file mode 100644
index 9715c21..0000000
--- a/abs/core/python_modules/python-setuptools/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD - comment out all python 3 stuff and only build for py 2
diff --git a/abs/core/python_modules/python-simplejson/PKGBUILD b/abs/core/python_modules/python-simplejson/PKGBUILD
index d5273f5..0e1a323 100644
--- a/abs/core/python_modules/python-simplejson/PKGBUILD
+++ b/abs/core/python_modules/python-simplejson/PKGBUILD
@@ -5,33 +5,55 @@
# Contributor: David Moore <davidm@sjsoft.com>
pkgbase=python-simplejson
-pkgname=('python2-simplejson')
-pkgver=3.8.2
+pkgname=('python-simplejson' 'python2-simplejson')
+pkgver=3.13.2
pkgrel=1
pkgdesc='Simple, fast, extensible JSON encoder/decoder for Python'
license=('MIT')
-arch=('x86_64' 'i686')
+arch=('x86_64')
url='https://github.com/simplejson/simplejson'
-makedepends=('python2-setuptools' 'git')
-source=("git://github.com/simplejson/simplejson.git#tag=v$pkgver")
-md5sums=('SKIP')
+makedepends=('python-setuptools' 'python2-setuptools')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/simplejson/simplejson/archive/v$pkgver.tar.gz")
+sha512sums=('b1d6c68e1a6c967dfb695d0cd3d8dca19d458b650ddc0c8273328378eab7f52b801ee29431a6b3bde16608e886259267f41cbefabb7fbe7adb1e243479f91132')
+
+prepare() {
+ cp -a simplejson-$pkgver{,-py2}
+}
+
+build() {
+ cd "$srcdir"/simplejson-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/simplejson-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir"/simplejson-$pkgver
+ python setup.py pytest
+
+ cd "$srcdir"/simplejson-$pkgver-py2
+ python2 setup.py pytest
+}
package_python-simplejson() {
depends=('python')
- cd simplejson
+ cd simplejson-$pkgver
python setup.py install --root="$pkgdir"
- install -Dm644 "$srcdir/simplejson/LICENSE.txt" \
- "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+ install -Dm644 "$srcdir"/simplejson-$pkgver/LICENSE.txt \
+ "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}
package_python2-simplejson() {
depends=('python2')
- cd simplejson
+ cd simplejson-$pkgver-py2
python2 setup.py install --root="$pkgdir"
- install -Dm644 "$srcdir/simplejson/LICENSE.txt" \
- "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+ install -Dm644 "$srcdir"/simplejson-$pkgver/LICENSE.txt \
+ "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}
# vim:set ts=2 sw=2 et:
+
diff --git a/abs/core/python_modules/python-simplejson/__changelog b/abs/core/python_modules/python-simplejson/__changelog
deleted file mode 100644
index 488d3cf..0000000
--- a/abs/core/python_modules/python-simplejson/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: rm py 3 stuff
diff --git a/abs/core/python_modules/python-six/PKGBUILD b/abs/core/python_modules/python-six/PKGBUILD
index 33093f7..56ca2de 100644
--- a/abs/core/python_modules/python-six/PKGBUILD
+++ b/abs/core/python_modules/python-six/PKGBUILD
@@ -4,28 +4,28 @@
# Contributer: Allan McRae <allan@archlinux.org>
pkgbase=python-six
-pkgname=('python2-six')
-pkgver=1.10.0
-pkgrel=3
+pkgname=('python2-six' 'python-six')
+pkgver=1.11.0
+pkgrel=1
pkgdesc="Python 2 and 3 compatibility utilities"
arch=('any')
url="http://pypi.python.org/pypi/six/"
license=('MIT')
-makedepends=('python2-setuptools')
-checkdepends=('python2-pytest' 'tk')
+makedepends=('python-setuptools' 'python2-setuptools')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner' 'tk')
source=("https://pypi.io/packages/source/s/six/six-$pkgver.tar.gz")
-md5sums=('34eed507548117b2ab523ab14b2f8b55')
+sha512sums=('33f246a2e987141e17e5edad9d3537cf3aba0cbdd0bc2a907ea52ce0d674b1474f29c3dd5cc26605fd960396054b189ca5f501708333cad234c223131483fe24')
build() {
cp -a six-$pkgver{,-py2}
}
check() {
-# cd "$srcdir"/six-$pkgver
-# py.test
+ cd "$srcdir"/six-$pkgver
+ python setup.py pytest
cd "$srcdir"/six-$pkgver-py2
- py.test2
+ python2 setup.py pytest
}
package_python-six() {
diff --git a/abs/core/python_modules/python-six/__changelog b/abs/core/python_modules/python-six/__changelog
deleted file mode 100644
index 488d3cf..0000000
--- a/abs/core/python_modules/python-six/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: rm py 3 stuff
diff --git a/abs/core/python_modules/python-smmap/PKGBUILD b/abs/core/python_modules/python-smmap/PKGBUILD
new file mode 100644
index 0000000..bb42b21
--- /dev/null
+++ b/abs/core/python_modules/python-smmap/PKGBUILD
@@ -0,0 +1,57 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Maintainer: NicoHood <archlinux {cat} nicohood {dog} de>
+# Contributor: Carl George < arch at cgtx dot us >
+
+pkgbase=python-smmap
+_pypiname=smmap2
+pkgname=("python-smmap" "python2-smmap")
+pkgver=2.0.3
+pkgrel=1
+pkgdesc="A pure git implementation of a sliding window memory map manager"
+arch=("any")
+url="https://github.com/gitpython-developers/smmap"
+license=("BSD")
+makedepends=("python-setuptools" "python2-setuptools")
+checkdepends=("python-nose" "python2-nose")
+source=("${pkgbase}-${pkgver}.tar.gz::https://pypi.org/packages/source/s/${_pypiname}/${_pypiname}-${pkgver}.tar.gz")
+# "${pkgbase}-${pkgver}.tar.gz.asc::https://pypi.org/packages/source/s/${_pypiname}/${_pypiname}-${pkgver}.tar.gz.asc")
+sha512sums=('f5623247fbdb6b0e94bbfe7104ffd84ee4563a0c32781256d92d46fd23e05280d7a0e3952a573b6834e253e9b68175784babc36d91ab61edf6d0d072830e1fde')
+# 'SKIP')
+validpgpkeys=('4477ADC5977D7C60D2A7E3789FEE1C6A3B07188F') # Sebastian Thiel (In Rust I trust!) <byronimo@gmail.com>
+
+prepare() {
+ cp -a "${srcdir}/${_pypiname}-${pkgver}"{,-py2}
+}
+
+build() {
+ cd "${srcdir}/${_pypiname}-${pkgver}"
+ python setup.py build
+
+ cd "${srcdir}/${_pypiname}-${pkgver}-py2"
+ python2 setup.py build
+}
+
+check() {
+ cd "${srcdir}/${_pypiname}-${pkgver}"
+ nosetests3
+
+ cd "${srcdir}/${_pypiname}-${pkgver}-py2"
+ nosetests2
+}
+
+package_python-smmap() {
+ depends=("python")
+
+ cd "${srcdir}/${_pypiname}-${pkgver}"
+ python setup.py install --skip-build --root="${pkgdir}" --optimize=1
+ install -Dm644 "LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
+
+package_python2-smmap() {
+ depends=("python2")
+
+ cd "${srcdir}/${_pypiname}-${pkgver}-py2"
+ python2 setup.py install --skip-build --root="${pkgdir}" --optimize=1
+ install -Dm644 "LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
diff --git a/abs/core/python_modules/python-snowballstemmer/PKGBUILD b/abs/core/python_modules/python-snowballstemmer/PKGBUILD
new file mode 100644
index 0000000..676c0e8
--- /dev/null
+++ b/abs/core/python_modules/python-snowballstemmer/PKGBUILD
@@ -0,0 +1,47 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: xantares
+
+pkgbase=python-snowballstemmer
+pkgname=('python-snowballstemmer' 'python2-snowballstemmer')
+pkgver=1.2.1
+pkgrel=2
+arch=('any')
+pkgdesc="Snowball stemming library collection for Python"
+url='https://github.com/shibukawa/snowball_py'
+license=('BSD')
+makedepends=('python' 'python2')
+source=("https://pypi.python.org/packages/source/s/snowballstemmer/snowballstemmer-${pkgver}.tar.gz")
+md5sums=('643b019667a708a922172e33a99bf2fa')
+
+prepare() {
+ cp -a snowballstemmer-${pkgver}{,-py2}
+}
+
+build() {
+ cd "$srcdir"/snowballstemmer-${pkgver}
+ python setup.py build
+
+ cd "$srcdir"/snowballstemmer-${pkgver}-py2
+ python2 setup.py build
+}
+
+package_python-snowballstemmer() {
+ depends=('python')
+ optdepends=('python-pystemmer: for improved performance')
+
+ cd "$srcdir"/snowballstemmer-${pkgver}
+ python setup.py install --root="$pkgdir" --optimize=1
+
+ install -Dm644 LICENSE.rst "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.rst
+}
+
+package_python2-snowballstemmer() {
+ depends=('python2')
+ optdepends=('python2-pystemmer: for improved performance')
+
+ cd "$srcdir"/snowballstemmer-${pkgver}-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+
+ install -Dm644 LICENSE.rst "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.rst
+}
diff --git a/abs/core/python_modules/python-sphinx-alabaster-theme/PKGBUILD b/abs/core/python_modules/python-sphinx-alabaster-theme/PKGBUILD
new file mode 100644
index 0000000..d3203be
--- /dev/null
+++ b/abs/core/python_modules/python-sphinx-alabaster-theme/PKGBUILD
@@ -0,0 +1,43 @@
+# $Id$
+# Maintainer: Johannes Löthberg <johannes@kyriasis.com>
+# Contributor: xantares
+
+pkgbase=python-sphinx-alabaster-theme
+pkgname=(python-sphinx-alabaster-theme python2-sphinx-alabaster-theme)
+pkgver=0.7.10
+pkgrel=1
+
+pkgdesc="Sphinx default theme"
+url='https://github.com/bitprophet/alabaster'
+arch=('any')
+license=('custom:BSD')
+
+makedepends=('python-setuptools' 'python2-setuptools')
+
+source=("https://pypi.org/packages/source/a/alabaster/alabaster-$pkgver.tar.gz")
+
+md5sums=('7934dccf38801faa105f6e7b4784f493')
+
+build() {
+ cp -r alabaster-"$pkgver" alabaster-"$pkgver"-py2
+
+ cd alabaster-"$pkgver"
+ python setup.py build
+
+ cd "$srcdir"/alabaster-"$pkgver"-py2
+ python2 setup.py build
+}
+
+package_python-sphinx-alabaster-theme() {
+ cd alabaster-"$pkgver"
+ python setup.py install --root="$pkgdir" --optimize=1
+
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+}
+
+package_python2-sphinx-alabaster-theme() {
+ cd alabaster-"$pkgver"-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE
+}
diff --git a/abs/core/python_modules/python-sphinx/PKGBUILD b/abs/core/python_modules/python-sphinx/PKGBUILD
index b4db703..cab258e 100644
--- a/abs/core/python_modules/python-sphinx/PKGBUILD
+++ b/abs/core/python_modules/python-sphinx/PKGBUILD
@@ -1,27 +1,62 @@
# $Id$
-# Maintainer: Sébastien Luttringer
+# Maintainer: Johannes Löthberg <johannes@kyriasis.com>
+# Contributor: Sébastien Luttringer
# Contributor: Angel Velasquez <angvp@archlinux.org>
# Contributor: Fabio Volpe <volpefabio@gmail.com>
pkgbase=python-sphinx
-pkgname=('python2-sphinx')
-pkgver=1.2.2
-pkgrel=4
+pkgname=('python-sphinx' 'python2-sphinx')
+pkgver=1.7.0
+pkgrel=1
+
arch=('any')
url='http://sphinx.pocoo.org/'
-license=('GPL')
+license=('BSD')
+
makedepends=(
+ 'python-setuptools'
+ 'python-docutils'
+ 'python-jinja'
+ 'python-pygments'
+ 'python-six'
+ 'python-imagesize'
+ 'python-sphinxcontrib-websupport'
+ 'python-sqlalchemy'
+ 'python-whoosh'
'python2-setuptools'
'python2-docutils'
'python2-jinja'
'python2-pygments'
+ 'python2-six'
+ 'python2-imagesize'
+ 'python2-sphinxcontrib-websupport'
+ 'python2-sqlalchemy'
+ 'python2-whoosh'
+ 'python2-typing'
)
+
checkdepends=(
- 'python2-nose'
'texlive-latexextra'
+ 'python-nose' 'python2-nose'
+ 'python-snowballstemmer' 'python2-snowballstemmer'
+ 'python-babel' 'python2-babel'
+ 'python-sphinx-alabaster-theme' 'python2-sphinx-alabaster-theme'
+ 'python-sphinx_rtd_theme' 'python2-sphinx_rtd_theme'
+ 'python-mock' 'python2-mock'
+ 'python-html5lib' 'python2-html5lib'
+ 'python-requests' 'python2-requests'
+ 'python2-pytest' 'python-pytest'
+ 'python2-enum34'
+ 'python-sphinxcontrib-websupport' 'python2-sphinxcontrib-websupport'
+ 'imagemagick' 'librsvg'
)
-source=("http://pypi.python.org/packages/source/S/Sphinx/Sphinx-$pkgver.tar.gz")
-md5sums=('3dc73ccaa8d0bfb2d62fb671b1f7e8a4')
+
+source=("https://pypi.org/packages/source/S/Sphinx/Sphinx-$pkgver.tar.gz"{,.asc})
+
+validpgpkeys=('8A11B79A5D0D749A66F0A030102C2C17498D6B9E'
+ 'E9BEABB07E7B9CC3F56E62C91425F8CE5EBA0E07')
+md5sums=('7d6d8226148378875986310aea68702e'
+ 'SKIP')
prepare() {
# souce duplication is required because makefile modify source code
@@ -31,46 +66,85 @@ prepare() {
find Sphinx-${pkgver}2 -type f -exec \
sed -i '1s,^#! \?/usr/bin/\(env \|\)python$,#!/usr/bin/python2,' {} \;
# change sphinx-binaries name in source code
-# find Sphinx-${pkgver}2 -type f -name '*.py' -exec \
-# sed -ri 's,(sphinx-(:?build|apidoc|autogen|quickstart)),\12,' {} \;
+ find Sphinx-${pkgver}2 -type f -name '*.py' -exec \
+ sed -ri 's,(sphinx-(:?build|apidoc|autogen|quickstart)),\12,' {} \;
}
build() {
-# msg2 'Python 3 version'
-# cd "$srcdir"/Sphinx-$pkgver
-# make PYTHON=python3 build
+ msg2 'Python 3 version'
+ cd "$srcdir"/Sphinx-$pkgver
+ make PYTHON=python3 build
+
msg2 'Python 2 version'
cd "$srcdir"/Sphinx-${pkgver}2
make PYTHON=python2 build
}
-check() {
+#check() {
# msg2 'Python 3 version'
# cd "$srcdir"/Sphinx-$pkgver
-# make PYTHON=python3 test
-# rm -r build/lib/tests
- msg2 'Python 2 version'
- cd "$srcdir"/Sphinx-${pkgver}2
- make PYTHON=python2 test
- rm -r build/lib/tests
-}
+# LC_ALL="en_US.UTF-8" make PYTHON=python3 test
+# rm -r tests
+#
+# msg2 'Python 2 version'
+# cd "$srcdir"/Sphinx-${pkgver}2
+# LC_ALL="en_US.UTF-8" make PYTHON=python2 test
+# rm -r tests
+#}
-#package_python-sphinx() {
-# pkgdesc='Python3 documentation generator'
-# depends=('python-jinja' 'python-pygments' 'python-docutils')
-# optdepends=('texlive-latexextra: for generation of PDF documentation')
+package_python-sphinx() {
+ pkgdesc='Python3 documentation generator'
+ depends=(
+ 'python-setuptools'
+ 'python-jinja'
+ 'python-pygments'
+ 'python-docutils'
+ 'python-sphinx_rtd_theme'
+ 'python-sphinx-alabaster-theme'
+ 'python-babel'
+ 'python-snowballstemmer'
+ 'python-six'
+ 'python-imagesize'
+ 'python-requests'
+ 'python-sphinxcontrib-websupport'
+ 'python-sqlalchemy'
+ 'python-whoosh'
+ )
+ optdepends=('texlive-latexextra: for generation of PDF documentation'
+ 'imagemagick: ext.imageconverter')
-# cd Sphinx-$pkgver
-# python setup.py install --root="$pkgdir" --optimize=1
-#}
+ cd Sphinx-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
+
+ install -Dm644 "$srcdir"/Sphinx-$pkgver/LICENSE "$pkgdir"/usr/share/licenses/python-sphinx/LICENSE
+}
package_python2-sphinx() {
pkgdesc='Python2 documentation generator'
- depends=('python2-jinja' 'python2-pygments' 'python2-docutils')
- optdepends=('texlive-latexextra: for generation of PDF documentation')
+ depends=(
+ 'python2-setuptools'
+ 'python2-jinja'
+ 'python2-pygments'
+ 'python2-docutils'
+ 'python2-sphinx_rtd_theme'
+ 'python2-sphinx-alabaster-theme'
+ 'python2-babel'
+ 'python2-snowballstemmer'
+ 'python2-six'
+ 'python2-imagesize'
+ 'python2-requests'
+ 'python2-sphinxcontrib-websupport'
+ 'python2-sqlalchemy'
+ 'python2-whoosh'
+ 'python2-typing'
+ )
+ optdepends=('texlive-latexextra: for generation of PDF documentation'
+ 'imagemagick: ext.imageconverter')
cd Sphinx-${pkgver}2
python2 setup.py install --root="$pkgdir" --optimize=1
+
+ install -Dm644 "$srcdir"/Sphinx-$pkgver/LICENSE "$pkgdir"/usr/share/licenses/python2-sphinx/LICENSE
}
# vim:set ts=2 sw=2 et:
diff --git a/abs/core/python_modules/python-sphinx/__changelog b/abs/core/python_modules/python-sphinx/__changelog
deleted file mode 100644
index 488d3cf..0000000
--- a/abs/core/python_modules/python-sphinx/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: rm py 3 stuff
diff --git a/abs/core/python_modules/python-sphinx_rtd_theme/PKGBUILD b/abs/core/python_modules/python-sphinx_rtd_theme/PKGBUILD
new file mode 100644
index 0000000..a446326
--- /dev/null
+++ b/abs/core/python_modules/python-sphinx_rtd_theme/PKGBUILD
@@ -0,0 +1,45 @@
+# $Id$
+# Maintainer: Johannes Löthberg <johannes@kyriasis.com>
+# Contributor: eolianoe <eolianoe [at] gmail [DoT] com>
+# Contributor: Romain Schmitz <slopjong .at. slopjong .dot. de>
+
+pkgbase=python-sphinx_rtd_theme
+pkgname=('python-sphinx_rtd_theme' 'python2-sphinx_rtd_theme')
+pkgver=0.2.4
+pkgrel=1
+
+pkgdesc="Python Sphinx Read The Docs Theme"
+url='https://github.com/rtfd/sphinx_rtd_theme/'
+arch=('any')
+license=('MIT')
+
+makedepends=('python-setuptools' 'python2-setuptools')
+
+source=("https://pypi.org/packages/source/s/sphinx_rtd_theme/sphinx_rtd_theme-$pkgver.tar.gz")
+
+sha256sums=('2df74b8ff6fae6965c527e97cca6c6c944886aae474b490e17f92adfbe843417')
+
+build() {
+ cp -r sphinx_rtd_theme-$pkgver sphinx_rtd_theme-$pkgver-py2
+
+ cd sphinx_rtd_theme-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/sphinx_rtd_theme-$pkgver-py2
+ python2 setup.py build
+}
+
+package_python-sphinx_rtd_theme() {
+ cd sphinx_rtd_theme-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
+
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+package_python2-sphinx_rtd_theme() {
+ cd sphinx_rtd_theme-${pkgver}-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
diff --git a/abs/core/python_modules/python-sphinxcontrib-websupport/PKGBUILD b/abs/core/python_modules/python-sphinxcontrib-websupport/PKGBUILD
new file mode 100644
index 0000000..f6be9ed
--- /dev/null
+++ b/abs/core/python_modules/python-sphinxcontrib-websupport/PKGBUILD
@@ -0,0 +1,37 @@
+# Maintainer: Johannes Löthberg <johannes@kyriasis.com
+
+pkgbase=python-sphinxcontrib-websupport
+pkgname=(python-sphinxcontrib-websupport python2-sphinxcontrib-websupport)
+pkgver=1.0.1
+pkgrel=1
+pkgdesc="Sphinx API for Web Apps"
+arch=('any')
+url="http://www.sphinx-doc.org/"
+license=('BSD')
+makedepends=('python' 'python-setuptools' 'python2' 'python2-setuptools')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/sphinx-doc/sphinxcontrib-websupport/archive/$pkgver.tar.gz")
+sha512sums=('06ee11f2b2212333a6d01201824879e5b5931e85db5f20badd62bc28ddba88ce7c0b3f0b7ce4f4e3d43cb8f66173b31d10e1264f0acc48bb2db7385f50c68313')
+
+prepare() {
+ cp -a sphinxcontrib-websupport-$pkgver{,-py2}
+}
+
+build() {
+ cd "$srcdir"/sphinxcontrib-websupport-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/sphinxcontrib-websupport-$pkgver-py2
+ python2 setup.py build
+}
+
+package_python-sphinxcontrib-websupport() {
+ cd "$srcdir"/sphinxcontrib-websupport-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
+}
+
+package_python2-sphinxcontrib-websupport() {
+ cd "$srcdir"/sphinxcontrib-websupport-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/python_modules/python-sqlalchemy/PKGBUILD b/abs/core/python_modules/python-sqlalchemy/PKGBUILD
index 33c6497..097dbeb 100644
--- a/abs/core/python_modules/python-sqlalchemy/PKGBUILD
+++ b/abs/core/python_modules/python-sqlalchemy/PKGBUILD
@@ -4,18 +4,17 @@
# Contributor: Sébastien Luttringer <seblu@aur.archlinux.org>
pkgbase=python-sqlalchemy
-pkgname=('python2-sqlalchemy')
-#pkgname=('python2-sqlalchemy')
-pkgver=1.1.11
+pkgname=('python-sqlalchemy' 'python2-sqlalchemy')
+pkgver=1.2.4
pkgrel=1
-arch=('i686' 'x86_64') # python2 package contain .so
+arch=('x86_64') # python2 package contain .so
url="http://www.sqlalchemy.org/"
license=('MIT')
-makedepends=('python2-setuptools')
-checkdepends=('python2-pytest-runner' 'python2-pytest-xdist' 'python2-mock')
+makedepends=('python-setuptools' 'python2-setuptools')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner' 'python-pytest-xdist' 'python2-pytest-xdist' 'python-mock' 'python2-mock')
source=("https://pypi.io/packages/source/S/SQLAlchemy/SQLAlchemy-$pkgver.tar.gz"{,.asc})
validpgpkeys=('83AF7ACE251C13E6BB7DEFBD330239C1C4DAFEE1')
-sha512sums=('322ec0baa6360099eb000ddd36e28267f64019eb72201ecf60fc478591679e0dd5d2b1139a93036d2ec0165c588ea5836a67ed21dbf7c423b64432589bd73de4'
+sha512sums=('a12d17f222cc5fc4360c439e19cae67a013af07e2c22b1f55511c4862d718578249e6bf83151eefe35957e530dbf18a565b08cded3a5e45dd21103201f4d24e8'
'SKIP')
prepare() {
@@ -23,16 +22,16 @@ prepare() {
}
build() {
-# cd "$srcdir"/SQLAlchemy-$pkgver
-# python setup.py build
+ cd "$srcdir"/SQLAlchemy-$pkgver
+ python setup.py build
cd "$srcdir"/SQLAlchemy2-$pkgver
python2 setup.py build
}
check() {
-# cd "$srcdir"/SQLAlchemy-$pkgver
-# python setup.py pytest
+ cd "$srcdir"/SQLAlchemy-$pkgver
+ python setup.py pytest
cd "$srcdir"/SQLAlchemy2-$pkgver
python2 setup.py pytest
diff --git a/abs/core/python_modules/python-sqlalchemy/__changelog b/abs/core/python_modules/python-sqlalchemy/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-sqlalchemy/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-termcolor/PKGBUILD b/abs/core/python_modules/python-termcolor/PKGBUILD
new file mode 100644
index 0000000..bced757
--- /dev/null
+++ b/abs/core/python_modules/python-termcolor/PKGBUILD
@@ -0,0 +1,29 @@
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Maintainer: Tim Hatch <tim@timhatch.com>
+
+pkgbase=python-termcolor
+pkgname=('python-termcolor' 'python2-termcolor')
+pkgver=1.1.0
+pkgrel=5
+pkgdesc="ANSII Color formatting for output in terminal"
+arch=('any')
+license=('GPL')
+url="http://pypi.python.org/pypi/termcolor"
+makedepends=('python' 'python2')
+source=(https://pypi.python.org/packages/source/t/termcolor/termcolor-$pkgver.tar.gz)
+sha256sums=('1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b')
+
+package_python-termcolor() {
+ depends=('python')
+
+ cd "$srcdir"/termcolor-$pkgver
+ python setup.py install --root="$pkgdir"
+}
+
+package_python2-termcolor() {
+ depends=('python2')
+
+ cd "$srcdir"/termcolor-$pkgver
+ python2 setup.py install --root="$pkgdir"
+}
diff --git a/abs/core/python_modules/python-tox/PKGBUILD b/abs/core/python_modules/python-tox/PKGBUILD
new file mode 100644
index 0000000..88d466b
--- /dev/null
+++ b/abs/core/python_modules/python-tox/PKGBUILD
@@ -0,0 +1,70 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Thomas Weißschuh <thomas t-8ch.de>
+# Contributor: George Brooke <george+arch.aur@george-brooke.co.uk>
+# Contributor: Sebastian Wiesner <lunaryorn googlemail com>
+
+pkgbase=python-tox
+pkgname=(python-tox python2-tox)
+pkgver=2.9.1
+pkgrel=1
+pkgdesc='Python virtualenv management and testing tool'
+arch=('any')
+url='https://tox.readthedocs.io'
+license=('GPL2')
+makedepends=('python-setuptools' 'python2-setuptools' 'python-py' 'python2-py' 'python-virtualenv'
+ 'python2-virtualenv' 'python-pluggy' 'python2-pluggy')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner')
+source=("https://pypi.io/packages/source/t/tox/tox-$pkgver.tar.gz")
+sha512sums=('ff19b2bb7ac963379f1cccd4973ad9eb4dabfbda976cde7caba50ad010d8fa57c1cba91d63e3e0512e44cc7d350bc9270fbd9b30db1bd55f7d9c239e7623d066')
+
+prepare() {
+ find tox-$pkgver -name "*.pyc" -delete
+
+ cp -a tox-$pkgver{,-py2}
+}
+
+build() {
+ cd "$srcdir"/tox-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/tox-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ # Hack entry points
+
+ (
+ cd "$srcdir"/tox-$pkgver
+ virtualenv "$srcdir/pyvenv" --system-site-packages
+ . "$srcdir/pyvenv/bin/activate"
+ python setup.py install
+ python setup.py pytest
+ )
+
+ (
+ cd "$srcdir"/tox-$pkgver-py2
+ virtualenv2 "$srcdir/pyvenv-py2" --system-site-packages
+ . "$srcdir/pyvenv-py2/bin/activate"
+ python setup.py install
+ python setup.py pytest
+ )
+}
+
+package_python-tox() {
+ depends=('python-py' 'python-virtualenv' 'python-setuptools' 'python-pluggy')
+
+ cd "$srcdir"/tox-$pkgver
+ python setup.py install --root="$pkgdir" --optimize=1
+ ln -s tox "$pkgdir"/usr/bin/tox3
+}
+
+package_python2-tox() {
+ depends=('python2-py' 'python2-virtualenv' 'python2-setuptools' 'python2-pluggy')
+
+ cd "$srcdir"/tox-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+ mv "$pkgdir"/usr/bin/tox{,2}
+ mv "$pkgdir"/usr/bin/{tox-quickstart,tox2-quickstart}
+}
diff --git a/abs/core/python_modules/python-tzlocal/PKGBUILD b/abs/core/python_modules/python-tzlocal/PKGBUILD
index b4e6905..1501907 100644
--- a/abs/core/python_modules/python-tzlocal/PKGBUILD
+++ b/abs/core/python_modules/python-tzlocal/PKGBUILD
@@ -1,45 +1,71 @@
-# Maintainer: eolianoe <eolianoe At GoogleMAIL DoT com>
+# Maintainer: David Runge <dave@sleepmap.de>
+# Contributor: eolianoe <eolianoe At GoogleMAIL DoT com>
# Contributor: Étienne Deparis <etienne [at] depar.is>
# Contributor: Patrice Peterson <runiq at archlinux dot us>
# Contributor: Patrick Burroughs <celticmadman at gmail dot com>
-_pyname=tzlocal
-pkgbase=python-${_pyname}
-pkgname=("python2-${_pyname}")
-pkgver=1.4
-pkgrel=1
+_name=tzlocal
+pkgbase=python-tzlocal
+pkgname=("python-tzlocal" "python2-tzlocal")
+pkgver=1.5.1
+pkgrel=3
pkgdesc="Tzinfo object for the local timezone"
arch=('any')
-url='https://pypi.python.org/pypi/tzlocal'
-license=('custom')
-makedepends=('python2-setuptools')
-source=("${_pyname}-${pkgver}.tar.gz::https://github.com/regebro/${_pyname}/archive/${pkgver}.tar.gz")
-sha256sums=('d3cdf502a4ae4b566abf948924e837b6c354aaed082eb1326c6c9043824cb4a7')
+url="https://pypi.python.org/pypi/tzlocal"
+license=('MIT')
+makedepends=('python-setuptools' 'python2-setuptools')
+checkdepends=('python-mock' 'python2-mock')
+source=("${_name}-${pkgver}.tar.gz::https://github.com/regebro/${_name}/archive/${pkgver}.tar.gz")
+sha512sums=('30dd1e3973c6fa0e0bde5a0365223506032177e96f997116edfe1fbdcff25cd735c90f205f0b95359a095749f1d1ac077903201533d460a72277891174cc1975')
prepare() {
- cp -a ${_pyname}-${pkgver}{,-py2}
+ mv -v "${_name}-${pkgver}" "${pkgname[0]}-${pkgver}"
+ cp -a "${pkgname}-${pkgver}" "${pkgname[1]}-${pkgver}"
}
build() {
-# cd "${srcdir}/${_pyname}-$pkgver"
-# python setup.py build
-
- cd "${srcdir}/${_pyname}-$pkgver-py2"
+ cd "${pkgname[0]}-${pkgver}"
+ python setup.py build
+ cd ../"${pkgname[1]}-${pkgver}"
python2 setup.py build
}
-package_python2-tzlocal() {
- depends=('python2-pytz')
- cd "${srcdir}/${_pyname}-${pkgver}-py2"
- python2 setup.py install --root="${pkgdir}" --optimize=1 --skip-build
- install -Dm0644 LICENSE.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+check() {
+ cd "${pkgname[0]}-${pkgver}"
+ python setup.py test
+ cd ../"${pkgname[1]}-${pkgver}"
+ python2 setup.py test
}
package_python-tzlocal() {
depends=('python-pytz')
- cd "${srcdir}/${_pyname}-${pkgver}"
- python setup.py install --root="${pkgdir}" --optimize=1 --skip-build
- install -Dm0644 LICENSE.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ cd "${pkgname[0]}-${pkgver}"
+ python setup.py install --skip-build \
+ --optimize=1 \
+ --prefix=/usr \
+ --root="${pkgdir}"
+ # license
+ install -vDm644 LICENSE.txt \
+ "${pkgdir}/usr/share/licenses/${pkgname[0]}/LICENSE"
+ # docs
+ install -t "${pkgdir}/usr/share/doc/${pkgname[0]}" \
+ -vDm644 {CHANGES.txt,README.rst}
+}
+
+package_python2-tzlocal() {
+ depends=('python2-pytz')
+ cd "${pkgname[1]}-${pkgver}"
+ python2 setup.py install --skip-build \
+ --optimize=1 \
+ --prefix=/usr \
+ --root="${pkgdir}"
+ # license
+ install -vDm644 LICENSE.txt \
+ "${pkgdir}/usr/share/licenses/${pkgname[1]}/LICENSE"
+ # docs
+ install -t "${pkgdir}/usr/share/doc/${pkgname[1]}" \
+ -vDm644 {CHANGES.txt,README.rst}
}
# vim:set ts=2 sw=2 et:
+
diff --git a/abs/core/python_modules/python-tzlocal/__changelog b/abs/core/python_modules/python-tzlocal/__changelog
deleted file mode 100644
index c6e1e55..0000000
--- a/abs/core/python_modules/python-tzlocal/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: don't build py 3 stuff
diff --git a/abs/core/python_modules/python-urllib3/PKGBUILD b/abs/core/python_modules/python-urllib3/PKGBUILD
index 3f881d2..e4af9f4 100644
--- a/abs/core/python_modules/python-urllib3/PKGBUILD
+++ b/abs/core/python_modules/python-urllib3/PKGBUILD
@@ -5,43 +5,49 @@
# Contributor: BorgHunter <borghunter at gmail dot com>
pkgbase=python-urllib3
-pkgname=(python2-urllib3)
-pkgver=1.21.1
+pkgname=(python-urllib3 python2-urllib3 python-urllib3-doc)
+pkgver=1.22
pkgrel=1
pkgdesc="HTTP library with thread-safe connection pooling and file post support"
arch=("any")
url="https://github.com/shazow/urllib3"
license=("MIT")
-makedepends=('python2-setuptools'
- 'python2-ndg-httpsclient' 'python2-pyasn1'
- 'python2-pyopenssl' 'python2-pysocks' 'python2-mock')
-checkdepends=('python2-nose' 'python2-tornado'
- 'python2-coverage' 'python2-psutil')
-source=("$pkgbase-$pkgver.tar.gz::https://github.com/shazow/urllib3/archive/$pkgver.tar.gz")
-md5sums=('b0a2c692ea273dc120b209a027b0df3c')
+makedepends=('python-setuptools' 'python2-setuptools' 'python2-sphinx' 'python-ndg-httpsclient'
+ 'python2-ndg-httpsclient' 'python-pyasn1' 'python2-pyasn1' 'python-pyopenssl'
+ 'python2-pyopenssl' 'python-pysocks' 'python2-pysocks' 'python-mock' 'python2-mock')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner' 'python-tornado' 'python2-tornado'
+ 'python-nose' 'python2-nose' 'python-psutil' 'python2-psutil'
+ 'python-gcp-devrel-py-tools' 'python2-gcp-devrel-py-tools')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/shazow/urllib3/archive/$pkgver.tar.gz"
+ tornado-4.3.patch)
+sha512sums=('1b45a4a64e71847a4fc62b9263235d5b05b62076698fa324454efeb7ad065abd702cc9eadb2d396d9270b07e91e9bad94c52a4b9b115aadccb27f81955e6feab'
+ '7c09acefa963a80379f8b2f3f2c2c7546ec62025058c1ae024bc954d49392d7956b8b3ceaed40b3d3ab06bcf9c74bfb4214425b66cc55c50ffc2642e2d35c498')
prepare() {
+ # https://github.com/shazow/urllib3/pull/1236
+ (cd urllib3-$pkgver; patch -p1 -i ../tornado-4.3.patch)
+
cp -a urllib3-$pkgver{,-py2}
}
build() {
-# cd "$srcdir"/urllib3-$pkgver
-# python setup.py build
+ cd "$srcdir"/urllib3-$pkgver
+ python setup.py build
cd "$srcdir"/urllib3-$pkgver-py2
python2 setup.py build
# Build with Python 2 since autodoc produces errors on Python 3
-# cd "$srcdir"/urllib3-$pkgver/docs
-# make SPHINXBUILD=sphinx-build2 html
+ cd "$srcdir"/urllib3-$pkgver/docs
+ make SPHINXBUILD=sphinx-build2 html
}
check() {
-# cd "$srcdir"/urllib3-$pkgver
-# nosetests3 || warning "Tests failed"
+ cd "$srcdir"/urllib3-$pkgver
+ python setup.py pytest
cd "$srcdir"/urllib3-$pkgver-py2
- nosetests2 || warning "Tests failed"
+ python2 setup.py pytest
}
package_python-urllib3() {
diff --git a/abs/core/python_modules/python-urllib3/__changelog b/abs/core/python_modules/python-urllib3/__changelog
deleted file mode 100644
index 49a28c7..0000000
--- a/abs/core/python_modules/python-urllib3/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: don't build py 3 stuff or sphinx
diff --git a/abs/core/python_modules/python-urllib3/tornado-4.3.patch b/abs/core/python_modules/python-urllib3/tornado-4.3.patch
new file mode 100644
index 0000000..7f4a669
--- /dev/null
+++ b/abs/core/python_modules/python-urllib3/tornado-4.3.patch
@@ -0,0 +1,23 @@
+From 39eebb652db570cf51994f404da3dd91c8a9f4cc Mon Sep 17 00:00:00 2001
+From: Felix Yan <felixonmars@archlinux.org>
+Date: Fri, 21 Jul 2017 23:25:35 +0800
+Subject: [PATCH] Fix compatibility with tornado 4.3+
+
+`HTTPHeaders` is not JSON serializable, so make it a dict first.
+---
+ dummyserver/handlers.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/dummyserver/handlers.py b/dummyserver/handlers.py
+index a943b836b..b91fe7215 100644
+--- a/dummyserver/handlers.py
++++ b/dummyserver/handlers.py
+@@ -225,7 +225,7 @@ def encodingrequest(self, request):
+ return Response(data, headers=headers)
+
+ def headers(self, request):
+- return Response(json.dumps(request.headers))
++ return Response(json.dumps(dict(request.headers)))
+
+ def successful_retry(self, request):
+ """ Handler which will return an error and then success
diff --git a/abs/core/python_modules/python-vcversioner/PKGBUILD b/abs/core/python_modules/python-vcversioner/PKGBUILD
new file mode 100644
index 0000000..4727326
--- /dev/null
+++ b/abs/core/python_modules/python-vcversioner/PKGBUILD
@@ -0,0 +1,52 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgbase=python-vcversioner
+pkgname=(python-vcversioner python2-vcversioner)
+pkgver=2.16.0.0
+pkgrel=1
+pkgdesc="Use version control tags to discover version numbers"
+url="https://github.com/habnabit/vcversioner"
+license=('ISC')
+arch=('any')
+makedepends=('python-setuptools' 'python2-setuptools')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner')
+source=("$pkgbase-$pkgver.tar.bz2::https://github.com/habnabit/vcversioner/archive/$pkgver.tar.gz")
+sha512sums=('0ce7edf28d0626707f977b565f938a754d374d0cada8683f05fa6d1088930d4d858213dbcb5dba149d828e76341eec4a168ef1998ce9894b72c35c1eef59bd08')
+
+prepare() {
+ echo -n "$pkgver-0-UNKNOWN" > vcversioner-$pkgver/version.txt
+ cp -a vcversioner-$pkgver{,-py2}
+}
+
+build() {
+ cd "$srcdir"/vcversioner-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/vcversioner-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir"/vcversioner-$pkgver
+ python setup.py pytest
+
+ cd "$srcdir"/vcversioner-$pkgver-py2
+ python2 setup.py pytest
+}
+
+package_python-vcversioner() {
+ depends=('python')
+
+ cd vcversioner-$pkgver
+ python3 setup.py install --root="$pkgdir" --optimize=1
+ install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING
+}
+
+package_python2-vcversioner() {
+ depends=('python2')
+
+ cd vcversioner-$pkgver-py2
+ python2 setup.py install --root="$pkgdir" --optimize=1
+ install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING
+}
diff --git a/abs/core/python_modules/python-virtualenv/PKGBUILD b/abs/core/python_modules/python-virtualenv/PKGBUILD
new file mode 100644
index 0000000..f7e71da
--- /dev/null
+++ b/abs/core/python_modules/python-virtualenv/PKGBUILD
@@ -0,0 +1,77 @@
+# $Id$
+# Maintainer: Dan McGee <dan@archlinux.org>
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Daniele Paolella <dp@mcrservice.it>
+
+pkgname=('python-virtualenv' 'python2-virtualenv')
+pkgver=15.1.0
+pkgrel=3
+pkgdesc="Virtual Python Environment builder"
+url="https://virtualenv.pypa.io/"
+arch=('any')
+license=('MIT')
+makedepends=('python-setuptools' 'python-sphinx' 'python2-setuptools' 'python2-sphinx')
+checkdepends=('python-pytest' 'python-mock' 'python2-pytest' 'python2-mock')
+replaces=('virtualenv')
+conflicts=('virtualenv')
+options=('!makeflags')
+source=(${pkgname}-${pkgver}.tar.gz::https://github.com/pypa/virtualenv/archive/${pkgver}.tar.gz)
+md5sums=('30222e271963a437e240aee4853728d2')
+sha256sums=('aea627d114a3863d6374c5a3fc3cdd08907e0ac951cf93b458e5ba5998c516de')
+
+prepare() {
+ cp -a virtualenv-${pkgver}{,-py2}
+ cd virtualenv-${pkgver}-py2
+ sed -i "s|#!/usr/bin/env python$|#!/usr/bin/env python2|" virtualenv.py
+}
+
+build() {
+ (cd virtualenv-${pkgver}
+ python setup.py build
+ make -C docs text man
+ )
+ (cd virtualenv-${pkgver}-py2
+ python2 setup.py build
+ make -C docs text man
+ )
+}
+
+check() {
+ (cd virtualenv-${pkgver}
+ py.test
+ )
+ (cd virtualenv-${pkgver}-py2
+ py.test2
+ )
+}
+
+package_python-virtualenv() {
+ depends=('python-setuptools')
+
+ cd virtualenv-$pkgver
+ python setup.py install --prefix=/usr --root="$pkgdir" --skip-build
+ install -Dm 644 docs/_build/text/* -t "${pkgdir}/usr/share/doc/${pkgname}"
+ install -Dm 644 docs/_build/man/virtualenv.1 "${pkgdir}/usr/share/man/man1/virtualenv.1"
+ ln -s virtualenv.1.gz "${pkgdir}/usr/share/man/man1/virtualenv3.1.gz"
+
+ # link to a version with 3 suffix as well
+ ln "$pkgdir/usr/bin/virtualenv" "$pkgdir/usr/bin/virtualenv3"
+
+ install -D -m644 LICENSE.txt \
+ "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
+
+package_python2-virtualenv() {
+ depends=('python2-setuptools')
+
+ cd virtualenv-$pkgver-py2
+ python2 setup.py install --prefix=/usr --root="$pkgdir" --skip-build
+ install -Dm 644 docs/_build/text/* -t "${pkgdir}/usr/share/doc/${pkgname}"
+ install -Dm 644 docs/_build/man/virtualenv.1 "${pkgdir}/usr/share/man/man1/virtualenv2.1"
+
+ # move this "old" version out of the way
+ mv "$pkgdir/usr/bin/virtualenv" "$pkgdir/usr/bin/virtualenv2"
+
+ install -D -m644 LICENSE.txt \
+ "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
diff --git a/abs/core/python_modules/python-webencodings/PKGBUILD b/abs/core/python_modules/python-webencodings/PKGBUILD
index 95f05b0..d0e832b 100644
--- a/abs/core/python_modules/python-webencodings/PKGBUILD
+++ b/abs/core/python_modules/python-webencodings/PKGBUILD
@@ -2,14 +2,14 @@
# Contributor: Jelle van der Waa <jelle@vdwaa.nl>
pkgbase=python-webencodings
-pkgname=('python2-webencodings')
+pkgname=('python2-webencodings' 'python-webencodings')
pkgver=0.5.1
-pkgrel=1
+pkgrel=2
arch=('any')
url="https://github.com/gsnedders/python-webencodings"
license=('BSD')
-makedepends=('python2' 'python2-setuptools')
-checkdepends=('python2-nose')
+makedepends=('python2' 'python' 'python-setuptools' 'python2-setuptools')
+checkdepends=('python-nose' 'python2-nose')
source=(https://github.com/gsnedders/python-webencodings/archive/v$pkgver.tar.gz)
md5sums=('7eb67377743cd55eaa356496c439471e')
diff --git a/abs/core/python_modules/python-webencodings/__changelog b/abs/core/python_modules/python-webencodings/__changelog
deleted file mode 100644
index 4f818ef..0000000
--- a/abs/core/python_modules/python-webencodings/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-PKGBUILD: don't build py 3 stuff
-
diff --git a/abs/core/python_modules/python-werkzeug/PKGBUILD b/abs/core/python_modules/python-werkzeug/PKGBUILD
index b8bfd64..0970226 100644
--- a/abs/core/python_modules/python-werkzeug/PKGBUILD
+++ b/abs/core/python_modules/python-werkzeug/PKGBUILD
@@ -5,57 +5,54 @@
# Contributor: Dan Serban
# Contributor: Richard Murri
-pkgname=('python2-werkzeug')
-pkgver=0.12.2
-pkgrel=1
+pkgname=('python-werkzeug' 'python2-werkzeug')
+pkgver=0.14.1
+pkgrel=2
pkgdesc='Swiss Army knife of Python web development'
url='http://werkzeug.pocoo.org/'
arch=('any')
license=('custom:BSD')
-makedepends=('python2-setuptools' 'python2-pytest' 'python2-requests')
+makedepends=('python-setuptools' 'python2-setuptools' 'python-pytest' 'python2-pytest' 'python-requests' 'python2-requests')
source=("https://github.com/pallets/werkzeug/archive/${pkgver}.tar.gz")
-sha512sums=('e0a27fb37599bd93c9e3e282e1f7f8e2bc9c2be30cce32d1b8a9788cbf998c3337061ade1cbe76858a64da0ebc89112b905567d561354af1b7d86cbd9a56c27d')
+sha512sums=('71ec293b702f247b68bf82b4ff9e4351e21aa1949221c3cba46cd0db3c3f10ca2009029bf26869230ad32cec29109b279876b71f4aa0de64dd6635725c9baecb')
prepare() {
cp -r "werkzeug-$pkgver" "python-werkzeug-$pkgver"
cp -r "werkzeug-$pkgver" "python2-werkzeug-$pkgver"
}
-build_python-werkzeug() {
- cd "$pkgname-$pkgver"
+build() {
+ cd "$srcdir/python-werkzeug-$pkgver"
python setup.py build
-}
-build_python2-werkzeug() {
- cd "$pkgname-$pkgver"
+ cd "$srcdir/python2-werkzeug-$pkgver"
python2 setup.py build
}
-#check() {
-# cd "python-werkzeug-$pkgver"
-# python setup.py test
+# check() {
+# cd "python-werkzeug-$pkgver"
+# python setup.py test
#
-# cd "python-werkzeug-$pkgver"
-# p3ython2 setup.py test
-#}
+# cd "python2-werkzeug-$pkgver"
+# python2 setup.py test
+# }
package_python-werkzeug() {
- depends+=('python')
- cd "$pkgname-$pkgver"
+ depends=('python')
+ cd "python-werkzeug-$pkgver"
python setup.py install --root="$pkgdir" --optimize=1
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
package_python2-werkzeug() {
- depends+=('python2')
- cd "$pkgname-$pkgver"
+ depends=('python2')
+ cd "python2-werkzeug-$pkgver"
python2 setup.py install --root="$pkgdir" --optimize=1
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
-# getver: https://github.com/mitsuhiko/werkzeug
# vim:set ts=2 sw=2 et:
diff --git a/abs/core/python_modules/python-werkzeug/__changelog b/abs/core/python_modules/python-werkzeug/__changelog
deleted file mode 100644
index 60db758..0000000
--- a/abs/core/python_modules/python-werkzeug/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: remove py3 stuff
diff --git a/abs/core/python_modules/python-whoosh/PKGBUILD b/abs/core/python_modules/python-whoosh/PKGBUILD
new file mode 100644
index 0000000..643da0d
--- /dev/null
+++ b/abs/core/python_modules/python-whoosh/PKGBUILD
@@ -0,0 +1,53 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Samuel Littley <aur@toastwaffle.com>
+# Contributor: rnons <remotenonsense at gmail dot com>
+
+pkgbase=python-whoosh
+pkgname=(python-whoosh python2-whoosh)
+pkgver=2.7.4
+pkgrel=2
+pkgdesc="Fast, pure-Python full text indexing, search, and spell checking library"
+arch=('any')
+url="http://bitbucket.org/mchaput/whoosh/wiki/Home"
+license=("BSD")
+makedepends=('python-setuptools' 'python2-setuptools' 'mercurial')
+checkdepends=('python-pytest-runner' 'python2-pytest-runner')
+source=("hg+https://bitbucket.org/mchaput/whoosh#tag=$pkgver")
+md5sums=('SKIP')
+
+prepare() {
+ cp -a whoosh{,-py2}
+}
+
+build() {
+ cd "$srcdir"/whoosh
+ python setup.py build
+
+ cd "$srcdir"/whoosh-py2
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir"/whoosh
+ python setup.py pytest
+
+ cd "$srcdir"/whoosh-py2
+ python2 setup.py pytest || warning "Tests failed"
+}
+
+package_python-whoosh() {
+ depends=('python')
+
+ cd whoosh
+ python setup.py install -O1 --root="$pkgdir"
+ install -D -m644 LICENSE.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.txt
+}
+
+package_python2-whoosh() {
+ depends=('python2')
+
+ cd whoosh-py2
+ python2 setup.py install -O1 --root="$pkgdir"
+ install -D -m644 LICENSE.txt "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.txt
+}
diff --git a/abs/core/python_modules/python-yaml/PKGBUILD b/abs/core/python_modules/python-yaml/PKGBUILD
index f0fd7e6..7b6026d 100644
--- a/abs/core/python_modules/python-yaml/PKGBUILD
+++ b/abs/core/python_modules/python-yaml/PKGBUILD
@@ -1,36 +1,61 @@
-# $Id$
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org>
# Contributor: Michal Bozon <michal.bozon__at__gmail.com>
pkgbase=python-yaml
-pkgname=(python2-yaml)
-pkgver=3.11
-pkgrel=1
-pkgdesc="Python bindings for YAML, using fast libYAML library"
-arch=('i686' 'x86_64')
-url="http://pyyaml.org"
+pkgname=(python-yaml python2-yaml)
+pkgver=3.12
+pkgrel=3
+pkgdesc='Python bindings for YAML, using fast libYAML library'
+url='http://pyyaml.org/wiki/PyYAML'
+arch=('x86_64')
license=('MIT')
-makedepends=('python2' 'libyaml')
-install='python-yaml.install'
-source=(http://pyyaml.org/download/pyyaml/PyYAML-$pkgver.tar.gz)
-md5sums=('f50e08ef0fe55178479d3a618efe21db')
+makedepends=('python' 'python2' 'libyaml')
+source=(http://pyyaml.org/download/pyyaml/PyYAML-${pkgver}.tar.gz)
+sha512sums=('e16d8b7f4f026b6a95b11fb59c54ec5f114f6f516294eaa95e718abdf5d37c17a9c4b5e0a0a61fca04e801792d9b7fb801087cf849ff22b9581f6af204b1883a')
+
+prepare() {
+ cp -a PyYAML-${pkgver}{,-py2}
+}
build() {
- true
+ msg2 "Building python..."
+ (cd PyYAML-${pkgver}
+ python setup.py --with-libyaml build
+ )
+ msg2 "Building python2..."
+ (cd PyYAML-${pkgver}-py2
+ python2 setup.py --with-libyaml build
+ )
+}
+
+check() {
+ msg2 "Checking python..."
+ (cd PyYAML-${pkgver}
+ python setup.py test
+ )
+ msg2 "Checking python2..."
+ (cd PyYAML-${pkgver}-py2
+ python2 setup.py test
+ )
+}
+
+package_python-yaml() {
+ depends=('python' 'libyaml')
+
+ cd PyYAML-${pkgver}
+ python setup.py --with-libyaml install --prefix=/usr --root="${pkgdir}" -O1 --skip-build
+ install -Dm 644 LICENSE -t "${pkgdir}"/usr/share/licenses/${pkgname}
+ install -Dm 644 CHANGES README -t "${pkgdir}"/usr/share/doc/${pkgname}
}
package_python2-yaml() {
depends=('python2' 'libyaml')
- cd $srcdir/PyYAML-$pkgver
- python2 setup.py install --prefix=/usr --root=$pkgdir
- install -m644 -D LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE
+ cd PyYAML-${pkgver}-py2
+ python2 setup.py --with-libyaml install --prefix=/usr --root="${pkgdir}" -O1 --skip-build
+ install -Dm 644 LICENSE -t "${pkgdir}"/usr/share/licenses/${pkgname}
+ install -Dm 644 CHANGES README -t "${pkgdir}"/usr/share/doc/${pkgname}
}
-#package_python-yaml() {
-# depends=('python' 'libyaml')
-
-# cd $srcdir/PyYAML-$pkgver
-# python setup.py install --prefix=/usr --root=$pkgdir
-# install -m644 -D LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE
-#}
+# vim: ts=2 sw=2 et:
diff --git a/abs/core/python_modules/python-yaml/__changelog b/abs/core/python_modules/python-yaml/__changelog
deleted file mode 100644
index 488d3cf..0000000
--- a/abs/core/python_modules/python-yaml/__changelog
+++ /dev/null
@@ -1 +0,0 @@
-PKGBUILD: rm py 3 stuff
diff --git a/abs/core/python_modules/python-yaml/python-yaml.install b/abs/core/python_modules/python-yaml/python-yaml.install
deleted file mode 100644
index e2ae067..0000000
--- a/abs/core/python_modules/python-yaml/python-yaml.install
+++ /dev/null
@@ -1,7 +0,0 @@
-post_install() {
- cat << EOT
-==> Note that even though this package uses libyaml library,
-==> slower pure python implementation is used by default.
-==> See http://pyyaml.org/wiki/PyYAMLDocumentation
-EOT
-}
diff --git a/abs/core/python_modules/python-zope-interface/PKGBUILD b/abs/core/python_modules/python-zope-interface/PKGBUILD
new file mode 100644
index 0000000..c2e0df3
--- /dev/null
+++ b/abs/core/python_modules/python-zope-interface/PKGBUILD
@@ -0,0 +1,52 @@
+# $Id$
+# Maintainer : Felix Yan <felixonmars@archlinux.org>
+# Contributor: Ionut Biru <ibiru@archlinux.org>
+# Contributor: Douglas Soares de Andrade <douglas@archlinux.org>
+
+pkgbase=python-zope-interface
+pkgname=('python-zope-interface' 'python2-zope-interface')
+pkgver=4.4.3
+pkgrel=1
+license=('ZPL')
+arch=('x86_64')
+url="http://pypi.python.org/pypi/zope.interface"
+makedepends=('python-setuptools' 'python2-setuptools')
+checkdepends=('python-zope-event' 'python2-zope-event')
+source=("https://pypi.io/packages/source/z/zope.interface/zope.interface-$pkgver.tar.gz")
+sha512sums=('29d9f3f1fe9af8a4ffb1e6d2f067bba1fa1bac7b02690ba8429985aa6ca76d3f337076bc8c48f39d0f338ccd855800b2f28b319a183a285191cc007bf8d9c9ad')
+
+prepare() {
+ cp -a zope.interface-${pkgver}{,-py2}
+}
+
+build() {
+ cd "$srcdir"/zope.interface-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/zope.interface-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ cd "$srcdir"/zope.interface-$pkgver
+ python setup.py test
+
+ cd "$srcdir"/zope.interface-$pkgver-py2
+ python2 setup.py test
+}
+
+package_python-zope-interface() {
+ pkgdesc='Zope Interfaces for Python 3.x'
+ depends=('python')
+
+ cd zope.interface-$pkgver
+ python setup.py install --prefix=/usr --root="$pkgdir" --optimize=1
+}
+
+package_python2-zope-interface(){
+ pkgdesc='Zope Interfaces for Python 2.x'
+ depends=('python2')
+
+ cd zope.interface-$pkgver-py2
+ python2 setup.py install --prefix=/usr --root="$pkgdir" --optimize=1
+}
diff --git a/abs/core/python_modules/python2-cairo/PKGBUILD b/abs/core/python_modules/python2-cairo/PKGBUILD
deleted file mode 100644
index 574eca2..0000000
--- a/abs/core/python_modules/python2-cairo/PKGBUILD
+++ /dev/null
@@ -1,31 +0,0 @@
-# $Id$
-# Maintainer: Jan de Groot <jgc@archlinux.org>
-
-pkgname=python2-cairo
-pkgver=1.10.0
-pkgrel=3
-pkgdesc="Python2 bindings for the cairo graphics library"
-arch=('i686' 'x86_64')
-license=('LGPL' 'MPL')
-depends=('python2' 'cairo')
-provides=("pycairo=${pkgver}")
-conflicts=('pycairo')
-replaces=('pycairo')
-source=(http://cairographics.org/releases/py2cairo-${pkgver}.tar.bz2)
-url="http://www.cairographics.org/pycairo"
-md5sums=('20337132c4ab06c1146ad384d55372c5')
-
-build() {
- cd "${srcdir}/py2cairo-${pkgver}"
- sed -i 's:bin/env python:bin/env python2:' waf
- python2 ./waf --version
- pushd .waf-*
- popd
- PYTHON=/usr/bin/python2 ./waf configure --prefix=/usr
- PYTHON=/usr/bin/python2 ./waf build
-}
-
-package() {
- cd "${srcdir}/py2cairo-${pkgver}"
- PYTHON=/usr/bin/python2 ./waf install --destdir="${pkgdir}"
-}
diff --git a/abs/core/python_modules/python2-m2crypto/LICENSE b/abs/core/python_modules/python2-m2crypto/LICENSE
new file mode 100644
index 0000000..d2f636f
--- /dev/null
+++ b/abs/core/python_modules/python2-m2crypto/LICENSE
@@ -0,0 +1,26 @@
+Copyright (c) 1999-2004 Ng Pheng Siong. All rights reserved.
+
+Portions copyright (c) 2004-2006 Open Source Applications Foundation.
+All rights reserved.
+
+Portions copyright (c) 2005-2006 Vrije Universiteit Amsterdam.
+All rights reserved.
+
+Copyright (c) 2008-2010 Heikki Toivonen. All rights reserved.
+
+Permission to use, copy, modify, and distribute this software and its
+documentation for any purpose and without fee is hereby granted,
+provided that the above copyright notice appear in all copies and that
+both that copyright notice and this permission notice appear in
+supporting documentation.
+
+THE AUTHOR PROVIDES THIS SOFTWARE ``AS IS'' AND ANY EXPRESSED OR
+IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/abs/core/python_modules/python2-m2crypto/PKGBUILD b/abs/core/python_modules/python2-m2crypto/PKGBUILD
new file mode 100644
index 0000000..36d5f9b
--- /dev/null
+++ b/abs/core/python_modules/python2-m2crypto/PKGBUILD
@@ -0,0 +1,29 @@
+# $Id: PKGBUILD 140196 2011-10-09 08:27:16Z angvp $
+# Maintainer: Angel Velasquez <angvp@archlinux.org>
+# Contributor: Sergej Pupykin <sergej@aur.archlinux.org>
+# Contributor: William Rea <sillywilly@gmail.com>
+
+pkgname=python2-m2crypto
+pkgver=0.27.0
+pkgrel=1
+pkgdesc="A crypto and SSL toolkit for Python"
+arch=('x86_64')
+url="https://pypi.python.org/pypi/M2Crypto"
+license=('BSD')
+depends=('python2' 'openssl' 'python2-typing')
+makedepends=('swig' 'python2-setuptools')
+source=("https://pypi.python.org/packages/01/bd/a41491718f9e2bebab015c42b5be7071c6695acfa301e3fc0480bfd6a15b/M2Crypto-$pkgver.tar.gz"
+ "LICENSE")
+sha256sums=('82317459d653322d6b37f122ce916dc91ddcd9d1b814847497ac796c4549dd68'
+ '4eca478396f4b2b020729a111fce3f096456d74500bfd8f2b0388c3c69f997c0')
+
+build() {
+ cd "${srcdir}/M2Crypto-${pkgver}"
+ python2 setup.py build
+}
+
+package() {
+ cd "${srcdir}/M2Crypto-${pkgver}"
+ python2 setup.py install --root="${pkgdir}/" --optimize=1
+ install -D -m644 "$srcdir"/LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
diff --git a/abs/core/python_modules/python2-m2crypto/openssl-1.1.0-force.patch b/abs/core/python_modules/python2-m2crypto/openssl-1.1.0-force.patch
new file mode 100644
index 0000000..3c37702
--- /dev/null
+++ b/abs/core/python_modules/python2-m2crypto/openssl-1.1.0-force.patch
@@ -0,0 +1,33 @@
+--- M2Crypto-0.25.1/setup.py 2016-07-22 14:43:17.000000000 +0200
++++ M2Crypto-0.25.1.dirty/setup.py 2017-03-23 18:18:35.128517781 +0100
+@@ -70,8 +70,8 @@
+ self.libraries = ['ssleay32', 'libeay32']
+ self.openssl = 'c:\\pkg'
+ else:
+- self.libraries = ['ssl', 'crypto']
+- self.openssl = '/usr'
++ self.libraries = [':libssl.so.1.0.0', ':libcrypto.so.1.0.0']
++ self.openssl = '/usr/lib/openssl-1.0/'
+
+ def finalize_options(self):
+ '''Overloaded build_ext implementation to append custom openssl
+@@ -87,16 +87,11 @@
+ if _openssl and os.path.isdir(_openssl):
+ self.openssl = _openssl
+
+- self.include_dirs.append(os.path.join(self.openssl, 'include'))
+- openssl_library_dir = os.path.join(self.openssl, 'lib')
++ self.include_dirs.append(os.path.join('/usr/include/', 'openssl-1.0'))
++
++ openssl_library_dir = os.path.join('/usr/lib/', 'openssl-1.0')
+
+ if platform.system() == "Linux":
+- if _multiarch: # on Fedora/RHEL it is an empty string
+- self.include_dirs.append(
+- os.path.join(self.openssl, 'include', _multiarch))
+- else:
+- self.include_dirs.append(
+- os.path.join(self.openssl, 'include', 'openssl'))
+
+ # For RedHat-based distros, the '-D__{arch}__' option for
+ # Swig needs to be normalized, particularly on i386.
diff --git a/abs/core/python_modules/python2-oauth/PKGBUILD b/abs/core/python_modules/python2-oauth/PKGBUILD
new file mode 100644
index 0000000..83f3f09
--- /dev/null
+++ b/abs/core/python_modules/python2-oauth/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Jonathan Conder <jonno.conder@gmail.com>
+# Contributor: Snowknight (hopkinsth@gmail.com)
+
+_pkgbasename=oauth
+pkgname=python2-oauth
+pkgver=1.0.1
+pkgrel=3
+pkgdesc="An open protocol to allow API authentication from desktop and web applications."
+arch=('any')
+url="https://code.google.com/archive/p/oauth/"
+license=('MIT')
+depends=('python2')
+makedepends=('python2-setuptools')
+conflicts=('python-oauth')
+replaces=('python-oauth')
+source=("https://files.pythonhosted.org/packages/source/${_pkgbasename:0:1}/$_pkgbasename/$_pkgbasename-$pkgver.tar.gz")
+sha256sums=('e769819ff0b0c043d020246ce1defcaadd65b9c21d244468a45a7f06cb88af5d')
+
+build() {
+ cd $_pkgbasename-$pkgver
+
+ python2 setup.py build
+}
+
+package() {
+ cd $_pkgbasename-$pkgver
+
+ python2 setup.py install -O1 --root="$pkgdir"
+ install -D -m644 LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
diff --git a/abs/core/python_modules/python2-typing/PKGBUILD b/abs/core/python_modules/python2-typing/PKGBUILD
new file mode 100644
index 0000000..ac90a5b
--- /dev/null
+++ b/abs/core/python_modules/python2-typing/PKGBUILD
@@ -0,0 +1,29 @@
+# Maintainer: Johannes Löthberg <johannes@kyriasis.com>
+
+pkgname=python2-typing
+pkgver=3.6.4
+pkgrel=1
+
+pkgdesc="Backport of the standard library typing module to Python versions older than 3.6"
+url="https://pypi.python.org/pypi/typing"
+arch=('any')
+license=('FSF')
+
+makedepends=('python2'
+ 'python2-setuptools')
+
+source=("python2-typing-$pkgver.tar.gz::https://pypi.io/packages/source/t/typing/typing-$pkgver.tar.gz")
+
+md5sums=('5b2ade08d83be488f17b5fe587c27c74')
+
+build() {
+ cd typing-$pkgver
+ python2 setup.py build
+}
+
+package() {
+ depends=('python2')
+
+ cd typing-$pkgver
+ python2 setup.py install --root "$pkgdir" --optimize=1 --skip-build
+}
diff --git a/abs/core/python_modules/python2-typing/python2-typing-3.6.1.tar.gz b/abs/core/python_modules/python2-typing/python2-typing-3.6.1.tar.gz
new file mode 100644
index 0000000..1097c24
--- /dev/null
+++ b/abs/core/python_modules/python2-typing/python2-typing-3.6.1.tar.gz
Binary files differ
diff --git a/abs/core/python_modules/sip/PKGBUILD b/abs/core/python_modules/sip/PKGBUILD
new file mode 100644
index 0000000..66c8952
--- /dev/null
+++ b/abs/core/python_modules/sip/PKGBUILD
@@ -0,0 +1,66 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+# Contributor: Douglas Soares de Andrade <douglas@archlinux.org>
+# Contributor: riai <riai@bigfoot.com>, Ben <ben@benmazer.net>
+
+pkgbase=sip
+pkgname=('sip' 'python-sip' 'python2-sip')
+pkgver=4.19.8
+pkgrel=1
+arch=('x86_64')
+url='http://www.riverbankcomputing.com/software/sip/intro'
+license=('custom:"sip"')
+makedepends=('python' 'python2')
+source=("http://sourceforge.net/projects/pyqt/files/sip/sip-$pkgver/sip-$pkgver.tar.gz")
+sha256sums=('7eaf7a2ea7d4d38a56dd6d2506574464bddf7cf284c960801679942377c297bc')
+
+prepare() {
+ cp -a sip-$pkgver{,-py2}
+}
+
+build() {
+ cd "$srcdir"/sip-$pkgver
+ python configure.py CFLAGS="$CFLAGS" LFLAGS="$LDFLAGS"
+ make
+
+ cd "$srcdir"/sip-$pkgver-py2
+ python2 configure.py CFLAGS="$CFLAGS" LFLAGS="$LDFLAGS"
+ make
+}
+
+package_sip() {
+ pkgdesc="A tool that makes it easy to create Python bindings for C and C++ libraries"
+ depends=('glibc')
+
+ cd sip-$pkgver
+ make DESTDIR="$pkgdir" install -C sipgen
+
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+package_python-sip() {
+ pkgdesc="Python 3.x SIP bindings for C and C++ libraries"
+ depends=('sip' 'python')
+
+ cd sip-$pkgver
+ make DESTDIR="$pkgdir" install -C siplib
+
+ install -Dm644 sipconfig.py "$pkgdir"/usr/lib/python3.6/site-packages/sipconfig.py
+ install -Dm644 sipdistutils.py "$pkgdir"/usr/lib/python3.6/site-packages/sipdistutils.py
+
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+package_python2-sip() {
+ pkgdesc="Python 2.x SIP bindings for C and C++ libraries"
+ depends=('sip' 'python2')
+
+ cd sip-$pkgver-py2
+ make DESTDIR="$pkgdir" install -C siplib
+
+ install -Dm644 sipconfig.py "$pkgdir"/usr/lib/python2.7/site-packages/sipconfig.py
+ install -Dm644 sipdistutils.py "$pkgdir"/usr/lib/python2.7/site-packages/sipdistutils.py
+
+ install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
diff --git a/abs/core/python_modules/twisted/PKGBUILD b/abs/core/python_modules/twisted/PKGBUILD
new file mode 100644
index 0000000..ef50622
--- /dev/null
+++ b/abs/core/python_modules/twisted/PKGBUILD
@@ -0,0 +1,99 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Ionut Biru <ibiru@archlinux.org>
+# Contributor: Juergen Hoetzel <juergen@archlinux.org>
+# Contributor: Douglas Soares de Andrade <douglas@archlinux.org>
+
+pkgbase=twisted
+pkgname=(python-twisted python2-twisted)
+pkgver=17.9.0
+pkgrel=1
+pkgdesc="Asynchronous networking framework written in Python"
+arch=('x86_64')
+url="http://twistedmatrix.com/"
+license=('MIT')
+makedepends=('python-zope-interface' 'python2-zope-interface' 'python-setuptools'
+ 'python2-setuptools' 'python-service-identity' 'python2-service-identity'
+ 'python-incremental' 'python2-incremental' 'python-constantly' 'python2-constantly'
+ 'python-automat' 'python2-automat' 'python-hyperlink' 'python2-hyperlink')
+checkdepends=('subversion' 'python2-sphinx' 'pygtk' 'xorg-server-xvfb' 'tk' 'openssh' 'gtk3'
+ 'python-gobject' 'python2-gobject' 'python-gobject2' 'python2-gobject2'
+ 'python2-soappy' 'python-subunit' 'python2-subunit' 'python-h2' 'python2-h2'
+ 'python-priority' 'python2-priority' 'python-crypto' 'python2-crypto'
+ 'python-cryptography' 'python2-cryptography' 'python-idna' 'python2-idna'
+ 'python-pyserial' 'python2-pyserial')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/twisted/twisted/archive/twisted-$pkgver.tar.gz")
+sha512sums=('3fb269dd928d2446e50cb5e4aa43d208d3aa7ed3902a0a7c39b8dabe9792344ad924fc500d507d34118ba2acdfd433a31aa812dd5309b01fdcb45de49e7b84ae')
+
+prepare() {
+ cp -a twisted-twisted-$pkgver{,-py2}
+
+ sed -i 's:^#!.*bin.*python:#!/usr/bin/python2:' \
+ twisted-twisted-$pkgver-py2/src/twisted/mail/test/pop3testserver.py \
+ twisted-twisted-$pkgver-py2/src/twisted/trial/test/scripttest.py
+}
+
+build() {
+ cd "$srcdir"/twisted-twisted-$pkgver
+ python setup.py build
+
+ cd "$srcdir"/twisted-twisted-$pkgver-py2
+ python2 setup.py build
+}
+
+check() {
+ export LC_CTYPE=en_US.UTF-8
+
+ cd "$srcdir"/twisted-twisted-$pkgver
+ PYTHONPATH="$PWD/build/lib.linux-$CARCH-3.6:$PYTHONPATH" xvfb-run python -m twisted.trial twisted
+
+ cd "$srcdir"/twisted-twisted-$pkgver-py2
+ PYTHONPATH="$PWD/build/lib.linux-$CARCH-2.7:$PYTHONPATH" xvfb-run python2 -m twisted.trial twisted || warning "Tests failed"
+}
+
+package_python-twisted() {
+ depends=('python-zope-interface' 'python-incremental' 'python-constantly' 'python-automat'
+ 'python-hyperlink')
+ optdepends=('python-pyopenssl: for TLS client hostname verification'
+ 'python-service-identity: for TLS client hostname verification'
+ 'python-idna: for TLS client hostname verification'
+ 'python-cryptography: for using conch'
+ 'python-pyasn1: for using conch'
+ 'python-appdirs: for using conch'
+ 'python-h2: for http2 support'
+ 'python-priority: for http2 support'
+ 'python-pyserial: for serial support'
+ 'tk: for using tkconch')
+
+ cd twisted-twisted-$pkgver
+ python setup.py install --prefix=/usr --root="$pkgdir" --optimize=1
+
+ # twisted in python 3 supports only few command line tools for now.
+ # Let's rename the tools the other way round after the python 3 version supports all.
+ for name in trial twistd twist ckeygen cftp conch pyhtmlizer tkconch; do
+ mv "$pkgdir"/usr/bin/${name}{,3}
+ done
+
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
+
+package_python2-twisted() {
+ depends=('python2-zope-interface' 'python2-incremental' 'python2-constantly' 'python2-automat'
+ 'python2-hyperlink')
+ optdepends=('python2-pyopenssl: for TLS client hostname verification'
+ 'python2-service-identity: for TLS client hostname verification'
+ 'python2-idna: for TLS client hostname verification'
+ 'python2-cryptography: for using conch'
+ 'python2-pyasn1: for using conch'
+ 'python2-appdirs: for using conch'
+ 'python2-h2: for http2 support'
+ 'python2-priority: for http2 support'
+ 'python2-pyserial: for serial support'
+ 'python2-soappy: for twisted.web.soap'
+ 'pygtk: for using manhole'
+ 'tk: for using tkconch')
+
+ cd twisted-twisted-$pkgver-py2
+ python2 setup.py install --prefix=/usr --root="$pkgdir" --optimize=1
+ install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
+}
diff --git a/abs/core/python_modules/urlgrabber/PKGBUILD b/abs/core/python_modules/urlgrabber/PKGBUILD
index 77f188e..6a5ba50 100644
--- a/abs/core/python_modules/urlgrabber/PKGBUILD
+++ b/abs/core/python_modules/urlgrabber/PKGBUILD
@@ -1,17 +1,17 @@
-# $Id$
-# Maintainer: Chris Brannon <cmbrannon79@gmail.com>
+# Maintainer: Matt Harrison <matt@harrison.us.com>
+# Contributor: Chris Brannon <cmbrannon79@gmail.com>
# Contributor: Pat Rondon <pmr@@patrondon.org>
pkgname=urlgrabber
-pkgver=3.10.1
-pkgrel=2
+pkgver=3.10.2
+pkgrel=1
pkgdesc="A high-level cross-protocol url-grabber and Python library"
url="http://urlgrabber.baseurl.org/"
license=('LGPL')
arch=(any)
depends=(python2 python2-pycurl)
source=(http://$pkgname.baseurl.org/download/$pkgname-$pkgver.tar.gz)
-md5sums=('1f5dc63805623cc473e06204fd240bb2')
+sha256sums=('53691185e3d462bb0fa8db853a205ee79cdd4089687cddd22cabb8b3d4280142')
package() {
cd "$srcdir/$pkgname-$pkgver"
diff --git a/abs/core/qt5-3d/PKGBUILD b/abs/core/qt5-3d/PKGBUILD
new file mode 100644
index 0000000..3e5beca
--- /dev/null
+++ b/abs/core/qt5-3d/PKGBUILD
@@ -0,0 +1,40 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-3d
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='C++ and QML APIs for easy inclusion of 3D graphics'
+depends=('qt5-declarative' 'assimp')
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('041fb42536a72bbf9be17a6f52d4b73ce93fb98b456fd63503cc47d80d196b3b')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "$pkgdir/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-base/PKGBUILD b/abs/core/qt5-base/PKGBUILD
new file mode 100644
index 0000000..1cb9883
--- /dev/null
+++ b/abs/core/qt5-base/PKGBUILD
@@ -0,0 +1,119 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgbase=qt5-base
+pkgname=(qt5-base qt5-xcb-private-headers)
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=3
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='A cross-platform application and UI framework'
+depends=('libjpeg-turbo' 'xcb-util-keysyms' 'xcb-util-renderutil' 'libgl' 'fontconfig' 'xdg-utils'
+ 'xcb-util-wm' 'libxrender' 'libxi' 'sqlite' 'xcb-util-image' 'icu' 'pcre2'
+ 'libinput' 'libsm' 'libxkbcommon-x11' 'libproxy' 'libcups' 'double-conversion')
+makedepends=('libfbclient' 'libmysqlclient' 'sqlite' 'unixodbc' 'postgresql-libs' 'alsa-lib' 'gst-plugins-base-libs'
+ 'gtk3' 'cups' 'freetds' 'vulkan-headers')
+optdepends=('qt5-svg: to use SVG icon themes'
+ 'postgresql-libs: PostgreSQL driver'
+ 'libmysqlclient: mysql driver'
+ 'unixodbc: ODBC driver'
+ 'libfbclient: Firebird/iBase driver'
+ 'freetds: MS SQL driver'
+ 'gtk3: GTK platform plugin')
+conflicts=('qtchooser')
+groups=('qt' 'qt5')
+_pkgfqn="${pkgbase/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz"
+ revert-Set-sharedPainter-correctly-for-QGraphicsEffect.patch
+ qtbug-65478.patch)
+sha256sums=('d8660e189caa5da5142d5894d328b61a4d3ee9750b76d61ad74e4eee8765a969'
+ '7161ea5747500dc9666f8d185f4b8e538799fc0aef574e577277747100ac4763'
+ 'b2e8cb06c60be7de31a984c4cfc9ab85c9e2d08c1a3d93136f193735b43600c6')
+
+prepare() {
+ cd ${_pkgfqn}
+
+ # Build qmake using Arch {C,LD}FLAGS
+ # This also sets default {C,CXX,LD}FLAGS for projects built using qmake
+ sed -i -e "s|^\(QMAKE_CFLAGS_RELEASE.*\)|\1 ${CFLAGS}|" \
+ mkspecs/common/gcc-base.conf
+ sed -i -e "s|^\(QMAKE_LFLAGS_RELEASE.*\)|\1 ${LDFLAGS}|" \
+ mkspecs/common/g++-unix.conf
+
+ # Use python2 for Python 2.x
+ find . -name '*.py' -exec sed -i \
+ 's|#![ ]*/usr/bin/python$|&2|;s|#![ ]*/usr/bin/env python$|&2|' {} +
+
+ # Fix missing private includes https://bugreports.qt.io/browse/QTBUG-37417
+ sed -e '/CMAKE_NO_PRIVATE_INCLUDES\ \=\ true/d' -i mkspecs/features/create_cmake.prf
+
+ # Revert upstream commit which breaks some Deepin components (FS#57531)
+ # https://bugreports.qt.io/browse/QTBUG-66226
+ patch -Np1 -i ../revert-Set-sharedPainter-correctly-for-QGraphicsEffect.patch
+ # Fix kexi crash at startup http://bugreports.qt.io/browse/QTBUG-65478
+ patch -p1 -i ../qtbug-65478.patch
+}
+
+build() {
+ cd ${_pkgfqn}
+
+ PYTHON=/usr/bin/python2 ./configure -confirm-license -opensource -v \
+ -prefix /usr \
+ -docdir /usr/share/doc/qt \
+ -headerdir /usr/include/qt \
+ -archdatadir /usr/lib/qt \
+ -datadir /usr/share/qt \
+ -sysconfdir /etc/xdg \
+ -examplesdir /usr/share/doc/qt/examples \
+ -plugin-sql-{psql,mysql,sqlite,odbc,ibase} \
+ -system-sqlite \
+ -openssl-linked \
+ -nomake examples \
+ -no-rpath \
+ -optimized-qmake \
+ -dbus-linked \
+ -system-harfbuzz \
+ -journald \
+ -no-use-gold-linker \
+ -reduce-relocations
+ make
+}
+
+package_qt5-base() {
+ pkgdesc='A cross-platform application and UI framework'
+
+ cd ${_pkgfqn}
+ make INSTALL_ROOT="${pkgdir}" install
+
+ install -D -m644 LGPL_EXCEPTION.txt \
+ "${pkgdir}"/usr/share/licenses/${pkgbase}/LGPL_EXCEPTION.txt
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "${pkgdir}/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ # Fix wrong qmake path in pri file
+ sed -i "s|${srcdir}/${_pkgfqn}|/usr|" \
+ "${pkgdir}"/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri
+
+ # Symlinks for backwards compatibility
+ for b in "${pkgdir}"/usr/bin/*; do
+ ln -s /usr/bin/$(basename $b) "${pkgdir}"/usr/bin/$(basename $b)-qt5
+ done
+}
+
+package_qt5-xcb-private-headers() {
+ pkgdesc='Private headers for Qt5 Xcb'
+
+ depends=("qt5-base=$pkgver")
+ optdepends=()
+ groups=()
+ conflicts=()
+
+ cd ${_pkgfqn}
+ install -d -m755 "$pkgdir"/usr/include/qtxcb-private
+ cp -r src/plugins/platforms/xcb/*.h "$pkgdir"/usr/include/qtxcb-private/
+}
diff --git a/abs/core/qt5/__changelog b/abs/core/qt5-base/__changelog
index 4049625..4049625 100644
--- a/abs/core/qt5/__changelog
+++ b/abs/core/qt5-base/__changelog
diff --git a/abs/core/qt5-base/qtbug-65478.patch b/abs/core/qt5-base/qtbug-65478.patch
new file mode 100644
index 0000000..e75069c
--- /dev/null
+++ b/abs/core/qt5-base/qtbug-65478.patch
@@ -0,0 +1,31 @@
+From e8425f9e52c9df0ce0fbf122adff3ef6930f9961 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Thorbj=C3=B8rn=20Lund=20Martsum?= <tmartsum@gmail.com>
+Date: Wed, 28 Feb 2018 09:23:54 +0100
+Subject: QHeaderView: Fix crash in layout about to change
+
+Before there was a risk looking up e.g index -1 if there
+were no visible sections in layoutAboutToChange.
+
+Change-Id: Ic911e4292e8e8c4892fef1c0f34cf7dccaad2bac
+Task-number: QTBUG-65478
+Reviewed-by: David Faure <david.faure@kdab.com>
+---
+diff --git a/src/widgets/itemviews/qheaderview.cpp b/src/widgets/itemviews/qheaderview.cpp
+index 26d7c5472a..708b9b44ca 100644
+--- a/src/widgets/itemviews/qheaderview.cpp
++++ b/src/widgets/itemviews/qheaderview.cpp
+@@ -2163,9 +2163,11 @@ void QHeaderViewPrivate::_q_sectionsAboutToBeChanged()
+ layoutChangePersistentSections.clear();
+ layoutChangePersistentSections.reserve(std::min(10, sectionItems.count()));
+ // after layoutChanged another section can be last stretched section
+- if (stretchLastSection) {
++ if (stretchLastSection && lastSectionLogicalIdx >= 0 && lastSectionLogicalIdx < sectionItems.count()) {
+ const int visual = visualIndex(lastSectionLogicalIdx);
+- sectionItems[visual].size = lastSectionSize;
++ if (visual >= 0 && visual < sectionItems.size()) {
++ sectionItems[visual].size = lastSectionSize;
++ }
+ }
+ for (int i = 0; i < sectionItems.size(); ++i) {
+ auto s = sectionItems.at(i);
+
diff --git a/abs/core/qt5-base/rebuild.list b/abs/core/qt5-base/rebuild.list
new file mode 100644
index 0000000..fdb9fec
--- /dev/null
+++ b/abs/core/qt5-base/rebuild.list
@@ -0,0 +1,25 @@
+### Rebuild only for minor version updates
+calibre
+gcin
+kwin
+lxqt-qtplugin
+plasma-framework
+plasma-integration
+qqc2-desktop-style
+qt5ct
+### Rebuild for minor and patch version updates
+akonadi
+deepin-dock
+deepin-file-manager
+deepin-qt-dbus-factory
+deepin-qt5integration
+deepin-qt5dxcb-plugin
+dtkwidget
+dtkwm
+fcitx-qt5
+googlemaps
+libqtxdg
+pyqt5-common
+qt5-styleplugins
+qt5-webkit
+skrooge
diff --git a/abs/core/qt5-base/revert-Set-sharedPainter-correctly-for-QGraphicsEffect.patch b/abs/core/qt5-base/revert-Set-sharedPainter-correctly-for-QGraphicsEffect.patch
new file mode 100644
index 0000000..da692d0
--- /dev/null
+++ b/abs/core/qt5-base/revert-Set-sharedPainter-correctly-for-QGraphicsEffect.patch
@@ -0,0 +1,71 @@
+From f4bc1f620727366b6a977b106cc68fade95ef426 Mon Sep 17 00:00:00 2001
+From: Evangelos Foutras <evangelos@foutrelis.com>
+Date: Wed, 21 Feb 2018 04:20:20 +0200
+Subject: [PATCH] Revert "Set sharedPainter correctly for QGraphicsEffect"
+
+This reverts commit 7257862fb2edfab0219d6cd45c83677049404f7d.
+---
+ src/widgets/kernel/qwidget.cpp | 4 ++--
+ .../effects/qgraphicseffect/tst_qgraphicseffect.cpp | 21 ---------------------
+ 2 files changed, 2 insertions(+), 23 deletions(-)
+
+diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp
+index a973bee2cd..256c77e5a0 100644
+--- a/src/widgets/kernel/qwidget.cpp
++++ b/src/widgets/kernel/qwidget.cpp
+@@ -5482,11 +5482,11 @@ void QWidgetPrivate::drawWidget(QPaintDevice *pdev, const QRegion &rgn, const QP
+ setSystemClip(pdev->paintEngine(), pdev->devicePixelRatioF(), rgn.translated(offset));
+ QPainter p(pdev);
+ p.translate(offset);
+- context.painter = context.sharedPainter = &p;
++ context.painter = &p;
+ graphicsEffect->draw(&p);
+ setSystemClip(pdev->paintEngine(), 1, QRegion());
+ } else {
+- context.painter = context.sharedPainter = sharedPainter;
++ context.painter = sharedPainter;
+ if (sharedPainter->worldTransform() != sourced->lastEffectTransform) {
+ sourced->invalidateCache();
+ sourced->lastEffectTransform = sharedPainter->worldTransform();
+diff --git a/tests/auto/widgets/effects/qgraphicseffect/tst_qgraphicseffect.cpp b/tests/auto/widgets/effects/qgraphicseffect/tst_qgraphicseffect.cpp
+index dfe5baba71..a1cb729849 100644
+--- a/tests/auto/widgets/effects/qgraphicseffect/tst_qgraphicseffect.cpp
++++ b/tests/auto/widgets/effects/qgraphicseffect/tst_qgraphicseffect.cpp
+@@ -52,7 +52,6 @@ private slots:
+ void boundingRect2();
+ void draw();
+ void opacity();
+- void nestedOpaqueOpacity();
+ void grayscale();
+ void colorize();
+ void drawPixmapItem();
+@@ -408,26 +407,6 @@ void tst_QGraphicsEffect::opacity()
+ QCOMPARE(effect->m_opacity, qreal(0.5));
+ }
+
+-void tst_QGraphicsEffect::nestedOpaqueOpacity()
+-{
+- // QTBUG-60231: Nesting widgets with a QGraphicsEffect on a toplevel with
+- // QGraphicsOpacityEffect caused crashes due to constructing several
+- // QPainter instances on a device in the fast path for
+- // QGraphicsOpacityEffect::opacity=1
+- QWidget topLevel;
+- topLevel.setWindowTitle(QTest::currentTestFunction());
+- topLevel.resize(320, 200);
+- QGraphicsOpacityEffect *opacityEffect = new QGraphicsOpacityEffect;
+- opacityEffect->setOpacity(1);
+- topLevel.setGraphicsEffect(opacityEffect);
+- QWidget *child = new QWidget(&topLevel);
+- child->resize(topLevel.size() / 2);
+- QGraphicsDropShadowEffect *childEffect = new QGraphicsDropShadowEffect;
+- child->setGraphicsEffect(childEffect);
+- topLevel.show();
+- QVERIFY(QTest::qWaitForWindowExposed(&topLevel));
+-}
+-
+ void tst_QGraphicsEffect::grayscale()
+ {
+ if (qApp->desktop()->depth() < 24)
+--
+2.16.2
+
diff --git a/abs/core/qt5-canvas3d/PKGBUILD b/abs/core/qt5-canvas3d/PKGBUILD
new file mode 100644
index 0000000..bc239a6
--- /dev/null
+++ b/abs/core/qt5-canvas3d/PKGBUILD
@@ -0,0 +1,41 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-canvas3d
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='A JavaScript 3D rendering API for Qt Quick'
+depends=('qt5-declarative')
+makedepends=()
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('de829a8e6aa4b8496048e9b6f3bff306a80c35935855a94426025ddfb8bcb0c0')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "$pkgdir/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-connectivity/PKGBUILD b/abs/core/qt5-connectivity/PKGBUILD
new file mode 100644
index 0000000..3ae356b
--- /dev/null
+++ b/abs/core/qt5-connectivity/PKGBUILD
@@ -0,0 +1,42 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-connectivity
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='Provides access to Bluetooth hardware'
+depends=('qt5-base' 'bluez-libs')
+makedepends=('qt5-declarative')
+optdepends=('qt5-declarative: QML bindings')
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('652821dc6819658ec4bc1a6bf149fd7a61008748ff4745b54f038ccf276d3ec9')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "$pkgdir/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-declarative/PKGBUILD b/abs/core/qt5-declarative/PKGBUILD
new file mode 100644
index 0000000..9a76eb6
--- /dev/null
+++ b/abs/core/qt5-declarative/PKGBUILD
@@ -0,0 +1,57 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-declarative
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=2
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='Classes for QML and JavaScript languages'
+depends=('qt5-xmlpatterns')
+makedepends=('python2')
+groups=('qt' 'qt5')
+conflicts=('qtchooser' 'qt5-declarative-render2d')
+replaces=('qt5-declarative-render2d')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz"
+ qtbug-65789.patch::"https://github.com/qt/qtdeclarative/commit/f42f1366.patch")
+sha256sums=('3af9ed51bce5b5c6f04c4a67a6008f98765ccde897c43fff670621ab70789553'
+ '4a44baeb8b08d8e9e6ac76ffc0a0baf521b09c2396ae5926f56d0794cedd2586')
+
+prepare() {
+ mkdir -p build
+
+ # Use python2 for Python 2.x
+ find -name '*.pro' -o -name '*.pri' | xargs sed -i -e 's|python -c|python2 -c|g' -e 's|python \$|python2 \$|g'
+
+ cd ${_pkgfqn}
+ patch -Rp1 -i ../qtbug-65789.patch # https://bugreports.qt.io/browse/QTBUG-65789
+}
+
+build() {
+ cd build
+
+ export PYTHON=python2
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ # Symlinks for backwards compatibility
+ for b in "$pkgdir"/usr/bin/*; do
+ ln -s /usr/bin/$(basename $b) "$pkgdir"/usr/bin/$(basename $b)-qt5
+ done
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "$pkgdir/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-declarative/qtbug-61754.patch b/abs/core/qt5-declarative/qtbug-61754.patch
new file mode 100644
index 0000000..e5352ec
--- /dev/null
+++ b/abs/core/qt5-declarative/qtbug-61754.patch
@@ -0,0 +1,25 @@
+From 768f606cd3cd37c235e85225127201a42d272946 Mon Sep 17 00:00:00 2001
+From: Joni Poikelin <joni.poikelin@qt.io>
+Date: Thu, 17 Aug 2017 09:49:25 +0300
+Subject: [PATCH] Fix memory leaks with threaded renderer
+
+Reverts 39061af50cc3092289cdd71d17802139590ecb59 and calls endSync()
+instead after syncSceneGraph().
+
+Task-number: QTBUG-61754
+Change-Id: I7b51ffdc93557bacd93927dd642ec3715980b21c
+Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
+Reviewed-by: Roger Zanoni <rogerzanoni@gmail.com>
+---
+diff --git a/src/quick/scenegraph/qsgthreadedrenderloop.cpp b/src/quick/scenegraph/qsgthreadedrenderloop.cpp
+index 3a8e673c0..d28a73da2 100644
+--- a/src/quick/scenegraph/qsgthreadedrenderloop.cpp
++++ b/src/quick/scenegraph/qsgthreadedrenderloop.cpp
+@@ -553,6 +553,7 @@ void QSGRenderThread::sync(bool inExpose)
+ if (d->renderer)
+ d->renderer->clearChangedFlag();
+ d->syncSceneGraph();
++ sgrc->endSync();
+ if (!hadRenderer && d->renderer) {
+ qCDebug(QSG_LOG_RENDERLOOP) << QSG_RT_PAD << "- renderer was created";
+ syncResultedInChanges = true;
diff --git a/abs/core/qt5-doc/PKGBUILD b/abs/core/qt5-doc/PKGBUILD
new file mode 100644
index 0000000..1984921
--- /dev/null
+++ b/abs/core/qt5-doc/PKGBUILD
@@ -0,0 +1,63 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+# Contributor: Michael Hansen <zrax0111 gmail com>
+
+pkgname=qt5-doc
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('any')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='A cross-platform application and UI framework (Documentation)'
+depends=('qt5-base')
+makedepends=('qt5-tools' 'python2' 'pciutils' 'libxtst' 'libxcursor' 'libxrandr' 'libxss' 'libxcomposite' 'gperf' 'nss')
+groups=('qt' 'qt5')
+_pkgfqn="qt-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/single/${_pkgfqn}.tar.xz"
+ qt-no-statx.patch)
+sha256sums=('05ffba7b811b854ed558abf2be2ddbd3bb6ddd0b60ea4b5da75d277ac15e740a'
+ '5cd1d90622cc53609806a3ce0b2811b28f0e6e20eb835861de4492dddeef6e52')
+
+prepare() {
+ cd ${_pkgfqn}
+
+ ln -s /usr/bin qttools/
+ ln -s /usr/bin/{rcc,uic,moc} qtbase/bin/
+
+ # Hack to force using python2
+ cd "$srcdir"
+ mkdir -p bin
+ ln -s /usr/bin/python2 bin/python
+
+ # Don't use the statx syscall https://bugs.archlinux.org/task/56289 https://bugreports.qt.io/browse/QTBUG-64490
+ cd ${_pkgfqn}/qtbase
+ patch -p1 -i "$srcdir"/qt-no-statx.patch
+}
+
+build() {
+ cd ${_pkgfqn}
+
+ export PATH="$srcdir/bin:$PATH"
+ PYTHON=/usr/bin/python2 ./configure -confirm-license -opensource \
+ -prefix /usr \
+ -docdir /usr/share/doc/qt \
+ -headerdir /usr/include/qt \
+ -archdatadir /usr/lib/qt \
+ -datadir /usr/share/qt \
+ -sysconfdir /etc/xdg \
+ -examplesdir /usr/share/doc/qt/examples
+ make docs
+}
+
+package() {
+ cd ${_pkgfqn}
+ make INSTALL_ROOT="$pkgdir" install_docs
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+
+# Fix conflicts with qt5-examples
+ rm -r "$pkgdir"/usr/share/doc/qt/examples
+}
diff --git a/abs/core/qt5-doc/qt-no-statx.patch b/abs/core/qt5-doc/qt-no-statx.patch
new file mode 100644
index 0000000..56150f7
--- /dev/null
+++ b/abs/core/qt5-doc/qt-no-statx.patch
@@ -0,0 +1,11 @@
+--- qtbase-everywhere-src-5.10.0-beta4/src/corelib/io/qfilesystemengine_unix.cpp.orig 2017-11-14 12:10:28.156094557 +0000
++++ qtbase-everywhere-src-5.10.0-beta4/src/corelib/io/qfilesystemengine_unix.cpp 2017-11-14 12:10:46.156136206 +0000
+@@ -95,7 +95,7 @@
+ { return syscall(SYS_renameat2, oldfd, oldpath, newfd, newpath, flags); }
+ # endif
+
+-# if !QT_CONFIG(statx) && defined(SYS_statx) && QT_HAS_INCLUDE(<linux/stat.h>)
++# if 0
+ # include <linux/stat.h>
+ static int statx(int dirfd, const char *pathname, int flag, unsigned mask, struct statx *statxbuf)
+ { return syscall(SYS_statx, dirfd, pathname, flag, mask, statxbuf); }
diff --git a/abs/core/qt5-graphicaleffects/PKGBUILD b/abs/core/qt5-graphicaleffects/PKGBUILD
new file mode 100644
index 0000000..fa62aa5
--- /dev/null
+++ b/abs/core/qt5-graphicaleffects/PKGBUILD
@@ -0,0 +1,37 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-graphicaleffects
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='Graphical effects for use with Qt Quick 2'
+depends=('qt5-declarative')
+makedepends=()
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('3f3b0631b579630bf58e99f3ca0d8dfdb6a44153c63cf90ac9e07041b4b1847f')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-imageformats/PKGBUILD b/abs/core/qt5-imageformats/PKGBUILD
new file mode 100644
index 0000000..90e39f7
--- /dev/null
+++ b/abs/core/qt5-imageformats/PKGBUILD
@@ -0,0 +1,37 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-imageformats
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='Plugins for additional image formats: TIFF, MNG, TGA, WBMP'
+depends=('qt5-base' 'jasper' 'libmng' 'libwebp')
+makedepends=()
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('2804baa2779eae015096820e233d7f86bb7fde9853b7c9150a321a453422a283')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-location/PKGBUILD b/abs/core/qt5-location/PKGBUILD
new file mode 100644
index 0000000..d9f14ed
--- /dev/null
+++ b/abs/core/qt5-location/PKGBUILD
@@ -0,0 +1,42 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-location
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='Provides access to position, satellite and area monitoring classes'
+depends=('qt5-declarative')
+makedepends=('gypsy' 'gconf')
+optdepends=('gypsy: Gypsy geolocation plugin')
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('5e5cc05517c701a2c8ebba1fbe3ddff2b6b90d5aa554d307b1c477fe0cfd72c9')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "$pkgdir/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-multimedia/PKGBUILD b/abs/core/qt5-multimedia/PKGBUILD
new file mode 100644
index 0000000..df44bc4
--- /dev/null
+++ b/abs/core/qt5-multimedia/PKGBUILD
@@ -0,0 +1,42 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-multimedia
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='Classes for audio, video, radio and camera functionality'
+depends=('qt5-base' 'gst-plugins-base' 'openal')
+makedepends=('qt5-declarative')
+optdepends=('qt5-declarative: QML bindings' 'gst-plugins-good: camera support')
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('a1fa98015ee5a6b81f2d337abc98d8b297c6718f7714a1f13fccfd2934c23649')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "$pkgdir/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-multimedia/__changelog b/abs/core/qt5-multimedia/__changelog
new file mode 100644
index 0000000..aa8f806
--- /dev/null
+++ b/abs/core/qt5-multimedia/__changelog
@@ -0,0 +1,2 @@
+PKGBUILD: remove libpulse
+PKGBUILD: remove gst-plugins-bad deps
diff --git a/abs/core/qt5-networkauth/PKGBUILD b/abs/core/qt5-networkauth/PKGBUILD
new file mode 100644
index 0000000..db17b48
--- /dev/null
+++ b/abs/core/qt5-networkauth/PKGBUILD
@@ -0,0 +1,39 @@
+# Maintainer: Antonio Rojas <arojas@archlinux.org>
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+
+pkgname=qt5-networkauth
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=(x86_64)
+url='http://qt-project.org/'
+license=(GPL3 LGPL3 FDL custom)
+pkgdesc='Network authentication module'
+depends=(qt5-base)
+groups=(qt qt5)
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('97231c319bd623d81eebaa1b5cdba4064bc4e69332c695a15cf8792b54b5dcdc')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "$pkgdir/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-quickcontrols/PKGBUILD b/abs/core/qt5-quickcontrols/PKGBUILD
new file mode 100644
index 0000000..129d0e5
--- /dev/null
+++ b/abs/core/qt5-quickcontrols/PKGBUILD
@@ -0,0 +1,41 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-quickcontrols
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='Reusable Qt Quick based UI controls to create classic desktop-style user interfaces'
+depends=('qt5-declarative')
+makedepends=()
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('d231a1993dc6a3f0dbc60a21d01fc0be15b0c26e881bd0631573952ea61682b7')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "$pkgdir/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-quickcontrols2/PKGBUILD b/abs/core/qt5-quickcontrols2/PKGBUILD
new file mode 100644
index 0000000..ff69332
--- /dev/null
+++ b/abs/core/qt5-quickcontrols2/PKGBUILD
@@ -0,0 +1,41 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-quickcontrols2
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='Next generation user interface controls based on Qt Quick'
+depends=('qt5-declarative')
+optdepends=('qt5-graphicaleffects: for the Material style')
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('5dc64a1b901e418b76fd3bf65dfa87a0cb11338741fb8970211c1df6df0e604a')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "$pkgdir/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-script/PKGBUILD b/abs/core/qt5-script/PKGBUILD
new file mode 100644
index 0000000..8717c07
--- /dev/null
+++ b/abs/core/qt5-script/PKGBUILD
@@ -0,0 +1,41 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-script
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='Classes for making Qt applications scriptable. Provided for Qt 4.x compatibility'
+depends=('qt5-base')
+makedepends=()
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('e0618af7cb1f1f30d292c04cf484e3507cf6f4815f79870e35d2b0ce7ac9532d')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "$pkgdir/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-sensors/PKGBUILD b/abs/core/qt5-sensors/PKGBUILD
new file mode 100644
index 0000000..27dafac
--- /dev/null
+++ b/abs/core/qt5-sensors/PKGBUILD
@@ -0,0 +1,42 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-sensors
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='Provides access to sensor hardware and motion gesture recognition'
+depends=('qt5-base')
+makedepends=('qt5-declarative')
+optdepends=('qt5-declarative: QML bindings')
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('bb0df76c0e53cf2b39d10dbf0964706a264413aae74a4596119143ab4d165c96')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "$pkgdir/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-serialport/PKGBUILD b/abs/core/qt5-serialport/PKGBUILD
new file mode 100644
index 0000000..1add931
--- /dev/null
+++ b/abs/core/qt5-serialport/PKGBUILD
@@ -0,0 +1,41 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-serialport
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='Provides access to hardware and virtual serial ports'
+depends=('qt5-base')
+makedepends=()
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('08e4cb13bbf165eb99857301f3cffe280a4946ff58a34ccc542ad1f790194a9e')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "$pkgdir/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-svg/PKGBUILD b/abs/core/qt5-svg/PKGBUILD
new file mode 100644
index 0000000..0e13ecc
--- /dev/null
+++ b/abs/core/qt5-svg/PKGBUILD
@@ -0,0 +1,40 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-svg
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='Classes for displaying the contents of SVG files'
+depends=('qt5-base')
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('00e00c04abcc8363cf7d94ca8b16af61840995a4af23685d49fa4ccafa1c7f5a')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "$pkgdir/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-tools/PKGBUILD b/abs/core/qt5-tools/PKGBUILD
new file mode 100644
index 0000000..f49927d
--- /dev/null
+++ b/abs/core/qt5-tools/PKGBUILD
@@ -0,0 +1,75 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-tools
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='A cross-platform application and UI framework (Development Tools, QtHelp)'
+depends=('qt5-base' 'hicolor-icon-theme')
+makedepends=('qt5-declarative' 'qt5-webkit' 'vulkan-headers')
+optdepends=('qt5-doc: documentation' 'qt5-webkit: for Qt Assistant')
+groups=('qt' 'qt5')
+conflicts=('qtchooser')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz"
+ {assistant,designer,linguist,qdbusviewer}.desktop)
+sha256sums=('f1ea441e5fe138756e6de3b60ab7d8d3051799eabe85a9408c995dfd4d048a53'
+ '8092d6d846e39632107b14726fa112862d800e929ef10f05f2a284dbda9b53c4'
+ '366e18ba400068df40d26a3c944d6bd4925bf22c32f171b837a3f4e387eff019'
+ 'db1ad1d27ce73820b8d50291618b6f817292f15f55107274064b9ae99201069a'
+ 'cd94367e35f99ab85277aa95985bbde292a9cc82db2c04c4efdaed5799aa16db')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="${pkgdir}" install
+
+ cd ../${_pkgfqn}
+ # install missing icons and desktop files
+ for icon in src/linguist/linguist/images/icons/linguist-*-32.png ; do
+ size=$(echo $(basename ${icon}) | cut -d- -f2)
+ install -p -D -m644 ${icon} \
+ "${pkgdir}/usr/share/icons/hicolor/${size}x${size}/apps/linguist.png"
+ done
+
+ install -D -m644 src/assistant/assistant/images/assistant.png \
+ "${pkgdir}/usr/share/icons/hicolor/32x32/apps/assistant.png"
+ install -D -m644 src/assistant/assistant/images/assistant-128.png \
+ "${pkgdir}/usr/share/icons/hicolor/128x128/apps/assistant.png"
+ install -D -m644 src/designer/src/designer/images/designer.png \
+ "${pkgdir}/usr/share/icons/hicolor/128x128/apps/QtProject-designer.png"
+ install -D -m644 src/qdbus/qdbusviewer/images/qdbusviewer.png \
+ "${pkgdir}/usr/share/icons/hicolor/32x32/apps/qdbusviewer.png"
+ install -D -m644 src/qdbus/qdbusviewer/images/qdbusviewer-128.png \
+ "${pkgdir}/usr/share/icons/hicolor/128x128/apps/qdbusviewer.png"
+ install -d "${pkgdir}/usr/share/applications"
+ install -m644 "${srcdir}"/{linguist,designer,assistant,qdbusviewer}.desktop \
+ "${pkgdir}/usr/share/applications/"
+
+ # Symlinks for backwards compatibility
+ for b in "${pkgdir}"/usr/bin/*; do
+ ln -s /usr/bin/$(basename $b) "${pkgdir}"/usr/bin/$(basename $b)-qt5
+ done
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "${pkgdir}/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5/assistant.desktop b/abs/core/qt5-tools/assistant.desktop
index 9d61004..c84bbd9 100644
--- a/abs/core/qt5/assistant.desktop
+++ b/abs/core/qt5-tools/assistant.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=Qt Assistant
Comment=Shows Qt documentation and examples
-Exec=/usr/lib/qt/bin/assistant
+Exec=assistant
Icon=assistant
Terminal=false
Type=Application
diff --git a/abs/core/qt5/designer.desktop b/abs/core/qt5-tools/designer.desktop
index b39e77a..fc020ba 100644
--- a/abs/core/qt5/designer.desktop
+++ b/abs/core/qt5-tools/designer.desktop
@@ -2,7 +2,7 @@
Name=Qt Designer
GenericName=Interface Designer
Comment=Design GUIs for Qt applications
-Exec=/usr/lib/qt/bin/designer
+Exec=designer
Icon=QtProject-designer
MimeType=application/x-designer;
Terminal=false
diff --git a/abs/core/qt5/linguist.desktop b/abs/core/qt5-tools/linguist.desktop
index c6d1aa4..aa5696b 100644
--- a/abs/core/qt5/linguist.desktop
+++ b/abs/core/qt5-tools/linguist.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=Qt Linguist
Comment=Add translations to Qt applications
-Exec=/usr/lib/qt/bin/linguist
+Exec=linguist
Icon=linguist
MimeType=text/vnd.trolltech.linguist;application/x-linguist;
Terminal=false
diff --git a/abs/core/qt5/qdbusviewer.desktop b/abs/core/qt5-tools/qdbusviewer.desktop
index 9165b6f..9b8ab2a 100644
--- a/abs/core/qt5/qdbusviewer.desktop
+++ b/abs/core/qt5-tools/qdbusviewer.desktop
@@ -2,7 +2,7 @@
Name=Qt QDbusViewer
GenericName=D-Bus Debugger
Comment=Debug D-Bus applications
-Exec=/usr/lib/qt/bin/qdbusviewer
+Exec=qdbusviewer
Icon=qdbusviewer
Terminal=false
Type=Application
diff --git a/abs/core/qt5-translations/PKGBUILD b/abs/core/qt5-translations/PKGBUILD
new file mode 100644
index 0000000..9c71b97
--- /dev/null
+++ b/abs/core/qt5-translations/PKGBUILD
@@ -0,0 +1,37 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-translations
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('any')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='A cross-platform application and UI framework (Translations)'
+depends=('qt5-base')
+makedepends=('qt5-tools')
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('1f6d840e3d04b00b976bc1a86ea2be9d61051b7c3455dc2b891fae61772643fd')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-webchannel/PKGBUILD b/abs/core/qt5-webchannel/PKGBUILD
new file mode 100644
index 0000000..6335b46
--- /dev/null
+++ b/abs/core/qt5-webchannel/PKGBUILD
@@ -0,0 +1,41 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-webchannel
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='Provides access to QObject or QML objects from HTML clients for seamless integration of Qt applications with HTML/JavaScript clients'
+depends=('qt5-declarative')
+makedepends=()
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('c22c449fecb052597d12f8dd59498db39767037f9098123f3defc04eb20a3764')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "$pkgdir/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-webengine/PKGBUILD b/abs/core/qt5-webengine/PKGBUILD
new file mode 100644
index 0000000..58a1153
--- /dev/null
+++ b/abs/core/qt5-webengine/PKGBUILD
@@ -0,0 +1,62 @@
+# $Id$
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-webengine
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('LGPL3' 'LGPL2.1' 'BSD')
+pkgdesc='Provides support for web applications using the Chromium browser project'
+depends=('qt5-webchannel' 'qt5-location' 'libxcomposite' 'libxrandr' 'pciutils' 'libxss'
+ 'libevent' 'snappy' 'nss' 'protobuf' 'libxslt' 'minizip' 'ffmpeg' 're2' 'libvpx')
+makedepends=('python2' 'git' 'gperf' 'jsoncpp' 'ninja' 'qt5-tools')
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz"
+ qtwebengine-harmony.patch
+ qtwebengine-no-gpu.patch)
+sha256sums=('12644f8d2ba8354a2a533d5a7f3f5139c6ff168c2f51aa3e21b701db6dbc01de'
+ 'feca54ab09ac0fc9d0626770a6b899a6ac5a12173c7d0c1005bc3964ec83e7b3'
+ '6cd70c37f3b3aea926f1ee20c1f59354f2a02d240dbf344c6dc0a75f8aa8e07b')
+
+prepare() {
+ mkdir -p build
+
+ # Hack to force using python2
+ mkdir -p bin
+ ln -s /usr/bin/python2 bin/python
+
+ cd ${_pkgfqn}
+
+ # FreeType 2.8.1
+ patch -Np1 -i ../qtwebengine-harmony.patch
+ # Disable GPU rendering on nouveau and wayland (openSUSE) https://bugreports.qt.io/browse/QTBUG-65682
+ patch -p1 -i ../qtwebengine-no-gpu.patch
+}
+
+build() {
+ cd build
+
+ export PATH="$srcdir/bin:$PATH"
+ qmake ../${_pkgfqn} -- \
+ -proprietary-codecs \
+ -system-ffmpeg \
+ -webp \
+ -spellchecker
+# -webengine-icu
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "$pkgdir/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -Dm644 "$srcdir"/${_pkgfqn}/src/3rdparty/chromium/LICENSE "$pkgdir"/usr/share/licenses/${pkgname}/LICENSE.chromium
+}
diff --git a/abs/core/qt5-webengine/qtwebengine-harmony.patch b/abs/core/qt5-webengine/qtwebengine-harmony.patch
new file mode 100644
index 0000000..6343f7f
--- /dev/null
+++ b/abs/core/qt5-webengine/qtwebengine-harmony.patch
@@ -0,0 +1,77 @@
+--- qtwebengine-opensource-src-5.9.1/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp.orig 2017-10-10 17:42:06.956950985 +0200
++++ qtwebengine-opensource-src-5.9.1/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2017-10-10 17:46:05.824187787 +0200
+@@ -99,8 +99,6 @@
+ FreeTypeLibrary()
+ : fGetVarDesignCoordinates(nullptr)
+ , fLibrary(nullptr)
+- , fIsLCDSupported(false)
+- , fLCDExtra(0)
+ {
+ if (FT_New_Library(&gFTMemory, &fLibrary)) {
+ return;
+@@ -147,12 +145,7 @@
+ }
+ #endif
+
+- // Setup LCD filtering. This reduces color fringes for LCD smoothed glyphs.
+- // The default has changed over time, so this doesn't mean the same thing to all users.
+- if (FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT) == 0) {
+- fIsLCDSupported = true;
+- fLCDExtra = 2; //Using a filter adds one full pixel to each side.
+- }
++ FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT);
+ }
+ ~FreeTypeLibrary() {
+ if (fLibrary) {
+@@ -161,8 +153,6 @@
+ }
+
+ FT_Library library() { return fLibrary; }
+- bool isLCDSupported() { return fIsLCDSupported; }
+- int lcdExtra() { return fLCDExtra; }
+
+ // FT_Get_{MM,Var}_{Blend,Design}_Coordinates were added in FreeType 2.7.1.
+ // Prior to this there was no way to get the coordinates out of the FT_Face.
+@@ -173,8 +163,6 @@
+
+ private:
+ FT_Library fLibrary;
+- bool fIsLCDSupported;
+- int fLCDExtra;
+
+ // FT_Library_SetLcdFilterWeights was introduced in FreeType 2.4.0.
+ // The following platforms provide FreeType of at least 2.4.0.
+@@ -704,17 +692,6 @@
+ rec->fTextSize = SkIntToScalar(1 << 14);
+ }
+
+- if (isLCD(*rec)) {
+- // TODO: re-work so that FreeType is set-up and selected by the SkFontMgr.
+- SkAutoMutexAcquire ama(gFTMutex);
+- ref_ft_library();
+- if (!gFTLibrary->isLCDSupported()) {
+- // If the runtime Freetype library doesn't support LCD, disable it here.
+- rec->fMaskFormat = SkMask::kA8_Format;
+- }
+- unref_ft_library();
+- }
+-
+ SkPaint::Hinting h = rec->getHinting();
+ if (SkPaint::kFull_Hinting == h && !isLCD(*rec)) {
+ // collapse full->normal hinting if we're not doing LCD
+@@ -1115,11 +1092,11 @@
+ void SkScalerContext_FreeType::updateGlyphIfLCD(SkGlyph* glyph) {
+ if (isLCD(fRec)) {
+ if (fLCDIsVert) {
+- glyph->fHeight += gFTLibrary->lcdExtra();
+- glyph->fTop -= gFTLibrary->lcdExtra() >> 1;
++ glyph->fHeight += 2;
++ glyph->fTop -= 1;
+ } else {
+- glyph->fWidth += gFTLibrary->lcdExtra();
+- glyph->fLeft -= gFTLibrary->lcdExtra() >> 1;
++ glyph->fWidth += 2;
++ glyph->fLeft -= 1;
+ }
+ }
+ }
diff --git a/abs/core/qt5-webengine/qtwebengine-no-gpu.patch b/abs/core/qt5-webengine/qtwebengine-no-gpu.patch
new file mode 100644
index 0000000..4662f5f
--- /dev/null
+++ b/abs/core/qt5-webengine/qtwebengine-no-gpu.patch
@@ -0,0 +1,99 @@
+From: Antonio Larrosa <alarrosa@suse.com>
+Subject: Disable GPU when using nouveau or running on wayland
+References: boo#1005323, boo#1060990
+
+Qt WebEngine uses multi-threaded OpenGL, which nouveau does not support.
+It also crashes when running on wayland, the cause is not yet known.
+Work around these issues by not doing GPU-accelerated rendering in such
+cases.
+
+Index: qtwebengine-everywhere-src-5.10.0/src/core/web_engine_context.cpp
+===================================================================
+--- qtwebengine-everywhere-src-5.10.0.orig/src/core/web_engine_context.cpp
++++ qtwebengine-everywhere-src-5.10.0/src/core/web_engine_context.cpp
+@@ -93,6 +93,7 @@
+ #include <QOffscreenSurface>
+ #ifndef QT_NO_OPENGL
+ # include <QOpenGLContext>
++# include <QOpenGLFunctions>
+ #endif
+ #include <QQuickWindow>
+ #include <QStringList>
+@@ -167,6 +168,39 @@ void dummyGetPluginCallback(const std::v
+ }
+ #endif
+
++#ifndef QT_NO_OPENGL
++QString openGLVendor()
++{
++ QString vendor;
++
++ QOpenGLContext *oldContext = QOpenGLContext::currentContext();
++ QSurface *oldSurface = 0;
++ if (oldContext)
++ oldSurface = oldContext->surface();
++
++ QScopedPointer<QOffscreenSurface> surface( new QOffscreenSurface );
++ surface->create();
++ QOpenGLContext context;
++ if (!context.create()) {
++ qDebug() << "Error creating openGL context";
++ }
++ else if (!context.makeCurrent(surface.data())) {
++ qDebug() << "Error making openGL context current context";
++ } else {
++ const GLubyte *p;
++ QOpenGLFunctions *f = context.functions();
++ if ((p = f->glGetString(GL_VENDOR)))
++ vendor = QString::fromLatin1(reinterpret_cast<const char *>(p));
++ }
++
++ context.doneCurrent();
++ if (oldContext && oldSurface)
++ oldContext->makeCurrent(oldSurface);
++
++ return vendor;
++}
++#endif
++
+ } // namespace
+
+ namespace QtWebEngineCore {
+@@ -379,6 +413,27 @@ WebEngineContext::WebEngineContext()
+ const char *glType = 0;
+ #ifndef QT_NO_OPENGL
+
++ bool disableGpu = qEnvironmentVariableIsSet("QT_WEBENGINE_DISABLE_GPU");
++
++ if (!qEnvironmentVariableIsSet("QT_WEBENGINE_DISABLE_WAYLAND_WORKAROUND") && platform.startsWith("wayland", Qt::CaseInsensitive))
++ {
++ qWarning() << "Running on wayland. Qt WebEngine will disable usage of the GPU.\n"
++ "Note: you can set the QT_WEBENGINE_DISABLE_WAYLAND_WORKAROUND\n"
++ "environment variable before running this application, but this is \n"
++ "not recommended since this usually causes applications to crash.";
++ disableGpu = true;
++ }
++
++ if (!qEnvironmentVariableIsSet("QT_WEBENGINE_DISABLE_NOUVEAU_WORKAROUND") && openGLVendor() == QStringLiteral("nouveau"))
++ {
++ qWarning() << "Nouveau openGL driver detected. Qt WebEngine will disable usage of the GPU.\n"
++ "Note: you can set the QT_WEBENGINE_DISABLE_NOUVEAU_WORKAROUND\n"
++ "environment variable before running this application, but this is \n"
++ "not recommended since this usually causes applications to crash as\n"
++ "Nouveau openGL drivers don't support multithreaded rendering";
++ disableGpu = true;
++ }
++
+ bool tryGL =
+ !usingANGLE()
+ && (!usingSoftwareDynamicGL()
+@@ -389,7 +444,7 @@ WebEngineContext::WebEngineContext()
+ || enableWebGLSoftwareRendering
+ #endif
+ )
+- && !usingQtQuick2DRenderer();
++ && !usingQtQuick2DRenderer() && !disableGpu;
+
+ if (tryGL) {
+ if (qt_gl_global_share_context() && qt_gl_global_share_context()->isValid()) {
+
diff --git a/abs/core/qt5-webkit/PKGBUILD b/abs/core/qt5-webkit/PKGBUILD
new file mode 100644
index 0000000..c12c4bd
--- /dev/null
+++ b/abs/core/qt5-webkit/PKGBUILD
@@ -0,0 +1,72 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Maintainer: Antonio Rojas <arojas@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-webkit
+_qtver=5.212.0-alpha2
+pkgver=${_qtver/-/}
+pkgrel=12
+arch=(x86_64)
+url='http://qt-project.org/'
+license=(GPL3 LGPL3 FDL custom)
+pkgdesc='Classes for a WebKit2 based implementation and a new QML API'
+depends=(qt5-location qt5-sensors qt5-webchannel libwebp libxslt libxcomposite gst-plugins-base hyphen)
+makedepends=(cmake ruby gperf python2 qt5-doc qt5-tools)
+optdepends=('gst-plugins-good: Webm codec support')
+conflicts=(qt5-webkit-ng)
+replaces=(qt5-webkit-ng)
+groups=(qt qt5)
+_pkgfqn="${pkgname/5-/}-opensource-src-${_qtver}"
+source=("https://github.com/annulen/webkit/releases/download/qtwebkit-$_qtver/qtwebkit-$_qtver.tar.xz"
+ qt5-webkit-gcc7.patch
+ qt5-webkit-null-pointer-dereference.patch
+ qt5-webkit-trojita-1.patch::"https://github.com/annulen/webkit/commit/6faf1121.patch"
+ qt5-webkit-trojita-2.patch::"https://github.com/annulen/webkit/commit/76420459.patch"
+ qt5-webkit-cmake3.10.patch::"https://github.com/annulen/webkit/commit/f51554bf.patch")
+sha256sums=('f8f901de567e11fc5659402b6b827eac75505ff9c5072d8e919aa306003f8f8a'
+ 'f108833562d766d4c086026f9202b2ebc8c19e97fddedce952afed78df3c0720'
+ '510e1f78c2bcd76909703a097dbc1d5c9c6ce4cd94883c26138f09cc10121f43'
+ 'bd22bd7842d5ad1cb1f5a4b6acb2674509732274d5f9dc51943144dff76996ae'
+ 'b42b70fd2a4a36b0ff48fc4e0dc386b3dda373e6fec18f3be9f5e2d3b04e0aa3'
+ 'b4e6c85fcb062e7cc141b0e34977bcc4f9c8677c773fc4b310151b85f51e7189')
+
+prepare() {
+ mkdir -p build
+
+# Fix crashes with GCC7 https://bugs.webkit.org/show_bug.cgi?id=173407
+ cd qtwebkit-$_qtver
+ patch -p1 -i ../qt5-webkit-gcc7.patch
+# Fix layout issues in trojita https://github.com/annulen/webkit/issues/511
+ patch -p1 -i ../qt5-webkit-trojita-1.patch
+ patch -p1 -i ../qt5-webkit-trojita-2.patch
+# Fix null point dereference (Fedora) https://github.com/annulen/webkit/issues/573
+ patch -p1 -i ../qt5-webkit-null-pointer-dereference.patch
+# Fix build with cmake 3.10
+ patch -p1 -i ../qt5-webkit-cmake3.10.patch
+}
+
+build() {
+ cd build
+
+ cmake ../qtwebkit-$_qtver \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DPORT=Qt \
+ -DENABLE_TOOLS=OFF
+ make
+}
+
+package() {
+ cd build
+ make DESTDIR="$pkgdir" install
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+
+# Fix pkgconfig files
+ sed -e 's|qt/Qt5WebKit|qt/QtWebKit|' -i "$pkgdir"/usr/lib/pkgconfig/Qt5WebKit.pc
+ sed -e 's|qt/Qt5WebKitWidgets|qt/QtWebKitWidgets|' -i "$pkgdir"/usr/lib/pkgconfig/Qt5WebKitWidgets.pc
+ sed -e '/Name/a Description: Qt WebKit module' -i "$pkgdir"/usr/lib/pkgconfig/Qt5WebKit.pc
+ sed -e '/Name/a Description: Qt WebKitWidgets module' -i "$pkgdir"/usr/lib/pkgconfig/Qt5WebKitWidgets.pc
+}
diff --git a/abs/core/qt5-webkit/qt5-webkit-gcc7.patch b/abs/core/qt5-webkit/qt5-webkit-gcc7.patch
new file mode 100644
index 0000000..bddb6fc
--- /dev/null
+++ b/abs/core/qt5-webkit/qt5-webkit-gcc7.patch
@@ -0,0 +1,34 @@
+diff -u -r webkitgtk-2.16.5/Source/WTF/wtf/text/StringImpl.h webkitgtk-2.16.5-gcc7/Source/WTF/wtf/text/StringImpl.h
+--- webkitgtk-2.16.5/Source/WTF/wtf/text/StringImpl.h 2017-02-20 17:20:15.000000000 +0100
++++ webkitgtk-2.16.5-gcc7/Source/WTF/wtf/text/StringImpl.h 2017-06-27 13:13:57.801527350 +0200
+@@ -581,29 +581,7 @@
+ // FIXME: Does this really belong in StringImpl?
+ template <typename T> static void copyChars(T* destination, const T* source, unsigned numCharacters)
+ {
+- if (numCharacters == 1) {
+- *destination = *source;
+- return;
+- }
+-
+- if (numCharacters <= s_copyCharsInlineCutOff) {
+- unsigned i = 0;
+-#if (CPU(X86) || CPU(X86_64))
+- const unsigned charsPerInt = sizeof(uint32_t) / sizeof(T);
+-
+- if (numCharacters > charsPerInt) {
+- unsigned stopCount = numCharacters & ~(charsPerInt - 1);
+-
+- const uint32_t* srcCharacters = reinterpret_cast<const uint32_t*>(source);
+- uint32_t* destCharacters = reinterpret_cast<uint32_t*>(destination);
+- for (unsigned j = 0; i < stopCount; i += charsPerInt, ++j)
+- destCharacters[j] = srcCharacters[j];
+- }
+-#endif
+- for (; i < numCharacters; ++i)
+- destination[i] = source[i];
+- } else
+- memcpy(destination, source, numCharacters * sizeof(T));
++ memcpy(destination, source, numCharacters * sizeof(T));
+ }
+
+ ALWAYS_INLINE static void copyChars(UChar* destination, const LChar* source, unsigned numCharacters)
diff --git a/abs/core/qt5-webkit/qt5-webkit-null-pointer-dereference.patch b/abs/core/qt5-webkit/qt5-webkit-null-pointer-dereference.patch
new file mode 100644
index 0000000..97b9f9e
--- /dev/null
+++ b/abs/core/qt5-webkit/qt5-webkit-null-pointer-dereference.patch
@@ -0,0 +1,17 @@
+diff -ur qtwebkit-5.212.0-alpha2/Source/WebKit/qt/WebCoreSupport/QWebPageAdapter.cpp
+qtwebkit-5.212.0-alpha2-fix-null-pointer-dereference/Source/WebKit/qt/WebCoreSupport/QWebPageAdapter.cpp
+--- qtwebkit-5.212.0-alpha2/Source/WebKit/qt/WebCoreSupport/QWebPageAdapter.cpp 2017-06-09 16:11:36.000000000 +0200
++++ qtwebkit-5.212.0-alpha2-fix-null-pointer-dereference/Source/WebKit/qt/WebCoreSupport/QWebPageAdapter.cpp 2017-10-24 21:44:40.504943501
++0200
+@@ -390,7 +390,10 @@
+
+ QString QWebPageAdapter::selectedHtml() const
+ {
+- return page->focusController().focusedOrMainFrame().editor().selectedRange()->toHTML();
++ RefPtr<Range> range = page->focusController().focusedOrMainFrame().editor().selectedRange();
++ if (!range)
++ return QString();
++ return range->toHTML();
+ }
+
+ bool QWebPageAdapter::isContentEditable() const
diff --git a/abs/core/qt5-websockets/PKGBUILD b/abs/core/qt5-websockets/PKGBUILD
new file mode 100644
index 0000000..05a0921
--- /dev/null
+++ b/abs/core/qt5-websockets/PKGBUILD
@@ -0,0 +1,42 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-websockets
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='Provides WebSocket communication compliant with RFC 6455'
+depends=('qt5-base')
+makedepends=('qt5-declarative')
+optdepends=('qt5-declarative: QML bindings')
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('6ecf790955ffe42dce731e10557f4ba625e359e867953d73f7fb453c0bad53ea')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "$pkgdir/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-x11extras/PKGBUILD b/abs/core/qt5-x11extras/PKGBUILD
new file mode 100644
index 0000000..32b35ca
--- /dev/null
+++ b/abs/core/qt5-x11extras/PKGBUILD
@@ -0,0 +1,41 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-x11extras
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='Provides platform-specific APIs for X11'
+depends=('qt5-base')
+makedepends=()
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('c38a371fd50b2da976ed809230678284f029cefb02d240253dcbb3d575dc97b4')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "$pkgdir/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5-xmlpatterns/PKGBUILD b/abs/core/qt5-xmlpatterns/PKGBUILD
new file mode 100644
index 0000000..304d85b
--- /dev/null
+++ b/abs/core/qt5-xmlpatterns/PKGBUILD
@@ -0,0 +1,42 @@
+# $Id: PKGBUILD 240297 2015-06-03 10:22:03Z fyan $
+# Maintainer: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+
+pkgname=qt5-xmlpatterns
+_qtver=5.10.1
+pkgver=${_qtver/-/}
+pkgrel=1
+arch=('x86_64')
+url='http://qt-project.org/'
+license=('GPL3' 'LGPL3' 'FDL' 'custom')
+pkgdesc='Support for XPath, XQuery, XSLT and XML schema validation'
+depends=('qt5-base')
+makedepends=()
+conflicts=('qtchooser')
+groups=('qt' 'qt5')
+_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}"
+source=("http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz")
+sha256sums=('3cdef59ce96a796606e5adc5756c63c8607fb29b281fddb38acee3e674d5e9fe')
+
+prepare() {
+ mkdir -p build
+}
+
+build() {
+ cd build
+
+ qmake ../${_pkgfqn}
+ make
+}
+
+package() {
+ cd build
+ make INSTALL_ROOT="$pkgdir" install
+
+ # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+ find "$pkgdir/usr/lib" -type f -name '*.prl' \
+ -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
+
+ install -d "$pkgdir"/usr/share/licenses
+ ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}
+}
diff --git a/abs/core/qt5/PKGBUILD b/abs/core/qt5/PKGBUILD
deleted file mode 100644
index 8d7bfcb..0000000
--- a/abs/core/qt5/PKGBUILD
+++ /dev/null
@@ -1,579 +0,0 @@
-# $Id$
-# Maintainer: Felix Yan <felixonmars@archlinux.org>
-# Contributor: Andrea Scarpino <andrea@archlinux.org>
-
-pkgbase=qt5
-pkgname=('qt5-3d'
- 'qt5-base'
- 'qt5-canvas3d'
- 'qt5-connectivity'
- 'qt5-declarative'
- 'qt5-doc'
- 'qt5-enginio'
- 'qt5-graphicaleffects'
- 'qt5-imageformats'
- 'qt5-location'
- 'qt5-multimedia'
- 'qt5-quick1'
- 'qt5-quickcontrols'
- 'qt5-script'
- 'qt5-sensors'
- 'qt5-serialport'
- 'qt5-svg'
- 'qt5-tools'
- 'qt5-translations'
- 'qt5-wayland'
- 'qt5-webchannel'
- 'qt5-webengine'
- 'qt5-webkit'
- 'qt5-websockets'
- 'qt5-x11extras'
- 'qt5-xmlpatterns')
-pkgver=5.5.1
-pkgrel=10
-arch=('i686' 'x86_64')
-url='http://www.qt.io/developers'
-license=('GPL3' 'LGPL' 'FDL' 'custom')
-makedepends=('libxcb' 'xcb-proto' 'xcb-util' 'xcb-util-image' 'xcb-util-wm' 'xcb-util-keysyms'
- 'mesa' 'at-spi2-core' 'alsa-lib' 'gst-plugins-base-libs' 'libjpeg-turbo' 'cups'
- 'hicolor-icon-theme' 'desktop-file-utils' 'postgresql-libs' 'nss'
- 'libmysqlclient' 'sqlite' 'unixodbc' 'libfbclient' 'libmng' 'python2' 'ruby'
- 'gperf' 'libxslt' 'libxcomposite' 'fontconfig' 'bluez-libs' 'openal' 'gtk2'
- 'libxkbcommon-x11' 'mtdev' 'harfbuzz' 'libwebp' 'leveldb' 'geoclue' 'pciutils'
- 'libinput' 'yasm' 'git')
-groups=('qt' 'qt5')
-_pkgfqn="qt-everywhere-opensource-src-${pkgver}"
-source=("http://download.qt-project.org/official_releases/qt/${pkgver%.*}/${pkgver}/single/${_pkgfqn}.tar.xz"
- 'assistant.desktop' 'designer.desktop' 'linguist.desktop' 'qdbusviewer.desktop')
-md5sums=('c2a249e8795d45200d997d96860d0353'
- 'b2897dd6a2967bccf8f10e397aafee55'
- '76e150b20178d2d43801f7367232e5f7'
- '188da8f4c87316e730ebf1c6217bf5a0'
- '322b419b16c75d4de0ee7ad0a246caa1')
-
-prepare() {
- cd ${_pkgfqn}
-
- # Build qmake using Arch {C,LD}FLAGS
- # This also sets default {C,CXX,LD}FLAGS for projects built using qmake
- sed -i -e "s|^\(QMAKE_CFLAGS_RELEASE.*\)|\1 ${CFLAGS}|" \
- qtbase/mkspecs/common/gcc-base.conf
- sed -i -e "s|^\(QMAKE_LFLAGS_RELEASE.*\)|\1 ${LDFLAGS}|" \
- qtbase/mkspecs/common/g++-unix.conf
-
- # Use python2 for Python 2.x
- find . -name '*.py' -exec sed -i \
- 's|#![ ]*/usr/bin/python$|&2|;s|#![ ]*/usr/bin/env python$|&2|' {} +
- # in qtwebengine there are still a lot of relative calls which need a workaround
- mkdir "${srcdir}"/python2-path
- ln -s /usr/bin/python2 "${srcdir}"/python2-path/python
-
- # Try to enable proprietary_codecs and use some system yasm
- sed -e 's/contains(WEBENGINE_CONFIG, proprietary_codecs): //' \
- -e '/use_system_ffmpeg=0"/a GYP_ARGS += "-Duse_system_yasm=1"' \
- -i qtwebengine/src/core/gyp_run.pro
-
- sed -i 's/libsystemd-journal/libsystemd/g' \
- qtbase/src/corelib/global/global.pri \
- qtbase/config.tests/unix/journald/journald.pro
-}
-
-build() {
- cd ${_pkgfqn}
-
- export QTDIR="${srcdir}"/${_pkgfqn}
- export LD_LIBRARY_PATH="${QTDIR}"/qtbase/lib:"${QTDIR}"/qttools/lib:"${LD_LIBRARY_PATH}"
- export QT_PLUGIN_PATH="${QTDIR}"/qtbase/plugins
-
- # python2 workaround
- export PATH="${srcdir}/python2-path:$PATH"
-
- # FS#38796
- [[ "${CARCH}" = "i686" ]] && SSE2="-no-sse2"
-
- PYTHON=/usr/bin/python2 ./configure -confirm-license -opensource \
- -prefix /usr \
- -bindir /usr/lib/qt/bin \
- -docdir /usr/share/doc/qt \
- -headerdir /usr/include/qt \
- -archdatadir /usr/lib/qt \
- -datadir /usr/share/qt \
- -sysconfdir /etc/xdg \
- -examplesdir /usr/share/doc/qt/examples \
- -plugin-sql-{psql,mysql,sqlite,odbc,ibase} \
- -system-sqlite \
- -openssl-linked \
- -nomake examples \
- -no-rpath \
- -optimized-qmake \
- -dbus-linked \
- -system-harfbuzz \
- -journald \
- -libinput ${SSE2}
-
- make
-
- # Fix docs build when qt is not installed
- sed -i "s|/usr/lib/qt/bin/qdoc|${QTDIR}/qtbase/bin/qdoc|g" \
- "${QTDIR}"/qtbase/qmake/Makefile.qmake-docs
- find "${QTDIR}" -name Makefile \
- -exec sed -i "s|/usr/lib/qt/bin/qdoc|${QTDIR}/qtbase/bin/qdoc|g" {} +
- sed -i "s|/usr/lib/qt/bin/qhelpgenerator|${QTDIR}/qttools/bin/qhelpgenerator|g" \
- "${QTDIR}"/qtbase/qmake/Makefile.qmake-docs
- find "${QTDIR}" -name Makefile \
- -exec sed -i "s|/usr/lib/qt/bin/qhelpgenerator|${QTDIR}/qttools/bin/qhelpgenerator|g" {} +
- sed -i "s|/usr/lib/qt/bin/qhelpgenerator|${QTDIR}/qttools/bin/qhelpgenerator|g" \
- qtwebkit/Source/Makefile.api
- find "${QTDIR}" -name Makefile \
- -exec sed -i "s|/usr/lib/qt/bin/qmlplugindump|${QTDIR}/qtdeclarative/bin/qmlplugindump|g" {} +
-
- make docs
-}
-
-package_qt5-3d() {
- pkgdesc='C++ and QML APIs for easy inclusion of 3D graphics'
- depends=('qt5-declarative')
- license=('LGPL')
-
- cd ${_pkgfqn}/qt3d
- make INSTALL_ROOT="${pkgdir}" install
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-}
-
-package_qt5-base() {
- pkgdesc='A cross-platform application and UI framework'
- depends=('libjpeg-turbo' 'xcb-util-keysyms' 'libgl' 'dbus' 'fontconfig' 'systemd'
- 'xcb-util-wm' 'libxrender' 'libxi' 'sqlite' 'xcb-util-image' 'icu'
- 'qtchooser' 'libinput' 'libsm' 'libxkbcommon-x11')
- optdepends=('qt5-svg: to use SVG icon themes'
- 'postgresql-libs: PostgreSQL driver'
- 'libmysqlclient: mysql DB driver'
- 'unixodbc: ODBC driver'
- 'libfbclient: Firebird/iBase driver'
- 'mtdev: evdev plugin'
- 'gtk2: GTK2 plugin')
- conflicts=('qt')
-
- cd ${_pkgfqn}/qtbase
- make INSTALL_ROOT="${pkgdir}" install
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
- # Fix wrong qmake path in pri file
- sed -i "s|${srcdir}/${_pkgfqn}/qtbase|/usr|" \
- "${pkgdir}"/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri
-
- # Useful symlinks
- install -d "${pkgdir}"/usr/bin
- for b in "${pkgdir}"/usr/lib/qt/bin/*; do
- ln -s /usr/lib/qt/bin/$(basename $b) "${pkgdir}"/usr/bin/$(basename $b)-qt5
- done
-}
-
-package_qt5-canvas3d() {
- pkgdesc='A JavaScript 3D rendering API for Qt Quick'
- depends=('qt5-declarative')
- license=('LGPL')
-
- cd ${_pkgfqn}/qtcanvas3d
- make INSTALL_ROOT="${pkgdir}" install
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-}
-
-package_qt5-connectivity() {
- pkgdesc='Provides access to Bluetooth hardware'
- depends=('qt5-declarative' 'bluez-libs')
-
- cd ${_pkgfqn}/qtconnectivity
- make INSTALL_ROOT="${pkgdir}" install
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-declarative() {
- pkgdesc='Classes for QML and JavaScript languages'
- depends=('qt5-xmlpatterns')
- conflicts=('qt')
-
- cd ${_pkgfqn}/qtdeclarative
- make INSTALL_ROOT="${pkgdir}" install
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
- # Useful symlinks
- install -d "${pkgdir}"/usr/bin
- for b in "${pkgdir}"/usr/lib/qt/bin/*; do
- ln -s /usr/lib/qt/bin/$(basename $b) "${pkgdir}"/usr/bin/$(basename $b)-qt5
- done
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-doc() {
- pkgdesc='A cross-platform application and UI framework (Documentation)'
- depends=('qt5-base')
-# arch=('any')
- conflicts=('qt-doc')
- replaces=('qt-doc')
- provides=('qt-doc')
- options=('docs' '!emptydirs')
- groups=()
-
- cd ${_pkgfqn}
- make INSTALL_ROOT="${pkgdir}" install_docs
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-enginio() {
- pkgdesc='A Backend-as-a-Service solution to ease the backend development for connected and data-driven application'
- depends=('qt5-declarative')
-
- cd ${_pkgfqn}/qtenginio
- make INSTALL_ROOT="${pkgdir}" install
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-graphicaleffects() {
- pkgdesc='Graphical effects for use with Qt Quick 2'
- depends=('qt5-declarative')
-
- cd ${_pkgfqn}/qtgraphicaleffects
- make INSTALL_ROOT="${pkgdir}" install
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-imageformats() {
- pkgdesc='Plugins for additional image formats: TIFF, MNG, TGA, WBMP'
- depends=('qt5-base' 'jasper' 'libmng' 'libwebp')
- conflicts=('qt')
-
- cd ${_pkgfqn}/qtimageformats
- make INSTALL_ROOT="${pkgdir}" install
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-location() {
- pkgdesc='Provides access to position, satellite and area monitoring classes'
- depends=('qt5-declarative' 'geoclue')
-
- cd ${_pkgfqn}/qtlocation
- make INSTALL_ROOT="${pkgdir}" install
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-multimedia() {
- pkgdesc='Classes for audio, video, radio and camera functionality'
- depends=('qt5-declarative' 'gst-plugins-base-libs' 'openal')
- optdepends=('gst-plugins-bad: Qt MediaService plugin')
- conflicts=('qt')
-
- cd ${_pkgfqn}/qtmultimedia
- make INSTALL_ROOT="${pkgdir}" install
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-quick1() {
- pkgdesc='Qt Declarative is provided for Qt 4 compatibility'
- depends=('qt5-webkit' 'qt5-script')
- conflicts=('qt')
-
- cd ${_pkgfqn}/qtquick1
- make INSTALL_ROOT="${pkgdir}" install
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
- # Useful symlinks
- install -d "${pkgdir}"/usr/bin
- for b in "${pkgdir}"/usr/lib/qt/bin/*; do
- ln -s /usr/lib/qt/bin/$(basename $b) "${pkgdir}"/usr/bin/$(basename $b)-qt5
- done
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-quickcontrols() {
- pkgdesc='Reusable Qt Quick based UI controls to create classic desktop-style user interfaces'
- depends=('qt5-declarative')
- license=('LGPL')
-
- cd ${_pkgfqn}/qtquickcontrols
- make INSTALL_ROOT="${pkgdir}" install
-}
-
-package_qt5-script() {
- pkgdesc='Classes for making Qt applications scriptable. Provided for Qt 4.x compatibility'
- depends=('qt5-base')
- conflicts=('qt')
-
- cd ${_pkgfqn}/qtscript
- make INSTALL_ROOT="${pkgdir}" install
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-sensors() {
- pkgdesc='Provides access to sensor hardware and motion gesture recognition'
- depends=('qt5-declarative')
-
- cd ${_pkgfqn}/qtsensors
- make INSTALL_ROOT="${pkgdir}" install
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-serialport() {
- pkgdesc='Provides access to hardware and virtual serial ports'
- depends=('qt5-base')
-
- cd ${_pkgfqn}/qtserialport
- make INSTALL_ROOT="${pkgdir}" install
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-svg() {
- pkgdesc='Classes for displaying the contents of SVG files'
- depends=('qt5-base')
- conflicts=('qt')
-
- cd ${_pkgfqn}/qtsvg
- make INSTALL_ROOT="${pkgdir}" install
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-tools() {
- pkgdesc='A cross-platform application and UI framework (Development Tools, QtHelp)'
- depends=('qt5-webkit' 'desktop-file-utils' 'qt5-translations' 'hicolor-icon-theme'
- 'xdg-utils')
- optdepends=('qt5-doc: documentation')
- install='qt5-tools.install'
- conflicts=('qt')
- options=('staticlibs') # libQt5UiTools builds as static only$
-
- cd ${_pkgfqn}/qttools
- make INSTALL_ROOT="${pkgdir}" install
-
- # install missing icons and desktop files
- for icon in src/linguist/linguist/images/icons/linguist-*-32.png ; do
- size=$(echo $(basename ${icon}) | cut -d- -f2)
- install -p -D -m644 ${icon} \
- "${pkgdir}/usr/share/icons/hicolor/${size}x${size}/apps/linguist.png"
- done
-
- install -D -m644 src/assistant/assistant/images/assistant.png \
- "${pkgdir}/usr/share/icons/hicolor/32x32/apps/assistant.png"
- install -D -m644 src/assistant/assistant/images/assistant-128.png \
- "${pkgdir}/usr/share/icons/hicolor/128x128/apps/assistant.png"
- install -D -m644 src/designer/src/designer/images/designer.png \
- "${pkgdir}/usr/share/icons/hicolor/128x128/apps/QtProject-designer.png"
- install -D -m644 src/qdbus/qdbusviewer/images/qdbusviewer.png \
- "${pkgdir}/usr/share/icons/hicolor/32x32/apps/qdbusviewer.png"
- install -D -m644 src/qdbus/qdbusviewer/images/qdbusviewer-128.png \
- "${pkgdir}/usr/share/icons/hicolor/128x128/apps/qdbusviewer.png"
- install -d "${pkgdir}/usr/share/applications"
- install -m644 "${srcdir}"/{linguist,designer,assistant,qdbusviewer}.desktop \
- "${pkgdir}/usr/share/applications/"
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
- # Useful symlinks
- install -d "${pkgdir}"/usr/bin
- for b in "${pkgdir}"/usr/lib/qt/bin/*; do
- ln -s /usr/lib/qt/bin/$(basename $b) "${pkgdir}"/usr/bin/$(basename $b)-qt5
- done
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-translations() {
- pkgdesc='A cross-platform application and UI framework (Translations)'
- depends=('qt5-base')
- conflicts=('qt')
-
- cd ${_pkgfqn}/qttranslations
- make INSTALL_ROOT="${pkgdir}" install
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-wayland() {
- pkgdesc='Provides APIs for Wayland'
- depends=('qt5-base' 'libxcomposite')
-
- cd ${_pkgfqn}/qtwayland
- make INSTALL_ROOT="${pkgdir}" install
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-webchannel() {
- pkgdesc='Provides access to QObject or QML objects from HTML clients for seamless integration of Qt applications with HTML/JavaScript clients'
- depends=('qt5-declarative')
-
- cd ${_pkgfqn}/qtwebchannel
- make INSTALL_ROOT="${pkgdir}" install
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-webengine() {
- pkgdesc='Provides support for web applications using the Chromium browser project'
- depends=('qt5-webchannel' 'qt5-location' 'nss' 'libxtst' 'libxcursor' 'libxrandr' 'alsa-lib' 'libxcomposite')
- license=('LGPL')
-
- cd ${_pkgfqn}/qtwebengine
- make INSTALL_ROOT="${pkgdir}" install
-
- rm -rf "${pkgdir}"/usr/share/doc
-}
-
-package_qt5-webkit() {
- pkgdesc='Classes for a WebKit2 based implementation and a new QML API'
- depends=('qt5-sensors' 'qt5-location' 'qt5-webchannel' 'gst-plugins-base' 'libxslt'
- 'libxcomposite' 'libwebp')
- optdepends=('gst-plugins-good: Webm codec support')
- license=('GPL3' 'LGPL' 'FDL')
-
- cd ${_pkgfqn}/qtwebkit
- make INSTALL_ROOT="${pkgdir}" install
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
- # Fix wrong path in pc file
- perl -pi -e "s, -L${srcdir}/?\S+,,g" "${pkgdir}"/usr/lib/pkgconfig/Qt5WebKit.pc
-}
-
-package_qt5-websockets() {
- pkgdesc='Provides WebSocket communication compliant with RFC 6455'
- depends=('qt5-declarative')
-
- cd ${_pkgfqn}/qtwebsockets
- make INSTALL_ROOT="${pkgdir}" install
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-x11extras() {
- pkgdesc='Provides platform-specific APIs for X11'
- depends=('qt5-base')
-
- cd ${_pkgfqn}/qtx11extras
- make INSTALL_ROOT="${pkgdir}" install
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
-
-package_qt5-xmlpatterns() {
- pkgdesc='Support for XPath, XQuery, XSLT and XML schema validation'
- depends=('qt5-base')
- conflicts=('qt')
-
- cd ${_pkgfqn}/qtxmlpatterns
- make INSTALL_ROOT="${pkgdir}" install
-
- # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
- find "${pkgdir}/usr/lib" -type f -name '*.prl' \
- -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
-
- # Useful symlinks
- install -d "${pkgdir}"/usr/bin
- for b in "${pkgdir}"/usr/lib/qt/bin/*; do
- ln -s /usr/lib/qt/bin/$(basename $b) "${pkgdir}"/usr/bin/$(basename $b)-qt5
- done
-
- install -D -m644 LGPL_EXCEPTION.txt \
- "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
-}
diff --git a/abs/core/qt5/ibus-get-display-number-when-screen-number-is-omitted.patch b/abs/core/qt5/ibus-get-display-number-when-screen-number-is-omitted.patch
deleted file mode 100644
index 54897e0..0000000
--- a/abs/core/qt5/ibus-get-display-number-when-screen-number-is-omitted.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From c72325d52575cb8a46cc8595c592c27581089dec Mon Sep 17 00:00:00 2001
-From: Takao Fujiwara <tfujiwar@redhat.com>
-Date: Tue, 24 Mar 2015 19:08:34 +0900
-Subject: [PATCH] ibus: Get display number when screen number is omitted.
-
-QIBusPlatformInputContextPrivate::createConnection() parses DISPLAY
-variable and it does not get the display number when the screen number
-is omitted. E.g. DISPLAY=":1".
-
-Change-Id: I9f81d8114d4e0f654a27ada67c5dc110eb34cd64
-Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com>
----
- .../ibus/qibusplatforminputcontext.cpp | 2 ++
- 1 files changed, 2 insertions(+), 0 deletions(-)
-
-diff --git a/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp b/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp
-index d00435b..673942b 100644
---- a/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp
-+++ b/src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp
-@@ -351,6 +351,8 @@ QDBusConnection *QIBusPlatformInputContextPrivate::createConnection()
- int pos2 = display.indexOf('.', pos);
- if (pos2 > 0)
- displayNumber = display.mid(pos, pos2 - pos);
-+ else
-+ displayNumber = display.right(pos);
- if (debug)
- qDebug() << "host=" << host << "displayNumber" << displayNumber;
-
---
-1.7.1
-
-
diff --git a/abs/core/qt5/qt5-tools.install b/abs/core/qt5/qt5-tools.install
deleted file mode 100644
index 5495fb1..0000000
--- a/abs/core/qt5/qt5-tools.install
+++ /dev/null
@@ -1,12 +0,0 @@
-post_install() {
- xdg-icon-resource forceupdate --theme hicolor &> /dev/null
- update-desktop-database -q
-}
-
-post_upgrade() {
- post_install
-}
-
-post_remove() {
- post_install
-}
diff --git a/abs/core/qt5/rebuild.list b/abs/core/qt5/rebuild.list
deleted file mode 100644
index 5519fd7..0000000
--- a/abs/core/qt5/rebuild.list
+++ /dev/null
@@ -1,6 +0,0 @@
-fcitx-qt5
-frameworkintegration
-gcin
-calibre
-akonadi
-skrooge
diff --git a/abs/core/readline/PKGBUILD b/abs/core/readline/PKGBUILD
index 07b6b36..6934ca0 100644
--- a/abs/core/readline/PKGBUILD
+++ b/abs/core/readline/PKGBUILD
@@ -4,25 +4,25 @@
# Contributor: judd <jvinet@zeroflux.org>
pkgname=readline
-_basever=6.3
-_patchlevel=008
-pkgver=$_basever.$_patchlevel
-pkgrel=3
+_basever=7.0
+_patchlevel=003
+pkgver=${_basever}.${_patchlevel}
+pkgrel=1
pkgdesc='GNU readline library'
-arch=('i686' 'x86_64')
+arch=('x86_64')
url='http://tiswww.case.edu/php/chet/readline/rltop.html'
license=('GPL')
-depends=('glibc' 'ncurses' 'libncursesw.so')
backup=('etc/inputrc')
+depends=('glibc' 'ncurses' 'libncursesw.so')
+provides=('libhistory.so' 'libreadline.so')
options=('!emptydirs')
-install=readline.install
-source=(http://ftp.gnu.org/gnu/readline/readline-$_basever.tar.gz{,.sig}
+source=(https://ftp.gnu.org/gnu/readline/readline-$_basever.tar.gz{,.sig}
inputrc)
validpgpkeys=('7C0135FB088AAF6C66C650B9BB5869F064EA74AB') # Chet Ramey
if [ $_patchlevel -gt 0 ]; then
for (( _p=1; _p <= $((10#${_patchlevel})); _p++ )); do
- source=(${source[@]} http://ftp.gnu.org/gnu/readline/readline-$_basever-patches/readline${_basever//.}-$(printf "%03d" $_p){,.sig})
+ source=(${source[@]} https://ftp.gnu.org/gnu/readline/readline-$_basever-patches/readline${_basever//.}-$(printf "%03d" $_p){,.sig})
done
fi
@@ -52,22 +52,12 @@ package() {
install -Dm644 inputrc "$pkgdir"/etc/inputrc
}
-md5sums=('33c8fb279e981274f485fd91da77e94a'
+md5sums=('205b03a87fc83dab653b628c59b9fc91'
'SKIP'
'58d54966c1191db45973cb3191ac621a'
- '4343f5ea9b0f42447f102fb61576b398'
- 'SKIP'
- '700295212f7e2978577feaee584afddb'
- 'SKIP'
- 'af4963862f5156fbf9111c2c6fa86ed7'
- 'SKIP'
- '11f9def89803a5052db3ba72394ce14f'
- 'SKIP'
- '93721c31cd225393f80cb3aadb165544'
- 'SKIP'
- '71dc6ecce66d1489b96595f55d142a52'
+ 'e299384458a4cbefaaac3f30e9cc2bba'
'SKIP'
- '062a08ed60679d3c4878710b3d595b65'
+ 'f9071a353e2fd52a91d32667b23715d6'
'SKIP'
- 'ee1c04072154826870848d8b218d7b04'
+ '03595464cf0283286a6e07f4f01c4a70'
'SKIP')
diff --git a/abs/core/readline/readline.install b/abs/core/readline/readline.install
deleted file mode 100644
index 06b646f..0000000
--- a/abs/core/readline/readline.install
+++ /dev/null
@@ -1,17 +0,0 @@
-infodir=usr/share/info
-filelist=(history.info readline.info rluserman.info)
-
-post_upgrade() {
- [ -x usr/bin/install-info ] || return 0
- for file in ${filelist[@]}; do
- install-info $infodir/$file.gz $infodir/dir 2> /dev/null
- done
-}
-
-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/abs/core/rpcbind/CVE-2017-8779.diff b/abs/core/rpcbind/CVE-2017-8779.diff
new file mode 100644
index 0000000..cef088b
--- /dev/null
+++ b/abs/core/rpcbind/CVE-2017-8779.diff
@@ -0,0 +1,21 @@
+diff --git a/src/rpcb_svc_com.c b/src/rpcb_svc_com.c
+index 5862c26..e11f61b 100644
+--- a/src/rpcb_svc_com.c
++++ b/src/rpcb_svc_com.c
+@@ -48,6 +48,7 @@
+ #include <rpc/rpc.h>
+ #include <rpc/rpcb_prot.h>
+ #include <rpc/svc_dg.h>
++#include <rpc/rpc_com.h>
+ #include <netconfig.h>
+ #include <errno.h>
+ #include <syslog.h>
+@@ -432,7 +433,7 @@ rpcbproc_taddr2uaddr_com(void *arg, struct svc_req *rqstp /*__unused*/,
+ static bool_t
+ xdr_encap_parms(XDR *xdrs, struct encap_parms *epp)
+ {
+- return (xdr_bytes(xdrs, &(epp->args), (u_int *) &(epp->arglen), ~0));
++ return (xdr_bytes(xdrs, &(epp->args), (u_int *) &(epp->arglen), RPC_MAXDATASIZE));
+ }
+
+ /*
diff --git a/abs/core/rpcbind/PKGBUILD b/abs/core/rpcbind/PKGBUILD
index 75cb398..5bbcf8b 100644
--- a/abs/core/rpcbind/PKGBUILD
+++ b/abs/core/rpcbind/PKGBUILD
@@ -1,46 +1,63 @@
-# $Id: PKGBUILD 157234 2012-04-26 13:06:13Z tpowa $
+# $Id$
+# Maintainer: AndyRTR <andyrtr@archlinux.org>
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
pkgname=rpcbind
-pkgver=0.2.0
-pkgrel=8
+pkgver=0.2.4
+pkgrel=4
pkgdesc="portmap replacement which supports RPC over various protocols"
-arch=(i686 x86_64)
-depends=('bash' 'glibc' 'libtirpc')
+arch=(x86_64)
+backup=('etc/conf.d/rpcbind')
+makedepends=('systemd')
+depends=('bash' 'glibc' 'libtirpc' 'libsystemd')
url="http://rpcbind.sourceforge.net"
license=('custom')
replaces=('portmap')
-source=(http://downloads.sourceforge.net/sourceforge/rpcbind/rpcbind-0.2.0.tar.bz2
+# see also http://git.infradead.org/users/steved/rpcbind.git
+source=(https://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.bz2
rpcbind-sunrpc.patch
- rpcbind.service
- rpcbind)
-md5sums=('1a77ddb1aaea8099ab19c351eeb26316'
- 'c02ac36a98baac70b8a26190524b7b73'
- 'd2615f4c0d58f154aab6e294997ac9be'
- '78a963654f57cbb209e228884767836e')
+ rpcbind.conf
+ systemd_service.diff
+ tmpfiles.d
+ sysusers.d
+ CVE-2017-8779.diff)
+sha1sums=('8a6045dd3397e9f71bf3a7c9d269e255cca537bd'
+ '1b997ce76f9727efc8c72fc5f97189591c9a60e2'
+ '08246ff18d12cee01e5c9391c6ba8f5597cac936'
+ '3ebfcf09d01e41c70135124e68b3db681c768aa0'
+ 'eb8b7375a4ca31b3f61fa726f387884d5e4ca7a3'
+ '97fed152572790a44e972114cbb436ca517254f9'
+ '38044ce8f3376a0b69da8e078e988fd1645bd435')
-build() {
+prepare() {
cd $srcdir/$pkgname-$pkgver
- # patch for iana services file
+ # patch for iana services file # FS#20273
patch -Np1 -i ../rpcbind-sunrpc.patch
- ./configure --prefix=/usr --enable-warmstarts --with-statedir=/run
- make
+ # use distro config file; FS#52058
+ patch -Np1 -i ../systemd_service.diff
+ # http://seclists.org/oss-sec/2017/q2/209
+ patch -Np1 -i ../CVE-2017-8779.diff
}
-check() {
+build() {
cd $srcdir/$pkgname-$pkgver
- make check
+ ./configure --prefix=/usr \
+ --with-rpcuser=rpc \
+ --enable-warmstarts \
+ --with-statedir=/var/lib/rpcbind
+ make
}
package() {
cd $srcdir/$pkgname-$pkgver
make DESTDIR=$pkgdir install
+ # install rpcbind config file
+ install -D -m644 $srcdir/rpcbind.conf $pkgdir/etc/conf.d/rpcbind
# install missing man page - https://bugs.archlinux.org/task/21271
install -m644 man/rpcinfo.8 $pkgdir/usr/share/man/man8/
- # install daemon
- install -D -m755 $srcdir/rpcbind $pkgdir/etc/rc.d/rpcbind
- # install systemd service file
- install -D -m644 $srcdir/rpcbind.service $pkgdir/usr/lib/systemd/system/rpcbind.service
+ # systemd sysusers/tempfile
+ install -Dm644 ../tmpfiles.d ${pkgdir}/usr/lib/tmpfiles.d/rpcbind.conf
+ install -Dm644 ../sysusers.d ${pkgdir}/usr/lib/sysusers.d/rpcbind.conf
# install license
install -D -m644 COPYING $pkgdir/usr/share/licenses/rpcbind/COPYING
}
diff --git a/abs/core/rpcbind/rpcbind-sunrpc.patch b/abs/core/rpcbind/rpcbind-sunrpc.patch
index 76cf54b..099e833 100644
--- a/abs/core/rpcbind/rpcbind-sunrpc.patch
+++ b/abs/core/rpcbind/rpcbind-sunrpc.patch
@@ -1,6 +1,6 @@
---- rpcbind-0.1.7/src/rpcbind.c.orig 2008-11-19 14:17:34.000000000 +0100
-+++ rpcbind-0.1.7/src/rpcbind.c 2010-01-07 13:03:37.416632894 +0100
-@@ -114,7 +114,7 @@
+--- rpcbind-0.2.3/src/rpcbind.c 2015-04-27 16:07:43.000000000 +0200
++++ rpcbind-0.2.3/src/rpcbind.c.new 2015-04-27 19:48:44.518124944 +0200
+@@ -132,7 +132,7 @@
char *udp_uaddr; /* Universal UDP address */
char *tcp_uaddr; /* Universal TCP address */
#endif
@@ -9,14 +9,3 @@
static char superuser[] = "superuser";
int main __P((int, char *[]));
---- rpcbind-0.1.7/src/rpcinfo.c~ 2010-01-08 16:14:24.592156602 +0000
-+++ rpcbind-0.1.7/src/rpcinfo.c 2010-01-08 16:14:31.578838609 +0000
-@@ -633,7 +633,7 @@
- {
- memset (&hints, 0, sizeof hints);
- hints.ai_family = AF_INET;
-- if ((error = getaddrinfo (host, "rpcbind", &hints, &res)) != 0 &&
-+ if ((error = getaddrinfo (host, "sunrpc", &hints, &res)) != 0 &&
- (error = getaddrinfo (host, "portmapper", &hints, &res)) != 0)
- {
- fprintf (stderr, "rpcinfo: %s: %s\n",
diff --git a/abs/core/rpcbind/rpcbind.conf b/abs/core/rpcbind/rpcbind.conf
new file mode 100644
index 0000000..4b35e37
--- /dev/null
+++ b/abs/core/rpcbind/rpcbind.conf
@@ -0,0 +1,3 @@
+#
+# Optional arguments passed to rpcbind. See rpcbind(8)
+RPCBIND_ARGS=""
diff --git a/abs/core/rpcbind/rpcbind.service b/abs/core/rpcbind/rpcbind.service
deleted file mode 100644
index 418ba1e..0000000
--- a/abs/core/rpcbind/rpcbind.service
+++ /dev/null
@@ -1,11 +0,0 @@
-[Unit]
-Description=RPC Bind
-Requires=network.target
-
-[Service]
-Type=forking
-ExecStart=/usr/bin/rpcbind
-Restart=always
-
-[Install]
-WantedBy=multi-user.target
diff --git a/abs/core/rpcbind/systemd_service.diff b/abs/core/rpcbind/systemd_service.diff
new file mode 100644
index 0000000..fdab664
--- /dev/null
+++ b/abs/core/rpcbind/systemd_service.diff
@@ -0,0 +1,10 @@
+--- rpcbind-0.2.4/systemd/rpcbind.service.in 2016-11-28 21:47:28.000000000 +0100
++++ rpcbind-0.2.4/systemd/rpcbind.service.in.new 2016-12-06 16:18:54.429326613 +0100
+@@ -11,6 +11,7 @@
+ [Service]
+ Type=notify
+ # distro can provide a drop-in adding EnvironmentFile=-/??? if needed.
++EnvironmentFile=/etc/conf.d/rpcbind
+ ExecStart=@_bindir@/rpcbind $RPCBIND_OPTIONS -w -f
+
+ [Install]
diff --git a/abs/core/rpcbind/sysusers.d b/abs/core/rpcbind/sysusers.d
new file mode 100644
index 0000000..213da3e
--- /dev/null
+++ b/abs/core/rpcbind/sysusers.d
@@ -0,0 +1 @@
+u rpc 32 "Rpcbind Daemon" /var/lib/rpcbind
diff --git a/abs/core/rpcbind/tmpfiles.d b/abs/core/rpcbind/tmpfiles.d
new file mode 100644
index 0000000..09bfa35
--- /dev/null
+++ b/abs/core/rpcbind/tmpfiles.d
@@ -0,0 +1 @@
+d /var/lib/rpcbind 0700 rpc rpc
diff --git a/abs/core/rsyslog/PKGBUILD b/abs/core/rsyslog/PKGBUILD
index 1e6ef5d..232934e 100644
--- a/abs/core/rsyslog/PKGBUILD
+++ b/abs/core/rsyslog/PKGBUILD
@@ -2,7 +2,7 @@
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
pkgname=rsyslog
-pkgver=8.24.0
+pkgver=8.33.0
pkgrel=1
pkgdesc="An enhanced multi-threaded syslogd with a focus on security and reliability"
url="http://www.rsyslog.com/"
@@ -57,7 +57,7 @@ package() {
install -D -m644 "$srcdir"/mythtv.conf "$pkgdir"/etc/rsyslog.d/mythtv.conf
install -D -m755 "$srcdir"/log_care.sh "$pkgdir"/etc/cron.daily/log_care
}
-md5sums=('789be3f43edae1b20d92c620b04c19de'
+md5sums=('7eb94a6da7340f524a2635568053d7fd'
'61750ec989c319470b466946f6404931'
'd99814eeea48b370b3e0fe2899792fdb'
'cd39e6edc1fcbbae2093c40c880e0079')
diff --git a/abs/core/runit-scripts/PKGBUILD b/abs/core/runit-scripts/PKGBUILD
index 1c4c342..777d89f 100755
--- a/abs/core/runit-scripts/PKGBUILD
+++ b/abs/core/runit-scripts/PKGBUILD
@@ -1,6 +1,6 @@
pkgname=runit-scripts
-pkgver=8.4
-pkgrel=5
+pkgver=8.5
+pkgrel=2
pkgdesc="collection of startup scripts for runit"
url="http://smarden.org/runit/"
license=('BSD')
diff --git a/abs/core/runit-scripts/runitscripts/services/mysql/run b/abs/core/runit-scripts/runitscripts/services/mysql/run
index de76962..8fad493 100755
--- a/abs/core/runit-scripts/runitscripts/services/mysql/run
+++ b/abs/core/runit-scripts/runitscripts/services/mysql/run
@@ -35,6 +35,15 @@ if [ ! -d /var/run/mysqld ]; then
mkdir -p /var/run/mysqld
chown mysql /var/run/mysqld
fi
+
+#check .err and truncate if more than 30000 lines
+ErrFile="/data/srv/mysql/`hostname`.err"
+if [[ $(wc -l < $ErrFile) -gt 30000 ]]
+then
+ tail -n 30000 "$ErrFile" > "$ErrFile.tmp" && mv "$ErrFile.tmp" "$ErrFile"
+ chown mysql.mysql "$ErrFile"
+fi
+
HOME=/etc/mysql/
MYSQLADMIN='/usr/bin/mysqladmin'
diff --git a/abs/core/runit-scripts/runitscripts/services/postfix/run b/abs/core/runit-scripts/runitscripts/services/postfix/run
index 1fa526e..cd5a551 100755
--- a/abs/core/runit-scripts/runitscripts/services/postfix/run
+++ b/abs/core/runit-scripts/runitscripts/services/postfix/run
@@ -5,4 +5,4 @@ export TERM=linux
. /etc/rc.d/functions
stat_runit "Starting postfix"
-exec /usr/lib/postfix/master -D
+exec /usr/lib/postfix/bin/master -D
diff --git a/abs/core/sudo/PKGBUILD b/abs/core/sudo/PKGBUILD
index 14f21ec..cf0753b 100644
--- a/abs/core/sudo/PKGBUILD
+++ b/abs/core/sudo/PKGBUILD
@@ -4,23 +4,27 @@
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
pkgname=sudo
-_sudover=1.8.14p3
+_sudover=1.8.22
pkgver=${_sudover/p/.p}
-pkgrel=2
+pkgrel=1
pkgdesc="Give certain users the ability to run some commands as root"
-arch=('i686' 'x86_64')
-url="http://www.sudo.ws/sudo/"
+arch=('x86_64')
+url="https://www.sudo.ws/sudo/"
license=('custom')
groups=('base-devel')
-depends=('glibc' 'pam' 'libldap')
+depends=('glibc' 'libgcrypt' 'pam' 'libldap')
backup=('etc/sudoers' 'etc/pam.d/sudo')
install=$pkgname.install
-source=(http://www.sudo.ws/sudo/dist/$pkgname-$_sudover.tar.gz{,.sig}
+source=(https://www.sudo.ws/sudo/dist/$pkgname-$_sudover.tar.gz{,.sig}
sudo.pam)
-sha256sums=('a8a697cbb113859058944850d098464618254804cf97961dee926429f00a1237'
+sha256sums=('7256cb27c20883b14360eddbd17f98922073d104b214cf65aeacf1d9c9b9fd02'
'SKIP'
'd1738818070684a5d2c9b26224906aad69a4fea77aabd960fc2675aee2df1fa2')
-validpgpkeys=('CCB24BE9E9481B15D34159535A89DFA27EE470C4')
+validpgpkeys=('59D1E9CCBA2B376704FDD35BA9F4C021CEA470FB')
+
+prepare() {
+ cd "$srcdir/$pkgname-$_sudover"
+}
build() {
cd "$srcdir/$pkgname-$_sudover"
@@ -32,6 +36,7 @@ build() {
--with-rundir=/run/sudo \
--with-vardir=/var/db/sudo \
--with-logfac=auth \
+ --enable-gcrypt \
--enable-tmpfiles.d \
--with-pam \
--with-sssd \
@@ -52,7 +57,10 @@ package() {
cd "$srcdir/$pkgname-$_sudover"
make DESTDIR="$pkgdir" install
- # Remove /run/sudo directory from the package; we create it using tmpfiles.d
+ # Remove sudoers.dist; not needed since pacman manages updates to sudoers
+ rm "$pkgdir/etc/sudoers.dist"
+
+ # Remove /run/sudo directory; we create it using systemd-tmpfiles
rmdir "$pkgdir/run/sudo"
rmdir "$pkgdir/run"
diff --git a/abs/core/sudo/sudo.install b/abs/core/sudo/sudo.install
index 1369cc1..abf58e3 100644
--- a/abs/core/sudo/sudo.install
+++ b/abs/core/sudo/sudo.install
@@ -1,9 +1,3 @@
-post_install() {
- if type -P systemd-tmpfiles >/dev/null; then
- systemd-tmpfiles --create sudo.conf
- fi
-}
-
pre_upgrade() {
# Permissions of /var/db/sudo were changed from 0700 to 0711 in sudo 1.8.10
# http://www.sudo.ws/repos/sudo/rev/5c38d77a2d0c
@@ -12,8 +6,4 @@ pre_upgrade() {
fi
}
-post_upgrade() {
- post_install
-}
-
# vim:set ts=2 sw=2 et:
diff --git a/abs/core/system-templates/PKGBUILD b/abs/core/system-templates/PKGBUILD
index 2b017d9..8bf61d1 100755
--- a/abs/core/system-templates/PKGBUILD
+++ b/abs/core/system-templates/PKGBUILD
@@ -1,6 +1,6 @@
pkgname=system-templates
pkgver=8.5
-pkgrel=2
+pkgrel=4
conflicts=( )
pkgdesc="Templates used for system configuration"
depends=()
@@ -17,4 +17,3 @@ package() {
rsync -r --exclude=.svn ../templates $MVDIR/
}
-md5sums=()
diff --git a/abs/core/system-templates/templates/remotes/favorites/streamzap/lircd.conf.streamzap b/abs/core/system-templates/templates/remotes/favorites/streamzap/lircd.conf.streamzap
index c2a88da..a89ae7e 100644
--- a/abs/core/system-templates/templates/remotes/favorites/streamzap/lircd.conf.streamzap
+++ b/abs/core/system-templates/templates/remotes/favorites/streamzap/lircd.conf.streamzap
@@ -1,72 +1,119 @@
+# This config file was automatically generated
+# using lirc-0.9.4b(default) on Thu Nov 3 19:55:19 2016
+# Command line used: --device=/dev/lirc0 --driver default Streamzap_PC_Remote
+# Kernel version (uname -r): 4.8.6-1-custom
#
-# this config file was automatically generated
-# using lirc-0.7.1-CVS(serial) on Fri Feb 4 23:20:56 2005
+# Contributed by graysky (https://github.com/graysky2)
#
-# contributed by Christoph Bartelmus
+# You should specify the default driver in /etc/lirc/lirc_options.conf
+# like this: driver = default
#
-# brand: Streamzap
-# model no. of remote control: PC Remote
-# devices being controlled by this remote: USB receiver
+# Remote name : Streamzap PC Remote Control
+# Brand of remote device : Streamzap
+# Remote device model : USBIR2
+# Remote device info URL : http://www.streamzap.com/consumer/pc_remote
+# USB dongle : Yes
+# USB vendor ID : 0x0e9c Streamzap, Inc.
+# Product ID : 0x0000 Streamzap Remote Control
+# Devices controlled : HTPC
+# Remote layout : Classic models have the word "streamzap" in white
+# letters across the bottom of the remote.
#
+# At least one newer model has the words, "TEMPEST
+# microsystems" in white letters across the bottom of
+# the remote with 3 additional keys in the bottom row.
+#
+# Both older and newer IR receivers and corresponding
+# scancodes seem identical based on the two samples
+# available to me.
+#
+# +-----------+
+# | |
+# | x x | Power, Mute
+# | |
+# | x x x | 1, 2, 3
+# | |
+# | x x x | 4, 5, 6
+# | |
+# | x x x | 7, 8, 9
+# | |
+# | x x x | Channelup, 0, Volumeup
+# | |
+# | x x | Channeldown, Volumedown
+# | |
+# | x | Up
+# | |
+# | x x x | Left, OK, Right
+# | |
+# | x | Down
+# | |
+# | x x | Menu, Exit
+# | |
+# | x x x | Play, Pause, Stop
+# | |
+# | x x x | Previous, Next, Record
+# | |
+# / x x \ Rewind, Forward
+# | |
+# | x x x x | Red, Green, Yellow, Blue
+# | |
+# | x x x | Disp, PTZ (Pan/Tilt/Zoom), Help
+# +-------------+
begin remote
name Streamzap_PC_Remote
- bits 6
- flags RC5|CONST_LENGTH
+ bits 14
+ flags RC5
eps 30
aeps 100
- one 889 889
- zero 889 889
- plead 889
- pre_data_bits 8
- pre_data 0xA3
- gap 108344
- toggle_bit 2
-
+ one 864 864
+ zero 864 864
+ plead 896
+ gap 16777215
+ toggle_bit_mask 0x1000
+ frequency 38000
begin codes
- 0 0x00
- 1 0x01
- 2 0x02
- 3 0x03
- 4 0x04
- 5 0x05
- 6 0x06
- 7 0x07
- 8 0x08
- 9 0x09
- POWER 0x0A
- MUTE 0x0B
- CH_UP 0x0C
- VOL_UP 0x0D
- CH_DOWN 0x0E
- VOL_DOWN 0x0F
- UP 0x10
- LEFT 0x11
- OK 0x12
- RIGHT 0x13
- DOWN 0x14
- MENU 0x15
- EXIT 0x16
- PLAY 0x17
- PAUSE 0x18
- STOP 0x19
- PREVIOUS 0x1A
- NEXT 0x1B
- RECORD 0x1C
- REWIND 0x1D
- FOWARD 0x1E
- RED 0x20
- GREEN 0x21
- YELLOW 0x22
- BLUE 0x23
- DISP 0x24
- PTZ 0x25
- HELP 0x26
+ 1 0x28C1
+ 2 0x28C2
+ 3 0x28C3
+ 4 0x28C4
+ 5 0x28C5
+ 6 0x28C6
+ 7 0x28C7
+ 8 0x28C8
+ 9 0x28C9
+ 0 0x28C0
+ POWER 0x28CA
+ MUTE 0x28CB
+ CH_UP 0x28CC
+ CH_DOWN 0x28CE
+ VOL_UP 0x28CD
+ VOL_DOWN 0x28CF
+ UP 0x28D0
+ DOWN 0x28D4
+ LEFT 0x28D1
+ RIGHT 0x28D3
+ OK 0x28D2
+ MENU 0x28D5
+ EXIT 0x28D6
+ PLAY 0x28D7
+ PAUSE 0x28D8
+ STOP 0x28D9
+ PREVIOUS 0x28DA
+ NEXT 0x28DB
+ RECORD 0x28DC
+ REWIND 0x28DD
+ FORWARD 0x28DE
+ RED 0x28E0
+ GREEN 0x28E1
+ YELLOW 0x28E2
+ BLUE 0x28E3
+ DISP 0x28E4
+ PTZ 0x28E5
+ HELP 0x28E6
end codes
end remote
-
-
diff --git a/abs/core/system-templates/templates/xorg/340xx_supported.txt b/abs/core/system-templates/templates/xorg/340xx_supported.txt
index d18d236..f7a5326 100644
--- a/abs/core/system-templates/templates/xorg/340xx_supported.txt
+++ b/abs/core/system-templates/templates/xorg/340xx_supported.txt
@@ -1,5 +1,5 @@
http://www.nvidia.com/object/IO_32667.html
-http://us.download.nvidia.com/XFree86/Linux-x86/340.104/README/supportedchips.html
+http://us.download.nvidia.com/XFree86/Linux-x86/340.106/README/supportedchips.html
NVIDIA GeForce GPUs
NVIDIA GPU product Device PCI ID* VDPAU features
@@ -7,61 +7,61 @@ GeForce 8800 GTX 0x0191 -
GeForce 8800 GTS 0x0193 -
GeForce 8800 Ultra 0x0194 -
GeForce 8600 GTS 0x0400 A
-GeForce 8600 GT 0x0401 A
-GeForce 8600 GT 0x0402 A
-GeForce 8600 GS 0x0403 A
-GeForce 8400 GS 0x0404 A
+GeForce 8600 GT 0x0401 A
+GeForce 8600 GT 0x0402 A
+GeForce 8600 GS 0x0403 A
+GeForce 8400 GS 0x0404 A
GeForce 9500M GS 0x0405 A
-GeForce 8300 GS 0x0406 -
+GeForce 8300 GS 0x0406 -
GeForce 8600M GT 0x0407 A
GeForce 9650M GS 0x0408 A
GeForce 8700M GT 0x0409 A
GeForce GT 330 0x0410 A
-GeForce 8400 SE 0x0420 -
-GeForce 8500 GT 0x0421 A
-GeForce 8400 GS 0x0422 A
-GeForce 8300 GS 0x0423 -
-GeForce 8400 GS 0x0424 A
+GeForce 8400 SE 0x0420 -
+GeForce 8500 GT 0x0421 A
+GeForce 8400 GS 0x0422 A
+GeForce 8300 GS 0x0423 -
+GeForce 8400 GS 0x0424 A
GeForce 8600M GS 0x0425 A
GeForce 8400M GT 0x0426 A
GeForce 8400M GS 0x0427 A
-GeForce 8400M G 0x0428 A
-GeForce 9400 GT 0x042C A
-GeForce 9300M G 0x042E A
-GeForce GTX 295 0x05E0 A
-GeForce GTX 280 0x05E1 A
-GeForce GTX 260 0x05E2 A
-GeForce GTX 285 0x05E3 A
-GeForce GTX 275 0x05E6 A
-GeForce GTX 260 0x05EA A
-GeForce GTX 295 0x05EB A
+GeForce 8400M G 0x0428 A
+GeForce 9400 GT 0x042C A
+GeForce 9300M G 0x042E A
+GeForce GTX 295 0x05E0 A
+GeForce GTX 280 0x05E1 A
+GeForce GTX 260 0x05E2 A
+GeForce GTX 285 0x05E3 A
+GeForce GTX 275 0x05E6 A
+GeForce GTX 260 0x05EA A
+GeForce GTX 295 0x05EB A
GeForce 8800 GTS 512 0x0600 A
-GeForce 9800 GT 0x0601 A
-GeForce 8800 GT 0x0602 A
+GeForce 9800 GT 0x0601 A
+GeForce 8800 GT 0x0602 A
GeForce GT 230 0x0603 A
GeForce 9800 GX2 0x0604 A
-GeForce 9800 GT 0x0605 A
-GeForce 8800 GS 0x0606 A
-GeForce GTS 240 0x0607 A
+GeForce 9800 GT 0x0605 A
+GeForce 8800 GS 0x0606 A
+GeForce GTS 240 0x0607 A
GeForce 9800M GTX 0x0608 A
GeForce 8800M GTS 0x0609 A
-GeForce 8800 GS 0x0609 0x00A7 A
+GeForce 8800 GS 0x0609 0x00A7 A
GeForce GTX 280M 0x060A A
GeForce 9800M GT 0x060B A
GeForce 8800M GTX 0x060C A
-GeForce 8800 GS 0x060D A
+GeForce 8800 GS 0x060D A
GeForce GTX 285M 0x060F A
GeForce 9600 GSO 0x0610 A
-GeForce 8800 GT 0x0611 A
+GeForce 8800 GT 0x0611 A
GeForce 9800 GTX/9800 GTX+ 0x0612 A
GeForce 9800 GTX+ 0x0613 A
-GeForce 9800 GT 0x0614 A
-GeForce GTS 250 0x0615 A
+GeForce 9800 GT 0x0614 A
+GeForce GTS 250 0x0615 A
GeForce 9800M GTX 0x0617 A
GeForce GTX 260M 0x0618 A
GeForce GT 230 0x0621 A
-GeForce 9600 GT 0x0622 A
-GeForce 9600 GS 0x0623 A
+GeForce 9600 GT 0x0622 A
+GeForce 9600 GS 0x0623 A
GeForce 9600 GSO 512 0x0625 A
GeForce GT 130 0x0626 A
GeForce GT 140 0x0627 A
@@ -69,49 +69,49 @@ GeForce 9800M GTS 0x0628 A
GeForce 9700M GTS 0x062A A
GeForce 9800M GS 0x062B A
GeForce 9800M GTS 0x062C A
-GeForce 9600 GT 0x062D A
-GeForce 9600 GT 0x062E A
+GeForce 9600 GT 0x062D A
+GeForce 9600 GT 0x062E A
GeForce GT 130 0x062E 0x0605 A
GeForce 9700 S 0x0630 A
GeForce GTS 160M 0x0631 A
GeForce GTS 150M 0x0632 A
GeForce 9600 GSO 0x0635 A
-GeForce 9600 GT 0x0637 A
-GeForce 9500 GT 0x0640 A
-GeForce 9400 GT 0x0641 A
-GeForce 9500 GT 0x0643 A
-GeForce 9500 GS 0x0644 A
-GeForce 9500 GS 0x0645 A
+GeForce 9600 GT 0x0637 A
+GeForce 9500 GT 0x0640 A
+GeForce 9400 GT 0x0641 A
+GeForce 9500 GT 0x0643 A
+GeForce 9500 GS 0x0644 A
+GeForce 9500 GS 0x0645 A
GeForce GT 120 0x0646 A
GeForce 9600M GT 0x0647 A
GeForce 9600M GS 0x0648 A
GeForce 9600M GT 0x0649 A
-GeForce GT 220M 0x0649 0x202D A
+GeForce GT 220M 0x0649 0x202D A
GeForce 9700M GT 0x064A A
-GeForce 9500M G 0x064B A
+GeForce 9500M G 0x064B A
GeForce 9650M GT 0x064C A
GeForce G 110M 0x0651 A
-GeForce GT 130M 0x0652 A
+GeForce GT 130M 0x0652 A
GeForce GT 240M LE 0x0652 0x0850 A
-GeForce GT 120M 0x0653 A
-GeForce GT 220M 0x0654 A
-GeForce GT 320M 0x0654 0x14A2 A
-GeForce GT 320M 0x0654 0x14D2 A
+GeForce GT 120M 0x0653 A
+GeForce GT 220M 0x0654 A
+GeForce GT 320M 0x0654 0x14A2 A
+GeForce GT 320M 0x0654 0x14D2 A
GeForce GT 120 0x0655 0x0633 A
GeForce GT 120 0x0656 0x0693 A
-GeForce 9400 GT 0x065B A
-GeForce GTX 480 0x06C0 C
-GeForce GTX 465 0x06C4 C
+GeForce 9400 GT 0x065B A
+GeForce GTX 480 0x06C0 C
+GeForce GTX 465 0x06C4 C
GeForce GTX 480M 0x06CA C
-GeForce GTX 470 0x06CD C
-GeForce 9300 GE 0x06E0 B 1
-GeForce 9300 GS 0x06E1 B 1
+GeForce GTX 470 0x06CD C
+GeForce 9300 GE 0x06E0 B 1
+GeForce 9300 GS 0x06E1 B 1
GeForce 8400 0x06E2 B 1
-GeForce 8400 SE 0x06E3 -
-GeForce 8400 GS 0x06E4 A 1
+GeForce 8400 SE 0x06E3 -
+GeForce 8400 GS 0x06E4 A 1
GeForce 9300M GS 0x06E5 B 1
GeForce G100 0x06E6 B 1
-GeForce 9300 SE 0x06E7 -
+GeForce 9300 SE 0x06E7 -
GeForce 9200M GS 0x06E8 B 1
GeForce 9200M GE 0x06E8 0x360B B 1
GeForce 9300M GS 0x06E9 B 1
@@ -119,43 +119,43 @@ GeForce G 105M 0x06EC B 1
GeForce G 103M 0x06EF B 1
GeForce G105M 0x06F1 B 1
GeForce 8200M 0x0840 B 1
-GeForce 9100M G 0x0844 B 1
-GeForce 8200M G 0x0845 B 1
+GeForce 9100M G 0x0844 B 1
+GeForce 8200M G 0x0845 B 1
GeForce 9200 0x0846 B 1
GeForce 9100 0x0847 B 1
GeForce 8300 0x0848 B 1
GeForce 8200 0x0849 B 1
-nForce 730a 0x084A B 1
+nForce 730a 0x084A B 1
GeForce 9200 0x084B B 1
nForce 980a/780a SLI 0x084C B 1
-nForce 750a SLI 0x084D B 1
+nForce 750a SLI 0x084D B 1
GeForce 8100 / nForce 720a 0x084F -
GeForce 9400 0x0860 B 1
GeForce 9400 0x0861 B 1
-GeForce 9400M G 0x0862 B 1
+GeForce 9400M G 0x0862 B 1
GeForce 9400M 0x0863 B 1
GeForce 9300 0x0864 B 1
-ION 0x0865 B 1
-GeForce 9400M G 0x0866 B 1
+ION 0x0865 B 1
+GeForce 9400M G 0x0866 B 1
GeForce 9400M 0x0866 0x00B1 B 1
GeForce 9400 0x0867 B 1
-nForce 760i SLI 0x0868 B 1
+nForce 760i SLI 0x0868 B 1
GeForce 9400 0x0869 B 1
GeForce 9400 0x086A B 1
GeForce 9300 / nForce 730i 0x086C B 1
GeForce 9200 0x086D B 1
-GeForce 9100M G 0x086E B 1
-GeForce 8200M G 0x086F B 1
+GeForce 9100M G 0x086E B 1
+GeForce 8200M G 0x086F B 1
GeForce 9400M 0x0870 B 1
GeForce 9200 0x0871 B 1
GeForce G102M 0x0872 B 1
GeForce G205M 0x0872 0x1C42 B 1
GeForce G102M 0x0873 B 1
GeForce G205M 0x0873 0x1C52 B 1
-ION 0x0874 B 1
-ION 0x0876 B 1
+ION 0x0874 B 1
+ION 0x0876 B 1
GeForce 9400 0x087A B 1
-ION 0x087D B 1
+ION 0x087D B 1
ION LE 0x087E B 1
ION LE 0x087F B 1
GeForce 320M 0x08A0 C
@@ -164,25 +164,25 @@ GeForce 320M 0x08A3 C
GeForce 320M 0x08A4 C
GeForce 320M 0x08A5 C
GeForce GT 220 0x0A20 C
-GeForce 315 0x0A22 -
-GeForce 210 0x0A23 C
-GeForce 405 0x0A26 C
-GeForce 405 0x0A27 C
-GeForce GT 230M 0x0A28 C
-GeForce GT 330M 0x0A29 C
-GeForce GT 230M 0x0A2A C
-GeForce GT 330M 0x0A2B C
-GeForce GT 320M 0x0A2D A
+GeForce 315 0x0A22 -
+GeForce 210 0x0A23 C
+GeForce 405 0x0A26 C
+GeForce 405 0x0A27 C
+GeForce GT 230M 0x0A28 C
+GeForce GT 330M 0x0A29 C
+GeForce GT 230M 0x0A2A C
+GeForce GT 330M 0x0A2B C
+GeForce GT 320M 0x0A2D A
GeForce GT 415 0x0A32 C
-GeForce GT 240M 0x0A34 C
-GeForce GT 325M 0x0A35 C
+GeForce GT 240M 0x0A34 C
+GeForce GT 325M 0x0A35 C
GeForce G210 0x0A60 C
-GeForce 205 0x0A62 C
-GeForce 310 0x0A63 C
+GeForce 205 0x0A62 C
+GeForce 310 0x0A63 C
Second Generation ION 0x0A64 C
-GeForce 210 0x0A65 C
-GeForce 310 0x0A66 C
-GeForce 315 0x0A67 -
+GeForce 210 0x0A65 C
+GeForce 310 0x0A66 C
+GeForce 315 0x0A67 -
GeForce G105M 0x0A68 B
GeForce G105M 0x0A69 B
GeForce 305M 0x0A6E C
@@ -202,16 +202,16 @@ GeForce 310M 0x0A75 C
Second Generation ION 0x0A75 0x3605 C
Second Generation ION 0x0A76 C
GeForce 315M 0x0A7A C
-GeForce 405 0x0A7A 0x0003 C
+GeForce 405 0x0A7A 0x0003 C
GeForce 405M 0x0A7A 0x3950 C
GeForce 405M 0x0A7A 0x397D C
-GeForce 405 0x0A7A 0x3980 C
-GeForce 405 0x0A7A 0x8006 C
-GeForce 405 0x0A7A 0x90B4 C
-GeForce 405 0x0A7A 0xAA51 C
-GeForce 405 0x0A7A 0xAA58 C
-GeForce 405 0x0A7A 0xAC71 C
-GeForce 405 0x0A7A 0xAC82 C
+GeForce 405 0x0A7A 0x3980 C
+GeForce 405 0x0A7A 0x8006 C
+GeForce 405 0x0A7A 0x90B4 C
+GeForce 405 0x0A7A 0xAA51 C
+GeForce 405 0x0A7A 0xAA58 C
+GeForce 405 0x0A7A 0xAC71 C
+GeForce 405 0x0A7A 0xAC82 C
GeForce GT 330 0x0CA0 A
GeForce GT 320 0x0CA2 C
GeForce GT 240 0x0CA3 C
@@ -221,60 +221,60 @@ GeForce GT 330 0x0CA7 A
GeForce GTS 260M 0x0CA8 C
GeForce GTS 250M 0x0CA9 C
GeForce GT 220 0x0CAC C
-GeForce GT 335M 0x0CAF C
+GeForce GT 335M 0x0CAF C
GeForce GTS 350M 0x0CB0 C
GeForce GTS 360M 0x0CB1 C
GeForce GT 440 0x0DC0 C
-GeForce GTS 450 0x0DC4 C
-GeForce GTS 450 0x0DC5 C
-GeForce GTS 450 0x0DC6 C
-GeForce GT 555M 0x0DCD C
-GeForce GT 555M 0x0DCE C
+GeForce GTS 450 0x0DC4 C
+GeForce GTS 450 0x0DC5 C
+GeForce GTS 450 0x0DC6 C
+GeForce GT 555M 0x0DCD C
+GeForce GT 555M 0x0DCE C
GeForce GTX 460M 0x0DD1 C
-GeForce GT 445M 0x0DD2 C
-GeForce GT 435M 0x0DD3 C
-GeForce GT 550M 0x0DD6 C
+GeForce GT 445M 0x0DD2 C
+GeForce GT 435M 0x0DD3 C
+GeForce GT 550M 0x0DD6 C
GeForce GT 440 0x0DE0 C
GeForce GT 430 0x0DE1 C
GeForce GT 420 0x0DE2 C
-GeForce GT 635M 0x0DE3 C
+GeForce GT 635M 0x0DE3 C
GeForce GT 520 0x0DE4 C
GeForce GT 530 0x0DE5 C
GeForce GT 610 0x0DE7 C
-GeForce GT 620M 0x0DE8 C
-GeForce GT 630M 0x0DE9 C
-GeForce GT 620M 0x0DE9 0x0692 C
-GeForce GT 620M 0x0DE9 0x0725 C
-GeForce GT 620M 0x0DE9 0x0728 C
-GeForce GT 620M 0x0DE9 0x072B C
-GeForce GT 620M 0x0DE9 0x072E C
-GeForce GT 620M 0x0DE9 0x0753 C
-GeForce GT 620M 0x0DE9 0x0754 C
-GeForce GT 635M 0x0DE9 0x2210 C
+GeForce GT 620M 0x0DE8 C
+GeForce GT 630M 0x0DE9 C
+GeForce GT 620M 0x0DE9 0x0692 C
+GeForce GT 620M 0x0DE9 0x0725 C
+GeForce GT 620M 0x0DE9 0x0728 C
+GeForce GT 620M 0x0DE9 0x072B C
+GeForce GT 620M 0x0DE9 0x072E C
+GeForce GT 620M 0x0DE9 0x0753 C
+GeForce GT 620M 0x0DE9 0x0754 C
+GeForce GT 635M 0x0DE9 0x2210 C
GeForce GT 640M LE 0x0DE9 0x3977 C
GeForce 610M 0x0DEA C
-GeForce 615 0x0DEA 0x365A C
-GeForce 615 0x0DEA 0x365B C
-GeForce 615 0x0DEA 0x365E C
-GeForce 615 0x0DEA 0x3660 C
-GeForce 615 0x0DEA 0x366C C
-GeForce GT 555M 0x0DEB C
-GeForce GT 525M 0x0DEC C
-GeForce GT 520M 0x0DED C
-GeForce GT 415M 0x0DEE C
-GeForce GT 425M 0x0DF0 C
-GeForce GT 420M 0x0DF1 C
-GeForce GT 435M 0x0DF2 C
-GeForce GT 420M 0x0DF3 C
-GeForce GT 540M 0x0DF4 C
-GeForce GT 630M 0x0DF4 0x0952 C
-GeForce GT 630M 0x0DF4 0x0953 C
-GeForce GT 525M 0x0DF5 C
-GeForce GT 550M 0x0DF6 C
-GeForce GT 520M 0x0DF7 C
-GeForce GTX 460 0x0E22 C
+GeForce 615 0x0DEA 0x365A C
+GeForce 615 0x0DEA 0x365B C
+GeForce 615 0x0DEA 0x365E C
+GeForce 615 0x0DEA 0x3660 C
+GeForce 615 0x0DEA 0x366C C
+GeForce GT 555M 0x0DEB C
+GeForce GT 525M 0x0DEC C
+GeForce GT 520M 0x0DED C
+GeForce GT 415M 0x0DEE C
+GeForce GT 425M 0x0DF0 C
+GeForce GT 420M 0x0DF1 C
+GeForce GT 435M 0x0DF2 C
+GeForce GT 420M 0x0DF3 C
+GeForce GT 540M 0x0DF4 C
+GeForce GT 630M 0x0DF4 0x0952 C
+GeForce GT 630M 0x0DF4 0x0953 C
+GeForce GT 525M 0x0DF5 C
+GeForce GT 550M 0x0DF6 C
+GeForce GT 520M 0x0DF7 C
+GeForce GTX 460 0x0E22 C
GeForce GTX 460 SE 0x0E23 C
-GeForce GTX 460 0x0E24 C
+GeForce GTX 460 0x0E24 C
GeForce GTX 470M 0x0E30 C
GeForce GTX 485M 0x0E31 C
GeForce GT 630 0x0F00 C
@@ -283,39 +283,39 @@ GeForce GT 730 0x0F02 C
GeForce GT 640 0x0FC0 C
GeForce GT 640 0x0FC1 C
GeForce GT 630 0x0FC2 C
-GeForce GTX 650 0x0FC6 D
+GeForce GTX 650 0x0FC6 D
GeForce GT 740 0x0FC8 D
-GeForce GT 755M 0x0FCD D
+GeForce GT 755M 0x0FCD D
GeForce GT 640M LE 0x0FCE C
-GeForce GT 650M 0x0FD1 D
-GeForce GT 640M 0x0FD2 D
+GeForce GT 650M 0x0FD1 D
+GeForce GT 640M 0x0FD2 D
GeForce GT 640M LE 0x0FD2 0x0595 C
GeForce GT 640M LE 0x0FD2 0x05B2 C
GeForce GT 640M LE 0x0FD3 C
GeForce GTX 660M 0x0FD4 D
-GeForce GT 650M 0x0FD5 D
-GeForce GT 640M 0x0FD8 D
-GeForce GT 645M 0x0FD9 D
-GeForce GT 740M 0x0FDF D
+GeForce GT 650M 0x0FD5 D
+GeForce GT 640M 0x0FD8 D
+GeForce GT 645M 0x0FD9 D
+GeForce GT 740M 0x0FDF D
GeForce GTX 660M 0x0FE0 D
-GeForce GT 730M 0x0FE1 D
-GeForce GT 745M 0x0FE2 D
-GeForce GT 745M 0x0FE3 D
-GeForce GT 745A 0x0FE3 0x3675 D
-GeForce GT 750M 0x0FE4 D
-GeForce GT 750M 0x0FE9 D
-GeForce GT 755M 0x0FEA D
+GeForce GT 730M 0x0FE1 D
+GeForce GT 745M 0x0FE2 D
+GeForce GT 745M 0x0FE3 D
+GeForce GT 745A 0x0FE3 0x3675 D
+GeForce GT 750M 0x0FE4 D
+GeForce GT 750M 0x0FE9 D
+GeForce GT 755M 0x0FEA D
GeForce 710A 0x0FEC C
-GeForce GTX TITAN Z 0x1001 D
-GeForce GTX 780 0x1004 D
+GeForce GTX TITAN Z 0x1001 D
+GeForce GTX 780 0x1004 D
GeForce GTX TITAN 0x1005 D
-GeForce GTX 780 0x1007 D
+GeForce GTX 780 0x1007 D
GeForce GTX 780 Ti 0x1008 D
GeForce GTX 780 Ti 0x100A D
-GeForce GTX TITAN Black 0x100C D
+GeForce GTX TITAN Black 0x100C D
GeForce GT 520 0x1040 C
-GeForce 510 0x1042 D
-GeForce 605 0x1048 D
+GeForce 510 0x1042 D
+GeForce 605 0x1048 D
GeForce GT 620 0x1049 C
GeForce GT 610 0x104A C
GeForce GT 625 (OEM) 0x104B D
@@ -325,100 +325,100 @@ GeForce GT 625 0x104B 0x846B D
GeForce GT 625 0x104B 0xA625 D
GeForce GT 625 0x104B 0xB590 D
GeForce GT 705 0x104C D
-GeForce GT 520M 0x1050 C
+GeForce GT 520M 0x1050 C
GeForce GT 520MX 0x1051 D
-GeForce GT 520M 0x1052 C
+GeForce GT 520M 0x1052 C
GeForce 410M 0x1054 D
GeForce 410M 0x1055 D
GeForce 610M 0x1058 C
-GeForce 610 0x1058 0x2AF1 D
+GeForce 610 0x1058 0x2AF1 D
GeForce 610M 0x1059 C
GeForce 610M 0x105A C
GeForce 705M 0x105B C
GeForce 705A 0x105B 0x2AFB D
-GeForce GTX 580 0x1080 C
-GeForce GTX 570 0x1081 C
+GeForce GTX 580 0x1080 C
+GeForce GTX 570 0x1081 C
GeForce GTX 560 Ti 0x1082 C
-GeForce GTX 560 0x1084 C
-GeForce GTX 570 0x1086 C
+GeForce GTX 560 0x1084 C
+GeForce GTX 570 0x1086 C
GeForce GTX 560 Ti 0x1087 C
-GeForce GTX 590 0x1088 C
-GeForce GTX 580 0x1089 C
-GeForce GTX 580 0x108B C
-GeForce 9300 GS 0x10C0 B
+GeForce GTX 590 0x1088 C
+GeForce GTX 580 0x1089 C
+GeForce GTX 580 0x108B C
+GeForce 9300 GS 0x10C0 B
GeForce 8400GS 0x10C3 A
-GeForce 405 0x10C5 C
+GeForce 405 0x10C5 C
GeForce 820M 0x1140 0x0083 C
GeForce 710M 0x1140 0x0177 C
GeForce 710M 0x1140 0x0180 C
-GeForce GT 720M 0x1140 0x0190 C
-GeForce GT 720M 0x1140 0x0192 C
-GeForce GT 630M 0x1140 0x054D C
-GeForce GT 630M 0x1140 0x054E C
-GeForce GT 620M 0x1140 0x0554 C
-GeForce GT 620M 0x1140 0x0557 C
+GeForce GT 720M 0x1140 0x0190 C
+GeForce GT 720M 0x1140 0x0192 C
+GeForce GT 630M 0x1140 0x054D C
+GeForce GT 630M 0x1140 0x054E C
+GeForce GT 620M 0x1140 0x0554 C
+GeForce GT 620M 0x1140 0x0557 C
GeForce GT625M 0x1140 0x0562 C
-GeForce GT 630M 0x1140 0x0565 C
-GeForce GT 630M 0x1140 0x0568 C
-GeForce GT 630M 0x1140 0x0590 C
+GeForce GT 630M 0x1140 0x0565 C
+GeForce GT 630M 0x1140 0x0568 C
+GeForce GT 630M 0x1140 0x0590 C
GeForce GT625M 0x1140 0x0592 C
GeForce GT625M 0x1140 0x0594 C
GeForce GT625M 0x1140 0x0595 C
GeForce GT625M 0x1140 0x05A2 C
GeForce GT625M 0x1140 0x05B1 C
GeForce GT625M 0x1140 0x05B3 C
-GeForce GT 630M 0x1140 0x05DA C
-GeForce GT 720M 0x1140 0x05DE C
-GeForce GT 720M 0x1140 0x05E0 C
-GeForce GT 630M 0x1140 0x05E8 C
-GeForce GT 720M 0x1140 0x05F4 C
-GeForce GT 620M 0x1140 0x0600 C
-GeForce GT 620M 0x1140 0x0606 C
-GeForce GT 720M 0x1140 0x060F C
-GeForce GT 620M 0x1140 0x064A C
-GeForce GT 620M 0x1140 0x064C C
+GeForce GT 630M 0x1140 0x05DA C
+GeForce GT 720M 0x1140 0x05DE C
+GeForce GT 720M 0x1140 0x05E0 C
+GeForce GT 630M 0x1140 0x05E8 C
+GeForce GT 720M 0x1140 0x05F4 C
+GeForce GT 620M 0x1140 0x0600 C
+GeForce GT 620M 0x1140 0x0606 C
+GeForce GT 720M 0x1140 0x060F C
+GeForce GT 620M 0x1140 0x064A C
+GeForce GT 620M 0x1140 0x064C C
GeForce 820M 0x1140 0x064E C
GeForce 820M 0x1140 0x0652 C
GeForce 820M 0x1140 0x0653 C
GeForce 820M 0x1140 0x0662 C
-GeForce GT 620M 0x1140 0x067A C
-GeForce GT 620M 0x1140 0x0680 C
+GeForce GT 620M 0x1140 0x067A C
+GeForce GT 620M 0x1140 0x0680 C
GeForce 710M 0x1140 0x0686 C
GeForce 710M 0x1140 0x0689 C
GeForce 710M 0x1140 0x068B C
GeForce 710M 0x1140 0x068D C
GeForce 710M 0x1140 0x068E C
GeForce 710M 0x1140 0x0691 C
-GeForce GT 620M 0x1140 0x0692 C
-GeForce GT 620M 0x1140 0x0694 C
-GeForce GT 620M 0x1140 0x0702 C
-GeForce GT 620M 0x1140 0x0719 C
-GeForce GT 620M 0x1140 0x0725 C
-GeForce GT 620M 0x1140 0x0728 C
-GeForce GT 620M 0x1140 0x072B C
-GeForce GT 620M 0x1140 0x072E C
-GeForce GT 620M 0x1140 0x0732 C
-GeForce GT 720M 0x1140 0x0763 C
+GeForce GT 620M 0x1140 0x0692 C
+GeForce GT 620M 0x1140 0x0694 C
+GeForce GT 620M 0x1140 0x0702 C
+GeForce GT 620M 0x1140 0x0719 C
+GeForce GT 620M 0x1140 0x0725 C
+GeForce GT 620M 0x1140 0x0728 C
+GeForce GT 620M 0x1140 0x072B C
+GeForce GT 620M 0x1140 0x072E C
+GeForce GT 620M 0x1140 0x0732 C
+GeForce GT 720M 0x1140 0x0763 C
GeForce 710M 0x1140 0x0773 C
GeForce 710M 0x1140 0x0774 C
-GeForce GT 720M 0x1140 0x0776 C
+GeForce GT 720M 0x1140 0x0776 C
GeForce 710M 0x1140 0x077A C
GeForce 710M 0x1140 0x077B C
GeForce 710M 0x1140 0x077C C
GeForce 710M 0x1140 0x077D C
GeForce 710M 0x1140 0x077E C
GeForce 710M 0x1140 0x077F C
-GeForce GT 720M 0x1140 0x0781 C
-GeForce GT 720M 0x1140 0x0798 C
+GeForce GT 720M 0x1140 0x0781 C
+GeForce GT 720M 0x1140 0x0798 C
GeForce 820M 0x1140 0x0799 C
-GeForce GT 720M 0x1140 0x079B C
-GeForce GT 720M 0x1140 0x079C C
-GeForce GT 720M 0x1140 0x0807 C
+GeForce GT 720M 0x1140 0x079B C
+GeForce GT 720M 0x1140 0x079C C
+GeForce GT 720M 0x1140 0x0807 C
GeForce 820M 0x1140 0x0821 C
-GeForce GT 720M 0x1140 0x0823 C
-GeForce GT 720M 0x1140 0x0830 C
-GeForce GT 720M 0x1140 0x0833 C
-GeForce GT 720M 0x1140 0x0837 C
+GeForce GT 720M 0x1140 0x0823 C
+GeForce GT 720M 0x1140 0x0830 C
+GeForce GT 720M 0x1140 0x0833 C
+GeForce GT 720M 0x1140 0x0837 C
GeForce 820M 0x1140 0x083E C
GeForce 710M 0x1140 0x0841 C
GeForce 820M 0x1140 0x0853 C
@@ -442,28 +442,28 @@ GeForce 820M 0x1140 0x093A C
GeForce 820M 0x1140 0x093C C
GeForce 820M 0x1140 0x093F C
GeForce 820M 0x1140 0x0945 C
-GeForce GT 630M 0x1140 0x0982 C
-GeForce GT 630M 0x1140 0x0983 C
-GeForce GT 720M 0x1140 0x0DAC C
-GeForce GT 720M 0x1140 0x0DAD C
-GeForce GT 720M 0x1140 0x0EF3 C
+GeForce GT 630M 0x1140 0x0982 C
+GeForce GT 630M 0x1140 0x0983 C
+GeForce GT 720M 0x1140 0x0DAC C
+GeForce GT 720M 0x1140 0x0DAD C
+GeForce GT 720M 0x1140 0x0EF3 C
GeForce GT820M 0x1140 0x1005 C
GeForce 710M 0x1140 0x1012 C
GeForce 820M 0x1140 0x1019 C
-GeForce GT 630M 0x1140 0x1030 C
+GeForce GT 630M 0x1140 0x1030 C
GeForce 710M 0x1140 0x1055 C
-GeForce GT 720M 0x1140 0x1067 C
+GeForce GT 720M 0x1140 0x1067 C
GeForce 820M 0x1140 0x1092 C
-GeForce GT 710M 0x1140 0x10B8 C
-GeForce GT 720M 0x1140 0x10E9 C
+GeForce GT 710M 0x1140 0x10B8 C
+GeForce GT 720M 0x1140 0x10E9 C
GeForce 820M 0x1140 0x1116 C
-GeForce GT 720M 0x1140 0x11FD C
-GeForce GT 720M 0x1140 0x124D C
-GeForce GT 720M 0x1140 0x126D C
-GeForce GT 720M 0x1140 0x131D C
-GeForce GT 720M 0x1140 0x13FD C
-GeForce GT 720M 0x1140 0x14C7 C
-GeForce GT 620M 0x1140 0x1507 C
+GeForce GT 720M 0x1140 0x11FD C
+GeForce GT 720M 0x1140 0x124D C
+GeForce GT 720M 0x1140 0x126D C
+GeForce GT 720M 0x1140 0x131D C
+GeForce GT 720M 0x1140 0x13FD C
+GeForce GT 720M 0x1140 0x14C7 C
+GeForce GT 620M 0x1140 0x1507 C
GeForce 820M 0x1140 0x15AD C
GeForce 820M 0x1140 0x15ED C
GeForce 820M 0x1140 0x160D C
@@ -476,31 +476,31 @@ GeForce 820M 0x1140 0x170D C
GeForce 820M 0x1140 0x176D C
GeForce 820M 0x1140 0x178D C
GeForce 820M 0x1140 0x179D C
-GeForce GT 720M 0x1140 0x17F5 C
-GeForce GT 630M 0x1140 0x18EF C
-GeForce GT 630M 0x1140 0x18F9 C
-GeForce GT 630M 0x1140 0x18FB C
-GeForce GT 630M 0x1140 0x18FD C
-GeForce GT 630M 0x1140 0x18FF C
-GeForce GT 620M 0x1140 0x20DD C
-GeForce GT 620M 0x1140 0x20DF C
+GeForce GT 720M 0x1140 0x17F5 C
+GeForce GT 630M 0x1140 0x18EF C
+GeForce GT 630M 0x1140 0x18F9 C
+GeForce GT 630M 0x1140 0x18FB C
+GeForce GT 630M 0x1140 0x18FD C
+GeForce GT 630M 0x1140 0x18FF C
+GeForce GT 620M 0x1140 0x20DD C
+GeForce GT 620M 0x1140 0x20DF C
GeForce 820M 0x1140 0x210E C
-GeForce GT 620M 0x1140 0x2132 C
+GeForce GT 620M 0x1140 0x2132 C
GeForce 820M 0x1140 0x218A C
-GeForce GT 720M 0x1140 0x21BA C
+GeForce GT 720M 0x1140 0x21BA C
GeForce 820M 0x1140 0x21BB C
GeForce 820M 0x1140 0x21BC C
-GeForce GT 720M 0x1140 0x21FA C
-GeForce GT 720M 0x1140 0x2202 C
-GeForce GT 720M 0x1140 0x220A C
+GeForce GT 720M 0x1140 0x21FA C
+GeForce GT 720M 0x1140 0x2202 C
+GeForce GT 720M 0x1140 0x220A C
GeForce 820M 0x1140 0x220E C
GeForce 820M 0x1140 0x2212 C
-GeForce GT 720M 0x1140 0x2213 C
+GeForce GT 720M 0x1140 0x2213 C
GeForce 820M 0x1140 0x2218 C
-GeForce GT 720M 0x1140 0x221A C
-GeForce GT 720M 0x1140 0x2220 C
-GeForce GT 710M 0x1140 0x223A C
-GeForce GT 710M 0x1140 0x224A C
+GeForce GT 720M 0x1140 0x221A C
+GeForce GT 720M 0x1140 0x2220 C
+GeForce GT 710M 0x1140 0x223A C
+GeForce GT 710M 0x1140 0x224A C
GeForce 820M 0x1140 0x225B C
GeForce 820M 0x1140 0x225D C
GeForce 820M 0x1140 0x226D C
@@ -509,17 +509,17 @@ GeForce 820M 0x1140 0x227A C
GeForce 820M 0x1140 0x228A C
GeForce 820M 0x1140 0x22D2 C
GeForce 820M 0x1140 0x22D9 C
-GeForce GT 720A 0x1140 0x2AEF C
+GeForce GT 720A 0x1140 0x2AEF C
GeForce 710A 0x1140 0x2AF9 C
GeForce GT620M 0x1140 0x3656 C
GeForce 820A 0x1140 0x36A9 C
-GeForce GT 720M 0x1140 0x3800 C
-GeForce GT 720M 0x1140 0x3801 C
-GeForce GT 720M 0x1140 0x3802 C
-GeForce GT 720M 0x1140 0x3803 C
-GeForce GT 720M 0x1140 0x3804 C
-GeForce GT 720M 0x1140 0x3806 C
-GeForce GT 720M 0x1140 0x3808 C
+GeForce GT 720M 0x1140 0x3800 C
+GeForce GT 720M 0x1140 0x3801 C
+GeForce GT 720M 0x1140 0x3802 C
+GeForce GT 720M 0x1140 0x3803 C
+GeForce GT 720M 0x1140 0x3804 C
+GeForce GT 720M 0x1140 0x3806 C
+GeForce GT 720M 0x1140 0x3808 C
GeForce 820M 0x1140 0x380D C
GeForce 820M 0x1140 0x380E C
GeForce 820M 0x1140 0x380F C
@@ -534,29 +534,29 @@ GeForce 820M 0x1140 0x381C C
GeForce 610M 0x1140 0x3901 C
GeForce 710M 0x1140 0x3902 C
GeForce 710M 0x1140 0x3903 C
-GeForce GT 625M 0x1140 0x3904 C
-GeForce GT 720M 0x1140 0x3905 C
+GeForce GT 625M 0x1140 0x3904 C
+GeForce GT 720M 0x1140 0x3905 C
GeForce 820M 0x1140 0x3907 C
-GeForce GT 720M 0x1140 0x3910 C
-GeForce GT 720M 0x1140 0x3912 C
+GeForce GT 720M 0x1140 0x3910 C
+GeForce GT 720M 0x1140 0x3912 C
GeForce 820M 0x1140 0x3913 C
GeForce 610M 0x1140 0x3983 C
GeForce 610M 0x1140 0x5001 C
-GeForce GT 720M 0x1140 0x5003 C
+GeForce GT 720M 0x1140 0x5003 C
GeForce 705M 0x1140 0x5005 C
-GeForce GT 620M 0x1140 0x500D C
+GeForce GT 620M 0x1140 0x500D C
GeForce 710M 0x1140 0x5014 C
GeForce 710M 0x1140 0x5017 C
GeForce 710M 0x1140 0x5019 C
GeForce 710M 0x1140 0x501A C
-GeForce GT 720M 0x1140 0x501F C
+GeForce GT 720M 0x1140 0x501F C
GeForce 710M 0x1140 0x5025 C
GeForce 710M 0x1140 0x5027 C
GeForce 710M 0x1140 0x502A C
-GeForce GT 720M 0x1140 0x502B C
+GeForce GT 720M 0x1140 0x502B C
GeForce 710M 0x1140 0x502D C
-GeForce GT 720M 0x1140 0x502E C
-GeForce GT 720M 0x1140 0x502F C
+GeForce GT 720M 0x1140 0x502E C
+GeForce GT 720M 0x1140 0x502F C
GeForce 705M 0x1140 0x5030 C
GeForce 705M 0x1140 0x5031 C
GeForce 820M 0x1140 0x5032 C
@@ -564,11 +564,11 @@ GeForce 820M 0x1140 0x5033 C
GeForce 710M 0x1140 0x503E C
GeForce 820M 0x1140 0x503F C
GeForce 820M 0x1140 0x5040 C
-GeForce GT 720M 0x1140 0x8595 C
-GeForce GT 720M 0x1140 0x85EA C
+GeForce GT 720M 0x1140 0x8595 C
+GeForce GT 720M 0x1140 0x85EA C
GeForce 820M 0x1140 0x85EB C
GeForce 820M 0x1140 0x85EC C
-GeForce GT 720M 0x1140 0x85EE C
+GeForce GT 720M 0x1140 0x85EE C
GeForce 820M 0x1140 0x85F3 C
GeForce 820M 0x1140 0x860E C
GeForce 820M 0x1140 0x861A C
@@ -579,21 +579,21 @@ GeForce 820M 0x1140 0x864C C
GeForce 820M 0x1140 0x8652 C
GeForce 820M 0x1140 0x90D7 C
GeForce 820M 0x1140 0x90DD C
-GeForce GT 720M 0x1140 0x999F C
+GeForce GT 720M 0x1140 0x999F C
GeForce 720M 0x1140 0xAA33 C
-GeForce GT 720M 0x1140 0xAAA2 C
+GeForce GT 720M 0x1140 0xAAA2 C
GeForce 820M 0x1140 0xAAA3 C
-GeForce GT 720M 0x1140 0xACB2 C
-GeForce GT 720M 0x1140 0xACC1 C
+GeForce GT 720M 0x1140 0xACB2 C
+GeForce GT 720M 0x1140 0xACC1 C
GeForce 720M 0x1140 0xAE61 C
-GeForce GT 720M 0x1140 0xAE65 C
+GeForce GT 720M 0x1140 0xAE65 C
GeForce 820M 0x1140 0xAE6A C
-GeForce GT 720M 0x1140 0xAE71 C
-GeForce GT 620M 0x1140 0xB092 C
-GeForce GT 630M 0x1140 0xC0D5 C
-GeForce GT 620M 0x1140 0xC0D7 C
+GeForce GT 720M 0x1140 0xAE71 C
+GeForce GT 620M 0x1140 0xB092 C
+GeForce GT 630M 0x1140 0xC0D5 C
+GeForce GT 620M 0x1140 0xC0D7 C
GeForce 820M 0x1140 0xC10D C
-GeForce GT 620M 0x1140 0xC652 C
+GeForce GT 620M 0x1140 0xC652 C
GeForce 710M 0x1140 0xC709 C
GeForce 710M 0x1140 0xC711 C
GeForce 710M 0x1140 0xC736 C
@@ -624,21 +624,21 @@ GeForce 710M 0x1140 0xFA58 C
GeForce 710M 0x1140 0xFA59 C
GeForce 710M 0x1140 0xFA88 C
GeForce 710M 0x1140 0xFA89 C
-GeForce GTX 680 0x1180 D
+GeForce GTX 680 0x1180 D
GeForce GTX 660 Ti 0x1183 D
-GeForce GTX 770 0x1184 D
-GeForce GTX 660 0x1185 D
-GeForce GTX 760 0x1185 0x106F D
-GeForce GTX 760 0x1187 D
-GeForce GTX 690 0x1188 D
-GeForce GTX 670 0x1189 D
+GeForce GTX 770 0x1184 D
+GeForce GTX 660 0x1185 D
+GeForce GTX 760 0x1185 0x106F D
+GeForce GTX 760 0x1187 D
+GeForce GTX 690 0x1188 D
+GeForce GTX 670 0x1189 D
GeForce GTX 760 Ti OEM 0x1189 0x1074 D
GeForce GTX 760 (192-bit) 0x118E D
GeForce GTX 760 Ti OEM 0x1193 D
-GeForce GTX 660 0x1195 D
+GeForce GTX 660 0x1195 D
GeForce GTX 880M 0x1198 D
GeForce GTX 870M 0x1199 D
-GeForce GTX 760 0x1199 0xD001 D
+GeForce GTX 760 0x1199 0xD001 D
GeForce GTX 860M 0x119A D
GeForce GTX 775M 0x119D D
GeForce GTX 780M 0x119E D
@@ -648,23 +648,23 @@ GeForce GTX 670MX 0x11A1 D
GeForce GTX 675MX 0x11A2 D
GeForce GTX 680MX 0x11A3 D
GeForce GTX 675MX 0x11A7 D
-GeForce GTX 660 0x11C0 D
+GeForce GTX 660 0x11C0 D
GeForce GTX 650 Ti BOOST 0x11C2 D
GeForce GTX 650 Ti 0x11C3 D
-GeForce GTX 645 0x11C4 D
+GeForce GTX 645 0x11C4 D
GeForce GT 740 0x11C5 D
GeForce GTX 650 Ti 0x11C6 D
-GeForce GTX 650 0x11C8 D
+GeForce GTX 650 0x11C8 D
GeForce GTX 770M 0x11E0 D
GeForce GTX 765M 0x11E1 D
GeForce GTX 765M 0x11E2 D
GeForce GTX 760M 0x11E3 D
GeForce GTX 760A 0x11E3 0x3683 D
GeForce GTX 560 Ti 0x1200 C
-GeForce GTX 560 0x1201 C
+GeForce GTX 560 0x1201 C
GeForce GTX 460 SE v2 0x1203 C
GeForce GTX 460 v2 0x1205 C
-GeForce GTX 555 0x1206 C
+GeForce GTX 555 0x1206 C
GeForce GT 645 0x1207 C
GeForce GTX 560 SE 0x1208 C
GeForce GTX 570M 0x1210 C
@@ -674,17 +674,17 @@ GeForce GTX 670M 0x1213 C
GeForce GT 545 0x1241 C
GeForce GT 545 0x1243 C
GeForce GTX 550 Ti 0x1244 C
-GeForce GTS 450 0x1245 C
-GeForce GT 550M 0x1246 C
-GeForce GT 555M 0x1247 C
-GeForce GT 635M 0x1247 0x212A C
-GeForce GT 635M 0x1247 0x212B C
-GeForce GT 635M 0x1247 0x212C C
-GeForce GT 555M 0x1248 C
-GeForce GTS 450 0x1249 C
+GeForce GTS 450 0x1245 C
+GeForce GT 550M 0x1246 C
+GeForce GT 555M 0x1247 C
+GeForce GT 635M 0x1247 0x212A C
+GeForce GT 635M 0x1247 0x212B C
+GeForce GT 635M 0x1247 0x212C C
+GeForce GT 555M 0x1248 C
+GeForce GTS 450 0x1249 C
GeForce GT 640 0x124B C
-GeForce GT 555M 0x124D C
-GeForce GT 635M 0x124D 0x10CC C
+GeForce GT 555M 0x124D C
+GeForce GT 635M 0x124D 0x10CC C
GeForce GTX 560M 0x1251 C
GeForce GT 635 0x1280 D
GeForce GT 710 0x1281 D
@@ -693,20 +693,20 @@ GeForce GT 630 0x1284 C
GeForce GT 720 0x1286 D
GeForce GT 730 0x1287 C
GeForce GT 720 0x1288 D
-GeForce GT 730M 0x1290 D
+GeForce GT 730M 0x1290 D
GeForce 730A 0x1290 0x2AFA D
-GeForce GT 735M 0x1291 D
-GeForce GT 740M 0x1292 D
-GeForce GT 740A 0x1292 0x3675 D
-GeForce GT 740A 0x1292 0x3684 D
-GeForce GT 730M 0x1293 D
+GeForce GT 735M 0x1291 D
+GeForce GT 740M 0x1292 D
+GeForce GT 740A 0x1292 0x3675 D
+GeForce GT 740A 0x1292 0x3684 D
+GeForce GT 730M 0x1293 D
GeForce 710M 0x1295 D
GeForce 710A 0x1295 0x2B0D C
GeForce 710A 0x1295 0x2B0F C
GeForce 810A 0x1295 0x2B20 D
GeForce 810A 0x1295 0x2B21 D
GeForce 825M 0x1296 D
-GeForce GT 720M 0x1298 C
+GeForce GT 720M 0x1298 C
GeForce 830M 0x1340 E
GeForce 830A 0x1340 0x2B2B E
GeForce 840M 0x1341 E
@@ -714,8 +714,8 @@ GeForce 840A 0x1341 0x3697 E
GeForce 840A 0x1341 0x3699 E
GeForce 840A 0x1341 0x369C E
GeForce GTX 750 Ti 0x1380 E
-GeForce GTX 750 0x1381 E
-GeForce GTX 745 0x1382 E
+GeForce GTX 750 0x1381 E
+GeForce GTX 745 0x1382 E
GeForce 845M 0x1390 E
GeForce GTX 850M 0x1391 E
GeForce GTX 850A 0x1391 0x3697 E
@@ -729,7 +729,7 @@ Quadro FX 5600 0x019D -
Quadro FX 4600 0x019E -
Quadro FX 370 0x040A A
Quadro FX 570M 0x040C A
-Quadro FX 1600M 0x040D A
+Quadro FX 1600M 0x040D A
Quadro FX 570 0x040E A
Quadro FX 1700 0x040F A
Quadro FX 360M 0x042D A
@@ -742,21 +742,21 @@ Quadro FX 3800 0x05FF A
Quadro FX 4700 X2 0x0619 A
Quadro FX 3700 0x061A A
Quadro VX 200 0x061B A
-Quadro FX 3600M 0x061C A
-Quadro FX 2800M 0x061D A
-Quadro FX 3700M 0x061E A
-Quadro FX 3800M 0x061F A
+Quadro FX 3600M 0x061C A
+Quadro FX 2800M 0x061D A
+Quadro FX 3700M 0x061E A
+Quadro FX 3800M 0x061F A
Quadro FX 1800 0x0638 A
-Quadro FX 2700M 0x063A A
+Quadro FX 2700M 0x063A A
Quadro FX 380 0x0658 A
Quadro FX 580 0x0659 A
-Quadro FX 1700M 0x065A A
+Quadro FX 1700M 0x065A A
Quadro FX 770M 0x065C A
-Quadro 6000 0x06D8 C
-Quadro 5000 0x06D9 C
+Quadro 6000 0x06D8 C
+Quadro 5000 0x06D9 C
Quadro 5000M 0x06DA C
-Quadro 6000 0x06DC C
-Quadro 4000 0x06DD C
+Quadro 6000 0x06DC C
+Quadro 4000 0x06DD C
Quadro FX 370 LP 0x06F9 B 1
Quadro FX 370 Low Profile 0x06F9 0x060D B 1
Quadro FX 370M 0x06FB B 1
@@ -766,20 +766,20 @@ Quadro 400 0x0A38 C
Quadro FX 880M 0x0A3C C
Quadro FX 380 LP 0x0A78 C
Quadro FX 380M 0x0A7C C
-Quadro FX 1800M 0x0CBC C
-Quadro 2000 0x0DD8 C
+Quadro FX 1800M 0x0CBC C
+Quadro 2000 0x0DD8 C
Quadro 2000D 0x0DD8 0x0914 C
Quadro 2000M 0x0DDA C
Quadro 600 0x0DF8 C
-Quadro 500M 0x0DF9 C
+Quadro 500M 0x0DF9 C
Quadro 1000M 0x0DFA C
Quadro 3000M 0x0E3A C
Quadro 4000M 0x0E3B C
-Quadro K420 0x0FF3 D
+Quadro K420 0x0FF3 D
Quadro K1100M 0x0FF6 D
Quadro K500M 0x0FF8 D
Quadro K2000D 0x0FF9 D
-Quadro K600 0x0FFA D
+Quadro K600 0x0FFA D
Quadro K2000M 0x0FFB D
Quadro K1000M 0x0FFC D
Quadro K2000 0x0FFE D
@@ -787,7 +787,7 @@ Quadro 410 0x0FFF D
Quadro K6000 0x103A D
Quadro K5200 0x103C D
Quadro 5010M 0x109A C
-Quadro 7000 0x109B C
+Quadro 7000 0x109B C
Quadro K4200 0x11B4 D
Quadro K3100M 0x11B6 D
Quadro K4100M 0x11B7 D
@@ -801,17 +801,17 @@ Quadro K2100M 0x11FC D
Quadro K610M 0x12B9 D
Quadro K510M 0x12BA D
Quadro K2200 0x13BA E
-Quadro K620 0x13BB E
+Quadro K620 0x13BB E
NVIDIA NVS GPUs
NVIDIA GPU product Device PCI ID* VDPAU features
-Quadro NVS 320M 0x040B A
-Quadro NVS 140M 0x0429 A
-Quadro NVS 130M 0x042A A
-Quadro NVS 135M 0x042B A
+Quadro NVS 320M 0x040B A
+Quadro NVS 140M 0x0429 A
+Quadro NVS 130M 0x042A A
+Quadro NVS 135M 0x042B A
Quadro NVS 290 0x042F A
-Quadro NVS 150M 0x06EA B 1
-Quadro NVS 160M 0x06EB B 1
+Quadro NVS 150M 0x06EA B 1
+Quadro NVS 160M 0x06EB B 1
Quadro NVS 420 0x06F8 B 1
Quadro NVS 450 0x06FA B 1
Quadro NVS 295 0x06FD B 1
@@ -820,12 +820,12 @@ NVS 2100M 0x0A6A C
NVS 3100M 0x0A6C C
NVS 5400M 0x0DEF C
NVS 5200M 0x0DFC C
-NVS 510 0x0FFD D
+NVS 510 0x0FFD D
NVS 4200M 0x1056 D
NVS 4200M 0x1057 D
-NVS 315 0x107C D
-NVS 310 0x107D D
-NVS 300 0x10D8 C
+NVS 315 0x107C D
+NVS 310 0x107D D
+NVS 300 0x10D8 C
NVS 5200M 0x1140 0x10DD C
NVS 5200M 0x1140 0x10ED C
NVS 5200M 0x1140 0x2136 C
@@ -837,49 +837,49 @@ NVS 5200M 0x1140 0xC0E4 C
NVIDIA Tesla GPUs
NVIDIA GPU product Device PCI ID* VDPAU features
Tesla C870 0x0197 -
-Tesla C1060 0x05E7 A
-Tesla T10 Processor 0x05E7 0x0595 A
-Tesla T10 Processor 0x05E7 0x068F A
-Tesla M1060 0x05E7 0x0697 A
-Tesla M1060 0x05E7 0x0714 A
-Tesla M1060 0x05E7 0x0743 A
-Tesla C2050 / C2070 0x06D1 C
-Tesla C2050 0x06D1 0x0771 C
-Tesla C2070 0x06D1 0x0772 C
-Tesla M2070 0x06D2 C
-Tesla X2070 0x06D2 0x088F C
-Tesla T20 Processor 0x06DE C
-Tesla S2050 0x06DE 0x0773 C
-Tesla M2050 0x06DE 0x082F C
-Tesla X2070 0x06DE 0x0840 C
-Tesla M2050 0x06DE 0x0842 C
-Tesla M2050 0x06DE 0x0846 C
-Tesla M2050 0x06DE 0x0866 C
-Tesla M2050 0x06DE 0x0907 C
-Tesla M2050 0x06DE 0x091E C
+Tesla C1060 0x05E7 A
+Tesla T10 Processor 0x05E7 0x0595 A
+Tesla T10 Processor 0x05E7 0x068F A
+Tesla M1060 0x05E7 0x0697 A
+Tesla M1060 0x05E7 0x0714 A
+Tesla M1060 0x05E7 0x0743 A
+Tesla C2050 / C2070 0x06D1 C
+Tesla C2050 0x06D1 0x0771 C
+Tesla C2070 0x06D1 0x0772 C
+Tesla M2070 0x06D2 C
+Tesla X2070 0x06D2 0x088F C
+Tesla T20 Processor 0x06DE C
+Tesla S2050 0x06DE 0x0773 C
+Tesla M2050 0x06DE 0x082F C
+Tesla X2070 0x06DE 0x0840 C
+Tesla M2050 0x06DE 0x0842 C
+Tesla M2050 0x06DE 0x0846 C
+Tesla M2050 0x06DE 0x0866 C
+Tesla M2050 0x06DE 0x0907 C
+Tesla M2050 0x06DE 0x091E C
Tesla M2070-Q 0x06DF C
-Tesla K20Xm 0x1021 D
+Tesla K20Xm 0x1021 D
Tesla K20c 0x1022 D
Tesla K40m 0x1023 D
Tesla K40c 0x1024 D
Tesla K20s 0x1026 D
-Tesla K40st 0x1027 D
+Tesla K40st 0x1027 D
Tesla K20m 0x1028 D
Tesla K40s 0x1029 D
-Tesla M2090 0x1091 C
-Tesla X2090 0x1091 0x088E C
-Tesla X2090 0x1091 0x0891 C
-Tesla X2090 0x1091 0x0974 C
-Tesla X2090 0x1091 0x098D C
-Tesla M2075 0x1094 C
-Tesla C2075 0x1096 C
-Tesla C2050 0x1096 0x0911 C
+Tesla M2090 0x1091 C
+Tesla X2090 0x1091 0x088E C
+Tesla X2090 0x1091 0x0891 C
+Tesla X2090 0x1091 0x0974 C
+Tesla X2090 0x1091 0x098D C
+Tesla M2075 0x1094 C
+Tesla C2075 0x1096 C
+Tesla C2050 0x1096 0x0911 C
Tesla K10 0x118F D
Tesla K8 0x1194 D
NVIDIA GRID GPUs
NVIDIA GPU product Device PCI ID* VDPAU features
GRID K340 0x0FEF D
-GRID K1 0x0FF2 D
+GRID K1 0x0FF2 D
GRID K520 0x118A D
-GRID K2 0x11BF D
+GRID K2 0x11BF D
diff --git a/abs/core/system-templates/templates/xorg/nvidia_supported.txt b/abs/core/system-templates/templates/xorg/nvidia_supported.txt
index d214749..1ae5758 100644
--- a/abs/core/system-templates/templates/xorg/nvidia_supported.txt
+++ b/abs/core/system-templates/templates/xorg/nvidia_supported.txt
@@ -1,62 +1,62 @@
#http://us.download.nvidia.com/XFree86/Linux-x86_64/387.22/README/supportedchips.html
-#NVIDIA GeForce GPUs
-#NVIDIA GPU product Device PCI ID* VDPAU features
-GeForce GTX 480 06C0 C
-GeForce GTX 465 06C4 C
+NVIDIA GeForce GPUs
+NVIDIA GPU product Device PCI ID* VDPAU features
+GeForce GTX 480 06C0 C
+GeForce GTX 465 06C4 C
GeForce GTX 480M 06CA C
-GeForce GTX 470 06CD C
+GeForce GTX 470 06CD C
GeForce GT 440 0DC0 C
-GeForce GTS 450 0DC4 C
-GeForce GTS 450 0DC5 C
-GeForce GTS 450 0DC6 C
-GeForce GT 555M 0DCD C
-GeForce GT 555M 0DCE C
+GeForce GTS 450 0DC4 C
+GeForce GTS 450 0DC5 C
+GeForce GTS 450 0DC6 C
+GeForce GT 555M 0DCD C
+GeForce GT 555M 0DCE C
GeForce GTX 460M 0DD1 C
-GeForce GT 445M 0DD2 C
-GeForce GT 435M 0DD3 C
-GeForce GT 550M 0DD6 C
+GeForce GT 445M 0DD2 C
+GeForce GT 435M 0DD3 C
+GeForce GT 550M 0DD6 C
GeForce GT 440 0DE0 C
GeForce GT 430 0DE1 C
GeForce GT 420 0DE2 C
-GeForce GT 635M 0DE3 C
+GeForce GT 635M 0DE3 C
GeForce GT 520 0DE4 C
GeForce GT 530 0DE5 C
GeForce GT 610 0DE7 C
-GeForce GT 620M 0DE8 C
-GeForce GT 630M 0DE9 C
-GeForce GT 620M 0DE9 1025 0692 C
-GeForce GT 620M 0DE9 1025 0725 C
-GeForce GT 620M 0DE9 1025 0728 C
-GeForce GT 620M 0DE9 1025 072B C
-GeForce GT 620M 0DE9 1025 072E C
-GeForce GT 620M 0DE9 1025 0753 C
-GeForce GT 620M 0DE9 1025 0754 C
+GeForce GT 620M 0DE8 C
+GeForce GT 630M 0DE9 C
+GeForce GT 620M 0DE9 1025 0692 C
+GeForce GT 620M 0DE9 1025 0725 C
+GeForce GT 620M 0DE9 1025 0728 C
+GeForce GT 620M 0DE9 1025 072B C
+GeForce GT 620M 0DE9 1025 072E C
+GeForce GT 620M 0DE9 1025 0753 C
+GeForce GT 620M 0DE9 1025 0754 C
GeForce GT 640M LE 0DE9 17AA 3977 C
-GeForce GT 635M 0DE9 1B0A 2210 C
+GeForce GT 635M 0DE9 1B0A 2210 C
GeForce 610M 0DEA C
-GeForce 615 0DEA 17AA 365A C
-GeForce 615 0DEA 17AA 365B C
-GeForce 615 0DEA 17AA 365E C
-GeForce 615 0DEA 17AA 3660 C
-GeForce 615 0DEA 17AA 366C C
-GeForce GT 555M 0DEB C
-GeForce GT 525M 0DEC C
-GeForce GT 520M 0DED C
-GeForce GT 415M 0DEE C
-GeForce GT 425M 0DF0 C
-GeForce GT 420M 0DF1 C
-GeForce GT 435M 0DF2 C
-GeForce GT 420M 0DF3 C
-GeForce GT 540M 0DF4 C
-GeForce GT 630M 0DF4 152D 0952 C
-GeForce GT 630M 0DF4 152D 0953 C
-GeForce GT 525M 0DF5 C
-GeForce GT 550M 0DF6 C
-GeForce GT 520M 0DF7 C
-GeForce GTX 460 0E22 C
+GeForce 615 0DEA 17AA 365A C
+GeForce 615 0DEA 17AA 365B C
+GeForce 615 0DEA 17AA 365E C
+GeForce 615 0DEA 17AA 3660 C
+GeForce 615 0DEA 17AA 366C C
+GeForce GT 555M 0DEB C
+GeForce GT 525M 0DEC C
+GeForce GT 520M 0DED C
+GeForce GT 415M 0DEE C
+GeForce GT 425M 0DF0 C
+GeForce GT 420M 0DF1 C
+GeForce GT 435M 0DF2 C
+GeForce GT 420M 0DF3 C
+GeForce GT 540M 0DF4 C
+GeForce GT 630M 0DF4 152D 0952 C
+GeForce GT 630M 0DF4 152D 0953 C
+GeForce GT 525M 0DF5 C
+GeForce GT 550M 0DF6 C
+GeForce GT 520M 0DF7 C
+GeForce GTX 460 0E22 C
GeForce GTX 460 SE 0E23 C
-GeForce GTX 460 0E24 C
+GeForce GTX 460 0E24 C
GeForce GTX 470M 0E30 C
GeForce GTX 485M 0E31 C
GeForce GT 630 0F00 C
@@ -66,43 +66,43 @@ GeForce GT 610 0F03 C
GeForce GT 640 0FC0 C
GeForce GT 640 0FC1 C
GeForce GT 630 0FC2 C
-GeForce GTX 650 0FC6 D
+GeForce GTX 650 0FC6 D
GeForce GT 740 0FC8 D
GeForce GT 730 0FC9 C
-GeForce GT 755M 0FCD D
+GeForce GT 755M 0FCD D
GeForce GT 640M LE 0FCE C
-GeForce GT 650M 0FD1 D
-GeForce GT 640M 0FD2 D
+GeForce GT 650M 0FD1 D
+GeForce GT 640M 0FD2 D
GeForce GT 640M LE 0FD2 1028 0595 C
GeForce GT 640M LE 0FD2 1028 05B2 C
GeForce GT 640M LE 0FD3 C
GeForce GTX 660M 0FD4 D
-GeForce GT 650M 0FD5 D
-GeForce GT 640M 0FD8 D
-GeForce GT 645M 0FD9 D
-GeForce GT 740M 0FDF D
+GeForce GT 650M 0FD5 D
+GeForce GT 640M 0FD8 D
+GeForce GT 645M 0FD9 D
+GeForce GT 740M 0FDF D
GeForce GTX 660M 0FE0 D
-GeForce GT 730M 0FE1 D
-GeForce GT 745M 0FE2 D
-GeForce GT 745M 0FE3 D
-GeForce GT 745A 0FE3 103C 2B16 D
-GeForce GT 745A 0FE3 17AA 3675 D
-GeForce GT 750M 0FE4 D
-GeForce GT 750M 0FE9 D
-GeForce GT 755M 0FEA D
+GeForce GT 730M 0FE1 D
+GeForce GT 745M 0FE2 D
+GeForce GT 745M 0FE3 D
+GeForce GT 745A 0FE3 103C 2B16 D
+GeForce GT 745A 0FE3 17AA 3675 D
+GeForce GT 750M 0FE4 D
+GeForce GT 750M 0FE9 D
+GeForce GT 755M 0FEA D
GeForce 710A 0FEC C
GeForce 820M 0FED C
GeForce 810M 0FEE C
-GeForce GTX TITAN Z 1001 D
-GeForce GTX 780 1004 D
+GeForce GTX TITAN Z 1001 D
+GeForce GTX 780 1004 D
GeForce GTX TITAN 1005 D
-GeForce GTX 780 1007 D
+GeForce GTX 780 1007 D
GeForce GTX 780 Ti 1008 D
GeForce GTX 780 Ti 100A D
-GeForce GTX TITAN Black 100C D
+GeForce GTX TITAN Black 100C D
GeForce GT 520 1040 C
-GeForce 510 1042 D
-GeForce 605 1048 D
+GeForce 510 1042 D
+GeForce 605 1048 D
GeForce GT 620 1049 C
GeForce GT 610 104A C
GeForce GT 625 (OEM) 104B D
@@ -112,13 +112,13 @@ GeForce GT 625 104B 1462 B590 D
GeForce GT 625 104B 174B 0625 D
GeForce GT 625 104B 174B A625 D
GeForce GT 705 104C D
-GeForce GT 520M 1050 C
+GeForce GT 520M 1050 C
GeForce GT 520MX 1051 D
-GeForce GT 520M 1052 C
+GeForce GT 520M 1052 C
GeForce 410M 1054 D
GeForce 410M 1055 D
GeForce 610M 1058 C
-GeForce 610 1058 103C 2AF1 D
+GeForce 610 1058 103C 2AF1 D
GeForce 800A 1058 17AA 3682 D
GeForce 705A 1058 17AA 3692 C
GeForce 800A 1058 17AA 3695 D
@@ -133,59 +133,59 @@ GeForce 705A 105B 103C 2AFB C
GeForce 800A 105B 17AA 30B1 D
GeForce 705A 105B 17AA 30F3 C
GeForce 800A 105B 17AA 36A1 D
-GeForce GTX 580 1080 C
-GeForce GTX 570 1081 C
+GeForce GTX 580 1080 C
+GeForce GTX 570 1081 C
GeForce GTX 560 Ti 1082 C
-GeForce GTX 560 1084 C
-GeForce GTX 570 1086 C
+GeForce GTX 560 1084 C
+GeForce GTX 570 1086 C
GeForce GTX 560 Ti 1087 C
-GeForce GTX 590 1088 C
-GeForce GTX 580 1089 C
-GeForce GTX 580 108B C
+GeForce GTX 590 1088 C
+GeForce GTX 580 1089 C
+GeForce GTX 580 108B C
GeForce 820M 1140 1019 0799 C
-GeForce GT 720M 1140 1019 999F C
-GeForce GT 620M 1140 1025 0600 C
-GeForce GT 620M 1140 1025 0606 C
-GeForce GT 620M 1140 1025 064A C
-GeForce GT 620M 1140 1025 064C C
-GeForce GT 620M 1140 1025 067A C
-GeForce GT 620M 1140 1025 0680 C
+GeForce GT 720M 1140 1019 999F C
+GeForce GT 620M 1140 1025 0600 C
+GeForce GT 620M 1140 1025 0606 C
+GeForce GT 620M 1140 1025 064A C
+GeForce GT 620M 1140 1025 064C C
+GeForce GT 620M 1140 1025 067A C
+GeForce GT 620M 1140 1025 0680 C
GeForce 710M 1140 1025 0686 C
GeForce 710M 1140 1025 0689 C
GeForce 710M 1140 1025 068B C
GeForce 710M 1140 1025 068D C
GeForce 710M 1140 1025 068E C
GeForce 710M 1140 1025 0691 C
-GeForce GT 620M 1140 1025 0692 C
-GeForce GT 620M 1140 1025 0694 C
-GeForce GT 620M 1140 1025 0702 C
-GeForce GT 620M 1140 1025 0719 C
-GeForce GT 620M 1140 1025 0725 C
-GeForce GT 620M 1140 1025 0728 C
-GeForce GT 620M 1140 1025 072B C
-GeForce GT 620M 1140 1025 072E C
-GeForce GT 620M 1140 1025 0732 C
-GeForce GT 720M 1140 1025 0763 C
+GeForce GT 620M 1140 1025 0692 C
+GeForce GT 620M 1140 1025 0694 C
+GeForce GT 620M 1140 1025 0702 C
+GeForce GT 620M 1140 1025 0719 C
+GeForce GT 620M 1140 1025 0725 C
+GeForce GT 620M 1140 1025 0728 C
+GeForce GT 620M 1140 1025 072B C
+GeForce GT 620M 1140 1025 072E C
+GeForce GT 620M 1140 1025 0732 C
+GeForce GT 720M 1140 1025 0763 C
GeForce 710M 1140 1025 0773 C
GeForce 710M 1140 1025 0774 C
-GeForce GT 720M 1140 1025 0776 C
+GeForce GT 720M 1140 1025 0776 C
GeForce 710M 1140 1025 077A C
GeForce 710M 1140 1025 077B C
GeForce 710M 1140 1025 077C C
GeForce 710M 1140 1025 077D C
GeForce 710M 1140 1025 077E C
GeForce 710M 1140 1025 077F C
-GeForce GT 720M 1140 1025 0781 C
-GeForce GT 720M 1140 1025 0798 C
-GeForce GT 720M 1140 1025 0799 C
-GeForce GT 720M 1140 1025 079B C
-GeForce GT 720M 1140 1025 079C C
-GeForce GT 720M 1140 1025 0807 C
+GeForce GT 720M 1140 1025 0781 C
+GeForce GT 720M 1140 1025 0798 C
+GeForce GT 720M 1140 1025 0799 C
+GeForce GT 720M 1140 1025 079B C
+GeForce GT 720M 1140 1025 079C C
+GeForce GT 720M 1140 1025 0807 C
GeForce 820M 1140 1025 0821 C
-GeForce GT 720M 1140 1025 0823 C
-GeForce GT 720M 1140 1025 0830 C
-GeForce GT 720M 1140 1025 0833 C
-GeForce GT 720M 1140 1025 0837 C
+GeForce GT 720M 1140 1025 0823 C
+GeForce GT 720M 1140 1025 0830 C
+GeForce GT 720M 1140 1025 0833 C
+GeForce GT 720M 1140 1025 0837 C
GeForce 820M 1140 1025 083E C
GeForce 710M 1140 1025 0841 C
GeForce 820M 1140 1025 0853 C
@@ -216,27 +216,27 @@ GeForce 820M 1140 1025 0941 C
GeForce 820M 1140 1025 0945 C
GeForce 820M 1140 1025 0954 C
GeForce 820M 1140 1025 0965 C
-GeForce GT 630M 1140 1028 054D C
-GeForce GT 630M 1140 1028 054E C
-GeForce GT 620M 1140 1028 0554 C
-GeForce GT 620M 1140 1028 0557 C
-GeForce GT 625M 1140 1028 0562 C
-GeForce GT 630M 1140 1028 0565 C
-GeForce GT 630M 1140 1028 0568 C
-GeForce GT 630M 1140 1028 0590 C
-GeForce GT 625M 1140 1028 0592 C
-GeForce GT 625M 1140 1028 0594 C
-GeForce GT 625M 1140 1028 0595 C
-GeForce GT 625M 1140 1028 05A2 C
-GeForce GT 625M 1140 1028 05B1 C
-GeForce GT 625M 1140 1028 05B3 C
-GeForce GT 630M 1140 1028 05DA C
-GeForce GT 720M 1140 1028 05DE C
-GeForce GT 720M 1140 1028 05E0 C
-GeForce GT 630M 1140 1028 05E8 C
-GeForce GT 720M 1140 1028 05F4 C
-GeForce GT 720M 1140 1028 060F C
-GeForce GT 720M 1140 1028 062F C
+GeForce GT 630M 1140 1028 054D C
+GeForce GT 630M 1140 1028 054E C
+GeForce GT 620M 1140 1028 0554 C
+GeForce GT 620M 1140 1028 0557 C
+GeForce GT 625M 1140 1028 0562 C
+GeForce GT 630M 1140 1028 0565 C
+GeForce GT 630M 1140 1028 0568 C
+GeForce GT 630M 1140 1028 0590 C
+GeForce GT 625M 1140 1028 0592 C
+GeForce GT 625M 1140 1028 0594 C
+GeForce GT 625M 1140 1028 0595 C
+GeForce GT 625M 1140 1028 05A2 C
+GeForce GT 625M 1140 1028 05B1 C
+GeForce GT 625M 1140 1028 05B3 C
+GeForce GT 630M 1140 1028 05DA C
+GeForce GT 720M 1140 1028 05DE C
+GeForce GT 720M 1140 1028 05E0 C
+GeForce GT 630M 1140 1028 05E8 C
+GeForce GT 720M 1140 1028 05F4 C
+GeForce GT 720M 1140 1028 060F C
+GeForce GT 720M 1140 1028 062F C
GeForce 820M 1140 1028 064E C
GeForce 820M 1140 1028 0652 C
GeForce 820M 1140 1028 0653 C
@@ -250,11 +250,11 @@ GeForce 820M 1140 1028 06AF C
GeForce 820M 1140 1028 06B0 C
GeForce 820M 1140 1028 06C0 C
GeForce 820M 1140 1028 06C1 C
-GeForce GT 630M 1140 103C 18EF C
-GeForce GT 630M 1140 103C 18F9 C
-GeForce GT 630M 1140 103C 18FB C
-GeForce GT 630M 1140 103C 18FD C
-GeForce GT 630M 1140 103C 18FF C
+GeForce GT 630M 1140 103C 18EF C
+GeForce GT 630M 1140 103C 18F9 C
+GeForce GT 630M 1140 103C 18FB C
+GeForce GT 630M 1140 103C 18FD C
+GeForce GT 630M 1140 103C 18FF C
GeForce 820M 1140 103C 218A C
GeForce 820M 1140 103C 21BB C
GeForce 820M 1140 103C 21BC C
@@ -271,15 +271,15 @@ GeForce 820M 1140 103C 22D2 C
GeForce 820M 1140 103C 22D9 C
GeForce 820M 1140 103C 2335 C
GeForce 820M 1140 103C 2337 C
-GeForce GT 720A 1140 103C 2AEF C
+GeForce GT 720A 1140 103C 2AEF C
GeForce 710A 1140 103C 2AF9 C
-GeForce GT 720M 1140 1043 11FD C
-GeForce GT 720M 1140 1043 124D C
-GeForce GT 720M 1140 1043 126D C
-GeForce GT 720M 1140 1043 131D C
-GeForce GT 720M 1140 1043 13FD C
-GeForce GT 720M 1140 1043 14C7 C
-GeForce GT 620M 1140 1043 1507 C
+GeForce GT 720M 1140 1043 11FD C
+GeForce GT 720M 1140 1043 124D C
+GeForce GT 720M 1140 1043 126D C
+GeForce GT 720M 1140 1043 131D C
+GeForce GT 720M 1140 1043 13FD C
+GeForce GT 720M 1140 1043 14C7 C
+GeForce GT 620M 1140 1043 1507 C
GeForce 820M 1140 1043 15AD C
GeForce 820M 1140 1043 15ED C
GeForce 820M 1140 1043 160D C
@@ -292,13 +292,13 @@ GeForce 820M 1140 1043 170D C
GeForce 820M 1140 1043 176D C
GeForce 820M 1140 1043 178D C
GeForce 820M 1140 1043 179D C
-GeForce GT 620M 1140 1043 2132 C
-GeForce GT 720M 1140 1043 21BA C
-GeForce GT 720M 1140 1043 21FA C
-GeForce GT 720M 1140 1043 220A C
-GeForce GT 720M 1140 1043 221A C
-GeForce GT 710M 1140 1043 223A C
-GeForce GT 710M 1140 1043 224A C
+GeForce GT 620M 1140 1043 2132 C
+GeForce GT 720M 1140 1043 21BA C
+GeForce GT 720M 1140 1043 21FA C
+GeForce GT 720M 1140 1043 220A C
+GeForce GT 720M 1140 1043 221A C
+GeForce GT 710M 1140 1043 223A C
+GeForce GT 710M 1140 1043 224A C
GeForce 820M 1140 1043 227A C
GeForce 820M 1140 1043 228A C
GeForce 820M 1140 1043 22FA C
@@ -307,11 +307,11 @@ GeForce 820M 1140 1043 233A C
GeForce 820M 1140 1043 235A C
GeForce 820M 1140 1043 236A C
GeForce 820M 1140 1043 238A C
-GeForce GT 720M 1140 1043 8595 C
-GeForce GT 720M 1140 1043 85EA C
+GeForce GT 720M 1140 1043 8595 C
+GeForce GT 720M 1140 1043 85EA C
GeForce 820M 1140 1043 85EB C
GeForce 820M 1140 1043 85EC C
-GeForce GT 720M 1140 1043 85EE C
+GeForce GT 720M 1140 1043 85EE C
GeForce 820M 1140 1043 85F3 C
GeForce 820M 1140 1043 860E C
GeForce 820M 1140 1043 861A C
@@ -322,10 +322,10 @@ GeForce 820M 1140 1043 864C C
GeForce 820M 1140 1043 8652 C
GeForce 820M 1140 1043 8660 C
GeForce 820M 1140 1043 8661 C
-GeForce GT 720M 1140 105B 0DAC C
-GeForce GT 720M 1140 105B 0DAD C
-GeForce GT 720M 1140 105B 0EF3 C
-GeForce GT 720M 1140 10CF 17F5 C
+GeForce GT 720M 1140 105B 0DAC C
+GeForce GT 720M 1140 105B 0DAD C
+GeForce GT 720M 1140 105B 0EF3 C
+GeForce GT 720M 1140 10CF 17F5 C
GeForce 710M 1140 1179 FA01 C
GeForce 710M 1140 1179 FA02 C
GeForce 710M 1140 1179 FA03 C
@@ -350,50 +350,50 @@ GeForce 710M 1140 1179 FA58 C
GeForce 710M 1140 1179 FA59 C
GeForce 710M 1140 1179 FA88 C
GeForce 710M 1140 1179 FA89 C
-GeForce GT 620M 1140 144D B092 C
-GeForce GT 630M 1140 144D C0D5 C
-GeForce GT 620M 1140 144D C0D7 C
+GeForce GT 620M 1140 144D B092 C
+GeForce GT 630M 1140 144D C0D5 C
+GeForce GT 620M 1140 144D C0D7 C
GeForce 820M 1140 144D C10D C
-GeForce GT 620M 1140 144D C652 C
+GeForce GT 620M 1140 144D C652 C
GeForce 710M 1140 144D C709 C
GeForce 710M 1140 144D C711 C
GeForce 710M 1140 144D C736 C
GeForce 710M 1140 144D C737 C
GeForce 820M 1140 144D C745 C
GeForce 820M 1140 144D C750 C
-GeForce GT 710M 1140 1462 10B8 C
-GeForce GT 720M 1140 1462 10E9 C
+GeForce GT 710M 1140 1462 10B8 C
+GeForce GT 720M 1140 1462 10E9 C
GeForce 820M 1140 1462 1116 C
GeForce 720M 1140 1462 AA33 C
-GeForce GT 720M 1140 1462 AAA2 C
+GeForce GT 720M 1140 1462 AAA2 C
GeForce 820M 1140 1462 AAA3 C
-GeForce GT 720M 1140 1462 ACB2 C
-GeForce GT 720M 1140 1462 ACC1 C
+GeForce GT 720M 1140 1462 ACB2 C
+GeForce GT 720M 1140 1462 ACC1 C
GeForce 720M 1140 1462 AE61 C
-GeForce GT 720M 1140 1462 AE65 C
+GeForce GT 720M 1140 1462 AE65 C
GeForce 820M 1140 1462 AE6A C
-GeForce GT 720M 1140 1462 AE71 C
+GeForce GT 720M 1140 1462 AE71 C
GeForce 820M 1140 14C0 0083 C
GeForce 620M 1140 152D 0926 C
-GeForce GT 630M 1140 152D 0982 C
-GeForce GT 630M 1140 152D 0983 C
-GeForce GT 820M 1140 152D 1005 C
+GeForce GT 630M 1140 152D 0982 C
+GeForce GT 630M 1140 152D 0983 C
+GeForce GT 820M 1140 152D 1005 C
GeForce 710M 1140 152D 1012 C
GeForce 820M 1140 152D 1019 C
-GeForce GT 630M 1140 152D 1030 C
+GeForce GT 630M 1140 152D 1030 C
GeForce 710M 1140 152D 1055 C
-GeForce GT 720M 1140 152D 1067 C
+GeForce GT 720M 1140 152D 1067 C
GeForce 820M 1140 152D 1092 C
-GeForce GT 720M 1140 17AA 2213 C
-GeForce GT 720M 1140 17AA 2220 C
-GeForce GT 720A 1140 17AA 309C C
+GeForce GT 720M 1140 17AA 2213 C
+GeForce GT 720M 1140 17AA 2220 C
+GeForce GT 720A 1140 17AA 309C C
GeForce 820A 1140 17AA 30B4 C
GeForce 720A 1140 17AA 30B7 C
GeForce 820A 1140 17AA 30E4 C
GeForce 820A 1140 17AA 361B C
GeForce 820A 1140 17AA 361C C
GeForce 820A 1140 17AA 361D C
-GeForce GT 620M 1140 17AA 3656 C
+GeForce GT 620M 1140 17AA 3656 C
GeForce 705M 1140 17AA 365A C
GeForce 800M 1140 17AA 365E C
GeForce 820A 1140 17AA 3661 C
@@ -412,17 +412,17 @@ GeForce 820A 1140 17AA 36A9 C
GeForce 820A 1140 17AA 36AF C
GeForce 820A 1140 17AA 36B0 C
GeForce 820A 1140 17AA 36B6 C
-GeForce GT 720M 1140 17AA 3800 C
-GeForce GT 720M 1140 17AA 3801 C
-GeForce GT 720M 1140 17AA 3802 C
-GeForce GT 720M 1140 17AA 3803 C
-GeForce GT 720M 1140 17AA 3804 C
-GeForce GT 720M 1140 17AA 3806 C
-GeForce GT 720M 1140 17AA 3808 C
-GeForce GT 820M 1140 17AA 380D C
-GeForce GT 820M 1140 17AA 380E C
-GeForce GT 820M 1140 17AA 380F C
-GeForce GT 820M 1140 17AA 3811 C
+GeForce GT 720M 1140 17AA 3800 C
+GeForce GT 720M 1140 17AA 3801 C
+GeForce GT 720M 1140 17AA 3802 C
+GeForce GT 720M 1140 17AA 3803 C
+GeForce GT 720M 1140 17AA 3804 C
+GeForce GT 720M 1140 17AA 3806 C
+GeForce GT 720M 1140 17AA 3808 C
+GeForce GT 820M 1140 17AA 380D C
+GeForce GT 820M 1140 17AA 380E C
+GeForce GT 820M 1140 17AA 380F C
+GeForce GT 820M 1140 17AA 3811 C
GeForce 820M 1140 17AA 3812 C
GeForce 820M 1140 17AA 3813 C
GeForce 820M 1140 17AA 3816 C
@@ -434,30 +434,30 @@ GeForce 820M 1140 17AA 381D C
GeForce 610M 1140 17AA 3901 C
GeForce 710M 1140 17AA 3902 C
GeForce 710M 1140 17AA 3903 C
-GeForce GT 625M 1140 17AA 3904 C
-GeForce GT 720M 1140 17AA 3905 C
+GeForce GT 625M 1140 17AA 3904 C
+GeForce GT 720M 1140 17AA 3905 C
GeForce 820M 1140 17AA 3907 C
-GeForce GT 720M 1140 17AA 3910 C
-GeForce GT 720M 1140 17AA 3912 C
+GeForce GT 720M 1140 17AA 3910 C
+GeForce GT 720M 1140 17AA 3912 C
GeForce 820M 1140 17AA 3913 C
GeForce 820M 1140 17AA 3915 C
GeForce 610M 1140 17AA 3983 C
GeForce 610M 1140 17AA 5001 C
-GeForce GT 720M 1140 17AA 5003 C
+GeForce GT 720M 1140 17AA 5003 C
GeForce 705M 1140 17AA 5005 C
-GeForce GT 620M 1140 17AA 500D C
+GeForce GT 620M 1140 17AA 500D C
GeForce 710M 1140 17AA 5014 C
GeForce 710M 1140 17AA 5017 C
GeForce 710M 1140 17AA 5019 C
GeForce 710M 1140 17AA 501A C
-GeForce GT 720M 1140 17AA 501F C
+GeForce GT 720M 1140 17AA 501F C
GeForce 710M 1140 17AA 5025 C
GeForce 710M 1140 17AA 5027 C
GeForce 710M 1140 17AA 502A C
-GeForce GT 720M 1140 17AA 502B C
+GeForce GT 720M 1140 17AA 502B C
GeForce 710M 1140 17AA 502D C
-GeForce GT 720M 1140 17AA 502E C
-GeForce GT 720M 1140 17AA 502F C
+GeForce GT 720M 1140 17AA 502E C
+GeForce GT 720M 1140 17AA 502F C
GeForce 705M 1140 17AA 5030 C
GeForce 705M 1140 17AA 5031 C
GeForce 820M 1140 17AA 5032 C
@@ -467,35 +467,35 @@ GeForce 820M 1140 17AA 503F C
GeForce 820M 1140 17AA 5040 C
GeForce 710M 1140 1854 0177 C
GeForce 710M 1140 1854 0180 C
-GeForce GT 720M 1140 1854 0190 C
-GeForce GT 720M 1140 1854 0192 C
+GeForce GT 720M 1140 1854 0190 C
+GeForce GT 720M 1140 1854 0192 C
GeForce 820M 1140 1854 0224 C
GeForce 820M 1140 1B0A 01C0 C
-GeForce GT 620M 1140 1B0A 20DD C
-GeForce GT 620M 1140 1B0A 20DF C
+GeForce GT 620M 1140 1B0A 20DD C
+GeForce GT 620M 1140 1B0A 20DF C
GeForce 820M 1140 1B0A 210E C
-GeForce GT 720M 1140 1B0A 2202 C
+GeForce GT 720M 1140 1B0A 2202 C
GeForce 820M 1140 1B0A 90D7 C
GeForce 820M 1140 1B0A 90DD C
GeForce 820M 1140 1B50 5530 C
-GeForce GT 720M 1140 1B6C 5031 C
+GeForce GT 720M 1140 1B6C 5031 C
GeForce 820M 1140 1BAB 0106 C
GeForce 810M 1140 1D05 1013 C
-GeForce GTX 680 1180 D
+GeForce GTX 680 1180 D
GeForce GTX 660 Ti 1183 D
-GeForce GTX 770 1184 D
-GeForce GTX 660 1185 D
-GeForce GTX 760 1185 10DE 106F D
-GeForce GTX 760 1187 D
-GeForce GTX 690 1188 D
-GeForce GTX 670 1189 D
+GeForce GTX 770 1184 D
+GeForce GTX 660 1185 D
+GeForce GTX 760 1185 10DE 106F D
+GeForce GTX 760 1187 D
+GeForce GTX 690 1188 D
+GeForce GTX 670 1189 D
GeForce GTX 760 Ti OEM 1189 10DE 1074 D
GeForce GTX 760 (192-bit) 118E D
GeForce GTX 760 Ti OEM 1193 D
-GeForce GTX 660 1195 D
+GeForce GTX 660 1195 D
GeForce GTX 880M 1198 D
GeForce GTX 870M 1199 D
-GeForce GTX 760 1199 1458 D001 D
+GeForce GTX 760 1199 1458 D001 D
GeForce GTX 860M 119A D
GeForce GTX 775M 119D D
GeForce GTX 780M 119E D
@@ -505,13 +505,13 @@ GeForce GTX 670MX 11A1 D
GeForce GTX 675MX 11A2 D
GeForce GTX 680MX 11A3 D
GeForce GTX 675MX 11A7 D
-GeForce GTX 660 11C0 D
+GeForce GTX 660 11C0 D
GeForce GTX 650 Ti BOOST 11C2 D
GeForce GTX 650 Ti 11C3 D
-GeForce GTX 645 11C4 D
+GeForce GTX 645 11C4 D
GeForce GT 740 11C5 D
GeForce GTX 650 Ti 11C6 D
-GeForce GTX 650 11C8 D
+GeForce GTX 650 11C8 D
GeForce GT 740 11CB D
GeForce GTX 770M 11E0 D
GeForce GTX 765M 11E1 D
@@ -519,10 +519,10 @@ GeForce GTX 765M 11E2 D
GeForce GTX 760M 11E3 D
GeForce GTX 760A 11E3 17AA 3683 D
GeForce GTX 560 Ti 1200 C
-GeForce GTX 560 1201 C
+GeForce GTX 560 1201 C
GeForce GTX 460 SE v2 1203 C
GeForce GTX 460 v2 1205 C
-GeForce GTX 555 1206 C
+GeForce GTX 555 1206 C
GeForce GT 645 1207 C
GeForce GTX 560 SE 1208 C
GeForce GTX 570M 1210 C
@@ -532,17 +532,17 @@ GeForce GTX 670M 1213 C
GeForce GT 545 1241 C
GeForce GT 545 1243 C
GeForce GTX 550 Ti 1244 C
-GeForce GTS 450 1245 C
-GeForce GT 550M 1246 C
-GeForce GT 555M 1247 C
-GeForce GT 635M 1247 1043 212A C
-GeForce GT 635M 1247 1043 212B C
-GeForce GT 635M 1247 1043 212C C
-GeForce GT 555M 1248 C
-GeForce GTS 450 1249 C
+GeForce GTS 450 1245 C
+GeForce GT 550M 1246 C
+GeForce GT 555M 1247 C
+GeForce GT 635M 1247 1043 212A C
+GeForce GT 635M 1247 1043 212B C
+GeForce GT 635M 1247 1043 212C C
+GeForce GT 555M 1248 C
+GeForce GTS 450 1249 C
GeForce GT 640 124B C
-GeForce GT 555M 124D C
-GeForce GT 635M 124D 1462 10CC C
+GeForce GT 555M 124D C
+GeForce GT 635M 124D 1462 10CC C
GeForce GTX 560M 1251 C
GeForce GT 635 1280 D
GeForce GT 710 1281 D
@@ -553,14 +553,14 @@ GeForce GT 730 1287 C
GeForce GT 720 1288 D
GeForce GT 710 1289 D
GeForce GT 710 128B D
-GeForce GT 730M 1290 D
+GeForce GT 730M 1290 D
GeForce 730A 1290 103C 2AFA D
-GeForce GT 735M 1291 D
-GeForce GT 740M 1292 D
-GeForce GT 740A 1292 17AA 3675 D
-GeForce GT 740A 1292 17AA 367C D
-GeForce GT 740A 1292 17AA 3684 D
-GeForce GT 730M 1293 D
+GeForce GT 735M 1291 D
+GeForce GT 740M 1292 D
+GeForce GT 740A 1292 17AA 3675 D
+GeForce GT 740A 1292 17AA 367C D
+GeForce GT 740A 1292 17AA 3684 D
+GeForce GT 730M 1293 D
GeForce 710M 1295 D
GeForce 710A 1295 103C 2B0D C
GeForce 710A 1295 103C 2B0F C
@@ -569,7 +569,7 @@ GeForce 810A 1295 103C 2B21 D
GeForce 805A 1295 17AA 367A D
GeForce 710A 1295 17AA 367C D
GeForce 825M 1296 D
-GeForce GT 720M 1298 C
+GeForce GT 720M 1298 C
GeForce 920M 1299 D
GeForce 920A 1299 17AA 30BB D
GeForce 920A 1299 17AA 30DA D
@@ -613,19 +613,19 @@ GeForce 930A 1349 17AA 36C3 E
GeForce 930A 1349 17AA 36D1 E
GeForce 930A 1349 17AA 36D8 E
GeForce 940MX 134B E
-GeForce GPU 134B 1414 0008 E
+GeForce GPU 134B 1414 0008 E
GeForce 940MX 134D E
GeForce 930MX 134E E
GeForce 920MX 134F E
GeForce 940A 137D 17AA 3699 E
GeForce GTX 750 Ti 1380 E
-GeForce GTX 750 1381 E
-GeForce GTX 745 1382 E
+GeForce GTX 750 1381 E
+GeForce GTX 745 1382 E
GeForce 845M 1390 E
GeForce GTX 850M 1391 E
GeForce GTX 850A 1391 17AA 3697 E
GeForce GTX 860M 1392 D
-GeForce GPU 1392 1028 066A E
+GeForce GPU 1392 1028 066A E
GeForce GTX 750 Ti 1392 1043 861E E
GeForce GTX 750 Ti 1392 1043 86D9 E
GeForce 840M 1393 E
@@ -648,36 +648,41 @@ GeForce GTX 750 Ti 139B 19DA C248 E
GeForce GTX 750Ti 139B 1AFA 8A75 E
GeForce 940M 139C E
GeForce GTX 750 Ti 139D E
-GeForce GTX 980 13C0 E
-GeForce GTX 970 13C2 E
+GeForce GTX 980 13C0 E
+GeForce GTX 970 13C2 E
GeForce GTX 980M 13D7 E
GeForce GTX 970M 13D8 E
-GeForce GTX 960 13D8 1462 1198 E
-GeForce GTX 960 13D8 1462 1199 E
-GeForce GTX 960 13D8 19DA B282 E
-GeForce GTX 960 13D8 19DA B284 E
-GeForce GTX 960 13D8 19DA B286 E
+GeForce GTX 960 13D8 1462 1198 E
+GeForce GTX 960 13D8 1462 1199 E
+GeForce GTX 960 13D8 19DA B282 E
+GeForce GTX 960 13D8 19DA B284 E
+GeForce GTX 960 13D8 19DA B286 E
GeForce GTX 965M 13D9 E
-GeForce GTX 980 13DA E
-GeForce GTX 960 1401 F
-GeForce GTX 950 1402 F
-GeForce GTX 960 1406 F
-GeForce GTX 750 1407 E
+GeForce GTX 980 13DA E
+GeForce GTX 960 1401 F
+GeForce GTX 950 1402 F
+GeForce GTX 960 1406 F
+GeForce GTX 750 1407 E
GeForce GTX 965M 1427 E
-GeForce GTX 950 1427 1458 D003 F
+GeForce GTX 950 1427 1458 D003 F
GeForce GTX 980M 1617 E
GeForce GTX 970M 1618 E
GeForce GTX 965M 1619 E
-GeForce GTX 980 161A E
+GeForce GTX 980 161A E
GeForce GTX 965M 1667 E
+GeForce MX130 174D E
+GeForce MX110 174E E
GeForce 940MX 179C E
-GeForce GTX TITAN X 17C2 E
+GeForce GTX TITAN X 17C2 E
GeForce GTX 980 Ti 17C8 E
TITAN X (Pascal) 1B00 H
TITAN Xp 1B02 H
-GeForce GTX 1080 Ti 1B06 H
+TITAN Xp COLLECTORS EDITION 1B02 10DE 123E H
+TITAN Xp COLLECTORS EDITION 1B02 10DE 123F H
+GeForce GTX 1080 Ti 1B06 H
GeForce GTX 1080 1B80 H
GeForce GTX 1070 1B81 H
+GeForce GTX 1070 Ti 1B82 H
GeForce GTX 1060 3GB 1B84 H
P104-100 1B87 H
GeForce GTX 1080 1BA0 H
@@ -698,46 +703,49 @@ GeForce GTX 1070 1BE1 H
GeForce GTX 1070 with Max-Q Design 1BE1 1043 16F0 H
GeForce GTX 1060 3GB 1C02 H
GeForce GTX 1060 6GB 1C03 H
+GeForce GTX 1060 5GB 1C04 H
+GeForce GTX 1060 6GB 1C06 H
P106-100 1C07 H
P106-090 1C09 H
GeForce GTX 1060 1C20 H
GeForce GTX 1060 with Max-Q Design 1C20 1028 0802 H
GeForce GTX 1060 with Max-Q Design 1C20 1028 0803 H
GeForce GTX 1060 with Max-Q Design 1C20 17AA 39B9 H
-GeForce GTX 1050 Ti 1C21 H
+GeForce GTX 1050 Ti 1C21 H
GeForce GTX 1050 1C22 H
GeForce GTX 1060 1C60 H
GeForce GTX 1060 with Max-Q Design 1C60 103C 8390 H
-GeForce GTX 1050 Ti 1C61 H
+GeForce GTX 1050 Ti 1C61 H
GeForce GTX 1050 1C62 H
GeForce GTX 1050 1C81 H
-GeForce GTX 1050 Ti 1C82 H
-GeForce GTX 1050 Ti 1C8C H
+GeForce GTX 1050 Ti 1C82 H
+GeForce GTX 1050 Ti 1C8C H
+GeForce GTX 1050 Ti with Max-Q Design 1C8C 17AA 39FF H
GeForce GTX 1050 1C8D H
-GeForce GT 1030 1D01 H
+GeForce GT 1030 1D01 H
GeForce MX150 1D10 H
GeForce MX150 1D12 H
-#NVIDIA Quadro GPUs
-#NVIDIA GPU product Device PCI ID* VDPAU features
-Quadro 6000 06D8 C
-Quadro 5000 06D9 C
+NVIDIA Quadro GPUs
+NVIDIA GPU product Device PCI ID* VDPAU features
+Quadro 6000 06D8 C
+Quadro 5000 06D9 C
Quadro 5000M 06DA C
-Quadro 6000 06DC C
-Quadro 4000 06DD C
-Quadro 2000 0DD8 C
+Quadro 6000 06DC C
+Quadro 4000 06DD C
+Quadro 2000 0DD8 C
Quadro 2000D 0DD8 10DE 0914 C
Quadro 2000M 0DDA C
Quadro 600 0DF8 C
-Quadro 500M 0DF9 C
+Quadro 500M 0DF9 C
Quadro 1000M 0DFA C
Quadro 3000M 0E3A C
Quadro 4000M 0E3B C
-Quadro K420 0FF3 D
+Quadro K420 0FF3 D
Quadro K1100M 0FF6 D
Quadro K500M 0FF8 D
Quadro K2000D 0FF9 D
-Quadro K600 0FFA D
+Quadro K600 0FFA D
Quadro K2000M 0FFB D
Quadro K1000M 0FFC D
Quadro K2000 0FFE D
@@ -745,7 +753,7 @@ Quadro 410 0FFF D
Quadro K6000 103A D
Quadro K5200 103C D
Quadro 5010M 109A C
-Quadro 7000 109B C
+Quadro 7000 109B C
Quadro K4200 11B4 D
Quadro K3100M 11B6 D
Quadro K4100M 11B7 D
@@ -761,23 +769,23 @@ Quadro K510M 12BA D
Quadro K620M 137A 17AA 2225 E
Quadro M500M 137A 17AA 2232 E
Quadro M500M 137A 17AA 505A E
-Quadro M520 137B E
+Quadro M520 137B E
Quadro M2000M 13B0 E
Quadro M1000M 13B1 E
Quadro M600M 13B2 E
Quadro K2200M 13B3 E
-Quadro M620 13B4 E
+Quadro M620 13B4 E
Quadro M1200 13B6 E
Quadro K2200 13BA E
-Quadro K620 13BB E
+Quadro K620 13BB E
Quadro K1200 13BC E
Quadro M5000 13F0 E
Quadro M4000 13F1 E
Quadro M5000M 13F8 E
-Quadro M5000 SE 13F8 10DE 11DD E
+Quadro M5000 SE 13F8 10DE 11DD E
Quadro M4000M 13F9 E
Quadro M3000M 13FA E
-Quadro M3000 SE 13FA 10DE 11C9 E
+Quadro M3000 SE 13FA 10DE 11C9 E
Quadro M5500 13FB E
Quadro M2000 1430 F
Quadro GP100 15F0 G
@@ -794,18 +802,20 @@ Quadro P4000 with Max-Q Design 1BB7 1558 9501 H
Quadro P3000 1BB8 H
Quadro P2000 1C30 H
Quadro P1000 1CB1 H
-Quadro P600 1CB2 H
-Quadro P400 1CB3 H
+Quadro P600 1CB2 H
+Quadro P400 1CB3 H
+Quadro P620 1CB6 H
+Quadro P500 1D33 H
-#NVIDIA NVS GPUs
-#NVIDIA GPU product Device PCI ID* VDPAU features
+NVIDIA NVS GPUs
+NVIDIA GPU product Device PCI ID* VDPAU features
NVS 5400M 0DEF C
NVS 5200M 0DFC C
-NVS 510 0FFD D
+NVS 510 0FFD D
NVS 4200M 1056 D
NVS 4200M 1057 D
-NVS 315 107C D
-NVS 310 107D D
+NVS 315 107C D
+NVS 310 107D D
NVS 5200M 1140 1043 10DD C
NVS 5200M 1140 1043 10ED C
NVS 5200M 1140 1043 2136 C
@@ -813,43 +823,43 @@ NVS 5200M 1140 144D C0E2 C
NVS 5200M 1140 144D C0E3 C
NVS 5200M 1140 144D C0E4 C
NVS 5200M 1140 17AA 2200 C
-NVS 810 13B9 E
+NVS 810 13B9 E
-#NVIDIA Tesla GPUs
-#NVIDIA GPU product Device PCI ID* VDPAU features
-Tesla C2050 / C2070 06D1 C
-Tesla C2050 06D1 10DE 0771 C
-Tesla C2070 06D1 10DE 0772 C
-Tesla M2070 06D2 C
-Tesla X2070 06D2 10DE 088F C
-Tesla T20 Processor 06DE C
-Tesla S2050 06DE 10DE 0773 C
-Tesla M2050 06DE 10DE 082F C
-Tesla X2070 06DE 10DE 0840 C
-Tesla M2050 06DE 10DE 0842 C
-Tesla M2050 06DE 10DE 0846 C
-Tesla M2050 06DE 10DE 0866 C
-Tesla M2050 06DE 10DE 0907 C
-Tesla M2050 06DE 10DE 091E C
+NVIDIA Tesla GPUs
+NVIDIA GPU product Device PCI ID* VDPAU features
+Tesla C2050 / C2070 06D1 C
+Tesla C2050 06D1 10DE 0771 C
+Tesla C2070 06D1 10DE 0772 C
+Tesla M2070 06D2 C
+Tesla X2070 06D2 10DE 088F C
+Tesla T20 Processor 06DE C
+Tesla S2050 06DE 10DE 0773 C
+Tesla M2050 06DE 10DE 082F C
+Tesla X2070 06DE 10DE 0840 C
+Tesla M2050 06DE 10DE 0842 C
+Tesla M2050 06DE 10DE 0846 C
+Tesla M2050 06DE 10DE 0866 C
+Tesla M2050 06DE 10DE 0907 C
+Tesla M2050 06DE 10DE 091E C
Tesla M2070-Q 06DF C
-Tesla K20Xm 1021 D
+Tesla K20Xm 1021 D
Tesla K20c 1022 D
Tesla K40m 1023 D
Tesla K40c 1024 D
Tesla K20s 1026 D
-Tesla K40st 1027 D
+Tesla K40st 1027 D
Tesla K20m 1028 D
Tesla K40s 1029 D
Tesla K40t 102A D
Tesla K80 102D D
-Tesla M2090 1091 C
-Tesla X2090 1091 10DE 088E C
-Tesla X2090 1091 10DE 0891 C
-Tesla X2090 1091 10DE 0974 C
-Tesla X2090 1091 10DE 098D C
-Tesla M2075 1094 C
-Tesla C2075 1096 C
-Tesla C2050 1096 10DE 0911 C
+Tesla M2090 1091 C
+Tesla X2090 1091 10DE 088E C
+Tesla X2090 1091 10DE 0891 C
+Tesla X2090 1091 10DE 0974 C
+Tesla X2090 1091 10DE 098D C
+Tesla M2075 1094 C
+Tesla C2075 1096 C
+Tesla C2050 1096 10DE 0911 C
Tesla K10 118F D
Tesla K8 1194 D
Tesla M60 13F2 E
@@ -864,9 +874,7 @@ Tesla M40 24GB 17FD 10DE 1173 E
Tesla P40 1B38 H
Tesla P4 1BB3 H
Tesla P6 1BB4 H
-Tesla V100-SXM2-16GB 1DB1 I
-Tesla V100-PCIE-16GB 1DB4 I
-#NVIDIA GRID GPUs
-#NVIDIA GPU product Device PCI ID* VDPAU features
+NVIDIA GRID GPUs
+NVIDIA GPU product Device PCI ID* VDPAU features
GRID K520 118A D
diff --git a/abs/core/systemd/PKGBUILD b/abs/core/systemd/PKGBUILD
index 6e4bc37..93f942b 100644
--- a/abs/core/systemd/PKGBUILD
+++ b/abs/core/systemd/PKGBUILD
@@ -1,88 +1,156 @@
+# $Id$
+# Maintainer: Christian Hesse <mail@eworm.de>
# Maintainer: Dave Reisner <dreisner@archlinux.org>
# Maintainer: Tom Gundersen <teg@jklm.no>
pkgbase=systemd
pkgname=('systemd' 'libsystemd' 'systemd-sysvcompat')
-pkgver=224
+# latest commit on stable branch
+_commit='738ab7502afb7663d9aacdd73e79025aa7cd0a9b'
+# Bump this to latest major release for signed tag verification,
+# the commit count is handled by pkgver() function.
+pkgver=238.0
pkgrel=1
-arch=('i686' 'x86_64')
-url="http://www.freedesktop.org/wiki/Software/systemd"
-makedepends=('acl' 'cryptsetup' 'docbook-xsl' 'gperf' 'lz4' 'xz' 'pam'
+arch=('x86_64')
+url="https://www.github.com/systemd/systemd"
+makedepends=('acl' 'cryptsetup' 'docbook-xsl' 'gperf' 'lz4' 'xz' 'pam' 'libelf'
'intltool' 'iptables' 'kmod' 'libcap' 'libidn' 'libgcrypt'
'libmicrohttpd' 'libxslt' 'util-linux' 'linux-api-headers'
- 'python2-lxml' 'quota-tools' 'shadow' 'gnu-efi-libs' 'git')
-options=('strip' 'debug')
-source=("git://github.com/systemd/systemd.git#tag=v$pkgver"
+ 'python-lxml' 'quota-tools' 'shadow' 'gnu-efi-libs' 'git'
+ 'meson' 'libseccomp' 'pcre2')
+options=('strip')
+validpgpkeys=('63CDA1E5D3FC22B998D20DD6327F26951A015CC4' # Lennart Poettering <lennart@poettering.net>
+ '5C251B5FC54EB2F80F407AAAC54CA336CFEB557E') # Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
+source=('git://github.com/systemd/systemd-stable.git'
+ 'git://github.com/systemd/systemd.git' # pull in for tags, backports & reverts
'initcpio-hook-udev'
'initcpio-install-systemd'
'initcpio-install-udev'
'arch.conf'
'loader.conf'
- 'splash-arch.bmp')
-md5sums=('SKIP'
- '90ea67a7bb237502094914622a39e281'
- '976c5511b6493715e381f43f16cdb151'
- '1b3aa3a0551b08af9305d33f85b5c2fc'
- '20ead378f5d6df4b2a3e670301510a7d'
- 'ddaef54f68f6c86c6c07835fc668f62a'
- '1e2f9a8b0fa32022bf0a8f39123e5f4e')
+ 'splash-arch.bmp'
+ 'systemd-user.pam'
+ 'systemd-hwdb.hook'
+ 'systemd-sysusers.hook'
+ 'systemd-tmpfiles.hook'
+ 'systemd-update.hook')
+sha512sums=('SKIP'
+ 'SKIP'
+ 'f0d933e8c6064ed830dec54049b0a01e27be87203208f6ae982f10fb4eddc7258cb2919d594cbfb9a33e74c3510cfd682f3416ba8e804387ab87d1a217eb4b73'
+ '86d7cacd7536b1069c82bbbb08de7ec81e7f0f18a19fc2b06fabe90db4700623eb3540b75121080d325672d92e26912632ae4f93fd3c0bb48eb3e5eedd88352c'
+ 'a25b28af2e8c516c3a2eec4e64b8c7f70c21f974af4a955a4a9d45fd3e3ff0d2a98b4419fe425d47152d5acae77d64e69d8d014a7209524b75a81b0edb10bf3a'
+ '61032d29241b74a0f28446f8cf1be0e8ec46d0847a61dadb2a4f096e8686d5f57fe5c72bcf386003f6520bc4b5856c32d63bf3efe7eb0bc0deefc9f68159e648'
+ 'c416e2121df83067376bcaacb58c05b01990f4614ad9de657d74b6da3efa441af251d13bf21e3f0f71ddcb4c9ea658b81da3d915667dc5c309c87ec32a1cb5a5'
+ '5a1d78b5170da5abe3d18fdf9f2c3a4d78f15ba7d1ee9ec2708c4c9c2e28973469bc19386f70b3cf32ffafbe4fcc4303e5ebbd6d5187a1df3314ae0965b25e75'
+ 'b90c99d768dc2a4f020ba854edf45ccf1b86a09d2f66e475de21fe589ff7e32c33ef4aa0876d7f1864491488fd7edb2682fc0d68e83a6d4890a0778dc2d6fe19'
+ '2c1f765e7cefc50f07ad994634ea25d9396e6b9c0de46e58f18377e642a471517a0dbf5eb547070a38c6ecf84ec8e030f650a6cee010871cd7a466a32534adda'
+ '7d49a948f5d58f662a7d81544254528257ef8c0a08ca560834f09a7cdf566161d2df4d419ebbc2983196cd45c9eeefcd0c4c2c554376916dce42e895262afc30'
+ 'e521d92674597f82d589b83c378c50c92c881fdb84c436c8b26f7a3436a4c91a20585824a5563933f6868a3023b9ee2fdc7bd58e04bb47c25a0a36e296308fd3'
+ '10190fba9f39a8f4b620a0829e0ba8ed63bb4dbeca712966011ee7807880d01ab2abff1a80baafeb6674db70526a473fe585db8190e864f318fc4d6068552618')
+
+_backports=(
+)
+
+_reverts=(
+)
+
+_validate_tag() {
+ local success fingerprint trusted status tag=v${pkgver%.*}
+
+ parse_gpg_statusfile /dev/stdin < <(git verify-tag --raw "$tag" 2>&1)
+
+ if (( ! success )); then
+ error 'failed to validate tag %s\n' "$tag"
+ return 1
+ fi
+
+ if ! in_array "$fingerprint" "${validpgpkeys[@]}" && (( ! trusted )); then
+ error 'unknown or untrusted public key: %s\n' "$fingerprint"
+ return 1
+ fi
+
+ case $status in
+ 'expired')
+ warning 'the signature has expired'
+ ;;
+ 'expiredkey')
+ warning 'the key has expired'
+ ;;
+ esac
+
+ return 0
+}
+
+pkgver() {
+ local version count
+
+ cd "$pkgbase-stable"
+
+ version="$(git describe --abbrev=0 --tags)"
+ count="$(git rev-list --count ${version}..)"
+ printf '%s.%s' "${version#v}" "${count}"
+}
prepare() {
- cd "$pkgname"
+ cd "$pkgbase-stable"
+
+ git remote add upstream ../systemd/
+ git fetch --all
+
+ git checkout "${_commit}"
- # networkd: fix neworkd crash
- # https://github.com/systemd/systemd/commit/49f6e11e89b4
- git cherry-pick -n 49f6e11e89b4
+ _validate_tag || return
- ./autogen.sh
+ local _commit
+ for _commit in "${_backports[@]}"; do
+ git cherry-pick -n "$_commit"
+ done
+ for _commit in "${_reverts[@]}"; do
+ git revert -n "$_commit"
+ done
}
build() {
- cd "$pkgname"
-
local timeservers=({0..3}.arch.pool.ntp.org)
- ./configure \
- --libexecdir=/usr/lib \
- --localstatedir=/var \
- --sysconfdir=/etc \
- --enable-lz4 \
- --enable-compat-libs \
- --enable-gnuefi \
- --disable-audit \
- --disable-ima \
- --disable-kdbus \
- --with-sysvinit-path= \
- --with-sysvrcnd-path= \
- --with-ntp-servers="${timeservers[*]}"
-
- make
+ local meson_options=(
+ -Daudit=false
+ -Dgnuefi=true
+ -Dima=false
+ -Dlz4=true
+
+ -Ddbuspolicydir=/usr/share/dbus-1/system.d
+ -Ddefault-dnssec=no
+ # TODO(dreisner): consider changing this to unified
+ -Ddefault-hierarchy=hybrid
+ -Ddefault-kill-user-processes=false
+ -Dfallback-hostname='archlinux'
+ -Dntp-servers="${timeservers[*]}"
+ -Drpmmacrosdir=no
+ -Dsysvinit-path=
+ -Dsysvrcnd-path=
+ )
+
+ arch-meson "$pkgbase-stable" build "${meson_options[@]}"
+
+ ninja -C build
}
package_systemd() {
pkgdesc="system and service manager"
license=('GPL2' 'LGPL2.1')
- depends=('acl' 'bash' 'dbus' 'iptables' 'kbd' 'kmod' 'hwids' 'libcap'
- 'libgcrypt' 'libsystemd' 'libidn' 'lz4' 'pam' 'libseccomp' 'util-linux'
- 'xz')
+ groups=('base-devel')
+ depends=('acl' 'bash' 'cryptsetup' 'dbus' 'iptables' 'kbd' 'kmod' 'hwids' 'libcap'
+ 'libgcrypt' 'libsystemd' 'libidn' 'lz4' 'pam' 'libelf' 'libseccomp'
+ 'util-linux' 'xz' 'pcre2')
provides=('nss-myhostname' "systemd-tools=$pkgver" "udev=$pkgver")
replaces=('nss-myhostname' 'systemd-tools' 'udev')
conflicts=('nss-myhostname' 'systemd-tools' 'udev')
- optdepends=('cryptsetup: required for encrypted block devices'
- 'libmicrohttpd: remote journald capabilities'
+ optdepends=('libmicrohttpd: remote journald capabilities'
'quota-tools: kernel-level quota management'
'systemd-sysvcompat: symlink package to provide sysvinit binaries'
'polkit: allow administration as unprivileged user')
- backup=(etc/dbus-1/system.d/org.freedesktop.systemd1.conf
- etc/dbus-1/system.d/org.freedesktop.hostname1.conf
- etc/dbus-1/system.d/org.freedesktop.login1.conf
- etc/dbus-1/system.d/org.freedesktop.locale1.conf
- etc/dbus-1/system.d/org.freedesktop.machine1.conf
- etc/dbus-1/system.d/org.freedesktop.timedate1.conf
- etc/dbus-1/system.d/org.freedesktop.import1.conf
- etc/dbus-1/system.d/org.freedesktop.network1.conf
- etc/pam.d/systemd-user
- etc/systemd/bootchart.conf
+ backup=(etc/pam.d/systemd-user
etc/systemd/coredump.conf
etc/systemd/journald.conf
etc/systemd/journal-remote.conf
@@ -95,17 +163,15 @@ package_systemd() {
etc/udev/udev.conf)
install="systemd.install"
- make -C "$pkgname" DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" ninja -C build install
# don't write units to /etc by default. some of these will be re-enabled on
# post_install.
rm -r "$pkgdir/etc/systemd/system/"*.wants
-
- # get rid of RPM macros
- rm -r "$pkgdir/usr/lib/rpm"
+ rm -r "$pkgdir/etc/systemd/system/"*.service
# add back tmpfiles.d/legacy.conf
- install -m644 "$pkgname/tmpfiles.d/legacy.conf" "$pkgdir/usr/lib/tmpfiles.d"
+ install -m644 "$pkgbase-stable/tmpfiles.d/legacy.conf" "$pkgdir/usr/lib/tmpfiles.d"
# Replace dialout/tape/cdrom group in rules with uucp/storage/optical group
sed -i 's#GROUP="dialout"#GROUP="uucp"#g;
@@ -120,45 +186,62 @@ package_systemd() {
install -Dm644 "$srcdir/initcpio-install-udev" "$pkgdir/usr/lib/initcpio/install/udev"
install -Dm644 "$srcdir/initcpio-hook-udev" "$pkgdir/usr/lib/initcpio/hooks/udev"
- # ensure proper permissions for /var/log/journal. This is only to placate
+ # ensure proper permissions for /var/log/journal
+ # The permissions are stored with named group by tar, so this works with
+ # users and groups populated by systemd-sysusers. This is only to prevent a
+ # warning from pacman as permissions are set by systemd-tmpfiles anyway.
chown root:systemd-journal "$pkgdir/var/log/journal"
chmod 2755 "$pkgdir/var/log/journal"
- # we'll create this on installation
- #rmdir "$pkgdir/var/log/journal/remote"
+ # match directory owner/group and mode from extra/polkit
+ chown root:102 "$pkgdir"/usr/share/polkit-1/rules.d
+ chmod 0750 "$pkgdir"/usr/share/polkit-1/rules.d
- # fix pam file
- sed 's|system-auth|system-login|g' -i "$pkgdir/etc/pam.d/systemd-user"
+ # we'll create this on installation
+ # rmdir "$pkgdir/var/log/journal/remote"
# ship default policy to leave services disabled
echo 'disable *' >"$pkgdir"/usr/lib/systemd/system-preset/99-default.preset
- ### split out manpages for sysvcompat
- rm -rf "$srcdir/_sysvcompat"
- install -dm755 "$srcdir"/_sysvcompat/usr/share/man/man8/
- mv "$pkgdir"/usr/share/man/man8/{telinit,halt,reboot,poweroff,runlevel,shutdown}.8 \
- "$srcdir"/_sysvcompat/usr/share/man/man8
+ # manpages shipped with systemd-sysvcompat
+ rm "$pkgdir"/usr/share/man/man8/{halt,poweroff,reboot,runlevel,shutdown,telinit}.8
+
+ # executable (symlinks) shipped with systemd-sysvcompat
+ rm "$pkgdir"/usr/bin/{halt,init,poweroff,reboot,runlevel,shutdown,telinit}
+
+ # runtime libraries shipped with libsystemd
+ rm "$pkgdir"/usr/lib/lib{nss,systemd,udev}*.so*
- ### split off runtime libraries
- rm -rf "$srcdir/_libsystemd"
- install -dm755 "$srcdir"/_libsystemd/usr/lib
- cd "$srcdir"/_libsystemd
- mv "$pkgdir"/usr/lib/lib{systemd,udev}*.so* usr/lib
+ # allow core/filesystem to pristine nsswitch.conf
+ rm "$pkgdir/usr/share/factory/etc/nsswitch.conf"
+ sed -i '/^C \/etc\/nsswitch\.conf/d' "$pkgdir/usr/lib/tmpfiles.d/etc.conf"
# add example bootctl configuration
install -Dm644 "$srcdir/arch.conf" "$pkgdir"/usr/share/systemd/bootctl/arch.conf
install -Dm644 "$srcdir/loader.conf" "$pkgdir"/usr/share/systemd/bootctl/loader.conf
install -Dm644 "$srcdir/splash-arch.bmp" "$pkgdir"/usr/share/systemd/bootctl/splash-arch.bmp
+
+ install -Dm644 "$srcdir/systemd-hwdb.hook" "$pkgdir/usr/share/libalpm/hooks/systemd-hwdb.hook"
+ install -Dm644 "$srcdir/systemd-sysusers.hook" "$pkgdir/usr/share/libalpm/hooks/systemd-sysusers.hook"
+ install -Dm644 "$srcdir/systemd-tmpfiles.hook" "$pkgdir/usr/share/libalpm/hooks/systemd-tmpfiles.hook"
+ install -Dm644 "$srcdir/systemd-update.hook" "$pkgdir/usr/share/libalpm/hooks/systemd-update.hook"
+
+ # overwrite the systemd-user PAM configuration with our own
+ install -Dm644 systemd-user.pam "$pkgdir/etc/pam.d/systemd-user"
}
package_libsystemd() {
pkgdesc="systemd client libraries"
- depends=('glibc' 'libgcrypt' 'lz4' 'xz')
+ depends=('glibc' 'libcap' 'libgcrypt' 'lz4' 'xz')
license=('GPL2')
- provides=('libsystemd.so' 'libsystemd-daemon.so' 'libsystemd-id128.so'
- 'libsystemd-journal.so' 'libsystemd-login.so' 'libudev.so')
+ provides=('libsystemd.so' 'libudev.so')
+
+ # meson does not support installing subsets of files, no?
+ # So do a full install to temporary directory, then install what we need.
+ DESTDIR="$srcdir"/full-install ninja -C build install
- mv "$srcdir/_libsystemd"/* "$pkgdir"
+ install -dm755 "$pkgdir"/usr/lib/
+ cp --archive "$srcdir"/full-install/usr/lib/lib{nss_*,systemd,udev}.so* "$pkgdir"/usr/lib/
}
package_systemd-sysvcompat() {
@@ -168,10 +251,13 @@ package_systemd-sysvcompat() {
conflicts=('sysvinit')
depends=('systemd')
- mv "$srcdir/_sysvcompat"/* "$pkgdir"
+ install -dm755 "$pkgdir"/usr/share/man/man8
+ cp -d --no-preserve=ownership,timestamp \
+ build/man/{telinit,halt,reboot,poweroff,runlevel,shutdown}.8 \
+ "$pkgdir"/usr/share/man/man8
install -dm755 "$pkgdir/usr/bin"
- #for tool in runlevel reboot shutdown poweroff halt telinit; do
+ # for tool in runlevel reboot shutdown poweroff halt telinit; do
for tool in runlevel telinit; do
ln -s 'systemctl' "$pkgdir/usr/bin/$tool"
done
diff --git a/abs/core/systemd/__changelog b/abs/core/systemd/__changelog
index 841eee3..591fa91 100644
--- a/abs/core/systemd/__changelog
+++ b/abs/core/systemd/__changelog
@@ -1,4 +1,3 @@
-PKGBUILD: change dep python-lxml to python2-lxml
PKGBUILD: comment out rmdir "$pkgdir/var/log/journal/remote"
PKGBUILD: Change for tool in runlevel reboot shutdown poweroff halt telinit; do
to for tool in runlevel telinit; do
diff --git a/abs/core/systemd/initcpio-install-systemd b/abs/core/systemd/initcpio-install-systemd
index 96df98a..40a352c 100644
--- a/abs/core/systemd/initcpio-install-systemd
+++ b/abs/core/systemd/initcpio-install-systemd
@@ -93,6 +93,13 @@ add_systemd_unit() {
fi
}
+add_systemd_drop_in() {
+ local unit=$1 dropin_name=$2
+
+ mkdir -p "$BUILDROOT/etc/systemd/system/$unit.d"
+ cat >"$BUILDROOT/etc/systemd/system/$unit.d/$2.conf"
+}
+
build() {
local rules unit
@@ -100,16 +107,16 @@ build() {
add_binary /bin/mount
add_binary /usr/bin/kmod /usr/bin/modprobe
add_binary /usr/lib/systemd/systemd /init
+ add_binary /usr/bin/sulogin
map add_binary \
/usr/bin/systemd-tmpfiles \
/usr/lib/systemd/systemd-hibernate-resume \
+ /usr/lib/systemd/systemd-sulogin-shell \
/usr/lib/systemd/system-generators/systemd-fstab-generator \
/usr/lib/systemd/system-generators/systemd-gpt-auto-generator \
/usr/lib/systemd/system-generators/systemd-hibernate-resume-generator
- add_module "kdbus?"
-
# udev rules and systemd units
map add_udev_rule "$rules" \
50-udev-default.rules \
@@ -123,6 +130,7 @@ build() {
initrd-fs.target \
initrd-parse-etc.service \
initrd-root-fs.target \
+ initrd-root-device.target \
initrd-switch-root.service \
initrd-switch-root.target \
initrd-udevadm-cleanup-db.service \
@@ -140,27 +148,47 @@ build() {
systemd-journald.service \
systemd-journald-audit.socket \
systemd-journald-dev-log.socket \
+ systemd-modules-load.service \
systemd-tmpfiles-setup-dev.service \
systemd-udev-trigger.service \
systemd-udevd-control.socket \
systemd-udevd-kernel.socket \
systemd-udevd.service \
- timers.target
+ timers.target \
+ rescue.target \
+ emergency.target
add_symlink "/usr/lib/systemd/system/default.target" "initrd.target"
add_symlink "/usr/lib/systemd/system/ctrl-alt-del.target" "reboot.target"
- # udev wants /etc/group since it doesn't launch with --resolve-names=never
- add_file "/etc/nsswitch.conf"
add_binary "$(readlink -f /usr/lib/libnss_files.so)"
- add_file "/etc/passwd"
- add_file "/etc/group"
+ printf '%s\n' >"$BUILDROOT/etc/nsswitch.conf" \
+ 'passwd: files' \
+ 'group: files' \
+ 'shadow: files'
+
+ echo "root:x:0:0:root:/:/bin/sh" >"$BUILDROOT/etc/passwd"
+ echo "root:x:0:root" >"$BUILDROOT/etc/group"
+ echo "root::::::::" >"$BUILDROOT/etc/shadow"
+
+ add_systemd_drop_in systemd-udevd.service resolve-names <<EOF
+[Service]
+ExecStart=
+ExecStart=/usr/lib/systemd/systemd-udevd --resolve-names=never
+EOF
+
+ add_dir "/etc/modules-load.d"
+ (
+ . "$_f_config"
+ set -f
+ printf '%s\n' ${MODULES[@]} >"$BUILDROOT/etc/modules-load.d/MODULES.conf"
+ )
}
help() {
cat <<HELPEOF
This will install a basic systemd setup in your initramfs, and is meant to
-replace the 'base', 'usr', 'udev' and 'timestamp' hooks. Other hooks with runtime
+replace the 'base', 'usr', 'udev' and 'resume' hooks. Other hooks with runtime
components will need to be ported, and will not work as intended. You also may
wish to still include the 'base' hook (before this hook) to ensure that a
rescue shell exists on your initramfs.
diff --git a/abs/core/systemd/initcpio-install-udev b/abs/core/systemd/initcpio-install-udev
index 7f0301a..31d9827 100644
--- a/abs/core/systemd/initcpio-install-udev
+++ b/abs/core/systemd/initcpio-install-udev
@@ -19,9 +19,10 @@ build() {
help() {
cat <<HELPEOF
-This hook will use udev to create your root device node and detect the needed
-modules for your root device. It is also required for firmware loading in
-initramfs. It is recommended to use this hook.
+This hook adds the udev daemon to the initramfs, allowing for dynamic loading
+of modules and reliable detection of the root device via tags (e.g. UUID or
+LABEL). Do not remove this hook unless you are using the systemd hook, or you
+know what you're doing.
HELPEOF
}
diff --git a/abs/core/systemd/systemd-hwdb.hook b/abs/core/systemd/systemd-hwdb.hook
new file mode 100644
index 0000000..d7c9877
--- /dev/null
+++ b/abs/core/systemd/systemd-hwdb.hook
@@ -0,0 +1,11 @@
+[Trigger]
+Type = File
+Operation = Install
+Operation = Upgrade
+Operation = Remove
+Target = usr/lib/udev/hwdb.d/*
+
+[Action]
+Description = Updating udev hardware database...
+When = PostTransaction
+Exec = /usr/bin/systemd-hwdb --usr update
diff --git a/abs/core/systemd/systemd-sysusers.hook b/abs/core/systemd/systemd-sysusers.hook
new file mode 100644
index 0000000..6b8affa
--- /dev/null
+++ b/abs/core/systemd/systemd-sysusers.hook
@@ -0,0 +1,11 @@
+[Trigger]
+Type = File
+Operation = Install
+Operation = Upgrade
+Target = usr/lib/sysusers.d/*.conf
+
+[Action]
+Description = Updating system user accounts...
+When = PostTransaction
+Exec = /bin/sh -c 'while read -r f; do /usr/bin/systemd-sysusers "$(basename "$f")" ; done'
+NeedsTargets
diff --git a/abs/core/systemd/systemd-tmpfiles.hook b/abs/core/systemd/systemd-tmpfiles.hook
new file mode 100644
index 0000000..18cdd91
--- /dev/null
+++ b/abs/core/systemd/systemd-tmpfiles.hook
@@ -0,0 +1,11 @@
+[Trigger]
+Type = File
+Operation = Install
+Operation = Upgrade
+Target = usr/lib/tmpfiles.d/*.conf
+
+[Action]
+Description = Creating temporary files...
+When = PostTransaction
+Exec = /bin/sh -c 'while read -r f; do /usr/bin/systemd-tmpfiles --create "$(basename "$f")"; done'
+NeedsTargets
diff --git a/abs/core/systemd/systemd-update.hook b/abs/core/systemd/systemd-update.hook
new file mode 100644
index 0000000..3697fbd
--- /dev/null
+++ b/abs/core/systemd/systemd-update.hook
@@ -0,0 +1,11 @@
+[Trigger]
+Type = File
+Operation = Install
+Operation = Upgrade
+Operation = Remove
+Target = usr/
+
+[Action]
+Description = Arming ConditionNeedsUpdate...
+When = PostTransaction
+Exec = /usr/bin/touch -c /usr
diff --git a/abs/core/systemd/systemd-user.pam b/abs/core/systemd/systemd-user.pam
new file mode 100644
index 0000000..83f7626
--- /dev/null
+++ b/abs/core/systemd/systemd-user.pam
@@ -0,0 +1,5 @@
+# Used by systemd --user instances.
+
+account include system-login
+session required pam_loginuid.so
+session include system-login
diff --git a/abs/core/systemd/systemd.install b/abs/core/systemd/systemd.install
index b0a3e1f..fedc747 100644
--- a/abs/core/systemd/systemd.install
+++ b/abs/core/systemd/systemd.install
@@ -4,143 +4,17 @@ sd_booted() {
[[ -d run/systemd/system && ! -L run/systemd/system ]]
}
-add_privs() {
- if ! setcap "$2" "$1" 2>/dev/null; then
- echo "==> Warning: setcap failed, falling back to setuid root on /$1"
- chmod u+s "$1"
- fi
-}
-
add_journal_acls() {
# ignore errors, since the filesystem might not support ACLs
setfacl -Rnm g:wheel:rx,d:g:wheel:rx,g:adm:rx,d:g:adm:rx var/log/journal/ 2>/dev/null
:
}
-maybe_reexec() {
- # don't reexec on 209-1 upgrade due to large infrastructural changes.
- if [[ $(vercmp 209-1 "$2") -eq 1 ]]; then
- echo ':: systemd has not been reexecuted. It is recommended that you'
- echo ' reboot at your earliest convenience.'
- return
- fi
-
- if sd_booted; then
- systemctl --system daemon-reexec
- fi
-}
-
-_dir_empty() {
- set -- "$1"/*
- [[ ! -e $1 && ! -L $1 ]]
-}
-
post_common() {
systemd-sysusers
- udevadm hwdb --update
journalctl --update-catalog
}
-_204_1_changes() {
- printf '==> The /bin/systemd symlink has been removed. Any references in your\n'
- printf ' bootloader (or elsewhere) must be updated to /usr/lib/systemd/systemd.\n'
-}
-
-_205_1_changes() {
- printf '==> systemd 205 restructures the cgroup hierarchy and changes internal\n'
- printf ' protocols. You should reboot at your earliest convenience.\n'
-}
-
-_206_1_changes() {
- printf '==> The "timestamp" hook for mkinitcpio no longer exists. If you used\n'
- printf ' this hook, you must remove it from /etc/mkinitcpio.conf. A "systemd"\n'
- printf ' hook has been added which provides this functionality, and more.\n'
-}
-
-_208_1_changes() {
- if [[ -e var/lib/backlight && ! -e var/lib/systemd/backlight ]]; then
- mv -T var/lib/backlight var/lib/systemd/backlight
- fi
-
- if [[ -e var/lib/random-seed && ! -e var/lib/systemd/random-seed ]]; then
- mv -T var/lib/random-seed var/lib/systemd/random-seed
- fi
-}
-
-_208_8_changes() {
- add_journal_acls
-}
-
-_209_1_changes() {
- # attempt to preserve existing behavior
-
- local old_rule=etc/udev/rules.d/80-net-name-slot.rules
- local new_rule=etc/udev/rules.d/80-net-setup-link.rules
-
- echo ":: Network device naming is now controlled by udev's net_setup_link"
- echo " builtin. Refer to the systemd.link manpage for a full description."
-
- # not clear what action we can take here, so don't do anything
- [[ -e $new_rule ]] && return 0
-
- # rename the old rule to the new one so that we preserve the user's
- # existing option.
- if [[ -e $old_rule ]]; then
- printf ':: Renaming %s to %s in order\n' "${old_rule##*/}" "${new_rule##*/}"
- printf ' to preserve existing network naming behavior.\n'
- mv -v "$old_rule" "$new_rule"
- else
- echo ':: No changes have been made to your network naming configuration.'
- echo ' Interfaces should continue to maintain the same names.'
- fi
-}
-
-_210_1_changes() {
- if sd_booted; then
- # If /etc/systemd/network is non-empty, then this is a 209 user who used
- # networkd. Re-enable it for them.
- if ! _dir_empty etc/systemd/network; then
- systemctl enable systemd-networkd
- fi
- fi
-}
-
-_213_4_changes() {
- if sd_booted; then
- # if /etc/resolv.conf is a symlink, just assume that it was being managed
- # by systemd-networkd, and re-enable systemd-resolved.
- if [[ -L etc/resolv.conf ]]; then
- systemctl enable systemd-resolved
- fi
- fi
-}
-
-_214_2_changes() {
- # /run/systemd/network/resolv.conf -> /run/systemd/resolve/resolv.conf
- if [[ etc/resolv.conf -ef run/systemd/network/resolv.conf ]]; then
- ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
-
- if sd_booted; then
- if [[ ! -d run/systemd/resolve ]]; then
- mkdir run/systemd/resolve
- fi
-
- if [[ -f run/systemd/network/resolv.conf ]]; then
- mv run/systemd/{network,resolve}/resolv.conf
- fi
- fi
- fi
-
- echo ':: coredumps are no longer sent to the journal by default. To re-enable:'
- echo ' echo >/etc/sysctl.d/50-coredump.conf \'
- echo ' "kernel.core_pattern=|/usr/lib/systemd/systemd-coredump %p %u %g %s %t %e"'
-}
-
-_215_2_changes() {
- # create at least the symlink from /etc/os-release to /usr/lib/os-release
- systemd-tmpfiles --create etc.conf
-}
-
_216_2_changes() {
echo ':: Coredumps are handled by systemd by default. Collection behavior can be'
echo ' tuned in /etc/systemd/coredump.conf.'
@@ -158,6 +32,27 @@ _219_4_changes() {
fi
}
+_230_1_changes() {
+ echo ':: systemd-bootchart is no longer included with systemd'
+}
+
+_232_8_changes() {
+ # paper over possible effects of CVE-2016-10156
+ local stamps=(/var/lib/systemd/timers/*.timer)
+
+ if [[ -f ${stamps[0]} ]]; then
+ chmod 0644 "${stamps[@]}"
+ fi
+}
+
+_233_75_3_changes() {
+ # upstream installs services to /etc, which we remove
+ # to keep bus activation we re-enable systemd-resolved
+ if systemctl is-enabled -q systemd-resolved.service; then
+ systemctl reenable systemd-resolved.service 2>/dev/null
+ fi
+}
+
post_install() {
systemd-machine-id-setup
@@ -179,25 +74,24 @@ post_install() {
post_upgrade() {
post_common "$@"
- maybe_reexec "$@"
-
- local v upgrades=(204-1
- 205-1
- 206-1
- 208-1
- 208-8
- 209-1
- 210-1
- 213-4
- 214-2
- 215-2
- 216-2
- 219-2
- 219-4)
+ # don't reexec if the old version is 231-1 or 231-2.
+ # https://github.com/systemd/systemd/commit/bd64d82c1c
+ if [[ $1 != 231-[12] ]] && sd_booted; then
+ systemctl --system daemon-reexec
+ fi
+
+ local v upgrades=(
+ 216-2
+ 219-2
+ 219-4
+ 230-1
+ 232-8
+ 233.75-3
+ )
for v in "${upgrades[@]}"; do
if [[ $(vercmp "$v" "$2") -eq 1 ]]; then
- "_${v//-/_}_changes"
+ "_${v//[.-]/_}_changes"
fi
done
}
diff --git a/abs/core/talloc/PKGBUILD b/abs/core/talloc/PKGBUILD
index 15dfc1b..c477aba 100644
--- a/abs/core/talloc/PKGBUILD
+++ b/abs/core/talloc/PKGBUILD
@@ -3,10 +3,10 @@
# Contributor: Tobias Powalowski <tpowa@archlinux.org>
pkgname=talloc
-pkgver=2.1.5
+pkgver=2.1.11
pkgrel=1
pkgdesc="Hierarchical pool based memory allocator with destructors"
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('GPL3')
url="http://talloc.samba.org/"
depends=('glibc')
@@ -14,9 +14,9 @@ makedepends=('python2' 'docbook-xsl')
optdepends=('python2: for python bindings')
source=(http://samba.org/ftp/${pkgname}/${pkgname}-${pkgver}.tar.{gz,asc}
fix_test_path.patch)
-sha1sums=('bdf3b3d8449e2c354f1ebc43d3e1058160eb4adb'
+sha1sums=('01b57d8f72ec85f4f2a7be9a5176dfbb3461808c'
'SKIP'
- '34132be289f9ce1c38c8b367def8d91ac7dbb706')
+ '6117e3dffb24bf03d54325c13b7db3b8a7eb2850')
validpgpkeys=(9147A339719518EE9011BCB54793916113084025) # samba-bugs@samba.org
prepare() {
diff --git a/abs/core/talloc/fix_test_path.patch b/abs/core/talloc/fix_test_path.patch
index 37ed604..2405ec8 100644
--- a/abs/core/talloc/fix_test_path.patch
+++ b/abs/core/talloc/fix_test_path.patch
@@ -2,12 +2,12 @@ diff --git a/wscript b/wscript
index 9cedbbf..4432a9a 100644
--- a/wscript
+++ b/wscript
-@@ -158,7 +158,7 @@ def test(ctx):
- cmd = os.path.join(Utils.g_module.blddir, 'talloc_testsuite')
+@@ -159,7 +159,7 @@ def test(ctx):
ret = samba_utils.RUN_COMMAND(cmd)
print("testsuite returned %d" % ret)
+ magic_helper_cmd = os.path.join(Utils.g_module.blddir, 'talloc_test_magic_differs_helper')
- magic_cmd = os.path.join(srcdir, 'lib', 'talloc',
+ magic_cmd = os.path.join(srcdir,
'test_magic_differs.sh')
- magic_ret = samba_utils.RUN_COMMAND(magic_cmd)
+ magic_ret = samba_utils.RUN_COMMAND(magic_cmd + " " + magic_helper_cmd)
diff --git a/abs/core/tar/PKGBUILD b/abs/core/tar/PKGBUILD
index 2fa4afb..182de16 100644
--- a/abs/core/tar/PKGBUILD
+++ b/abs/core/tar/PKGBUILD
@@ -1,35 +1,51 @@
-# $Id: PKGBUILD 199999 2013-11-21 01:21:02Z allan $
-# Maintainer: Allan McRae <allan@archlinux.org>
+# $Id$
+# Mainainer: Sébastien "Seblu" Luttringer <seblu@archlinux.org>
+# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: Andreas Radke <andyrtr@archlinux.org>
pkgname=tar
-pkgver=1.27.1
+pkgver=1.30
pkgrel=1
-pkgdesc="Utility used to store, backup, and transport files"
-arch=('i686' 'x86_64')
-url="http://www.gnu.org/software/tar/tar.html"
+pkgdesc='Utility used to store, backup, and transport files'
+arch=('x86_64')
+url='https://www.gnu.org/software/tar/'
license=('GPL3')
groups=('base')
-depends=('glibc' 'sh')
+depends=('glibc' 'acl' 'attr')
options=('!emptydirs')
-install=tar.install
-source=(ftp://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.xz{,.sig})
+validpgpkeys=('325F650C4C2B6AD58807327A3602B07F55D0C732') # Sergey Poznyakoff
+source=("https://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.xz"{,.sig})
+md5sums=('2d01c6cd1387be98f57a0ec4e6e35826'
+ 'SKIP')
+
+prepare() {
+ cd $pkgname-$pkgver
+ # apply patch from the source array (should be a pacman feature)
+ local filename
+ for filename in "${source[@]}"; do
+ if [[ "$filename" =~ \.patch$ ]]; then
+ msg2 "Applying patch ${filename##*/}"
+ patch -p1 -N -i "$srcdir/${filename##*/}"
+ fi
+ done
+ :
+}
build() {
- cd ${srcdir}/$pkgname-$pkgver
-export FORCE_UNSAFE_CONFIGURE=1
+ cd $pkgname-$pkgver
+ export FORCE_UNSAFE_CONFIGURE=1
./configure --prefix=/usr --libexecdir=/usr/lib/tar
make
}
-3check() {
- cd ${srcdir}/$pkgname-$pkgver
+check() {
+ cd $pkgname-$pkgver
make check
}
-
+
package() {
- cd ${srcdir}/$pkgname-$pkgver
- make DESTDIR=${pkgdir} install
+ cd $pkgname-$pkgver
+ make DESTDIR="$pkgdir" install
}
-md5sums=('e0382a4064e09a4943f3adeff1435978'
- 'SKIP')
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/tar/tar.install b/abs/core/tar/tar.install
deleted file mode 100644
index 8de1f97..0000000
--- a/abs/core/tar/tar.install
+++ /dev/null
@@ -1,21 +0,0 @@
-infodir=usr/share/info
-filelist=(tar.info tar.info-1 tar.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/abs/core/tdb/PKGBUILD b/abs/core/tdb/PKGBUILD
index 25683dc..ff138c0 100644
--- a/abs/core/tdb/PKGBUILD
+++ b/abs/core/tdb/PKGBUILD
@@ -4,10 +4,10 @@
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
pkgname=tdb
-pkgver=1.3.8
+pkgver=1.3.15
pkgrel=1
pkgdesc="A Trivial Database similar to GDBM but allows simultaneous commits"
-arch=(i686 x86_64)
+arch=(x86_64)
license=('GPL3')
url="http://tdb.samba.org/"
makedepends=('python2' 'libxslt' 'docbook-xsl')
@@ -34,5 +34,5 @@ package() {
export PYTHON=/usr/bin/python2
make DESTDIR=$pkgdir/ install
}
-md5sums=('fa4c9e2f59fcf41441285bca5f5ab481'
+md5sums=('60ece3996acc8d85b6f713199da971a6'
'SKIP')
diff --git a/abs/core/texinfo/PKGBUILD b/abs/core/texinfo/PKGBUILD
index 22ef3c6..60ed982 100644
--- a/abs/core/texinfo/PKGBUILD
+++ b/abs/core/texinfo/PKGBUILD
@@ -1,34 +1,39 @@
-# $Id: PKGBUILD 145004 2011-12-13 23:40:32Z allan $
-# Maintainer: Allan McRae <allan@archlinux.org>
+# $Id$
+# Maintainer: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
+# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
pkgname=texinfo
-pkgver=4.13a
-pkgrel=7
-pkgdesc="Utilities to work with and produce manuals, ASCII text, and on-line documentation from a single source file"
-arch=('i686' 'x86_64')
-url="http://www.gnu.org/software/texinfo/"
-license=('GPL3')
-groups=('base')
-depends=('ncurses' 'findutils' 'gzip')
-install=texinfo.install
-source=(ftp://ftp.gnu.org/pub/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz{,.sig}
- texinfo-4.13a-data_types.patch)
-md5sums=('71ba711519209b5fb583fed2b3d86fcb'
- 'db2ca82c831684cd7cef181234017c46'
- 'd8574782ff7def1e2dc5c291dbeaec18')
+pkgver=6.5
+pkgrel=1
+pkgdesc='GNU documentation system for on-line information and printed output'
+arch=(x86_64)
+url='http://www.gnu.org/software/texinfo/'
+license=(GPL3)
+groups=(base base-devel)
+depends=(ncurses gzip perl sh)
+source=(https://ftp.gnu.org/pub/gnu/$pkgname/$pkgname-$pkgver.tar.xz{,.sig}
+ texinfo-install.hook
+ texinfo-remove.hook)
+md5sums=('3715197e62e0e07f85860b3d7aab55ed'
+ 'SKIP'
+ '9a98fb162650ff3065f9a4ebec22db36'
+ '5590fb3ef9ec309c98f5a4d85eca49da')
+validpgpkeys=('EAF669B31E31E1DECBD11513DDBC579DAB37FBA9') # Gavin Smith
build() {
- cd ${srcdir}/${pkgname}-4.13
- patch -Np1 -i $srcdir/texinfo-4.13a-data_types.patch
+ cd $pkgname-$pkgver
./configure --prefix=/usr
make
}
+check() {
+ make -C $pkgname-$pkgver check
+}
+
package() {
- cd ${srcdir}/${pkgname}-4.13
- make DESTDIR=${pkgdir} install
+ make -C $pkgname-$pkgver DESTDIR="$pkgdir" install
- # fix this here as it prevents make from trying to rebuild manual pages
- sed -i 's#A-z#A-Za-z#' ${pkgdir}/usr/bin/texi2dvi
+ install -dm755 "$pkgdir"/usr/share/libalpm/hooks/
+ install -m644 texinfo-{install,remove}.hook "$pkgdir"/usr/share/libalpm/hooks/
}
diff --git a/abs/core/texinfo/texinfo-4.13a-data_types.patch b/abs/core/texinfo/texinfo-4.13a-data_types.patch
deleted file mode 100644
index 2a87c21..0000000
--- a/abs/core/texinfo/texinfo-4.13a-data_types.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-diff -up texinfo-4.13/info/window.c_old texinfo-4.13/info/window.c
---- texinfo-4.13/info/window.c_old 2009-08-04 13:46:15.000000000 +0200
-+++ texinfo-4.13/info/window.c 2009-08-04 13:47:29.000000000 +0200
-@@ -1581,7 +1581,7 @@ process_node_text (WINDOW *win, char *st
- const char *carried_over_ptr;
- size_t carried_over_len, carried_over_count;
- const char *cur_ptr = mbi_cur_ptr (iter);
-- int cur_len = mb_len (mbi_cur (iter));
-+ size_t cur_len = mb_len (mbi_cur (iter));
- int replen;
- int delim = 0;
- int rc;
-@@ -1754,7 +1754,7 @@ clean_manpage (char *manpage)
- mbi_advance (iter))
- {
- const char *cur_ptr = mbi_cur_ptr (iter);
-- int cur_len = mb_len (mbi_cur (iter));
-+ size_t cur_len = mb_len (mbi_cur (iter));
-
- if (cur_len == 1)
- {
-@@ -1852,8 +1852,8 @@ window_scan_line (WINDOW *win, int line,
- mbi_advance (iter))
- {
- const char *cur_ptr = mbi_cur_ptr (iter);
-- int cur_len = mb_len (mbi_cur (iter));
-- int replen;
-+ size_t cur_len = mb_len (mbi_cur (iter));
-+ size_t replen;
-
- if (cur_ptr >= endp)
- break;
diff --git a/abs/core/texinfo/texinfo-install.hook b/abs/core/texinfo/texinfo-install.hook
new file mode 100644
index 0000000..80f7896
--- /dev/null
+++ b/abs/core/texinfo/texinfo-install.hook
@@ -0,0 +1,11 @@
+[Trigger]
+Type = File
+Operation = Install
+Operation = Upgrade
+Target = usr/share/info/*
+
+[Action]
+Description = Updating the info directory file...
+When = PostTransaction
+Exec = /bin/sh -c 'while read -r f; do install-info "$f" /usr/share/info/dir 2> /dev/null; done'
+NeedsTargets
diff --git a/abs/core/texinfo/texinfo-remove.hook b/abs/core/texinfo/texinfo-remove.hook
new file mode 100644
index 0000000..e57e666
--- /dev/null
+++ b/abs/core/texinfo/texinfo-remove.hook
@@ -0,0 +1,10 @@
+[Trigger]
+Type = File
+Operation = Remove
+Target = usr/share/info/*
+
+[Action]
+Description = Removing old entries from the info directory file...
+When = PreTransaction
+Exec = /bin/sh -c 'while read -r f; do install-info --delete "$f" /usr/share/info/dir 2> /dev/null; done'
+NeedsTargets
diff --git a/abs/core/texinfo/texinfo.install b/abs/core/texinfo/texinfo.install
deleted file mode 100644
index f1554e4..0000000
--- a/abs/core/texinfo/texinfo.install
+++ /dev/null
@@ -1,21 +0,0 @@
-infodir=usr/share/info
-filelist=(info.info info-stnd.info texinfo texinfo-1 texinfo-2 texinfo-3)
-
-post_install() {
- # Scan *all* info files on install
- for file in $(find $infodir -type f ! -name dir); do
- install-info $file $infodir/dir 2> /dev/null
- done
-}
-
-post_upgrade() {
- for file in ${filelist[@]}; do
- install-info $infodir/$file.gz $infodir/dir 2> /dev/null
- done
-}
-
-pre_remove() {
- for file in ${filelist[@]}; do
- install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
- done
-}
diff --git a/abs/core/util-linux/0001-chrt-default-to-SCHED_RR-policy.patch b/abs/core/util-linux/0001-chrt-default-to-SCHED_RR-policy.patch
deleted file mode 100644
index c442149..0000000
--- a/abs/core/util-linux/0001-chrt-default-to-SCHED_RR-policy.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From c7adc2f204f19167f781fa2ee739e0ca386fc4f5 Mon Sep 17 00:00:00 2001
-From: Andreas Henriksson <andreas@fatal.se>
-Date: Fri, 2 Dec 2016 15:10:18 +0100
-Subject: [PATCH] chrt: default to SCHED_RR policy
-
-This fixes a regression introduced in:
-
-commit 7a4ea5664edba98bff28adec3a9c3cfb5763a495
-"chrt: add control struct"
-
-Previously (and as documented in the manpage) the default policy
-was SCHED_RR. Now it's implicitly SCHED_OTHER (0) as the value
-is not initialized explicitly anymore.
-
-Test-command: chrt 90 echo hello
-
-Reported-by: Patrick Pelissier <patrick.pelissier@gmail.com>
-Addresses: http://bugs.debian.org/846572
-Signed-off-by: Andreas Henriksson <andreas@fatal.se>
----
- schedutils/chrt.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/schedutils/chrt.c b/schedutils/chrt.c
-index a861d9f..73d1ffa 100644
---- a/schedutils/chrt.c
-+++ b/schedutils/chrt.c
-@@ -409,7 +409,7 @@ static void set_sched(struct chrt_ctl *ctl)
-
- int main(int argc, char **argv)
- {
-- struct chrt_ctl _ctl = { .pid = -1 }, *ctl = &_ctl;
-+ struct chrt_ctl _ctl = { .pid = -1, .policy = SCHED_RR }, *ctl = &_ctl;
- int c;
-
- static const struct option longopts[] = {
---
-2.10.2
-
diff --git a/abs/core/util-linux/0001-lsns-Fix-parser-for-proc-pid-stat-which-is-including.patch b/abs/core/util-linux/0001-lsns-Fix-parser-for-proc-pid-stat-which-is-including.patch
deleted file mode 100644
index b13f189..0000000
--- a/abs/core/util-linux/0001-lsns-Fix-parser-for-proc-pid-stat-which-is-including.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-From 3fcbd7978980dc1a29c626b701333e27599e506d Mon Sep 17 00:00:00 2001
-From: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
-Date: Wed, 23 Nov 2016 14:13:34 +0900
-Subject: [PATCH] lsns: Fix parser for /proc/<pid>/stat which is including
- space in comm
-
-For example, child process of spamd has
-
- 32031 (spamd child) S 32026 32026 32026 0 -1 4210752 338 0 0 0 ...
-
-fscanf("%d %*s %c %d*[^\n]") in read_process() can't parse above as we
-expected, because %s only skips non-whitespace. I.e. it parses like
-following,
-
- 32031 (spamd child) S 32026 32026 32026 0 -1 4210752 338 0 0 0 ...
- +---+ +----+ +
- %d %*s %c
-
-and returns 2 (pid=32031, state=c).
-
-This fixes it by skipping task->comm part manually.
-
-Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
----
- sys-utils/lsns.c | 30 ++++++++++++++++++++++++++----
- 1 file changed, 26 insertions(+), 4 deletions(-)
-
-diff --git a/sys-utils/lsns.c b/sys-utils/lsns.c
-index e4fd208..809737c 100644
---- a/sys-utils/lsns.c
-+++ b/sys-utils/lsns.c
-@@ -217,6 +217,30 @@ static int get_ns_ino(int dir, const char *nsname, ino_t *ino)
- return 0;
- }
-
-+static int parse_proc_stat(FILE *fp, pid_t *pid, char *state, pid_t *ppid)
-+{
-+ char *line = NULL, *p;
-+ size_t len = 0;
-+ int rc;
-+
-+ if (getline(&line, &len, fp) < 0) {
-+ rc = -errno;
-+ goto error;
-+ }
-+
-+ p = strrchr(line, ')');
-+ if (p == NULL ||
-+ sscanf(line, "%d (", pid) != 1 ||
-+ sscanf(p, ") %c %d*[^\n]", state, ppid) != 2) {
-+ rc = -EINVAL;
-+ goto error;
-+ }
-+ rc = 0;
-+
-+error:
-+ free(line);
-+ return rc;
-+}
-
- static int read_process(struct lsns *ls, pid_t pid)
- {
-@@ -255,11 +279,9 @@ static int read_process(struct lsns *ls, pid_t pid)
- rc = -errno;
- goto done;
- }
-- rc = fscanf(f, "%d %*s %c %d*[^\n]", &p->pid, &p->state, &p->ppid);
-- if (rc != 3) {
-- rc = rc < 0 ? -errno : -EINVAL;
-+ rc = parse_proc_stat(f, &p->pid, &p->state, &p->ppid);
-+ if (rc < 0)
- goto done;
-- }
- rc = 0;
-
- for (i = 0; i < ARRAY_SIZE(p->ns_ids); i++) {
---
-2.10.2
-
diff --git a/abs/core/util-linux/0001-sfdisk-cleanup-dump-error-messages.patch b/abs/core/util-linux/0001-sfdisk-cleanup-dump-error-messages.patch
deleted file mode 100644
index 918138c..0000000
--- a/abs/core/util-linux/0001-sfdisk-cleanup-dump-error-messages.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From c49b765a6e9031642e2bb846e93dddc6827e4b28 Mon Sep 17 00:00:00 2001
-From: Karel Zak <kzak@redhat.com>
-Date: Wed, 30 Nov 2016 10:53:56 +0100
-Subject: [PATCH] sfdisk: cleanup --dump error messages
-
-old:
- # truncate -s 1G empty && ./sfdisk --dump empty
- sfdisk: failed to dump partition table: Success
-
-new:
- # truncate -s 1G empty && ./sfdisk --dump empty
- sfdisk: empty: does not contain a recognized partition table.
-
-Addresses: https://github.com/karelzak/util-linux/issues/375
-Signed-off-by: Karel Zak <kzak@redhat.com>
----
- disk-utils/sfdisk.c | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/disk-utils/sfdisk.c b/disk-utils/sfdisk.c
-index 0f69d65..10307ad 100644
---- a/disk-utils/sfdisk.c
-+++ b/disk-utils/sfdisk.c
-@@ -950,13 +950,16 @@ static int command_dump(struct sfdisk *sf, int argc, char **argv)
- if (rc)
- err(EXIT_FAILURE, _("cannot open %s"), devname);
-
-+ if (!fdisk_has_label(sf->cxt))
-+ errx(EXIT_FAILURE, _("%s: does not contain a recognized partition table"), devname);
-+
- dp = fdisk_new_script(sf->cxt);
- if (!dp)
- err(EXIT_FAILURE, _("failed to allocate dump struct"));
-
- rc = fdisk_script_read_context(dp, NULL);
- if (rc)
-- err(EXIT_FAILURE, _("failed to dump partition table"));
-+ errx(EXIT_FAILURE, _("%s: failed to dump partition table"), devname);
-
- if (sf->json)
- fdisk_script_enable_json(dp, 1);
---
-2.10.2
-
diff --git a/abs/core/util-linux/0001-sfdisk-don-t-be-silent-when-list-non-existing-device.patch b/abs/core/util-linux/0001-sfdisk-don-t-be-silent-when-list-non-existing-device.patch
deleted file mode 100644
index 4b088bb..0000000
--- a/abs/core/util-linux/0001-sfdisk-don-t-be-silent-when-list-non-existing-device.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From fed304837f60b626f6198663990e76e506f89063 Mon Sep 17 00:00:00 2001
-From: Karel Zak <kzak@redhat.com>
-Date: Tue, 29 Nov 2016 15:58:18 +0100
-Subject: [PATCH] sfdisk: don't be silent when list non-existing device
-
-Addresses: https://github.com/karelzak/util-linux/issues/376
-Signed-off-by: Karel Zak <kzak@redhat.com>
----
- disk-utils/sfdisk.c | 16 ++++++++++------
- 1 file changed, 10 insertions(+), 6 deletions(-)
-
-diff --git a/disk-utils/sfdisk.c b/disk-utils/sfdisk.c
-index 52f2a6d..0f69d65 100644
---- a/disk-utils/sfdisk.c
-+++ b/disk-utils/sfdisk.c
-@@ -560,6 +560,7 @@ static int write_changes(struct sfdisk *sf)
- */
- static int command_list_partitions(struct sfdisk *sf, int argc, char **argv)
- {
-+ int fail = 0;
- fdisk_enable_listonly(sf->cxt, 1);
-
- if (argc) {
-@@ -568,13 +569,14 @@ static int command_list_partitions(struct sfdisk *sf, int argc, char **argv)
- for (i = 0; i < argc; i++) {
- if (ct)
- fputs("\n\n", stdout);
-- if (print_device_pt(sf->cxt, argv[i], 0, sf->verify) == 0)
-- ct++;
-+ if (print_device_pt(sf->cxt, argv[i], 1, sf->verify) != 0)
-+ fail++;
-+ ct++;
- }
- } else
- print_all_devices_pt(sf->cxt, sf->verify);
-
-- return 0;
-+ return fail;
- }
-
- /*
-@@ -582,6 +584,7 @@ static int command_list_partitions(struct sfdisk *sf, int argc, char **argv)
- */
- static int command_list_freespace(struct sfdisk *sf, int argc, char **argv)
- {
-+ int fail = 0;
- fdisk_enable_listonly(sf->cxt, 1);
-
- if (argc) {
-@@ -590,13 +593,14 @@ static int command_list_freespace(struct sfdisk *sf, int argc, char **argv)
- for (i = 0; i < argc; i++) {
- if (ct)
- fputs("\n\n", stdout);
-- if (print_device_freespace(sf->cxt, argv[i], 0) == 0)
-- ct++;
-+ if (print_device_freespace(sf->cxt, argv[i], 1) != 0)
-+ fail++;
-+ ct++;
- }
- } else
- print_all_devices_freespace(sf->cxt);
-
-- return 0;
-+ return fail;
- }
-
- /*
---
-2.10.2
-
diff --git a/abs/core/util-linux/0001-sfdisk-support-empty-label-use-case.patch b/abs/core/util-linux/0001-sfdisk-support-empty-label-use-case.patch
deleted file mode 100644
index 29ab44d..0000000
--- a/abs/core/util-linux/0001-sfdisk-support-empty-label-use-case.patch
+++ /dev/null
@@ -1,223 +0,0 @@
-From 35ca51182782193f555fbdcb06bb10766550d017 Mon Sep 17 00:00:00 2001
-From: Karel Zak <kzak@redhat.com>
-Date: Wed, 30 Nov 2016 12:43:10 +0100
-Subject: [PATCH] sfdisk: support empty label use-case
-
-By default sfdisk creates partition table when a first partition is
-specified, otherwise the device is not modified. This force users to
-create at least one partition.
-
-This commit allows to create empty label without partitions if "label:
-<name>" header line is specified by script.
-
-The commit also modifies "New situation:" output to list label name
-and label identifier.
-
-Addresses: https://github.com/karelzak/util-linux/issues/374
-Signed-off-by: Karel Zak <kzak@redhat.com>
----
- disk-utils/fdisk-list.c | 23 +++++++++++++++--------
- disk-utils/fdisk-list.h | 1 +
- disk-utils/sfdisk.8 | 18 +++++++++++++++++-
- disk-utils/sfdisk.c | 17 +++++++++++++++++
- libfdisk/src/libfdisk.h.in | 1 +
- libfdisk/src/libfdisk.sym | 5 +++++
- libfdisk/src/script.c | 20 +++++++++++++++++++-
- 7 files changed, 75 insertions(+), 10 deletions(-)
-
-diff --git a/disk-utils/fdisk-list.c b/disk-utils/fdisk-list.c
-index e6b2033..c9560f4 100644
---- a/disk-utils/fdisk-list.c
-+++ b/disk-utils/fdisk-list.c
-@@ -34,10 +34,23 @@ static int is_ide_cdrom_or_tape(char *device)
- return ret;
- }
-
-+void list_disk_identifier(struct fdisk_context *cxt)
-+{
-+ struct fdisk_label *lb = fdisk_get_label(cxt, NULL);
-+ char *id = NULL;
-+
-+ if (fdisk_has_label(cxt))
-+ fdisk_info(cxt, _("Disklabel type: %s"),
-+ fdisk_label_get_name(lb));
-+
-+ if (!fdisk_is_details(cxt) && fdisk_get_disklabel_id(cxt, &id) == 0 && id) {
-+ fdisk_info(cxt, _("Disk identifier: %s"), id);
-+ free(id);
-+ }
-+}
-
- void list_disk_geometry(struct fdisk_context *cxt)
- {
-- char *id = NULL;
- struct fdisk_label *lb = fdisk_get_label(cxt, NULL);
- uint64_t bytes = fdisk_get_nsectors(cxt) * fdisk_get_sector_size(cxt);
- char *strsz = size_to_human_string(SIZE_SUFFIX_SPACE
-@@ -71,14 +84,8 @@ void list_disk_geometry(struct fdisk_context *cxt)
- if (fdisk_get_alignment_offset(cxt))
- fdisk_info(cxt, _("Alignment offset: %lu bytes"),
- fdisk_get_alignment_offset(cxt));
-- if (fdisk_has_label(cxt))
-- fdisk_info(cxt, _("Disklabel type: %s"),
-- fdisk_label_get_name(lb));
-
-- if (!fdisk_is_details(cxt) && fdisk_get_disklabel_id(cxt, &id) == 0 && id) {
-- fdisk_info(cxt, _("Disk identifier: %s"), id);
-- free(id);
-- }
-+ list_disk_identifier(cxt);
- }
-
- void list_disklabel(struct fdisk_context *cxt)
-diff --git a/disk-utils/fdisk-list.h b/disk-utils/fdisk-list.h
-index eddab92..4ed5c25 100644
---- a/disk-utils/fdisk-list.h
-+++ b/disk-utils/fdisk-list.h
-@@ -2,6 +2,7 @@
- #define UTIL_LINUX_FDISK_LIST_H
-
- extern void list_disklabel(struct fdisk_context *cxt);
-+extern void list_disk_identifier(struct fdisk_context *cxt);
- extern void list_disk_geometry(struct fdisk_context *cxt);
- extern void list_freespace(struct fdisk_context *cxt);
-
-diff --git a/disk-utils/sfdisk.8 b/disk-utils/sfdisk.8
-index fcde872..efe4a86 100644
---- a/disk-utils/sfdisk.8
-+++ b/disk-utils/sfdisk.8
-@@ -212,7 +212,10 @@ Deprecated option. Only the sector unit is supported.
- .BR \-X , " \-\-label " \fItype
- Specify the disk label type (e.g. \fBdos\fR, \fBgpt\fR, ...). If this option
- is not given, then \fBsfdisk\fR defaults to the existing label, but if there
--is no label on the device yet, then the type defaults to \fBdos\fR.
-+is no label on the device yet, then the type defaults to \fBdos\fR. The default
-+or the current label may be overwritten by the "label: <name>" script header
-+line. The option \fB\-\-label\fR does not force \fBsfdisk\fR to create empty
-+disk label (see the \fBEMPTY DISK LABEL\fR section below).
- .TP
- .BR \-Y , " \-\-label\-nested " \fItype
- Force editing of a nested disk label. The primary disk label has to exist already.
-@@ -404,6 +407,19 @@ For backward compatibility the \fBId=\fR field has the same meaning.
- .RE
- .RE
-
-+.SH "EMPTY DISK LABEL"
-+.B sfdisk
-+does not create partition table without partitions by default. The lines with
-+partitions are expected in the script by default. The empty partition table has
-+to be explicitly requested by "label: <name>" script header line without any
-+partitions lines. For example:
-+.RS
-+.sp
-+.B "echo 'label: gpt' | sfdisk /dev/sdb"
-+.sp
-+.RE
-+creates empty GPT partition table. Note that the \fB\-\-append\fR disables this feature.
-+
- .SH "BACKING UP THE PARTITION TABLE"
- It is recommended to save the layout of your devices.
- .B sfdisk
-diff --git a/disk-utils/sfdisk.c b/disk-utils/sfdisk.c
-index 10307ad..2d65974 100644
---- a/disk-utils/sfdisk.c
-+++ b/disk-utils/sfdisk.c
-@@ -1766,8 +1766,25 @@ static int command_fdisk(struct sfdisk *sf, int argc, char **argv)
- }
- } while (1);
-
-+ /* create empty disk label if label, but no partition specified */
-+ if (rc == SFDISK_DONE_EOF && created == 0
-+ && fdisk_script_has_force_label(dp) == 1
-+ && fdisk_table_get_nents(tb) == 0
-+ && fdisk_script_get_header(dp, "label")) {
-+
-+ int xrc = fdisk_apply_script_headers(sf->cxt, dp);
-+ created = !xrc;
-+ if (xrc) {
-+ fdisk_warnx(sf->cxt, _(
-+ "Failed to apply script headers, "
-+ "disk label not created."));
-+ rc = SFDISK_DONE_ABORT;
-+ }
-+ }
-+
- if (!sf->quiet && rc != SFDISK_DONE_ABORT) {
- fdisk_info(sf->cxt, _("\nNew situation:"));
-+ list_disk_identifier(sf->cxt);
- list_disklabel(sf->cxt);
- }
-
-diff --git a/libfdisk/src/libfdisk.h.in b/libfdisk/src/libfdisk.h.in
-index 9154f5b..59cce19 100644
---- a/libfdisk/src/libfdisk.h.in
-+++ b/libfdisk/src/libfdisk.h.in
-@@ -642,6 +642,7 @@ const char *fdisk_script_get_header(struct fdisk_script *dp, const char *name);
- int fdisk_script_set_header(struct fdisk_script *dp, const char *name, const char *data);
- struct fdisk_table *fdisk_script_get_table(struct fdisk_script *dp);
- int fdisk_script_get_nlines(struct fdisk_script *dp);
-+int fdisk_script_has_force_label(struct fdisk_script *dp);
-
- int fdisk_script_set_userdata(struct fdisk_script *dp, void *data);
- void *fdisk_script_get_userdata(struct fdisk_script *dp);
-diff --git a/libfdisk/src/libfdisk.sym b/libfdisk/src/libfdisk.sym
-index 02cd7a8..d6d4ac5 100644
---- a/libfdisk/src/libfdisk.sym
-+++ b/libfdisk/src/libfdisk.sym
-@@ -274,3 +274,8 @@ FDISK_2.29 {
- fdisk_labelitem_is_number;
- fdisk_gpt_set_npartitions;
- } FDISK_2.28;
-+
-+
-+FDISK_2.30 {
-+ fdisk_script_has_force_label;
-+} FDISK_2.29;
-diff --git a/libfdisk/src/script.c b/libfdisk/src/script.c
-index ae7e99a..0d1f260 100644
---- a/libfdisk/src/script.c
-+++ b/libfdisk/src/script.c
-@@ -36,7 +36,8 @@ struct fdisk_script {
- size_t nlines;
- struct fdisk_label *label;
-
-- unsigned int json : 1; /* JSON output */
-+ unsigned int json : 1, /* JSON output */
-+ force_label : 1; /* label: <name> specified */
- };
-
-
-@@ -354,6 +355,22 @@ int fdisk_script_get_nlines(struct fdisk_script *dp)
- }
-
- /**
-+ * fdisk_script_has_force_label:
-+ * @dp: script
-+ *
-+ * Note that fdisk_script_set_header(dp, "label", name) does not modify
-+ * force_label status. The label has to be specified by script.
-+ *
-+ * Returns: true if "label: <name>" has been parsed.
-+ */
-+int fdisk_script_has_force_label(struct fdisk_script *dp)
-+{
-+ assert(dp);
-+ return dp->force_label;
-+}
-+
-+
-+/**
- * fdisk_script_read_context:
- * @dp: script
- * @cxt: context
-@@ -706,6 +723,7 @@ static int parse_line_header(struct fdisk_script *dp, char *s)
- if (strcmp(name, "label") == 0) {
- if (dp->cxt && !fdisk_get_label(dp->cxt, value))
- goto done; /* unknown label name */
-+ dp->force_label = 1;
- } else if (strcmp(name, "unit") == 0) {
- if (strcmp(value, "sectors") != 0)
- goto done; /* only "sectors" supported */
---
-2.10.2
-
diff --git a/abs/core/util-linux/60-rfkill.rules b/abs/core/util-linux/60-rfkill.rules
new file mode 100644
index 0000000..bc98a3b
--- /dev/null
+++ b/abs/core/util-linux/60-rfkill.rules
@@ -0,0 +1 @@
+KERNEL=="rfkill", GROUP="rfkill", MODE="0664"
diff --git a/abs/core/util-linux/PKGBUILD b/abs/core/util-linux/PKGBUILD
index 72df84c..c672254 100644
--- a/abs/core/util-linux/PKGBUILD
+++ b/abs/core/util-linux/PKGBUILD
@@ -5,43 +5,31 @@
pkgbase=util-linux
pkgname=(util-linux libutil-linux)
-_pkgmajor=2.29
-pkgver=${_pkgmajor}
+_pkgmajor=2.31
+pkgver=${_pkgmajor}.1
pkgrel=1
pkgdesc="Miscellaneous system utilities for Linux"
url="https://www.kernel.org/pub/linux/utils/util-linux/"
-arch=('i686' 'x86_64')
-makedepends=('systemd' 'python2')
+arch=('x86_64')
+makedepends=('systemd' 'python' 'libcap-ng')
license=('GPL2')
options=('strip' 'debug')
validpgpkeys=('B0C64D14301CC6EFAEDF60E4E4B71D5EEC39C284') # Karel Zak
source=("https://www.kernel.org/pub/linux/utils/util-linux/v$_pkgmajor/$pkgbase-$pkgver.tar."{xz,sign}
pam-{login,common,su}
- '0001-sfdisk-don-t-be-silent-when-list-non-existing-device.patch'
- '0001-sfdisk-cleanup-dump-error-messages.patch'
- '0001-sfdisk-support-empty-label-use-case.patch'
- '0001-chrt-default-to-SCHED_RR-policy.patch'
- '0001-lsns-Fix-parser-for-proc-pid-stat-which-is-including.patch')
-md5sums=('07b6845f48a421ad5844aa9d58edb837'
- 'SKIP'
- '4368b3f98abd8a32662e094c54e7f9b1'
- 'a31374fef2cba0ca34dfc7078e2969e4'
- 'fa85e5cce5d723275b14365ba71a8aad'
- '3fce7192ce1b3d97fdffd0226ed63a90'
- '2f3c061865360170cacda948035fd02d'
- '6d2e3915124938577f0ff18ef701c87f'
- '168c1cb2cfe7d4eddfc6e3f3b19d3ced'
- '68c2076a9a09564ba0c9776540a175fa')
-
-prepare() {
- cd "$pkgbase-$pkgver"
-
- patch -Np1 <../0001-sfdisk-don-t-be-silent-when-list-non-existing-device.patch
- patch -Np1 <../0001-sfdisk-cleanup-dump-error-messages.patch
- patch -Np1 <../0001-sfdisk-support-empty-label-use-case.patch
- patch -Np1 <../0001-chrt-default-to-SCHED_RR-policy.patch
- patch -Np1 <../0001-lsns-Fix-parser-for-proc-pid-stat-which-is-including.patch
-}
+ 'util-linux.sysusers'
+ '60-rfkill.rules'
+ 'rfkill-unblock_.service'
+ 'rfkill-block_.service')
+sha256sums=('1a51b16fa9cd51d26ef9ab52d2f1de12403b810fc8252bf7d478df91b3cddf11'
+ 'SKIP'
+ '993a3096c2b113e6800f2abbd5d4233ebf1a97eef423990d3187d665d3490b92'
+ 'fc6807842f92e9d3f792d6b64a0d5aad87995a279153ab228b1b2a64d9f32f20'
+ '51eac9c2a2f51ad3982bba35de9aac5510f1eeff432d2d63c6362e45d620afc0'
+ '10b0505351263a099163c0d928132706e501dd0a008dac2835b052167b14abe3'
+ '7423aaaa09fee7f47baa83df9ea6fef525ff9aec395c8cbd9fe848ceb2643f37'
+ '8ccec10a22523f6b9d55e0d6cbf91905a39881446710aa083e935e8073323376'
+ 'a22e0a037e702170c7d88460cc9c9c2ab1d3e5c54a6985cd4a164ea7beff1b36')
build() {
cd "$pkgbase-$pkgver"
@@ -57,18 +45,17 @@ build() {
--enable-chfn-chsh \
--enable-write \
--enable-mesg \
- --disable-tailf \
- --with-python=2
+ --with-python=3
make
}
package_util-linux() {
- conflicts=('util-linux-ng' 'eject' 'zramctl')
- provides=("util-linux-ng=$pkgver" 'eject' 'zramctl')
- replaces=('zramctl')
- depends=('pam' 'shadow' 'coreutils' 'libsystemd' 'libutil-linux')
- optdepends=('python2: python bindings to libmount')
+ conflicts=('eject' 'zramctl' 'rfkill')
+ provides=('eject' 'zramctl' 'rfkill')
+ replaces=('zramctl' 'rfkill')
+ depends=('pam' 'shadow' 'coreutils' 'libsystemd' 'libcap-ng' 'libutil-linux')
+ optdepends=('python: python bindings to libmount')
groups=('base' 'base-devel')
backup=(etc/pam.d/chfn
etc/pam.d/chsh
@@ -102,11 +89,17 @@ package_util-linux() {
### runtime libs are shipped as part of libutil-linux
rm "$pkgdir"/usr/lib/lib*.{a,so}*
- ### tailf has been deprecated for a while. let's not include it anymore.
- rm \
- "$pkgdir"/usr/bin/tailf \
- "$pkgdir"/usr/share/bash-completion/completions/tailf \
- "$pkgdir"/usr/share/man/man1/tailf.1
+ ### install systemd-sysusers
+ install -Dm644 "$srcdir/util-linux.sysusers" \
+ "$pkgdir/usr/lib/sysusers.d/util-linux.conf"
+
+ install -Dm644 "$srcdir/60-rfkill.rules" \
+ "$pkgdir/usr/lib/udev/rules.d/60-rfkill.rules"
+
+ install -Dm644 "$srcdir/rfkill-unblock_.service" \
+ "$pkgdir/usr/lib/systemd/system/rfkill-unblock@.service"
+ install -Dm644 "$srcdir/rfkill-block_.service" \
+ "$pkgdir/usr/lib/systemd/system/rfkill-block@.service"
}
package_libutil-linux() {
diff --git a/abs/core/util-linux/__changelog b/abs/core/util-linux/__changelog
deleted file mode 100644
index 4e7296e..0000000
--- a/abs/core/util-linux/__changelog
+++ /dev/null
@@ -1,2 +0,0 @@
-changed python from 3->2
-
diff --git a/abs/core/util-linux/rfkill-block_.service b/abs/core/util-linux/rfkill-block_.service
new file mode 100644
index 0000000..ede74d1
--- /dev/null
+++ b/abs/core/util-linux/rfkill-block_.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=RFKill-Block %I
+After=rfkill-unblock@all.service
+
+[Service]
+Type=oneshot
+ExecStart=/usr/bin/rfkill block %I
+
+[Install]
+WantedBy=multi-user.target
diff --git a/abs/core/util-linux/rfkill-unblock_.service b/abs/core/util-linux/rfkill-unblock_.service
new file mode 100644
index 0000000..94ebf35
--- /dev/null
+++ b/abs/core/util-linux/rfkill-unblock_.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=RFKill-Unblock %I
+After=rfkill-block@all.service
+
+[Service]
+Type=oneshot
+ExecStart=/usr/bin/rfkill unblock %I
+
+[Install]
+WantedBy=multi-user.target
diff --git a/abs/core/util-linux/util-linux.sysusers b/abs/core/util-linux/util-linux.sysusers
new file mode 100644
index 0000000..de04d9f
--- /dev/null
+++ b/abs/core/util-linux/util-linux.sysusers
@@ -0,0 +1,2 @@
+u uuidd 68
+g rfkill - - -
diff --git a/abs/core/vi/PKGBUILD b/abs/core/vi/PKGBUILD
index 0a5c7f8..9fa8028 100644
--- a/abs/core/vi/PKGBUILD
+++ b/abs/core/vi/PKGBUILD
@@ -1,47 +1,52 @@
-# $Id: PKGBUILD 160405 2012-06-01 18:35:53Z eric $
-# Maintainer: tobias [ tobias at archlinux org ]
+# $Id$
+# Maintainer: Evangelos Foutras <evangelos@foutrelis.com>
+# Contributor: Eric Bélanger <eric@archlinux.org>
pkgname=vi
-pkgver=050325
+pkgver=070224
pkgrel=2
epoch=1
-pkgdesc='The original ex/vi text editor.'
-arch=('i686' 'x86_64')
-url='http://ex-vi.sourceforge.net/'
+pkgdesc="The original ex/vi text editor"
+arch=('x86_64')
+url="http://ex-vi.sourceforge.net/"
license=('custom:ex')
-depends=('ncurses')
-optdepends=('mailx: used by the preserve command for notification')
groups=('base')
-options=(strip !libtool emptydirs)
-source=(http://downloads.sourceforge.net/sourceforge/ex-vi/ex-${pkgver}.tar.bz2
- exrc.sample
+depends=('ncurses')
+optdepends=('s-nail: used by the preserve command for notification')
+source=(https://sources.archlinux.org/other/$pkgname/ex-$pkgver.tar.xz{,.sig}
+ fix-tubesize-short-overflow.patch
navkeys.patch
- increase-tube.patch
- preserve_dir.patch)
-md5sums=('e668595254233e4d96811083a3e4e2f3'
- 'd3b483c994d859232ce369b82a4b5668'
- 'aac133930047eafa4f28736cfaf976b3'
- 'e596e05a00a24187b576e389fa1de45d'
- '419a8755e0dd16e95542bc107e6d2b24')
+ preserve-dir.patch)
+sha256sums=('c3e52dd44edd1f6bf0b52207f717c56149dc50aac0d131fff3851d589727f52f'
+ 'SKIP'
+ '42167fabebe30a13d594346b1d254db82090ba41742a9f35b8895d37092053f0'
+ '0e9e2d381f1d8cb86daae68462b3849825b003c08007725c0db9939d3d5bf58d'
+ 'f0ef9ed2ccea98bf47b08dd3faa2abb911b4e6c0579f5294e9d0e8742282ff65')
+validpgpkeys=('86CFFCA918CF3AF47147588051E8B148A9999C34')
-build() {
- cd "${srcdir}/ex-${pkgver}"
+prepare() {
+ cd ex-$pkgver
+
+ patch -Np1 -i ../fix-tubesize-short-overflow.patch
+ patch -Np1 -i ../navkeys.patch
+
+ # https://bugs.archlinux.org/task/20653
+ patch -Np1 -i ../preserve-dir.patch
+}
- # apply patches
- patch -Np1 -i ../navkeys.patch
- patch -Np0 -i ../increase-tube.patch
- # FS#20653
- patch -Np1 -i ../preserve_dir.patch
+build() {
+ cd ex-$pkgver
make PREFIX=/usr LIBEXECDIR=/usr/lib/ex PRESERVEDIR=/var/lib/ex \
- 'FEATURES=-DCHDIR -DFASTTAG -DUCVISUAL -DMB -DBIT8' TERMLIB=ncurses
+ TERMLIB=ncurses FEATURES="-DCHDIR -DFASTTAG -DUCVISUAL -DMB -DBIT8"
}
package() {
- cd "${srcdir}/ex-${pkgver}"
-
- make PREFIX=/usr LIBEXECDIR=/usr/lib/ex PRESERVEDIR=/var/lib/ex INSTALL=/usr/bin/install \
- DESTDIR="$pkgdir" install
+ cd ex-$pkgver
- install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ make PREFIX=/usr LIBEXECDIR=/usr/lib/ex PRESERVEDIR=/var/lib/ex \
+ INSTALL=/usr/bin/install DESTDIR="$pkgdir" install
+ install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
+
+# vim:set ts=2 sw=2 et:
diff --git a/abs/core/vi/exrc.sample b/abs/core/vi/exrc.sample
deleted file mode 100644
index 44b3045..0000000
--- a/abs/core/vi/exrc.sample
+++ /dev/null
@@ -1,5 +0,0 @@
-" A sample .exrc file. Copy it to your home dir as ~/.exrc in order to work.
-set showmode
-set noflash
-set autoindent
-set shiftwidth=2
diff --git a/abs/core/vi/fix-tubesize-short-overflow.patch b/abs/core/vi/fix-tubesize-short-overflow.patch
new file mode 100644
index 0000000..46cc2af
--- /dev/null
+++ b/abs/core/vi/fix-tubesize-short-overflow.patch
@@ -0,0 +1,12 @@
+diff -upr ex-070224.orig/ex_vis.h ex-070224/ex_vis.h
+--- ex-070224.orig/ex_vis.h 2005-08-06 14:41:15.000000000 +0300
++++ ex-070224/ex_vis.h 2015-05-02 20:41:13.938665281 +0300
+@@ -104,7 +104,7 @@ var enum {
+ */
+ var short TUBELINES;
+ var short TUBECOLS;
+-var short TUBESIZE;
++var int TUBESIZE;
+
+ /*
+ * The screen in visual and crtopen is of varying size; the basic
diff --git a/abs/core/vi/increase-tube.patch b/abs/core/vi/increase-tube.patch
deleted file mode 100644
index 5010798..0000000
--- a/abs/core/vi/increase-tube.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- config.h 2005-02-19 05:25:39.000000000 -0500
-+++ config.h.fixed 2010-01-04 22:02:01.000000000 -0500
-@@ -95,8 +95,8 @@
- #define TUBESIZE 6000 /* Maximum screen size for visual */
- #else /* VMUNIX */
- #define TUBELINES 100
--#define TUBECOLS 160
--#define TUBESIZE 16000
-+#define TUBECOLS 320
-+#define TUBESIZE 32000
- #endif /* VMUNIX */
-
- /*
diff --git a/abs/core/vi/preserve_dir.patch b/abs/core/vi/preserve-dir.patch
index 5209f7b..ddfe878 100644
--- a/abs/core/vi/preserve_dir.patch
+++ b/abs/core/vi/preserve-dir.patch
@@ -43,18 +43,6 @@ diff -Naur ex-050325.ori/exrecover.c ex-050325/exrecover.c
#endif
/*
-diff -Naur ex-050325.ori/ex.spec ex-050325/ex.spec
---- ex-050325.ori/ex.spec 2005-03-24 18:50:09.000000000 -0500
-+++ ex-050325/ex.spec 2011-02-01 16:21:51.496666674 -0500
-@@ -20,7 +20,7 @@
- %define libexecdir %{prefix}/5lib
- %define mandir %{prefix}/share/man/5man
-
--%define preservedir /var/preserve
-+%define preservedir /var/lib/ex
-
- # install command
- %define ucbinstall install
diff -Naur ex-050325.ori/Makefile ex-050325/Makefile
--- ex-050325.ori/Makefile 2005-03-24 18:50:09.000000000 -0500
+++ ex-050325/Makefile 2011-02-01 16:21:51.496666674 -0500
@@ -79,3 +67,33 @@ diff -Naur ex-050325.ori/vi.1 ex-050325/vi.1
preservation directory
.SH SEE ALSO
ex(1),
+--- ex-050325.original/ex.1 2012-01-27 20:43:00.602119283 +0100
++++ ex-050325/ex.1 2012-01-27 20:47:24.535436516 +0100
+@@ -1932,10 +1932,10 @@
+ Determines the terminal type.
+ .SH FILES
+ .TP
+-.B /usr/libexec/expreserve
++.B /usr/lib/ex/expreserve
+ preserve command
+ .TP
+-.B /usr/libexec/exrecover
++.B /usr/lib/ex/exrecover
+ recover command
+ .TP
+ .B /etc/termcap
+--- ex-050325.original/vi.1 2012-01-27 20:43:00.602119283 +0100
++++ ex-050325/vi.1 2012-01-27 20:46:33.815439611 +0100
+@@ -961,10 +961,10 @@
+ Determines the terminal type.
+ .SH FILES
+ .TP
+-.B /usr/libexec/expreserve
++.B /usr/lib/ex/expreserve
+ preserve command
+ .TP
+-.B /usr/libexec/exrecover
++.B /usr/lib/ex/exrecover
+ recover command
+ .TP
+ .B /etc/termcap
diff --git a/abs/core/wget/PKGBUILD b/abs/core/wget/PKGBUILD
index 9d6fe1d..fa01ffb 100644
--- a/abs/core/wget/PKGBUILD
+++ b/abs/core/wget/PKGBUILD
@@ -1,22 +1,23 @@
-# $Id$
+# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org>
# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgname=wget
-pkgver=1.17.1
+pkgver=1.19.4
pkgrel=1
-pkgdesc="A network utility to retrieve files from the Web"
-arch=('i686' 'x86_64')
-url="http://www.gnu.org/software/wget/wget.html"
+pkgdesc='Network utility to retrieve files from the Web'
+url='https://www.gnu.org/software/wget/wget.html'
+arch=('x86_64')
license=('GPL3')
-depends=('openssl' 'libidn' 'libutil-linux')
+depends=('gnutls' 'libidn' 'libutil-linux' 'libpsl' 'pcre')
checkdepends=('perl-http-daemon' 'perl-io-socket-ssl' 'python')
optdepends=('ca-certificates: HTTPS downloads')
backup=('etc/wgetrc')
-install=wget.install
-source=(ftp://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.xz{,.sig})
-sha1sums=('8ae737ab2252607ce708f98d1dd7559ebf047f48'
- 'SKIP')
-validpgpkeys=('AC404C1C0BF735C63FF4D562263D6DF2E163E1EA')
+source=(https://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.lz{,.sig})
+sha256sums=('2fc0ffb965a8dc8f1e4a89cbe834c0ae7b9c22f559ebafc84c7874ad1866559a'
+ 'SKIP')
+validpgpkeys=('AC404C1C0BF735C63FF4D562263D6DF2E163E1EA'
+ '7845120B07CBD8D6ECE5FF2B2A1743EDA91A35B6'
+ '1CB27DBC98614B2D5841646D08302DB6A2670428') # Tim Rühsen <tim.ruehsen@gmx.de>
prepare() {
cd ${pkgname}-${pkgver}
@@ -29,16 +30,23 @@ EOF
build() {
cd ${pkgname}-${pkgver}
- ./configure --prefix=/usr --sysconfdir=/etc --enable-nls --with-ssl=openssl
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --disable-rpath \
+ --enable-nls \
+ --with-ssl=gnutls
make
}
check() {
cd ${pkgname}-${pkgver}
- make check
+ make check < /dev/null
}
package() {
cd ${pkgname}-${pkgver}
make DESTDIR="${pkgdir}" install
}
+
+# vim: ts=2 sw=2 et:
diff --git a/abs/core/wget/wget.install b/abs/core/wget/wget.install
deleted file mode 100644
index 8eb6a2c..0000000
--- a/abs/core/wget/wget.install
+++ /dev/null
@@ -1,20 +0,0 @@
-infodir=usr/share/info
-filelist=(wget.info)
-
-post_install() {
- [ -x usr/bin/install-info ] || return 0
- for file in ${filelist[@]}; do
- install-info $infodir/$file $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 $infodir/dir 2> /dev/null
- done
-}
diff --git a/abs/core/windowmaker/PKGBUILD b/abs/core/windowmaker/PKGBUILD
index 2c12ff1..5d33d8b 100644
--- a/abs/core/windowmaker/PKGBUILD
+++ b/abs/core/windowmaker/PKGBUILD
@@ -1,29 +1,24 @@
-# $Id$
+# $Id: PKGBUILD 310007 2017-11-15 14:11:34Z foutrelis $
# Maintainer: Daniel Isenmann <daniel@archlinux.org>
# Contributor: Judd Vinet <jvinet@zeroflux.org>
pkgname=windowmaker
-pkgver=0.95.6
-pkgrel=1
+pkgver=0.95.8
+pkgrel=2
pkgdesc="An X11 window manager with a NEXTSTEP look and feel"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://www.windowmaker.org/"
license=('GPL' 'custom')
depends=('libxinerama' 'libxrandr' 'libxmu' 'libpng' 'libxpm' 'libxft' 'libtiff' 'giflib')
source=(http://windowmaker.org/pub/source/release/WindowMaker-$pkgver.tar.gz
- wmaker.desktop
- giflib_510.diff)
+ wmaker.desktop)
install=wmaker.install
-md5sums=('5b3cf9e6cd1f4066ffa5f2f22c25aee3'
- '2fba97bebfd691836b92b8f0db79ff13'
- 'ac51e22a9d6a8d653cfa8cbcc6fea96e')
+
+sha256sums=('9dbf5c5571bb79c4b1584f496c960ee2cd7379af45ef0f58b4b0f487259de88a'
+ '126da08ac9cffc4354bb4f246ec5ed5abd3cd29ed665d05d190c5bf842c84bef')
prepare() {
cd WindowMaker-$pkgver
- #patch -Np0 -i ../wm-giflib.patch
-
- # patch taken from NetBSD
- patch -Np0 -i ../giflib_510.diff
autoreconf -fi
@@ -39,10 +34,12 @@ prepare() {
build() {
cd WindowMaker-$pkgver
- [ -z "$LINGUAS" ] && export LINGUAS="`ls po/*.po | sed 's:po/\(.*\)\.po$:\1:'`"
+ export LINGUAS="be bg bs ca cs da de el es et fi fr fy gl hr hu hy it ja ko ms nl no pl pt ro ru sk sv tr uk zh_CN zh_TW"
+ #export LINGUAS="`ls po/*.po | sed 's:po/\(.*\)\.po$:\1:'`"
+
./configure --prefix=/usr --sysconfdir=/etc --enable-xinerama \
- --with-nlsdir=/usr/share/locale --with-gnustepdir=/usr/lib/GNUstep \
- --enable-usermenu --enable-modelock --enable-xrandr
+ --localedir=/usr/share/locale --with-gnustepdir=/usr/lib/GNUstep \
+ --enable-usermenu --enable-modelock --enable-randr
make
}
diff --git a/abs/core/windowmaker/WindowMaker-0.95.4.tar.gz b/abs/core/windowmaker/WindowMaker-0.95.4.tar.gz
deleted file mode 100644
index 252aadd..0000000
--- a/abs/core/windowmaker/WindowMaker-0.95.4.tar.gz
+++ /dev/null
Binary files differ
diff --git a/abs/core/windowmaker/giflib_510.diff b/abs/core/windowmaker/giflib_510.diff
deleted file mode 100644
index 742d6d2..0000000
--- a/abs/core/windowmaker/giflib_510.diff
+++ /dev/null
@@ -1,20 +0,0 @@
---- wrlib/load_gif.c.orig 2013-09-12 22:43:54.000000000 +0100
-+++ wrlib/load_gif.c 2014-05-16 10:10:04.000000000 +0100
-@@ -81,7 +81,7 @@ RImage *RLoadGIF(const char *file, int i
- }
-
- if (gif->SWidth < 1 || gif->SHeight < 1) {
-- DGifCloseFile(gif);
-+ DGifCloseFile(gif, NULL);
- RErrorCode = RERR_BADIMAGEFILE;
- return NULL;
- }
-@@ -216,7 +216,7 @@ RImage *RLoadGIF(const char *file, int i
- free(buffer);
-
- if (gif)
-- DGifCloseFile(gif);
-+ DGifCloseFile(gif, NULL);
-
- return image;
- }
diff --git a/abs/core/windowmaker/libpng-1.4.patch b/abs/core/windowmaker/libpng-1.4.patch
deleted file mode 100644
index 419e8fa..0000000
--- a/abs/core/windowmaker/libpng-1.4.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur WindowMaker-0.92.0-orig/wrlib/load.c WindowMaker-0.92.0/wrlib/load.c
---- WindowMaker-0.92.0-orig/wrlib/load.c 2010-01-21 16:10:39.000000000 -0500
-+++ WindowMaker-0.92.0/wrlib/load.c 2010-01-21 16:13:15.000000000 -0500
-@@ -348,7 +348,7 @@
-
- #ifdef USE_PNG
- /* check for PNG */
-- if (png_check_sig(buffer, 8))
-+ if (!png_sig_cmp(buffer, 0, 8))
- return IM_PNG;
- #endif
-
diff --git a/abs/core/windowmaker/windowmaker-gcc4.patch.tar.bz2 b/abs/core/windowmaker/windowmaker-gcc4.patch.tar.bz2
deleted file mode 100644
index fae12a9..0000000
--- a/abs/core/windowmaker/windowmaker-gcc4.patch.tar.bz2
+++ /dev/null
Binary files differ
diff --git a/abs/core/windowmaker/wm-giflib.patch b/abs/core/windowmaker/wm-giflib.patch
deleted file mode 100644
index 4b6b690..0000000
--- a/abs/core/windowmaker/wm-giflib.patch
+++ /dev/null
@@ -1,2422 +0,0 @@
-Index: WINGs/Examples/colorpick.c
-===================================================================
---- WINGs/Examples/colorpick.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/Examples/colorpick.c 2013-01-18 16:57:47.955049409 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <stdlib.h>
- #include <stdio.h>
- #include <WINGs/WINGs.h>
-Index: WINGs/Examples/fontl.c
-===================================================================
---- WINGs/Examples/fontl.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/Examples/fontl.c 2013-01-18 16:57:47.955049409 +0100
-@@ -18,6 +18,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <stdlib.h>
- #include <stdio.h>
- #include <stdint.h>
-Index: WINGs/Examples/puzzle.c
-===================================================================
---- WINGs/Examples/puzzle.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/Examples/puzzle.c 2013-01-18 16:57:47.955049409 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <stdlib.h>
- #include <stdio.h>
- #include <WINGs/WINGs.h>
-Index: WINGs/Extras/test.c
-===================================================================
---- WINGs/Extras/test.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/Extras/test.c 2013-01-18 16:57:47.956049439 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <WINGs/WINGs.h>
- #include <stdio.h>
- #include <stdint.h>
-Index: WINGs/Extras/wtabledelegates.c
-===================================================================
---- WINGs/Extras/wtabledelegates.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/Extras/wtabledelegates.c 2013-01-18 16:57:47.956049439 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <stdint.h>
- #include <WINGs/WINGsP.h>
-
-Index: WINGs/Extras/wtableview.c
-===================================================================
---- WINGs/Extras/wtableview.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/Extras/wtableview.c 2013-01-18 16:57:47.956049439 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <WINGs/WINGsP.h>
- #include <X11/cursorfont.h>
- #include <stdint.h>
-Index: WINGs/Tests/mywidget.c
-===================================================================
---- WINGs/Tests/mywidget.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/Tests/mywidget.c 2013-01-18 16:57:47.956049439 +0100
-@@ -13,6 +13,10 @@
- *
- *
- */
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <WINGs/WINGsP.h>
-
- /*
-Index: WINGs/Tests/testmywidget.c
-===================================================================
---- WINGs/Tests/testmywidget.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/Tests/testmywidget.c 2013-01-18 16:57:47.956049439 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <WINGs/WINGs.h>
- #include <stdlib.h>
-
-Index: WINGs/Tests/wmfile.c
-===================================================================
---- WINGs/Tests/wmfile.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/Tests/wmfile.c 2013-01-18 16:57:47.957049469 +0100
-@@ -11,6 +11,10 @@
- -----------------------------------------------------------------------
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <WINGs/WINGs.h>
-
- #include <unistd.h>
-Index: WINGs/Tests/wmquery.c
-===================================================================
---- WINGs/Tests/wmquery.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/Tests/wmquery.c 2013-01-18 16:57:47.957049469 +0100
-@@ -3,6 +3,10 @@
- * Author: Len Trigg <trigg@cs.waikato.ac.nz>
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <WINGs/WINGs.h>
-
- #include <unistd.h>
-Index: WINGs/Tests/wtest.c
-===================================================================
---- WINGs/Tests/wtest.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/Tests/wtest.c 2013-01-18 16:57:47.957049469 +0100
-@@ -2,6 +2,10 @@
- * WINGs test application
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <WINGs/WINGs.h>
-
- #include <stdio.h>
-Index: WINGs/array.c
-===================================================================
---- WINGs/array.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/array.c 2013-01-18 16:57:47.957049469 +0100
-@@ -8,6 +8,10 @@
- * proper credit is always appreciated :)
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <stdlib.h>
- #include <string.h>
-
-Index: WINGs/bagtree.c
-===================================================================
---- WINGs/bagtree.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/bagtree.c 2013-01-18 16:57:47.957049469 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <stdlib.h>
- #include <string.h>
-
-Index: WINGs/configuration.c
-===================================================================
---- WINGs/configuration.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/configuration.c 2013-01-18 16:57:47.958049499 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
- #include "wconfig.h"
-
-Index: WINGs/data.c
-===================================================================
---- WINGs/data.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/data.c 2013-01-18 16:57:47.958049499 +0100
-@@ -18,6 +18,10 @@
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <string.h>
- #include "WUtil.h"
-
-Index: WINGs/dragcommon.c
-===================================================================
---- WINGs/dragcommon.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/dragcommon.c 2013-01-18 16:57:47.958049499 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- #define XDND_SOURCE_VERSION(dragInfo) dragInfo->protocolVersion
-Index: WINGs/dragdestination.c
-===================================================================
---- WINGs/dragdestination.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/dragdestination.c 2013-01-18 16:57:47.958049499 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
- #include <X11/Xatom.h>
-
-Index: WINGs/dragsource.c
-===================================================================
---- WINGs/dragsource.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/dragsource.c 2013-01-18 16:57:47.959049529 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
- #include "WINGsP.h"
-
-Index: WINGs/error.c
-===================================================================
---- WINGs/error.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/error.c 2013-01-18 16:57:47.959049529 +0100
-@@ -18,6 +18,10 @@
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <stdarg.h>
-Index: WINGs/findfile.c
-===================================================================
---- WINGs/findfile.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/findfile.c 2013-01-18 16:57:47.959049529 +0100
-@@ -18,6 +18,10 @@
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include "WUtil.h"
-Index: WINGs/handlers.c
-===================================================================
---- WINGs/handlers.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/handlers.c 2013-01-18 16:57:47.959049529 +0100
-@@ -3,6 +3,10 @@
- * WINGs internal handlers: timer, idle and input handlers
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
- #include "WINGsP.h"
-
-Index: WINGs/hashtable.c
-===================================================================
---- WINGs/hashtable.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/hashtable.c 2013-01-18 16:57:47.959049529 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <sys/types.h>
- #include <string.h>
- #include <stdlib.h>
-Index: WINGs/memory.c
-===================================================================
---- WINGs/memory.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/memory.c 2013-01-18 16:57:47.959049529 +0100
-@@ -18,6 +18,10 @@
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
- #include "WUtil.h"
-
-Index: WINGs/misc.c
-===================================================================
---- WINGs/misc.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/misc.c 2013-01-18 16:57:47.960049559 +0100
-@@ -1,6 +1,10 @@
-
- /* Miscelaneous helper functions */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- WMRange wmkrange(int start, int count)
-Index: WINGs/notification.c
-===================================================================
---- WINGs/notification.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/notification.c 2013-01-18 16:57:47.960049559 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <stdlib.h>
- #include <assert.h>
- #include <stdio.h>
-Index: WINGs/proplist.c
-===================================================================
---- WINGs/proplist.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/proplist.c 2013-01-18 16:57:47.960049559 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <sys/types.h>
- #include <sys/stat.h>
-
-Index: WINGs/selection.c
-===================================================================
---- WINGs/selection.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/selection.c 2013-01-18 16:57:47.960049559 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <stdlib.h>
-
- #include <X11/Xatom.h>
-Index: WINGs/string.c
-===================================================================
---- WINGs/string.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/string.c 2013-01-18 16:57:47.961049589 +0100
-@@ -6,6 +6,10 @@
- # undef _XOPEN_SOURCE
- #endif
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <string.h>
-Index: WINGs/tree.c
-===================================================================
---- WINGs/tree.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/tree.c 2013-01-18 16:57:47.961049589 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <string.h>
-
- #include "WUtil.h"
-Index: WINGs/userdefaults.c
-===================================================================
---- WINGs/userdefaults.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/userdefaults.c 2013-01-18 16:57:47.961049589 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <stdlib.h>
- #include <string.h>
- #include <strings.h>
-Index: WINGs/usleep.c
-===================================================================
---- WINGs/usleep.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/usleep.c 2013-01-18 16:57:47.961049589 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <errno.h>
- #include <time.h>
-
-Index: WINGs/wapplication.c
-===================================================================
---- WINGs/wapplication.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wapplication.c 2013-01-18 16:57:47.961049589 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <unistd.h>
- #include <X11/Xlocale.h>
-
-Index: WINGs/wappresource.c
-===================================================================
---- WINGs/wappresource.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wappresource.c 2013-01-18 16:57:47.961049589 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <unistd.h>
-
- #include "WINGsP.h"
-Index: WINGs/wballoon.c
-===================================================================
---- WINGs/wballoon.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wballoon.c 2013-01-18 16:57:47.962049620 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
- #include "WINGsP.h"
-
-Index: WINGs/wbox.c
-===================================================================
---- WINGs/wbox.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wbox.c 2013-01-18 16:57:47.962049620 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- typedef struct {
-Index: WINGs/wbrowser.c
-===================================================================
---- WINGs/wbrowser.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wbrowser.c 2013-01-18 16:57:47.962049620 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
- #include <math.h> /* for : double rint (double) */
-
-Index: WINGs/wbutton.c
-===================================================================
---- WINGs/wbutton.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wbutton.c 2013-01-18 16:57:47.962049620 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- typedef struct W_Button {
-Index: WINGs/wcolor.c
-===================================================================
---- WINGs/wcolor.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wcolor.c 2013-01-18 16:57:47.962049620 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- #include "wconfig.h"
-Index: WINGs/wcolorpanel.c
-===================================================================
---- WINGs/wcolorpanel.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wcolorpanel.c 2013-01-18 16:57:47.963049651 +0100
-@@ -23,6 +23,10 @@
- * - Resizing
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
- #include "WINGsP.h"
- #include "rgb.h"
-Index: WINGs/wcolorwell.c
-===================================================================
---- WINGs/wcolorwell.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wcolorwell.c 2013-01-18 16:57:47.964049682 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- #define XDND_COLOR_DATA_TYPE "application/X-color"
-Index: WINGs/wevent.c
-===================================================================
---- WINGs/wevent.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wevent.c 2013-01-18 16:57:47.964049682 +0100
-@@ -3,6 +3,10 @@
- * This event handling stuff was inspired on Tk.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- /* table to map event types to event masks */
-Index: WINGs/wfilepanel.c
-===================================================================
---- WINGs/wfilepanel.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wfilepanel.c 2013-01-18 16:57:47.964049682 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <sys/types.h>
- #include <sys/stat.h>
-
-Index: WINGs/wfont.c
-===================================================================
---- WINGs/wfont.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wfont.c 2013-01-18 16:57:47.964049682 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <stdlib.h>
-
- #include "wconfig.h"
-Index: WINGs/wfontpanel.c
-===================================================================
---- WINGs/wfontpanel.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wfontpanel.c 2013-01-18 16:57:47.964049682 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
- #include "WUtil.h"
- #include "wconfig.h"
-Index: WINGs/wframe.c
-===================================================================
---- WINGs/wframe.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wframe.c 2013-01-18 16:57:47.965049713 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- typedef struct W_Frame {
-Index: WINGs/widgets.c
-===================================================================
---- WINGs/widgets.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/widgets.c 2013-01-18 16:57:47.965049713 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
- #include "wconfig.h"
-
-Index: WINGs/winputmethod.c
-===================================================================
---- WINGs/winputmethod.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/winputmethod.c 2013-01-18 16:57:47.965049713 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <X11/Xlib.h>
-
- #include "WINGsP.h"
-Index: WINGs/wlabel.c
-===================================================================
---- WINGs/wlabel.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wlabel.c 2013-01-18 16:57:47.965049713 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- typedef struct W_Label {
-Index: WINGs/wlist.c
-===================================================================
---- WINGs/wlist.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wlist.c 2013-01-18 16:57:47.965049713 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- char *WMListDidScrollNotification = "WMListDidScrollNotification";
-Index: WINGs/wmenuitem.c
-===================================================================
---- WINGs/wmenuitem.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wmenuitem.c 2013-01-18 16:57:47.966049743 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- typedef struct W_MenuItem {
-Index: WINGs/wmisc.c
-===================================================================
---- WINGs/wmisc.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wmisc.c 2013-01-18 16:57:47.966049743 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- #include <wraster.h>
-Index: WINGs/wpanel.c
-===================================================================
---- WINGs/wpanel.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wpanel.c 2013-01-18 16:57:47.966049743 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- #include <X11/keysym.h>
-Index: WINGs/wpixmap.c
-===================================================================
---- WINGs/wpixmap.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wpixmap.c 2013-01-18 16:57:47.966049743 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- #include <wraster.h>
-Index: WINGs/wpopupbutton.c
-===================================================================
---- WINGs/wpopupbutton.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wpopupbutton.c 2013-01-18 16:57:47.966049743 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- typedef struct W_PopUpButton {
-Index: WINGs/wprogressindicator.c
-===================================================================
---- WINGs/wprogressindicator.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wprogressindicator.c 2013-01-18 16:57:47.967049773 +0100
-@@ -5,6 +5,10 @@
- * - centralized drawing into one pain function
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- typedef struct W_ProgressIndicator {
-Index: WINGs/wruler.c
-===================================================================
---- WINGs/wruler.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wruler.c 2013-01-18 16:57:47.967049773 +0100
-@@ -18,6 +18,10 @@
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
- #include "wconfig.h"
-
-Index: WINGs/wscroller.c
-===================================================================
---- WINGs/wscroller.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wscroller.c 2013-01-18 16:57:47.967049773 +0100
-@@ -7,6 +7,10 @@
- # undef _XOPEN_SOURCE
- #endif
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- #include <math.h>
-Index: WINGs/wscrollview.c
-===================================================================
---- WINGs/wscrollview.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wscrollview.c 2013-01-18 16:57:47.967049773 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- typedef struct W_ScrollView {
-Index: WINGs/wslider.c
-===================================================================
---- WINGs/wslider.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wslider.c 2013-01-18 16:57:47.968049802 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- #undef STRICT_NEXT_BEHAVIOUR
-Index: WINGs/wsplitview.c
-===================================================================
---- WINGs/wsplitview.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wsplitview.c 2013-01-18 16:57:47.968049802 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- /*
-Index: WINGs/wtabview.c
-===================================================================
---- WINGs/wtabview.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wtabview.c 2013-01-18 16:57:47.968049802 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- typedef struct W_TabView {
-Index: WINGs/wtext.c
-===================================================================
---- WINGs/wtext.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wtext.c 2013-01-18 16:57:47.969049831 +0100
-@@ -1,6 +1,10 @@
-
- /* WINGs WMText: multi-line/font/color/graphic text widget, by Nwanua. */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
- #include <ctype.h>
- #include <X11/keysym.h>
-Index: WINGs/wtextfield.c
-===================================================================
---- WINGs/wtextfield.c.orig 2013-01-09 22:42:49.000000000 +0100
-+++ WINGs/wtextfield.c 2013-01-18 16:57:47.969049831 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
- #include "wconfig.h"
-
-Index: WINGs/wutil.c
-===================================================================
---- WINGs/wutil.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wutil.c 2013-01-18 16:57:47.969049831 +0100
-@@ -3,6 +3,10 @@
- * Handle events for non-GUI based applications
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- void WHandleEvents()
-Index: WINGs/wview.c
-===================================================================
---- WINGs/wview.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wview.c 2013-01-18 16:57:47.970049862 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WINGsP.h"
-
- #include <X11/Xresource.h>
-Index: WINGs/wwindow.c
-===================================================================
---- WINGs/wwindow.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WINGs/wwindow.c 2013-01-18 16:57:47.970049862 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <X11/Xmd.h>
-
- #include "WINGsP.h"
-Index: WPrefs.app/Appearance.c
-===================================================================
---- WPrefs.app/Appearance.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WPrefs.app/Appearance.c 2013-01-18 16:57:47.970049862 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WPrefs.h"
-
- #include <unistd.h>
-Index: WPrefs.app/Configurations.c
-===================================================================
---- WPrefs.app/Configurations.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WPrefs.app/Configurations.c 2013-01-18 16:57:47.971049894 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WPrefs.h"
-
- typedef struct _Panel {
-Index: WPrefs.app/Expert.c
-===================================================================
---- WPrefs.app/Expert.c.orig 2013-01-09 22:42:49.000000000 +0100
-+++ WPrefs.app/Expert.c 2013-01-18 16:57:47.971049894 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WPrefs.h"
-
- /* This structure containts the list of all the check-buttons to display in the
-Index: WPrefs.app/Focus.c
-===================================================================
---- WPrefs.app/Focus.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WPrefs.app/Focus.c 2013-01-18 16:57:47.971049894 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WPrefs.h"
-
- typedef struct _Panel {
-Index: WPrefs.app/FontSimple.c
-===================================================================
---- WPrefs.app/FontSimple.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WPrefs.app/FontSimple.c 2013-01-18 16:57:47.971049894 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WPrefs.h"
- #include <unistd.h>
- #include <fontconfig/fontconfig.h>
-Index: WPrefs.app/Icons.c
-===================================================================
---- WPrefs.app/Icons.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WPrefs.app/Icons.c 2013-01-18 16:57:47.971049894 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WPrefs.h"
-
- typedef struct _Panel {
-Index: WPrefs.app/KeyboardSettings.c
-===================================================================
---- WPrefs.app/KeyboardSettings.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WPrefs.app/KeyboardSettings.c 2013-01-18 16:57:47.972049925 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WPrefs.h"
-
- typedef struct _Panel {
-Index: WPrefs.app/Menu.c
-===================================================================
---- WPrefs.app/Menu.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WPrefs.app/Menu.c 2013-01-18 16:57:47.972049925 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WPrefs.h"
- #include <assert.h>
- #include <ctype.h>
-Index: WPrefs.app/MenuPreferences.c
-===================================================================
---- WPrefs.app/MenuPreferences.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WPrefs.app/MenuPreferences.c 2013-01-18 16:57:47.972049925 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WPrefs.h"
-
- typedef struct _Panel {
-Index: WPrefs.app/MouseSettings.c
-===================================================================
---- WPrefs.app/MouseSettings.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WPrefs.app/MouseSettings.c 2013-01-18 16:57:47.972049925 +0100
-@@ -20,6 +20,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WPrefs.h"
-
- #include <X11/Xutil.h>
-Index: WPrefs.app/Paths.c
-===================================================================
---- WPrefs.app/Paths.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WPrefs.app/Paths.c 2013-01-18 16:57:47.973049956 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WPrefs.h"
- #include <unistd.h>
- #include <assert.h>
-Index: WPrefs.app/Preferences.c
-===================================================================
---- WPrefs.app/Preferences.c.orig 2013-01-09 22:42:49.000000000 +0100
-+++ WPrefs.app/Preferences.c 2013-01-18 16:57:47.973049956 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WPrefs.h"
-
- typedef struct _Panel {
-Index: WPrefs.app/TexturePanel.c
-===================================================================
---- WPrefs.app/TexturePanel.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WPrefs.app/TexturePanel.c 2013-01-18 16:57:47.973049956 +0100
-@@ -20,6 +20,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
-Index: WPrefs.app/Themes.c
-===================================================================
---- WPrefs.app/Themes.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WPrefs.app/Themes.c 2013-01-18 16:57:47.973049956 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WPrefs.h"
-
- #include <unistd.h>
-Index: WPrefs.app/WPrefs.c
-===================================================================
---- WPrefs.app/WPrefs.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WPrefs.app/WPrefs.c 2013-01-18 16:57:47.974049987 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WPrefs.h"
- #include <assert.h>
-
-Index: WPrefs.app/WindowHandling.c
-===================================================================
---- WPrefs.app/WindowHandling.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WPrefs.app/WindowHandling.c 2013-01-18 16:57:47.974049987 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WPrefs.h"
-
- typedef struct _Panel {
-Index: WPrefs.app/Workspace.c
-===================================================================
---- WPrefs.app/Workspace.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WPrefs.app/Workspace.c 2013-01-18 16:57:47.974049987 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WPrefs.h"
-
- typedef struct _Panel {
-Index: WPrefs.app/double.c
-===================================================================
---- WPrefs.app/double.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WPrefs.app/double.c 2013-01-18 16:57:47.974049987 +0100
-@@ -4,6 +4,10 @@
- *
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <WINGs/WINGsP.h>
-
- #include "double.h"
-Index: WPrefs.app/editmenu.c
-===================================================================
---- WPrefs.app/editmenu.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WPrefs.app/editmenu.c 2013-01-18 16:57:47.975050017 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <WINGs/WINGsP.h>
- #include <WINGs/WUtil.h>
- #include <stdlib.h>
-Index: WPrefs.app/main.c
-===================================================================
---- WPrefs.app/main.c.orig 2013-01-09 22:42:38.000000000 +0100
-+++ WPrefs.app/main.c 2013-01-18 16:57:47.975050017 +0100
-@@ -18,6 +18,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "WPrefs.h"
-
- #include <assert.h>
-Index: WPrefs.app/xmodifier.c
-===================================================================
---- WPrefs.app/xmodifier.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ WPrefs.app/xmodifier.c 2013-01-18 16:57:47.975050017 +0100
-@@ -31,6 +31,10 @@ Perpetrator: Sudish Joseph <sj@eng.minds
- Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- Boston, MA 02110-1301 USA. */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <string.h>
- #include <strings.h>
- #include <X11/Xlib.h>
-Index: src/actions.c
-===================================================================
---- src/actions.c.orig 2013-01-09 22:42:49.000000000 +0100
-+++ src/actions.c 2013-01-18 16:57:47.975050017 +0100
-@@ -20,6 +20,10 @@
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/appicon.c
-===================================================================
---- src/appicon.c.orig 2013-01-09 22:42:49.000000000 +0100
-+++ src/appicon.c 2013-01-18 16:57:47.976050047 +0100
-@@ -20,6 +20,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/application.c
-===================================================================
---- src/application.c.orig 2013-01-09 22:42:49.000000000 +0100
-+++ src/application.c 2013-01-18 16:57:47.976050047 +0100
-@@ -18,6 +18,10 @@
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/appmenu.c
-===================================================================
---- src/appmenu.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/appmenu.c 2013-01-18 16:57:47.976050047 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/balloon.c
-===================================================================
---- src/balloon.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/balloon.c 2013-01-18 16:57:47.976050047 +0100
-@@ -18,6 +18,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #ifdef BALLOON_TEXT
-Index: src/client.c
-===================================================================
---- src/client.c.orig 2013-01-09 22:42:49.000000000 +0100
-+++ src/client.c 2013-01-18 16:57:47.977050077 +0100
-@@ -17,6 +17,10 @@
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/colormap.c
-===================================================================
---- src/colormap.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/colormap.c 2013-01-18 16:57:47.977050077 +0100
-@@ -23,6 +23,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include "WindowMaker.h"
-Index: src/cycling.c
-===================================================================
---- src/cycling.c.orig 2013-01-09 22:42:49.000000000 +0100
-+++ src/cycling.c 2013-01-18 16:57:47.977050077 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <stdlib.h>
-Index: src/defaults.c
-===================================================================
---- src/defaults.c.orig 2013-01-09 22:42:49.000000000 +0100
-+++ src/defaults.c 2013-01-18 16:57:47.978050108 +0100
-@@ -20,6 +20,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <stdio.h>
-Index: src/dialog.c
-===================================================================
---- src/dialog.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/dialog.c 2013-01-18 16:57:47.978050108 +0100
-@@ -20,6 +20,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/dock.c
-===================================================================
---- src/dock.c.orig 2013-01-09 22:42:49.000000000 +0100
-+++ src/dock.c 2013-01-18 16:57:47.979050138 +0100
-@@ -20,6 +20,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/dockedapp.c
-===================================================================
---- src/dockedapp.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/dockedapp.c 2013-01-18 16:57:47.979050138 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/event.c
-===================================================================
---- src/event.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/event.c 2013-01-18 16:57:47.980050168 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #ifdef HAVE_INOTIFY
-Index: src/framewin.c
-===================================================================
---- src/framewin.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/framewin.c 2013-01-18 16:57:47.980050168 +0100
-@@ -18,6 +18,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/geomview.c
-===================================================================
---- src/geomview.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/geomview.c 2013-01-18 16:57:47.980050168 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <WINGs/WINGsP.h>
-
- typedef struct W_GeometryView {
-Index: src/icon.c
-===================================================================
---- src/icon.c.orig 2013-01-09 22:42:49.000000000 +0100
-+++ src/icon.c 2013-01-18 16:57:47.980050168 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/main.c
-===================================================================
---- src/main.c.orig 2013-01-09 22:42:49.000000000 +0100
-+++ src/main.c 2013-01-18 16:57:47.981050198 +0100
-@@ -18,6 +18,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #ifdef HAVE_INOTIFY
-Index: src/menu.c
-===================================================================
---- src/menu.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/menu.c 2013-01-18 16:57:47.981050198 +0100
-@@ -20,6 +20,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/misc.c
-===================================================================
---- src/misc.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/misc.c 2013-01-18 16:57:47.981050198 +0100
-@@ -17,6 +17,10 @@
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/monitor.c
-===================================================================
---- src/monitor.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/monitor.c 2013-01-18 16:57:47.982050228 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
- #include <unistd.h>
- #include <stdlib.h>
-Index: src/motif.c
-===================================================================
---- src/motif.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/motif.c 2013-01-18 16:57:47.982050228 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #ifdef MWM_HINTS
-Index: src/moveres.c
-===================================================================
---- src/moveres.c.orig 2013-01-09 22:42:49.000000000 +0100
-+++ src/moveres.c 2013-01-18 16:57:47.982050228 +0100
-@@ -18,6 +18,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/osdep_bsd.c
-===================================================================
---- src/osdep_bsd.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/osdep_bsd.c 2013-01-18 16:57:47.983050258 +0100
-@@ -11,6 +11,10 @@
- #else /* OPENBSD || NETBSD */
- # include <sys/param.h>
- #endif
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <sys/sysctl.h>
-
- #include <assert.h>
-Index: src/osdep_darwin.c
-===================================================================
---- src/osdep_darwin.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/osdep_darwin.c 2013-01-18 16:57:47.983050258 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <sys/types.h>
- #include <sys/sysctl.h>
-
-Index: src/osdep_linux.c
-===================================================================
---- src/osdep_linux.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/osdep_linux.c 2013-01-18 16:57:47.983050258 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <sys/types.h>
- #include <sys/stat.h>
-
-Index: src/osdep_stub.c
-===================================================================
---- src/osdep_stub.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/osdep_stub.c 2013-01-18 16:57:47.983050258 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <sys/utsname.h>
-
- #include <WINGs/WUtil.h>
-Index: src/pixmap.c
-===================================================================
---- src/pixmap.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/pixmap.c 2013-01-18 16:57:47.983050258 +0100
-@@ -18,6 +18,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/placement.c
-===================================================================
---- src/placement.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/placement.c 2013-01-18 16:57:47.983050258 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/properties.c
-===================================================================
---- src/properties.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/properties.c 2013-01-18 16:57:47.983050258 +0100
-@@ -18,6 +18,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/resources.c
-===================================================================
---- src/resources.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/resources.c 2013-01-18 16:57:47.984050288 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <stdio.h>
-Index: src/rootmenu.c
-===================================================================
---- src/rootmenu.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/rootmenu.c 2013-01-18 16:57:47.984050288 +0100
-@@ -20,6 +20,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <stdio.h>
-Index: src/screen.c
-===================================================================
---- src/screen.c.orig 2013-01-09 22:42:49.000000000 +0100
-+++ src/screen.c 2013-01-18 16:57:47.984050288 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <stdio.h>
-Index: src/session.c
-===================================================================
---- src/session.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/session.c 2013-01-18 16:57:47.985050319 +0100
-@@ -57,6 +57,10 @@
- * if the Die message is received, exit.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/shutdown.c
-===================================================================
---- src/shutdown.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/shutdown.c 2013-01-18 16:57:47.985050319 +0100
-@@ -18,6 +18,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <stdlib.h>
-Index: src/stacking.c
-===================================================================
---- src/stacking.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/stacking.c 2013-01-18 16:57:47.985050319 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <stdio.h>
-Index: src/startup.c
-===================================================================
---- src/startup.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/startup.c 2013-01-18 16:57:47.985050319 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <stdio.h>
-Index: src/superfluous.c
-===================================================================
---- src/superfluous.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/superfluous.c 2013-01-18 16:57:47.985050319 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/switchmenu.c
-===================================================================
---- src/switchmenu.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/switchmenu.c 2013-01-18 16:57:47.986050350 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <stdio.h>
-Index: src/switchpanel.c
-===================================================================
---- src/switchpanel.c.orig 2013-01-09 22:42:49.000000000 +0100
-+++ src/switchpanel.c 2013-01-18 16:57:47.986050350 +0100
-@@ -18,6 +18,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <stdlib.h>
-Index: src/texture.c
-===================================================================
---- src/texture.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/texture.c 2013-01-18 16:57:47.986050350 +0100
-@@ -18,6 +18,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/usermenu.c
-===================================================================
---- src/usermenu.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/usermenu.c 2013-01-18 16:57:47.986050350 +0100
-@@ -56,6 +56,10 @@
- *
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #ifdef USER_MENU
-Index: src/wcore.c
-===================================================================
---- src/wcore.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/wcore.c 2013-01-18 16:57:47.986050350 +0100
-@@ -18,6 +18,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/wdefaults.c
-===================================================================
---- src/wdefaults.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/wdefaults.c 2013-01-18 16:57:47.987050381 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <stdio.h>
-Index: src/window.c
-===================================================================
---- src/window.c.orig 2013-01-09 22:42:49.000000000 +0100
-+++ src/window.c 2013-01-18 16:57:47.987050381 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/winmenu.c
-===================================================================
---- src/winmenu.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/winmenu.c 2013-01-18 16:57:47.988050412 +0100
-@@ -19,6 +19,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <stdio.h>
-Index: src/winspector.c
-===================================================================
---- src/winspector.c.orig 2013-01-09 22:42:49.000000000 +0100
-+++ src/winspector.c 2013-01-18 16:57:47.988050412 +0100
-@@ -20,6 +20,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/wmspec.c
-===================================================================
---- src/wmspec.c.orig 2013-01-09 22:42:49.000000000 +0100
-+++ src/wmspec.c 2013-01-18 16:57:47.989050442 +0100
-@@ -28,6 +28,10 @@
- * return to be Success is not enough. -Dan
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/workspace.c
-===================================================================
---- src/workspace.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/workspace.c 2013-01-18 16:57:47.989050442 +0100
-@@ -18,6 +18,10 @@
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <X11/Xlib.h>
-Index: src/xdnd.c
-===================================================================
---- src/xdnd.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/xdnd.c 2013-01-18 16:57:47.989050442 +0100
-@@ -1,5 +1,9 @@
- /* Many part of code are ripped of an example from JX's site */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #ifdef XDND
-Index: src/xinerama.c
-===================================================================
---- src/xinerama.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/xinerama.c 2013-01-18 16:57:47.989050442 +0100
-@@ -18,6 +18,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include "xinerama.h"
-Index: src/xmodifier.c
-===================================================================
---- src/xmodifier.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/xmodifier.c 2013-01-18 16:57:47.989050442 +0100
-@@ -27,6 +27,10 @@ Perpetrator: Sudish Joseph <sj@eng.minds
- Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- Boston, MA 02110-1301 USA. */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wconfig.h"
-
- #include <string.h>
-Index: src/xutil.c
-===================================================================
---- src/xutil.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ src/xutil.c 2013-01-18 16:57:47.990050472 +0100
-@@ -18,6 +18,10 @@
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <X11/Xlib.h>
- #include <stdlib.h>
- #include <X11/Xutil.h>
-Index: test/notest.c
-===================================================================
---- test/notest.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ test/notest.c 2013-01-18 16:57:47.990050472 +0100
-@@ -3,6 +3,10 @@
- * TODO: remake
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <stdio.h>
- #include <X11/Xlib.h>
- #include <X11/Xutil.h>
-Index: test/wtest.c
-===================================================================
---- test/wtest.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ test/wtest.c 2013-01-18 16:57:47.990050472 +0100
-@@ -8,6 +8,10 @@
- * TODO: remake
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <stdio.h>
- #include <stdlib.h>
- #include <X11/Xlib.h>
-Index: util/convertfonts.c
-===================================================================
---- util/convertfonts.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ util/convertfonts.c 2013-01-18 16:57:47.990050472 +0100
-@@ -23,6 +23,10 @@
- #define _GNU_SOURCE /* getopt_long */
- #endif
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <sys/stat.h>
-
- #include <getopt.h>
-Index: util/fontconv.c
-===================================================================
---- util/fontconv.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ util/fontconv.c 2013-01-18 16:57:47.990050472 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
-Index: util/geticonset.c
-===================================================================
---- util/geticonset.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ util/geticonset.c 2013-01-18 16:57:47.990050472 +0100
-@@ -23,6 +23,10 @@
- #define _GNU_SOURCE /* getopt_long */
- #endif
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <getopt.h>
- #include <stdio.h>
- #include <stdlib.h>
-Index: util/getstyle.c
-===================================================================
---- util/getstyle.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ util/getstyle.c 2013-01-18 16:57:47.991050502 +0100
-@@ -23,6 +23,10 @@
- #define _GNU_SOURCE /* getopt_long */
- #endif
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <sys/types.h>
- #include <sys/stat.h>
-
-Index: util/seticons.c
-===================================================================
---- util/seticons.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ util/seticons.c 2013-01-18 16:57:47.991050502 +0100
-@@ -23,6 +23,10 @@
- #define _GNU_SOURCE /* getopt_long */
- #endif
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <getopt.h>
- #include <stdio.h>
- #include <stdlib.h>
-Index: util/setstyle.c
-===================================================================
---- util/setstyle.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ util/setstyle.c 2013-01-18 16:57:47.991050502 +0100
-@@ -23,6 +23,10 @@
- #define _GNU_SOURCE /* getopt_long */
- #endif
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <sys/stat.h>
-
- #include <getopt.h>
-Index: util/wdread.c
-===================================================================
---- util/wdread.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ util/wdread.c 2013-01-18 16:57:47.991050502 +0100
-@@ -28,6 +28,10 @@
- * WindowMaker defaults DB reader
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <getopt.h>
- #include <limits.h>
- #include <stdio.h>
-Index: util/wdwrite.c
-===================================================================
---- util/wdwrite.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ util/wdwrite.c 2013-01-18 16:57:47.991050502 +0100
-@@ -28,6 +28,10 @@
- */
-
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <getopt.h>
- #include <limits.h>
- #include <stdio.h>
-Index: util/wmagnify.c
-===================================================================
---- util/wmagnify.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ util/wmagnify.c 2013-01-18 16:57:47.991050502 +0100
-@@ -6,6 +6,10 @@
- * This program is in the Public Domain.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <X11/Xproto.h>
-
- #include <WINGs/WINGs.h>
-Index: util/wmgenmenu.c
-===================================================================
---- util/wmgenmenu.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ util/wmgenmenu.c 2013-01-18 16:57:47.992050532 +0100
-@@ -4,6 +4,10 @@
- #define _GNU_SOURCE /* getopt_long */
- #endif
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <ctype.h>
- #include <getopt.h>
- #include <limits.h>
-Index: util/wmmenugen.c
-===================================================================
---- util/wmmenugen.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ util/wmmenugen.c 2013-01-18 16:57:47.992050532 +0100
-@@ -18,6 +18,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <sys/types.h>
- #include <sys/stat.h>
-
-Index: util/wmmenugen_misc.c
-===================================================================
---- util/wmmenugen_misc.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ util/wmmenugen_misc.c 2013-01-18 16:57:47.992050532 +0100
-@@ -20,6 +20,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <libgen.h>
- #include <stdlib.h>
- #include <string.h>
-Index: util/wmmenugen_parse_wmconfig.c
-===================================================================
---- util/wmmenugen_parse_wmconfig.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ util/wmmenugen_parse_wmconfig.c 2013-01-18 16:57:47.992050532 +0100
-@@ -20,6 +20,10 @@
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <sys/types.h>
- #include <sys/stat.h>
-
-Index: util/wmmenugen_parse_xdg.c
-===================================================================
---- util/wmmenugen_parse_xdg.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ util/wmmenugen_parse_xdg.c 2013-01-18 16:57:47.992050532 +0100
-@@ -36,6 +36,10 @@
- * Basic validation of the .desktop file is done.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <sys/types.h>
- #include <sys/stat.h>
-
-Index: util/wxcopy.c
-===================================================================
---- util/wxcopy.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ util/wxcopy.c 2013-01-18 16:57:47.993050562 +0100
-@@ -17,6 +17,10 @@
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
-Index: wmlib/app.c
-===================================================================
---- wmlib/app.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ wmlib/app.c 2013-01-18 16:57:47.993050562 +0100
-@@ -19,6 +19,10 @@
- * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <X11/Xlib.h>
- #include <stdlib.h>
- #include <string.h>
-Index: wmlib/command.c
-===================================================================
---- wmlib/command.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ wmlib/command.c 2013-01-18 16:57:47.993050562 +0100
-@@ -19,6 +19,10 @@
- * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <X11/Xlib.h>
- #include <stdlib.h>
-
-Index: wmlib/event.c
-===================================================================
---- wmlib/event.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ wmlib/event.c 2013-01-18 16:57:47.993050562 +0100
-@@ -19,6 +19,10 @@
- * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <stdlib.h>
- #include <stdio.h>
- #include <X11/Xlib.h>
-Index: wmlib/menu.c
-===================================================================
---- wmlib/menu.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ wmlib/menu.c 2013-01-18 16:57:47.993050562 +0100
-@@ -19,6 +19,10 @@
- * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <stdlib.h>
- #include <stdio.h>
- #include <string.h>
-Index: wrlib/alpha_combine.c
-===================================================================
---- wrlib/alpha_combine.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ wrlib/alpha_combine.c 2013-01-18 16:57:47.993050562 +0100
-@@ -17,6 +17,10 @@
- * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "wraster.h"
-
- void RCombineAlpha(unsigned char *d, unsigned char *s, int s_has_alpha,
-Index: wrlib/tests/testdraw.c
-===================================================================
---- wrlib/tests/testdraw.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ wrlib/tests/testdraw.c 2013-01-18 16:57:47.994050592 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <X11/Xlib.h>
- #include "wraster.h"
- #include <stdio.h>
-Index: wrlib/tests/testgrad.c
-===================================================================
---- wrlib/tests/testgrad.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ wrlib/tests/testgrad.c 2013-01-18 16:57:47.994050592 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <X11/Xlib.h>
- #include "wraster.h"
- #include <stdio.h>
-Index: wrlib/tests/testrot.c
-===================================================================
---- wrlib/tests/testrot.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ wrlib/tests/testrot.c 2013-01-18 16:57:47.994050592 +0100
-@@ -1,4 +1,8 @@
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <X11/Xlib.h>
- #include "wraster.h"
- #include <stdlib.h>
-Index: wrlib/tests/view.c
-===================================================================
---- wrlib/tests/view.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ wrlib/tests/view.c 2013-01-18 16:57:47.994050592 +0100
-@@ -1,3 +1,7 @@
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <X11/Xlib.h>
- #include "wraster.h"
- #include <stdlib.h>
-Index: configure.ac
-===================================================================
---- configure.ac.orig 2013-01-09 22:42:49.000000000 +0100
-+++ configure.ac 2013-01-18 16:57:47.994050592 +0100
-@@ -67,8 +67,9 @@ dnl AC_CANONICAL_HOST -- already done by
-
- dnl Checks for programs.
- dnl ===================
--AC_ISC_POSIX
--AC_PROG_CC
-+AC_PROG_CC_STDC
-+AC_USE_SYSTEM_EXTENSIONS
-+AC_SYS_LARGEFILE
- AC_PROG_LN_S
- AC_PROG_GCC_TRADITIONAL
- AC_PROG_LIBTOOL
-Index: wrlib/gif.c
-===================================================================
---- wrlib/gif.c.orig 2013-01-09 22:42:39.000000000 +0100
-+++ wrlib/gif.c 2013-01-18 16:57:47.994050592 +0100
-@@ -50,17 +50,24 @@ RImage *RLoadGIF(char *file, int index)
- unsigned char rmap[256];
- unsigned char gmap[256];
- unsigned char bmap[256];
-+ int dgiferr;
-
- if (index < 0)
- index = 0;
-
- /* default error message */
- RErrorCode = RERR_BADINDEX;
--
-+#if defined(GIFLIB_MAJOR) && (GIFLIB_MAJOR >= 5)
-+ gif = DGifOpenFileName(file, &dgiferr);
-+#else
- gif = DGifOpenFileName(file);
--
-+#endif
- if (!gif) {
-+#if defined(GIFLIB_MAJOR) && (GIFLIB_MAJOR >= 5)
-+ switch (dgiferr) {
-+#else
- switch (GifLastError()) {
-+#endif
- case D_GIF_ERR_OPEN_FAILED:
- RErrorCode = RERR_OPEN;
- break;
-@@ -197,7 +204,11 @@ RImage *RLoadGIF(char *file, int index)
- /* yuck! */
- goto did_not_get_any_errors;
- giferr:
-+#if defined(GIFLIB_MAJOR) && (GIFLIB_MAJOR >= 5)
-+ switch (gif->Error) {
-+#else
- switch (GifLastError()) {
-+#endif
- case D_GIF_ERR_OPEN_FAILED:
- RErrorCode = RERR_OPEN;
- break;
diff --git a/abs/core/wpa_supplicant/0001-Revert-OpenSSL-Do-not-accept-SSL-Client-certificate-.patch b/abs/core/wpa_supplicant/0001-Revert-OpenSSL-Do-not-accept-SSL-Client-certificate-.patch
deleted file mode 100644
index 8b0b1b3..0000000
--- a/abs/core/wpa_supplicant/0001-Revert-OpenSSL-Do-not-accept-SSL-Client-certificate-.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-From b62d5b5450101676a0c05691b4bcd94e11426397 Mon Sep 17 00:00:00 2001
-From: Jouni Malinen <j@w1.fi>
-Date: Wed, 19 Feb 2014 11:56:02 +0200
-Subject: [PATCH] Revert "OpenSSL: Do not accept SSL Client certificate for
- server"
-
-This reverts commit 51e3eafb68e15e78e98ca955704be8a6c3a7b304. There are
-too many deployed AAA servers that include both id-kp-clientAuth and
-id-kp-serverAuth EKUs for this change to be acceptable as a generic rule
-for AAA authentication server validation. OpenSSL enforces the policy of
-not connecting if only id-kp-clientAuth is included. If a valid EKU is
-listed with it, the connection needs to be accepted.
-
-Signed-off-by: Jouni Malinen <j@w1.fi>
----
- src/crypto/tls.h | 3 +--
- src/crypto/tls_openssl.c | 13 -------------
- 2 files changed, 1 insertion(+), 15 deletions(-)
-
-diff --git a/src/crypto/tls.h b/src/crypto/tls.h
-index 287fd33..feba13f 100644
---- a/src/crypto/tls.h
-+++ b/src/crypto/tls.h
-@@ -41,8 +41,7 @@ enum tls_fail_reason {
- TLS_FAIL_ALTSUBJECT_MISMATCH = 6,
- TLS_FAIL_BAD_CERTIFICATE = 7,
- TLS_FAIL_SERVER_CHAIN_PROBE = 8,
-- TLS_FAIL_DOMAIN_SUFFIX_MISMATCH = 9,
-- TLS_FAIL_SERVER_USED_CLIENT_CERT = 10
-+ TLS_FAIL_DOMAIN_SUFFIX_MISMATCH = 9
- };
-
- union tls_event_data {
-diff --git a/src/crypto/tls_openssl.c b/src/crypto/tls_openssl.c
-index a13fa38..8cf1de8 100644
---- a/src/crypto/tls_openssl.c
-+++ b/src/crypto/tls_openssl.c
-@@ -105,7 +105,6 @@ struct tls_connection {
- unsigned int ca_cert_verify:1;
- unsigned int cert_probe:1;
- unsigned int server_cert_only:1;
-- unsigned int server:1;
-
- u8 srv_cert_hash[32];
-
-@@ -1480,16 +1479,6 @@ static int tls_verify_cb(int preverify_ok, X509_STORE_CTX *x509_ctx)
- TLS_FAIL_SERVER_CHAIN_PROBE);
- }
-
-- if (!conn->server && err_cert && preverify_ok && depth == 0 &&
-- (err_cert->ex_flags & EXFLAG_XKUSAGE) &&
-- (err_cert->ex_xkusage & XKU_SSL_CLIENT)) {
-- wpa_printf(MSG_WARNING, "TLS: Server used client certificate");
-- openssl_tls_fail_event(conn, err_cert, err, depth, buf,
-- "Server used client certificate",
-- TLS_FAIL_SERVER_USED_CLIENT_CERT);
-- preverify_ok = 0;
-- }
--
- if (preverify_ok && context->event_cb != NULL)
- context->event_cb(context->cb_ctx,
- TLS_CERT_CHAIN_SUCCESS, NULL);
-@@ -2541,8 +2530,6 @@ openssl_handshake(struct tls_connection *conn, const struct wpabuf *in_data,
- int res;
- struct wpabuf *out_data;
-
-- conn->server = !!server;
--
- /*
- * Give TLS handshake data from the server (if available) to OpenSSL
- * for processing.
---
-1.9.0
-
diff --git a/abs/core/wpa_supplicant/0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch b/abs/core/wpa_supplicant/0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch
new file mode 100644
index 0000000..7276848
--- /dev/null
+++ b/abs/core/wpa_supplicant/0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch
@@ -0,0 +1,174 @@
+From cf4cab804c7afd5c45505528a8d16e46163243a2 Mon Sep 17 00:00:00 2001
+From: Mathy Vanhoef <Mathy.Vanhoef@cs.kuleuven.be>
+Date: Fri, 14 Jul 2017 15:15:35 +0200
+Subject: [PATCH 1/8] hostapd: Avoid key reinstallation in FT handshake
+
+Do not reinstall TK to the driver during Reassociation Response frame
+processing if the first attempt of setting the TK succeeded. This avoids
+issues related to clearing the TX/RX PN that could result in reusing
+same PN values for transmitted frames (e.g., due to CCM nonce reuse and
+also hitting replay protection on the receiver) and accepting replayed
+frames on RX side.
+
+This issue was introduced by the commit
+0e84c25434e6a1f283c7b4e62e483729085b78d2 ('FT: Fix PTK configuration in
+authenticator') which allowed wpa_ft_install_ptk() to be called multiple
+times with the same PTK. While the second configuration attempt is
+needed with some drivers, it must be done only if the first attempt
+failed.
+
+Signed-off-by: Mathy Vanhoef <Mathy.Vanhoef@cs.kuleuven.be>
+---
+ src/ap/ieee802_11.c | 16 +++++++++++++---
+ src/ap/wpa_auth.c | 11 +++++++++++
+ src/ap/wpa_auth.h | 3 ++-
+ src/ap/wpa_auth_ft.c | 10 ++++++++++
+ src/ap/wpa_auth_i.h | 1 +
+ 5 files changed, 37 insertions(+), 4 deletions(-)
+
+diff --git a/src/ap/ieee802_11.c b/src/ap/ieee802_11.c
+index 4e04169..333035f 100644
+--- a/src/ap/ieee802_11.c
++++ b/src/ap/ieee802_11.c
+@@ -1841,6 +1841,7 @@ static int add_associated_sta(struct hostapd_data *hapd,
+ {
+ struct ieee80211_ht_capabilities ht_cap;
+ struct ieee80211_vht_capabilities vht_cap;
++ int set = 1;
+
+ /*
+ * Remove the STA entry to ensure the STA PS state gets cleared and
+@@ -1848,9 +1849,18 @@ static int add_associated_sta(struct hostapd_data *hapd,
+ * FT-over-the-DS, where a station re-associates back to the same AP but
+ * skips the authentication flow, or if working with a driver that
+ * does not support full AP client state.
++ *
++ * Skip this if the STA has already completed FT reassociation and the
++ * TK has been configured since the TX/RX PN must not be reset to 0 for
++ * the same key.
+ */
+- if (!sta->added_unassoc)
++ if (!sta->added_unassoc &&
++ (!(sta->flags & WLAN_STA_AUTHORIZED) ||
++ !wpa_auth_sta_ft_tk_already_set(sta->wpa_sm))) {
+ hostapd_drv_sta_remove(hapd, sta->addr);
++ wpa_auth_sm_event(sta->wpa_sm, WPA_DRV_STA_REMOVED);
++ set = 0;
++ }
+
+ #ifdef CONFIG_IEEE80211N
+ if (sta->flags & WLAN_STA_HT)
+@@ -1873,11 +1883,11 @@ static int add_associated_sta(struct hostapd_data *hapd,
+ sta->flags & WLAN_STA_VHT ? &vht_cap : NULL,
+ sta->flags | WLAN_STA_ASSOC, sta->qosinfo,
+ sta->vht_opmode, sta->p2p_ie ? 1 : 0,
+- sta->added_unassoc)) {
++ set)) {
+ hostapd_logger(hapd, sta->addr,
+ HOSTAPD_MODULE_IEEE80211, HOSTAPD_LEVEL_NOTICE,
+ "Could not %s STA to kernel driver",
+- sta->added_unassoc ? "set" : "add");
++ set ? "set" : "add");
+
+ if (sta->added_unassoc) {
+ hostapd_drv_sta_remove(hapd, sta->addr);
+diff --git a/src/ap/wpa_auth.c b/src/ap/wpa_auth.c
+index 3587086..707971d 100644
+--- a/src/ap/wpa_auth.c
++++ b/src/ap/wpa_auth.c
+@@ -1745,6 +1745,9 @@ int wpa_auth_sm_event(struct wpa_state_machine *sm, enum wpa_event event)
+ #else /* CONFIG_IEEE80211R */
+ break;
+ #endif /* CONFIG_IEEE80211R */
++ case WPA_DRV_STA_REMOVED:
++ sm->tk_already_set = FALSE;
++ return 0;
+ }
+
+ #ifdef CONFIG_IEEE80211R
+@@ -3250,6 +3253,14 @@ int wpa_auth_sta_wpa_version(struct wpa_state_machine *sm)
+ }
+
+
++int wpa_auth_sta_ft_tk_already_set(struct wpa_state_machine *sm)
++{
++ if (!sm || !wpa_key_mgmt_ft(sm->wpa_key_mgmt))
++ return 0;
++ return sm->tk_already_set;
++}
++
++
+ int wpa_auth_sta_clear_pmksa(struct wpa_state_machine *sm,
+ struct rsn_pmksa_cache_entry *entry)
+ {
+diff --git a/src/ap/wpa_auth.h b/src/ap/wpa_auth.h
+index 0de8d97..97461b0 100644
+--- a/src/ap/wpa_auth.h
++++ b/src/ap/wpa_auth.h
+@@ -267,7 +267,7 @@ void wpa_receive(struct wpa_authenticator *wpa_auth,
+ u8 *data, size_t data_len);
+ enum wpa_event {
+ WPA_AUTH, WPA_ASSOC, WPA_DISASSOC, WPA_DEAUTH, WPA_REAUTH,
+- WPA_REAUTH_EAPOL, WPA_ASSOC_FT
++ WPA_REAUTH_EAPOL, WPA_ASSOC_FT, WPA_DRV_STA_REMOVED
+ };
+ void wpa_remove_ptk(struct wpa_state_machine *sm);
+ int wpa_auth_sm_event(struct wpa_state_machine *sm, enum wpa_event event);
+@@ -280,6 +280,7 @@ int wpa_auth_pairwise_set(struct wpa_state_machine *sm);
+ int wpa_auth_get_pairwise(struct wpa_state_machine *sm);
+ int wpa_auth_sta_key_mgmt(struct wpa_state_machine *sm);
+ int wpa_auth_sta_wpa_version(struct wpa_state_machine *sm);
++int wpa_auth_sta_ft_tk_already_set(struct wpa_state_machine *sm);
+ int wpa_auth_sta_clear_pmksa(struct wpa_state_machine *sm,
+ struct rsn_pmksa_cache_entry *entry);
+ struct rsn_pmksa_cache_entry *
+diff --git a/src/ap/wpa_auth_ft.c b/src/ap/wpa_auth_ft.c
+index 42242a5..e63b99a 100644
+--- a/src/ap/wpa_auth_ft.c
++++ b/src/ap/wpa_auth_ft.c
+@@ -780,6 +780,14 @@ void wpa_ft_install_ptk(struct wpa_state_machine *sm)
+ return;
+ }
+
++ if (sm->tk_already_set) {
++ /* Must avoid TK reconfiguration to prevent clearing of TX/RX
++ * PN in the driver */
++ wpa_printf(MSG_DEBUG,
++ "FT: Do not re-install same PTK to the driver");
++ return;
++ }
++
+ /* FIX: add STA entry to kernel/driver here? The set_key will fail
+ * most likely without this.. At the moment, STA entry is added only
+ * after association has been completed. This function will be called
+@@ -792,6 +800,7 @@ void wpa_ft_install_ptk(struct wpa_state_machine *sm)
+
+ /* FIX: MLME-SetProtection.Request(TA, Tx_Rx) */
+ sm->pairwise_set = TRUE;
++ sm->tk_already_set = TRUE;
+ }
+
+
+@@ -898,6 +907,7 @@ static int wpa_ft_process_auth_req(struct wpa_state_machine *sm,
+
+ sm->pairwise = pairwise;
+ sm->PTK_valid = TRUE;
++ sm->tk_already_set = FALSE;
+ wpa_ft_install_ptk(sm);
+
+ buflen = 2 + sizeof(struct rsn_mdie) + 2 + sizeof(struct rsn_ftie) +
+diff --git a/src/ap/wpa_auth_i.h b/src/ap/wpa_auth_i.h
+index 72b7eb3..7fd8f05 100644
+--- a/src/ap/wpa_auth_i.h
++++ b/src/ap/wpa_auth_i.h
+@@ -65,6 +65,7 @@ struct wpa_state_machine {
+ struct wpa_ptk PTK;
+ Boolean PTK_valid;
+ Boolean pairwise_set;
++ Boolean tk_already_set;
+ int keycount;
+ Boolean Pair;
+ struct wpa_key_replay_counter {
+--
+2.7.4
+
diff --git a/abs/core/wpa_supplicant/0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch b/abs/core/wpa_supplicant/0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch
new file mode 100644
index 0000000..1802d66
--- /dev/null
+++ b/abs/core/wpa_supplicant/0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch
@@ -0,0 +1,250 @@
+From 927f891007c402fefd1ff384645b3f07597c3ede Mon Sep 17 00:00:00 2001
+From: Mathy Vanhoef <Mathy.Vanhoef@cs.kuleuven.be>
+Date: Wed, 12 Jul 2017 16:03:24 +0200
+Subject: [PATCH 2/8] Prevent reinstallation of an already in-use group key
+
+Track the current GTK and IGTK that is in use and when receiving a
+(possibly retransmitted) Group Message 1 or WNM-Sleep Mode Response, do
+not install the given key if it is already in use. This prevents an
+attacker from trying to trick the client into resetting or lowering the
+sequence counter associated to the group key.
+
+Signed-off-by: Mathy Vanhoef <Mathy.Vanhoef@cs.kuleuven.be>
+---
+ src/common/wpa_common.h | 11 +++++
+ src/rsn_supp/wpa.c | 116 ++++++++++++++++++++++++++++++------------------
+ src/rsn_supp/wpa_i.h | 4 ++
+ 3 files changed, 87 insertions(+), 44 deletions(-)
+
+diff --git a/src/common/wpa_common.h b/src/common/wpa_common.h
+index af1d0f0..d200285 100644
+--- a/src/common/wpa_common.h
++++ b/src/common/wpa_common.h
+@@ -217,6 +217,17 @@ struct wpa_ptk {
+ size_t tk_len;
+ };
+
++struct wpa_gtk {
++ u8 gtk[WPA_GTK_MAX_LEN];
++ size_t gtk_len;
++};
++
++#ifdef CONFIG_IEEE80211W
++struct wpa_igtk {
++ u8 igtk[WPA_IGTK_MAX_LEN];
++ size_t igtk_len;
++};
++#endif /* CONFIG_IEEE80211W */
+
+ /* WPA IE version 1
+ * 00-50-f2:1 (OUI:OUI type)
+diff --git a/src/rsn_supp/wpa.c b/src/rsn_supp/wpa.c
+index 3c47879..95bd7be 100644
+--- a/src/rsn_supp/wpa.c
++++ b/src/rsn_supp/wpa.c
+@@ -714,6 +714,15 @@ static int wpa_supplicant_install_gtk(struct wpa_sm *sm,
+ const u8 *_gtk = gd->gtk;
+ u8 gtk_buf[32];
+
++ /* Detect possible key reinstallation */
++ if (sm->gtk.gtk_len == (size_t) gd->gtk_len &&
++ os_memcmp(sm->gtk.gtk, gd->gtk, sm->gtk.gtk_len) == 0) {
++ wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG,
++ "WPA: Not reinstalling already in-use GTK to the driver (keyidx=%d tx=%d len=%d)",
++ gd->keyidx, gd->tx, gd->gtk_len);
++ return 0;
++ }
++
+ wpa_hexdump_key(MSG_DEBUG, "WPA: Group Key", gd->gtk, gd->gtk_len);
+ wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG,
+ "WPA: Installing GTK to the driver (keyidx=%d tx=%d len=%d)",
+@@ -748,6 +757,9 @@ static int wpa_supplicant_install_gtk(struct wpa_sm *sm,
+ }
+ os_memset(gtk_buf, 0, sizeof(gtk_buf));
+
++ sm->gtk.gtk_len = gd->gtk_len;
++ os_memcpy(sm->gtk.gtk, gd->gtk, sm->gtk.gtk_len);
++
+ return 0;
+ }
+
+@@ -854,6 +866,48 @@ static int wpa_supplicant_pairwise_gtk(struct wpa_sm *sm,
+ }
+
+
++#ifdef CONFIG_IEEE80211W
++static int wpa_supplicant_install_igtk(struct wpa_sm *sm,
++ const struct wpa_igtk_kde *igtk)
++{
++ size_t len = wpa_cipher_key_len(sm->mgmt_group_cipher);
++ u16 keyidx = WPA_GET_LE16(igtk->keyid);
++
++ /* Detect possible key reinstallation */
++ if (sm->igtk.igtk_len == len &&
++ os_memcmp(sm->igtk.igtk, igtk->igtk, sm->igtk.igtk_len) == 0) {
++ wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG,
++ "WPA: Not reinstalling already in-use IGTK to the driver (keyidx=%d)",
++ keyidx);
++ return 0;
++ }
++
++ wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG,
++ "WPA: IGTK keyid %d pn %02x%02x%02x%02x%02x%02x",
++ keyidx, MAC2STR(igtk->pn));
++ wpa_hexdump_key(MSG_DEBUG, "WPA: IGTK", igtk->igtk, len);
++ if (keyidx > 4095) {
++ wpa_msg(sm->ctx->msg_ctx, MSG_WARNING,
++ "WPA: Invalid IGTK KeyID %d", keyidx);
++ return -1;
++ }
++ if (wpa_sm_set_key(sm, wpa_cipher_to_alg(sm->mgmt_group_cipher),
++ broadcast_ether_addr,
++ keyidx, 0, igtk->pn, sizeof(igtk->pn),
++ igtk->igtk, len) < 0) {
++ wpa_msg(sm->ctx->msg_ctx, MSG_WARNING,
++ "WPA: Failed to configure IGTK to the driver");
++ return -1;
++ }
++
++ sm->igtk.igtk_len = len;
++ os_memcpy(sm->igtk.igtk, igtk->igtk, sm->igtk.igtk_len);
++
++ return 0;
++}
++#endif /* CONFIG_IEEE80211W */
++
++
+ static int ieee80211w_set_keys(struct wpa_sm *sm,
+ struct wpa_eapol_ie_parse *ie)
+ {
+@@ -864,30 +918,14 @@ static int ieee80211w_set_keys(struct wpa_sm *sm,
+ if (ie->igtk) {
+ size_t len;
+ const struct wpa_igtk_kde *igtk;
+- u16 keyidx;
++
+ len = wpa_cipher_key_len(sm->mgmt_group_cipher);
+ if (ie->igtk_len != WPA_IGTK_KDE_PREFIX_LEN + len)
+ return -1;
++
+ igtk = (const struct wpa_igtk_kde *) ie->igtk;
+- keyidx = WPA_GET_LE16(igtk->keyid);
+- wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG, "WPA: IGTK keyid %d "
+- "pn %02x%02x%02x%02x%02x%02x",
+- keyidx, MAC2STR(igtk->pn));
+- wpa_hexdump_key(MSG_DEBUG, "WPA: IGTK",
+- igtk->igtk, len);
+- if (keyidx > 4095) {
+- wpa_msg(sm->ctx->msg_ctx, MSG_WARNING,
+- "WPA: Invalid IGTK KeyID %d", keyidx);
+- return -1;
+- }
+- if (wpa_sm_set_key(sm, wpa_cipher_to_alg(sm->mgmt_group_cipher),
+- broadcast_ether_addr,
+- keyidx, 0, igtk->pn, sizeof(igtk->pn),
+- igtk->igtk, len) < 0) {
+- wpa_msg(sm->ctx->msg_ctx, MSG_WARNING,
+- "WPA: Failed to configure IGTK to the driver");
++ if (wpa_supplicant_install_igtk(sm, igtk) < 0)
+ return -1;
+- }
+ }
+
+ return 0;
+@@ -2307,7 +2345,7 @@ void wpa_sm_deinit(struct wpa_sm *sm)
+ */
+ void wpa_sm_notify_assoc(struct wpa_sm *sm, const u8 *bssid)
+ {
+- int clear_ptk = 1;
++ int clear_keys = 1;
+
+ if (sm == NULL)
+ return;
+@@ -2333,11 +2371,11 @@ void wpa_sm_notify_assoc(struct wpa_sm *sm, const u8 *bssid)
+ /* Prepare for the next transition */
+ wpa_ft_prepare_auth_request(sm, NULL);
+
+- clear_ptk = 0;
++ clear_keys = 0;
+ }
+ #endif /* CONFIG_IEEE80211R */
+
+- if (clear_ptk) {
++ if (clear_keys) {
+ /*
+ * IEEE 802.11, 8.4.10: Delete PTK SA on (re)association if
+ * this is not part of a Fast BSS Transition.
+@@ -2347,6 +2385,10 @@ void wpa_sm_notify_assoc(struct wpa_sm *sm, const u8 *bssid)
+ os_memset(&sm->ptk, 0, sizeof(sm->ptk));
+ sm->tptk_set = 0;
+ os_memset(&sm->tptk, 0, sizeof(sm->tptk));
++ os_memset(&sm->gtk, 0, sizeof(sm->gtk));
++#ifdef CONFIG_IEEE80211W
++ os_memset(&sm->igtk, 0, sizeof(sm->igtk));
++#endif /* CONFIG_IEEE80211W */
+ }
+
+ #ifdef CONFIG_TDLS
+@@ -2877,6 +2919,10 @@ void wpa_sm_drop_sa(struct wpa_sm *sm)
+ os_memset(sm->pmk, 0, sizeof(sm->pmk));
+ os_memset(&sm->ptk, 0, sizeof(sm->ptk));
+ os_memset(&sm->tptk, 0, sizeof(sm->tptk));
++ os_memset(&sm->gtk, 0, sizeof(sm->gtk));
++#ifdef CONFIG_IEEE80211W
++ os_memset(&sm->igtk, 0, sizeof(sm->igtk));
++#endif /* CONFIG_IEEE80211W */
+ #ifdef CONFIG_IEEE80211R
+ os_memset(sm->xxkey, 0, sizeof(sm->xxkey));
+ os_memset(sm->pmk_r0, 0, sizeof(sm->pmk_r0));
+@@ -2949,29 +2995,11 @@ int wpa_wnmsleep_install_key(struct wpa_sm *sm, u8 subelem_id, u8 *buf)
+ os_memset(&gd, 0, sizeof(gd));
+ #ifdef CONFIG_IEEE80211W
+ } else if (subelem_id == WNM_SLEEP_SUBELEM_IGTK) {
+- struct wpa_igtk_kde igd;
+- u16 keyidx;
+-
+- os_memset(&igd, 0, sizeof(igd));
+- keylen = wpa_cipher_key_len(sm->mgmt_group_cipher);
+- os_memcpy(igd.keyid, buf + 2, 2);
+- os_memcpy(igd.pn, buf + 4, 6);
+-
+- keyidx = WPA_GET_LE16(igd.keyid);
+- os_memcpy(igd.igtk, buf + 10, keylen);
+-
+- wpa_hexdump_key(MSG_DEBUG, "Install IGTK (WNM SLEEP)",
+- igd.igtk, keylen);
+- if (wpa_sm_set_key(sm, wpa_cipher_to_alg(sm->mgmt_group_cipher),
+- broadcast_ether_addr,
+- keyidx, 0, igd.pn, sizeof(igd.pn),
+- igd.igtk, keylen) < 0) {
+- wpa_printf(MSG_DEBUG, "Failed to install the IGTK in "
+- "WNM mode");
+- os_memset(&igd, 0, sizeof(igd));
++ const struct wpa_igtk_kde *igtk;
++
++ igtk = (const struct wpa_igtk_kde *) (buf + 2);
++ if (wpa_supplicant_install_igtk(sm, igtk) < 0)
+ return -1;
+- }
+- os_memset(&igd, 0, sizeof(igd));
+ #endif /* CONFIG_IEEE80211W */
+ } else {
+ wpa_printf(MSG_DEBUG, "Unknown element id");
+diff --git a/src/rsn_supp/wpa_i.h b/src/rsn_supp/wpa_i.h
+index f653ba6..afc9e37 100644
+--- a/src/rsn_supp/wpa_i.h
++++ b/src/rsn_supp/wpa_i.h
+@@ -31,6 +31,10 @@ struct wpa_sm {
+ u8 rx_replay_counter[WPA_REPLAY_COUNTER_LEN];
+ int rx_replay_counter_set;
+ u8 request_counter[WPA_REPLAY_COUNTER_LEN];
++ struct wpa_gtk gtk;
++#ifdef CONFIG_IEEE80211W
++ struct wpa_igtk igtk;
++#endif /* CONFIG_IEEE80211W */
+
+ struct eapol_sm *eapol; /* EAPOL state machine from upper level code */
+
+--
+2.7.4
+
diff --git a/abs/core/wpa_supplicant/0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch b/abs/core/wpa_supplicant/0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch
new file mode 100644
index 0000000..e2937b8
--- /dev/null
+++ b/abs/core/wpa_supplicant/0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch
@@ -0,0 +1,184 @@
+From 8280294e74846ea342389a0cd17215050fa5afe8 Mon Sep 17 00:00:00 2001
+From: Jouni Malinen <j@w1.fi>
+Date: Sun, 1 Oct 2017 12:12:24 +0300
+Subject: [PATCH 3/8] Extend protection of GTK/IGTK reinstallation of WNM-Sleep
+ Mode cases
+
+This extends the protection to track last configured GTK/IGTK value
+separately from EAPOL-Key frames and WNM-Sleep Mode frames to cover a
+corner case where these two different mechanisms may get used when the
+GTK/IGTK has changed and tracking a single value is not sufficient to
+detect a possible key reconfiguration.
+
+Signed-off-by: Jouni Malinen <j@w1.fi>
+---
+ src/rsn_supp/wpa.c | 53 +++++++++++++++++++++++++++++++++++++---------------
+ src/rsn_supp/wpa_i.h | 2 ++
+ 2 files changed, 40 insertions(+), 15 deletions(-)
+
+diff --git a/src/rsn_supp/wpa.c b/src/rsn_supp/wpa.c
+index 95bd7be..7a2c68d 100644
+--- a/src/rsn_supp/wpa.c
++++ b/src/rsn_supp/wpa.c
+@@ -709,14 +709,17 @@ struct wpa_gtk_data {
+
+ static int wpa_supplicant_install_gtk(struct wpa_sm *sm,
+ const struct wpa_gtk_data *gd,
+- const u8 *key_rsc)
++ const u8 *key_rsc, int wnm_sleep)
+ {
+ const u8 *_gtk = gd->gtk;
+ u8 gtk_buf[32];
+
+ /* Detect possible key reinstallation */
+- if (sm->gtk.gtk_len == (size_t) gd->gtk_len &&
+- os_memcmp(sm->gtk.gtk, gd->gtk, sm->gtk.gtk_len) == 0) {
++ if ((sm->gtk.gtk_len == (size_t) gd->gtk_len &&
++ os_memcmp(sm->gtk.gtk, gd->gtk, sm->gtk.gtk_len) == 0) ||
++ (sm->gtk_wnm_sleep.gtk_len == (size_t) gd->gtk_len &&
++ os_memcmp(sm->gtk_wnm_sleep.gtk, gd->gtk,
++ sm->gtk_wnm_sleep.gtk_len) == 0)) {
+ wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG,
+ "WPA: Not reinstalling already in-use GTK to the driver (keyidx=%d tx=%d len=%d)",
+ gd->keyidx, gd->tx, gd->gtk_len);
+@@ -757,8 +760,14 @@ static int wpa_supplicant_install_gtk(struct wpa_sm *sm,
+ }
+ os_memset(gtk_buf, 0, sizeof(gtk_buf));
+
+- sm->gtk.gtk_len = gd->gtk_len;
+- os_memcpy(sm->gtk.gtk, gd->gtk, sm->gtk.gtk_len);
++ if (wnm_sleep) {
++ sm->gtk_wnm_sleep.gtk_len = gd->gtk_len;
++ os_memcpy(sm->gtk_wnm_sleep.gtk, gd->gtk,
++ sm->gtk_wnm_sleep.gtk_len);
++ } else {
++ sm->gtk.gtk_len = gd->gtk_len;
++ os_memcpy(sm->gtk.gtk, gd->gtk, sm->gtk.gtk_len);
++ }
+
+ return 0;
+ }
+@@ -852,7 +861,7 @@ static int wpa_supplicant_pairwise_gtk(struct wpa_sm *sm,
+ (wpa_supplicant_check_group_cipher(sm, sm->group_cipher,
+ gtk_len, gtk_len,
+ &gd.key_rsc_len, &gd.alg) ||
+- wpa_supplicant_install_gtk(sm, &gd, key_rsc))) {
++ wpa_supplicant_install_gtk(sm, &gd, key_rsc, 0))) {
+ wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG,
+ "RSN: Failed to install GTK");
+ os_memset(&gd, 0, sizeof(gd));
+@@ -868,14 +877,18 @@ static int wpa_supplicant_pairwise_gtk(struct wpa_sm *sm,
+
+ #ifdef CONFIG_IEEE80211W
+ static int wpa_supplicant_install_igtk(struct wpa_sm *sm,
+- const struct wpa_igtk_kde *igtk)
++ const struct wpa_igtk_kde *igtk,
++ int wnm_sleep)
+ {
+ size_t len = wpa_cipher_key_len(sm->mgmt_group_cipher);
+ u16 keyidx = WPA_GET_LE16(igtk->keyid);
+
+ /* Detect possible key reinstallation */
+- if (sm->igtk.igtk_len == len &&
+- os_memcmp(sm->igtk.igtk, igtk->igtk, sm->igtk.igtk_len) == 0) {
++ if ((sm->igtk.igtk_len == len &&
++ os_memcmp(sm->igtk.igtk, igtk->igtk, sm->igtk.igtk_len) == 0) ||
++ (sm->igtk_wnm_sleep.igtk_len == len &&
++ os_memcmp(sm->igtk_wnm_sleep.igtk, igtk->igtk,
++ sm->igtk_wnm_sleep.igtk_len) == 0)) {
+ wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG,
+ "WPA: Not reinstalling already in-use IGTK to the driver (keyidx=%d)",
+ keyidx);
+@@ -900,8 +913,14 @@ static int wpa_supplicant_install_igtk(struct wpa_sm *sm,
+ return -1;
+ }
+
+- sm->igtk.igtk_len = len;
+- os_memcpy(sm->igtk.igtk, igtk->igtk, sm->igtk.igtk_len);
++ if (wnm_sleep) {
++ sm->igtk_wnm_sleep.igtk_len = len;
++ os_memcpy(sm->igtk_wnm_sleep.igtk, igtk->igtk,
++ sm->igtk_wnm_sleep.igtk_len);
++ } else {
++ sm->igtk.igtk_len = len;
++ os_memcpy(sm->igtk.igtk, igtk->igtk, sm->igtk.igtk_len);
++ }
+
+ return 0;
+ }
+@@ -924,7 +943,7 @@ static int ieee80211w_set_keys(struct wpa_sm *sm,
+ return -1;
+
+ igtk = (const struct wpa_igtk_kde *) ie->igtk;
+- if (wpa_supplicant_install_igtk(sm, igtk) < 0)
++ if (wpa_supplicant_install_igtk(sm, igtk, 0) < 0)
+ return -1;
+ }
+
+@@ -1574,7 +1593,7 @@ static void wpa_supplicant_process_1_of_2(struct wpa_sm *sm,
+ if (wpa_supplicant_rsc_relaxation(sm, key->key_rsc))
+ key_rsc = null_rsc;
+
+- if (wpa_supplicant_install_gtk(sm, &gd, key_rsc) ||
++ if (wpa_supplicant_install_gtk(sm, &gd, key_rsc, 0) ||
+ wpa_supplicant_send_2_of_2(sm, key, ver, key_info) < 0)
+ goto failed;
+ os_memset(&gd, 0, sizeof(gd));
+@@ -2386,8 +2405,10 @@ void wpa_sm_notify_assoc(struct wpa_sm *sm, const u8 *bssid)
+ sm->tptk_set = 0;
+ os_memset(&sm->tptk, 0, sizeof(sm->tptk));
+ os_memset(&sm->gtk, 0, sizeof(sm->gtk));
++ os_memset(&sm->gtk_wnm_sleep, 0, sizeof(sm->gtk_wnm_sleep));
+ #ifdef CONFIG_IEEE80211W
+ os_memset(&sm->igtk, 0, sizeof(sm->igtk));
++ os_memset(&sm->igtk_wnm_sleep, 0, sizeof(sm->igtk_wnm_sleep));
+ #endif /* CONFIG_IEEE80211W */
+ }
+
+@@ -2920,8 +2941,10 @@ void wpa_sm_drop_sa(struct wpa_sm *sm)
+ os_memset(&sm->ptk, 0, sizeof(sm->ptk));
+ os_memset(&sm->tptk, 0, sizeof(sm->tptk));
+ os_memset(&sm->gtk, 0, sizeof(sm->gtk));
++ os_memset(&sm->gtk_wnm_sleep, 0, sizeof(sm->gtk_wnm_sleep));
+ #ifdef CONFIG_IEEE80211W
+ os_memset(&sm->igtk, 0, sizeof(sm->igtk));
++ os_memset(&sm->igtk_wnm_sleep, 0, sizeof(sm->igtk_wnm_sleep));
+ #endif /* CONFIG_IEEE80211W */
+ #ifdef CONFIG_IEEE80211R
+ os_memset(sm->xxkey, 0, sizeof(sm->xxkey));
+@@ -2986,7 +3009,7 @@ int wpa_wnmsleep_install_key(struct wpa_sm *sm, u8 subelem_id, u8 *buf)
+
+ wpa_hexdump_key(MSG_DEBUG, "Install GTK (WNM SLEEP)",
+ gd.gtk, gd.gtk_len);
+- if (wpa_supplicant_install_gtk(sm, &gd, key_rsc)) {
++ if (wpa_supplicant_install_gtk(sm, &gd, key_rsc, 1)) {
+ os_memset(&gd, 0, sizeof(gd));
+ wpa_printf(MSG_DEBUG, "Failed to install the GTK in "
+ "WNM mode");
+@@ -2998,7 +3021,7 @@ int wpa_wnmsleep_install_key(struct wpa_sm *sm, u8 subelem_id, u8 *buf)
+ const struct wpa_igtk_kde *igtk;
+
+ igtk = (const struct wpa_igtk_kde *) (buf + 2);
+- if (wpa_supplicant_install_igtk(sm, igtk) < 0)
++ if (wpa_supplicant_install_igtk(sm, igtk, 1) < 0)
+ return -1;
+ #endif /* CONFIG_IEEE80211W */
+ } else {
+diff --git a/src/rsn_supp/wpa_i.h b/src/rsn_supp/wpa_i.h
+index afc9e37..9a54631 100644
+--- a/src/rsn_supp/wpa_i.h
++++ b/src/rsn_supp/wpa_i.h
+@@ -32,8 +32,10 @@ struct wpa_sm {
+ int rx_replay_counter_set;
+ u8 request_counter[WPA_REPLAY_COUNTER_LEN];
+ struct wpa_gtk gtk;
++ struct wpa_gtk gtk_wnm_sleep;
+ #ifdef CONFIG_IEEE80211W
+ struct wpa_igtk igtk;
++ struct wpa_igtk igtk_wnm_sleep;
+ #endif /* CONFIG_IEEE80211W */
+
+ struct eapol_sm *eapol; /* EAPOL state machine from upper level code */
+--
+2.7.4
+
diff --git a/abs/core/wpa_supplicant/0004-Prevent-installation-of-an-all-zero-TK.patch b/abs/core/wpa_supplicant/0004-Prevent-installation-of-an-all-zero-TK.patch
new file mode 100644
index 0000000..22ee217
--- /dev/null
+++ b/abs/core/wpa_supplicant/0004-Prevent-installation-of-an-all-zero-TK.patch
@@ -0,0 +1,79 @@
+From 8f82bc94e8697a9d47fa8774dfdaaede1084912c Mon Sep 17 00:00:00 2001
+From: Mathy Vanhoef <Mathy.Vanhoef@cs.kuleuven.be>
+Date: Fri, 29 Sep 2017 04:22:51 +0200
+Subject: [PATCH 4/8] Prevent installation of an all-zero TK
+
+Properly track whether a PTK has already been installed to the driver
+and the TK part cleared from memory. This prevents an attacker from
+trying to trick the client into installing an all-zero TK.
+
+This fixes the earlier fix in commit
+ad00d64e7d8827b3cebd665a0ceb08adabf15e1e ('Fix TK configuration to the
+driver in EAPOL-Key 3/4 retry case') which did not take into account
+possibility of an extra message 1/4 showing up between retries of
+message 3/4.
+
+Signed-off-by: Mathy Vanhoef <Mathy.Vanhoef@cs.kuleuven.be>
+---
+ src/common/wpa_common.h | 1 +
+ src/rsn_supp/wpa.c | 5 ++---
+ src/rsn_supp/wpa_i.h | 1 -
+ 3 files changed, 3 insertions(+), 4 deletions(-)
+
+diff --git a/src/common/wpa_common.h b/src/common/wpa_common.h
+index d200285..1021ccb 100644
+--- a/src/common/wpa_common.h
++++ b/src/common/wpa_common.h
+@@ -215,6 +215,7 @@ struct wpa_ptk {
+ size_t kck_len;
+ size_t kek_len;
+ size_t tk_len;
++ int installed; /* 1 if key has already been installed to driver */
+ };
+
+ struct wpa_gtk {
+diff --git a/src/rsn_supp/wpa.c b/src/rsn_supp/wpa.c
+index 7a2c68d..0550a41 100644
+--- a/src/rsn_supp/wpa.c
++++ b/src/rsn_supp/wpa.c
+@@ -510,7 +510,6 @@ static void wpa_supplicant_process_1_of_4(struct wpa_sm *sm,
+ os_memset(buf, 0, sizeof(buf));
+ }
+ sm->tptk_set = 1;
+- sm->tk_to_set = 1;
+
+ kde = sm->assoc_wpa_ie;
+ kde_len = sm->assoc_wpa_ie_len;
+@@ -615,7 +614,7 @@ static int wpa_supplicant_install_ptk(struct wpa_sm *sm,
+ enum wpa_alg alg;
+ const u8 *key_rsc;
+
+- if (!sm->tk_to_set) {
++ if (sm->ptk.installed) {
+ wpa_dbg(sm->ctx->msg_ctx, MSG_DEBUG,
+ "WPA: Do not re-install same PTK to the driver");
+ return 0;
+@@ -659,7 +658,7 @@ static int wpa_supplicant_install_ptk(struct wpa_sm *sm,
+
+ /* TK is not needed anymore in supplicant */
+ os_memset(sm->ptk.tk, 0, WPA_TK_MAX_LEN);
+- sm->tk_to_set = 0;
++ sm->ptk.installed = 1;
+
+ if (sm->wpa_ptk_rekey) {
+ eloop_cancel_timeout(wpa_sm_rekey_ptk, sm, NULL);
+diff --git a/src/rsn_supp/wpa_i.h b/src/rsn_supp/wpa_i.h
+index 9a54631..41f371f 100644
+--- a/src/rsn_supp/wpa_i.h
++++ b/src/rsn_supp/wpa_i.h
+@@ -24,7 +24,6 @@ struct wpa_sm {
+ struct wpa_ptk ptk, tptk;
+ int ptk_set, tptk_set;
+ unsigned int msg_3_of_4_ok:1;
+- unsigned int tk_to_set:1;
+ u8 snonce[WPA_NONCE_LEN];
+ u8 anonce[WPA_NONCE_LEN]; /* ANonce from the last 1/4 msg */
+ int renew_snonce;
+--
+2.7.4
+
diff --git a/abs/core/wpa_supplicant/0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch b/abs/core/wpa_supplicant/0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch
new file mode 100644
index 0000000..c19c4c7
--- /dev/null
+++ b/abs/core/wpa_supplicant/0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch
@@ -0,0 +1,64 @@
+From 12fac09b437a1dc8a0f253e265934a8aaf4d2f8b Mon Sep 17 00:00:00 2001
+From: Jouni Malinen <j@w1.fi>
+Date: Sun, 1 Oct 2017 12:32:57 +0300
+Subject: [PATCH 5/8] Fix PTK rekeying to generate a new ANonce
+
+The Authenticator state machine path for PTK rekeying ended up bypassing
+the AUTHENTICATION2 state where a new ANonce is generated when going
+directly to the PTKSTART state since there is no need to try to
+determine the PMK again in such a case. This is far from ideal since the
+new PTK would depend on a new nonce only from the supplicant.
+
+Fix this by generating a new ANonce when moving to the PTKSTART state
+for the purpose of starting new 4-way handshake to rekey PTK.
+
+Signed-off-by: Jouni Malinen <j@w1.fi>
+---
+ src/ap/wpa_auth.c | 24 +++++++++++++++++++++---
+ 1 file changed, 21 insertions(+), 3 deletions(-)
+
+diff --git a/src/ap/wpa_auth.c b/src/ap/wpa_auth.c
+index 707971d..bf10cc1 100644
+--- a/src/ap/wpa_auth.c
++++ b/src/ap/wpa_auth.c
+@@ -1901,6 +1901,21 @@ SM_STATE(WPA_PTK, AUTHENTICATION2)
+ }
+
+
++static int wpa_auth_sm_ptk_update(struct wpa_state_machine *sm)
++{
++ if (random_get_bytes(sm->ANonce, WPA_NONCE_LEN)) {
++ wpa_printf(MSG_ERROR,
++ "WPA: Failed to get random data for ANonce");
++ sm->Disconnect = TRUE;
++ return -1;
++ }
++ wpa_hexdump(MSG_DEBUG, "WPA: Assign new ANonce", sm->ANonce,
++ WPA_NONCE_LEN);
++ sm->TimeoutCtr = 0;
++ return 0;
++}
++
++
+ SM_STATE(WPA_PTK, INITPMK)
+ {
+ u8 msk[2 * PMK_LEN];
+@@ -2458,9 +2473,12 @@ SM_STEP(WPA_PTK)
+ SM_ENTER(WPA_PTK, AUTHENTICATION);
+ else if (sm->ReAuthenticationRequest)
+ SM_ENTER(WPA_PTK, AUTHENTICATION2);
+- else if (sm->PTKRequest)
+- SM_ENTER(WPA_PTK, PTKSTART);
+- else switch (sm->wpa_ptk_state) {
++ else if (sm->PTKRequest) {
++ if (wpa_auth_sm_ptk_update(sm) < 0)
++ SM_ENTER(WPA_PTK, DISCONNECTED);
++ else
++ SM_ENTER(WPA_PTK, PTKSTART);
++ } else switch (sm->wpa_ptk_state) {
+ case WPA_PTK_INITIALIZE:
+ break;
+ case WPA_PTK_DISCONNECT:
+--
+2.7.4
+
diff --git a/abs/core/wpa_supplicant/0006-TDLS-Reject-TPK-TK-reconfiguration.patch b/abs/core/wpa_supplicant/0006-TDLS-Reject-TPK-TK-reconfiguration.patch
new file mode 100644
index 0000000..e1bd5a5
--- /dev/null
+++ b/abs/core/wpa_supplicant/0006-TDLS-Reject-TPK-TK-reconfiguration.patch
@@ -0,0 +1,132 @@
+From 6c4bed4f47d1960ec04981a9d50e5076aea5223d Mon Sep 17 00:00:00 2001
+From: Jouni Malinen <j@w1.fi>
+Date: Fri, 22 Sep 2017 11:03:15 +0300
+Subject: [PATCH 6/8] TDLS: Reject TPK-TK reconfiguration
+
+Do not try to reconfigure the same TPK-TK to the driver after it has
+been successfully configured. This is an explicit check to avoid issues
+related to resetting the TX/RX packet number. There was already a check
+for this for TPK M2 (retries of that message are ignored completely), so
+that behavior does not get modified.
+
+For TPK M3, the TPK-TK could have been reconfigured, but that was
+followed by immediate teardown of the link due to an issue in updating
+the STA entry. Furthermore, for TDLS with any real security (i.e.,
+ignoring open/WEP), the TPK message exchange is protected on the AP path
+and simple replay attacks are not feasible.
+
+As an additional corner case, make sure the local nonce gets updated if
+the peer uses a very unlikely "random nonce" of all zeros.
+
+Signed-off-by: Jouni Malinen <j@w1.fi>
+---
+ src/rsn_supp/tdls.c | 38 ++++++++++++++++++++++++++++++++++++--
+ 1 file changed, 36 insertions(+), 2 deletions(-)
+
+diff --git a/src/rsn_supp/tdls.c b/src/rsn_supp/tdls.c
+index e424168..9eb9738 100644
+--- a/src/rsn_supp/tdls.c
++++ b/src/rsn_supp/tdls.c
+@@ -112,6 +112,7 @@ struct wpa_tdls_peer {
+ u8 tk[16]; /* TPK-TK; assuming only CCMP will be used */
+ } tpk;
+ int tpk_set;
++ int tk_set; /* TPK-TK configured to the driver */
+ int tpk_success;
+ int tpk_in_progress;
+
+@@ -192,6 +193,20 @@ static int wpa_tdls_set_key(struct wpa_sm *sm, struct wpa_tdls_peer *peer)
+ u8 rsc[6];
+ enum wpa_alg alg;
+
++ if (peer->tk_set) {
++ /*
++ * This same TPK-TK has already been configured to the driver
++ * and this new configuration attempt (likely due to an
++ * unexpected retransmitted frame) would result in clearing
++ * the TX/RX sequence number which can break security, so must
++ * not allow that to happen.
++ */
++ wpa_printf(MSG_INFO, "TDLS: TPK-TK for the peer " MACSTR
++ " has already been configured to the driver - do not reconfigure",
++ MAC2STR(peer->addr));
++ return -1;
++ }
++
+ os_memset(rsc, 0, 6);
+
+ switch (peer->cipher) {
+@@ -209,12 +224,15 @@ static int wpa_tdls_set_key(struct wpa_sm *sm, struct wpa_tdls_peer *peer)
+ return -1;
+ }
+
++ wpa_printf(MSG_DEBUG, "TDLS: Configure pairwise key for peer " MACSTR,
++ MAC2STR(peer->addr));
+ if (wpa_sm_set_key(sm, alg, peer->addr, -1, 1,
+ rsc, sizeof(rsc), peer->tpk.tk, key_len) < 0) {
+ wpa_printf(MSG_WARNING, "TDLS: Failed to set TPK to the "
+ "driver");
+ return -1;
+ }
++ peer->tk_set = 1;
+ return 0;
+ }
+
+@@ -696,7 +714,7 @@ static void wpa_tdls_peer_clear(struct wpa_sm *sm, struct wpa_tdls_peer *peer)
+ peer->cipher = 0;
+ peer->qos_info = 0;
+ peer->wmm_capable = 0;
+- peer->tpk_set = peer->tpk_success = 0;
++ peer->tk_set = peer->tpk_set = peer->tpk_success = 0;
+ peer->chan_switch_enabled = 0;
+ os_memset(&peer->tpk, 0, sizeof(peer->tpk));
+ os_memset(peer->inonce, 0, WPA_NONCE_LEN);
+@@ -1159,6 +1177,7 @@ skip_rsnie:
+ wpa_tdls_peer_free(sm, peer);
+ return -1;
+ }
++ peer->tk_set = 0; /* A new nonce results in a new TK */
+ wpa_hexdump(MSG_DEBUG, "TDLS: Initiator Nonce for TPK handshake",
+ peer->inonce, WPA_NONCE_LEN);
+ os_memcpy(ftie->Snonce, peer->inonce, WPA_NONCE_LEN);
+@@ -1751,6 +1770,19 @@ static int wpa_tdls_addset_peer(struct wpa_sm *sm, struct wpa_tdls_peer *peer,
+ }
+
+
++static int tdls_nonce_set(const u8 *nonce)
++{
++ int i;
++
++ for (i = 0; i < WPA_NONCE_LEN; i++) {
++ if (nonce[i])
++ return 1;
++ }
++
++ return 0;
++}
++
++
+ static int wpa_tdls_process_tpk_m1(struct wpa_sm *sm, const u8 *src_addr,
+ const u8 *buf, size_t len)
+ {
+@@ -2004,7 +2036,8 @@ skip_rsn:
+ peer->rsnie_i_len = kde.rsn_ie_len;
+ peer->cipher = cipher;
+
+- if (os_memcmp(peer->inonce, ftie->Snonce, WPA_NONCE_LEN) != 0) {
++ if (os_memcmp(peer->inonce, ftie->Snonce, WPA_NONCE_LEN) != 0 ||
++ !tdls_nonce_set(peer->inonce)) {
+ /*
+ * There is no point in updating the RNonce for every obtained
+ * TPK M1 frame (e.g., retransmission due to timeout) with the
+@@ -2020,6 +2053,7 @@ skip_rsn:
+ "TDLS: Failed to get random data for responder nonce");
+ goto error;
+ }
++ peer->tk_set = 0; /* A new nonce results in a new TK */
+ }
+
+ #if 0
+--
+2.7.4
+
diff --git a/abs/core/wpa_supplicant/0007-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-r.patch b/abs/core/wpa_supplicant/0007-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-r.patch
new file mode 100644
index 0000000..85ea1d6
--- /dev/null
+++ b/abs/core/wpa_supplicant/0007-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-r.patch
@@ -0,0 +1,43 @@
+From 53c5eb58e95004f86e65ee9fbfccbc291b139057 Mon Sep 17 00:00:00 2001
+From: Jouni Malinen <j@w1.fi>
+Date: Fri, 22 Sep 2017 11:25:02 +0300
+Subject: [PATCH 7/8] WNM: Ignore WNM-Sleep Mode Response without pending
+ request
+
+Commit 03ed0a52393710be6bdae657d1b36efa146520e5 ('WNM: Ignore WNM-Sleep
+Mode Response if WNM-Sleep Mode has not been used') started ignoring the
+response when no WNM-Sleep Mode Request had been used during the
+association. This can be made tighter by clearing the used flag when
+successfully processing a response. This adds an additional layer of
+protection against unexpected retransmissions of the response frame.
+
+Signed-off-by: Jouni Malinen <j@w1.fi>
+---
+ wpa_supplicant/wnm_sta.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/wpa_supplicant/wnm_sta.c b/wpa_supplicant/wnm_sta.c
+index 1b3409c..67a07ff 100644
+--- a/wpa_supplicant/wnm_sta.c
++++ b/wpa_supplicant/wnm_sta.c
+@@ -260,7 +260,7 @@ static void ieee802_11_rx_wnmsleep_resp(struct wpa_supplicant *wpa_s,
+
+ if (!wpa_s->wnmsleep_used) {
+ wpa_printf(MSG_DEBUG,
+- "WNM: Ignore WNM-Sleep Mode Response frame since WNM-Sleep Mode has not been used in this association");
++ "WNM: Ignore WNM-Sleep Mode Response frame since WNM-Sleep Mode operation has not been requested");
+ return;
+ }
+
+@@ -299,6 +299,8 @@ static void ieee802_11_rx_wnmsleep_resp(struct wpa_supplicant *wpa_s,
+ return;
+ }
+
++ wpa_s->wnmsleep_used = 0;
++
+ if (wnmsleep_ie->status == WNM_STATUS_SLEEP_ACCEPT ||
+ wnmsleep_ie->status == WNM_STATUS_SLEEP_EXIT_ACCEPT_GTK_UPDATE) {
+ wpa_printf(MSG_DEBUG, "Successfully recv WNM-Sleep Response "
+--
+2.7.4
+
diff --git a/abs/core/wpa_supplicant/0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch b/abs/core/wpa_supplicant/0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch
new file mode 100644
index 0000000..b9678f6
--- /dev/null
+++ b/abs/core/wpa_supplicant/0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch
@@ -0,0 +1,82 @@
+From b372ab0b7daea719749194dc554b26e6367603f2 Mon Sep 17 00:00:00 2001
+From: Jouni Malinen <j@w1.fi>
+Date: Fri, 22 Sep 2017 12:06:37 +0300
+Subject: [PATCH 8/8] FT: Do not allow multiple Reassociation Response frames
+
+The driver is expected to not report a second association event without
+the station having explicitly request a new association. As such, this
+case should not be reachable. However, since reconfiguring the same
+pairwise or group keys to the driver could result in nonce reuse issues,
+be extra careful here and do an additional state check to avoid this
+even if the local driver ends up somehow accepting an unexpected
+Reassociation Response frame.
+
+Signed-off-by: Jouni Malinen <j@w1.fi>
+---
+ src/rsn_supp/wpa.c | 3 +++
+ src/rsn_supp/wpa_ft.c | 8 ++++++++
+ src/rsn_supp/wpa_i.h | 1 +
+ 3 files changed, 12 insertions(+)
+
+diff --git a/src/rsn_supp/wpa.c b/src/rsn_supp/wpa.c
+index 0550a41..2a53c6f 100644
+--- a/src/rsn_supp/wpa.c
++++ b/src/rsn_supp/wpa.c
+@@ -2440,6 +2440,9 @@ void wpa_sm_notify_disassoc(struct wpa_sm *sm)
+ #ifdef CONFIG_TDLS
+ wpa_tdls_disassoc(sm);
+ #endif /* CONFIG_TDLS */
++#ifdef CONFIG_IEEE80211R
++ sm->ft_reassoc_completed = 0;
++#endif /* CONFIG_IEEE80211R */
+
+ /* Keys are not needed in the WPA state machine anymore */
+ wpa_sm_drop_sa(sm);
+diff --git a/src/rsn_supp/wpa_ft.c b/src/rsn_supp/wpa_ft.c
+index 205793e..d45bb45 100644
+--- a/src/rsn_supp/wpa_ft.c
++++ b/src/rsn_supp/wpa_ft.c
+@@ -153,6 +153,7 @@ static u8 * wpa_ft_gen_req_ies(struct wpa_sm *sm, size_t *len,
+ u16 capab;
+
+ sm->ft_completed = 0;
++ sm->ft_reassoc_completed = 0;
+
+ buf_len = 2 + sizeof(struct rsn_mdie) + 2 + sizeof(struct rsn_ftie) +
+ 2 + sm->r0kh_id_len + ric_ies_len + 100;
+@@ -681,6 +682,11 @@ int wpa_ft_validate_reassoc_resp(struct wpa_sm *sm, const u8 *ies,
+ return -1;
+ }
+
++ if (sm->ft_reassoc_completed) {
++ wpa_printf(MSG_DEBUG, "FT: Reassociation has already been completed for this FT protocol instance - ignore unexpected retransmission");
++ return 0;
++ }
++
+ if (wpa_ft_parse_ies(ies, ies_len, &parse) < 0) {
+ wpa_printf(MSG_DEBUG, "FT: Failed to parse IEs");
+ return -1;
+@@ -781,6 +787,8 @@ int wpa_ft_validate_reassoc_resp(struct wpa_sm *sm, const u8 *ies,
+ return -1;
+ }
+
++ sm->ft_reassoc_completed = 1;
++
+ if (wpa_ft_process_gtk_subelem(sm, parse.gtk, parse.gtk_len) < 0)
+ return -1;
+
+diff --git a/src/rsn_supp/wpa_i.h b/src/rsn_supp/wpa_i.h
+index 41f371f..56f88dc 100644
+--- a/src/rsn_supp/wpa_i.h
++++ b/src/rsn_supp/wpa_i.h
+@@ -128,6 +128,7 @@ struct wpa_sm {
+ size_t r0kh_id_len;
+ u8 r1kh_id[FT_R1KH_ID_LEN];
+ int ft_completed;
++ int ft_reassoc_completed;
+ int over_the_ds_in_progress;
+ u8 target_ap[ETH_ALEN]; /* over-the-DS target AP */
+ int set_ptk_after_assoc;
+--
+2.7.4
+
diff --git a/abs/core/wpa_supplicant/PKGBUILD b/abs/core/wpa_supplicant/PKGBUILD
index 78860cb..4b97114 100644
--- a/abs/core/wpa_supplicant/PKGBUILD
+++ b/abs/core/wpa_supplicant/PKGBUILD
@@ -1,57 +1,89 @@
# $Id$
-# Maintainer: Thomas Bächler <thomas@archlinux.org>
+# Maintainer: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
+# Contributor: Thomas Bächler <thomas@archlinux.org>
pkgname=wpa_supplicant
-pkgver=2.1
-pkgrel=3
-pkgdesc="A utility providing key negotiation for WPA wireless networks"
-url="http://hostap.epitest.fi/wpa_supplicant"
-arch=('i686' 'x86_64')
-depends=('openssl' 'libdbus' 'readline' 'libnl')
-optdepends=('wpa_supplicant_gui: wpa_gui program')
-license=('GPL')
-backup=('etc/wpa_supplicant/wpa_supplicant.conf')
-source=("http://w1.fi/releases/${pkgname}-${pkgver}.tar.gz"
- config
- 0001-Revert-OpenSSL-Do-not-accept-SSL-Client-certificate-.patch)
-sha256sums=('91632e7e3b49a340ce408e2f978a93546a697383abf2e5a60f146faae9e1b277'
- '522b1e2b330bd3fcb9c3c964b0f05ad197a2f1160741835a47585ea45ba8e0a4'
- '3c85fa2cf2465fea86383eece75fa5479507a174da6f0cd09e691fbaaca03c74')
+pkgver=2.6
+pkgrel=11
+epoch=1
+pkgdesc='A utility providing key negotiation for WPA wireless networks'
+url='http://hostap.epitest.fi/wpa_supplicant'
+arch=(x86_64)
+license=(GPL)
+depends=(openssl-1.0 libdbus readline libnl)
+install=wpa_supplicant.install
+source=(https://w1.fi/releases/${pkgname}-${pkgver}.tar.gz{,.asc}
+ config
+ 0001-hostapd-Avoid-key-reinstallation-in-FT-handshake.patch
+ 0002-Prevent-reinstallation-of-an-already-in-use-group-ke.patch
+ 0003-Extend-protection-of-GTK-IGTK-reinstallation-of-WNM-.patch
+ 0004-Prevent-installation-of-an-all-zero-TK.patch
+ 0005-Fix-PTK-rekeying-to-generate-a-new-ANonce.patch
+ 0006-TDLS-Reject-TPK-TK-reconfiguration.patch
+ 0007-WNM-Ignore-WNM-Sleep-Mode-Response-without-pending-r.patch
+ 0008-FT-Do-not-allow-multiple-Reassociation-Response-fram.patch
+)
+validpgpkeys=('EC4AA0A991A5F2464582D52D2B6EF432EFC895FA') # Jouni Malinen
+sha256sums=('b4936d34c4e6cdd44954beba74296d964bc2c9668ecaa5255e499636fe2b1450'
+ 'SKIP'
+ 'aeba21c48416342092964dada271ca6dfe842fc862774c2d3b150785225f66e2'
+ '529113cc81256c6178f3c1cf25dd8d3f33e6d770e4a180bd31c6ab7e4917f40b'
+ 'd86d47ab74170f3648b45b91bce780949ca92b09ab43df065178850ec0c335d7'
+ 'd4535e36739a0cc7f3585e6bcba3c0bb8fc67cb3e729844e448c5dc751f47e81'
+ '793a54748161b5af430dd9de4a1988d19cb8e85ab29bc2340f886b0297cee20b'
+ '147c8abe07606905d16404fb2d2c8849796ca7c85ed8673c09bb50038bcdeb9e'
+ '596d4d3b63ea859ed7ea9791b3a21cb11b6173b04c0a14a2afa47edf1666afa6'
+ 'c5a17af84aec2d88c56ce0da2d6945be398fe7cab5c0c340deb30973900c2736'
+ 'c8840d857b9432f3b488113c85c1ff5d4a4b8d81078b7033388dae1e990843b1')
prepare() {
- cd "${srcdir}/${pkgname}-${pkgver}/"
- patch -p1 -i "${srcdir}"/0001-Revert-OpenSSL-Do-not-accept-SSL-Client-certificate-.patch
+ cd "$srcdir/$pkgname-$pkgver"
+ local i; for i in "${source[@]}"; do
+ case $i in
+ *.patch)
+ msg2 "Applying patch $i"
+ patch -p1 -i "$srcdir/$i"
+ ;;
+ esac
+ done
- cd "${pkgname}/"
- cp "${srcdir}/config" ./.config
+ cd "$srcdir/$pkgname-$pkgver/$pkgname"
+ cp "$srcdir/config" ./.config
}
build() {
- cd "${srcdir}/${pkgname}-${pkgver}/${pkgname}"
+ cd "$srcdir/$pkgname-$pkgver/$pkgname"
+
+ export CFLAGS="$CPPFLAGS $CFLAGS -I/usr/include/openssl-1.0"
+ export LIBS="-L/usr/lib/openssl-1.0"
+ export LIBS_p="-L/usr/lib/openssl-1.0"
- # The Makefile does not pick up our CPPFLAGS
- export CFLAGS="$CPPFLAGS $CFLAGS"
make LIBDIR=/usr/lib BINDIR=/usr/bin
+ make LIBDIR=/usr/lib BINDIR=/usr/bin eapol_test
}
package() {
- cd "${srcdir}/${pkgname}-${pkgver}/${pkgname}"
- make LIBDIR=/usr/lib BINDIR=/usr/bin DESTDIR="${pkgdir}" install
+ cd "$srcdir/$pkgname-$pkgver/$pkgname"
+ make LIBDIR=/usr/lib BINDIR=/usr/bin DESTDIR="$pkgdir" install
+ install -Dm755 eapol_test "$pkgdir/usr/bin/eapol_test"
- install -d -m755 "${pkgdir}/etc/wpa_supplicant"
- install -m644 wpa_supplicant.conf "${pkgdir}/etc/wpa_supplicant/wpa_supplicant.conf"
+ install -d -m755 "$pkgdir/etc/wpa_supplicant"
+ install -Dm644 wpa_supplicant.conf \
+ "$pkgdir/usr/share/doc/wpa_supplicant/wpa_supplicant.conf"
- install -d -m755 "${pkgdir}/usr/share/man/man"{5,8}
- install -m644 doc/docbook/*.5 "${pkgdir}/usr/share/man/man5/"
- install -m644 doc/docbook/*.8 "${pkgdir}/usr/share/man/man8/"
- rm -f "${pkgdir}/usr/share/man/man8/wpa_"{priv,gui}.8
+ install -d -m755 "$pkgdir/usr/share/man/man"{5,8}
+ install -m644 doc/docbook/*.5 "$pkgdir/usr/share/man/man5/"
+ install -m644 doc/docbook/*.8 "$pkgdir/usr/share/man/man8/"
+ rm -f "$pkgdir/usr/share/man/man8/wpa_"{priv,gui}.8
- install -d -m755 "${pkgdir}/usr/share/dbus-1/system-services"
- install -m644 dbus/{fi.epitest.hostap.WPASupplicant.service,fi.w1.wpa_supplicant1.service} "${pkgdir}/usr/share/dbus-1/system-services/"
+ install -d -m755 "$pkgdir/usr/share/dbus-1/system-services"
+ install -m644 \
+ dbus/fi.{epitest.hostap.WPASupplicant,w1.wpa_supplicant1}.service \
+ "$pkgdir/usr/share/dbus-1/system-services/"
- install -d -m755 "${pkgdir}/etc/dbus-1/system.d"
- install -m644 dbus/dbus-wpa_supplicant.conf "${pkgdir}/etc/dbus-1/system.d/wpa_supplicant.conf"
+ install -Dm644 dbus/dbus-wpa_supplicant.conf \
+ "$pkgdir/etc/dbus-1/system.d/wpa_supplicant.conf"
- install -d -m755 "${pkgdir}/usr/lib/systemd/system"
- install -m644 systemd/*.service "${pkgdir}/usr/lib/systemd/system/"
+ install -d -m755 "$pkgdir/usr/lib/systemd/system"
+ install -m644 systemd/*.service "$pkgdir/usr/lib/systemd/system/"
}
diff --git a/abs/core/wpa_supplicant/config b/abs/core/wpa_supplicant/config
index c1035b4..bef7737 100644
--- a/abs/core/wpa_supplicant/config
+++ b/abs/core/wpa_supplicant/config
@@ -1,505 +1,46 @@
-# Example wpa_supplicant build time configuration
-#
-# This file lists the configuration options that are used when building the
-# hostapd binary. All lines starting with # are ignored. Configuration option
-# lines must be commented out complete, if they are not to be included, i.e.,
-# just setting VARIABLE=n is not disabling that variable.
-#
-# This file is included in Makefile, so variables like CFLAGS and LIBS can also
-# be modified from here. In most cases, these lines should use += in order not
-# to override previous values of the variables.
-
-
-# Uncomment following two lines and fix the paths if you have installed OpenSSL
-# or GnuTLS in non-default location
-#CFLAGS += -I/usr/local/openssl/include
-#LIBS += -L/usr/local/openssl/lib
-
-# Some Red Hat versions seem to include kerberos header files from OpenSSL, but
-# the kerberos files are not in the default include path. Following line can be
-# used to fix build issues on such systems (krb5.h not found).
-#CFLAGS += -I/usr/include/kerberos
-
-# Driver interface for generic Linux wireless extensions
-# Note: WEXT is deprecated in the current Linux kernel version and no new
-# functionality is added to it. nl80211-based interface is the new
-# replacement for WEXT and its use allows wpa_supplicant to properly control
-# the driver to improve existing functionality like roaming and to support new
-# functionality.
-CONFIG_DRIVER_WEXT=y
-
-# Driver interface for Linux drivers using the nl80211 kernel interface
+CONFIG_AP=y
+CONFIG_AUTOSCAN_EXPONENTIAL=y
+CONFIG_AUTOSCAN_PERIODIC=y
+CONFIG_BACKEND=file
+CONFIG_BGSCAN_SIMPLE=y
+CONFIG_CTRL_IFACE=y
+CONFIG_CTRL_IFACE_BUS=y
+CONFIG_CTRL_IFACE_DBUS_INTRO=y
+CONFIG_CTRL_IFACE_DBUS_NEW=y
+CONFIG_DEBUG_FILE=y
CONFIG_DRIVER_NL80211=y
-
-# driver_nl80211.c requires libnl. If you are compiling it yourself
-# you may need to point hostapd to your version of libnl.
-#
-#CFLAGS += -I$<path to libnl include files>
-#LIBS += -L$<path to libnl library files>
-
-# Use libnl v2.0 (or 3.0) libraries.
-#CONFIG_LIBNL20=y
-
-# Use libnl 3.2 libraries (if this is selected, CONFIG_LIBNL20 is ignored)
-CONFIG_LIBNL32=y
-
-
-# Driver interface for FreeBSD net80211 layer (e.g., Atheros driver)
-#CONFIG_DRIVER_BSD=y
-#CFLAGS += -I/usr/local/include
-#LIBS += -L/usr/local/lib
-#LIBS_p += -L/usr/local/lib
-#LIBS_c += -L/usr/local/lib
-
-# Driver interface for Windows NDIS
-#CONFIG_DRIVER_NDIS=y
-#CFLAGS += -I/usr/include/w32api/ddk
-#LIBS += -L/usr/local/lib
-# For native build using mingw
-#CONFIG_NATIVE_WINDOWS=y
-# Additional directories for cross-compilation on Linux host for mingw target
-#CFLAGS += -I/opt/mingw/mingw32/include/ddk
-#LIBS += -L/opt/mingw/mingw32/lib
-#CC=mingw32-gcc
-# By default, driver_ndis uses WinPcap for low-level operations. This can be
-# replaced with the following option which replaces WinPcap calls with NDISUIO.
-# However, this requires that WZC is disabled (net stop wzcsvc) before starting
-# wpa_supplicant.
-# CONFIG_USE_NDISUIO=y
-
-# Driver interface for development testing
-#CONFIG_DRIVER_TEST=y
-
-# Driver interface for wired Ethernet drivers
+CONFIG_DRIVER_WEXT=y
CONFIG_DRIVER_WIRED=y
-
-# Driver interface for the Broadcom RoboSwitch family
-#CONFIG_DRIVER_ROBOSWITCH=y
-
-# Driver interface for no driver (e.g., WPS ER only)
-#CONFIG_DRIVER_NONE=y
-
-# Solaris libraries
-#LIBS += -lsocket -ldlpi -lnsl
-#LIBS_c += -lsocket
-
-# Enable IEEE 802.1X Supplicant (automatically included if any EAP method is
-# included)
-CONFIG_IEEE8021X_EAPOL=y
-
-# EAP-MD5
+CONFIG_EAP_FAST=y
+CONFIG_EAP_GTC=y
+CONFIG_EAP_LEAP=y
CONFIG_EAP_MD5=y
-
-# EAP-MSCHAPv2
CONFIG_EAP_MSCHAPV2=y
-
-# EAP-TLS
-CONFIG_EAP_TLS=y
-
-# EAL-PEAP
+CONFIG_EAP_OTP=y
CONFIG_EAP_PEAP=y
-
-# EAP-TTLS
+CONFIG_EAP_PWD=y
+CONFIG_EAP_TLS=y
CONFIG_EAP_TTLS=y
-
-# EAP-FAST
-# Note: If OpenSSL is used as the TLS library, OpenSSL 1.0 or newer is needed
-# for EAP-FAST support. Older OpenSSL releases would need to be patched, e.g.,
-# with openssl-0.9.8x-tls-extensions.patch, to add the needed functions.
-CONFIG_EAP_FAST=y
-
-# EAP-GTC
-CONFIG_EAP_GTC=y
-
-# EAP-OTP
-CONFIG_EAP_OTP=y
-
-# EAP-SIM (enable CONFIG_PCSC, if EAP-SIM is used)
-#CONFIG_EAP_SIM=y
-
-# EAP-PSK (experimental; this is _not_ needed for WPA-PSK)
-#CONFIG_EAP_PSK=y
-
-# EAP-pwd (secure authentication using only a password)
-#CONFIG_EAP_PWD=y
-
-# EAP-PAX
-#CONFIG_EAP_PAX=y
-
-# LEAP
-CONFIG_EAP_LEAP=y
-
-# EAP-AKA (enable CONFIG_PCSC, if EAP-AKA is used)
-#CONFIG_EAP_AKA=y
-
-# EAP-AKA' (enable CONFIG_PCSC, if EAP-AKA' is used).
-# This requires CONFIG_EAP_AKA to be enabled, too.
-#CONFIG_EAP_AKA_PRIME=y
-
-# Enable USIM simulator (Milenage) for EAP-AKA
-#CONFIG_USIM_SIMULATOR=y
-
-# EAP-SAKE
-#CONFIG_EAP_SAKE=y
-
-# EAP-GPSK
-#CONFIG_EAP_GPSK=y
-# Include support for optional SHA256 cipher suite in EAP-GPSK
-#CONFIG_EAP_GPSK_SHA256=y
-
-# EAP-TNC and related Trusted Network Connect support (experimental)
-#CONFIG_EAP_TNC=y
-
-# Wi-Fi Protected Setup (WPS)
-CONFIG_WPS=y
-# Enable WSC 2.0 support
-#CONFIG_WPS2=y
-# Enable WPS external registrar functionality
-#CONFIG_WPS_ER=y
-# Disable credentials for an open network by default when acting as a WPS
-# registrar.
-#CONFIG_WPS_REG_DISABLE_OPEN=y
-# Enable WPS support with NFC config method
-CONFIG_WPS_NFC=y
-
-# EAP-IKEv2
-#CONFIG_EAP_IKEV2=y
-
-# EAP-EKE
-#CONFIG_EAP_EKE=y
-
-# PKCS#12 (PFX) support (used to read private key and certificate file from
-# a file that usually has extension .p12 or .pfx)
-CONFIG_PKCS12=y
-
-# Smartcard support (i.e., private key on a smartcard), e.g., with openssl
-# engine.
-CONFIG_SMARTCARD=y
-
-# PC/SC interface for smartcards (USIM, GSM SIM)
-# Enable this if EAP-SIM or EAP-AKA is included
-#CONFIG_PCSC=y
-
-# Support HT overrides (disable HT/HT40, mask MCS rates, etc.)
+CONFIG_HS20=y
CONFIG_HT_OVERRIDES=y
-
-# Support VHT overrides (disable VHT, mask MCS rates, etc.)
-CONFIG_VHT_OVERRIDES=y
-
-# Development testing
-#CONFIG_EAPOL_TEST=y
-
-# Select control interface backend for external programs, e.g, wpa_cli:
-# unix = UNIX domain sockets (default for Linux/*BSD)
-# udp = UDP sockets using localhost (127.0.0.1)
-# named_pipe = Windows Named Pipe (default for Windows)
-# udp-remote = UDP sockets with remote access (only for tests systems/purpose)
-# y = use default (backwards compatibility)
-# If this option is commented out, control interface is not included in the
-# build.
-CONFIG_CTRL_IFACE=y
-
-# Include support for GNU Readline and History Libraries in wpa_cli.
-# When building a wpa_cli binary for distribution, please note that these
-# libraries are licensed under GPL and as such, BSD license may not apply for
-# the resulting binary.
-CONFIG_READLINE=y
-
-# Include internal line edit mode in wpa_cli. This can be used as a replacement
-# for GNU Readline to provide limited command line editing and history support.
-#CONFIG_WPA_CLI_EDIT=y
-
-# Remove debugging code that is printing out debug message to stdout.
-# This can be used to reduce the size of the wpa_supplicant considerably
-# if debugging code is not needed. The size reduction can be around 35%
-# (e.g., 90 kB).
-#CONFIG_NO_STDOUT_DEBUG=y
-
-# Remove WPA support, e.g., for wired-only IEEE 802.1X supplicant, to save
-# 35-50 kB in code size.
-#CONFIG_NO_WPA=y
-
-# Remove IEEE 802.11i/WPA-Personal ASCII passphrase support
-# This option can be used to reduce code size by removing support for
-# converting ASCII passphrases into PSK. If this functionality is removed, the
-# PSK can only be configured as the 64-octet hexstring (e.g., from
-# wpa_passphrase). This saves about 0.5 kB in code size.
-#CONFIG_NO_WPA_PASSPHRASE=y
-
-# Disable scan result processing (ap_mode=1) to save code size by about 1 kB.
-# This can be used if ap_scan=1 mode is never enabled.
-#CONFIG_NO_SCAN_PROCESSING=y
-
-# Select configuration backend:
-# file = text file (e.g., wpa_supplicant.conf; note: the configuration file
-# path is given on command line, not here; this option is just used to
-# select the backend that allows configuration files to be used)
-# winreg = Windows registry (see win_example.reg for an example)
-CONFIG_BACKEND=file
-
-# Remove configuration write functionality (i.e., to allow the configuration
-# file to be updated based on runtime configuration changes). The runtime
-# configuration can still be changed, the changes are just not going to be
-# persistent over restarts. This option can be used to reduce code size by
-# about 3.5 kB.
-#CONFIG_NO_CONFIG_WRITE=y
-
-# Remove support for configuration blobs to reduce code size by about 1.5 kB.
-#CONFIG_NO_CONFIG_BLOBS=y
-
-# Select program entry point implementation:
-# main = UNIX/POSIX like main() function (default)
-# main_winsvc = Windows service (read parameters from registry)
-# main_none = Very basic example (development use only)
-#CONFIG_MAIN=main
-
-# Select wrapper for operatins system and C library specific functions
-# unix = UNIX/POSIX like systems (default)
-# win32 = Windows systems
-# none = Empty template
-#CONFIG_OS=unix
-
-# Select event loop implementation
-# eloop = select() loop (default)
-# eloop_win = Windows events and WaitForMultipleObject() loop
-#CONFIG_ELOOP=eloop
-
-# Should we use poll instead of select? Select is used by default.
-#CONFIG_ELOOP_POLL=y
-
-# Select layer 2 packet implementation
-# linux = Linux packet socket (default)
-# pcap = libpcap/libdnet/WinPcap
-# freebsd = FreeBSD libpcap
-# winpcap = WinPcap with receive thread
-# ndis = Windows NDISUIO (note: requires CONFIG_USE_NDISUIO=y)
-# none = Empty template
-#CONFIG_L2_PACKET=linux
-
-# PeerKey handshake for Station to Station Link (IEEE 802.11e DLS)
-CONFIG_PEERKEY=y
-
-# IEEE 802.11w (management frame protection), also known as PMF
-# Driver support is also needed for IEEE 802.11w.
+CONFIG_IBSS_RSN=y
+CONFIG_IEEE80211AC=y
+CONFIG_IEEE80211N=y
+CONFIG_IEEE80211R=y
CONFIG_IEEE80211W=y
-
-# Select TLS implementation
-# openssl = OpenSSL (default)
-# gnutls = GnuTLS
-# internal = Internal TLSv1 implementation (experimental)
-# none = Empty template
-#CONFIG_TLS=openssl
-
-# TLS-based EAP methods require at least TLS v1.0. Newer version of TLS (v1.1)
-# can be enabled to get a stronger construction of messages when block ciphers
-# are used. It should be noted that some existing TLS v1.0 -based
-# implementation may not be compatible with TLS v1.1 message (ClientHello is
-# sent prior to negotiating which version will be used)
-#CONFIG_TLSV11=y
-
-# TLS-based EAP methods require at least TLS v1.0. Newer version of TLS (v1.2)
-# can be enabled to enable use of stronger crypto algorithms. It should be
-# noted that some existing TLS v1.0 -based implementation may not be compatible
-# with TLS v1.2 message (ClientHello is sent prior to negotiating which version
-# will be used)
-#CONFIG_TLSV12=y
-
-# If CONFIG_TLS=internal is used, additional library and include paths are
-# needed for LibTomMath. Alternatively, an integrated, minimal version of
-# LibTomMath can be used. See beginning of libtommath.c for details on benefits
-# and drawbacks of this option.
-#CONFIG_INTERNAL_LIBTOMMATH=y
-#ifndef CONFIG_INTERNAL_LIBTOMMATH
-#LTM_PATH=/usr/src/libtommath-0.39
-#CFLAGS += -I$(LTM_PATH)
-#LIBS += -L$(LTM_PATH)
-#LIBS_p += -L$(LTM_PATH)
-#endif
-# At the cost of about 4 kB of additional binary size, the internal LibTomMath
-# can be configured to include faster routines for exptmod, sqr, and div to
-# speed up DH and RSA calculation considerably
-#CONFIG_INTERNAL_LIBTOMMATH_FAST=y
-
-# Include NDIS event processing through WMI into wpa_supplicant/wpasvc.
-# This is only for Windows builds and requires WMI-related header files and
-# WbemUuid.Lib from Platform SDK even when building with MinGW.
-#CONFIG_NDIS_EVENTS_INTEGRATED=y
-#PLATFORMSDKLIB="/opt/Program Files/Microsoft Platform SDK/Lib"
-
-# Add support for old DBus control interface
-# (fi.epitest.hostap.WPASupplicant)
-CONFIG_CTRL_IFACE_DBUS=y
-
-# Add support for new DBus control interface
-# (fi.w1.hostap.wpa_supplicant1)
-CONFIG_CTRL_IFACE_DBUS_NEW=y
-
-# Add introspection support for new DBus control interface
-CONFIG_CTRL_IFACE_DBUS_INTRO=y
-
-# Add support for loading EAP methods dynamically as shared libraries.
-# When this option is enabled, each EAP method can be either included
-# statically (CONFIG_EAP_<method>=y) or dynamically (CONFIG_EAP_<method>=dyn).
-# Dynamic EAP methods are build as shared objects (eap_*.so) and they need to
-# be loaded in the beginning of the wpa_supplicant configuration file
-# (see load_dynamic_eap parameter in the example file) before being used in
-# the network blocks.
-#
-# Note that some shared parts of EAP methods are included in the main program
-# and in order to be able to use dynamic EAP methods using these parts, the
-# main program must have been build with the EAP method enabled (=y or =dyn).
-# This means that EAP-TLS/PEAP/TTLS/FAST cannot be added as dynamic libraries
-# unless at least one of them was included in the main build to force inclusion
-# of the shared code. Similarly, at least one of EAP-SIM/AKA must be included
-# in the main build to be able to load these methods dynamically.
-#
-# Please also note that using dynamic libraries will increase the total binary
-# size. Thus, it may not be the best option for targets that have limited
-# amount of memory/flash.
-#CONFIG_DYNAMIC_EAP_METHODS=y
-
-# IEEE Std 802.11r-2008 (Fast BSS Transition)
-#CONFIG_IEEE80211R=y
-
-# Add support for writing debug log to a file (/tmp/wpa_supplicant-log-#.txt)
-CONFIG_DEBUG_FILE=y
-
-# Send debug messages to syslog instead of stdout
-#CONFIG_DEBUG_SYSLOG=y
-# Set syslog facility for debug messages
-#CONFIG_DEBUG_SYSLOG_FACILITY=LOG_DAEMON
-
-# Add support for sending all debug messages (regardless of debug verbosity)
-# to the Linux kernel tracing facility. This helps debug the entire stack by
-# making it easy to record everything happening from the driver up into the
-# same file, e.g., using trace-cmd.
-#CONFIG_DEBUG_LINUX_TRACING=y
-
-# Add support for writing debug log to Android logcat instead of standard
-# output
-#CONFIG_ANDROID_LOG=y
-
-# Enable privilege separation (see README 'Privilege separation' for details)
-#CONFIG_PRIVSEP=y
-
-# Enable mitigation against certain attacks against TKIP by delaying Michael
-# MIC error reports by a random amount of time between 0 and 60 seconds
-#CONFIG_DELAYED_MIC_ERROR_REPORT=y
-
-# Enable tracing code for developer debugging
-# This tracks use of memory allocations and other registrations and reports
-# incorrect use with a backtrace of call (or allocation) location.
-#CONFIG_WPA_TRACE=y
-# For BSD, uncomment these.
-#LIBS += -lexecinfo
-#LIBS_p += -lexecinfo
-#LIBS_c += -lexecinfo
-
-# Use libbfd to get more details for developer debugging
-# This enables use of libbfd to get more detailed symbols for the backtraces
-# generated by CONFIG_WPA_TRACE=y.
-#CONFIG_WPA_TRACE_BFD=y
-# For BSD, uncomment these.
-#LIBS += -lbfd -liberty -lz
-#LIBS_p += -lbfd -liberty -lz
-#LIBS_c += -lbfd -liberty -lz
-
-# wpa_supplicant depends on strong random number generation being available
-# from the operating system. os_get_random() function is used to fetch random
-# data when needed, e.g., for key generation. On Linux and BSD systems, this
-# works by reading /dev/urandom. It should be noted that the OS entropy pool
-# needs to be properly initialized before wpa_supplicant is started. This is
-# important especially on embedded devices that do not have a hardware random
-# number generator and may by default start up with minimal entropy available
-# for random number generation.
-#
-# As a safety net, wpa_supplicant is by default trying to internally collect
-# additional entropy for generating random data to mix in with the data fetched
-# from the OS. This by itself is not considered to be very strong, but it may
-# help in cases where the system pool is not initialized properly. However, it
-# is very strongly recommended that the system pool is initialized with enough
-# entropy either by using hardware assisted random number generator or by
-# storing state over device reboots.
-#
-# wpa_supplicant can be configured to maintain its own entropy store over
-# restarts to enhance random number generation. This is not perfect, but it is
-# much more secure than using the same sequence of random numbers after every
-# reboot. This can be enabled with -e<entropy file> command line option. The
-# specified file needs to be readable and writable by wpa_supplicant.
-#
-# If the os_get_random() is known to provide strong random data (e.g., on
-# Linux/BSD, the board in question is known to have reliable source of random
-# data from /dev/urandom), the internal wpa_supplicant random pool can be
-# disabled. This will save some in binary size and CPU use. However, this
-# should only be considered for builds that are known to be used on devices
-# that meet the requirements described above.
+CONFIG_IEEE8021X_EAPOL=y
+CONFIG_INTERWORKING=y
+CONFIG_IPV6=y
+CONFIG_LIBNL32=y
CONFIG_NO_RANDOM_POOL=y
-
-# IEEE 802.11n (High Throughput) support (mainly for AP mode)
-CONFIG_IEEE80211N=y
-
-# IEEE 802.11ac (Very High Throughput) support (mainly for AP mode)
-# (depends on CONFIG_IEEE80211N)
-CONFIG_IEEE80211AC=y
-
-# Wireless Network Management (IEEE Std 802.11v-2011)
-# Note: This is experimental and not complete implementation.
-#CONFIG_WNM=y
-
-# Interworking (IEEE 802.11u)
-# This can be used to enable functionality to improve interworking with
-# external networks (GAS/ANQP to learn more about the networks and network
-# selection based on available credentials).
-#CONFIG_INTERWORKING=y
-
-# Hotspot 2.0
-#CONFIG_HS20=y
-
-# Disable roaming in wpa_supplicant
-#CONFIG_NO_ROAMING=y
-
-# AP mode operations with wpa_supplicant
-# This can be used for controlling AP mode operations with wpa_supplicant. It
-# should be noted that this is mainly aimed at simple cases like
-# WPA2-Personal while more complex configurations like WPA2-Enterprise with an
-# external RADIUS server can be supported with hostapd.
-CONFIG_AP=y
-
-# P2P (Wi-Fi Direct)
-# This can be used to enable P2P support in wpa_supplicant. See README-P2P for
-# more information on P2P operations.
CONFIG_P2P=y
-
-# Enable TDLS support
+CONFIG_PEERKEY=y
+CONFIG_PKCS12=y
+CONFIG_READLINE=y
+CONFIG_SMARTCARD=y
CONFIG_TDLS=y
-
-# Wi-Fi Direct
-# This can be used to enable Wi-Fi Direct extensions for P2P using an external
-# program to control the additional information exchanges in the messages.
+CONFIG_VHT_OVERRIDES=y
CONFIG_WIFI_DISPLAY=y
-
-# Autoscan
-# This can be used to enable automatic scan support in wpa_supplicant.
-# See wpa_supplicant.conf for more information on autoscan usage.
-#
-# Enabling directly a module will enable autoscan support.
-# For exponential module:
-CONFIG_AUTOSCAN_EXPONENTIAL=y
-# For periodic module:
-CONFIG_AUTOSCAN_PERIODIC=y
-
-# Password (and passphrase, etc.) backend for external storage
-# These optional mechanisms can be used to add support for storing passwords
-# and other secrets in external (to wpa_supplicant) location. This allows, for
-# example, operating system specific key storage to be used
-#
-# External password backend for testing purposes (developer use)
-#CONFIG_EXT_PASSWORD_TEST=y
-
-# Options that are present not in defconfig:
-
-# RSN IBSS/AdHoc support
-CONFIG_IBSS_RSN=y
-
-# Simple background scan
-CONFIG_BGSCAN_SIMPLE=y
+CONFIG_WPS=y
+CONFIG_WPS_NFC=y
+CONFIG_TLS_DEFAULT_CIPHERS="DEFAULT:!EXP:!LOW:3DES"
diff --git a/abs/core/wpa_supplicant/wpa_supplicant.install b/abs/core/wpa_supplicant/wpa_supplicant.install
new file mode 100644
index 0000000..3e4bcd3
--- /dev/null
+++ b/abs/core/wpa_supplicant/wpa_supplicant.install
@@ -0,0 +1,7 @@
+post_upgrade() {
+ if [[ $(vercmp "$2" '1:2.6-3') -lt 0 ]]; then
+ echo ':: The /etc/wpa_supplicant/wpa_supplicant.conf is file no longer managed by pacman'
+ echo ' and if it was modified, it has been renamed to wpa_supplicant.conf.pacsave.'
+ echo ' Move it to the original location if needed.'
+ fi
+}
diff --git a/abs/core/xf86-video-ati/PKGBUILD b/abs/core/xf86-video-ati/PKGBUILD
index dd50efb..2492b3e 100644
--- a/abs/core/xf86-video-ati/PKGBUILD
+++ b/abs/core/xf86-video-ati/PKGBUILD
@@ -3,11 +3,11 @@
# Contributor: Alexander Baldeck <alexander@archlinux.org>
pkgname=xf86-video-ati
-pkgver=7.9.0
-epoch=1
+pkgver=18.0.1
pkgrel=1
+epoch=1
pkgdesc="X.org ati video driver"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="https://xorg.freedesktop.org/"
license=('custom')
depends=('libsystemd' 'mesa')
@@ -15,15 +15,21 @@ makedepends=('xorg-server-devel' 'systemd' 'X-ABI-VIDEODRV_VERSION=23')
conflicts=('xorg-server<1.19.0' 'X-ABI-VIDEODRV_VERSION<23' 'X-ABI-VIDEODRV_VERSION>=24')
groups=('xorg-drivers')
source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2{,.sig})
-sha256sums=('3cad872e6330afb1707da11e4e959e6887ebe5bcd81854b4d2e496c52c059875'
+sha512sums=('b468a78503a596bbf71a1b91b231ce1fa32908f619ff2dfe249352d046696a3641f2a9ff065e32545fff77100134b4b237591215e78ef885b6509d6b16112d14'
'SKIP')
validpgpkeys=('B09FAF35BE914521980951145A81AF8E6ADBB200') # Michel Daenzer <michel@daenzer.net>
build() {
cd ${pkgname}-${pkgver}
- ./configure --prefix=/usr \
- --with-glamor
+ # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf
+ # With them, module fail to load with undefined symbol.
+ # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845
+ export CFLAGS=${CFLAGS/-fno-plt}
+ export CXXFLAGS=${CXXFLAGS/-fno-plt}
+ export LDFLAGS=${LDFLAGS/,-z,now}
+
+ ./configure --prefix=/usr
make
}
diff --git a/abs/core/xf86-video-intel/PKGBUILD b/abs/core/xf86-video-intel/PKGBUILD
index 3093faa..7808c73 100644
--- a/abs/core/xf86-video-intel/PKGBUILD
+++ b/abs/core/xf86-video-intel/PKGBUILD
@@ -3,8 +3,8 @@
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=xf86-video-intel
-_commit=af6d8e9e8f546e5cba60e3a62765c2dbd0328e83 # master
-pkgver=2.99.917+802+gaf6d8e9
+_commit=d7dfab62a9853b44bbcd67dac08391d8e5114c97 # master
+pkgver=2.99.917+829+gd7dfab62
pkgrel=1
epoch=1
arch=(x86_64)
@@ -17,7 +17,7 @@ makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=23' 'libx11' 'libxrende
# additional deps for intel-virtual-output
'libxrandr' 'libxinerama' 'libxcursor' 'libxtst' 'libxss'
# additional for git snapshot
- 'git')
+ 'git') # 'meson' 'valgrind')
optdepends=('libxrandr: for intel-virtual-output'
'libxinerama: for intel-virtual-output'
'libxcursor: for intel-virtual-output'
@@ -30,6 +30,7 @@ conflicts=('xorg-server<1.19' 'X-ABI-VIDEODRV_VERSION<23' 'X-ABI-VIDEODRV_VERSIO
groups=('xorg-drivers')
source=("git+https://anongit.freedesktop.org/git/xorg/driver/xf86-video-intel#commit=$_commit")
sha256sums=('SKIP')
+#options=('!makeflags')
pkgver() {
cd $pkgname
@@ -39,6 +40,9 @@ pkgver() {
prepare() {
cd $pkgname
NOCONFIGURE=1 ./autogen.sh
+
+
+# mkdir build
}
build() {
@@ -55,11 +59,16 @@ build() {
--libexecdir=/usr/lib \
--with-default-dri=3
make
+# cd build
+# arch-meson $pkgname build \
+# -Dwith-default-dri=3
+# ninja -C build
}
check() {
cd $pkgname
make check
+# meson test -C build
}
package() {
@@ -67,6 +76,8 @@ package() {
make DESTDIR="${pkgdir}" install
+# DESTDIR="$pkgdir" ninja -C build install
+
install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/"
}
diff --git a/abs/core/xf86-video-vesa/PKGBUILD b/abs/core/xf86-video-vesa/PKGBUILD
index b236c9e..c4663e4 100644
--- a/abs/core/xf86-video-vesa/PKGBUILD
+++ b/abs/core/xf86-video-vesa/PKGBUILD
@@ -2,10 +2,10 @@
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=xf86-video-vesa
-pkgver=2.3.4
-pkgrel=3
+pkgver=2.4.0
+pkgrel=1
pkgdesc="X.org vesa video driver"
-arch=(i686 x86_64)
+arch=(x86_64)
license=('custom')
url="https://xorg.freedesktop.org/"
depends=('glibc')
@@ -14,9 +14,9 @@ conflicts=('xorg-server<1.19' 'X-ABI-VIDEODRV_VERSION<23' 'X-ABI-VIDEODRV_VERSIO
groups=('xorg-drivers' 'xorg')
source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2{,.sig}
revert-kernelcheck.patch)
-sha256sums=('7bddf4d879dd6f67088ecb203a31e12334aab980174bd0909930a21f32e251c1'
+sha512sums=('4af5c0a7fd64eba503980198cf510688dff2f33482ceac446455d97255dcc828613387ac57828eb6dce080cb15a8644a2b2e278bf356705fdeaea873ab07c2de'
'SKIP'
- 'ef591a342cea65f1b08e84771ae0de84395c98ac8a71739dbf5c0a7f7a36543c')
+ '2357f9b30732321c774073c3e233d16ebff29aab31bcebf7c6481bd2187554e85ec8b9cd375eaa836b433dfaba4d9e9cea1dcf3659803a388ceb6699ed905923')
validpgpkeys=('DD38563A8A8224537D1F90E45B8A2D50A0ECD0D3') # "Adam Jackson <ajax@nwnk.net>"
prepare() {
@@ -26,6 +26,14 @@ prepare() {
build() {
cd ${pkgname}-${pkgver}
+
+ # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf
+ # With them, module fail to load with undefined symbol.
+ # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845
+ export CFLAGS=${CFLAGS/-fno-plt}
+ export CXXFLAGS=${CXXFLAGS/-fno-plt}
+ export LDFLAGS=${LDFLAGS/,-z,now}
+
./configure --prefix=/usr
make
}
diff --git a/abs/core/xmltv/PKGBUILD b/abs/core/xmltv/PKGBUILD
index 144d2ab..b9cf6a0 100644
--- a/abs/core/xmltv/PKGBUILD
+++ b/abs/core/xmltv/PKGBUILD
@@ -1,30 +1,28 @@
-# Maintainer: K. Hampf <k.hampf@gmail.com>
-# Submitter: Stefan Husmann <stefan-husmann@t-online.de>
-# Contributor: Allan McRae <allan@archlinux.org>
-# Contributor: Andrew Simmons <andrew.simmons@gmail.com>
-
pkgname=xmltv
-pkgver=0.5.69
-pkgrel=1
+pkgver=0.5.70
+pkgrel=180827
+_pkgver="xmltv"
pkgdesc="Set of utilities to download tv listings and format them in xml"
arch=('any')
url="http://xmltv.org/wiki/"
license=('GPL')
-depends=('perl-archive-zip' 'perl-datetime' 'perl-date-manip'
- 'perl-file-slurp' 'perl-datetime-format-strptime' 'perl-datetime-locale'
+depends=('perl-archive-zip' 'perl-cgi' 'perl-datetime' 'perl-date-manip'
+ 'perl-file-homedir' 'perl-file-slurp' 'perl-file-which'
+ 'perl-datetime-format-iso8601' 'perl-datetime-format-sqlite'
+ 'perl-datetime-format-strptime' 'perl-datetime-locale' 'perl-dbd-sqlite'
'perl-http-cache-transparent' 'perl-http-response-encoding'
- 'perl-html-tree' 'perl-io-stringy' 'perl-lingua-en-numbers-ordinate'
- 'perl-lingua-preferred' 'perl-soap-lite' 'perl-term-progressbar'
- 'perl-term-readkey' 'perl-timedate' 'perl-tk-tablematrix'
- 'perl-unicode-string' 'perl-unicode-utf8simple' 'perl-www-mechanize'
- 'perl-xml-dom' 'perl-xml-libxml' 'perl-xml-libxslt' 'perl-xml-simple'
- 'perl-xml-twig' 'perl-xml-writer' 'perl-parse-recdescent' 'perl-cgi'
- 'perl-xml-treepp' 'perl-datetime-format-iso8601' 'perl-json')
-source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2")
-md5sums=('1b0128f97755e7769177d7930e03ad74')
+ 'perl-html-tree' 'perl-io-stringy' 'perl-json'
+ 'perl-lingua-en-numbers-ordinate' 'perl-lingua-preferred'
+ 'perl-list-moreutils' 'perl-lwp-protocol-https'
+ 'perl-lwp-useragent-determined' 'perl-parse-recdescent' 'perl-soap-lite'
+ 'perl-term-progressbar' 'perl-term-readkey' 'perl-timedate'
+ 'perl-tk-tablematrix' 'perl-unicode-string' 'perl-unicode-utf8simple'
+ 'perl-www-mechanize' 'perl-xml-dom' 'perl-xml-libxml' 'perl-xml-libxslt'
+ 'perl-xml-simple' 'perl-xml-twig' 'perl-xml-writer' 'perl-xml-treepp')
+source=("git+https://github.com/XMLTV/xmltv.git")
build() {
- cd "$pkgname-$pkgver"
+ cd "$_pkgver"
unset PERL5LIB PERL_MM_OPT PERL_LOCAL_LIB_ROOT
export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL=--skipdeps
yes | /usr/bin/perl Makefile.PL PREFIX=/usr INSTALLDIRS=vendor
@@ -32,14 +30,14 @@ build() {
}
check() {
- cd "$pkgname-$pkgver"
+ cd "$_pkgver"
unset PERL5LIB PERL_MM_OPT PERL_LOCAL_LIB_ROOT
export PERL_MM_USE_DEFAULT=1
make test
}
package() {
- cd "$pkgname-$pkgver"
+ cd "$_pkgver"
unset PERL5LIB PERL_MM_OPT PERL_LOCAL_LIB_ROOT
make install DESTDIR="$pkgdir"
@@ -47,3 +45,16 @@ package() {
find ${pkgdir} -name perllocal.pod -delete
find ${pkgdir} -name .packlist -delete
}
+
+prepare() {
+ # To build corectly with Perl 5.26
+ # see https://sourceforge.net/p/xmltv/mailman/message/36001436/
+ # and https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=865045
+ sed "s/use POSIX 'tmpnam';//" -i $_pkgver/filter/tv_to_latex
+ sed "s/use POSIX 'tmpnam';//" -i $_pkgver/filter/tv_to_text
+ sed "s/\(lib\/set_share_dir.pl';\)/.\/\1/" -i $_pkgver/grab/it/tv_grab_it.PL
+ sed "s/\(filter\/Grep.pm';\)/.\/\1/" -i $_pkgver/filter/tv_grep.PL
+ sed "s/\(lib\/XMLTV.pm.in';\)/.\/\1/" -i $_pkgver/lib/XMLTV.pm.PL
+ sed "s/\(lib\/Ask\/Term.pm';\)/.\/\1/" -i $_pkgver/Makefile.PL
+}
+md5sums=('SKIP')
diff --git a/abs/core/xmltv/__changelog b/abs/core/xmltv/__changelog
new file mode 100644
index 0000000..99c27e7
--- /dev/null
+++ b/abs/core/xmltv/__changelog
@@ -0,0 +1 @@
+PKGBUILD: change to nightly build to pick up tv_grab_zz_sdjson_sqlite and add deps needed
diff --git a/abs/core/xorg-server/PKGBUILD b/abs/core/xorg-server/PKGBUILD
index 4f53332..90b6a88 100644
--- a/abs/core/xorg-server/PKGBUILD
+++ b/abs/core/xorg-server/PKGBUILD
@@ -4,9 +4,9 @@
pkgbase=xorg-server
pkgname=('xorg-server' 'xorg-server-xephyr' 'xorg-server-xdmx' 'xorg-server-xvfb' 'xorg-server-xnest' 'xorg-server-xwayland' 'xorg-server-common' 'xorg-server-devel')
-pkgver=1.19.3
+pkgver=1.19.6+13+gd0d1a694f
pkgrel=1
-arch=('i686' 'x86_64')
+arch=('x86_64')
license=('custom')
groups=('xorg')
url="http://xorg.freedesktop.org"
@@ -16,8 +16,10 @@ makedepends=('pixman' 'libx11' 'mesa' 'mesa-libgl' 'xf86driproto' 'xcmiscproto'
'xf86dgaproto' 'libxmu' 'libxrender' 'libxi' 'dmxproto' 'libxaw' 'libdmx' 'libxtst' 'libxres'
'xorg-xkbcomp' 'xorg-util-macros' 'xorg-font-util' 'glproto' 'dri2proto' 'libgcrypt' 'libepoxy'
'xcb-util' 'xcb-util-image' 'xcb-util-renderutil' 'xcb-util-wm' 'xcb-util-keysyms' 'dri3proto'
- 'libxshmfence' 'libunwind' 'systemd' 'wayland-protocols')
-source=(https://xorg.freedesktop.org/releases/individual/xserver/${pkgbase}-${pkgver}.tar.bz2{,.sig}
+ 'libxshmfence' 'libunwind' 'systemd' 'wayland-protocols' 'git')
+_commit=d0d1a694f967af770fba0d36043fd5218ff20984 # branch 1.19
+#source=(https://xorg.freedesktop.org/releases/individual/xserver/${pkgbase}-${pkgver}.tar.bz2{,.sig}
+source=("git+https://anongit.freedesktop.org/git/xorg/xserver.git#commit=$_commit"
Xwrapper.config
nvidia-add-modulepath-support.patch
xserver-autobind-hotplug.patch
@@ -25,10 +27,17 @@ source=(https://xorg.freedesktop.org/releases/individual/xserver/${pkgbase}-${pk
xvfb-run.1)
validpgpkeys=('7B27A3F1A6E18CD9588B4AE8310180050905E40C'
'C383B778255613DFDB409D91DB221A6900000011'
- 'DD38563A8A8224537D1F90E45B8A2D50A0ECD0D3')
+ 'DD38563A8A8224537D1F90E45B8A2D50A0ECD0D3'
+ '995ED5C8A6138EB0961F18474C09DD83CAAA50B2')
+
+pkgver() {
+ cd xserver
+ git describe --tags | sed 's/^xorg-server-//;s/_/./g;s/-/+/g'
+}
prepare() {
- cd "${pkgbase}-${pkgver}"
+ cd xserver
+ #cd "${pkgbase}-${pkgver}"
# merged upstream in trunk
patch -Np1 -i ../nvidia-add-modulepath-support.patch
@@ -39,7 +48,15 @@ prepare() {
}
build() {
- cd "${pkgbase}-${pkgver}"
+ # Since pacman 5.0.2-2, hardened flags are now enabled in makepkg.conf
+ # With them, module fail to load with undefined symbol.
+ # See https://bugs.archlinux.org/task/55102 / https://bugs.archlinux.org/task/54845
+ export CFLAGS=${CFLAGS/-fno-plt}
+ export CXXFLAGS=${CXXFLAGS/-fno-plt}
+ export LDFLAGS=${LDFLAGS/,-z,now}
+
+ cd xserver
+ #cd "${pkgbase}-${pkgver}"
./configure --prefix=/usr \
--enable-ipv6 \
--enable-dri \
@@ -88,9 +105,10 @@ build() {
package_xorg-server-common() {
pkgdesc="Xorg server common files"
- depends=(xkeyboard-config xorg-xkbcomp xorg-setxkbmap xorg-fonts-misc)
+ depends=(xkeyboard-config xorg-xkbcomp xorg-setxkbmap)
- cd "${pkgbase}-${pkgver}"
+ cd xserver
+ #cd "${pkgbase}-${pkgver}"
install -m755 -d "${pkgdir}/usr/share/licenses/xorg-server-common"
install -m644 COPYING "${pkgdir}/usr/share/licenses/xorg-server-common"
@@ -115,7 +133,8 @@ package_xorg-server() {
replaces=('glamor-egl' 'xf86-video-modesetting')
install=xorg-server.install
- cd "${pkgbase}-${pkgver}"
+ cd xserver
+ #cd "${pkgbase}-${pkgver}"
make DESTDIR="${pkgdir}" install
# distro specific files must be installed in /usr/share/X11/xorg.conf.d
@@ -142,7 +161,8 @@ package_xorg-server-xephyr() {
depends=(libxfont2 libgl libepoxy libunwind libsystemd libxv pixman xorg-server-common xcb-util-image
xcb-util-renderutil xcb-util-wm xcb-util-keysyms)
- cd "${pkgbase}-${pkgver}/hw/kdrive"
+ cd xserver/hw/kdrive
+ #cd "${pkgbase}-${pkgver}/hw/kdrive"
make DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/licenses/xorg-server-xephyr"
@@ -151,9 +171,10 @@ package_xorg-server-xephyr() {
package_xorg-server-xvfb() {
pkgdesc="Virtual framebuffer X server"
- depends=(libxfont2 libunwind libsystemd pixman xorg-server-common xorg-xauth libgl)
+ depends=(libxfont2 libunwind libsystemd pixman xorg-server-common xorg-xauth libgl which)
- cd "${pkgbase}-${pkgver}/hw/vfb"
+ cd xserver/hw/vfb
+ #cd "${pkgbase}-${pkgver}/hw/vfb"
make DESTDIR="${pkgdir}" install
install -m755 "${srcdir}/xvfb-run" "${pkgdir}/usr/bin/"
@@ -167,7 +188,8 @@ package_xorg-server-xnest() {
pkgdesc="A nested X server that runs as an X application"
depends=(libxfont2 libxext libunwind pixman xorg-server-common libsystemd)
- cd "${pkgbase}-${pkgver}/hw/xnest"
+ cd xserver/hw/xnest
+ #cd "${pkgbase}-${pkgver}/hw/xnest"
make DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/licenses/xorg-server-xnest"
@@ -178,7 +200,8 @@ package_xorg-server-xdmx() {
pkgdesc="Distributed Multihead X Server and utilities"
depends=(libxfont2 libxi libxaw libxrender libdmx libxfixes libunwind pixman xorg-server-common)
- cd "${pkgbase}-${pkgver}/hw/dmx"
+ cd xserver/hw/dmx
+ #cd "${pkgbase}-${pkgver}/hw/dmx"
make DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/licenses/xorg-server-xdmx"
@@ -189,7 +212,8 @@ package_xorg-server-xwayland() {
pkgdesc="run X clients under wayland"
depends=(libxfont2 libepoxy libunwind libsystemd libgl pixman xorg-server-common)
- cd "${pkgbase}-${pkgver}/hw/xwayland"
+ cd xserver/hw/xwayland
+ #cd "${pkgbase}-${pkgver}/hw/xwayland"
make DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/licenses/xorg-server-xwayland"
@@ -206,7 +230,8 @@ package_xorg-server-devel() {
# not technically required but almost every Xorg pkg needs it to build
xorg-util-macros)
- cd "${pkgbase}-${pkgver}"
+ cd xserver
+ #cd "${pkgbase}-${pkgver}"
make DESTDIR="${pkgdir}" install
rm -rf "${pkgdir}/usr/bin"
@@ -220,8 +245,7 @@ package_xorg-server-devel() {
install -m755 -d "${pkgdir}/usr/share/licenses/xorg-server-devel"
ln -sf ../xorg-server-common/COPYING "${pkgdir}/usr/share/licenses/xorg-server-devel/COPYING"
}
-md5sums=('015d2fc4b9f2bfe7a626edb63a62c65e'
- 'SKIP'
+md5sums=('SKIP'
'e3d31449c79ce49a748a678463ea3f20'
'75a60eb4b99b64cda18614e9c085a2d3'
'ec10c9be9a7f1b352393684b658976d2'
diff --git a/abs/core/xterm/PKGBUILD b/abs/core/xterm/PKGBUILD
index 29bc524..45e3025 100644
--- a/abs/core/xterm/PKGBUILD
+++ b/abs/core/xterm/PKGBUILD
@@ -3,18 +3,18 @@
# Contributor: Alexander Baldeck <alexander@archlinux.org>
pkgname=xterm
-pkgver=326
+pkgver=331
pkgrel=1
pkgdesc="X Terminal Emulator"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://invisible-island.net/xterm/"
license=('custom')
depends=('libxft' 'libxaw' 'ncurses' 'xorg-luit' 'xbitmaps' 'libutempter' 'libxkbfile')
-source=(ftp://invisible-island.net/${pkgname}/${pkgname}-${pkgver}.tgz{,.asc}
+source=(ftp://ftp.invisible-island.net/${pkgname}/${pkgname}-${pkgver}.tgz{,.asc}
LICENSE)
-md5sums=('93914da76a279bbbd8f9a26639860241'
- 'SKIP'
- '10ecc3f8ee91e3189863a172f68282d2')
+sha256sums=('9ae856a30fd93046be93952a6898ba47f6f88ad6a988a7c949c4c80d5199ef10'
+ 'SKIP'
+ '9929684f5e28eb5e49c5a7f924dec9c61e0b909b3debb92d247f73f222e09615')
validpgpkeys=('C52048C0C0748FEE227D47A2702353E0F7E48EDB') # "Thomas Dickey <dickey@invisible-island.net>"
build() {
@@ -45,6 +45,7 @@ build() {
--enable-narrowproto \
--enable-exec-xterm \
--enable-sixel-graphics \
+ --enable-regis-graphics \
--with-tty-group=tty \
--with-utempter
make
diff --git a/abs/core/xymon/PKGBUILD b/abs/core/xymon/PKGBUILD
index 759241b..76bf18d 100755
--- a/abs/core/xymon/PKGBUILD
+++ b/abs/core/xymon/PKGBUILD
@@ -1,7 +1,7 @@
pkgbase=xymon
pkgname=('xymonserver' 'xymonclient')
pkgver=4.3.28
-pkgrel=5
+pkgrel=7
pkgdesc="Xymon is a system for monitoring of hosts and networks"
license=('GPL')
arch=('i686' 'x86_64')
@@ -23,6 +23,7 @@ source=("https://downloads.sourceforge.net/project/xymon/Xymon/$pkgver/$pkgbase-
'hobbitstorage.py'
'hosts.cfg.patch'
'log_list.sh'
+ 'logfetch.c.patch'
'led_themes.tar.gz'
'login_notify.sh'
'logrotate-server.xymon'
@@ -43,6 +44,7 @@ install=xymon-server.install
build() {
cd ${srcdir}/xymon-$pkgver
+ patch -p2 < $srcdir/logfetch.c.patch
ENABLESSL=n \
ENABLELDAP=n \
ENABLELDAPSSL=n \
@@ -194,15 +196,16 @@ md5sums=('14501ab2cfce9a332c1590543dfcbd0f'
'b2f98ac0df013332deedc1efae0a270d'
'606f535a49f32b35802ed9d46bd7d068'
'98e9242ae346f729b14cb195786571f2'
+ '7d8689cc88ccca5bf7b2b454a909db72'
'c7178bbf384bbe86c318b60fef6faf10'
'22d4c9065fd959efe82f121dcb511305'
'b4e8641e97e6b689dbc634af785e6799'
'e2844513e2c92e8b5084818f3b2a478d'
'a19c8c546dcd95049476bb19f9d4e3ae'
'c60b0d59bb39505ee3d62c6dd65429c5'
- '6452d891d88bb46d07bcf7790a523ad0'
- 'b49e7de696c1a0678ad198bab926266c'
- 'e071c387deac6b896b20db19903b7794'
+ 'd4710f9aaa5aef0c9d0a26fa7d94450f'
+ 'c4e1575db32c633a531df9514d83aa82'
+ '281a5031824c8d98b4e541fed6da09ed'
'1a00c0b9b9b1a37f1513fa8489ce9d31'
'3d1f311f0142f41d763276302a7ce396'
'c75c434ba9c39a914e7693004b580554'
diff --git a/abs/core/xymon/logfetch.c.patch b/abs/core/xymon/logfetch.c.patch
new file mode 100644
index 0000000..bc61f00
--- /dev/null
+++ b/abs/core/xymon/logfetch.c.patch
@@ -0,0 +1,10 @@
+--- src/xymon-4.3.28/client/logfetch.c.orig 2018-04-17 23:05:45.429619941 +0000
++++ src/xymon-4.3.28/client/logfetch.c 2018-04-17 23:07:34.895372581 +0000
+@@ -18,6 +18,7 @@
+ #include <sys/stat.h>
+ #include <sys/time.h>
+ #include <stdio.h>
++#include <stdint.h>
+ #include <string.h>
+ #include <unistd.h>
+ #include <stdlib.h>
diff --git a/abs/core/xymon/xymon-gputemp.sh b/abs/core/xymon/xymon-gputemp.sh
index f8af649..db76f78 100644
--- a/abs/core/xymon/xymon-gputemp.sh
+++ b/abs/core/xymon/xymon-gputemp.sh
@@ -17,7 +17,10 @@ if ! test -x /usr/bin/nvidia-smi ; then
fi
# Use NVidia SMI to determine the model
-gpu_model=`nvidia-smi -L`
+#gpu_model=`nvidia-smi -L`
+# Use lspci to determine the model
+gpu_model=`lspci | grep -i vga | grep -vi non-vga| sort -r | head -n 1 | cut -d: -f3`
+
if test -z "$gpu_model" ; then
$XYMON $XYMSRV "status $MACHINE.gputemp $gpu_color `date`
Couldn't find nVidia card
@@ -29,24 +32,27 @@ if test -z "$gpu_model" ; then
fi
# Determine GPU maximum temperature based on GPU model
-if test $(echo $gpu_model | grep -c -i 'GeForce 210') -eq 0 ; then
+if test $(echo $gpu_model | grep -c -i 'GeForce 210') -eq 1 ; then
# GT 210 maximum GPU temperature is 105 C
max_temp=105
-elif test $(echo $gpu_model | grep -c -i 'GeForce 220') -eq 0 ; then
+elif test $(echo $gpu_model | grep -c -i 'GeForce 220') -eq 1 ; then
# GT 220 maximum GPU temperature is 105 C
max_temp=105
-elif test $(echo $gpu_model | grep -c -i 'GeForce 240') -eq 0 ; then
+elif test $(echo $gpu_model | grep -c -i 'GeForce 240') -eq 1 ; then
# GT 240 maximum GPU temperature is 105 C
max_temp=105
-elif test $(echo $gpu_model | grep -c -i 'GeForce 430') -eq 0 ; then
+elif test $(echo $gpu_model | grep -c -i 'GeForce 430') -eq 1 ; then
# GT 430 maximum GPU temperature is 98 C
max_temp=98
-elif test $(echo $gpu_model | grep -c -i 'GeForce GTS 450') -eq 0 ; then
+elif test $(echo $gpu_model | grep -c -i 'GeForce GTS 450') -eq 1 ; then
# GTS 450 maximum GPU temperature is 100 C
max_temp=100
-elif test $(echo $gpu_model | grep -c -i 'GeForce GT 520') -eq 0 ; then
+elif test $(echo $gpu_model | grep -c -i 'GeForce GT 520') -eq 1 ; then
# GT 520 maximum GPU temperature is 102 C
max_temp=102
+elif test $(echo $gpu_model | grep -c -i 'GeForce GT 710') -eq 1 ; then
+ # GT 710 maximum GPU temperature is 95 C
+ max_temp=95
else
# Assume 100 is the maximum
max_temp=100
@@ -72,8 +78,8 @@ if test -x /usr/bin/nvidia-smi ; then
#`cat /tmp/gputemp.txt`
#"
$XYMON $XYMSRV "status $MACHINE.gputemp $gpu_color `date`
- GPU model is $gpu_model
- max temp is $max_temp
+ GPU Model -$gpu_model
+ GPU Max Temp (C) - $max_temp
GPUTEMP : $gpu_temp
"
diff --git a/abs/core/xymon/xymon-hddtemp.sh b/abs/core/xymon/xymon-hddtemp.sh
index 7084abc..0369b4a 100755
--- a/abs/core/xymon/xymon-hddtemp.sh
+++ b/abs/core/xymon/xymon-hddtemp.sh
@@ -2,7 +2,7 @@
# NOTE: Must be run as root, so you probably need to setup sudo for this.
-ls /dev/disk/by-id/* | grep -ve '-part' -ve '/wwn-' |
+ls /dev/disk/by-id/* | grep -ve '-part' -ve '/wwn-' -ve '/md' |
while read DISK
do
DISKDEV=`ls -l $DISK | awk -F/ '{print $NF}'`
@@ -17,7 +17,11 @@ do
#check if device is mounted
if ! mount | grep -q /dev/$DISKDEV
then
- continue
+ # check if device is used by mdadm
+ if ! cat /proc/mdstat | grep -q $DISKDEV
+ then
+ continue
+ fi
fi
#check if SMART is disabled and enable
diff --git a/abs/core/xymon/xymon-smart.sh b/abs/core/xymon/xymon-smart.sh
index 7c10db5..8998778 100755
--- a/abs/core/xymon/xymon-smart.sh
+++ b/abs/core/xymon/xymon-smart.sh
@@ -4,7 +4,7 @@
if test -f /tmp/dres; then rm -f /tmp/dres; fi
-ls /dev/disk/by-id/* | grep -ve '-part' -ve '/wwn-' |
+ls /dev/disk/by-id/* | grep -ve '-part' -ve '/wwn-' -ve '/md-' |
while read DISK
do
DISKDEV=`ls -l $DISK | awk -F/ '{print $NF}'`
@@ -18,7 +18,11 @@ do
#check if device is mounted
if ! mount | grep -q /dev/$DISKDEV
then
- continue
+ # check if device is used by mdadm
+ if ! cat /proc/mdstat | grep -q $DISKDEV
+ then
+ continue
+ fi
fi
DRES=`sudo /usr/bin/smartctl -H -n standby $DISK`
diff --git a/abs/core/zlib/PKGBUILD b/abs/core/zlib/PKGBUILD
index 7951423..719fff5 100644
--- a/abs/core/zlib/PKGBUILD
+++ b/abs/core/zlib/PKGBUILD
@@ -1,17 +1,20 @@
# $Id$
# Maintainer: Pierre Schmitz <pierre@archlinux.de>
-pkgname=zlib
-pkgver=1.2.8
-pkgrel=3
-pkgdesc='Compression library implementing the deflate compression method found in gzip and PKZIP'
-arch=('i686' 'x86_64')
+pkgbase=zlib
+pkgname=(zlib minizip)
+epoch=1
+pkgver=1.2.11
+pkgrel=2
+arch=('x86_64')
license=('custom')
-url="http://www.zlib.net/"
+url="https://www.zlib.net/"
depends=('glibc')
options=('staticlibs') # needed by binutils testsuite
-source=("http://zlib.net/current/zlib-${pkgver}.tar.gz")
-md5sums=('44d667c142d7cda120332623eab69f40')
+source=("https://zlib.net/zlib-${pkgver}.tar.gz"{,.asc})
+md5sums=('1c9f62f0778697a09d36121ead88e08e'
+ 'SKIP')
+validpgpkeys=('5ED46A6721D365587791E2AA783FCD8E58BCAFBA')
prepare() {
cd ${srcdir}/zlib-$pkgver
@@ -22,15 +25,36 @@ build() {
cd ${srcdir}/zlib-$pkgver
./configure --prefix=/usr
make
+
+ cd contrib/minizip
+ cp Makefile Makefile.orig
+ cp ../README.contrib readme.txt
+ autoreconf --install
+ ./configure --prefix=/usr --enable-static=no
+ make
}
check() {
cd ${srcdir}/zlib-$pkgver
make test
+
+ cd contrib/minizip
+ make -f Makefile.orig test
}
-package() {
+package_zlib() {
+ pkgdesc='Compression library implementing the deflate compression method found in gzip and PKZIP'
+
cd ${srcdir}/zlib-$pkgver
make install DESTDIR=${pkgdir}
install -D -m644 LICENSE ${pkgdir}/usr/share/licenses/zlib/LICENSE
}
+
+package_minizip() {
+ pkgdesc='Mini zip and unzip based on zlib'
+ depends=('zlib')
+
+ cd ${srcdir}/zlib-$pkgver/contrib/minizip
+ make install DESTDIR=${pkgdir}
+ install -D -m644 ${srcdir}/zlib-$pkgver/LICENSE ${pkgdir}/usr/share/licenses/minizip/LICENSE
+}
diff --git a/abs/core/zoneminder/PKGBUILD b/abs/core/zoneminder/PKGBUILD
index c0bb186..3aaef15 100644
--- a/abs/core/zoneminder/PKGBUILD
+++ b/abs/core/zoneminder/PKGBUILD
@@ -1,4 +1,5 @@
-# Maintainer: Troy Will <troydwill at gmail dot com>
+# Maintainer: Mesmer <mesmer@fisica.if.uff.br>
+# Contributor: Troy Will <troydwill at gmail dot com>
# Contributor: /dev/rs0 </dev/rs0@secretco.de.com>
# Contributor: Jacek Burghardt <jacek@hebe.us>
# Contributor: Vojtech Aschenbrenner <v@asch.cz>
@@ -11,7 +12,7 @@
# Orginally based on a Debian Squeeze package
_pkgname=zoneminder
pkgname=zoneminder
-pkgver=1.30.2.r45.ga43adc2
+pkgver=1.30.4
pkgrel=2
pkgdesc='Capture, analyse, record and monitor video security cameras'
arch=( i686 x86_64 mips64el arm armv7h )
@@ -19,83 +20,57 @@ backup=( etc/zm.conf )
url="https://github.com/ZoneMinder/ZoneMinder/releases"
license=( GPL )
depends=(
- ffmpeg gnutls lighttpd mysql
- perl-archive-zip
- perl-class-std-fast
- perl-data-dump
- perl-data-uuid
- perl-date-manip
- perl-dbd-mysql
- perl-dbi
- perl-device-serialport
- perl-expect
- perl-io-socket-multicast
- perl-libwww
- perl-mime-lite
- perl-mime-tools
- perl-net-sftp-foreign
- perl-php-serialization
- perl-sys-cpu
- perl-sys-meminfo
- perl-sys-mmap
- perl-wsdl
- php php-gd php-mcrypt
- polkit
+ mysql perl-dbd-mysql perl-dbi
+ lighttpd php php-gd perl-php-serialization php-apcu
+ perl-libwww perl-net-sftp-foreign
+ ffmpeg perl-sys-mmap
+ gnutls polkit
+ perl-expect perl-archive-zip perl-date-manip
+ perl-mime-lite perl-mime-tools
+ perl-sys-meminfo perl-sys-cpu
)
makedepends=(
- cmake make gcc netpbm
+ cmake netpbm git
)
optdepends=(
+ 'php-apcu-bci: Bring back the API for android control'
netpbm
cambozola
perl-time-modules
perl-x10
perl-astro-suntime
)
-install=$pkgname.install
-
+install=$_pkgname.install
+
source=(
- git://github.com/$_pkgname/$_pkgname.git
- git://github.com/FriendsOfCake/crud.git
+ https://github.com/ZoneMinder/ZoneMinder/archive/$pkgver.tar.gz
httpd-zoneminder.conf
+ zoneminder.ini
zoneminder.service
+ uio.patch
+ fabs.patch
zoneminder-tmpfile.conf
zm.include
zm.sysctrl.conf
zm_gen_light.conf
)
-# Because the source is not static, skip Git checksum:
-sha256sums=('SKIP'
- 'SKIP'
- 'ff7382b38ac07dadead0ad4d583e3dbcf8da4aaa06b76d048ee334f69f95db67'
- '043d77a995553c533d62f48db4b719d29cf6c7074f215d866130e97be57ed646'
- 'cc8af737c3c07750fc71317c81999376e4bbb39da883780164a8747b3d7c95a7'
- '894c3f43fb9d77aec9edaed98bc556c90bed9326de57bc17cd33b44ab7818335'
- 'bb50ad6411426d90df00568b967bf762844978cd34b84435ecbfc0d652c67b42'
- 'eafcd625248731382506622eb3ff9b736b670f601692386723bd63275cacc781'
- )
-
-pkgver() {
- cd "$_pkgname"
- # See https://wiki.archlinux.org/index.php/VCS_package_guidelines#The_pkgver.28.29_function
- git describe --long --tags | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g'
-}
+
prepare () {
- cd $srcdir/$_pkgname
- git submodule init
- git config submodule.web/api/app/Plugin/Crud.url $srcdir/crud
- git config submodule.web/api/app/Plugin/Crud.branch 3.0
- git submodule update
+ cd $srcdir/zoneminder-$pkgver/web/api/app/Plugin/
+ if [ ! -d "crud" ]; then
+ git clone -b 3.0 https://github.com/FriendsOfCake/crud.git
+ mkdir -p Crud
+ mv crud/* Crud
+ fi
+ patch $srcdir/zoneminder-$pkgver/src/zm_image.cpp < $srcdir/fabs.patch
+ patch $srcdir/zoneminder-$pkgver/src/zm_comms.h < $srcdir/uio.patch
}
build() {
- cd $srcdir/$_pkgname
-
- # ZM_PERL_SUBPREFIX=/lib/perl5 flag added to force Perl modules
- # to /usr/lib/perl5/ on non i686 architectures
-
- cmake -DCMAKE_INSTALL_PREFIX=/usr \
+ cd $srcdir/zoneminder-$pkgver
+
+ cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DZM_PERL_SUBPREFIX=/lib/perl5 \
-DZM_WEBDIR=/data/srv/httpd/zoneminder \
-DZM_CGIDIR=/data/srv/httpd/cgi-bin \
@@ -104,14 +79,14 @@ build() {
-DZM_LOGDIR=/var/log/zoneminder \
-DZM_RUNDIR=/run/zoneminder \
-DZM_TMPDIR=/var/lib/zoneminder/temp \
- -DZM_SOCKDIR=/data/srv/zoneminder/sock .
+ -DZM_SOCKDIR=/var/lib/zoneminder/sock .
make V=0
-}
+}
package() {
- cd $srcdir/$_pkgname
+ cd $srcdir/zoneminder-$pkgver
DESTDIR=$pkgdir make install
@@ -123,9 +98,9 @@ package() {
mkdir -pv $pkgdir/var/{cache/zoneminder,log/zoneminder}
chown -Rv http.http $pkgdir/var/{cache/zoneminder,log/zoneminder}
- # corresponds to -DZM_SOCKDIR=/data/srv/zoneminder/sock
- mkdir -pv $pkgdir/data/srv/zoneminder/sock
- chown -v http.http $pkgdir/data/srv/zoneminder/sock
+ # corresponds to -DZM_SOCKDIR=/var/lib/zoneminder/sock
+ mkdir -pv $pkgdir/var/lib/zoneminder/sock
+ chown -v http.http $pkgdir/var/lib/zoneminder/sock
# corresponds to -DZM_TMPDIR=/var/lib/zoneminder/temp
mkdir -pv $pkgdir/var/lib/zoneminder/temp
@@ -135,43 +110,56 @@ package() {
chmod 0700 $pkgdir/etc/zm.conf
# END CREATE_ZONEMINDER_DIRECTORIES
- # Make content directories in /var/cache/zoneminder and to link them in /srv/httpd/zoneminder
+ # Make content directories in /var/cache/zoneminder and to link them in /data/srv/httpd/zoneminder
for i in events images temp; do
- mkdir $pkgdir/var/cache/$pkgname/$i
- chown -v http.http $pkgdir/var/cache/$pkgname/$i
- ln -s /var/cache/$pkgname/$i $pkgdir/data/srv/httpd/$pkgname/$i
- chown -v --no-dereference http.http $pkgdir/data/srv/httpd/$pkgname/$i
+ mkdir $pkgdir/var/cache/$_pkgname/$i
+ chown -v http.http $pkgdir/var/cache/$_pkgname/$i
+ ln -s /var/cache/$_pkgname/$i $pkgdir/data/srv/httpd/$_pkgname/$i
+ chown -v --no-dereference http.http $pkgdir/data/srv/httpd/$_pkgname/$i
done
# Create a link to the Zoneminder cgi binaries
- ln -sv /data/srv/httpd/cgi-bin $pkgdir/data/srv/httpd/$pkgname
+ ln -sv /data/srv/httpd/cgi-bin $pkgdir/data/srv/httpd/$_pkgname
- chown -h http.http $pkgdir/data/srv/httpd/{cgi-bin,$pkgname,$pkgname/cgi-bin}
+ chown -h http.http $pkgdir/data/srv/httpd/{cgi-bin,$_pkgname,$_pkgname/cgi-bin}
# Link Cambozola
- # ln -s /usr/share/cambozola/cambozola.jar $pkgdir/data/srv/httpd/$pkgname
+ # ln -s /usr/share/cambozola/cambozola.jar $pkgdir/data/srv/httpd/$_pkgname
# Install configuration files
- # don't need these in LinHES as we use lighttpd not apache
- #mkdir -p $pkgdir/etc/httpd/conf/extra
- #install -D -m 644 $srcdir/httpd-$pkgname.conf $pkgdir/etc/httpd/conf/extra
+ mkdir -p $pkgdir/etc/httpd/conf/extra
+ install -D -m 644 $srcdir/httpd-$_pkgname.conf $pkgdir/etc/httpd/conf/extra
mkdir -p $pkgdir/usr/lib/systemd/system
- install -D -m 644 $srcdir/$pkgname.service $pkgdir/usr/lib/systemd/system
+ install -D -m 644 $srcdir/$_pkgname.service $pkgdir/usr/lib/systemd/system
- install -D -m 644 COPYING $pkgdir/usr/share/license/$pkgname
- install -D -m 644 db/zm*.sql $pkgdir/usr/share/$pkgname/db
+ install -D -m 644 COPYING $pkgdir/usr/share/license/$_pkgname
+ install -D -m 644 db/zm*.sql $pkgdir/usr/share/$_pkgname/db
- mkdir -p $pkgdir/usr/share/doc/$pkgname
- # install -D -m 644 $srcdir/README $pkgdir/usr/share/doc/$pkgname
+ mkdir -p $pkgdir/usr/share/doc/$_pkgname
+ # install -D -m 644 $srcdir/README $pkgdir/usr/share/doc/$_pkgname
install -Dm644 ../zoneminder-tmpfile.conf "$pkgdir"/usr/lib/tmpfiles.d/zoneminder.conf
#LinHES stuff
+ #/etc/php/conf.d
+ install -d -m755 ${pkgdir}/etc/php/conf.d/
+ install -D -m644 ${srcdir}/zoneminder.ini ${pkgdir}/etc/php/conf.d/zoneminder.ini
#lighttpd zm include
- install -D -m644 $srcdir/zm.include $pkgdir/etc/lighttpd/zm.include
+ install -D -m644 ${srcdir}/zm.include ${pkgdir}/etc/lighttpd/zm.include
#sysctrl conf - to set the shared mem
- install -o root -g root -D -m0755 $srcdir/zm.sysctrl.conf $pkgdir/etc/sysctl.d/zm.conf
+ install -o root -g root -D -m0755 ${srcdir}/zm.sysctrl.conf ${pkgdir}/etc/sysctl.d/zm.conf
#gen_light_conf
- install -D -m0744 ${srcdir}/zm_gen_light.conf $pkgdir/etc/gen_light_conf.d/zoneminder.conf
+ install -D -m0744 ${srcdir}/zm_gen_light.conf ${pkgdir}/etc/gen_light_conf.d/zoneminder.conf
+
}
+md5sums=('1e61836e7d938710801f4fb2b2deaaae'
+ '2a0d1ff33567946b7a8ac1242270c8cc'
+ '63cdaa57c6c9a68ce51c0862bc1b74a0'
+ '85baafb00bbb1bcd04cfae899b6cd395'
+ 'b2454d4fab43813e8e660ea4709a3102'
+ '327d49273d41dc5bbd9f74defb0dc924'
+ 'b4aa4f6881c571e873574907983a82db'
+ '9d93f9b7b0a1384df533efde19ed3021'
+ 'c528e75443ae421cb7f63e12350c692a'
+ '81cb12b36616a299ec808ac70a809ec2')
diff --git a/abs/core/zoneminder/__changelog b/abs/core/zoneminder/__changelog
index f039892..ca5266f 100644
--- a/abs/core/zoneminder/__changelog
+++ b/abs/core/zoneminder/__changelog
@@ -1,16 +1,19 @@
-PKGBUILD: modified AUR zoneminder-git
PKGBUILD: remove apache
PKGBUILD: add lighttpd
PKGBUILD: remove php-apache
PKGBUILD: change mariadb to mysql
PKGBUILD: remove vlc
+PKGBUILD: remove php-mcrypt
+PKGBUILD: add perl-sys-meminfo perl-sys-cpu
+PGKBUILD: add php-uapc
PKGBUILD: change all /srv/ to /data/srv/ - cgidir webdir socks
PKGBUILD: change all http to httpd dirs
+PKGBUILD: add zoneminder.ini for /etc/php/conf.d/
PKGBUILD: add zm.include for lighttpd
PKGBUILD: add zm.sysctrl.conf to set the shared mem
PKGBUILD: add zm_gen_light.conf
--
-.install: Remove modifications of php.ini
+.install: Remove modifications of php.ini & apache files
.install: Remove php and mysql notes
.install: Remove/Add of zm.include in post install/remove
.install: Add install_db()
diff --git a/abs/core/zoneminder/fabs.patch b/abs/core/zoneminder/fabs.patch
new file mode 100644
index 0000000..b0a62e3
--- /dev/null
+++ b/abs/core/zoneminder/fabs.patch
@@ -0,0 +1,11 @@
+--- src/ZoneMinder-1.30.4/src/zm_image.cpp 2017-06-17 04:20:45.808503543 -0300
++++ src/ZoneMinder-1.30.4/src/zm_image.cpp.2 2017-06-17 04:20:40.221794330 -0300
+@@ -1659,7 +1659,7 @@
+ uint8_t *psrc = images[j]->buffer+c;
+
+ #ifndef SOLARIS
+- if ( (unsigned)abs((*psrc)-RGB_VAL(ref_colour,c)) >= RGB_VAL(threshold,c) )
++ if ( (unsigned)fabs((*psrc)-RGB_VAL(ref_colour,c)) >= RGB_VAL(threshold,c) )
+ #else
+ if ( (unsigned)std::abs((*psrc)-RGB_VAL(ref_colour,c)) >= RGB_VAL(threshold,c) )
+ #endif
diff --git a/abs/core/zoneminder/log.txt b/abs/core/zoneminder/log.txt
new file mode 100644
index 0000000..09e54b1
--- /dev/null
+++ b/abs/core/zoneminder/log.txt
@@ -0,0 +1,23 @@
+==> Making package: zoneminder 1.30.4-1 (Fri Sep 15 20:35:45 UTC 2017)
+==> Checking runtime dependencies...
+==> Missing dependencies:
+ -> mariadb
+ -> perl-dbd-mysql
+ -> perl-dbi
+ -> apache
+ -> php
+ -> php-apache
+ -> php-gd
+ -> php-mcrypt
+ -> perl-libwww
+ -> vlc
+ -> perl-archive-zip
+ -> perl-date-manip
+ -> perl-mime-lite
+ -> perl-mime-tools
+==> Checking buildtime dependencies...
+==> Missing dependencies:
+ -> netpbm
+==> ERROR: Could not resolve all dependencies.
+
+==> ERROR: An unknown error has occurred. Exiting...
diff --git a/abs/core/zoneminder/uio.patch b/abs/core/zoneminder/uio.patch
new file mode 100644
index 0000000..a892e29
--- /dev/null
+++ b/abs/core/zoneminder/uio.patch
@@ -0,0 +1,22 @@
+--- src/ZoneMinder-1.30.4/src/zm_comms.h 2017-05-09 14:54:48.000000000 +0000
++++ src/ZoneMinder-1.30.4/src/zm_comms.fix.h 2017-09-15 20:49:46.992445289 +0000
+@@ -21,7 +21,6 @@
+ #define ZM_COMMS_H
+
+ #include "zm_exception.h"
+-
+ #include <string.h>
+ #include <unistd.h>
+ #include <netdb.h>
+@@ -31,11 +30,9 @@
+ #include <set>
+ #include <vector>
+
+-#if defined(BSD)
+ #include <sys/uio.h>
+ #include <sys/socket.h>
+ #include <netinet/in.h>
+-#endif
+
+ class CommsException : public Exception
+ {
diff --git a/abs/core/zoneminder/zm_rtp_ctrl.h.quick_fix_for_gcc6.diff b/abs/core/zoneminder/zm_rtp_ctrl.h.quick_fix_for_gcc6.diff
new file mode 100644
index 0000000..ae076e7
--- /dev/null
+++ b/abs/core/zoneminder/zm_rtp_ctrl.h.quick_fix_for_gcc6.diff
@@ -0,0 +1,4 @@
+126c126
+< struct Bye
+---
+> struct
diff --git a/abs/core/zoneminder/zoneminder.ini b/abs/core/zoneminder/zoneminder.ini
new file mode 100644
index 0000000..231a43c
--- /dev/null
+++ b/abs/core/zoneminder/zoneminder.ini
@@ -0,0 +1 @@
+extension=apcu.so
diff --git a/abs/core/zoneminder/zoneminder.install b/abs/core/zoneminder/zoneminder.install
index 5d5459a..db07ef4 100644
--- a/abs/core/zoneminder/zoneminder.install
+++ b/abs/core/zoneminder/zoneminder.install
@@ -2,7 +2,7 @@ install_db() {
. /etc/systemconfig
if [ $SystemType = Master_backend -o $SystemType = Standalone ]
then
- mysql -e "use zm" > /dev/null
+ mysql -e "use zm" &> /dev/null
rc=$?
if [ $rc = 1 ]
then
@@ -25,6 +25,9 @@ post_install() {
gen_light_include.py
/sbin/sv hup /service/lighttpd
#---
+
+ echo "To start zoneminder enter:"
+ echo " sudo add_service.sh zoneminder"
}
post_upgrade() {