export TOPDIR ?= $(CURDIR)/..
include $(TOPDIR)/global_config
-OBJS := \
+OVERLAYS := \
+ $(OBJDIR)/overlay_direct_rgb161616.o \
+ $(OBJDIR)/overlay_direct_rgb888.o \
+ $(OBJDIR)/overlay_direct_rgba16161616.o \
+ $(OBJDIR)/overlay_direct_rgba8888.o \
+ $(OBJDIR)/overlay_direct_rgba_float.o \
+ $(OBJDIR)/overlay_direct_rgb_float.o \
+ $(OBJDIR)/overlay_direct_yuv161616.o \
+ $(OBJDIR)/overlay_direct_yuv888.o \
+ $(OBJDIR)/overlay_direct_yuva16161616.o \
+ $(OBJDIR)/overlay_direct_yuva8888.o \
+ $(OBJDIR)/overlay_nearest_rgb161616.o \
+ $(OBJDIR)/overlay_nearest_rgb888.o \
+ $(OBJDIR)/overlay_nearest_rgba16161616.o \
+ $(OBJDIR)/overlay_nearest_rgba8888.o \
+ $(OBJDIR)/overlay_nearest_rgba_float.o \
+ $(OBJDIR)/overlay_nearest_rgb_float.o \
+ $(OBJDIR)/overlay_nearest_yuv161616.o \
+ $(OBJDIR)/overlay_nearest_yuv888.o \
+ $(OBJDIR)/overlay_nearest_yuva16161616.o \
+ $(OBJDIR)/overlay_nearest_yuva8888.o \
+ $(OBJDIR)/overlay_sample_rgb161616.o \
+ $(OBJDIR)/overlay_sample_rgb888.o \
+ $(OBJDIR)/overlay_sample_rgba16161616.o \
+ $(OBJDIR)/overlay_sample_rgba8888.o \
+ $(OBJDIR)/overlay_sample_rgba_float.o \
+ $(OBJDIR)/overlay_sample_rgb_float.o \
+ $(OBJDIR)/overlay_sample_yuv161616.o \
+ $(OBJDIR)/overlay_sample_yuv888.o \
+ $(OBJDIR)/overlay_sample_yuva16161616.o \
+ $(OBJDIR)/overlay_sample_yuva8888.o \
+
+OBJS := $(OVERLAYS) \
$(OBJDIR)/aattachmentpoint.o \
$(OBJDIR)/aautomation.o \
$(OBJDIR)/aboutprefs.o \
$(OBJDIR)/audioidevice.o \
$(OBJDIR)/audioodevice.o \
$(OBJDIR)/audiooss.o \
+ $(OBJDIR)/audiopulse.o \
$(OBJDIR)/audiov4l2mpeg.o \
$(OBJDIR)/autoconf.o \
$(OBJDIR)/automation.o \
$(OBJDIR)/bdcreate.o \
$(OBJDIR)/binfolder.o \
$(OBJDIR)/bitspopup.o \
+ $(OBJDIR)/boxblur.o \
$(OBJDIR)/brender.o \
$(OBJDIR)/browsebutton.o \
$(OBJDIR)/byteorderpopup.o \
$(OBJDIR)/clippopup.o \
$(OBJDIR)/colorpicker.o \
$(OBJDIR)/commonrender.o \
+ $(OBJDIR)/compressortools.o \
$(OBJDIR)/confirmquit.o \
$(OBJDIR)/confirmsave.o \
+ $(OBJDIR)/convert.o \
$(OBJDIR)/cpanel.o \
$(OBJDIR)/cplayback.o \
$(OBJDIR)/ctimebar.o \
$(OBJDIR)/edl.o \
$(OBJDIR)/edlsession.o \
$(OBJDIR)/effectlist.o \
+ $(OBJDIR)/eqcanvas.o \
$(OBJDIR)/exportedl.o \
$(OBJDIR)/fadeengine.o \
$(OBJDIR)/ffmpeg.o \
$(OBJDIR)/fileogg.o \
$(OBJDIR)/filepng.o \
$(OBJDIR)/fileppm.o \
+ $(OBJDIR)/fileref.o \
$(OBJDIR)/filescene.o \
$(OBJDIR)/filesndfile.o \
$(OBJDIR)/filetga.o \
$(OBJDIR)/menuveffects.o \
$(OBJDIR)/meterhistory.o \
$(OBJDIR)/meterpanel.o \
+ $(OBJDIR)/mixersalign.o \
$(OBJDIR)/module.o \
$(OBJDIR)/mtimebar.o \
$(OBJDIR)/mwindowedit.o \
$(OBJDIR)/mwindowmove.o \
$(OBJDIR)/mwindow.o \
$(OBJDIR)/new.o \
- $(OBJDIR)/overlaydirect.o \
$(OBJDIR)/overlayframe.o \
+ $(OBJDIR)/overlaydirect.o \
$(OBJDIR)/overlaynearest.o \
$(OBJDIR)/overlaysample.o \
$(OBJDIR)/packagedispatcher.o \
$(OBJDIR)/sharedlocation.o \
$(OBJDIR)/shbtnprefs.o \
$(OBJDIR)/shmemory.o \
+ $(OBJDIR)/shuttle.o \
$(OBJDIR)/sighandler.o \
$(OBJDIR)/signalstatus.o \
$(OBJDIR)/splashgui.o \
$(OBJDIR)/vwindowgui.o \
$(OBJDIR)/vwindow.o \
$(OBJDIR)/wavecache.o \
+ $(OBJDIR)/wintv.o \
$(OBJDIR)/wwindow.o \
+ $(OBJDIR)/x10tv.o \
$(OBJDIR)/zoombar.o \
$(OBJDIR)/zoompanel.o \
$(OBJDIR)/zwindow.o \
LIBS := $(LIBRARIES)
-ifneq ($(WANT_CIN_3RDPARTY),no)
-LIBS += $(libraries)
-else
-
-LIBS += -lpthread -lm -lbz2 -llzma -lz -lpng -luuid
-LIBS += -lX11 -lXau -lXdmcp -lXext -lXfixes -lXv -lXinerama
-LIBS += -lfontconfig -lfreetype
-LIBS += -lavcodec -lavdevice -lavfilter -lavformat -lavresample -lavutil
+ifeq ($(WANT_CIN_3RDPARTY),no)
+LIBS += -lavcodec -lavdevice -lavfilter -lavformat -lavutil
LIBS += -lswresample -lswscale
-LIBS += -lvpx -lwebp -lwebpmux
-
-LIBS += $(if $(filter fftw,$(static_pkgs)), -lfftw3)
-LIBS += $(if $(filter flac,$(static_pkgs)), -lFLAC)
-LIBS += $(if $(filter giflib,$(static_pkgs)), -lgif)
-LIBS += $(if $(filter lame,$(static_pkgs)), -lmp3lame)
-LIBS += $(if $(filter libjpeg,$(static_pkgs)), -ljpeg)
-LIBS += $(if $(filter openjpeg,$(static_pkgs)), -lopenjp2)
-LIBS += $(if $(filter libogg,$(static_pkgs)), -logg)
-LIBS += $(if $(filter libsndfile,$(static_pkgs)), -lsndfile)
-LIBS += $(if $(filter libtheora,$(static_pkgs)), -ltheoradec -ltheoraenc)
-LIBS += $(if $(filter libuuid,$(static_pkgs)), -luuid)
-LIBS += $(if $(filter libvorbis,$(static_pkgs)), -lvorbis -lvorbisenc -lvorbisfile)
-LIBS += $(if $(filter tiff,$(static_pkgs)), -ltiff)
-LIBS += $(if $(filter twolame,$(static_pkgs)), -ltwolame)
-LIBS += $(if $(filter x264,$(static_pkgs)), -lx264)
-LIBS += $(if $(filter x265,$(static_pkgs)), -lx265)
-LIBS += $(if $(filter libvpx,$(static_pkgs)), -lvpx)
-
-ifneq ($(WANT_GL),no)
-LIBS += -lGL -lGLU -lGLX
-endif
-ifneq ($(WANT_XFT),no)
-LIBS += -lXft
-endif
-ifneq ($(WANT_ALSA),no)
-LIBS += -lasound
-endif
-ifneq ($(WANT_OPENEXR),no)
-LIBS += -lIex -lIexMath -lIlmImf -lIlmImfUtil
-endif
-ifneq ($(WANT_DV),no)
-LIBS += -ldv
-endif
-ifneq ($(WANT_FIREWIRE),no)
-LIBS += -lavc1394 -lraw1394 -liec61883 -lrom1394
-endif
-ifneq ($(WANT_DVB),no)
-LIBS += -ldv
-endif
-ifneq ($(WANT_DL),no)
-LIBS += -ldl
-endif
-ifneq ($(WANT_LIBZMPEG),no)
-LIBS += -lmjpegutils
-endif
-ifneq ($(WANT_OPUS),no)
-LIBS += -lopus
-endif
-ifneq ($(WANT_NUMA),no)
-LIBS += -lnuma
-endif
-ifneq ($(WANT_LV2),no)
-LIBS += -llilv-0 -lsratom-0 -lserd-0 -lsord-0 -lsuil-0
-endif
+LIBS += -lintl -liconv
+LIBS += -lexecinfo
+
+LIBS += $(shared_libs)
+LIBS += $(system_libs)
+else
+LIBS += $(libraries)
endif
ifneq ($(WANT_COMMERCIAL),no)
endif
CFLAGS := \
+ -I/usr/local/include \
-I$(GUICAST) \
-I$(LIBZMPEG3) \
$(static_incs) \
LDFLAGS2 = -lcpml -lcxxstdma_rh60 -lcxxma_rh60 -lc -lots \
`expr /usr/lib/compaq/cxx-*/alpha-linux/`bin/crtend.o \
`expr /usr/lib/compaq/cxx-*/alpha-linux/`bin/crtn.o --no-demangle \
- --warn-once
+ --warn-once $(LDFLAGS)
LINKER = ld -o $(OUTPUT)
CFLAGS += -DUSE_ALPHA
else
LDFLAGS1 = -Wl,-export-dynamic -g
-LDFLAGS2 =
+LDFLAGS2 = $(LDFLAGS)
LINKER = $(CXX) -o $(OUTPUT)
endif
ifneq ($(WANT_COMMERCIAL),no)
$(CUTADS): $(CUTOBJS) $(CUTLIBS) $(LIBRARIES)
- @echo g++ -o $@ $(CUTOBJS)
- @g++ $(CFLAGS) -pthread -o $@ $(CUTOBJS) $(CUTLIBS) $(LIBS)
+ @echo $(CXX) -o $@ $(CUTOBJS)
+ @$(CXX) $(CFLAGS) -pthread -o $@ $(CUTOBJS) $(CUTLIBS) $(LIBS)
$(if $(findstring -g,$(CFLAGS)),objcopy --only-keep-debug $(CUTADS) $(CUTADS).debuginfo)
$(if $(findstring -ggdb,$(CFLAGS)),,strip $(CUTADS))
endif
$(BDWRITE): $(BDWOBJS) $(LIBRARIES)
- @echo g++ -o $@ $(BDWOBJS)
- @g++ $(CFLAGS) -pthread -o $@ $(BDWOBJS) $(LIBS)
+ @echo $(CXX) -o $@ $(BDWOBJS)
+ @$(CXX) $(CFLAGS) -pthread -o $@ $(BDWOBJS) $(LIBS)
$(if $(findstring -g,$(CFLAGS)),objcopy --only-keep-debug $(BDWRITE) $(BDWRITE).debuginfo)
$(if $(findstring -ggdb,$(CFLAGS)),,strip $(BDWRITE))
install: install-bdwrite
ydiff: ydiff.C $(LIBRARIES)
- @echo g++ -o $@ ydiff.C
- @g++ $(CFLAGS) ydiff.C -o $@ $(LIBS)
+ @echo $(CXX) -o $@ ydiff.C
+ @$(CXX) $(CFLAGS) ydiff.C -o $@ $(LIBS)
+
+shdmp: shdmp.C
+ @$(CXX) $(CFLAGS) shdmp.C -o $@
+shudmp: shudmp.C
+ @$(CXX) $(CFLAGS) shudmp.C -o $@ -lusb-1.0
clean:
rm -rf $(OBJDIR)
-
+ rm -f shuttle_keys.h
tags:
ctags -R -h default --langmap=c:+.inc . ../guicast/ ../libzmpeg3 ../plugins ../thirdparty/ffmpeg-*
+$(OBJDIR)/fileexr.o: BFLAGS:= -Wno-deprecated -std=c++11
+$(OBJDIR)/sha1.o: BFLAGS:= -O3
+$(OVERLAYS): BFLAGS:= -Ofast -g0
$(OBJDIR)/%.o: %.C
- $(CXX) `cat $(OBJDIR)/c_flags` -DMSGQUAL=$* -c $< -o $@
-
-
-$(OBJDIR)/fileexr.o: fileexr.C
- $(CXX) `cat $(OBJDIR)/c_flags` -Wno-deprecated -DMSGQUAL=$* -c $< -o $@
-
-$(OBJDIR)/sha1.o: sha1.C sha1.h
- $(CXX) `cat $(OBJDIR)/c_flags` -O3 -c $< -o $@
+ $(CXX) `cat $(OBJDIR)/c_flags` $(BFLAGS) -DMSGQUAL=$* -c $< -o $@
#lv2
ifneq ($(WANT_LV2),no)
-GTK2_INCS := `pkg-config --cflags gtk+-2.0`
+GTK2_INCS := `pkg-config --cflags gtk+-2.0` -Wno-deprecated-declarations
GTK2_LIBS := `pkg-config --libs gtk+-2.0`
$(OBJDIR)/pluginlv2ui.o: pluginlv2ui.C
install: install-lv2ui
endif
+ifneq ($(WANT_SHUTTLE),no)
+$(OBJDIR)/shuttle.o: shuttle.C shuttle_keys.h
+shuttle_keys.h: /usr/include/X11/keysymdef.h
+ sed -n < /usr/include/X11/keysymdef.h > shuttle_keys.h -f shuttle.sed
+endif
+
$(OBJDIR)/pluginlv2gui.o: pluginlv2gui.C
$(CXX) `cat $(OBJDIR)/c_flags` $(GTK2_INCS) -DMSGQUAL=$* -c $< -o $@