Merge CV, ver=5.1; ops/methods from HV, and interface from CV where possible
[goodguy/history.git] / cinelerra-5.1 / build / Makefile.cinelerra
1
2 include global_config
3
4 .NOTPARALLEL:
5
6 ifeq (,$(filter -j,$(MAKEFLAGS)))
7 cpus:=$(shell grep -c "^proc" /proc/cpuinfo)
8 jobs:=-j$(shell echo $$(($(cpus) + $(cpus)/2 +2)))
9 endif
10
11 DIRS := \
12         thirdparty \
13         libzmpeg3 \
14         mpeg2enc \
15         mplexlo \
16         db \
17         guicast \
18         cinelerra \
19         plugins \
20         doc \
21         po
22
23 all: $(OBJDIR)/soundtest
24         mkdir -p bin $(PLUGIN_DIR)
25         @ for i in $(DIRS) ; do \
26                  $(MAKE) $(jobs) -C $$i ; \
27         done
28
29 $(OBJDIR)/soundtest: $(OBJDIR)/soundtest.o
30         $(CC) -o $(OBJDIR)/soundtest $(OBJDIR)/soundtest.o -lm
31
32 clean:
33         rm -rf bin
34         @ for i in $(DIRS) ; do \
35                  $(MAKE) -C $$i clean ; \
36         done
37
38 dist-clean:
39         find \( -name '*.lo' \
40                 -o -name '*.o' \
41                 -o -name '*.la' \
42                 -o -name '*.a' \
43                 -o -name '*.plugin' \
44                 -o -name '*.so' \) -exec rm -f {} \; -prune
45         find \( -name $(OBJDIR) \) -exec rm -rf {} \; -prune
46 #       find \( -name .deps \) -exec rm -rf {} \; -prune
47         find \( -name .libs \) -exec rm -rf {} \; -prune
48
49 MJPEGDIR := $(shell expr $(THIRDPARTY)/mjpegtools* )
50 MPEG2ENC := bin/mpeg2enc
51 MPEG2PLEX := bin/mplex
52 HVEG2ENC := bin/hveg2enc
53
54 $(MPEG2ENC):
55         cp -a $(MJPEGDIR)/mpeg2enc/mpeg2enc $@
56
57 $(MPEG2PLEX):
58         cp -a $(MJPEGDIR)/mplex/mplex $@
59
60 $(HVEG2ENC):
61         cp -a $(TOPDIR)/mpeg2enc/$(OBJDIR)/hveg2enc $@
62
63 install:        $(MPEG2PLEX) $(MPEG2ENC) $(HVEG2ENC)
64         $(MAKE) -C plugins install
65         DST=../bin $(MAKE) -C libzmpeg3 install
66         $(MAKE) -C po install
67         $(MAKE) -C doc install
68         cp COPYING README bin
69 ifeq ($(STATIC_LIBRARIES), y)
70         if [ -d thirdparty/festival ]; then \
71                 cp thirdparty/festival/src/main/festival bin ; \
72                 cp -a thirdparty/festival/lib bin/ ; \
73         fi
74 endif
75         cp -a models bin
76         cd bin && find -name '.svn' -exec rm -r {} \; -prune
77         rm -f bin/cutads bin/bdwrite bin/manual.pdf
78         cp -a cinelerra/$(OBJDIR)/cutads cinelerra/$(OBJDIR)/bdwrite bin/.
79         cp -a doc/manual.pdf bin/.
80         rm -f bin/new_db
81         $(MAKE) -C db/utils new_db
82         cp -a db/utils/new_db bin/.
83         cp -a ffmpeg msg.txt bin/.
84         @if [ ! -f "/cinelerra/media.db" ]; then \
85                 echo "need to run:"; \
86                 echo "  mkdir /cinelerra"; \
87                 echo "  new_db /cinelerra/media.db"; \
88         fi
89 COMPILE = $(GCC) -c $(CFLAGS) $? -o $*.o
90
91 $(OBJDIR)/soundtest.o: soundtest.c
92         $(COMPILE)
93