1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-12 03:00:28 +00:00
freebsd-ports/Makefile
Mark Linimon b09666fc1e - Fix possibility of "infinite make fork" when "Registering install for ..."
EMACS ports.  [1]

 - Allow building a port as root using an NFS-mounted /usr/ports if the
   server maps root to a UID other than root. [2]

 - Make 'BROKEN' and 'IGNORED' ports exit their "make install" with a fail
   status rather than success. [3]

 - Improve behavior when dealing with versioned dependencies. [4]

 - Fix false positives in check-conflicts target. [5]

 - Remove obsolete bzip2 code. [6]

 - Add physical category net-p2p. [7]

 - Don't fetch INDEXFILE if not necessary; respect FETCH_ENV. [8], [11]

 - INDEX can now be moved outside of ports tree. [9]

 - Add ghostscript-gpl. [10]

 - Remove obsolete USE_MESA. [12]

 - Force pkg_install tools from ports on FreeBSD 4.10 and older. [13]

 - Document ALWAYS_KEEP_DISTFILES. [14]

 - Remove USE_REINPLACE from bsd.port.mk USE_DOS2UNIX patch. [15]

PR:	ports/37596 [1], ports/57259 [2], ports/63216 [3],
	ports/89448 [4], ports/89710 [5], ports/88996 [6],
	ports/89260 [7], ports/89363 [8], ports/89809 [9],
	ports/89853 [10], ports/91086 [11], ports/91710 [12],
	ports/91727 [13], ports/92111 [14], ports/92124 [15]
Submitted by:	Jay Sachs <jay at eziba dot com> [1], sem [1, 3, 8, 12],
		Andrew Heybey <ath at niksun dot com> [2], Jamie Jones
		<jamie at thompson dot bishopston dot net>, tobez [4], Mark
		Andrews <Mark_Andrews at isc dot org> [5], edwin [6, 11, 15],
		pav [7, 13], Peter Jeremy <PeterJeremy at optushome dot com
		dot au> [9], Ulrich Spoerlein <q at galgenberg dot net> [10],
		netchild [11], erwin [14]
Reviewed by:	kris, clement (partially)
2006-01-28 02:11:35 +00:00

