1 include ../global_config
3 CFLAGS += -I../quicktime
5 # must only define here so applications using libpng don't see any of the XFT
6 # includes at all. They use a conflicting setjmp.
11 ifeq ($(OBJDIR), i686)
12 BOOTSTRAPFLAGS := -DBOOTSTRAP="\"objcopy -B i386 -I binary -O elf32-i386\""
15 ifeq ($(OBJDIR), x86_64)
16 BOOTSTRAPFLAGS := -DBOOTSTRAP="\"objcopy -B i386 -I binary -O elf64-x86-64\""
20 $(shell mkdir -p $(OBJDIR) )
24 $(OBJDIR)/bcbitmap.o \
25 $(OBJDIR)/bcbutton.o \
26 $(OBJDIR)/bccapture.o \
27 $(OBJDIR)/bccmodels.o \
28 $(OBJDIR)/bccounter.o \
29 $(OBJDIR)/bcclipboard.o \
30 $(OBJDIR)/bcdelete.o \
31 $(OBJDIR)/bcdialog.o \
32 $(OBJDIR)/bcdisplay.o \
33 $(OBJDIR)/bcdisplayinfo.o \
34 $(OBJDIR)/bcdragwindow.o \
35 $(OBJDIR)/bcfilebox.o \
36 $(OBJDIR)/bcfontentry.o \
37 $(OBJDIR)/bcwidgetgrid.o \
38 $(OBJDIR)/bclistbox.o \
39 $(OBJDIR)/bclistboxitem.o \
42 $(OBJDIR)/bcmenubar.o \
43 $(OBJDIR)/bcmenuitem.o \
44 $(OBJDIR)/bcmenupopup.o \
46 $(OBJDIR)/bcnewfolder.o \
48 $(OBJDIR)/bcpbuffer.o \
49 $(OBJDIR)/bcpixmap.o \
51 $(OBJDIR)/bcpopupmenu.o \
53 $(OBJDIR)/bcprogress.o \
54 $(OBJDIR)/bcprogressbox.o \
55 $(OBJDIR)/bcrecentlist.o \
56 $(OBJDIR)/bcrelocatablewidget.o \
57 $(OBJDIR)/bcrename.o \
58 $(OBJDIR)/bcrepeater.o \
59 $(OBJDIR)/bcresources.o \
60 $(OBJDIR)/bcscrollbar.o \
61 $(OBJDIR)/bcsignals.o \
62 $(OBJDIR)/bcslider.o \
63 $(OBJDIR)/bcsubwindow.o \
64 $(OBJDIR)/bcsynchronous.o \
65 $(OBJDIR)/bctextbox.o \
66 $(OBJDIR)/bctexture.o \
69 $(OBJDIR)/bctoggle.o \
70 $(OBJDIR)/bctumble.o \
71 $(OBJDIR)/bcwindow.o \
72 $(OBJDIR)/bcwindow3d.o \
73 $(OBJDIR)/bcwindowbase.o \
74 $(OBJDIR)/bcwindowdraw.o \
75 $(OBJDIR)/bcwindowevents.o \
77 $(OBJDIR)/condition.o \
78 $(OBJDIR)/errorbox.o \
79 $(OBJDIR)/filesystem.o \
81 $(OBJDIR)/rotateframe.o \
83 $(OBJDIR)/stringfile.o \
85 $(OBJDIR)/testobject.o \
89 $(OBJDIR)/vframe3d.o \
90 $(OBJDIR)/workarounds.o
92 OUTPUT = $(OBJDIR)/libguicast.a
96 ../quicktime/$(OBJDIR)/libquicktime.a \
106 ifeq ($(HAVE_XFT), y)
111 TESTLIBS += -lGL -lGLU
114 UTILS = $(OBJDIR)/bootstrap $(OBJDIR)/pngtoh $(OBJDIR)/pngtoraw
116 $(shell echo $(CFLAGS) > $(OBJDIR)/c_flags)
117 $(shell echo $(OBJS) > $(OBJDIR)/objs)
119 all: $(OUTPUT) $(UTILS)
121 $(OBJDIR)/bcxfer.o: bcxfer.C xfer.C xfer.h
122 $(CXX) `cat $(OBJDIR)/c_flags` -c $< -o $@
125 python < ./bccmdl.py > bcxfer.C
128 ar rcs $(OUTPUT) `cat $(OBJDIR)/objs`
131 gcc -O2 $(BOOTSTRAPFLAGS) bootstrap.c -o $(OBJDIR)/bootstrap
133 $(OBJDIR)/pngtoh: pngtoh.c
134 gcc -O2 pngtoh.c -o $(OBJDIR)/pngtoh
136 $(OBJDIR)/pngtoraw: pngtoraw.c
137 gcc -O2 pngtoraw.c -o $(OBJDIR)/pngtoraw -lpng -lz
139 replace: replace.o $(OUTPUT)
140 $(CC) -o replace replace.o $(OUTPUT) \
141 ../quicktime/i686/libquicktime.a \
142 $(LDFLAGS) $(XLIBS) -lpng
148 test: $(OBJDIR)/test.o $(STATICOUTPUT)
149 $(CC) -o $(OBJDIR)/test \
153 test2: $(OBJDIR)/test2.o $(STATICOUTPUT)
154 $(CC) -o $(OBJDIR)/test2 \
158 test3: $(OBJDIR)/test3.o $(STATICOUTPUT)
159 $(CC) -o $(OBJDIR)/test3 \
167 -o -name '*.o' -o -name '*.a' \
168 -o -name '*.so' \) -exec rm -f {} \;
170 $(LIBOBJS) $(OBJS) $(CUTOBJ):
173 $(CXX) `cat $(OBJDIR)/c_flags` -c $< -o $@
175 $(OBJDIR)/bootstrap: bootstrap.c
176 $(OBJDIR)/pngtoh: pngtoh.c
177 $(OBJDIR)/bccmodel_default.o: bccmodel_default.C bccmodel_permutation.h
180 @echo $($(subst val-,,$@))