diff --git a/srcpkgs/cuetools/patches/unicode.diff b/srcpkgs/cuetools/patches/unicode.diff new file mode 100644 index 00000000000..e5d15e2f60d --- /dev/null +++ b/srcpkgs/cuetools/patches/unicode.diff @@ -0,0 +1,41 @@ +--- src/lib/cue_scan.l ++++ src/lib/cue_scan.l +@@ -18,6 +18,20 @@ int cue_lineno = 1; + ws [ \t\r] + nonws [^ \t\r\n] + ++ ++ASC [\x00-\x7f] ++ASCN [\x00-\b] ++ASCNN [\v-\x1f] ++ASCNNN [\x21-\x7f] ++U [\x80-\xbf] ++U2 [\xc2-\xdf] ++U3 [\xe0-\xef] ++U4 [\xf0-\xf4] ++ ++UANY {ASC}|{U2}{U}|{U3}{U}{U}|{U4}{U}{U}{U} ++UANYN {ASCN}|{ASCNN}|{ASCNNN}|{U2}{U}|{U3}{U}{U}|{U4}{U}{U}{U} ++UWS {ws}|{U2}{U}|{U3}{U}{U}|{U4}{U}{U}{U} ++ + %option noyywrap + %option prefix="cue_yy" + +@@ -32,7 +46,7 @@ nonws [^ \t\r\n] + return STRING; + } + +-{nonws}+ { ++{UANYN}+ { + yylval.sval = strdup(yytext); + BEGIN(INITIAL); + return STRING; +@@ -84,7 +98,7 @@ SIZE_INFO { BEGIN(NAME); yylval.ival = PTI_SIZE_INFO; return SIZE_INFO; } + + ISRC { BEGIN(NAME); return TRACK_ISRC; } + +-^{ws}*REM.*\n { cue_lineno++; /* ignore comments */ } ++^{UWS}*REM.*\n { cue_lineno++; /* ignore comments */ } + {ws}+ { /* ignore whitespace */ } + + [[:digit:]]+ { yylval.ival = atoi(yytext); return NUMBER; } diff --git a/srcpkgs/cuetools/template b/srcpkgs/cuetools/template new file mode 100644 index 00000000000..32873d3ef0a --- /dev/null +++ b/srcpkgs/cuetools/template @@ -0,0 +1,21 @@ +# Template file for 'cuetools' +pkgname=cuetools +version=1.4.1 +revision=1 +short_desc="Cue and toc file parsers and utilities" +homepage="https://github.com/svend/cuetools" +license="GPL-2" +maintainer="Georg S. " + +hostmakedepends="automake bison flex" +build_style=gnu-configure + +distfiles="https://github.com/svend/${pkgname}/archive/${version}.tar.gz" +checksum=24a2420f100c69a6539a9feeb4130d19532f9f8a0428a8b9b289c6da761eb107 + +pre_configure() { + aclocal + autoheader + automake --add-missing + autoreconf --install +}