]> git.sesse.net Git - vlc/blob - mozilla/Makefile
0717c1141f0d9c49c9d456a23702b119dee79f2c
[vlc] / mozilla / Makefile
1 ###############################################################################
2 # vlc (VideoLAN Client) Mozilla plugin Makefile
3 # (c)2002 VideoLAN
4 ###############################################################################
5
6 #
7 # Source objects
8 #
9 CPP_SRC = vlcplugin.cpp vlcpeer.cpp vlcshell.cpp
10 C_SRC = npunix.c
11 CPP_OBJ = $(CPP_SRC:%.cpp=%.o)
12 C_OBJ = $(C_SRC:%.c=%.o)
13
14 PLUGIN_OBJ = libvlcplugin.so
15 COMPONENT = vlcintf.xpt
16
17 #
18 # Virtual targets
19 #
20 all: $(PLUGIN_OBJ)
21
22 distclean: clean
23
24 clean:
25         rm -f *.o *.so
26         rm -Rf .dep
27
28 install:
29         mkdir -p $(DESTDIR)$(libdir)/mozilla/plugins
30         $(INSTALL) -m 644 $(PLUGIN_OBJ) $(DESTDIR)$(libdir)/mozilla/plugins
31         mkdir -p $(DESTDIR)$(libdir)/mozilla/components
32         $(INSTALL) -m 644 $(COMPONENT) $(DESTDIR)$(libdir)/mozilla/components
33
34 uninstall:
35         rm -f $(DESTDIR)$(libdir)/mozilla/plugins/$(PLUGIN_OBJ)
36         -rmdir $(DESTDIR)$(libdir)/mozilla/plugins
37         rm -f $(DESTDIR)$(libdir)/mozilla/components/$(COMPONENT)
38         -rmdir $(DESTDIR)$(libdir)/mozilla/components
39         -rmdir $(DESTDIR)$(libdir)/mozilla
40
41 FORCE:
42
43 $(PLUGIN_OBJ): Makefile ../lib/libvlc.a $(BUILTIN_OBJ:%=../%) $(C_OBJ) $(CPP_OBJ) $(COMPONENT)
44         $(CC) -shared $(LDFLAGS) -L../lib $(mozilla_LDFLAGS) $(C_OBJ) $(CPP_OBJ) -lvlc $(BUILTIN_OBJ:%=../%) $(builtins_LDFLAGS) -o $@
45
46 $(CPP_OBJ): %.o: %.cpp vlcplugin.h vlcpeer.h vlcintf.h classinfo.h
47         $(CC) $(CFLAGS) -I.. -I../include $(mozilla_CFLAGS) -c $< -o $@
48
49 $(C_OBJ): %.o: %.c vlcplugin.h vlcpeer.h vlcintf.h classinfo.h
50         $(CC) $(CFLAGS) -I.. -I../include $(mozilla_CFLAGS) -c $< -o $@
51
52 vlcintf.xpt: vlcintf.idl
53         /usr/lib/mozilla/xpidl -I/usr/share/idl/mozilla -m typelib \
54                 -o vlcintf vlcintf.idl
55
56 vlcintf.h: vlcintf.idl
57         /usr/lib/mozilla/xpidl -I/usr/share/idl/mozilla -m header \
58                 -o vlcintf vlcintf.idl
59
60 ../%:
61         @cd .. && $(MAKE) $(@:../%=%)
62