ports/databases/p5-SQL-SplitStatement/Makefile
Po-Chuan Hsieh 7fc5c9713a
databases/p5-SQL-SplitStatement: Add p5-SQL-SplitStatement 1.00023
SQL::SplitStatement is a simple module which tries to split any SQL code, even
including non-standard extensions, into the atomic statements it is composed of.

The logic used to split the SQL code is more sophisticated than a raw split on
the ; (semicolon) character: first, various different statement terminator
tokens are recognized (see below for the list), then this module is able to
correctly handle the presence of said tokens inside identifiers, values,
comments, BEGIN ... END blocks (even nested), dollar-quoted strings, MySQL
custom DELIMITERs, procedural code etc., as (partially) exemplified in the
"SYNOPSIS" above.

Consider however that this is by no means a validating parser (technically
speaking, it's just a context-sensitive tokenizer). It should rather be seen as
an in-progress heuristic approach, which will gradually improve as test cases
will be reported. This also means that, except for the "LIMITATIONS" detailed
below, there is no known (to the author) SQL code the most current release of
this module can't correctly split.
2024-07-19 00:44:41 +08:00

27 lines
704 B
Makefile

PORTNAME= SQL-SplitStatement
PORTVERSION= 1.00023
CATEGORIES= databases perl5
MASTER_SITES= CPAN
PKGNAMEPREFIX= p5-
MAINTAINER= sunpoet@FreeBSD.org
COMMENT= Split any SQL code into atomic statements
WWW= https://metacpan.org/dist/SQL-SplitStatement
LICENSE= ART10 GPLv1+
LICENSE_COMB= dual
LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${RUN_DEPENDS}
RUN_DEPENDS= p5-Class-Accessor>=0:devel/p5-Class-Accessor \
p5-List-MoreUtils>=0:lang/p5-List-MoreUtils \
p5-Regexp-Common>=0:textproc/p5-Regexp-Common
TEST_DEPENDS= p5-Test-Differences>=0.680:devel/p5-Test-Differences \
p5-Test-Exception>=0.27:devel/p5-Test-Exception
USES= perl5
USE_PERL5= configure
NO_ARCH= yes
.include <bsd.port.mk>