msmtp: optional curl-ca-bundle dependency

Closes #22943.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
jsvc: fix broken CFLAGS and LDFLAGS

Closes #23802.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
jmeter 2.10

Closes #23838.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
swfmill 0.3.3
shunit2 2.1.6

Closes #23786.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
MySQL Cluster 7.3.2

Closes #23734.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
tinysvm: patch out bad compiler flag

Fixes #23815.
New patch implementation and DSL

This commit introduces a new patch implementation that supports
checksums and caching.

Patches are declared in blocks:

  patch do
    url ...
    sha1 ...
  end

A strip level of -p1 is assumed. It can be overridden using a symbol
argument:

  patch :p0 do
    url ...
    sha1 ...
  end

Patches can be declared in stable, devel, and head blocks. This form is
preferred over using conditionals.

  stable do
    # ...

    patch do
      url ...
      sha1 ...
    end
  end

Embedded (__END__) patches are declared like so:

  patch :DATA
  patch :p0, :DATA

Patches can also be embedded by passing a string. This makes it possible
to provide multiple embedded patches while making only some of them
conditional.

  patch :p0, "..."
Enable new patch implementation with compatibility layer
fetch: download external patches
Preemptively clear cached legacy patches

Under some circumstances we may end up with a cache hit for legacy
patches (if an identically named file exists, or more likely, the user
interrupted the patching process after fetching but before application).
However these patches have no checksums so we want to download them
fresh each time. Ensure this is the case by attempting to clear the
cache before
fetching.
glib: use patch DSL