62 lines
1.7 KiB
Ruby
62 lines
1.7 KiB
Ruby
|
require "formula"
|
||
|
|
||
|
class Libsecret < Formula
|
||
|
homepage "https://wiki.gnome.org/Projects/Libsecret"
|
||
|
url "http://ftp.gnome.org/pub/gnome/sources/libsecret/0.18/libsecret-0.18.tar.xz"
|
||
|
sha1 "af62de3958bbe0ccf59a02101a6704e036378a6f"
|
||
|
|
||
|
depends_on 'pkg-config' => :build
|
||
|
depends_on 'gnu-sed' => :build
|
||
|
depends_on 'intltool' => :build
|
||
|
depends_on 'gettext' => :build
|
||
|
depends_on 'glib'
|
||
|
depends_on 'libgcrypt'
|
||
|
|
||
|
def install
|
||
|
system "./configure", "--disable-debug",
|
||
|
"--disable-dependency-tracking",
|
||
|
"--disable-silent-rules",
|
||
|
"--prefix=#{prefix}"
|
||
|
inreplace "Makefile", 'sed', 'gsed'
|
||
|
inreplace "Makefile", '--nonet', ''
|
||
|
system "make", "install"
|
||
|
end
|
||
|
|
||
|
test do
|
||
|
(testpath/'test.c').write <<-EOS.undent
|
||
|
#include <libsecret/secret.h>
|
||
|
|
||
|
const SecretSchema * example_get_schema (void) G_GNUC_CONST;
|
||
|
|
||
|
const SecretSchema *
|
||
|
example_get_schema (void)
|
||
|
{
|
||
|
static const SecretSchema the_schema = {
|
||
|
"org.example.Password", SECRET_SCHEMA_NONE,
|
||
|
{
|
||
|
{ "number", SECRET_SCHEMA_ATTRIBUTE_INTEGER },
|
||
|
{ "string", SECRET_SCHEMA_ATTRIBUTE_STRING },
|
||
|
{ "even", SECRET_SCHEMA_ATTRIBUTE_BOOLEAN },
|
||
|
{ "NULL", 0 },
|
||
|
}
|
||
|
};
|
||
|
return &the_schema;
|
||
|
}
|
||
|
|
||
|
int main()
|
||
|
{
|
||
|
example_get_schema();
|
||
|
}
|
||
|
EOS
|
||
|
|
||
|
flags = [
|
||
|
"-I#{include}/libsecret-1",
|
||
|
"-I#{HOMEBREW_PREFIX}/include/glib-2.0",
|
||
|
"-I#{HOMEBREW_PREFIX}/lib/glib-2.0/include"
|
||
|
]
|
||
|
|
||
|
system ENV.cc, 'test.c', '-o', 'test', *flags
|
||
|
system './test'
|
||
|
end
|
||
|
end
|