Makefile
changeset 38014 768bd75835d7
parent 38012 e5d2248dcc39
child 38561 600d8d9b8551
equal deleted inserted replaced
38013:917f635b5c6a 38014:768bd75835d7
   161 	cp $@ $@.tmp
   161 	cp $@ $@.tmp
   162 	msgmerge --no-location --update $@.tmp $^
   162 	msgmerge --no-location --update $@.tmp $^
   163 	mv -f $@.tmp $@
   163 	mv -f $@.tmp $@
   164 
   164 
   165 # Packaging targets
   165 # Packaging targets
       
   166 
       
   167 packaging_targets := \
       
   168   centos5 \
       
   169   centos6 \
       
   170   centos7 \
       
   171   deb \
       
   172   docker-centos5 \
       
   173   docker-centos6 \
       
   174   docker-centos7 \
       
   175   docker-debian-jessie \
       
   176   docker-debian-stretch \
       
   177   docker-fedora20 \
       
   178   docker-fedora21 \
       
   179   docker-ubuntu-trusty \
       
   180   docker-ubuntu-trusty-ppa \
       
   181   docker-ubuntu-xenial \
       
   182   docker-ubuntu-xenial-ppa \
       
   183   docker-ubuntu-artful \
       
   184   docker-ubuntu-artful-ppa \
       
   185   docker-ubuntu-bionic \
       
   186   docker-ubuntu-bionic-ppa \
       
   187   fedora20 \
       
   188   fedora21 \
       
   189   linux-wheels \
       
   190   linux-wheels-x86_64 \
       
   191   linux-wheels-i686 \
       
   192   ppa
       
   193 
       
   194 # Forward packaging targets for convenience.
       
   195 $(packaging_targets):
       
   196 	$(MAKE) -C contrib/packaging $@
   166 
   197 
   167 osx:
   198 osx:
   168 	rm -rf build/mercurial
   199 	rm -rf build/mercurial
   169 	/usr/bin/python2.7 setup.py install --optimize=1 \
   200 	/usr/bin/python2.7 setup.py install --optimize=1 \
   170 	  --root=build/mercurial/ --prefix=/usr/local/ \
   201 	  --root=build/mercurial/ --prefix=/usr/local/ \
   201 	  --package-path build/ \
   232 	  --package-path build/ \
   202 	  --version "$${HGVER}" \
   233 	  --version "$${HGVER}" \
   203 	  --resources contrib/packaging/macosx/ \
   234 	  --resources contrib/packaging/macosx/ \
   204 	  "$${OUTPUTDIR:-dist/}"/Mercurial-"$${HGVER}"-macosx"$${OSXVER}".pkg
   235 	  "$${OUTPUTDIR:-dist/}"/Mercurial-"$${HGVER}"-macosx"$${OSXVER}".pkg
   205 
   236 
   206 deb:
       
   207 	contrib/packaging/builddeb
       
   208 
       
   209 ppa:
       
   210 	contrib/packaging/builddeb --source-only
       
   211 
       
   212 contrib/packaging/docker/debian-%: contrib/packaging/docker/debian.template
       
   213 	sed "s/__CODENAME__/$*/" $< > $@
       
   214 
       
   215 docker-debian-jessie: contrib/packaging/docker/debian-jessie
       
   216 	contrib/packaging/dockerdeb debian jessie
       
   217 
       
   218 docker-debian-stretch: contrib/packaging/docker/debian-stretch
       
   219 	contrib/packaging/dockerdeb debian stretch
       
   220 
       
   221 contrib/packaging/docker/ubuntu-%: contrib/packaging/docker/ubuntu.template
       
   222 	sed "s/__CODENAME__/$*/" $< > $@
       
   223 
       
   224 docker-ubuntu-trusty: contrib/packaging/docker/ubuntu-trusty
       
   225 	contrib/packaging/dockerdeb ubuntu trusty
       
   226 
       
   227 docker-ubuntu-trusty-ppa: contrib/packaging/docker/ubuntu-trusty
       
   228 	contrib/packaging/dockerdeb ubuntu trusty --source-only
       
   229 
       
   230 docker-ubuntu-xenial: contrib/packaging/docker/ubuntu-xenial
       
   231 	contrib/packaging/dockerdeb ubuntu xenial
       
   232 
       
   233 docker-ubuntu-xenial-ppa: contrib/packaging/docker/ubuntu-xenial
       
   234 	contrib/packaging/dockerdeb ubuntu xenial --source-only
       
   235 
       
   236 docker-ubuntu-artful: contrib/packaging/docker/ubuntu-artful
       
   237 	contrib/packaging/dockerdeb ubuntu artful
       
   238 
       
   239 docker-ubuntu-artful-ppa: contrib/packaging/docker/ubuntu-artful
       
   240 	contrib/packaging/dockerdeb ubuntu artful --source-only
       
   241 
       
   242 docker-ubuntu-bionic: contrib/packaging/docker/ubuntu-bionic
       
   243 	contrib/packaging/dockerdeb ubuntu bionic
       
   244 
       
   245 docker-ubuntu-bionic-ppa: contrib/packaging/docker/ubuntu-bionic
       
   246 	contrib/packaging/dockerdeb ubuntu bionic --source-only
       
   247 
       
   248 fedora20:
       
   249 	mkdir -p packages/fedora20
       
   250 	contrib/packaging/buildrpm
       
   251 	cp rpmbuild/RPMS/*/* packages/fedora20
       
   252 	cp rpmbuild/SRPMS/* packages/fedora20
       
   253 	rm -rf rpmbuild
       
   254 
       
   255 docker-fedora20:
       
   256 	mkdir -p packages/fedora20
       
   257 	contrib/packaging/dockerrpm fedora20
       
   258 
       
   259 fedora21:
       
   260 	mkdir -p packages/fedora21
       
   261 	contrib/packaging/buildrpm
       
   262 	cp rpmbuild/RPMS/*/* packages/fedora21
       
   263 	cp rpmbuild/SRPMS/* packages/fedora21
       
   264 	rm -rf rpmbuild
       
   265 
       
   266 docker-fedora21:
       
   267 	mkdir -p packages/fedora21
       
   268 	contrib/packaging/dockerrpm fedora21
       
   269 
       
   270 centos5:
       
   271 	mkdir -p packages/centos5
       
   272 	contrib/packaging/buildrpm --withpython
       
   273 	cp rpmbuild/RPMS/*/* packages/centos5
       
   274 	cp rpmbuild/SRPMS/* packages/centos5
       
   275 
       
   276 docker-centos5:
       
   277 	mkdir -p packages/centos5
       
   278 	contrib/packaging/dockerrpm centos5 --withpython
       
   279 
       
   280 centos6:
       
   281 	mkdir -p packages/centos6
       
   282 	contrib/packaging/buildrpm --withpython
       
   283 	cp rpmbuild/RPMS/*/* packages/centos6
       
   284 	cp rpmbuild/SRPMS/* packages/centos6
       
   285 
       
   286 docker-centos6:
       
   287 	mkdir -p packages/centos6
       
   288 	contrib/packaging/dockerrpm centos6 --withpython
       
   289 
       
   290 centos7:
       
   291 	mkdir -p packages/centos7
       
   292 	contrib/packaging/buildrpm
       
   293 	cp rpmbuild/RPMS/*/* packages/centos7
       
   294 	cp rpmbuild/SRPMS/* packages/centos7
       
   295 
       
   296 docker-centos7:
       
   297 	mkdir -p packages/centos7
       
   298 	contrib/packaging/dockerrpm centos7
       
   299 
       
   300 linux-wheels: linux-wheels-x86_64 linux-wheels-i686
       
   301 
       
   302 linux-wheels-x86_64:
       
   303 	docker run -e "HGTEST_JOBS=$(shell nproc)" --rm -ti -v `pwd`:/src quay.io/pypa/manylinux1_x86_64 /src/contrib/packaging/build-linux-wheels.sh
       
   304 
       
   305 linux-wheels-i686:
       
   306 	docker run -e "HGTEST_JOBS=$(shell nproc)" --rm -ti -v `pwd`:/src quay.io/pypa/manylinux1_i686 linux32 /src/contrib/packaging/build-linux-wheels.sh
       
   307 
       
   308 .PHONY: help all local build doc cleanbutpackages clean install install-bin \
   237 .PHONY: help all local build doc cleanbutpackages clean install install-bin \
   309 	install-doc install-home install-home-bin install-home-doc \
   238 	install-doc install-home install-home-bin install-home-doc \
   310 	dist dist-notests check tests check-code format-c update-pot \
   239 	dist dist-notests check tests check-code format-c update-pot \
   311 	osx deb ppa \
   240 	$(packaging_targets) \
   312 	docker-debian-jessie \
   241 	osx
   313 	docker-debian-stretch \
       
   314 	docker-ubuntu-trusty docker-ubuntu-trusty-ppa \
       
   315 	docker-ubuntu-xenial docker-ubuntu-xenial-ppa \
       
   316 	docker-ubuntu-artful docker-ubuntu-artful-ppa \
       
   317 	docker-ubuntu-bionic docker-ubuntu-bionic-ppa \
       
   318 	fedora20 docker-fedora20 \
       
   319 	fedora21 docker-fedora21 \
       
   320 	centos5 docker-centos5 \
       
   321 	centos6 docker-centos6 \
       
   322 	centos7 docker-centos7 \
       
   323 	linux-wheels