2002-10-12 11:37:38 +00:00
|
|
|
#
|
|
|
|
# $Id$
|
|
|
|
#
|
|
|
|
# ***** BEGIN GPL/BL DUAL LICENSE BLOCK *****
|
|
|
|
#
|
|
|
|
# This program is free software; you can redistribute it and/or
|
|
|
|
# modify it under the terms of the GNU General Public License
|
|
|
|
# as published by the Free Software Foundation; either version 2
|
|
|
|
# of the License, or (at your option) any later version. The Blender
|
|
|
|
# Foundation also sells licenses for use in proprietary software under
|
|
|
|
# the Blender License. See http://www.blender.org/BL/ for information
|
|
|
|
# about this.
|
|
|
|
#
|
|
|
|
# This program is distributed in the hope that it will be useful,
|
|
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
# GNU General Public License for more details.
|
|
|
|
#
|
|
|
|
# You should have received a copy of the GNU General Public License
|
|
|
|
# along with this program; if not, write to the Free Software Foundation,
|
|
|
|
# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
|
|
#
|
|
|
|
# The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
|
|
|
|
# All rights reserved.
|
|
|
|
#
|
|
|
|
# The Original Code is: all of this file.
|
|
|
|
#
|
|
|
|
# Contributor(s): none yet.
|
|
|
|
#
|
|
|
|
# ***** END GPL/BL DUAL LICENSE BLOCK *****
|
|
|
|
#
|
|
|
|
# linking only
|
|
|
|
|
|
|
|
include nan_definitions.mk
|
|
|
|
|
|
|
|
ifdef NAN_DEBUG
|
|
|
|
LDFLAGS += $(NAN_DEBUG)
|
|
|
|
endif
|
|
|
|
|
|
|
|
DBG_LDFLAGS += -g
|
|
|
|
|
|
|
|
ifneq (x$(DEBUG_DIR), x)
|
|
|
|
LDFLAGS+=$(DBG_LDFLAGS)
|
|
|
|
else
|
|
|
|
LDFLAGS+=$(REL_LDFLAGS)
|
|
|
|
endif
|
|
|
|
|
|
|
|
######################## OS dependencies (alphabetic!) ################
|
|
|
|
|
|
|
|
# default (overriden by windows)
|
|
|
|
SOEXT = .so
|
|
|
|
|
|
|
|
ifeq ($(OS),beos)
|
|
|
|
LLIBS = -L/boot/develop/lib/x86/ -lGL -lbe -L/boot/home/config/lib/
|
|
|
|
LLIBS += -lpython1.5
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifeq ($(OS),darwin)
|
|
|
|
LLIBS += -lGLU -lGL
|
|
|
|
LLIBS += -lz -framework Carbon -framework AGL
|
2003-05-02 13:36:56 +00:00
|
|
|
ifeq ($(WITH_QUICKTIME), true)
|
2003-05-24 20:04:37 +00:00
|
|
|
LLIBS += -framework QuickTime
|
2003-05-02 13:36:56 +00:00
|
|
|
endif
|
2002-10-12 11:37:38 +00:00
|
|
|
LDFLAGS += -L/System/Library/Frameworks/OpenGL.framework/Libraries
|
|
|
|
DBG_LDFLAGS += -L/System/Library/Frameworks/OpenGL.framework/Libraries
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifeq ($(OS),freebsd)
|
|
|
|
LLIBS = -L/usr/X11R6/lib -lX11 -lXmu -lm -lutil -lz -pthread -lc_r
|
|
|
|
DADD = -lGL -lGLU
|
|
|
|
DYNLDFLAGS = -shared $(LDFLAGS)
|
2003-06-12 19:17:33 +00:00
|
|
|
LOPTS = -Wl,--export-dynamic
|
2002-10-12 11:37:38 +00:00
|
|
|
ifeq ($(OS_VERSION),$(findstring $(OS_VERSION), "3.4 4.0"))
|
|
|
|
COMMENT = "MESA 3.0"
|
|
|
|
SADD = /usr/X11R6/lib/libGL.a /usr/X11R6/lib/libGLU.a
|
|
|
|
LLIBS += -lc
|
|
|
|
else
|
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifeq ($(OS),irix)
|
|
|
|
LLIBS = -lmovieGL -lGLU -lGL -lXmu -lXext -lX11 -lc -lm -ldmedia
|
2003-06-28 03:47:05 +00:00
|
|
|
LLIBS += -lcl -laudio -ldb -lCio -lz
|
2003-07-12 00:46:43 +00:00
|
|
|
LLIBS += -lpthread
|
2003-06-28 03:47:05 +00:00
|
|
|
LLIBS += -woff 84,171
|
2002-10-12 11:37:38 +00:00
|
|
|
DYNLDFLAGS = -shared $(LDFLAGS)
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifeq ($(OS),linux)
|
|
|
|
ifeq ($(CPU),alpha)
|
|
|
|
COMMENT = "MESA 3.1"
|
|
|
|
LLIBS = -lGL -lGLU -L/usr/X11R6/lib/ -lXmu -lXext -lX11
|
|
|
|
LLIBS += -lc -lm -ldl -lutil
|
|
|
|
LOPTS = -export-dynamic
|
|
|
|
endif
|
|
|
|
ifeq ($(CPU),i386)
|
|
|
|
COMMENT = "MESA 3.1"
|
|
|
|
LLIBS = -L$(NAN_MESA)/lib -L/usr/X11R6/lib -lXmu -lXext -lX11 -lXi
|
|
|
|
LLIBS += -lutil -lc -lm -ldl -lpthread
|
2002-10-18 14:36:34 +00:00
|
|
|
LLIBS += -L$(NAN_ODE)/lib -lode
|
2002-10-12 11:37:38 +00:00
|
|
|
LOPTS = -export-dynamic
|
|
|
|
DADD = -lGL -lGLU
|
|
|
|
SADD = $(NAN_MESA)/lib/libGL.a $(NAN_MESA)/lib/libGLU.a
|
|
|
|
DYNLDFLAGS = -shared $(LDFLAGS)
|
|
|
|
endif
|
|
|
|
ifeq ($(CPU),powerpc)
|
|
|
|
COMMENT = "MESA 3.1"
|
|
|
|
LLIBS = -L/usr/X11R6/lib/ -lXmu -lXext -lX11 -lc -ldl -lm -lutil
|
|
|
|
DADD = -lGL -lGLU
|
|
|
|
SADD = /usr/lib/libGL.a /usr/lib/libGLU.a
|
|
|
|
LOPTS = -export-dynamic
|
|
|
|
endif
|
|
|
|
LLIBS += -lz
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifeq ($(OS),openbsd)
|
|
|
|
SADD = /usr/local/lib/libGL.a /usr/local/lib/libGLU.a
|
|
|
|
SADD += /usr/X11R6/lib/libXmu.a /usr/X11R6/lib/libXext.a
|
|
|
|
SADD += /usr/X11R6/lib/libX11.a /usr/lib/libm.a -pthread
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifeq ($(OS),solaris)
|
|
|
|
LLIBS = -lGLU -lGL -lXmu -lXext -lX11 -lc -lm -ldl -lsocket -lnsl
|
|
|
|
DYNLDFLAGS = -shared $(LDFLAGS)
|
|
|
|
endif
|
|
|
|
|
|
|
|
ifeq ($(OS),windows)
|
|
|
|
EXT = .exe
|
|
|
|
SOEXT = .dll
|
2003-05-24 20:04:37 +00:00
|
|
|
ifeq ($(FREE_WINDOWS),true)
|
|
|
|
MINGWLIB = /usr/lib/w32api
|
|
|
|
LDFLAGS += -mwindows -mno-cygwin -mconsole
|
|
|
|
DADD += -L/usr/lib/w32api -lnetapi32 -lopengl32 -lglu32
|
2003-06-14 22:47:54 +00:00
|
|
|
DADD += -L/usr/lib/w32api -lwinmm
|
2003-05-24 20:04:37 +00:00
|
|
|
else
|
|
|
|
DADD = kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib
|
|
|
|
DADD += advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib
|
|
|
|
DADD += vfw32.lib winmm.lib opengl32.lib glu32.lib largeint.lib dxguid.lib
|
|
|
|
DADD += libcmt.lib
|
|
|
|
LOPTS = /link
|
|
|
|
LOPTS += /NODEFAULTLIB:"libc"
|
|
|
|
LOPTS += /NODEFAULTLIB:"libcd"
|
|
|
|
LOPTS += /NODEFAULTLIB:"libcp"
|
|
|
|
LOPTS += /NODEFAULTLIB:"libcpd"
|
|
|
|
LOPTS += /NODEFAULTLIB:"python20"
|
|
|
|
LOPTS += /NODEFAULTLIB:"msvcrt"
|
|
|
|
LOPTS += /SUBSYSTEM:CONSOLE
|
|
|
|
LDFLAGS += /MT
|
|
|
|
DYNLDFLAGS = /LD
|
|
|
|
endif
|
2002-10-12 11:37:38 +00:00
|
|
|
endif
|
|
|
|
|
Commit message and the brunt of the code courtesy of intrr, apologies for the
size of this;
Finally, the Sequencer audio support and global audio/animation sync stuff!
(See http://intrr.org/blender/audiosequencer.html)
Stuff that has been done:
./source/blender/blenloader/intern/writefile.c
./source/blender/blenloader/intern/readfile.c
Added code to make it handle sounds used by audio strips, and to convert
Scene data from older (<2.28) versions to init Scene global audio settings
(Scene->audio) to defaults.
./source/blender/include/BSE_seqaudio.h
./source/blender/src/seqaudio.c
The main audio routines that start/stop/scrub the audio stream at
a certain frame position, provide the frame reference for the current
stream position, mix the audio, convert the audio, mixdown the audio
into a file.
./source/blender/makesdna/DNA_sound_types.h
Introduced new variables in the bSound struct to accomodate the sample
data after converted to the scene's global mixing format (stream, streamlen).
Also added a new flag SOUND_FLAGS_SEQUENCE that gets set if the Sound
belongs to a sequence strip.
./source/blender/makesdna/DNA_scene_types.h
Added AudioData struct, which holds scene-global audio settings.
./source/blender/makesdna/DNA_sequence_types.h
Added support for audio strips. Some variables to hold Panning/Attenuation
information, position information, reference to the sample, and some flags.
./source/blender/makesdna/DNA_userdef_types.h
./source/blender/src/usiblender.c
Added a "Mixing buffer size" userpref. Made the versions stuff initialize
it to a default for versions <2.28.
./source/blender/makesdna/DNA_space_types.h
./source/blender/src/filesel.c
Added a Cyan dot to .WAV files. Any other suggestions on a better color? :)
./source/blender/src/editsound.c
Changes (fixes) to the WAV file loader, re-enabled some gameengine code that
is needed for dealing with bSounds and bSamples.
./source/blender/src/editipo.c
./source/blender/src/drawseq.c
./source/blender/src/editnla.c
./source/blender/src/space.c
./source/blender/src/drawview.c
./source/blender/src/renderwin.c
./source/blender/src/headerbuttons.c
- Created two different wrappers for update_for_newframe(), one which scrubs
the audio, one which doesn't.
- Replaced some of the occurences of update_for_newframe() with
update_for_newframe_muted(), which doesn't scrub the audio.
- In drawview.c: Changed the synchronization scheme to get the current audio
position from the audio engine, and use that as a reference for setting
CFRA. Implements a/v sync and framedrop.
- In editipo.c: Changed handling of Fac IPOs to be usable for audio strips as
volume envelopes.
- In space.c: Added the mixing buffer size Userpref, enabled audio scrubbing
(update_for_newframe()) for moving the sequence editor framebar.
./source/blender/src/editseq.c
Added support for audio strips and a default directory for WAV files which
gets saved from the last Shift-A operation.
./source/blender/src/buttons.c
Added Scene-global audio sequencer settings in Sound buttons.
./source/blender/src/sequence.c
Various stuff that deals with handling audio strips differently than
usual strips.
2003-07-13 20:16:56 +00:00
|
|
|
LLIBS += $(NAN_SDLLIBS)
|