Ticket #39018: dpkg-1.18.3-mojca.Portfile

File dpkg-1.18.3-mojca.Portfile, 4.6 KB (added by mojca (Mojca Miklavec), 8 years ago)

Mojca's suggestion of the Portfile (minor modifications wrt. Xeron's proposal)

Line 
1# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
2# $Id$
3
4PortSystem          1.0
5PortGroup           perl5 1.0
6
7name                dpkg
8version             1.18.3
9platforms           darwin
10categories          sysutils archivers
11license             GPL-2+
12maintainers         gwmail.gwu.edu:egall openmaintainer
13description         Debian package maintenance system
14long_description    ${name} is the basis of the ${description}.
15
16homepage            http://wiki.debian.org/Teams/Dpkg
17master_sites        debian:d/${name}/
18distname            ${name}_${version}
19worksrcdir          ${name}-${version}
20
21use_xz              yes
22extract.asroot      yes
23
24checksums           rmd160  baffcdf3bb72ad535d6aacbcee88202488e4612a \
25                    sha256  a40ffe38d7f36d858a752189a306433cfc52c7d15d7b98f61d9f9dd49e0e4807
26
27perl5.branches      5.22
28
29depends_build-append \
30                    port:pkgconfig \
31                    port:flex \
32                    port:gnutar
33
34# Use MacPorts versions explicitly
35depends_lib-append  port:gettext \
36                    port:libiconv \
37                    port:perl${perl5.major} \
38                    port:coreutils \
39                    port:bzip2 \
40                    port:gzip \
41                    port:zlib \
42                    port:ncurses \
43                    port:gnutar \
44                    path:lib/pkgconfig/liblzma.pc:xz
45
46depends_run-append  port:gnutar \
47                    port:gzip \
48                    port:debianutils
49
50configure.perl      ${perl5.bin}
51configure.pkg_config \
52                    ${prefix}/bin/pkg-config
53configure.env-append \
54                    TAR=${prefix}/bin/gnutar
55configure.args-append \
56                    --with-libintl-prefix=${prefix} \
57                    --with-libiconv-prefix=${prefix} \
58                    --with-admindir=${prefix}/var/db/${name} \
59                    --with-logdir=${prefix}/var/log \
60                    --mandir=${prefix}/share/man \
61                    --with-zlib \
62                    --with-bz2 \
63                    --with-liblzma \
64                    --disable-linker-optimisations \
65                    --disable-silent-rules \
66                    --disable-start-stop-daemon
67
68compiler.blacklist-append cc gcc-3.3 gcc-4.0 apple-gcc-4.0
69
70build.type          gnu
71
72set vardpkg         ${destroot}${prefix}/var/db/${name}
73destroot.keepdirs-append \
74                    ${vardpkg} \
75                    ${vardpkg}/updates \
76                    ${vardpkg}/info \
77                    ${destroot}${prefix}/var/log \
78                    ${destroot}${prefix}/etc/${name}
79
80patchfiles-append   patch-scripts_Dpkg_Source_Archive.pm.diff
81
82use_autoreconf      yes
83autoreconf.args     -fvi --warnings=all
84
85pre-destroot {
86    file mkdir ${destroot}${prefix}/share/doc/${name}
87}
88
89post-destroot {
90    file mkdir ${vardpkg}
91    file mkdir ${vardpkg}/updates
92    file mkdir ${vardpkg}/info
93    system "touch ${vardpkg}/available ${vardpkg}/status"
94}
95
96# This variant sometimes hangs while building...
97variant docs description "Build documentation (warning: building documentation takes a long time)" {
98    depends_build-append    port:doxygen \
99                            path:bin/dot:graphviz \
100                            port:fontconfig \
101                            port:freefont-ttf
102
103    set docdir              ${prefix}/share/doc/${name}
104    configure.args-append   --docdir=${docdir} \
105                            --htmldir=${docdir}/html \
106                            --dvidir=${docdir}/dvi \
107                            --pdfdir=${docdir}/pdf \
108                            --psdir=${docdir}/ps
109
110    build.target-append     doc
111
112    pre-build {
113        elevateToRoot "doxygen"
114        system -W ${worksrcpath}/doc "${prefix}/bin/doxygen -u"
115    }
116
117    post-build {
118        system -W ${worksrcpath}/doc "${prefix}/bin/doxygen"
119        dropPrivileges
120        set destroot_docdir ${destroot}${prefix}/share/doc/${name}
121        xinstall -d ${destroot_docdir}
122        copy ${worksrcpath}/doc/doc ${destroot_docdir}
123        copy ${worksrcpath}/doc/html ${destroot_docdir}
124        foreach docfile {coding-style.txt triggers.txt README.feature-removal-schedule frontend.txt README.api} {
125            xinstall -m 644 ${worksrcpath}/doc/${docfile} ${destroot_docdir}
126        }
127    }
128}
129
130# Tests currently fail, this needs to be fixed eventually:
131test.run            yes
132test.target         check
133
134#pre-test {
135#    elevateToRoot "test"
136#}
137#post-test {
138#    dropPrivileges
139#}
140
141livecheck.type      regex
142livecheck.url       http://ftp.debian.org/debian/pool/main/d/${name}/
143livecheck.regex     "${name}_(\\d+\\.\\d+(\\.\\d+)*)"