| 1 | SHELL = /bin/sh |
|---|
| 2 | OS := $(shell uname) |
|---|
| 3 | |
|---|
| 4 | ## Set up dependencies |
|---|
| 5 | ifneq ("$(OSG_DEPENDENCIES)","") |
|---|
| 6 | include $(OSG_DEPENDENCIES) |
|---|
| 7 | else |
|---|
| 8 | include $(TOPDIR)/Make/dependencies |
|---|
| 9 | endif |
|---|
| 10 | |
|---|
| 11 | ## We don't care about architectural distinguishers in the OS |
|---|
| 12 | ## such as IRIX64, IRIX32, etc. so we truncate IRIX?? to IRIX |
|---|
| 13 | ifeq ($(findstring IRIX,$(OS)),IRIX) |
|---|
| 14 | OS := IRIX |
|---|
| 15 | endif |
|---|
| 16 | |
|---|
| 17 | ## Make CYGWIN_XXXX CYGWIN so it's "Windows cross platform" :) |
|---|
| 18 | ifeq ($(findstring CYGWIN,$(OS)),CYGWIN) |
|---|
| 19 | OS := CYGWIN |
|---|
| 20 | #OS := MINGW |
|---|
| 21 | endif |
|---|
| 22 | |
|---|
| 23 | ## Make MINGW_XXXX MINGW so it's "Windows cross platform" :) |
|---|
| 24 | ifeq ($(findstring MINGW,$(OS)),MINGW) |
|---|
| 25 | OS := MINGW |
|---|
| 26 | endif |
|---|
| 27 | |
|---|
| 28 | # TOPDIR needs to be redefined for every GNUmakefile |
|---|
| 29 | TOPDIR ?= ../ |
|---|
| 30 | THISDIR = . |
|---|
| 31 | MAKEDEPEND = ignore |
|---|
| 32 | |
|---|
| 33 | ####################################################################### |
|---|
| 34 | ## |
|---|
| 35 | ## VERSIONING SEMANTICS |
|---|
| 36 | ## |
|---|
| 37 | ## Version consistes of <major> . <minor> . <release> - <revision> |
|---|
| 38 | ## Where: |
|---|
| 39 | ## major : Production (0 = pre-production) |
|---|
| 40 | ## minor : 0-7 = Production minor, 8 = Alpha, 9 = Beta |
|---|
| 41 | ## release : Release tag |
|---|
| 42 | ## revision: Release revision - 0 = development (cutting edge). |
|---|
| 43 | ## |
|---|
| 44 | ## Usage: |
|---|
| 45 | ## Default - VERSION_REVISION is set to the value defined here |
|---|
| 46 | ## Env variable OSG_VERSION_REVISION overrides default |
|---|
| 47 | ## e.g.: |
|---|
| 48 | ## % setenv OSG_VERSION_REVISION 5 |
|---|
| 49 | ## % make version |
|---|
| 50 | ## Command line overrides env variable |
|---|
| 51 | ## % make VERSION_REVISION= |
|---|
| 52 | ####################################################################### |
|---|
| 53 | VERSION_MAJOR = 0 |
|---|
| 54 | VERSION_MINOR = 9 |
|---|
| 55 | VERSION_RELEASE = 7 |
|---|
| 56 | VERSION_REVISION ?= 2 |
|---|
| 57 | ifneq (,$(OSG_VERSION_REVISION)) |
|---|
| 58 | VERSION_REVISION = $(OSG_VERSION_REVISION) |
|---|
| 59 | endif |
|---|
| 60 | VERSION = $(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_RELEASE) |
|---|
| 61 | |
|---|
| 62 | INC = -I$(TOPDIR)/include |
|---|
| 63 | |
|---|
| 64 | ############################################################################ |
|---|
| 65 | ## NOTE - Semantics for the use of ARCH, ARCHARGS, and ARCHINST parameters |
|---|
| 66 | ## ARCH - must be defined if the OS supports both 64 and 32 bit |
|---|
| 67 | ## architectures may remain undefined if it does not. |
|---|
| 68 | ## ARCHARGS - Compiler directives to indicate for which architecture |
|---|
| 69 | ## to build for |
|---|
| 70 | ## ARCHINST - Installation target directory. Define if the OS supports |
|---|
| 71 | ## more than one architecture (32 and 64). |
|---|
| 72 | ## for ARCH=32 - define ARCHINST only if the system uses an |
|---|
| 73 | ## extension on 'lib' to indicate 32 bit. e.g. |
|---|
| 74 | ## IRIX defines /usr/lib32 |
|---|
| 75 | ## for ARCH=64 - Always define ARCHINST. Even if the OS |
|---|
| 76 | ## doesn't make a distinction, we will. |
|---|
| 77 | ############################################################################ |
|---|
| 78 | |
|---|
| 79 | CXXFLAGS = $(ARCHARGS) $(DOF) $(DEF) $(INC) |
|---|
| 80 | LDFLAGS = $(ARCHARGS) $(DOF) $(LINKARGS) -L$(TOPDIR)/lib/$(OS)$(ARCH) |
|---|
| 81 | OBJS = $(C++FILES:.cpp=.o) \ |
|---|
| 82 | $(CXXFILES:.cpp=.o) \ |
|---|
| 83 | $(CFILES:.c=.o) \ |
|---|
| 84 | |
|---|
| 85 | EXE_EXT = |
|---|
| 86 | |
|---|
| 87 | DOF = $(OPTF) |
|---|
| 88 | DEBUGDIR = $(OS)$(ARCH).Debug |
|---|
| 89 | OPTDIR = $(OS)$(ARCH).Opt |
|---|
| 90 | BININST = bin |
|---|
| 91 | LIBINST = lib |
|---|
| 92 | PLUGININST = lib/$(OS)$(ARCH)/osgPlugins |
|---|
| 93 | |
|---|
| 94 | INST_LOCATION = /usr/local |
|---|
| 95 | INST_LIBS = $(INST_LOCATION)/lib$(ARCHINST) |
|---|
| 96 | INST_PLUGINS = $(INST_LOCATION)/lib$(ARCHINST)/osgPlugins |
|---|
| 97 | INST_INCLUDE = $(INST_LOCATION)/include |
|---|
| 98 | INST_SHARE = $(INST_LOCATION)/share |
|---|
| 99 | INST_EXAMPLES = $(INST_SHARE)/OpenSceneGraph/bin |
|---|
| 100 | INST_SRC = $(INST_SHARE)/OpenSceneGraph/src |
|---|
| 101 | INST_DOC = $(INST_SHARE)/OpenSceneGraph/doc |
|---|
| 102 | INST_DATA = $(INST_SHARE)/OpenSceneGraph/data |
|---|
| 103 | INST_EXAMPLE_SRC = $(INST_SRC)/examples |
|---|
| 104 | LINK = ln -sf |
|---|
| 105 | INSTBINCMD = install -m 755 |
|---|
| 106 | INSTDEVCMD = install -m 644 |
|---|
| 107 | INSTLINKBINCMD = $(LINK) |
|---|
| 108 | INSTLINKDEVCMD = $(LINK) |
|---|
| 109 | LIB_PREFIX = lib |
|---|
| 110 | LIB_EXT = so |
|---|
| 111 | PLUGIN_PREFIX = osgdb_ |
|---|
| 112 | PLUGIN_EXT = so |
|---|
| 113 | MAKEDIST = echo " === Distribution build is not implemented yet for $(OS)"; printf "\n" |
|---|
| 114 | INSTLOGFILE = /tmp/.osg_inst_log |
|---|
| 115 | |
|---|
| 116 | ifneq ("$(OPENTHREADS_INC_DIR)","") |
|---|
| 117 | INC += -I$(OPENTHREADS_INC_DIR) |
|---|
| 118 | endif |
|---|
| 119 | |
|---|
| 120 | ifneq ("$(OPENTHREADS_LIB_DIR)","") |
|---|
| 121 | LDFLAGS += -L$(OPENTHREADS_LIB_DIR) |
|---|
| 122 | endif |
|---|
| 123 | |
|---|
| 124 | ifneq ("$(PRODUCER_INC_DIR)","") |
|---|
| 125 | INC += -I$(PRODUCER_INC_DIR) |
|---|
| 126 | endif |
|---|
| 127 | |
|---|
| 128 | ifneq ("$(PRODUCER_LIB_DIR)","") |
|---|
| 129 | LDFLAGS += -L$(PRODUCER_LIB_DIR) |
|---|
| 130 | endif |
|---|
| 131 | |
|---|
| 132 | |
|---|
| 133 | RECURSIVE_TARGETS = \ |
|---|
| 134 | opt\ |
|---|
| 135 | debug\ |
|---|
| 136 | clean\ |
|---|
| 137 | cleandepend\ |
|---|
| 138 | cleandependopt\ |
|---|
| 139 | cleandependdbg\ |
|---|
| 140 | cleandbg\ |
|---|
| 141 | cleanopt\ |
|---|
| 142 | cleantarget\ |
|---|
| 143 | cleantargetopt\ |
|---|
| 144 | cleantargetdbg\ |
|---|
| 145 | clobber\ |
|---|
| 146 | clobberdbg\ |
|---|
| 147 | clobberopt\ |
|---|
| 148 | beautify\ |
|---|
| 149 | docs\ |
|---|
| 150 | depend\ |
|---|
| 151 | |
|---|
| 152 | #### SUN OS Specific definitions |
|---|
| 153 | ifeq ($(OS),SunOS) |
|---|
| 154 | |
|---|
| 155 | #### if useing g++ on a sun |
|---|
| 156 | ifeq ($(COMPILER),gnu) |
|---|
| 157 | C++ = g++ |
|---|
| 158 | DEPARG = -M |
|---|
| 159 | INC += |
|---|
| 160 | DEF += -W -Wall -fPIC -fpermissive |
|---|
| 161 | OPTF = -O2 |
|---|
| 162 | DBGF = -g -DOSG_COMPILE_UNIT_TESTS |
|---|
| 163 | SHARED = -shared -fPIC |
|---|
| 164 | ARCH = 32 |
|---|
| 165 | ifeq ($(ARCH),64) |
|---|
| 166 | ARCHARGS = -m64 -DARCH64 |
|---|
| 167 | ARCHINST = 64 |
|---|
| 168 | else |
|---|
| 169 | ARCHARGS = |
|---|
| 170 | endif |
|---|
| 171 | GIF_LIBS = -lgif |
|---|
| 172 | TIFF_LIB = -ltiff |
|---|
| 173 | JPEG_LIBS = -ljpeg |
|---|
| 174 | PNG_LIBS = -lpng -lz |
|---|
| 175 | OTHER_LIBS = -lOpenThreads |
|---|
| 176 | |
|---|
| 177 | #### using forte compilers (default) |
|---|
| 178 | else |
|---|
| 179 | C++ = CC |
|---|
| 180 | DEPARG = -xM1 |
|---|
| 181 | INC += |
|---|
| 182 | DEF += -features=extensions -w |
|---|
| 183 | OPTF = -xO4 |
|---|
| 184 | DBGF = -g -DOSG_COMPILE_UNIT_TESTS |
|---|
| 185 | SHARED = -G |
|---|
| 186 | ARCH = 32 |
|---|
| 187 | ifeq ($(ARCH),64) |
|---|
| 188 | ARCHARGS = -xarch=v9 -DARCH64 |
|---|
| 189 | ARCHINST = 64 |
|---|
| 190 | else |
|---|
| 191 | ARCHARGS = |
|---|
| 192 | ARCHINST = |
|---|
| 193 | endif |
|---|
| 194 | OTHER_LIBS = -lCstd -lOpenThreads |
|---|
| 195 | LINKARGS = |
|---|
| 196 | GIF_LIBS = /usr/local/lib/libgif.a |
|---|
| 197 | TIFF_LIB = /usr/local/lib/libtiff.a |
|---|
| 198 | JPEG_LIBS = /usr/local/lib/libjpeg.a |
|---|
| 199 | PNG_LIBS = /usr/local/lib/libpng.a /usr/local/lib/libz.a |
|---|
| 200 | endif |
|---|
| 201 | |
|---|
| 202 | DYNAMICLIBRARYLIB = -ldl |
|---|
| 203 | OSG_LIBS = -losgGA -losgDB -losgUtil -losg |
|---|
| 204 | GL_LIBS = -lGLU -lGL |
|---|
| 205 | X_INC = -I/usr/X11R6/include |
|---|
| 206 | X_LIBS = -lXext -lXmu -lXi -lX11 |
|---|
| 207 | SOCKET_LIBS = -lsocket -lnsl |
|---|
| 208 | INSTBINCMD = cp |
|---|
| 209 | INSTDEVCMD = cp |
|---|
| 210 | INST_LOCATION = /opt/OpenSceneGraph |
|---|
| 211 | MAKEDIST = $(TOPDIR)/Make/makepkg |
|---|
| 212 | OTHER_LIBS = -lOpenThreads |
|---|
| 213 | |
|---|
| 214 | FREETYPE_INCLUDE = `freetype-config --cflags` |
|---|
| 215 | FREETYPE_LIB = `freetype-config --libs` |
|---|
| 216 | |
|---|
| 217 | GDAL_INCLUDES = `gdal-config --cflags` |
|---|
| 218 | GDAL_LIBS = `gdal-config --libs` |
|---|
| 219 | |
|---|
| 220 | |
|---|
| 221 | endif |
|---|
| 222 | |
|---|
| 223 | #### IRIX Specific definitions |
|---|
| 224 | ifeq ($(OS),IRIX) |
|---|
| 225 | CXX = CC |
|---|
| 226 | ifeq ($(CXX),CC) |
|---|
| 227 | LINKARGS = -L${TOPDIR}/lib -LANG:std -OPT:Olimit=0 |
|---|
| 228 | C++ = CC |
|---|
| 229 | DEPARG = -M |
|---|
| 230 | INC += -I${TOPDIR}/include -I/usr/freeware/include |
|---|
| 231 | DEF += -LANG:std -OPT:Olimit=0 \ |
|---|
| 232 | -DEBUG:woff=1681 -DEBUG:woff=1682 -DEBUG:woff=3303\ |
|---|
| 233 | -MDupdate $(MAKEDEPEND) |
|---|
| 234 | OPTF = -O2 |
|---|
| 235 | DBGF = -g -DOSG_COMPILE_UNIT_TESTS |
|---|
| 236 | SHARED = -shared |
|---|
| 237 | PFLIBS = \ |
|---|
| 238 | -lpf3ds -lpfdem -lpfdted -lpfdwb -lpfdxf -lpfevt \ |
|---|
| 239 | -lpfflt -lpfgds -lpfgfo -lpfim -lpflsa -lpflsb \ |
|---|
| 240 | -lpfnff -lpfobj -lpfpegg -lpfpfb -lpfphd -lpfpts \ |
|---|
| 241 | -lpfrot -lpfscale -lpfsgf -lpfsgo -lpfsphere -lpfsv \ |
|---|
| 242 | -lpftri -lpfunc -lpfvct -lpfdu -lpfutil -lpf -all -limage |
|---|
| 243 | ARCH = 32 |
|---|
| 244 | ifeq ($(ARCH),64) |
|---|
| 245 | ARCHARGS = -64 -DARCH64 |
|---|
| 246 | ARCHINST = 64 |
|---|
| 247 | LINKARGS += -L/usr/freeware/lib64 |
|---|
| 248 | PF_XTRA_LIBS = -L/usr/lib64/libpfdb -rpath /usr/lib64/libpfdb \ |
|---|
| 249 | $(PFLIBS) |
|---|
| 250 | else |
|---|
| 251 | ARCHARGS = -n32 |
|---|
| 252 | ARCHINST = 32 |
|---|
| 253 | LINKARGS += -L/usr/freeware/lib32 |
|---|
| 254 | PF_XTRA_LIBS = -L/usr/lib32/libpfdb -rpath /usr/lib32/libpfdb \ |
|---|
| 255 | $(PFLIBS) |
|---|
| 256 | endif |
|---|
| 257 | else |
|---|
| 258 | LIBS = -lstdc++ |
|---|
| 259 | LINKARGS = -L${TOPDIR}/lib |
|---|
| 260 | C++ = g++ |
|---|
| 261 | INC += -I${TOPDIR}/include -I/usr/freeware/include |
|---|
| 262 | DEF += -fPIC -W -Wno-unused |
|---|
| 263 | OPTF = -O2 |
|---|
| 264 | DBGF = -g -gstabs+ -DOSG_COMPILE_UNIT_TESTS |
|---|
| 265 | SHARED = -shared |
|---|
| 266 | PFLIBS = \ |
|---|
| 267 | -lpf3ds -lpfdem -lpfdted -lpfdwb -lpfdxf -lpfevt \ |
|---|
| 268 | -lpfflt -lpfgds -lpfgfo -lpfim -lpflsa -lpflsb \ |
|---|
| 269 | -lpfnff -lpfobj -lpfpegg -lpfpfb -lpfphd -lpfpts \ |
|---|
| 270 | -lpfrot -lpfscale -lpfsgf -lpfsgo -lpfsphere -lpfsv \ |
|---|
| 271 | -lpftri -lpfunc -lpfvct -lpfdu -lpfutil -lpf -all -limage |
|---|
| 272 | ARCH = 32 |
|---|
| 273 | ifeq ($(ARCH),64) |
|---|
| 274 | ARCHARGS = -mabi=64 -mips4 -DARCH64 |
|---|
| 275 | ARCHINST = 64 |
|---|
| 276 | LINKARGS += -L/usr/freeware/lib64 |
|---|
| 277 | PF_XTRA_LIBS = -L/usr/lib64/libpfdb -rpath /usr/lib64/libpfdb \ |
|---|
| 278 | $(PFLIBS) |
|---|
| 279 | else |
|---|
| 280 | ARCHARGS = -mabi=n32 -mips4 |
|---|
| 281 | ARCHINST = 32 |
|---|
| 282 | LINKARGS += -L/usr/freeware/lib32 |
|---|
| 283 | PF_XTRA_LIBS = -L/usr/lib32/libpfdb -rpath /usr/lib32/libpfdb \ |
|---|
| 284 | $(PFLIBS) |
|---|
| 285 | endif |
|---|
| 286 | endif |
|---|
| 287 | |
|---|
| 288 | DYNAMICLIBRARYLIB = |
|---|
| 289 | OSG_LIBS = -losgGA -losgDB -losgUtil -losg |
|---|
| 290 | GL_LIBS = -lGLU -lGL |
|---|
| 291 | X_INC = -I/usr/X11R6/include |
|---|
| 292 | X_LIBS = -lXext -lXi -lXmu -lX11 |
|---|
| 293 | SOCKET_LIBS = |
|---|
| 294 | OTHER_LIBS = -lm -lOpenThreads |
|---|
| 295 | PNG_LIBS = -lpng |
|---|
| 296 | JPEG_LIBS = -ljpeg |
|---|
| 297 | TIFF_LIB = -ltiff |
|---|
| 298 | GIF_LIBS = -lungif |
|---|
| 299 | MAKEDIST = $(TOPDIR)/Make/makeirixdist |
|---|
| 300 | |
|---|
| 301 | FREETYPE_INCLUDE = `freetype-config --cflags` |
|---|
| 302 | FREETYPE_LIB = `freetype-config --libs` |
|---|
| 303 | |
|---|
| 304 | GDAL_INCLUDES = `gdal-config --cflags` |
|---|
| 305 | GDAL_LIBS = `gdal-config --libs` |
|---|
| 306 | |
|---|
| 307 | |
|---|
| 308 | endif |
|---|
| 309 | |
|---|
| 310 | #### Linux specific definitions |
|---|
| 311 | |
|---|
| 312 | ifeq ($(OS),Linux) |
|---|
| 313 | |
|---|
| 314 | ifeq (x$(CXX),x) |
|---|
| 315 | C++ = g++ |
|---|
| 316 | else |
|---|
| 317 | C++ = $(CXX) |
|---|
| 318 | endif |
|---|
| 319 | |
|---|
| 320 | DEPARG = -M |
|---|
| 321 | INC += |
|---|
| 322 | |
|---|
| 323 | ifeq ($(COMPILER),intel) |
|---|
| 324 | C++ = ecc |
|---|
| 325 | LIBS = -lgcc_s |
|---|
| 326 | DEF += -KPIC |
|---|
| 327 | OPTF = -O2 |
|---|
| 328 | DBGF = -g -DOSG_COMPILE_UNIT_TESTS |
|---|
| 329 | ifeq ($(SYSARCH),ia64) |
|---|
| 330 | ARCHARGS = |
|---|
| 331 | ARCH = IA64 |
|---|
| 332 | ARCHINST = IA64 |
|---|
| 333 | else |
|---|
| 334 | ARCHARGS = |
|---|
| 335 | ARCH = 32 |
|---|
| 336 | ARCHINST = |
|---|
| 337 | endif |
|---|
| 338 | else |
|---|
| 339 | LIBS = -lstdc++ |
|---|
| 340 | DEF += -W -Wall -fPIC |
|---|
| 341 | OPTF = -O2 |
|---|
| 342 | DBGF = -g -gstabs+ -DOSG_COMPILE_UNIT_TESTS |
|---|
| 343 | SYSARCH := $(shell arch) |
|---|
| 344 | ifeq ($(SYSARCH),x86_64) |
|---|
| 345 | ARCHARGS = |
|---|
| 346 | ARCH = 64 |
|---|
| 347 | ARCHINST = 64 |
|---|
| 348 | else |
|---|
| 349 | ARCHARGS = |
|---|
| 350 | ARCH = 32 |
|---|
| 351 | ARCHINST = |
|---|
| 352 | endif |
|---|
| 353 | endif |
|---|
| 354 | |
|---|
| 355 | SHARED = -shared |
|---|
| 356 | ifeq ($(SYSARCH),x86_64) |
|---|
| 357 | LINKARGS = -L/usr/X11R6/lib64 |
|---|
| 358 | else |
|---|
| 359 | LINKARGS = -L/usr/X11R6/lib |
|---|
| 360 | endif |
|---|
| 361 | DYNAMICLIBRARYLIB = -ldl |
|---|
| 362 | OSG_LIBS = -losgGA -losgDB -losgUtil -losg |
|---|
| 363 | GL_LIBS = -lGLU -lGL |
|---|
| 364 | X_INC = -I/usr/X11R6/include |
|---|
| 365 | X_LIBS = -lXi -lXmu -lX11 |
|---|
| 366 | PF_XTRA_LIBS = -L/usr/lib/libpfdb -Xlinker -rpath /usr/lib/libpfdb \ |
|---|
| 367 | -lpfdu -lpfutil -lpf |
|---|
| 368 | SOCKET_LIBS = |
|---|
| 369 | OTHER_LIBS = -lOpenThreads |
|---|
| 370 | PNG_LIBS = -lpng |
|---|
| 371 | JPEG_LIBS = -ljpeg |
|---|
| 372 | TIFF_LIB = -ltiff |
|---|
| 373 | GIF_LIBS = -lungif |
|---|
| 374 | MAKEDIST = $(TOPDIR)/Make/makerpms |
|---|
| 375 | |
|---|
| 376 | ifeq ("$(PROFILER)","gprof") |
|---|
| 377 | DEF += -pg |
|---|
| 378 | endif |
|---|
| 379 | |
|---|
| 380 | ifeq ("$(PROFILER)","FunctionCheck") |
|---|
| 381 | DEF += -finstrument-functions |
|---|
| 382 | OTHER_LIBS += -lfnccheck |
|---|
| 383 | endif |
|---|
| 384 | |
|---|
| 385 | FREETYPE_INCLUDE = `freetype-config --cflags` |
|---|
| 386 | FREETYPE_LIB = `freetype-config --libs` |
|---|
| 387 | |
|---|
| 388 | GDAL_INCLUDES = `gdal-config --cflags` |
|---|
| 389 | GDAL_LIBS = `gdal-config --libs` |
|---|
| 390 | |
|---|
| 391 | endif |
|---|
| 392 | |
|---|
| 393 | #### FreeBSD specific definitions |
|---|
| 394 | ifeq ($(OS),FreeBSD) |
|---|
| 395 | C++ = g++ |
|---|
| 396 | DEPARG = -MM |
|---|
| 397 | INC += -I/usr/local/include -I/usr/X11R6/include |
|---|
| 398 | DEF += -W -Wall |
|---|
| 399 | OPTF = -O2 |
|---|
| 400 | DBGF = -g -DOSG_COMPILE_UNIT_TESTS |
|---|
| 401 | SHARED = -shared |
|---|
| 402 | ARCH = |
|---|
| 403 | ARCHINST = |
|---|
| 404 | ARCHARGS = |
|---|
| 405 | LINKARGS = -L/usr/X11R6/lib -L/usr/local/lib -rpath /usr/local/lib -pthread |
|---|
| 406 | DYNAMICLIBRARYLIB = |
|---|
| 407 | OSG_LIBS = -losgGA -losgDB -losgUtil -losg |
|---|
| 408 | GL_LIBS = -lGLU -lGL |
|---|
| 409 | X_INC = -I/usr/X11R6/include |
|---|
| 410 | X_LIBS = -lXmu -lX11 |
|---|
| 411 | SOCKET_LIBS = |
|---|
| 412 | OTHER_LIBS = -lOpenThreads |
|---|
| 413 | PNG_LIBS = -lpng |
|---|
| 414 | JPEG_LIBS = -ljpeg |
|---|
| 415 | TIFF_LIB = -ltiff |
|---|
| 416 | GIF_LIBS = -lungif |
|---|
| 417 | |
|---|
| 418 | FREETYPE_INCLUDE = `freetype-config --cflags` |
|---|
| 419 | FREETYPE_LIB = `freetype-config --libs` |
|---|
| 420 | |
|---|
| 421 | GDAL_INCLUDES = `gdal-config --cflags` |
|---|
| 422 | GDAL_LIBS = `gdal-config --libs` |
|---|
| 423 | |
|---|
| 424 | endif |
|---|
| 425 | |
|---|
| 426 | #### MacOS X specific definitions |
|---|
| 427 | ifeq ($(OS),Darwin) |
|---|
| 428 | ifeq (x$(CXX),x) |
|---|
| 429 | C++ = g++ |
|---|
| 430 | else |
|---|
| 431 | C++ = $(CXX) |
|---|
| 432 | endif |
|---|
| 433 | FINC += -F$(SDKPATH)/System/Library/Frameworks |
|---|
| 434 | INC += $(FINC) -I$(SDKPATH)/usr/include -I$(SDKPATH)/usr/X11R6/include |
|---|
| 435 | LDFLAGS += $(FINC) -L$(SDKPATH)/usr/include -L$(SDKPATH)/usr/X11R6/lib -L/sw/lib |
|---|
| 436 | DEF += -Wall |
|---|
| 437 | OPTF = -O2 |
|---|
| 438 | DBGF = -g -DOSG_COMPILE_UNIT_TESTS |
|---|
| 439 | DEPARG = -M $(DEF) |
|---|
| 440 | SHARED = -dynamic |
|---|
| 441 | ARCH = 32 |
|---|
| 442 | ARCHINST = |
|---|
| 443 | ARCHARGS = |
|---|
| 444 | LINKARGS = |
|---|
| 445 | DYNAMICLIBRARYLIB = |
|---|
| 446 | OSG_LIBS = -losgGA -losgDB -losgUtil -losg |
|---|
| 447 | CARBON_LIB = -framework Carbon |
|---|
| 448 | GL_LIBS = -framework OpenGL $(CARBON_LIB) |
|---|
| 449 | X_INC = -I$(SDKPATH)/usr/X11R6/include |
|---|
| 450 | X_LIBS = -lX11 |
|---|
| 451 | SOCKET_LIBS = |
|---|
| 452 | OTHER_LIBS = -lm -lstdc++ -lobjc -lOpenThreads |
|---|
| 453 | LIB_EXT = dylib |
|---|
| 454 | LIBVERSION = -current_version $(VERSION) \ |
|---|
| 455 | -compatibility_version \ |
|---|
| 456 | $(VERSION_MAJOR).$(VERSION_MINOR).0 |
|---|
| 457 | |
|---|
| 458 | ifeq ($(DARWIN_QUICKTIME),yes) |
|---|
| 459 | DEF += -DDARWIN_QUICKTIME |
|---|
| 460 | endif |
|---|
| 461 | |
|---|
| 462 | QUICKTIME = -framework QuickTime $(CARBON_LIB) |
|---|
| 463 | PNG_LIBS = -lpng -lz |
|---|
| 464 | JPEG_LIBS = -ljpeg |
|---|
| 465 | GIF_LIBS = -lungif |
|---|
| 466 | TIFF_LIBS = -ltiff -lz -ljpeg |
|---|
| 467 | |
|---|
| 468 | # FREETYPE_INCLUDE = `freetype-config --cflags` |
|---|
| 469 | # FREETYPE_LIB = `freetype-config --libs` |
|---|
| 470 | |
|---|
| 471 | FREETYPE_INCLUDE = -I$(SDKPATH)/usr/X11R6/include/freetype2 |
|---|
| 472 | FREETYPE_LIB = -lfreetype |
|---|
| 473 | |
|---|
| 474 | GDAL_INCLUDES = `gdal-config --cflags` |
|---|
| 475 | GDAL_LIBS = `gdal-config --libs` |
|---|
| 476 | |
|---|
| 477 | endif |
|---|
| 478 | |
|---|
| 479 | #### Cygwin specific definitions |
|---|
| 480 | ifeq ($(OS),CYGWIN) |
|---|
| 481 | C++ = c++ |
|---|
| 482 | DEPARG = -M |
|---|
| 483 | INC += |
|---|
| 484 | DEF += -DWIN32 -W -Wall -DNOMINMAX |
|---|
| 485 | OPTF = -O2 |
|---|
| 486 | DBGF = -g -DOSG_COMPILE_UNIT_TESTS |
|---|
| 487 | SHARED = -shared \ |
|---|
| 488 | -Wl,--out-implib,$(TOPDIR)/lib/$(OS)/lib$(TARGET_BASENAME).dll.a \ |
|---|
| 489 | -Wl,--export-all-symbols |
|---|
| 490 | |
|---|
| 491 | EXE_EXT =.exe |
|---|
| 492 | ARCH = |
|---|
| 493 | ARCHINST = |
|---|
| 494 | ARCHARGS = |
|---|
| 495 | LINKARGS = -W -Wall |
|---|
| 496 | DYNAMICLIBRARYLIB = |
|---|
| 497 | OSG_LIBS = -losgGA -losgDB -losgUtil -losg |
|---|
| 498 | GL_LIBS = -lglu32 -lopengl32 |
|---|
| 499 | X_INC = |
|---|
| 500 | X_LIBS = -lgdi32 -luser32 |
|---|
| 501 | SOCKET_LIBS = |
|---|
| 502 | OTHER_LIBS = -lOpenThreads |
|---|
| 503 | PNG_LIBS = -lpng -lz |
|---|
| 504 | JPEG_LIBS = -ljpeg |
|---|
| 505 | GIF_LIBS = -lungif |
|---|
| 506 | TIFF_LIB = -ltiff -lz -ljpeg |
|---|
| 507 | |
|---|
| 508 | FREETYPE_INCLUDE = `freetype-config --cflags` |
|---|
| 509 | FREETYPE_LIB = `freetype-config --libs` |
|---|
| 510 | |
|---|
| 511 | GDAL_INCLUDES = `gdal-config --cflags` |
|---|
| 512 | GDAL_LIBS = `gdal-config --dep-libs` |
|---|
| 513 | GDAL_LIBS += `gdal-config --libs` |
|---|
| 514 | |
|---|
| 515 | LIBINST = bin |
|---|
| 516 | PLUGININST = bin/$(OS)$(ARCH) |
|---|
| 517 | |
|---|
| 518 | LIB_PREFIX = cyg |
|---|
| 519 | LIB_EXT = dll |
|---|
| 520 | PLUGIN_EXT = dll |
|---|
| 521 | LINK = cp -f |
|---|
| 522 | INST_LOCATION = /usr/local/OpenSceneGraph |
|---|
| 523 | INST_LIBS = $(INST_LOCATION)/bin |
|---|
| 524 | INST_PLUGINS = $(INST_LOCATION)/bin |
|---|
| 525 | INST_INCLUDE = $(INST_LOCATION)/include |
|---|
| 526 | INST_SHARE_PREFIX = /usr/local/OpenSceneGraph |
|---|
| 527 | INST_SRC = $(INST_SHARE_PREFIX)/src |
|---|
| 528 | INST_EXAMPLES = $(INST_SHARE_PREFIX)/bin |
|---|
| 529 | INST_EXAMPLE_SRC = $(INST_SHARE_PREFIX)/src/demos |
|---|
| 530 | INST_DOC = $(INST_SHARE_PREFIX)/doc |
|---|
| 531 | INST_DATA = $(INST_SHARE_PREFIX)/data |
|---|
| 532 | MAKEDIST = $(TOPDIR)/Make/makeinnosetup |
|---|
| 533 | endif |
|---|
| 534 | |
|---|
| 535 | #### Mingw specific definitions |
|---|
| 536 | ifeq ($(OS),MINGW) |
|---|
| 537 | C++ = c++ -mthreads |
|---|
| 538 | # -fomit-frame-pointer -march=pentium3 -msse -mmmx -mfpmath=sse |
|---|
| 539 | DEPARG = -M |
|---|
| 540 | INC += |
|---|
| 541 | DEF += -DWIN32 -Wall |
|---|
| 542 | # -W |
|---|
| 543 | OPTF = -O2 |
|---|
| 544 | DBGF = -g -DOSG_COMPILE_UNIT_TESTS |
|---|
| 545 | SHARED = -shared -mthreads \ |
|---|
| 546 | -Wl,--out-implib,$(TOPDIR)/lib/$(OS)/lib$(TARGET_BASENAME).dll.a \ |
|---|
| 547 | -Wl,--export-all-symbols |
|---|
| 548 | |
|---|
| 549 | EXE_EXT =.exe |
|---|
| 550 | ARCH = |
|---|
| 551 | ARCHINST = |
|---|
| 552 | ARCHARGS = |
|---|
| 553 | LINKARGS = -W -Wall |
|---|
| 554 | DYNAMICLIBRARYLIB = |
|---|
| 555 | OSG_LIBS = -losgGA -losgDB -losgUtil -losg |
|---|
| 556 | GL_LIBS = -lglu32 -lopengl32 |
|---|
| 557 | X_INC = |
|---|
| 558 | X_LIBS = -lgdi32 -luser32 |
|---|
| 559 | SOCKET_LIBS = -lws2_32 |
|---|
| 560 | OTHER_LIBS = -lOpenThreads |
|---|
| 561 | PNG_LIBS = -lpng -lz |
|---|
| 562 | JPEG_LIBS = -ljpeg |
|---|
| 563 | GIF_LIBS = -lungif |
|---|
| 564 | TIFF_LIB = -ltiff -lz -ljpeg |
|---|
| 565 | |
|---|
| 566 | FREETYPE_LIB = -lfreetype |
|---|
| 567 | |
|---|
| 568 | GDAL_LIB = -lgdal -ljpeg -lgeotiff -ltiff -lpng -lz |
|---|
| 569 | |
|---|
| 570 | LIBINST = bin |
|---|
| 571 | PLUGININST = bin/$(OS)$(ARCH) |
|---|
| 572 | |
|---|
| 573 | LIB_PREFIX = lib |
|---|
| 574 | LIB_EXT = dll |
|---|
| 575 | PLUGIN_EXT = dll |
|---|
| 576 | LINK = cp -f |
|---|
| 577 | INST_LOCATION = /usr/local/OpenSceneGraph |
|---|
| 578 | INST_LIBS = $(INST_LOCATION)/bin |
|---|
| 579 | INST_PLUGINS = $(INST_LOCATION)/bin |
|---|
| 580 | INST_INCLUDE = $(INST_LOCATION)/include |
|---|
| 581 | INST_SHARE_PREFIX = /usr/local/OpenSceneGraph |
|---|
| 582 | INST_SRC = $(INST_SHARE_PREFIX)/src |
|---|
| 583 | INST_EXAMPLES = $(INST_SHARE_PREFIX)/bin |
|---|
| 584 | INST_EXAMPLE_SRC = $(INST_SHARE_PREFIX)/src/examples |
|---|
| 585 | INST_DOC = $(INST_SHARE_PREFIX)/doc |
|---|
| 586 | INST_DATA = $(INST_SHARE_PREFIX)/data |
|---|
| 587 | endif |
|---|
| 588 | |
|---|
| 589 | #### HP-UX Specific definitions |
|---|
| 590 | # contributed by tino.schwarze@informatik.tu-chemnitz.de |
|---|
| 591 | |
|---|
| 592 | ifeq ($(OS),HP-UX) |
|---|
| 593 | |
|---|
| 594 | C++ = g++ |
|---|
| 595 | DEPARG = -M |
|---|
| 596 | INC += |
|---|
| 597 | DEF += -W -Wall -fPIC |
|---|
| 598 | OPTF = -O2 |
|---|
| 599 | # gcc 3.1 uses DWARF as default, my GDB might not yet support this... |
|---|
| 600 | # at least I've got problems everywhere |
|---|
| 601 | DBGF = -g -gstabs+ -DOSG_COMPILE_UNIT_TESTS |
|---|
| 602 | SHARED = -shared -fPIC |
|---|
| 603 | ARCH = 32 |
|---|
| 604 | ifeq ($(ARCH),64) |
|---|
| 605 | # not yet tested |
|---|
| 606 | ARCHARGS = -march=2.0 -DARCH64 |
|---|
| 607 | ARCHINST = 64 |
|---|
| 608 | else |
|---|
| 609 | # at least my gcc 3.1 defaults to HP-PA RISC 1.1 |
|---|
| 610 | ARCHARGS = |
|---|
| 611 | ARCHINST = |
|---|
| 612 | endif |
|---|
| 613 | LINKARGS = |
|---|
| 614 | LIB_EXT = sl |
|---|
| 615 | PLUGIN_EXT = sl |
|---|
| 616 | DYNAMICLIBRARYLIB = -ldld |
|---|
| 617 | OSG_LIBS = -losgGA -losgDB -losgUtil -losg |
|---|
| 618 | GL_LIBS = -L/opt/graphics/OpenGL/lib -lGLU -lGL |
|---|
| 619 | X_INC = -I/usr/X11R6/include |
|---|
| 620 | X_LIBS = -L/usr/lib/X11R6 -lXext -lXi -lX11 -L/usr/lib/X11R4 -lXmu |
|---|
| 621 | SOCKET_LIBS = |
|---|
| 622 | # make sure that global constructors/destructors are called upon |
|---|
| 623 | # shl_load() / shl_unload() - this is a gcc specific workaround |
|---|
| 624 | OTHER_LIBS = -lm -Wl,+init -Wl,_GLOBAL__DI -Wl,+fini -Wl,_GLOBAL__DD -lOpenThreads |
|---|
| 625 | PNG_INCLUDE = -I/opt/libpng/include |
|---|
| 626 | PNG_LIBS = -L/opt/libpng/lib -lpng -L/opt/zlib/lib -lz |
|---|
| 627 | JPEG_INCLUDE = -I/opt/jpeg-6/include |
|---|
| 628 | JPEG_LIBS = -L/opt/jpeg-6/lib -ljpeg |
|---|
| 629 | TIFF_INCLUDE = -I/opt/tiff-3.5/include |
|---|
| 630 | TIFF_LIB = -L/opt/tiff-3.5/lib -ltiff |
|---|
| 631 | GIF_INCLUDE = -I/opt/libungif/include |
|---|
| 632 | GIF_LIBS = -L/opt/libungif/lib -lungif |
|---|
| 633 | |
|---|
| 634 | FREETYPE_INCLUDE = `freetype-config --cflags` |
|---|
| 635 | FREETYPE_LIB = `freetype-config --libs` |
|---|
| 636 | |
|---|
| 637 | GDAL_INCLUDES = `gdal-config --cflags` |
|---|
| 638 | GDAL_LIBS = `gdal-config --libs` |
|---|
| 639 | |
|---|
| 640 | endif |
|---|
| 641 | |
|---|
| 642 | VPATH=.. |
|---|
| 643 | |
|---|