summaryrefslogtreecommitdiff
path: root/lang/ruby/Makefile.common
blob: 4a40f205eb7d461ea4154a08e710e16531ac463e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
# $NetBSD: Makefile.common,v 1.47 2022/10/10 03:31:44 taca Exp $
#
# Ruby base distribution common definition
#
# used by databases/ruby-gdbm/Makefile
# used by devel/ruby-readline/Makefile
# used by devel/ruby-mode/Makefile
# used by lang/ruby27/Makefile
# used by lang/ruby27-base/Makefile
# used by lang/ruby30/Makefile
# used by lang/ruby30-base/Makefile
# used by lang/ruby31/Makefile
# used by lang/ruby31-base/Makefile
#
# RUBY_EXTNAME
#	RUBY_EXTNAME defines name of extension which included in
#	the Ruby's distribution file.
#

# Ruby's license
LICENSE=		2-clause-bsd OR ruby-license

#
# Ruby distribution sites.
#
RUBY_SITE_SUBDIR=	${_RUBY_VER_MAJOR}.${_RUBY_VER_MINOR}

MASTER_SITE_RUBY?= \
	http://cache.ruby-lang.org/pub/ruby/${RUBY_SITE_SUBDIR}/ \
	ftp://ftp.ruby-lang.org/pub/ruby/${RUBY_SITE_SUBDIR}/ \
	ftp://ftp.fu-berlin.de/unix/languages/ruby/${RUBY_SITE_SUBDIR}/ \
	ftp://ftp.ring.gr.jp/pub/lang/ruby/${RUBY_SITE_SUBDIR}/ \
	ftp://ftp.iij.ad.jp/pub/lang/ruby/${RUBY_SITE_SUBDIR}/ \
	ftp://ftp.idaemons.org/pub/mirror/ftp.ruby-lang.org/ruby/${RUBY_SITE_SUBDIR}/

# Ruby distribution
RUBY_DISTINFO_FILE=	${.CURDIR}/${RUBY_SRCDIR}/distinfo

RUBY_HOMEPAGE=		http://www.ruby-lang.org/en/

RUBY_WRKSRC?=		${WRKDIR}/${RUBY_DISTNAME}
EXTRACT_SUFX=		.tar.xz
STRIP?=			strip
EXTRACT_USING=		bsdtar

#
# substitutions
#
MESSAGE_SUBST+=		RUBY_DISTNAME=${RUBY_DISTNAME}
PLIST_SUBST+=		RUBY_SHLIBVER=${RUBY_SHLIBVER:Q} \
			RUBY_SHLIBMAJOR=${RUBY_SHLIBMAJOR:Q} \
			RUBY_NOSHLIBMAJOR=${RUBY_NOSHLIBMAJOR} \
			RUBY_NAME=${RUBY_NAME:Q}

.if !empty(RUBY_EXTNAME)

PKGNAME?=		${RUBY_PKGPREFIX}-${RUBY_EXTNAME}-${RUBY_VERSION}
DISTINFO_FILE=		${.CURDIR}/${RUBY_SRCDIR}/distinfo
PATCHDIR=		${.CURDIR}/${RUBY_SRCDIR}/patches
do-patch:
	${RUN} \
	cd ${WRKSRC}; \
	for p in `${EGREP} -l '^\+\+\+ ext/${RUBY_EXTNAME}/' ${PATCHDIR}/patch-*`;do \
		${SED} -e 's,^+++ ext/${RUBY_EXTNAME}/,+++ ,' $$p | \
		${PATCH} ${PATCH_ARGS}; \
	done || ${TRUE}
.endif

.include "replace.mk"

.if !empty(RUBY_USE_PTHREAD:M[nN][oO])
CONFIGURE_ARGS+=	--disable-pthread
.else
CONFIGURE_ARGS+=	--enable-pthread
GNU_CONFIGURE_STRICT=	no # at least ruby25-base doesn't know --enable-pthread

PTHREAD_OPTS+=		native
PTHREAD_AUTO_VARS=	yes

.include "../../mk/pthread.buildlink3.mk"
.endif
.include "../../mk/dlopen.buildlink3.mk"