summaryrefslogblamecommitdiff
path: root/sysutils/consul/Makefile
blob: 0dcb01257eeaa56402d9a1c64f0f90fc6dded620 (plain) (tree)
1
2
3
4
5
6
7
8


                      
                     
                         
                        

                                                                            










                                                             




                                                                                    


                                                                            

                                                                                










                                                                             
















                                                                                  





                      



                                                           



                                                                                



                                                         
                                                 




                                                          


                                                     




                                                  
                                            
                                  
                                                      
                                     
                                                         
                                   
                                                       
                                
                                                    
                                   
                                                        
                                     
                                                             
                                        
                                                                
                                        
                                                                
                                    
                                                            
                                     
                                                             
                              
                                                      
                                   
                                                           
                                     
                                                             
                               
                                                       
                                   
                                                           
                               
                                                       
                                
                                                               
                                
                                                        
                                 
                                                               
                              
                                                  
                              
                                                      
                                       
                                                               
                                    
                                                           
                                     
                                                                     
                                       
                                                                              
                                        
                                                                 
                                       
                                                                
                                 
                                                          
                                 
                                                              
                               
                                                    
                                  
                                                                 





















                                                                     
                                 
                                                 






                                                                                                                     

                                                                  



                                                                      






                                                                               
# $FreeBSD$

PORTNAME=	consul
PORTVERSION=	0.6.3
DISTVERSIONPREFIX=	v
CATEGORIES=	sysutils
MASTER_SITES=	https://releases.hashicorp.com/consul/${PORTVERSION}/:web_ui
DISTFILES=	consul_${PORTVERSION}_web_ui.zip:web_ui

MAINTAINER=	swills@FreeBSD.org
COMMENT=	Service discovery and configuration made easy

LICENSE=	MPL

BUILD_DEPENDS=	${LOCALBASE}/bin/go:${PORTSDIR}/lang/go

USES=		compiler

USE_GITHUB=	yes
GH_ACCOUNT=	hashicorp:DEFAULT,go_checkpoint,go_msgpack,go_multierror,go_syslog \
		hashicorp:golang_lru,hcl,logutils,memberlist,raft,raft_mdb,serf \
		hashicorp:scada,yamux,migrate,msgpackrpc,boltdb,reap,memdb \
		hashicorp:iradix,chttp,errwrap \
		armon:circbuf,go_metrics,go_radix,gomdb golang:protobuf,crypto,sys \
		boltdb:bolt inconshreveable:muxado matttproud:protobuf_ext \
		miekg:dns mitchellh:cli mitchellh:mapstructure \
		prometheus:client_golang,client_model,procfs \
		ryanuber:columnize ugorji:go mattn:isatty \
		fsouza:dclient elazarl:assetfs bgentry:speakeasy DataDog:datadog
GH_PROJECT=	circbuf:circbuf protobuf:protobuf go-metrics:go_metrics \
		go-radix:go_radix gomdb:gomdb go-checkpoint:go_checkpoint \
		go-msgpack:go_msgpack go-multierror:go_multierror \
		go-syslog:go_syslog golang-lru:golang_lru hcl:hcl \
		logutils:logutils memberlist:memberlist raft:raft \
		raft-mdb:raft_mdb serf:serf scada-client:scada yamux:yamux \
		consul-migrate:migrate net-rpc-msgpackrpc:msgpackrpc \
		raft-boltdb:boltdb crypto:crypto bolt:bolt muxado:muxado \
		golang_protobuf_extensions:protobuf_ext dns:dns cli:cli \
		mapstructure:mapstructure client_golang:client_golang \
		client_model:client_model procfs:procfs columnize:columnize \
		go:go go-isatty:isatty go-reap:reap sys:sys go-memdb:memdb \
		go-immutable-radix:iradix go-cleanhttp:chttp errwrap:errwrap \
		go-dockerclient:dclient go-bindata-assetfs:assetfs \
		speakeasy:speakeasy datadog-go:datadog
