Revision 387 (by ahitrov, 2013/10/18 13:03:04) Perl version bug fix
##############################################################################
# $HeadURL: svn://cvs1.rambler.ru/Contenido/trunk/ports/etc/ports.mk $
# $Id: ports.mk 71 2006-06-03 14:32:52Z lonerr $
###############################################################################

PERL ?=				${shell which perl}
PERL_LEVEL ?=			${shell ${PERL} -e '$$]=~/(\d+)\.(\d{3})(\d+)/; printf "%d%03d%02d", $$1,$$2,$$3;'}

ifeq (${shell ${PERL} -e '${PERL_LEVEL}<500600 && print 1'},1)
PERL_VER =			${shell ${PERL} -e '$$]=~/(\d+)\.(\d{3})(\d+)/; printf "%d.%03d", $$1,$$2;'}
endif

ifeq (${shell ${PERL} -e '${PERL_LEVEL}<501205 && print 1'},1)
PERL_VER ?=			${shell ${PERL} -e '$$]=~/(\d+)\.(\d{3})(\d+)/; printf "%d.%d.%d", $$1,$$2,$$3;'}
else
PERL_VER ?=			${shell ${PERL} -e '$$]=~/(\d+)\.(\d{3})(\d+)/; printf "%d.%d", $$1,$$2;'}
endif

ifeq (${shell ${PERL} -e '${PERL_LEVEL}<500600 && print 1'},1)
PERL_ARCH ?=			${shell ${PERL} -e 'use Config; print $$Config::Config{archname};'}
else
PERL_ARCH ?=			mach
endif

PERL_LIB ?=			${PREFIX}/lib/perl5/${PERL_VER}					\
				${PREFIX}/lib/perl5/${PERL_VER}/${PERL_ARCH}			\
				${PREFIX}/lib/perl5/site_perl					\
				${PREFIX}/lib/perl5/site_perl/${PERL_VER}			\
				${PREFIX}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}
PERL_LIBCOL ?=			${shell echo ${PERL_LIB} | perl -pe 's/\s+$$//; s/\s+/:/g'}

Небольшая справка по веткам

cnddist – контейнер, в котором хранятся все дистрибутивы всех библиотек и программных пакетов, которые использовались при построении различных версий Contenido. Если какой-то библиотеки в данном хранилище нет, инсталлятор сделает попытку "подтянуть" ее с веба (например, с CPAN). Если библиотека слишком старая, есть очень большая вероятность, что ее там уже нет. Поэтому мы храним весь хлам от всех сборок. Если какой-то дистрибутив вдруг отсутствует в cnddist - напишите нам, мы положим его туда.

koi8 – отмирающая ветка, чей код, выдача и все внутренние библиотеки заточены на кодировку KOI8-R. Вносятся только те дополнения, которые касаются внешнего вида и функционала админки, баги ядра, обязательные обновления портов и мелочи, которые легко скопипастить. В дальнейшем планируется полная остановка поддержки по данной ветке.

utf8 – актуальная ветка, заточенная под UTF-8.

Внутри каждой ветки: core – исходники ядра; install – скрипт установки инсталляции; plugins – плагины; samples – "готовые к употреблению" проекты, которые можно поставить, запустить и посмотреть, как они работают.