# Configuration for Linux for 64-bit X86 (Opteron), static libs

include $(TOP)/configs/linux-x86-64

CONFIG_NAME = linux-x86-64-static

MKLIB_OPTIONS = -static
PIC_FLAGS =

# Library names (actual file names)
GL_LIB_NAME = libGL.a
GLU_LIB_NAME = libGLU.a
GLUT_LIB_NAME = libglut.a
GLW_LIB_NAME = libGLw.a
OSMESA_LIB_NAME = libOSMesa.a

# Library/program dependencies (static libs don't have dependencies)
GL_LIB_DEPS = 
OSMESA_LIB_DEPS = 
GLU_LIB_DEPS = 
GLUT_LIB_DEPS = 
GLW_LIB_DEPS = 

# Need to specify all libraries we may need
APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -Wl,--start-group \
               -l$(GL_LIB) $(TOP)/src/mesa/pipe/softpipe/libsoftpipe.a -Wl,--end-group \
               $(EXTRA_LIB_PATH) -lX11 -lXext -lXmu -lXt -lXi -lpthread -lstdc++ -lm
