# Set port KNOBS and individual defines
# Global options, always use where applicable
RANDOMIZE_MASTER_SITES=1 # We randomize when not working on portage
WITH_IPV6=1 # Someday maybe our ISP will update
WITH_SOCKS=1 # SOCKS5 support to allow networking around pf
WITH_SSL=1 # Use (S)ecure (S)ocket (L)ayer
WITH_OPENSSL=1 # Same as above, implicit WITHOUT_GNUTLS
WITH_THREADS=1 # Use multithreaded apps for everything
WITH_LCD_FILTERING=1 # We use LCDs, enable where applicable
WITH_TTF_BYTECODE_ENABLED=1 # Same as above, called by OOo
# The DEBUG KNOB often switches on codes paths to enable extra sanity and other
# nonsense (at least for our purposes). We want to see what went wrong under
# real world usage. Typically, these changes either slow the application down or
# change the expected behaviour, neither are acceptable for daily use.
WITHOUT_DEBUG=1 # Enabled as a system wide CFLAG
# Define which gecko to use, some still use www/mozilla by default
WITH_GECKO=xulrunner firefox thunderbird # In order or preference
# Define our linuxulator base
OVERRIDE_LINUX_BASE_PORT=f8
# Define our Python verion
PYTHON_DEFAULT_VERSION=python2.6
# And include python support in everything
WITH_PYTHON=1
# Control the TCL/TK version where optional
WITH_TCL_VER=86
WITH_TK_VER=86
USE_TCL_THREADS=1
USE_TK_THREADS=1
# This is a desktop machine, all apps can expect X
WITH_X11=1 # X.org
WITH_XORG=1 # X.org
WITH_XCB=1 # X C Bindings, makes X11 behave
WITH_XFT=1 # Pretty fonts are a must
WITH_GTK2=1 # Use GTK+ 2.x globally
# We need to find case by case exceptions, some ports USE_GTK, USE_GNOME, or
# their own conventions entirely.
# There are many cases where USE_GTK means GTK+ 1.x
# USE_GNOME is used, at least by editors/vim, to install old GNOME 1.x stuff
# Print related
WITH_CUPS=1 # All apps need CUPS support
WITH_LIBPAPER=1 # Better support for paper types
WITH_XDG_OPEN=1 # Opens with the associated application
# Global system services
WITH_HAL=1 # (H)ardware (A)bstraction (L)ayer
WITH_DBUS=1 # (D)esktop BUS
WITH_GVFS=1 # GNOME Virtual File System
WITH_GCONF=1 # Store/access configurations via GConf
WITH_AVAHI=1 # mDNS Responder/Zeroconf (usless, but whatever)
WITH_SAMBA=1 # So we can work with Windows when we must
WITH_ESOUND=1 # Enlightened Sound Daemon, used by GNOME
WITH_NOTIFY=1 # It's nice to know these things
# Useless cruft
WITHOUT_FUSE=1 # WTF is this? Kernel module that is never used
WITHOUT_TRACKER=1 # We don't use MetaTracker, too system intensive
# CPU options when available
WITH_MMX=1 # (M)ulti(M)edia e(X)tensions
WITH_3DNOW=1 # AMD's extensions to MMX
WITH_SSE=1 # (S)treaming (S)IMD (E)xtensions
# Use optimizations
BUILD_OPTIMIZED=1 # An form of optimization knob
WITH_OPTIMIZED_CFLAGS=1 # Preset optimizations
WITH_OCFLAGS=1 # Variation of the above
# 3D acceleration when available
WITH_OPENGL=1 # The standard 3D accel
WITH_MESAGL=1 # Xorg's mesa 3D accel
WITH_GLITZ=1 # Used by cairo
# Multimedia
WITH_CDDA=1 # Normal audio CDs
WITH_MMS=1 # Multimedia streams
WITH_OSS=1 # Kernel's OSS sound server
WITH_CDPARANOIA=1 # CD extraction with error correction
WITH_OGG=1 # Xiph's multimedia wrapper
WITH_FLAC=1 # Xiph's lossless compressor
WITH_VORBIS=1 # Xiph's MP3 killer
WITH_THEORA=1 # Xiph's MPEG killer
WITH_SPEEX=1 # Xiph's speech compressor
WITH_XVID=1 # Open source DivX fork
WITH_DVD=1 # DVD support
WITH_DVDNAV=1 # DVD menus
WITH_DVDREAD=1 # DVD read support
WITH_A52=1 # DVD audio
WITH_DTS=1 # another DVD audio
# There is no 'make config' options for these
.if !empty(.CURDIR:M/usr/ports/textproc/docproj)
WITH_JADETEX=1 # Forced decision from textproc/docproj
.endif
.if !empty(.CURDIR:M/usr/ports/java/jdk*)
.if !defined(READ) # Use 'make READ=1' to get distfile URL
PACKAGE_BUILDING=1 # Skip EULA, already agreed, hangs updates
WITH_WEB=1 # Runescape, need I say more?
WITH_POLICY=1 # Of course we want crypto
WITH_TZDATA=1 # Timezone data
.endif
.endif
.if !empty(.CURDIR:M/usr/ports/lang/tcl*)
WITH_TCL85_MAN=1 # WTF! Of course we want man pages by default
WITH_TZDATA=1 # Timezone data
.endif
.if !empty(.CURDIR:M/usr/ports/devel/apr-svn)
APR_UTIL_WITH_BERKELEY_DB=1 # Needed by devel/subversion-freebsd
.endif
.if !empty(.CURDIR:M/usr/ports/emulators/qemu*)
WITH_KQEMU=1 # Highly desirable to run most things real time
WITHOUT_ALL_TARGETS=1 # Brings in gcc34 and not stuff we use, ever
.endif
.if !empty(.CURDIR:M/usr/ports/devel/boost)
WITH_PYTHON=1 # Python binding, needed by several ports
WITHOUT_PYSTE=1 # Installs bullshit depends, including gcc34
.endif
.if !empty(.CURDIR:M/usr/ports/www/apache*)
WITH_MPM=event
.endif
.if !empty(.CURDIR:M/usr/ports/editors/openoffice.org-*)
WITH_GPC=1 # General Polygon Clipper for logic charts
.endif
.if !empty(.CURDIR:M/usr/ports/audio/ardour*)
WITH_VST=1 # Not illegal to use, only redistribute
.endif
.if !empty(.CURDIR:M/usr/ports/editors/vim*)
PACKAGE_BUILDING=1 # This pulls in everything we want
.endif
.if !empty(.CURDIR:M/usr/ports/multimedia/totem*)
WITHOUT_BROWSER_PLUGINS=1 # These just piss us off, who uses this really?
.endif
.if !empty(.CURDIR:M/usr/ports/www/lynx)
IGNORE= We use lynx-current # Force this until we fix it
.endif