Add support for macOS:
* bugfix(exprtk): Upgrade verison of exprtk to fix compile error in clang.
* refact: Remove `bits/stdc++.h` and move `src/codegen/cpp.cpp::replace_all` to `include/picker.hpp::str_replace_all`
* feat: Use `dlopen` for non-linux platform.
* fix: Add missing headers
* fix(nproc): Fix bug of missing `nproc` in MacOS
* refactor(python): Adapt python template to macOS
* refactor(mem_direct): Adapt mem_direct template to macOS
* refactor(lib_suffix): Add shared library suffix in code generator
* refactor(dut_base.cpp): Use code generator to set library suffix
* add(cpp): Add cpp support for macOS
* add(java): Add java support for macOS
* refactor(nproc): Set $NPROC to support macOS
* fix(parser/sv): Add missing header file `unordered_set`
* fix(python_macos): fix the wrong suffix of module-type library
* refactor(codegen/lib): generator template use absolute path
* fix(mem_direct): fix link error in macOS
* feat: Use LLVM Clang to compile instead of AppleClang
* feat(golang): Add golang support for macOS
* fix(rpath): fix CMAKE_BUILD_RPATH for macOS
* feat(lua): Add lua support for macOS
* fix(scala): Fix wrong use of static method in scala
* feat(scala): Add scala support for macOS
* refactor(cmake): Upgrade cmake version to 3.15
* feat(doc): Add doc about installing picker on macOS
New features:
- add firrtl parser
- add gsim example
- support gsim complete
- support internal signal parse for gsim
- test gsim Nutshell success
- readme: update gsim info
---------
Co-authored-by: Makiras <xieyunlonglong@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>