GH_TAGNAME=	bbbad09:circbuf 2402d76:protobuf 345426c:go_metrics \
		4239b77:go_radix 151f2e0:gomdb e4b2dc3:go_checkpoint \
		fa3f638:go_msgpack d30f099:go_multierror 42a2b57:go_syslog \
		bf88e0d:golang_lru aee8c49:hcl 0dc08b1:logutils \
		9888dc5:memberlist 8023e5e:raft 55f2947:raft_mdb b60fe33:serf \
		84989fd:scada df94978:yamux 678fb10:migrate \
		a14192a:msgpackrpc d1e82c1:boltdb 3760e01:crypto 109049b:bolt \
		f693c7e:muxado d0c3fe8:protobuf_ext 297a77c:dns cb6853d:cli \
		281073e:mapstructure 67994f1:client_golang \
		fa8ad6f:client_model 406e5b7:procfs 983d3a5:columnize \
		646ae4a:go 56b76bd:isatty 2d85522:reap 442cd60:sys 31949d5:memdb \
		12e9005:iradix ce617e7:chttp 7554cd9:errwrap 2fb7694:dclient \
		57eb5e1:assetfs 36e9cfd:speakeasy bc97e07:datadog

USE_RC_SUBR=	consul

USERS=		consul
GROUPS=		consul

STRIP=		# stripping can break go binaries

post-patch:
	@${MKDIR} ${WRKSRC}/src/github.com/hashicorp/consul
.for src in .gitignore .travis.yml CHANGELOG.md LICENSE Makefile README.md \
	Vagrantfile acl api bench command commands.go consul contrib demo deps \
	main.go main_test.go make.bat scripts terraform test testutil \
	tlsutil ui version.go watch website
	@${MV} ${WRKSRC}/${src} \
		${WRKSRC}/src/github.com/hashicorp/consul