171 lines
5.3 KiB
Makefile
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# $FreeBSD$
#
SUBDIR += accessibility
SUBDIR += arabic
SUBDIR += archivers
SUBDIR += astro
SUBDIR += audio
SUBDIR += benchmarks
SUBDIR += biology
SUBDIR += cad
SUBDIR += chinese
SUBDIR += comms
SUBDIR += converters
SUBDIR += databases
SUBDIR += deskutils
SUBDIR += devel
SUBDIR += dns
SUBDIR += editors
SUBDIR += emulators
SUBDIR += finance
SUBDIR += french
SUBDIR += ftp
SUBDIR += games
SUBDIR += german
SUBDIR += graphics
SUBDIR += hebrew
SUBDIR += hungarian
SUBDIR += irc
SUBDIR += japanese
SUBDIR += java
SUBDIR += korean
SUBDIR += lang
SUBDIR += mail
SUBDIR += math
SUBDIR += mbone
SUBDIR += misc
SUBDIR += multimedia
SUBDIR += net
SUBDIR += net-im
SUBDIR += net-mgmt
SUBDIR += net-p2p
SUBDIR += news
SUBDIR += palm
SUBDIR += polish
SUBDIR += portuguese
SUBDIR += print
SUBDIR += russian
SUBDIR += science
SUBDIR += security
SUBDIR += shells
SUBDIR += sysutils
SUBDIR += textproc
SUBDIR += ukrainian
SUBDIR += vietnamese
SUBDIR += www
SUBDIR += x11
SUBDIR += x11-clocks
SUBDIR += x11-fm
SUBDIR += x11-fonts
SUBDIR += x11-servers
SUBDIR += x11-themes
SUBDIR += x11-toolkits
SUBDIR += x11-wm
PORTSTOP= yes
.include <bsd.port.subdir.mk>
index:
@rm -f ${INDEXDIR}/${INDEXFILE}
@cd ${.CURDIR} && make ${INDEXDIR}/${INDEXFILE}
fetchindex: ${INDEXDIR}/{INDEXFILE}.bz2
@bunzip2 < ${INDEXDIR}/${INDEXFILE}.bz2 > ${INDEXDIR}/${INDEXFILE} && \
chmod a+r ${INDEXDIR}/${INDEXFILE}
${INDEXDIR}/{INDEXFILE}.bz2: .PHONY
@${FETCHINDEX} -o ${INDEXDIR}/${INDEXFILE}.bz2 ${MASTER_SITE_INDEX}${INDEXFILE}.bz2
MASTER_SITE_INDEX?= http://www.FreeBSD.org/ports/
SETENV?= /usr/bin/env
FETCHINDEX?= ${SETENV} ${FETCH_ENV} fetch -am
INDEX_JOBS?= 2
.if !defined(INDEX_VERBOSE)
INDEX_ECHO_MSG= echo > /dev/null
INDEX_ECHO_1ST= echo -n
.else
INDEX_ECHO_MSG= echo 1>&2
INDEX_ECHO_1ST= echo
.endif
${INDEXDIR}/${INDEXFILE}:
@${INDEX_ECHO_1ST} "Generating ${INDEXFILE} - please wait.."; \
if [ "${INDEX_PRISTINE}" != "" ]; then \
export LOCALBASE=/nonexistentlocal; \
export X11BASE=/nonexistentx; \
fi; \
tmpdir=`/usr/bin/mktemp -d -t index` || exit 1; \
trap "rm -rf $${tmpdir}; exit 1" 1 2 3 5 10 13 15; \
( cd ${.CURDIR} && make -j${INDEX_JOBS} INDEX_TMPDIR=$${tmpdir} BUILDING_INDEX=1 \
ECHO_MSG="${INDEX_ECHO_MSG}" describe ) || \
(rm -rf $${tmpdir} ; \
if [ "${INDEX_QUIET}" = "" ]; then \
echo; \
echo "********************************************************************"; \
echo "Before reporting this error, verify that you are running a supported"; \
echo "version of FreeBSD (see http://www.FreeBSD.org/ports/) and that you"; \
echo "have a complete and up-to-date ports collection. (INDEX builds are"; \
echo "not supported with partial or out-of-date ports collections -- in"; \
echo "particular, if you are using cvsup, you must cvsup the \"ports-all\""; \
echo "collection, and have no \"refuse\" files.) If that is the case, then"; \
echo "report the failure to ports@FreeBSD.org together with relevant"; \
echo "details of your ports configuration (including FreeBSD version,"; \
echo "your architecture, your environment, and your /etc/make.conf"; \
echo "settings, especially compiler flags and WITH/WITHOUT settings)."; \
echo; \
echo "Note: the latest pre-generated version of INDEX may be fetched"; \
echo "automatically with \"make fetchindex\"."; \
echo "********************************************************************"; \
echo; \
fi; \
exit 1); \
cat $${tmpdir}/${INDEXFILE}.desc.* | perl ${.CURDIR}/Tools/make_index | \
sed -e 's/ */ /g' -e 's/| */|/g' -e 's/ *|/|/g' -e 's./..g' | \
sort -t '|' +1 -2 | \
sed -e 's../.g' > ${INDEXDIR}/${INDEXFILE}.tmp; \
if [ "${INDEX_PRISTINE}" != "" ]; then \
sed -e "s,$${LOCALBASE},/usr/local," -e "s,$${X11BASE},/usr/X11R6," \
${INDEXDIR}/${INDEXFILE}.tmp > ${INDEXDIR}/${INDEXFILE}; \
else \
mv ${INDEXDIR}/${INDEXFILE}.tmp ${INDEXDIR}/${INDEXFILE}; \
fi; \
rm -rf $${tmpdir}; \
echo " Done."
print-index: ${INDEXDIR}/${INDEXFILE}
@awk -F\| '{ printf("Port:\t%s\nPath:\t%s\nInfo:\t%s\nMaint:\t%s\nIndex:\t%s\nB-deps:\t%s\nR-deps:\t%s\nE-deps:\t%s\nP-deps:\t%s\nF-deps:\t%s\nWWW:\t%s\n\n", $$1, $$2, $$4, $$6, $$7, $$8, $$9, $$11, $$12, $$13, $$10); }' < ${INDEXDIR}/${INDEXFILE}
CVS?= cvs
SUP?= cvsup
PORTSNAP?= portsnap
PORTSNAP_FLAGS?= -p ${.CURDIR}
.if defined(SUPHOST)
SUPFLAGS+= -h ${SUPHOST}
.endif
update:
.if defined(PORTSNAP_UPDATE)
@echo "--------------------------------------------------------------"
@echo ">>> Running ${PORTSNAP}"
@echo "--------------------------------------------------------------"
@${PORTSNAP} ${PORTSNAP_FLAGS} fetch
@${PORTSNAP} ${PORTSNAP_FLAGS} update
.elif defined(SUP_UPDATE) && defined(PORTSSUPFILE)
@echo "--------------------------------------------------------------"
@echo ">>> Running ${SUP}"
@echo "--------------------------------------------------------------"
@${SUP} ${SUPFLAGS} ${PORTSSUPFILE}
.elif defined(CVS_UPDATE)
@echo "--------------------------------------------------------------"
@echo ">>> Updating ${.CURDIR} from cvs repository" ${CVSROOT}
@echo "--------------------------------------------------------------"
cd ${.CURDIR}; ${CVS} -R -q update -A -P -d -I!
.elif defined(SUP_UPDATE) && !defined(PORTSSUPFILE)
@${ECHO_MSG} "Error: Please define PORTSSUPFILE before doing make update."
@exit 1
.else
@${ECHO_MSG} "Error: Please define either PORTSNAP_UPDATE, SUP_UPDATE, or CVS_UPDATE first."
.endif