aboutsummaryrefslogtreecommitdiffstats
path: root/sysutils/vagrant/Makefile
blob: 6e33d0968ac4523f60fe57014d3e0b7b158922fe (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
# Created by: Joseph Benden <joe@thrallingpenguin.com>
# $FreeBSD$

PORTNAME=   vagrant
PORTVERSION=    2.1.1
DISTVERSIONPREFIX=  v
CATEGORIES= sysutils rubygems devel

MAINTAINER= joe@thrallingpenguin.com
COMMENT=    Vagrant Virtual Machine Manager

LICENSE=    MIT
LICENSE_FILE=   ${WRKSRC}/LICENSE

BUILD_DEPENDS=  rubygem-builder>=2.1.2:devel/rubygem-builder \
        rubygem-bundler>=1.12.5:sysutils/rubygem-bundler \
        rubygem-main>=1.0:devel/rubygem-main
RUN_DEPENDS=    rubygem-bundler>=1.12.5:sysutils/rubygem-bundler \
        rubygem-childprocess>=0.6.0:devel/rubygem-childprocess \
        rubygem-erubis>=2.7.0:www/rubygem-erubis \
        rubygem-hashicorp-checkpoint>=0.1.5:www/rubygem-hashicorp-checkpoint \
        rubygem-i18n>=0.6.0:devel/rubygem-i18n \
        rubygem-listen>=3.1.5:devel/rubygem-listen \
        rubygem-log4r>=1.1.9:sysutils/rubygem-log4r \
        rubygem-net-scp>=1.2.0:security/rubygem-net-scp \
        rubygem-net-sftp>=2.1:security/rubygem-net-sftp \
        rubygem-net-ssh>=4.2.0:security/rubygem-net-ssh \
        rubygem-rb-kqueue>=0.2.0:devel/rubygem-rb-kqueue \
        rubygem-rest-client>=1.6.0:www/rubygem-rest-client \
        rubygem-wdm>=0.1.0:devel/rubygem-wdm \
        rubygem-win32-file>=0.8.1:sysutils/rubygem-win32-file \
        rubygem-win32-file-security>=1.0.10:sysutils/rubygem-win32-file-security \
        rubygem-winrm>=2.1:sysutils/rubygem-winrm \
        rubygem-winrm-elevated>=1.1:sysutils/rubygem-winrm-elevated \
        rubygem-winrm-fs>=1.0:sysutils/rubygem-winrm-fs \
        rubygem-ruby_dep>=0:devel/rubygem-ruby_dep

USE_GITHUB= yes
GH_ACCOUNT= hashicorp

USES=       shebangfix
SHEBANG_FILES=  plugins/hosts/darwin/scripts/install_virtualbox.sh \
        scripts/sign.sh \
        scripts/website_push_docs.sh \
        scripts/website_push_www.sh
USE_RUBY=   yes
GEMFILES=   vagrant-${PORTVERSION}.gem
RUBYGEMBIN= gem${RUBY_SUFFIX}
PLIST_SUB+= GEMS_DIR="lib/ruby/gems/${RUBY_VER}/" \
        GEM_BASE_DIR="lib/ruby/gems/${RUBY_VER}/gems" \
        DOC_DIR="lib/ruby/gems/${RUBY_VER}/doc" \
        PORTVERSION="${PORTVERSION}"
NO_ARCH=    yes

RUBYGEM_ARGS=   --no-ri --no-rdoc -l --no-update-sources \
        --install-dir ${STAGEDIR}${PREFIX}/lib/ruby/gems/${RUBY_VER} \
        --ignore-dependencies --bindir=${STAGEDIR}${PREFIX}/bin
GEM_ENV+=   RB_USER_INSTALL=yes

post-patch:
    @${REINPLACE_CMD} -e 's|@PREFIX@|${PREFIX}|g' ${WRKSRC}/bin/vagrant

do-build:
    (cd ${WRKSRC}; (${ECHO_CMD} -e "install:\n\techo\n") > Makefile)
    (cd ${WRKSRC}; ${SETENV} VAGRANT_INSTALLER_ENV=yes \
        ${GEM_ENV} ${RUBYGEMBIN} build vagrant.gemspec)
    (cd ${WRKSRC}; ${SETENV} VAGRANT_INSTALLER_ENV=yes \
        ${GEM_ENV} ${RUBYGEMBIN} install ${RUBYGEM_ARGS} \
        ${GEMFILES} -- --build-args ${CONFIGURE_ARGS})
    ${MKDIR} ${STAGEDIR}${DATADIR}/embedded/rgloader
    ${INSTALL_DATA} ${FILESDIR}/cacert.pem \
        ${STAGEDIR}${DATADIR}/embedded/cacert.pem
    ${INSTALL_SCRIPT} ${FILESDIR}/loader.rb \
        ${STAGEDIR}${DATADIR}/embedded/rgloader/loader.rb

post-install:
    ${RMDIR} ${STAGEDIR}${PREFIX}/lib/ruby/gems/${RUBY_VER}/doc
    ${RM} ${STAGEDIR}${PREFIX}/lib/ruby/gems/${RUBY_VER}/gems/${PORTNAME}-${PORTVERSION}/.runner.sh

.include <bsd.port.mk>