Ejemplo n.º 1
0
    def run(self):
        # Pass build_lib to the CMake builder as build_clib
        build_clib = self.get_finalized_command('build_clib')
        build_clib.build_clib = self.build_lib
        build_clib.run()

        # Invoke the actual Python build
        build.run(self)
Ejemplo n.º 2
0
    def run(self):
        # Pass build_lib to the CMake builder as build_clib
        build_clib = self.get_finalized_command('build_clib')
        build_clib.build_clib = self.build_lib
        build_clib.run()

        # Invoke the actual Python build
        build.run(self)
Ejemplo n.º 3
0
    def run(self):
        log.debug("running AmiciBuildCLib")

        # Always force recompilation. The way setuptools/distutils check for
        # whether sources require recompilation is not reliable and may lead
        # to crashes or wrong results. We rather compile once too often...
        self.force = True

        build_clib.run(self)
Ejemplo n.º 4
0
    def run(self):
        # split the huge `training.c` file in small chunks with individual
        # functions so that it can compile even on low-memory machines
        lib = self.libraries[0]
        training_file = next(s for s in lib.sources if os.path.basename(s) == "training.c")
        training_temp = os.path.join(self.build_temp, "training")
        self.make_file([training_file], training_temp, self.split_training_source, (training_file, training_temp))

        # patch the library sources to use the split training files
        lib.sources.remove(training_file)
        lib.sources.extend(sorted(glob.glob(os.path.join(training_temp, "*.c"))))

        # build the library as normal
        _build_clib.run(self)
Ejemplo n.º 5
0
    def run(self):
        # make sure the C headers were generated already
        if not self.distribution.have_run["configure"]:
            self._configure_cmd.run()

        # patch the `p7_hmmfile.c` so that we can use functions it otherwise
        # declares as `static`
        libhmmer = next(lib for lib in self.libraries if lib.name == "hmmer")
        old = next(src for src in libhmmer.sources
                   if src.endswith("p7_hmmfile.c"))
        new = os.path.join(self.build_temp, "p7_hmmfile.c")
        self.make_file([old], new, self.patch_p7_hmmfile, (old, new))
        libhmmer.sources.remove(old)
        libhmmer.sources.append(new)

        # build the libraries normally
        _build_clib.run(self)