Genivia / RE-flex

A high-performance C++ regex library and lexical analyzer generator with Unicode support. Extends Flex++ with Unicode support, indent/dedent anchors, lazy quantifiers, functions for lex and syntax error reporting and more. Seamlessly integrates with Bison and other parsers.
https://www.genivia.com/doc/reflex/html
BSD 3-Clause "New" or "Revised" License
529 stars 86 forks source link

Add XMake support #208

Closed TabNahida closed 3 months ago

TabNahida commented 6 months ago

Using the xmake build tool offers several advantages:

  1. Better cross-platform support
  2. Better looking build config
  3. Add xmake package suppor

Here is an example xmake config

set_languages("cxx11")

target("ReflexLib")
    set_kind("shared")
    add_includedirs("include")
    add_files("lib/*.cpp")
    add_files("unicode/*.cpp")
    add_vectorexts("all")
target_end()

target("ReflexLibStatic")
    set_kind("static")
    add_includedirs("include")
    add_files("lib/*.cpp")
    add_files("unicode/*.cpp")
    add_vectorexts("all")
target_end()

target("Reflex")
    set_kind("binary")
    add_includedirs("include")
    add_files("src/*.cpp")
    add_deps("ReflexLibStatic")
    add_vectorexts("all")
target_end()
genivia-inc commented 6 months ago

Thank you for contributing to the project!

This looks useful. Perhaps we can add this to the discussions as a general suggestion for users on how to build the library with xmake? What do you think?

TabNahida commented 6 months ago

Thank you for contributing to the project!

This looks useful. Perhaps we can add this to the discussions as a general suggestion for users on how to build the library with xmake? What do you think?

I haven't used discussions before. Yeah, I should add it to discussions. And by the way, I have add re-flex to xrepo the package manager of xmake.It seems xmake have faced some problems, but I think re-flex will be soon available on xrepo.