-
Notifications
You must be signed in to change notification settings - Fork 120
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
libsbml 5.20.2 (new formula) #1672
Conversation
libsbml is a library for handling text files in Systems Biology Markup Language (SBML). Brief explanation for the additional configuration flags (-DENABLE_FBC=ON -DENABLE_GROUPS=ON): These enable two optional extensions for the libsbml library, namely "fbc" and "groups". Both are relevant for the research community that uses linear programming to predict metabolic processes in living cells (i.e., flux balance analysis). apt and dnf linux builds also include these two extensions.
These updates address the errors from the CI's previous logs: `Could NOT find SWIG (missing: SWIG_EXECUTABLE SWIG_DIR)` `Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)`
Thank you for approving the CI workflows.
There seems to be a conflict with the cmake module Does anyone know how to handle such a conflict in a formula? |
Thank you for submitting a new formula! depends_on "check" => :build
depends_on "cmake" => :build
depends_on "pkg-config" => :build
depends_on "swig" => :build
uses_from_macos "bzip2"
uses_from_macos "libxml2"
uses_from_macos "zlib"
def install
# avoid an error "invalid conversion from ‘const xmlError*’"
ENV.append_to_cflags "-fpermissive" if OS.linux?
args = %w[
-DWITH_SWIG=OFF
-DWITH_ZLIB=OFF
-DWITH_BZIP2=OFF
-DENABLE_COMP=ON
-DENABLE_FBC=ON
-DENABLE_GROUPS=ON
-DENABLE_L3V2EXTENDEDMATH=ON
-DENABLE_LAYOUT=ON
-DENABLE_MULTI=ON
-DENABLE_QUAL=ON
-DENABLE_RENDER=ON
]
args << "-DLIBSBML_DEPENDENCY_DIR=#{HOMEBREW_PREFIX}"
system "cmake", "-S", ".", "-B", "build", *args, *std_cmake_args
system "cmake", "--build", "build"
system "cmake", "--install", "build"
end
|
- Build without swig - Build without zlib (Note: this was disabled intentionally due to a conflict between libsbml and cmake. The conflict is because both tools come with a cmake module called "FindZLIB". Unfortunately, diabling zlib in libsbml has the effect, that .zip or .gz-compressed SBML files cannot be read nor written.) - Enables additional extensions of libsbml in case other users require these: "L3V2EXTENDEDMATH", "LAYOUT", "MULTI", "QUAL", "RENDER". Thanks to @YoshitakaMo
Thank you, @YoshitakaMo, for the suggestion and for explaining the changes. I made only minor modifications to your suggested formula:
|
I guess |
Sorry, that I missed that line. It's now committed |
Merged! Thank you for your PR! |
Awesome! Thank you for being so helpful @YoshitakaMo |
Not super important, as libSBML can usually handle compressed model file. However, in the homebrew/brewsci build of SBML, the gzip-support is disables due to a conflict of libSBML and zlib: brewsci/homebrew-bio#1672 The change here, used R's build-in gz-file in/out support to read/write gzipped SBML files. Note: It is a little less efficient than the libSBML gz-support. When zlib-connection in homebrew's libsbml is back, the lines added in this commit could be removed again.
libsbml is a library for handling text files in Systems Biology Markup Language (SBML).
A brief explanation for the additional configuration flags (-DENABLE_FBC=ON -DENABLE_GROUPS=ON):
These enable two optional extensions for the libsbml library, namely "fbc" and "groups". Both are relevant for the research community that uses linear programming to predict metabolic processes in living cells (i.e., flux balance analysis). apt and dnf linux builds also include these two extensions.
brew install --build-from-source FORMULA
, whereFORMULA
is the name of the formula you're submitting?brew audit --strict FORMULA
(after doingbrew install FORMULA
)?This is my first formula. Any feedback is welcome.