• This repository has been archived on 18/Jun/2020
  • Stars
    star
    158
  • Rank 237,131 (Top 5 %)
  • Language CMake
  • License
    Apache License 2.0
  • Created about 13 years ago
  • Updated over 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Utilities and example for using CMake to build Cython modules - migrated to scikit-build

MIGRATED to SCIKIT-BUILD

These modules are now maintained in scikit-build

cython-cmake-example

Introduction

Cython is hybrid C-Python language to easily write Python C-extensions. Cython allows one to write fast Python-ish code and easily integrate C or C++ code.

CMake is a cross-platform build system with good support for C/C++. With simple projects description scripts, CMakeLists.txt, a powerful configuration system is available. The configuration can be handled with a command line interface, curses interface, or Qt GUI interface.

This repository has CMake utilities for building Cython projects with CMake. The rectangle example from the Cython documentation is built to demonstrate their use. An example is also provided that shows registering a C callback with a function defined in a Cython module.

The features of this build system include:

  • Easy configuration of build settings.
  • Easy integration of external libraries.
  • Implicit Makefile dependency generation for .pxd files.
  • Implicit Makefile dependency generation for C/C++ headers.
  • Out-of-source builds.

The project is tested across platforms on the nightly dashboard.

Note

The latest versions of these CMake Cython scripts are maintained in scikit-build.

Dependencies

Build Dependencies

Test Dependencies

Build Instructions

mkdir cython_example_build
cd cython_example_build
cmake /path/to/src/cython-cmake-example
make

Warning

In your CMake configuration, make sure that PYTHON_LIBRARY, PYTHON_INCLUDE_DIR, and CYTHON_EXECUTABLE are all using the same CPython version.

To run the tests:

nosetests

More Repositories

1

tmux-mem-cpu-load

CPU, RAM, and load monitor for use with tmux
C++
943
star
2

docker-opengl

A docker image that supports rendering graphical applications.
Shell
228
star
3

docker-opengl-nvidia

Docker image for running X GUI apps with OpenGL hardware acceleration via the nvidia driver.
Shell
91
star
4

screen-cpu-mem

CPU and memory usage monitoring programs for GNU Screen
C++
22
star
5

sphinx-contrib

A clone of the mercurial sphinx-contrib repository.
Python
21
star
6

docker-opengl-mesa

Docker image for running X GUI apps with OpenGL hardware acceleration via the mesa drivers.
Shell
19
star
7

craco-vtk

A plugin for craco to use vtk.js with create-react-app
JavaScript
15
star
8

ieee-nss-mic-scipy-2014

Modern Scientific Computing with Python course at IEEE Nuclear Science Symposium and Medical Imaging Conference 2014
15
star
9

matlab-cmake-hello-world

A hello world project to demonstate Matlab mex file generation with CMake.
C++
9
star
10

modern-insights-from-microscopy-images

Jupyter Notebook
9
star
11

matlab-itk-import

Read images supported by ITK into Matlab
C++
7
star
12

cmakedbg

A debugger for CMake.
Python
5
star
13

shardedstore

Provides a sharded Zarr store
Python
4
star
14

UltrasoundPhysicsInMedicalImaging

Presentation on basic ultrasound physics for medical imaging
JavaScript
4
star
15

kitware-techlunch-docker

An Introduction to Docker for Research Software Engineers
Shell
4
star
16

docker-makerware

A build for the MakerBot MakerWare software.
3
star
17

OpenCL_FFT

C++
3
star
18

ITKTutorialPyDataCarolinas2016

Jupyter Notebook
3
star
19

VTKSignedTensor

C++
3
star
20

cmake-ios-toolchain

CMake Toolchain files for the iOS SDK.
CMake
3
star
21

vtk-histogram

Create a histogram of a scalar image with VTK.
C++
3
star
22

breathelink

A sphinx extension that simultaneously calls the breathe extension and the doxylink extension.
Python
3
star
23

