2000-09-06 16:06:58 -04:00
#
# bsd.ruby.mk - Utility definitions for Ruby related ports.
#
# Created by: Akinori MUSHA <knu@FreeBSD.org>
#
# $FreeBSD$
#
2000-09-16 07:37:37 -04:00
. i f ! d e f i n e d ( R u b y _ I n c l u d e )
2000-09-06 16:06:58 -04:00
Ruby_Include = bsd.ruby.mk
Ruby_Include_MAINTAINER = knu@FreeBSD.org
2001-06-04 10:54:32 -04:00
#
# [variables that a user may define]
#
# RUBY_VER - (See below)
2002-12-24 13:12:20 -05:00
# RUBY_DEFAULT_VER - Set to (e.g.) "1.8" if you want to refer to "ruby18" just as "ruby".
2001-06-04 10:54:32 -04:00
# RUBY_ARCH - (See below)
2002-12-27 16:39:06 -05:00
# RUBY_RD_HTML - Define if you want HTML files generated from RD files.
2000-09-06 16:06:58 -04:00
#
2000-09-06 18:40:09 -04:00
# [variables that each port can define]
2000-09-06 16:06:58 -04:00
#
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
# RUBY - Set to full path of ruby. If you set this, the values of the following variables are automatically obtained from the ruby executable: RUBY_VER, RUBY_VERSION, RUBY_NAME, RUBY_ARCH, RUBY_LIBDIR, RUBY_ARCHLIBDIR, RUBY_SITELIBDIR, and RUBY_SITEARCHLIBDIR.
# RUBY_VER - Set to the alternative short version of ruby in the form of `x.y' (see below for current value).
2000-09-06 16:06:58 -04:00
# USE_RUBY - Says that the port uses ruby for building and running.
2000-09-16 07:37:37 -04:00
# RUBY_NO_BUILD_DEPENDS - Says that the port should not build-depend on ruby.
# RUBY_NO_RUN_DEPENDS - Says that the port should not run-depend on ruby.
2000-09-06 16:06:58 -04:00
# USE_LIBRUBY - Says that the port uses libruby.
2001-04-06 05:19:22 -04:00
# RUBY_WITH_PTHREAD - Says that the port needs to be compiled with pthread.
2000-09-16 07:37:37 -04:00
# USE_RUBY_EXTCONF - Says that the port uses extconf.rb to configure. Implies USE_RUBY.
2000-09-06 16:06:58 -04:00
# RUBY_EXTCONF - Set to the alternative name of extconf.rb (default: extconf.rb).
# RUBY_EXTCONF_SUBDIRS - Set to list of subdirectories, if multiple modules are included.
2001-08-12 01:32:33 -04:00
# USE_RUBY_SETUP - Says that the port uses setup.rb to configure and build.
2000-09-06 16:06:58 -04:00
# RUBY_SETUP - Set to the alternative name of setup.rb (default: setup.rb).
# USE_RUBY_AMSTD - Says that the port uses amstd for building and running.
2002-10-06 15:49:32 -04:00
# USE_RUBY_RDTOOL - Says that the port uses rdtool to generate documents.
# USE_RUBY_RDOC - Says that the port uses rdoc to generate documents.
2002-09-21 03:06:39 -04:00
# USE_RUBY_FEATURES - Says that the port requires some of the following features
# for building and/or running (default: none):
2004-03-23 04:03:32 -05:00
# benchmark bigdecimal devel-logger
# dl drb erb
# fileutils gserver iconv
# ipaddr open-uri openssl
# optparse pp racc-runtime
# rdoc rexml ruby18
# runit set soap
# stringio strscan testunit
# tsort webrick xmlrpc
# yaml zlib
2002-09-21 03:06:39 -04:00
# benchmark dl fileutil optparse pp racc-runtime
2004-03-23 04:03:32 -05:00
# rexml ruby18 set stringio strscan tsort yaml
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
# RUBY_REQUIRE - Set to a Ruby expression to evaluate before building the port. The constant "Ruby" is set to the integer version number of ruby, and the result of the expression will be set to RUBY_PROVIDED, which is left undefined if the result is nil, false or a zero-length string. Implies USE_RUBY.
2000-09-30 13:34:44 -04:00
# RUBY_SHEBANG_FILES - Specify the files which shebang lines you want to fix.
2002-11-22 09:53:06 -05:00
# RUBY_RD_FILES - Specify the RD files which you want to generate HTML documents from.
# If this is defined and not empty, USE_RUBY_RDTOOL is implied and
# RUBY_RD_HTML_FILES is defined.
2000-09-06 16:06:58 -04:00
#
2001-06-04 10:54:32 -04:00
# [variables that each port should not (re)define]
2000-09-06 16:06:58 -04:00
#
# RUBY_PKGNAMEPREFIX - Common PKGNAMEPREFIX for ruby ports (default: ruby${RUBY_SUFFIX}-)
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
# RUBY_VERSION - Full version of ruby without preview/beta suffix in the form of `x.y.z' (see below for current value).
# RUBY_VERSION_CODE - Full integer version of ruby without preview/beta suffix in the form of `xyz'.
# RUBY_PORTVERSION - PORTVERSION for the standard ruby ports (ruby, ruby-gdbm, etc.).
# RUBY_DISTNAME - DISTNAME for the standard ruby ports, i.e. the basename of the ruby distribution tarball.
2001-04-12 12:57:17 -04:00
# RUBY_DISTVERSION - The version number part of RUBY_DISTNAME.
2001-05-11 14:22:57 -04:00
# RUBY_PATCHFILES - PATCHFILES for the standard ruby ports, i.e. the basename of the ruby distribution tarball.
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
# RUBY_WRKSRC - WRKSRC for the ruby port.
2002-12-12 07:53:03 -05:00
# MASTER_SITE_SUBDIR_RUBY - MASTER_SITE_SUBDIR for the ruby distfiles.
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
#
2000-09-06 16:06:58 -04:00
# RUBY_SHLIBVER - Major version of libruby (see below for current value).
2001-06-04 10:54:32 -04:00
# RUBY_ARCH - Set to target architecture name. (e.g. i386-freebsdelf4.3)
# RUBY_R - Extra suffix only defined when RUBY_WITH_PTHREAD is defined. (_r)
2004-02-26 14:20:09 -05:00
# RUBY_SUFFIX - Suffix for ruby binaries and directories (${RUBY_VER:S/.//}${RUBY_R}).
2001-05-06 12:42:57 -04:00
# RUBY_WITHOUT_SUFFIX - Always ${LOCALBASE}/bin/ruby.
2004-02-26 14:20:09 -05:00
# RUBY_WITH_SUFFIX - Always ${RUBY_WITHOUT_SUFFIX}${RUBY_SUFFIX}.
2000-09-06 16:06:58 -04:00
# RUBY_NAME - Ruby's name with trailing suffix.
#
2002-10-06 16:54:37 -04:00
# RUBY_MODNAME - Set to the module name (default: ${PORTNAME}).
#
2002-10-06 15:49:32 -04:00
# RUBY_RD2 - Full path of rd2 executable.
# RUBY_RDOC - Full path of rdoc executable.
2000-09-06 16:06:58 -04:00
#
2003-08-07 09:21:05 -04:00
# RUBY_BASE_PORT - Port path of base ruby without PORTSDIR, without suffix except version.
2001-06-04 10:54:32 -04:00
# RUBY_PORT - Port path of ruby without PORTSDIR.
2002-09-21 03:06:39 -04:00
# RUBY_SHIM18_PORT - Port path of ruby16-shim-ruby18 without PORTSDIR.
2001-06-04 10:54:32 -04:00
# RUBY_AMSTD_PORT - Port path of ruby-amstd without PORTSDIR.
2002-10-06 15:49:32 -04:00
# RUBY_RDTOOL_PORT - Port path of rdtool without PORTSDIR.
# RUBY_RDOC_PORT - Port path of rdoc without PORTSDIR.
2004-03-23 04:03:32 -05:00
# RUBY_ICONV_PORT - Port path of ruby-iconv without PORTSDIR.
2000-09-06 16:06:58 -04:00
#
2001-06-04 10:54:32 -04:00
# DEPEND_LIBRUBY - LIB_DEPENDS entry for libruby.
# DEPEND_RUBY - BUILD_DEPENDS/RUN_DEPENDS entry for ruby.
2002-09-21 03:06:39 -04:00
# DEPEND_RUBY_SHIM18 - BUILD_DEPENDS/RUN_DEPENDS entry for ruby16-shim-ruby18.
2001-06-04 10:54:32 -04:00
# DEPEND_RUBY_AMSTD - BUILD_DEPENDS/RUN_DEPENDS entry for ruby-amstd.
2002-10-06 15:49:32 -04:00
# DEPEND_RUBY_RDTOOL - BUILD_DEPENDS entry for rdtool.
# DEPEND_RUBY_RDOC - BUILD_DEPENDS entry for rdoc.
2004-03-23 04:03:32 -05:00
# DEPEND_RUBY_ICONV - BUILD_DEPENDS/RUN_DEPENDS entry for ruby-iconv.
2000-09-06 16:06:58 -04:00
#
# RUBY_LIBDIR - Installation path for architecture independent libraries.
# RUBY_ARCHLIBDIR - Installation path for architecture dependent libraries.
# RUBY_SITELIBDIR - Installation path for site architecture independent libraries.
# RUBY_SITEARCHLIBDIR - Installation path for site architecture dependent libraries.
# RUBY_DOCDIR - Installation path for documents.
# RUBY_EXAMPLESDIR - Installation path for examples.
2002-10-06 16:54:37 -04:00
# RUBY_MODDOCDIR - Installation path for the module's documents.
# RUBY_MODEXAMPLESDIR - Installation path for the module's examples.
2001-05-11 15:43:03 -04:00
# RUBY_ELISPDIR - Installation path for emacs lisp files.
2000-09-06 16:06:58 -04:00
#
2003-01-11 07:13:05 -05:00
RUBY_DEFAULT_VER ?= 1.8
RUBY_VER ?= ${ RUBY_DEFAULT_VER }
2002-10-06 15:49:32 -04:00
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
. i f d e f i n e d ( R U B Y )
. i f ! e x i s t s ( $ { R U B Y } )
. e r r o r Y o u s e t t h e v a r i a b l e R U B Y t o "${RUBY}" , b u t i t d o e s n o t s e e m t o e x i s t . P l e a s e s p e c i f y a n a l r e a d y i n s t a l l e d r u b y e x e c u t a b l e .
. e n d i f
2000-09-06 16:06:58 -04:00
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
_RUBY_TEST != ${ RUBY } -e 'begin; require "rbconfig"; rescue LoadError; puts "error"; end'
. i f ! e m p t y ( _ R U B Y _ T E S T )
. e r r o r Y o u s e t t h e v a r i a b l e R U B Y t o "${RUBY}" , b u t i t f a i l e d t o i n c l u d e r b c o n f i g . P l e a s e s p e c i f y a p r o p e r l y i n s t a l l e d r u b y e x e c u t a b l e .
. e n d i f
_RUBY_CONFIG = ${ RUBY } -r rbconfig -e 'C = Config::CONFIG' -e
RUBY_VERSION != ${ _RUBY_CONFIG } 'puts VERSION'
RUBY_SUFFIX ?= # empty
RUBY_ARCH != ${ _RUBY_CONFIG } 'puts C["target"]'
RUBY_NAME != ${ _RUBY_CONFIG } 'puts C["ruby_install_name"]'
_RUBY_SYSLIBDIR != ${ _RUBY_CONFIG } 'puts C["libdir"]'
_RUBY_SITEDIR != ${ _RUBY_CONFIG } 'puts C["sitedir"]'
. e l s e
RUBY ?= ${ LOCALBASE } /bin/${ RUBY_NAME }
2002-12-24 13:12:20 -05:00
. i f d e f i n e d ( R U B Y _ V E R ) & & ${RUBY_VER} = = 1.8
2003-10-31 07:33:35 -05:00
RUBY_VERSION ?= 1.8.1
2004-05-02 16:30:11 -04:00
RUBY_DISTVERSION ?= ${ RUBY_VERSION } -2004.05.02
2003-10-31 07:33:35 -05:00
#RUBY_PATCHFILES?= ruby-${RUBY_DISTVERSION}-yyyy.mm.dd.diff.bz2
2004-05-02 16:30:11 -04:00
RUBY_PORTVERSION ?= ${ RUBY_VERSION } .2004.05.02
#RUBY_WRKSRC= ${WRKDIR}/ruby-${RUBY_VERSION}
MASTER_SITE_SUBDIR_RUBY = snapshots
2002-12-24 13:12:20 -05:00
. e l i f d e f i n e d ( R U B Y _ V E R ) & & ${RUBY_VER} = = 1.7
. e r r o r "Ruby 1.7 is obsolete; set RUBY_VER to 1.8 instead."
2000-09-06 16:06:58 -04:00
. e l s e
2002-11-06 07:28:56 -05:00
RUBY_VERSION ?= 1.6.8
2002-12-24 13:12:20 -05:00
#RUBY_DISTVERSION?= ${RUBY_VERSION}
2003-10-31 14:34:06 -05:00
RUBY_PATCHFILES ?= ruby-${ RUBY_DISTVERSION } -2003.04.19.diff.bz2 \
2004-04-17 15:17:35 -04:00
ruby-${ RUBY_DISTVERSION } -2003.04.19-2003.10.15.diff.bz2 \
ruby-${ RUBY_DISTVERSION } -2003.10.15-2004.04.16.diff.bz2
RUBY_PORTVERSION ?= ${ RUBY_VERSION } .2004.04.16
2002-12-24 13:12:20 -05:00
#RUBY_WRKSRC= ${WRKDIR}/ruby-${RUBY_VERSION}
#MASTER_SITE_SUBDIR_RUBY= snapshots
2000-09-06 16:06:58 -04:00
. e n d i f
2002-12-24 13:12:20 -05:00
# defined(RUBY_VER) && ${RUBY_VER} == 1.8
2002-03-10 15:42:48 -05:00
2003-11-24 07:43:40 -05:00
CONFIGURE_TARGET = ${ ARCH } -portbld-freebsd${ OSREL : C / \. .*// } ${ RUBY_R }
2002-03-10 15:42:48 -05:00
RUBY_ARCH ?= ${ ARCH } -freebsd${ OSREL : C / \. .*// } ${ RUBY_R }
RUBY_NAME ?= ruby${ RUBY_SUFFIX }
_RUBY_SYSLIBDIR ?= ${ LOCALBASE } /lib
_RUBY_SITEDIR ?= ${ _RUBY_SYSLIBDIR } /ruby/site_ruby
. e n d i f
# defined(RUBY)
2000-09-06 16:06:58 -04:00
2001-06-04 10:54:32 -04:00
RUBY_DEFAULT_SUFFIX ?= ${ RUBY_DEFAULT_VER : S /.// }
2001-05-05 18:03:07 -04:00
RUBY_DISTVERSION ?= ${ RUBY_VERSION }
2001-05-11 14:22:57 -04:00
RUBY_PORTVERSION ?= ${ RUBY_VERSION }
2002-12-24 13:12:20 -05:00
MASTER_SITE_SUBDIR_RUBY ?= ${ RUBY_VER }
2001-04-12 12:57:17 -04:00
RUBY_DISTNAME ?= ruby-${ RUBY_DISTVERSION }
2001-04-10 03:23:49 -04:00
2001-07-31 12:46:55 -04:00
RUBY_WRKSRC ?= ${ WRKDIR } /${ RUBY_DISTNAME }
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
RUBY_VERSION_CODE ?= ${ RUBY_VERSION : S /.//g }
RUBY_VER = ${ RUBY_VERSION : R }
2004-02-26 14:20:09 -05:00
RUBY_SUFFIX = ${ RUBY_VER : S /.// } ${ RUBY_R }
2001-10-08 02:39:54 -04:00
2001-05-06 12:42:57 -04:00
RUBY_WITHOUT_SUFFIX ?= ${ LOCALBASE } /bin/ruby
2004-02-26 14:20:09 -05:00
RUBY_WITH_SUFFIX ?= ${ RUBY_WITHOUT_SUFFIX } ${ RUBY_SUFFIX }
2001-05-05 19:02:32 -04:00
2004-02-26 14:20:09 -05:00
RUBY_PKGNAMEPREFIX ?= ruby${ RUBY_SUFFIX } -
2001-06-04 10:54:32 -04:00
RUBY_SHLIBVER ?= ${ RUBY_VER : S /.// }
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
2003-11-24 07:43:40 -05:00
RUBY_CONFIGURE_ARGS += --program-prefix= ""
2000-09-06 16:06:58 -04:00
2003-08-22 05:25:17 -04:00
# PORTDIRNAME is not defined yet
_IS_RUBY_R_PORT = ${ .CURDIR : M *_r }
. i f $ { O S V E R S I O N } > = 5 0 1 0 0 0 & & e m p t y ( _ I S _ R U B Y _ R _ P O R T )
2003-08-21 11:09:44 -04:00
. u n d e f R U B Y _ W I T H _ P T H R E A D
. e n d i f
2001-06-04 10:54:32 -04:00
. i f d e f i n e d ( R U B Y _ W I T H _ P T H R E A D )
RUBY_CONFIGURE_ARGS += --with-libc_r= yes
RUBY_R = _r
. e l s e
RUBY_CONFIGURE_ARGS += --with-libc_r= no
RUBY_R = # none
. e n d i f
2004-05-22 14:49:49 -04:00
DEPENDS_ARGS += RUBY_VER = " ${ RUBY_VER } " RUBY_R = " ${ RUBY_R } "
2001-06-04 10:54:32 -04:00
RUBY_CONFIGURE_ARGS += --program-suffix= " ${ RUBY_SUFFIX } "
2002-10-06 16:54:37 -04:00
RUBY_MODNAME ?= ${ PORTNAME }
2000-09-06 16:06:58 -04:00
# Commands
2002-10-06 15:49:32 -04:00
RUBY_RD2 ?= ${ LOCALBASE } /bin/rd2
RUBY_RDOC ?= ${ LOCALBASE } /bin/rdoc
2000-09-06 16:06:58 -04:00
# Ports
2003-08-07 09:21:05 -04:00
RUBY_BASE_PORT ?= lang/ruby${ RUBY_VER : S /.// }
RUBY_PORT ?= ${ RUBY_BASE_PORT } ${ RUBY_R }
2002-09-21 03:06:39 -04:00
RUBY_SHIM18_PORT ?= lang/ruby16-shim-ruby18
2000-09-06 16:06:58 -04:00
RUBY_AMSTD_PORT ?= devel/ruby-amstd
2002-10-06 15:49:32 -04:00
RUBY_RDTOOL_PORT ?= textproc/ruby-rdtool
RUBY_RDOC_PORT ?= textproc/ruby-rdoc
2004-03-23 04:03:32 -05:00
RUBY_ICONV_PORT ?= converters/ruby-iconv
2000-09-06 16:06:58 -04:00
# Depends
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
DEPEND_LIBRUBY ?= ${ RUBY_NAME } .${ RUBY_SHLIBVER } :${ PORTSDIR } /${ RUBY_PORT }
DEPEND_RUBY ?= ${ RUBY } :${ PORTSDIR } /${ RUBY_PORT }
2002-09-21 03:06:39 -04:00
DEPEND_RUBY_SHIM18 ?= ${ RUBY_SITEARCHLIBDIR } /features/ruby18/file_ruby18.so:${ PORTSDIR } /${ RUBY_SHIM18_PORT }
2002-02-20 00:00:47 -05:00
DEPEND_RUBY_AMSTD ?= ${ RUBY_SITELIBDIR } /amstd/version.rb:${ PORTSDIR } /${ RUBY_AMSTD_PORT }
2002-10-06 15:49:32 -04:00
DEPEND_RUBY_RDTOOL ?= ${ RUBY_RD2 } :${ PORTSDIR } /${ RUBY_RDTOOL_PORT }
2004-03-23 04:03:32 -05:00
. i f $ { R U B Y _ V E R } < = 1 . 6
DEPEND_RUBY_ICONV = ${ RUBY_SITEARCHLIBDIR } /iconv.so:${ PORTSDIR } /${ RUBY_ICONV_PORT }
. e l s e
DEPEND_RUBY_ICONV = ${ RUBY_ARCHLIBDIR } /iconv.so:${ PORTSDIR } /${ RUBY_ICONV_PORT }
. e n d i f
2000-09-06 16:06:58 -04:00
# Directories
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
RUBY_LIBDIR ?= ${ _RUBY_SYSLIBDIR } /ruby/${ RUBY_VER }
2000-09-06 16:06:58 -04:00
RUBY_ARCHLIBDIR ?= ${ RUBY_LIBDIR } /${ RUBY_ARCH }
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
RUBY_SITELIBDIR ?= ${ _RUBY_SITEDIR } /${ RUBY_VER }
2000-09-06 16:06:58 -04:00
RUBY_SITEARCHLIBDIR ?= ${ RUBY_SITELIBDIR } /${ RUBY_ARCH }
RUBY_DOCDIR ?= ${ LOCALBASE } /share/doc/${ RUBY_NAME }
RUBY_EXAMPLESDIR ?= ${ LOCALBASE } /share/examples/${ RUBY_NAME }
2002-10-06 16:54:37 -04:00
RUBY_MODDOCDIR ?= ${ RUBY_DOCDIR } /${ RUBY_MODNAME }
RUBY_MODEXAMPLESDIR ?= ${ RUBY_EXAMPLESDIR } /${ RUBY_MODNAME }
2001-05-11 15:43:03 -04:00
RUBY_ELISPDIR ?= ${ _RUBY_SYSLIBDIR } /ruby/elisp
2000-09-06 16:06:58 -04:00
# PLIST
PLIST_RUBY_DIRS = RUBY_LIBDIR = " ${ RUBY_LIBDIR } " \
RUBY_ARCHLIBDIR = " ${ RUBY_ARCHLIBDIR } " \
RUBY_SITELIBDIR = " ${ RUBY_SITELIBDIR } " \
RUBY_SITEARCHLIBDIR = " ${ RUBY_SITEARCHLIBDIR } " \
RUBY_DOCDIR = " ${ RUBY_DOCDIR } " \
2001-05-11 15:43:03 -04:00
RUBY_EXAMPLESDIR = " ${ RUBY_EXAMPLESDIR } " \
2002-10-06 16:54:37 -04:00
RUBY_MODDOCDIR = " ${ RUBY_MODDOCDIR } " \
RUBY_MODEXAMPLESDIR = " ${ RUBY_MODEXAMPLESDIR } " \
2001-05-11 15:43:03 -04:00
RUBY_ELISPDIR = " ${ RUBY_ELISPDIR } "
2000-09-06 16:06:58 -04:00
PLIST_SUB += RUBY_VERSION = " ${ RUBY_VERSION } " \
RUBY_VER = " ${ RUBY_VER } " \
RUBY_SHLIBVER = " ${ RUBY_SHLIBVER } " \
RUBY_ARCH = " ${ RUBY_ARCH } " \
RUBY_SUFFIX = " ${ RUBY_SUFFIX } " \
RUBY_NAME = " ${ RUBY_NAME } " \
2001-06-04 10:54:32 -04:00
RUBY_R = " ${ RUBY_R } " \
RUBY_DEFAULT_SUFFIX = " ${ RUBY_DEFAULT_SUFFIX } " \
2000-09-06 16:06:58 -04:00
${ PLIST_RUBY_DIRS : S ,DIR= " ${ LOCALBASE } /,DIR= " , }
2004-02-26 14:20:09 -05:00
. i f $ { R U B Y _ V E R } > = 1 . 7
RUBY18_ONLY = ""
. e l i f $ { R U B Y _ V E R } > = 1 . 6
RUBY16_ONLY = ""
2003-08-17 23:41:58 -04:00
. e n d i f
2004-02-26 14:20:09 -05:00
RUBY16_ONLY ?= "@comment "
RUBY18_ONLY ?= "@comment "
PLIST_SUB += RUBY16_ONLY = ${ RUBY16_ONLY } \
RUBY18_ONLY = ${ RUBY18_ONLY }
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
# require check
. i f d e f i n e d ( R U B Y _ R E Q U I R E )
USE_RUBY = yes
2000-10-21 15:57:53 -04:00
. i f e x i s t s ( $ { R U B Y } )
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
RUBY_PROVIDED != ${ RUBY } -e ' \
Ruby = ${ RUBY_VERSION_CODE } ; \
value = begin; ${ RUBY_REQUIRE } ; end and puts value'
2000-10-21 15:57:53 -04:00
. e l s e
RUBY_PROVIDED = "should be" # the latest version is going to be installed
. e n d i f
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
. i f e m p t y ( R U B Y _ P R O V I D E D )
. u n d e f R U B Y _ P R O V I D E D
. e n d i f
. e n d i f
2000-09-30 13:34:44 -04:00
# fix shebang lines
. i f d e f i n e d ( R U B Y _ S H E B A N G _ F I L E S ) & & ! e m p t y ( R U B Y _ S H E B A N G _ F I L E S )
USE_RUBY = yes
post-patch : ruby -shebang -patch
ruby-shebang-patch :
2002-12-06 12:17:38 -05:00
@cd ${ WRKSRC } ; for f in ${ RUBY_SHEBANG_FILES } ; do \
2000-09-30 13:34:44 -04:00
${ ECHO_MSG } " ===> Fixing the #! line of $$ f " ; \
2001-04-02 00:36:09 -04:00
${ RUBY } ${ RUBY_FLAGS } -i -p \
-e 'if $$. == 1; ' \
2001-03-11 12:39:28 -05:00
-e ' if /^#!/; ' \
-e ' sub /^#!\s*\S*(\benv\s+)?\bruby/, "#!${RUBY}";' \
-e ' else;' \
-e ' $$_ = "#!${RUBY}\n" + $$_;' \
-e ' end;' \
-e 'end' \
$$ f; \
2000-09-30 13:34:44 -04:00
done
. e n d i f
2001-04-02 00:36:09 -04:00
. i f d e f i n e d ( D E B U G )
RUBY_FLAGS += -d
. e n d i f
2000-09-06 16:06:58 -04:00
# extconf.rb
. i f d e f i n e d ( U S E _ R U B Y _ E X T C O N F )
USE_RUBY = yes
RUBY_EXTCONF ?= extconf.rb
2001-04-24 12:30:20 -04:00
CONFIGURE_ARGS += --with-opt-dir= " ${ LOCALBASE } " \
2001-04-06 06:11:41 -04:00
--with-pthread-cflags= " ${ PTHREAD_CFLAGS } " \
--with-pthread-libs= " ${ PTHREAD_LIBS } "
2000-09-06 16:06:58 -04:00
do-configure : ruby -extconf -configure
ruby-extconf-configure :
. i f d e f i n e d ( R U B Y _ E X T C O N F _ S U B D I R S )
. f o r d i n $ { R U B Y _ E X T C O N F _ S U B D I R S }
@${ ECHO_MSG } " ===> Running ${ RUBY_EXTCONF } in ${ d } to configure "
2001-04-06 05:19:22 -04:00
. i f d e f i n e d ( R U B Y _ W I T H _ P T H R E A D )
2002-07-07 15:02:49 -04:00
cd ${ CONFIGURE_WRKSRC } /${ d } ; \
2001-04-06 06:11:41 -04:00
${ RUBY } ${ RUBY_FLAGS } -i -pe ' ~ /\b require\s +[ \0 47"]mkmf[\047" ] / \
and $$ _ += %Q| \
$$ libs.sub!( /-lc\\ b/, "" ) \n \
$$ libs += " " + with_config( "pthread-libs" ) + " " \n \
$$ CFLAGS += " " + with_config( "pthread-cflags" ) + " " \n \
| ' ${ RUBY_EXTCONF }
2001-04-06 05:19:22 -04:00
. e n d i f
2002-07-07 15:02:49 -04:00
@cd ${ CONFIGURE_WRKSRC } /${ d } ; \
2001-04-02 00:36:09 -04:00
${ SETENV } ${ CONFIGURE_ENV } ${ RUBY } ${ RUBY_FLAGS } ${ RUBY_EXTCONF } ${ CONFIGURE_ARGS }
2000-09-06 16:06:58 -04:00
. e n d f o r
. e l s e
@${ ECHO_MSG } " ===> Running ${ RUBY_EXTCONF } to configure "
2001-04-06 05:19:22 -04:00
. i f d e f i n e d ( R U B Y _ W I T H _ P T H R E A D )
2002-07-07 15:02:49 -04:00
cd ${ CONFIGURE_WRKSRC } ; if [ ! -e ${ CONFIGURE_WRKSRC } /${ RUBY_EXTCONF } .pth.orig ] ; then \
2002-02-10 13:12:38 -05:00
${ RUBY } ${ RUBY_FLAGS } -i.pth.orig -pe ' ~ /\b require\s +[ \0 47"]mkmf[\047" ] / \
2001-04-06 06:11:41 -04:00
and $$ _ += %Q| \
$$ libs.sub!( /-lc\\ b/, "" ) \n \
$$ libs += " " + with_config( "pthread-libs" ) + " " \n \
$$ CFLAGS += " " + with_config( "pthread-cflags" ) + " " \n \
2002-02-10 13:12:38 -05:00
| ' ${ RUBY_EXTCONF } ; fi
2001-04-06 05:19:22 -04:00
. e n d i f
2002-07-07 15:02:49 -04:00
@cd ${ CONFIGURE_WRKSRC } ; \
2001-04-02 00:36:09 -04:00
${ SETENV } ${ CONFIGURE_ENV } ${ RUBY } ${ RUBY_FLAGS } ${ RUBY_EXTCONF } ${ CONFIGURE_ARGS }
2000-09-06 16:06:58 -04:00
. e n d i f
. e n d i f
# setup.rb
. i f d e f i n e d ( U S E _ R U B Y _ S E T U P )
RUBY_SETUP ?= setup.rb
do-configure : ruby -setup -configure
ruby-setup-configure :
@${ ECHO_MSG } " ===> Running ${ RUBY_SETUP } to configure "
2002-07-07 15:02:49 -04:00
@cd ${ BUILD_WRKSRC } ; \
2001-04-02 00:36:09 -04:00
${ SETENV } ${ CONFIGURE_ENV } ${ RUBY } ${ RUBY_FLAGS } ${ RUBY_SETUP } config ${ CONFIGURE_ARGS }
2000-09-06 16:06:58 -04:00
do-build : ruby -setup -build
ruby-setup-build :
@${ ECHO_MSG } " ===> Running ${ RUBY_SETUP } to build "
2002-07-07 15:02:49 -04:00
@cd ${ BUILD_WRKSRC } ; \
2001-04-02 00:36:09 -04:00
${ SETENV } ${ MAKE_ENV } ${ RUBY } ${ RUBY_FLAGS } ${ RUBY_SETUP } setup
2000-09-07 03:20:02 -04:00
do-install : ruby -setup -install
ruby-setup-install :
@${ ECHO_MSG } " ===> Running ${ RUBY_SETUP } to install "
2002-12-06 12:17:38 -05:00
@cd ${ INSTALL_WRKSRC } ; \
2001-04-02 00:36:09 -04:00
${ SETENV } ${ MAKE_ENV } ${ RUBY } ${ RUBY_FLAGS } ${ RUBY_SETUP } install
2000-09-06 16:06:58 -04:00
. e n d i f
. i f d e f i n e d ( U S E _ L I B R U B Y )
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
LIB_DEPENDS += ${ DEPEND_LIBRUBY }
2000-09-06 16:06:58 -04:00
. e n d i f
. i f d e f i n e d ( U S E _ R U B Y )
2000-09-16 07:37:37 -04:00
. i f ! d e f i n e d ( R U B Y _ N O _ B U I L D _ D E P E N D S )
2003-05-13 15:46:29 -04:00
EXTRACT_DEPENDS += ${ DEPEND_RUBY }
PATCH_DEPENDS += ${ DEPEND_RUBY }
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
BUILD_DEPENDS += ${ DEPEND_RUBY }
2000-09-16 07:37:37 -04:00
. e n d i f
. i f ! d e f i n e d ( R U B Y _ N O _ R U N _ D E P E N D S )
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
RUN_DEPENDS += ${ DEPEND_RUBY }
2000-09-06 16:06:58 -04:00
. e n d i f
2000-09-16 07:37:37 -04:00
. e n d i f
2000-09-06 16:06:58 -04:00
2003-12-15 01:35:48 -05:00
. i f ! d e f i n e d ( N O P O R T D O C S ) & & d e f i n e d ( U S E _ R U B Y _ R D O C )
USE_RUBY_FEATURES += rdoc
. e n d i f
2002-09-21 03:06:39 -04:00
. i f d e f i n e d ( U S E _ R U B Y _ F E A T U R E S )
2004-03-23 04:03:32 -05:00
_use = ${ USE_RUBY_FEATURES : Mbenchmark } \
2003-04-19 11:57:37 -04:00
${ USE_RUBY_FEATURES : Mbigdecimal } \
2003-10-31 13:43:43 -05:00
${ USE_RUBY_FEATURES : Mdevel -logger } \
2002-09-21 03:06:39 -04:00
${ USE_RUBY_FEATURES : Mdl } \
2003-10-31 13:43:43 -05:00
${ USE_RUBY_FEATURES : Mdrb } \
2003-02-09 12:38:39 -05:00
${ USE_RUBY_FEATURES : Merb } \
2002-09-21 03:06:39 -04:00
${ USE_RUBY_FEATURES : Mfileutils } \
2003-10-31 13:43:43 -05:00
${ USE_RUBY_FEATURES : Mgserver } \
2003-02-09 12:38:39 -05:00
${ USE_RUBY_FEATURES : Mipaddr } \
${ USE_RUBY_FEATURES : Mopen -uri } \
2003-10-31 13:43:43 -05:00
${ USE_RUBY_FEATURES : Mopenssl } \
2002-09-21 03:06:39 -04:00
${ USE_RUBY_FEATURES : Moptparse } \
${ USE_RUBY_FEATURES : Mpp } \
${ USE_RUBY_FEATURES : Mracc -runtime } \
2003-12-15 01:35:48 -05:00
${ USE_RUBY_FEATURES : Mrdoc } \
2003-10-31 13:43:43 -05:00
${ USE_RUBY_FEATURES : Mrexml } \
2002-09-21 03:06:39 -04:00
${ USE_RUBY_FEATURES : Mruby18 } \
2003-03-11 02:16:24 -05:00
${ USE_RUBY_FEATURES : Mrunit } \
2002-09-21 03:06:39 -04:00
${ USE_RUBY_FEATURES : Mset } \
2003-10-31 13:43:43 -05:00
${ USE_RUBY_FEATURES : Msoap } \
2002-09-21 03:06:39 -04:00
${ USE_RUBY_FEATURES : Mstringio } \
${ USE_RUBY_FEATURES : Mstrscan } \
2003-03-11 02:16:24 -05:00
${ USE_RUBY_FEATURES : Mtestunit } \
2003-04-19 11:57:37 -04:00
${ USE_RUBY_FEATURES : Mtsort } \
2003-10-31 13:43:43 -05:00
${ USE_RUBY_FEATURES : Mwebrick } \
${ USE_RUBY_FEATURES : Mxmlrpc } \
${ USE_RUBY_FEATURES : Myaml } \
2003-04-19 11:57:37 -04:00
${ USE_RUBY_FEATURES : Mzlib }
2004-03-23 04:03:32 -05:00
. i f ! e m p t y ( _ u s e ) & & $ { R U B Y _ V E R } < = 1 . 6
2002-09-21 03:06:39 -04:00
BUILD_DEPENDS += ${ DEPEND_RUBY_SHIM18 }
RUN_DEPENDS += ${ DEPEND_RUBY_SHIM18 }
. e n d i f
2004-03-23 04:03:32 -05:00
_use = ${ USE_RUBY_FEATURES : Miconv }
. i f ! e m p t y ( _ u s e )
BUILD_DEPENDS += ${ DEPEND_RUBY_ICONV }
RUN_DEPENDS += ${ DEPEND_RUBY_ICONV }
. e n d i f
. u n d e f _ u s e
2002-09-21 03:06:39 -04:00
. e n d i f
2000-09-06 16:06:58 -04:00
. i f d e f i n e d ( U S E _ R U B Y _ A M S T D )
Allow users to define RUBY variable to utilize ruby ports with
custom-installed Ruby. :)
For instance, if you have built Ruby from the latest snapshot and
installed, you can install ruby modules from ports only by typing
"make RUBY=/usr/local/bin/ruby install". bsd.ruby.mk will take care
of everything including RUBY_VER, RUBY_LIBDIR, CONFIGURE_TARGET, etc.
Introduce version requirement checking mechanism. You can set
RUBY_REQUIRE to any ruby expression(s) to check Ruby's version (or
other modules' versions, in future). The result will be set in
RUBY_PROVIDED.
Define RUBY_VERSION_CODE which holds full integer version of Ruby.
Define RUBY_PORTVERSION, RUBY_DISTNAME and RUBY_WRKSRC for the
standard ruby ports so as not to change PORTVERSION, DISTNAME and
RUBY_WRKSRC of ruby, ruby-gdbm, ruby-tcltklib, ruby-tk, etc. everytime
Ruby is updated.
Rename RUBY_DEPENDS to DEPEND_RUBY, etc. for a cosmetic reason.
2000-10-20 15:43:58 -04:00
BUILD_DEPENDS += ${ DEPEND_RUBY_AMSTD }
RUN_DEPENDS += ${ DEPEND_RUBY_AMSTD }
2000-09-06 16:06:58 -04:00
. e n d i f
2002-11-22 09:53:06 -05:00
# documents
2002-12-06 12:17:38 -05:00
RUBY_NO_RD_HTML = yes
2002-12-27 16:39:06 -05:00
. i f d e f i n e d ( R U B Y _ R D _ H T M L )
. u n d e f R U B Y _ N O _ R D _ H T M L
2002-10-05 03:47:28 -04:00
. e n d i f
2002-12-08 07:36:40 -05:00
. i f (${ARCH} = = alpha || ${ ARCH } = = sparc64) && ${ RUBY_VER } <= 1.6
2002-12-06 12:17:38 -05:00
RUBY_NO_RD_HTML = yes
. e n d i f
2002-12-27 16:39:06 -05:00
. i f d e f i n e d ( N O P O R T D O C S )
RUBY_NO_RD_HTML = yes
. e n d i f
2002-12-06 12:17:38 -05:00
. i f d e f i n e d ( R U B Y _ R D _ F I L E S ) & & ! d e f i n e d ( R U B Y _ N O _ R D _ H T M L )
2002-11-22 09:53:06 -05:00
USE_RUBY_RDTOOL = yes
2002-12-06 12:17:38 -05:00
RUBY_RD_HTML_FILES = ${ RUBY_RD_FILES : S /.rb $// : S /.rd././ : S /.rd $// : S / $/.html/ }
2002-11-22 09:53:06 -05:00
2002-12-06 12:17:38 -05:00
PLIST_SUB += RUBY_RD_HTML_FILES = ""
pre-install : ruby -rd -build
2002-11-22 09:53:06 -05:00
ruby-rd-build :
2002-12-06 12:17:38 -05:00
. i f ! e m p t y ( R U B Y _ R D _ F I L E S )
2002-11-22 09:53:06 -05:00
@${ ECHO_MSG } "===> Generating HTML documents from RD documents"
2002-12-06 12:17:38 -05:00
@cd ${ WRKSRC } ; for rd in ${ RUBY_RD_FILES } ; do \
html = $$ ( echo $$ rd | ${ SED } 's/\.rb$$//;s/\.rd\././;s/\.rd$$//' ) .html; \
2002-11-22 09:53:06 -05:00
${ ECHO_MSG } " ${ RUBY_RD2 } $$ rd > $$ html " ; \
${ RUBY_RD2 } $$ rd > $$ html; \
done
2002-12-06 12:17:38 -05:00
. e l s e
@${ DO_NADA }
2002-11-22 09:53:06 -05:00
. e n d i f
2002-12-06 12:17:38 -05:00
. e l s e
RUBY_RD_HTML_FILES = # empty
PLIST_SUB += RUBY_RD_HTML_FILES = "@comment "
2002-11-22 09:53:06 -05:00
. e n d i f
2002-10-06 15:49:32 -04:00
. i f ! d e f i n e d ( N O P O R T D O C S ) & & d e f i n e d ( U S E _ R U B Y _ R D T O O L )
BUILD_DEPENDS += ${ DEPEND_RUBY_RDTOOL }
. e n d i f
2002-09-11 15:31:07 -04:00
MASTER_SITE_BACKUP += \
2002-10-05 08:34:04 -04:00
ftp://ftp.iDaemons.org/pub/distfiles/${ DIST_SUBDIR } /
2002-09-11 15:31:07 -04:00
2000-09-16 07:37:37 -04:00
. e n d i f