.endfor
	@${MKDIR} ${WRKSRC}/src/github.com/armon
	@${MKDIR} ${WRKSRC}/src/github.com/boltdb
	@${MKDIR} ${WRKSRC}/src/github.com/inconshreveable
	@${MKDIR} ${WRKSRC}/src/github.com/miekg
	@${MKDIR} ${WRKSRC}/src/github.com/mitchellh
	@${MKDIR} ${WRKSRC}/src/github.com/ryanuber
	@${MKDIR} ${WRKSRC}/src/github.com/ugorji
	@${MKDIR} ${WRKSRC}/src/github.com/golang
	@${MKDIR} ${WRKSRC}/src/github.com/matttproud
	@${MKDIR} ${WRKSRC}/src/github.com/prometheus
	@${MKDIR} ${WRKSRC}/src/github.com/mattn
	@${MKDIR} ${WRKSRC}/src/github.com/fsouza
	@${MKDIR} ${WRKSRC}/src/github.com/elazarl
	@${MKDIR} ${WRKSRC}/src/github.com/bgentry
	@${MKDIR} ${WRKSRC}/src/github.com/DataDog
	@${MKDIR} ${WRKSRC}/src/golang.org/x
	@${MV} ${WRKSRC_circbuf} \
		${WRKSRC}/src/github.com/armon/circbuf
	@${MV} ${WRKSRC_go_metrics} \
		${WRKSRC}/src/github.com/armon/go-metrics
	@${MV} ${WRKSRC_go_radix} \
		${WRKSRC}/src/github.com/armon/go-radix
	@${MV} ${WRKSRC_gomdb} \
		${WRKSRC}/src/github.com/armon/gomdb
	@${MV} ${WRKSRC_protobuf} \
		${WRKSRC}/src/github.com/golang/protobuf
	@${MV} ${WRKSRC_go_msgpack} \
		${WRKSRC}/src/github.com/hashicorp/go-msgpack
	@${MV} ${WRKSRC_go_multierror} \
		${WRKSRC}/src/github.com/hashicorp/go-multierror
	@${MV} ${WRKSRC_go_checkpoint} \
		${WRKSRC}/src/github.com/hashicorp/go-checkpoint
	@${MV} ${WRKSRC_go_syslog} \
		${WRKSRC}/src/github.com/hashicorp/go-syslog
	@${MV} ${WRKSRC_golang_lru} \
		${WRKSRC}/src/github.com/hashicorp/golang-lru
	@${MV} ${WRKSRC_hcl} \
		${WRKSRC}/src/github.com/hashicorp/hcl
	@${MV} ${WRKSRC_logutils} \
		${WRKSRC}/src/github.com/hashicorp/logutils
	@${MV} ${WRKSRC_memberlist} \
		${WRKSRC}/src/github.com/hashicorp/memberlist
	@${MV} ${WRKSRC_raft} \
		${WRKSRC}/src/github.com/hashicorp/raft
	@${MV} ${WRKSRC_raft_mdb} \
		${WRKSRC}/src/github.com/hashicorp/raft-mdb
	@${MV} ${WRKSRC_serf} \
		${WRKSRC}/src/github.com/hashicorp/serf
	@${MV} ${WRKSRC_scada} \
		${WRKSRC}/src/github.com/hashicorp/scada-client
	@${MV} ${WRKSRC_yamux} \
		${WRKSRC}/src/github.com/hashicorp/yamux
	@${MV} ${WRKSRC_muxado} \
		${WRKSRC}/src/github.com/inconshreveable/muxado
	@${MV} ${WRKSRC_dns} \
		${WRKSRC}/src/github.com/miekg/dns
	@${MV} ${WRKSRC_cli} \
		${WRKSRC}/src/github.com/mitchellh/cli
	@${MV} ${WRKSRC_mapstructure} \
		${WRKSRC}/src/github.com/mitchellh/mapstructure
	@${MV} ${WRKSRC_columnize} \
		${WRKSRC}/src/github.com/ryanuber/columnize
	@${MV} ${WRKSRC_msgpackrpc} \
		${WRKSRC}/src/github.com/hashicorp/net-rpc-msgpackrpc
	@${MV} ${WRKSRC_protobuf_ext} \
		${WRKSRC}/src/github.com/matttproud/golang_protobuf_extensions
	@${MV} ${WRKSRC_client_golang} \
		${WRKSRC}/src/github.com/prometheus/client_golang
	@${MV} ${WRKSRC_client_model} \
		${WRKSRC}/src/github.com/prometheus/client_model
	@${MV} ${WRKSRC_procfs} \
		${WRKSRC}/src/github.com/prometheus/procfs
	@${MV} ${WRKSRC_boltdb} \
		${WRKSRC}/src/github.com/hashicorp/raft-boltdb
	@${MV} ${WRKSRC_bolt} \
		${WRKSRC}/src/github.com/boltdb/bolt
	@${MV} ${WRKSRC_migrate} \
		${WRKSRC}/src/github.com/hashicorp/consul-migrate
	@${MV} ${WRKSRC_isatty} \
		${WRKSRC}/src/github.com/mattn/go-isatty
	@${MV} ${WRKSRC_reap} \
		${WRKSRC}/src/github.com/hashicorp/go-reap
	@${MV} ${WRKSRC_memdb} \
		${WRKSRC}/src/github.com/hashicorp/go-memdb
	@${MV} ${WRKSRC_iradix} \
		${WRKSRC}/src/github.com/hashicorp/go-immutable-radix
	@${MV} ${WRKSRC_chttp} \
		${WRKSRC}/src/github.com/hashicorp/go-cleanhttp
	@${MV} ${WRKSRC_errwrap} \
		${WRKSRC}/src/github.com/hashicorp/errwrap
	@${MV} ${WRKSRC_dclient} \
		${WRKSRC}/src/github.com/fsouza/go-dockerclient
	@${MV} ${WRKSRC_assetfs} \
		${WRKSRC}/src/github.com/elazarl/go-bindata-assetfs
	@${MV} ${WRKSRC_speakeasy} \
		${WRKSRC}/src/github.com/bgentry/speakeasy
	@${MV} ${WRKSRC_datadog} \
		${WRKSRC}/src/github.com/DataDog/datadog-go
	@${MV} ${WRKSRC_sys} \
		${WRKSRC}/src/golang.org/x/sys
	@${MV} ${WRKSRC_crypto} \
		${WRKSRC}/src/golang.org/x/crypto

do-build:
	@cd ${WRKSRC}/src/github.com/hashicorp/consul; ${SETENV} ${BUILD_ENV} GOPATH=${WRKSRC} go build -o bin/consul

do-install:
	${INSTALL_PROGRAM} ${WRKSRC}/src/github.com/hashicorp/consul/bin/consul ${STAGEDIR}${PREFIX}/bin/consul
	${MKDIR} ${STAGEDIR}${DATADIR}
	${MKDIR} ${WRKDIR}/dist
	${MV} ${WRKDIR}/index.html ${WRKDIR}/static ${WRKDIR}/dist
	cd ${WRKDIR}/dist && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}

.include <bsd.port.pre.mk>

# golang assumes that if clang is in use, it is called "clang" and not "cc". If
# it's called "cc", go fails.
.if ${COMPILER_TYPE} == clang
BUILD_ENV=	CC=clang
.endif

.include <bsd.port.post.mk>