FreeBSD Porter's Handbook
Prev | Chapter 6 Special considerations | Next

# 6.16 Using SDL

The `USE_SDL` variable is used to autoconfigure the dependencies for ports which use an SDL based library like `devel/sdl12` and `x11-toolkits/sdl_gui`.

The following SDL libraries are recognized at the moment:

- sdl: `devel/sdl12`

- gfx: `graphics/sdl_gfx`

- gui: `x11-toolkits/sdl_gui`

- image: `graphics/sdl_image`

- ldbad: `devel/sdl_ldbad`

- mixer: `audio/sdl_mixer`

- mm: `devel/sdlmm`

- net: `net/sdl_net`

- sound: `audio/sdl_sound`

- ttf: `graphics/sdl_ttf`

Therefore, if a port has a dependency on `net/sdl_net` and `audio/sdl_mixer`, the syntax will be:

    USE_SDL=        net mixer

The dependency `devel/sdl12`, which is required by `net/sdl_net` and `audio/sdl_mixer`, is automatically added as well.

If you use `USE_SDL`, it will automatically:

- Add a dependency on sdl12-config to `BUILD_DEPENDS`

- Add the variable `SDL_CONFIG` to `CONFIGURE_ENV`

- Add the dependencies of the selected libraries to the `LIB_DEPENDS`

To check whether an SDL library is available, you can do it with the `WANT_SDL` variable:

    WANT_SDL=yes

    .include <bsd.port.pre.mk>

    .if ${HAVE_SDL:Mmixer}!=""
    USE_SDL+=   mixer
    .endif

    .include <bsd.port.post.mk>

Prev | Home | Next
Using Ruby | Up | Using wxWidgets

For questions about the FreeBSD ports system, e-mail <ports@FreeBSD.org>.
For questions about this documentation, e-mail <doc@FreeBSD.org>.