mirror of
https://git.FreeBSD.org/ports.git
synced 2024-11-22 00:35:15 +00:00
6e2da9672f
The filesystems category houses file systems and file system utilities. It is added mainly to turn the sysutils/fusefs-* pseudo-category into a proper one, but is also useful for the sundry of other file systems related ports found in the tree. Ports that seem like they belong there are moved to the new category. Two ports, sysutils/fusefs-funionfs and sysutils/fusefs-fusepak are not moved as they currently don't fetch and don't have TIMESTAMP set in their distinfo, but that is required to be able to push a rename of the port by the pre-receive hook. Approved by: portmgr (rene) Reviewed by: mat Pull Request: https://github.com/freebsd/freebsd-ports/pull/302 PR: 281988
225 lines
7.1 KiB
Makefile
225 lines
7.1 KiB
Makefile
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 += filesystems
|
||
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 += misc
|
||
SUBDIR += multimedia
|
||
SUBDIR += net
|
||
SUBDIR += net-im
|
||
SUBDIR += net-mgmt
|
||
SUBDIR += net-p2p
|
||
SUBDIR += news
|
||
SUBDIR += polish
|
||
SUBDIR += ports-mgmt
|
||
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-drivers
|
||
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: ${INDEXDIR}/${INDEXFILE}
|
||
|
||
INDEX_COMPRESSION_FORMAT?= xz
|
||
|
||
.if ${INDEX_COMPRESSION_FORMAT} != xz && \
|
||
${INDEX_COMPRESSION_FORMAT} != bz2 && ${INDEX_COMPRESSION_FORMAT} != zst
|
||
.error "Invalid compression format: ${INDEX_COMPRESSION_FORMAT}, expecting xz, bz2 or zst"
|
||
.endif
|
||
|
||
fetchindex: ${INDEXDIR}/${INDEXFILE}.${INDEX_COMPRESSION_FORMAT}
|
||
@if bsdcat < ${INDEXDIR}/${INDEXFILE}.${INDEX_COMPRESSION_FORMAT} > ${INDEXDIR}/${INDEXFILE}.tmp ; then \
|
||
chmod a+r ${INDEXDIR}/${INDEXFILE}.tmp; \
|
||
${MV} ${INDEXDIR}/${INDEXFILE}.tmp ${INDEXDIR}/${INDEXFILE}; \
|
||
${RM} ${INDEXDIR}/${INDEXFILE}.${INDEX_COMPRESSION_FORMAT} \
|
||
else ; \
|
||
${RM} ${INDEXDIR}/${INDEXFILE}.tmp ; \
|
||
fi
|
||
|
||
${INDEXDIR}/${INDEXFILE}.${INDEX_COMPRESSION_FORMAT}: .PHONY
|
||
${FETCHINDEX} ${INDEXDIR}/${INDEXFILE}.${INDEX_COMPRESSION_FORMAT} \
|
||
${MASTER_SITE_INDEX}${INDEXFILE}.${INDEX_COMPRESSION_FORMAT}
|
||
|
||
MASTER_SITE_INDEX?= https://download.FreeBSD.org/ports/index/
|
||
SETENV?= /usr/bin/env
|
||
FETCHINDEX?= ${SETENV} ${FETCH_ENV} fetch -am -o
|
||
|
||
.if !defined(INDEX_JOBS)
|
||
INDEX_JOBS!= ${SYSCTL} -n kern.smp.cpus
|
||
.endif
|
||
|
||
.if !defined(INDEX_VERBOSE)
|
||
INDEX_ECHO_MSG= true
|
||
INDEX_ECHO_1ST= echo -n
|
||
.else
|
||
INDEX_ECHO_MSG= echo 1>&2
|
||
INDEX_ECHO_1ST= echo
|
||
.endif
|
||
|
||
# /rescue/sh is statically linked and much faster to execute than the
|
||
# dynamically linked /bin/sh. This is significant for targets like
|
||
# make index that execute the shell tens of thousands of times.
|
||
.if exists(/rescue/sh)
|
||
INDEX_SHELL= /rescue/sh
|
||
.else
|
||
INDEX_SHELL= /bin/sh
|
||
.endif
|
||
|
||
.if !defined(INDEX_PORTS)
|
||
INDEX_PORTS=.
|
||
.endif
|
||
|
||
.if exists(/usr/libexec/make_index)
|
||
MAKE_INDEX= /usr/libexec/make_index /dev/stdin
|
||
.else
|
||
MAKE_INDEX= perl ${.CURDIR}/Tools/make_index
|
||
.endif
|
||
|
||
${INDEXDIR}/${INDEXFILE}: .PHONY
|
||
@${INDEX_ECHO_1ST} "Generating ${INDEXFILE} - please wait.."; \
|
||
if [ "${INDEX_PRISTINE}" != "" ]; then \
|
||
export LOCALBASE=/nonexistentlocal; \
|
||
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}; for i in ${INDEX_PORTS}; do (cd $${i} && ${MAKE} -j${INDEX_JOBS} INDEX_TMPDIR=$${tmpdir} BUILDING_INDEX=1 \
|
||
__MAKE_SHELL=${INDEX_SHELL} \
|
||
ECHO_MSG="${INDEX_ECHO_MSG}" describe); done ) || \
|
||
(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 https://ports.FreeBSD.org) 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."; \
|
||
echo "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 OPTIONS_SET/UNSET 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.* | \
|
||
sed -e 's|${.CURDIR}|${PORTSDIR}|g' | \
|
||
(cd ${.CURDIR} ; ${MAKE_INDEX}) | \
|
||
sed -e 's/ */ /g' -e 's/| */|/g' -e 's/ *|/|/g' -e 's./..g' | \
|
||
sort -t '|' -k 2,3 | \
|
||
sed -Ee 's../.g' -e ':a' -e 's|/[^/]+/\.\.||; ta' \
|
||
-e 's|${PORTSDIR}|/usr/ports|g' \
|
||
-e 's|${.CURDIR}|/usr/ports|g' > ${INDEXDIR}/${INDEXFILE}.tmp; \
|
||
if [ "${INDEX_PRISTINE}" != "" ]; then \
|
||
sed -e "s,$${LOCALBASE},/usr/local," ${INDEXDIR}/${INDEXFILE}.tmp > ${INDEXDIR}/${INDEXFILE}; \
|
||
else \
|
||
mv ${INDEXDIR}/${INDEXFILE}.tmp ${INDEXDIR}/${INDEXFILE}; \
|
||
fi; \
|
||
rm -rf $${tmpdir}; \
|
||
${INDEX_ECHO_1ST} " 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}
|
||
|
||
GIT?= git
|
||
.if !defined(SVN) || empty(SVN)
|
||
. for _P in /usr/bin /usr/local/bin
|
||
. for _S in svn svnlite
|
||
. if exists(${_P}/${_S})
|
||
SVN= ${_P}/${_S}
|
||
. endif
|
||
. endfor
|
||
. endfor
|
||
.endif
|
||
RSYNC?= rsync
|
||
PORTSNAP?= portsnap
|
||
PORTSNAP_FLAGS?= -p ${.CURDIR}
|
||
.if !target(update)
|
||
update:
|
||
.if exists(${.CURDIR}/.svn)
|
||
@echo "--------------------------------------------------------------"
|
||
@echo ">>> Updating ${.CURDIR} using Subversion"
|
||
@echo "--------------------------------------------------------------"
|
||
cd ${.CURDIR}; ${SVN} update
|
||
.elif exists(${.CURDIR}/.git)
|
||
. if exists(${.CURDIR}/.git/svn)
|
||
@echo "--------------------------------------------------------------"
|
||
@echo ">>> Updating ${.CURDIR} from git+svn repository"
|
||
@echo "--------------------------------------------------------------"
|
||
cd ${.CURDIR}; ${GIT} svn rebase
|
||
. else
|
||
@echo "--------------------------------------------------------------"
|
||
@echo ">>> Updating ${.CURDIR} from git repository"
|
||
@echo "--------------------------------------------------------------"
|
||
cd ${.CURDIR}; ${GIT} pull --rebase
|
||
. endif
|
||
.elif defined(RSYNC_UPDATE) && defined(PORTS_RSYNC_SOURCE)
|
||
@echo "--------------------------------------------------------------"
|
||
@echo ">>> Updating with ${RSYNC} from ${PORTS_RSYNC_SOURCE}"
|
||
@echo "--------------------------------------------------------------"
|
||
@${RSYNC} ${RSYNC_FLAGS} ${PORTS_RSYNC_SOURCE}/ ${.CURDIR}/
|
||
.else
|
||
@echo "--------------------------------------------------------------"
|
||
@echo ">>> Running ${PORTSNAP}"
|
||
@echo "--------------------------------------------------------------"
|
||
.if !exists(${PORTSDIR}/.portsnap.INDEX)
|
||
@echo "Error: 'make update' uses portsnap(8) by default and"
|
||
@echo "needs ${PORTSDIR} to be created by portsnap on its first run."
|
||
@echo "Please run 'portsnap fetch extract' first."
|
||
.else
|
||
@${PORTSNAP} ${PORTSNAP_FLAGS} fetch
|
||
@${PORTSNAP} ${PORTSNAP_FLAGS} update
|
||
.endif
|
||
.endif
|
||
.endif
|