coiled-science-thursdays-itk

https://docs.google.com/presentation/d/e/2PACX-1vRK0wa2rEUmL-y6CS6u6hOpk8RnPiHca96ZRtHccaTMza9gwH0oxbPY7swkkqlr7Lhb_Lw-avINUz-d/pub?start=false&loop=false&delayms=3000
Jupyter Notebook
3
star
24

cv

Matthew McCormick's curriculum vitae.
TeX
2
star
25

jsoncpp-config-cmake

JsonCpp with a CMake configuration file for find_package( jsoncpp ).
C++
2
star
26

scipy-2015-docker-presentation

Shell
2
star
27

WaitForSigCont

Run a computationally expensive process outside the debugger, pause, attach with a debugger, and use SIGCONT to continue..
C++
2
star
28

vcwebedit

A Sphinx extension that enables editing Sphinx-based documentation in a web browser.
JavaScript
2
star
29

gerrit-static-archive

Create a static website archive of a Gerrit Code Review instance.
Python
2
star
30

scipy-2018-itk-jupyter-widgets-poster

2
star
31

PropertiesOfCodeReviewSocialStructures

CSS
2
star
32

dwl-multidop-l2-viewer

To view the transcranial doppler (TCD) peak velocities generated on a DWL Multidop L2.
Python
2
star
33

dotfiles

Configuration files.
Vim Script
2
star
34

ngff-zarr

A lean and kind Open Microscopy Environment (OME) Next Generation File Format (NGFF) Zarr implementation.
Python
1
star
35

thesis-presentation

1
star
36

scipy-2019-itk-jupyter-widgets-poster

itkwidgets poster for the 2019 SciPy Conference
1
star
37

docker-ieee-nss-mic-scipy-2014

Shell
1
star
38

Plus

Unofficial git-svn for Plus https://www.assembla.com/spaces/plus/wiki
C++
1
star
39

scipy-2015-castxml-presentation

TeX
1
star
40

thesis

the bane
Python
1
star
41

odt-respace

Put two spaces after sentences in an odt file
Python
1
star
42

BrainTumorVisualization

Jupyter Notebook
1
star
43

piximi-annotation-interpolation

TypeScript
1
star
44

TubeTK-ParameterSerializer

An open-source library for serialization and deserialization of Insight Segmentation and Registration Toolkit (ITK) classes.
C++
1
star
45

allen-ccf-itk-vtk-zarr

Visualization of the Allen Mouse Common Coordinate Framework brain atlas with itk.js, vtk.js, and zarr.
Jupyter Notebook
1
star
46

2018-03-22-tripython-itk-jupyter-widgets

http://trizpug.org/Members/cbc/mar-18-mtg
Jupyter Notebook
1
star
47

ITKData

Testing data for ITK
1
star
48

jupyterlite-itkwidgets-config-post

Jupyter Notebook
1
star
49

ITKStreamingResampleImageFilter

A streaming verion of the ITK ResampleImageFilter for use with linear transforms.
C++
1
star
50

thwpybc2010it

Installation test script for The Hacker Within's Python Bootcamp 2010
Python
1
star
51

ITKEtioplastSmoothing

Edge-preserving smoothing of an etioplast with ITK
Jupyter Notebook
1
star
52

rdi-reader

A File Reader for the VisualSonics Vevo 770 Digital RF Data
C++
1
star
53

sphinx-foundation-theme

A Sphinx theme that uses Zurb foundation-sites for CSS / JS presentation.
HTML
1
star
54

VTKWebAssemblyExperiment

Performance of VTK isosurface contouring algorithms in the browser as of 2018-03-30
JavaScript
1
star
55

unbiased-subsample-interpolation

http://www.ncbi.nlm.nih.gov/pubmed/23493609 The final, definitive version of this paper has been published in Ultrasonic Imaging, Vol 35/Issue 2, Apr 2013 by SAGE Publications Ltd, All rights reserved. © 2013
Python
1
star