aboutsummaryrefslogtreecommitdiff
path: root/Mk/bsd.linux-rpm.mk
diff options
context:
space:
mode:
authorKirill Ponomarev <krion@FreeBSD.org>2006-01-21 17:37:14 +0000
committerKirill Ponomarev <krion@FreeBSD.org>2006-01-21 17:37:14 +0000
commit01c588a6357d8452a3e0af157e9c1250c067db2f (patch)
treefb26bf418ea8791ab4d308a7931c623124611c3c /Mk/bsd.linux-rpm.mk
parentf484c99df79f169bf954fc4b0ed83e59279a596a (diff)
downloadports-01c588a6357d8452a3e0af157e9c1250c067db2f.tar.gz
ports-01c588a6357d8452a3e0af157e9c1250c067db2f.zip
- Fix 'all-depends-list' target in cases if dependencies list is
very long and if some dependencies can't be added into the list. [1] - Fix FAM support. Make gamin the default FAM system. [2] - Introduce new 'quicksearch' target to show only port, path and info section of the matching ports. [3] - Introduce new category - rubygems. [4] - Fix stale dependencies while installing qmail slaveport and another port that depends on qmail. [5] - Add commentary for describes target in bsd.port.mk. [6] - Fix warning issued during make index on archs !368. [7] - Add USE_DOS2UNIX variable. If set to "YES", remove the ^M from all files under ${WRKSRC}. If set to a string, remove in all files under ${WRKSRC} with one of these names the ^Ms. [8] - Add new variables PERL_RUN_DEPENDS and PERL_BUILD_DEPENDS by checking the existance of the Perl modules with the "perl -e 'use module;'" command. [9] - Fix bsd.port.mk variable quoting issues. No quoting is necessary anymore either in the Makefile or on the command line. Affected variables include: BROKEN FORBIDDEN IGNORE MANUAL_PACKAGE_BUILD NO_CDROM NO_PACKAGE RESTRICTED [10] - Add NOFETCHFILES variable. If set, don't download these files from the ${MASTER_SITES} or ${MASTER_SITE_BACKUP} (but do from ${MASTER_SITE_OVERRIDE}). [11] - Improve 'search' target output. [12] - Add a new virtual category for Amateur Radio - hamradio. [13] - Cleanup some old/unused pathes in bsd.port.mk. [14] - Add @dirrmtry for plists which does the same as: "@unexec rmdir %D/foo 2>/dev/null || true" [15] - Remove virtual category - offix. [16] - Use portsnap instead of cvsup or cvs on "make update" in /usr/ports. [17] - Move location of bsd.autotools.mk within bsd.port.mk [18] - Add bsd.linux-rpm.mk, fix INSTALLS_SHLIB for Linux ports [19] - Use new USE_RC_SUBR format for FreeBSD version >= 700007 [20] - Replace the string "FreeBSD" by "The FreeBSD Project" in the security warning [21] - Add bsd.local.mk for local modification to ports framework. [22] - Replace rcNG spelling by rc.d [23] - Remove superfluous USE_REINPLACE. [24] Special thanks to: linimon for spending hours with all these patches clement for fixes kris for help with pointyhat PR: ports/86310 [1], ports/89498 [2], ports/83530 [3], ports/83789 [4], ports/84053 [5], ports/86281 [6], ports/87214 [7], ports/87234 [8], ports/87318 [9], ports/87396 [10], ports/87605 [11], ports/87840 [12], ports/88230 [13], ports/88493 [14], ports/88711 [15], ports/88751 [16], ports/89281 [17], ports/89999 [18], ports/90031 [19], ports/90150 [20], ports/90668 [21], ports/91433 [23], ports/88754 [24] Submitted by: mi [1], marcus [2], Lars Engels <lars.engels@0x20.net> [3], pav [4, 16, 20, 24], garga [5], cperciva [6], vd [7], edwin [8, 9, 11, 15, 21], fenner [10], Arseny Nasokin <tarc.po.cs.msu.su@tarc.po.cs.msu.su> [12], Carl Makin <carl@stagecraft.cx> [13], arved [14], NIIMI Satoshi <sa2c@sa2c.net> [17], thierry [18], jylefort [19], linimon [22], dougb [23]
Notes
Notes: svn path=/head/; revision=154065
Diffstat (limited to 'Mk/bsd.linux-rpm.mk')
-rw-r--r--Mk/bsd.linux-rpm.mk90
1 files changed, 90 insertions, 0 deletions
diff --git a/Mk/bsd.linux-rpm.mk b/Mk/bsd.linux-rpm.mk
new file mode 100644
index 000000000000..7989922b3f1e
--- /dev/null
+++ b/Mk/bsd.linux-rpm.mk
@@ -0,0 +1,90 @@
+#-*- mode: Makefile; tab-width: 4; -*-
+# ex:ts=4
+#
+# $FreeBSD: /tmp/pcvs/ports/Mk/bsd.linux-rpm.mk,v 1.1 2006-01-21 17:37:01 krion Exp $
+#
+
+.if !defined(_POSTMKINCLUDED) && !defined(Linux_RPM_Pre_Include)
+
+Linux_RPM_Include_MAINTAINER= jylefort@FreeBSD.org
+Linux_RPM_Pre_Include= bsd.linux-rpm.mk
+
+RPM2CPIO?= ${LOCALBASE}/bin/rpm2cpio
+
+EXTRACT_SUFX?= .${LINUX_RPM_ARCH}.rpm
+
+USE_LINUX?= yes
+USE_LINUX_PREFIX= yes
+
+NO_WRKSUBDIR= yes
+NO_BUILD= yes
+
+. if ${ARCH} == "amd64"
+LINUX_RPM_ARCH?= i386 # the linuxulator does not yet support amd64 code
+. elif ${ARCH} == "powerpc"
+LINUX_RPM_ARCH?= ppc
+. else
+LINUX_RPM_ARCH?= ${ARCH}
+. endif
+
+.endif
+
+.if defined(_POSTMKINCLUDED) && !defined(Linux_RPM_Post_Include)
+
+Linux_RPM_Post_Include= bsd.linux-rpm.mk
+
+MASTER_SITES?= ${MASTER_SITE_FEDORA_LINUX}
+MASTER_SITE_SUBDIR?= 3/${LINUX_RPM_ARCH}/os/Fedora/RPMS/
+PKGNAMEPREFIX?= linux-
+
+EXTRACT_DEPENDS+= ${RPM2CPIO}:${PORTSDIR}/archivers/rpm
+
+EXTRACT_CMD?= ${RPM2CPIO}
+EXTRACT_BEFORE_ARGS?=
+EXTRACT_AFTER_ARGS?= | ${CPIO} -id --quiet
+
+MD5_FILE?= ${MASTERDIR}/distinfo.${LINUX_RPM_ARCH}
+
+. if defined(AUTOMATIC_PLIST)
+
+. if ${USE_LINUX} == "8" || ${USE_LINUX:L} == "yes"
+_LINUX_BASE_SUFFIX= 8
+. elif ${USE_LINUX} == "debian"
+_LINUX_BASE_SUFFIX= debian
+. else
+# other linux_base ports do not provide a pkg-plist file
+IGNORE= uses AUTOMATIC_PLIST with an unsupported USE_LINUX, \"${USE_LINUX}\". Supported values are \"yes\", \"8\" and \"debian\"
+. endif
+
+PLIST?= ${WRKDIR}/.PLIST.linux-rpm
+
+pre-install: linux-rpm-generate-plist
+
+linux-rpm-generate-plist:
+ @cd ${WRKSRC} && \
+ ${FIND} * ! -type d | ${SORT} > ${PLIST} && \
+ ${FIND} * -type d | ${SORT} | ${SED} -e 's|^|@dirrm |' > ${PLIST}.dirs
+ @${GREP} '^@dirrm ' ${PORTSDIR}/emulators/linux_base-${_LINUX_BASE_SUFFIX}/pkg-plist | ${SORT} > ${PLIST}.shared-dirs
+ @${COMM} -1 -3 ${PLIST}.shared-dirs ${PLIST}.dirs | ${SORT} -r >> ${PLIST}
+
+. endif
+
+. if !target(do-install)
+do-install:
+ cd ${WRKSRC} && ${FIND} * -type d -exec ${MKDIR} "${PREFIX}/{}" \;
+ cd ${WRKSRC} && ${FIND} * ! -type d | ${CPIO} -pm -R root:wheel ${PREFIX}
+. endif
+
+. if !target(new-plist)
+new-plist:
+ @${RM} -rf ${WRKDIR}/.new-plist
+ @${MKDIR} ${WRKDIR}/.new-plist
+ @cd ${WRKDIR}/.new-plist && \
+ for f in ${DISTFILES}; do \
+ ${RPM2CPIO} ${_DISTDIR}/$$f | ${CPIO} -id --quiet; \
+ ${FIND} * ! type d | ${SORT} > ${PLIST}.new; \
+ ${FIND} -d * -type d | ${SED} -e 's|^|@dirrm |' >> ${PLIST}.new; \
+ done
+. endif
+
+.endif