public inbox for cygwin-apps@cygwin.com
 help / color / mirror / Atom feed
* [ITP] ragel 7.0.0.11
@ 2018-11-15 14:55 Ken Brown
  2018-11-15 16:09 ` Marco Atzeri
  2018-11-20 19:00 ` Achim Gratz
  0 siblings, 2 replies; 5+ messages in thread
From: Ken Brown @ 2018-11-15 14:55 UTC (permalink / raw)
  To: cygwin-apps

[-- Attachment #1: Type: text/plain, Size: 2463 bytes --]

This package depends on the two previously ITP'd packages, kelbt and colm, so it 
probably can't be reviewed easily until those are in the distro.

ragel is in Debian and Fedora:

     https://packages.debian.org/source/stretch/ragel
     https://apps.fedoraproject.org/packages/ragel

My cygport file and patch are attached.

The build requires a bootstrapping procedure, as explained in the cygport file. 
For maximum transparency, I propose to first make a preliminary unannounced 
release 1 using the attached cygport file as is.  Once that's in the distro, 
I'll install it, bump the release to 2, uncomment the "bootstrap=1" line, and 
make a new release.

Package files for release 1:

http://sanibeltranquility.com/cygwin/x86/release/ragel/ragel-7.0.0.11-1-src.tar.xz
http://sanibeltranquility.com/cygwin/x86/release/ragel/ragel-7.0.0.11-1.tar.xz
http://sanibeltranquility.com/cygwin/x86/release/ragel/ragel-7.0.0.11-1.hint
http://sanibeltranquility.com/cygwin/x86/release/ragel/libragel-devel/libragel-devel-7.0.0.11-1.hint
http://sanibeltranquility.com/cygwin/x86/release/ragel/libragel-devel/libragel-devel-7.0.0.11-1.tar.xz
http://sanibeltranquility.com/cygwin/x86/release/ragel/ragel-debuginfo/ragel-debuginfo-7.0.0.11-1.hint
http://sanibeltranquility.com/cygwin/x86/release/ragel/ragel-debuginfo/ragel-debuginfo-7.0.0.11-1.tar.xz
http://sanibeltranquility.com/cygwin/x86/release/ragel/libragel0/libragel0-7.0.0.11-1.hint
http://sanibeltranquility.com/cygwin/x86/release/ragel/libragel0/libragel0-7.0.0.11-1.tar.xz
http://sanibeltranquility.com/cygwin/x86_64/release/ragel/ragel-7.0.0.11-1-src.tar.xz
http://sanibeltranquility.com/cygwin/x86_64/release/ragel/ragel-7.0.0.11-1.tar.xz
http://sanibeltranquility.com/cygwin/x86_64/release/ragel/ragel-7.0.0.11-1.hint
http://sanibeltranquility.com/cygwin/x86_64/release/ragel/libragel-devel/libragel-devel-7.0.0.11-1.hint
http://sanibeltranquility.com/cygwin/x86_64/release/ragel/libragel-devel/libragel-devel-7.0.0.11-1.tar.xz
http://sanibeltranquility.com/cygwin/x86_64/release/ragel/ragel-debuginfo/ragel-debuginfo-7.0.0.11-1.hint
http://sanibeltranquility.com/cygwin/x86_64/release/ragel/ragel-debuginfo/ragel-debuginfo-7.0.0.11-1.tar.xz
http://sanibeltranquility.com/cygwin/x86_64/release/ragel/libragel0/libragel0-7.0.0.11-1.hint
http://sanibeltranquility.com/cygwin/x86_64/release/ragel/libragel0/libragel0-7.0.0.11-1.tar.xz

License: MIT and LGPLv2+

Ken


[-- Attachment #2: ragel.cygport --]
[-- Type: text/plain, Size: 1531 bytes --]

NAME="ragel"
VERSION=7.0.0.11
RELEASE=1

inherit vim

HOMEPAGE="http://www.colm.net/open-source/${NAME}"
SRC_URI="https://www.colm.net/files/${NAME}/${NAME}-${VERSION}.tar.gz"
PATCH_URI="ragel-no_undefined.patch"

CATEGORY="Devel"
SUMMARY="Finite state machine compiler"
DESCRIPTION="Ragel compiles executable finite state machines from regular
languages.  Ragel targets C, C++, and ASM.  Ragel state machines can
not only recognize byte sequences as regular expression machines do,
but can also execute code at arbitrary points in the recognition of a
regular language.  Code embedding is done using inline operators that
do not disrupt the regular language syntax."

PKG_NAMES="ragel libragel0 libragel-devel"

ragel_CONTENTS="usr/bin/*.exe usr/share"

libragel0_SUMMARY="${SUMMARY} (runtime)"
libragel0_CONTENTS="usr/bin/cyg*-0.dll"

libragel_devel_SUMMARY="${SUMMARY} (devel)"
libragel_devel_CONTENTS="usr/include usr/lib"

DEPEND="colm libcolm-devel"

# The build of a fully-functional ragel package requires some version
# of ragel.exe.  Until that's available, we can build and install a
# less functional package for bootstrapping.

# The following line should be commented out for the initial build,
# and uncommented after the bootstrap ragel is installed.

# bootstrap=1
if defined bootstrap
then
    DEPEND+=" ragel kelbt"
fi

src_compile() {
    cd ${S}
    cygautoreconf
    lndirs
    cd ${B}
    cygconf
    cygmake
}

src_install() {
    cd ${B}
    cyginstall
    cd ${S}
    viminto syntax
    dovim ragel.vim
}

[-- Attachment #3: ragel-no_undefined.patch --]
[-- Type: text/plain, Size: 1593 bytes --]

--- origsrc/ragel-7.0.0.11/src/Makefile.am	2018-05-18 12:42:37.000000000 -0400
+++ src/ragel-7.0.0.11/src/Makefile.am	2018-11-14 17:35:09.132763500 -0500
@@ -35,6 +35,8 @@ data_DATA = ragel.lm
 #
 libfsm_la_CPPFLAGS = -I$(top_srcdir)/aapl
 
+libfsm_la_LDFLAGS = -no-undefined
+
 dist_libfsm_la_SOURCES = \
 	buffer.h codegen.h \
 	actloop.h actexp.h \
@@ -61,36 +63,40 @@ nodist_libfsm_la_SOURCES = \
 #
 libragel_la_CPPFLAGS = -I$(top_srcdir)/aapl -DBINDIR='"@bindir@"'
 
+libragel_la_LDFLAGS = -no-undefined
+
+libragel_la_LIBADD = libfsm.la $(COLM_LD)
+
 dist_libragel_la_SOURCES = \
 	parsedata.h parsetree.h inputdata.h pcheck.h reducer.h rlscan.h load.h \
 	parsetree.cc parsedata.cc inputdata.cc load.cc reducer.cc
 
-#
-# ragel program.
-#
-ragel_CPPFLAGS = -I$(top_srcdir)/aapl
-
-dist_ragel_SOURCES = \
-	main.cc
-
-nodist_ragel_SOURCES = \
+nodist_libragel_la_SOURCES = \
 	parse.c rlreduce.cc
 
-ragel_LDADD = libragel.la libfsm.la $(COLM_LD)
-ragel_DEPENDENCIES = libragel.la libfsm.la $(COLM_LIBDEP)
-
 BUILT_SOURCES = \
 	version.h \
 	parse.c rlreduce.cc
 
 if WITH_RAGEL_KELBT
-nodist_ragel_SOURCES += \
+nodist_libragel_la_SOURCES += \
 	rlscan.cc rlparse.cc rlparse.h 
 
 BUILT_SOURCES += \
 	rlscan.cc rlparse.cc rlparse.h 
 endif
 
+#
+# ragel program.
+#
+ragel_CPPFLAGS = -I$(top_srcdir)/aapl
+
+dist_ragel_SOURCES = \
+	main.cc
+
+ragel_LDADD = libragel.la libfsm.la $(COLM_LD)
+ragel_DEPENDENCIES = libragel.la libfsm.la $(COLM_LIBDEP)
+
 version.h: Makefile
 	echo '#define VERSION "$(PACKAGE_VERSION)"' > version.h
 	echo '#define PUBDATE "$(PUBDATE)"' >> version.h

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2018-11-25 19:34 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-15 14:55 [ITP] ragel 7.0.0.11 Ken Brown
2018-11-15 16:09 ` Marco Atzeri
2018-11-20 19:00 ` Achim Gratz
2018-11-20 21:08   ` Ken Brown
2018-11-25 19:34     ` Achim Gratz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).