folder icon move segv, resources drag scroll bug, memory leaks, global msgqual, po...
[goodguy/history.git] / cinelerra-5.1 / plugin_config
1
2 CFLAGS += -I../ -I$(CINELERRA) -I$(GUICAST) -I../colors -fPIC
3
4 CFLAGS += $(static_incs)
5 LFLAGS += $(static_libs)
6 LDLINKER ?= g++ -shared
7 $(shell mkdir -p $(OBJDIR))
8
9 PLUGIN_DIR := $(BINDIR)/plugins
10 OUTPUT_DIR = $(PLUGIN_DIR)/$($(PLUGIN))
11 PLUGIN_PNGS = $(wildcard picon_*.png)
12 OUTPUT_PNGS = $(foreach png,$(PLUGIN_PNGS), $(PLUGIN_DIR)/$(basename $(png))/$(PLUGIN).png)
13 OUTPUT = $(OUTPUT_DIR)/$(PLUGIN).plugin
14 OUTPUT_G = $(OBJDIR)/$(PLUGIN).debuginfo
15
16 $(shell echo $(CFLAGS) > $(OBJDIR)/c_flags)
17 $(shell echo $(LFLAGS) > $(OBJDIR)/l_flags)
18
19 ifeq ($(OUTPUT_THEME),)
20
21 $(OUTPUT): $(OBJS) $(OUTPUT_DIR) $(OUTPUT_PNGS) $(OUTPUT_BINS)
22         $(LDLINKER) -o $(OUTPUT) $(OBJS) $(OUTPUT_BINS) `cat $(OBJDIR)/l_flags`
23         $(if $(findstring -g,$(CFLAGS)),objcopy --only-keep-debug $(OUTPUT) $(OUTPUT_G))
24         $(if $(findstring -ggdb,$(CFLAGS)),,strip $(OUTPUT))
25
26 else
27
28 THEME_DATA = $(OBJDIR)/$(PLUGIN)_data.o
29
30 $(OUTPUT_THEME): $(OBJS) $(OUTPUT_DIR) $(THEME_DATA)
31         $(LDLINKER) -o $(OUTPUT_THEME) $(OBJS) $(THEME_DATA)
32         $(if $(findstring -g,$(CFLAGS)),objcopy --only-keep-debug $(OUTPUT_THEME) $(OUTPUT_G))
33         $(if $(findstring -ggdb,$(CFLAGS)),,strip $(OUTPUT_THEME))
34
35 $(THEME_DATA):
36         cd $(OBJDIR) && \
37         ../../../guicast/$(OBJDIR)/bootstrap $(notdir $(THEME_DATA)) ../data/*.png
38
39 endif
40
41 $(OUTPUT_DIR):
42         mkdir -p $@
43
44 $(PLUGIN_DIR)/%/$(PLUGIN).png:  %.png
45         $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
46         cp -a $< $@
47
48 clean::
49         rm -f $(OUTPUT)
50         rm -rf $(OBJDIR)
51
52 wc:
53         cat *.C *.h | wc
54
55 $(OBJDIR)/%.o:          %.C
56         $(CXX) `cat $(OBJDIR)/c_flags` '-DMSGQUAL="$*"' -c $< -o $@
57
58 val-%:
59         @echo $($(subst val-,,$@))
60