Merged revisions 44055 via svnmerge from
[asterisk/asterisk.git] / pbx / Makefile
index 795911c..0f9c9d1 100644 (file)
@@ -5,68 +5,36 @@
 #
 # Copyright (C) 1999-2006, Digium, Inc.
 #
-# Mark Spencer <markster@digium.com>
-#
 # This program is free software, distributed under the terms of
 # the GNU General Public License
 #
 
-.PHONY: clean clean-depend all depend
-
-ifneq ($(wildcard ../menuselect.makeopts),)
-  include ../menuselect.makeopts
-endif
+-include ../menuselect.makeopts ../menuselect.makedeps
 
-SELECTED_MODS:=$(filter-out $(MENUSELECT_PBX),$(patsubst %.c,%,$(wildcard pbx_*.c)))
+C_MODS:=$(filter-out $(MENUSELECT_PBX),$(patsubst %.c,%,$(wildcard pbx_*.c)))
+CC_MODS:=$(filter-out $(MENUSELECT_PBX),$(patsubst %.cc,%,$(wildcard pbx_*.cc)))
 
-MOC=$(QTDIR)/bin/moc
-KDE_FLAGS=-I$(KDEDIR)/include -I$(KDEDIR)/include/kde -I$(QTDIR)/include
-KDE_LIBS=-L$(KDEDIR)/lib -L$(QTDIR)/lib -lqt -lkdecore -lkdeui
+LOADABLE_MODS:=$(C_MODS) $(CC_MODS)
 
-KDE_CONSOLE_OBJS=pbx_kdeconsole_main.o pbx_kdeconsole.o 
-
-MODS:=$(patsubst %,%.so,$(SELECTED_MODS))
+ifneq ($(findstring pbx,$(MENUSELECT_EMBED)),)
+  EMBEDDED_MODS:=$(LOADABLE_MODS)
+  LOADABLE_MODS:=
+endif
 
-all: $(MODS)
+all: _all
 
-clean-depend:
-       rm -f .depend
+include $(ASTTOPDIR)/Makefile.moddir_rules
 
-clean: clean-depend
-       rm -f *.so *.o
+clean::
        rm -f ael/*.o
 
-pbx_gtkconsole.o: pbx_gtkconsole.c
-       $(CC) $(CFLAGS) $(GTK_FLAGS) -c -o $@ $<
-
-pbx_gtkconsole.so: pbx_gtkconsole.o
-       $(CC) $(SOLINK) -o $@ $< $(GTK_LIBS)
-
-pbx_kdeconsole.o: pbx_kdeconsole.cc pbx_kdeconsole.moc
-       $(CXX) $(CFLAGS) $(KDE_FLAGS) -c -o $@ $<
-
-pbx_kdeconsole_main.o: pbx_kdeconsole_main.cc pbx_kdeconsole.h
-       $(CXX) $(CFLAGS) $(KDE_FLAGS) -c -o $@ $<
-
-pbx_kdeconsole.so: $(KDE_CONSOLE_OBJS)
-       $(CC) $(SOLINK) -o $@ $(KDE_CONSOLE_OBJS) $(KDE_LIBS)
-
-pbx_dundi.so: pbx_dundi.o dundi-parser.o
-       $(CC) $(SOLINK) -o $@ $< dundi-parser.o $(Z_LIB)
+ael/ael_lex.o: ael/ael_lex.c ../include/asterisk/ael_structs.h ael/ael.tab.h
+ael/ael_lex.o: ASTCFLAGS+=-I.
 
-pbx_dundi.o: pbx_dundi.c
-       $(CC) -c -o $@ $(CFLAGS) $(Z_INCLUDE) $<
+ael/ael.tab.o: ael/ael.tab.c ael/ael.tab.h ../include/asterisk/ael_structs.h
+ael/ael.tab.o: ASTCFLAGS+=-I.
 
-pbx_ael.o: ael/aelflex.o ael/aelbison.o ../include/asterisk/ael_structs.h
-
-pbx_ael.so: pbx_ael.o ael/aelbison.o ael/aelflex.o
-       $(CC) $(SOLINK) -o $@ pbx_ael.o ael/aelbison.o ael/aelflex.o
-
-ael/aelflex.o: ael/ael_lex.c ../include/asterisk/ael_structs.h ael/ael.tab.h
-       $(CC) $(CFLAGS) -I. -c -o ael/aelflex.o ael/ael_lex.c
-
-ael/aelbison.o: ael/ael.tab.c ael/ael.tab.h ../include/asterisk/ael_structs.h
-       $(CC) $(CFLAGS) -I. -c -o ael/aelbison.o ael/ael.tab.c
+$(if $(filter pbx_ael,$(EMBEDDED_MODS)),modules.link,pbx_ael.so): ael/ael.tab.o ael/ael_lex.o
 
 ael/ael_lex.c:
        (cd ael; flex ael.flex; sed -i -e "/begin standard C headers/i#include \"asterisk.h\"" ael_lex.c)
@@ -74,22 +42,7 @@ ael/ael_lex.c:
 ael/ael.tab.c ael/ael.tab.h:
        (cd ael; bison -v -d ael.y)
 
-%.moc : %.h
-       $(MOC) $< -o $@
-
-%.so : %.o
-       $(CC) $(SOLINK) -o $@ $<
-
-ifneq ($(wildcard .depend),)
-  include .depend
-endif
-
-install: all
-       for x in $(MODS); do $(INSTALL) -m 755 $$x $(DESTDIR)$(MODULES_DIR) ; done
-
-uninstall:
-
-depend: .depend
+dundi-parser.o: dundi-parser.h
+dundi-parser.o: ASTCFLAGS+=-I.
 
-.depend:
-       ../build_tools/mkdep $(CFLAGS) `ls *.c`
+$(if $(filter pbx_dundi,$(EMBEDDED_MODS)),modules.link,pbx_dundi.so): dundi-parser.o