mirror of https://github.com/asterisk/asterisk
				
				
				
			
			You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							138 lines
						
					
					
						
							3.3 KiB
						
					
					
				
			
		
		
	
	
							138 lines
						
					
					
						
							3.3 KiB
						
					
					
				| #
 | |
| # Asterisk -- A telephony toolkit for Linux.
 | |
| #
 | |
| # Makefile for Menuselect
 | |
| #
 | |
| # Copyright (C) 2005-2008, Digium, Inc.
 | |
| #
 | |
| # Russell Bryant <russell@digium.com>
 | |
| #
 | |
| # This program is free software, distributed under the terms of
 | |
| # the GNU General Public License
 | |
| #
 | |
| 
 | |
| # even though we could use '-include makeopts' here, use a wildcard
 | |
| # lookup anyway, so that make won't try to build makeopts if it doesn't
 | |
| # exist (other rules will force it to be built if needed)
 | |
| ifneq ($(wildcard makeopts),)
 | |
|   include makeopts
 | |
| endif
 | |
| 
 | |
| .PHONY: clean dist-clean distclean test ntest ctest gtest
 | |
| 
 | |
| # Basic set of sources and flags/libraries/includes
 | |
| OBJS:=menuselect.o strcompat.o
 | |
| # Adding -Wdeprecated-declarations to deal with internal deprecation warnings
 | |
| # from gtk+ for GTypeDebugFlags and GTimeVal deprecated in later glib versions
 | |
| CFLAGS+=-g -D_GNU_SOURCE -Wall -Wno-deprecated-declarations
 | |
| 
 | |
| ifneq ($(findstring dragonfly,$(OSARCH)),)
 | |
|   CFLAGS += -isystem /usr/local/include
 | |
| else ifneq ($(findstring netbsd,$(OSARCH)),)
 | |
|   CFLAGS += -isystem /usr/pkg/include
 | |
| else ifneq ($(findstring bsd,$(OSARCH)),)
 | |
|   CFLAGS += -isystem /usr/local/include
 | |
| endif
 | |
| 
 | |
| ifeq ($(MENUSELECT_DEBUG),yes)
 | |
|   CFLAGS += -DMENUSELECT_DEBUG
 | |
| endif
 | |
| 
 | |
| ifdef NCURSES_LIB
 | |
|   C_OBJS += menuselect_curses.o
 | |
|   C_LIBS += $(NCURSES_LIB) $(TINFO_LIB)
 | |
|   C_INCLUDE += $(NCURSES_INCLUDE) $(TINFO_INCLUDE)
 | |
|   ALL_TGTS += cmenuselect
 | |
|   CFLAGS += -DHAVE_NCURSES
 | |
|   ifeq ($(HAVE_NCURSES_SUBDIR),yes)
 | |
|     CFLAGS += -DHAVE_NCURSES_SUBDIR
 | |
|   endif
 | |
| else
 | |
|   ifdef CURSES_LIB
 | |
|     C_OBJS += menuselect_curses.o
 | |
|     C_LIBS += $(CURSES_LIB) $(TINFO_LIB)
 | |
|     C_INCLUDE += $(CURSES_INCLUDE) $(TINFO_INCLUDE)
 | |
|     ALL_TGTS += cmenuselect
 | |
|   endif
 | |
| endif
 | |
| 
 | |
| ifdef GTK2_LIB
 | |
|   G_OBJS += menuselect_gtk.o
 | |
|   G_LIBS += $(GTK2_LIB)
 | |
|   G_INCLUDE += $(GTK2_INCLUDE)
 | |
|   ALL_TGTS += gmenuselect
 | |
| endif
 | |
| 
 | |
| ifdef NEWT_LIB
 | |
|   N_OBJS += menuselect_newt.o
 | |
|   N_LIBS += $(NEWT_LIB)
 | |
|   N_INCLUDE += $(NEWT_INCLUDE)
 | |
|   ALL_TGTS += nmenuselect
 | |
| endif
 | |
| 
 | |
| M_OBJS += menuselect_stub.o
 | |
| M_LIBS += $(LIBXML2_LIB)
 | |
| ALL_TGTS += menuselect
 | |
| 
 | |
| all: $(ALL_TGTS)
 | |
| 
 | |
| $(OBJS) $(C_OBJS) $(N_OBJS) $(G_OBJS) $(M_OBJS): autoconfig.h menuselect.h
 | |
| 
 | |
| makeopts: configure
 | |
| 	@./configure $(CONFIGURE_SILENT)
 | |
| 	@echo "****"
 | |
| 	@echo "**** The configure script was just executed, so 'make' needs to be"
 | |
| 	@echo "**** restarted."
 | |
| 	@echo "****"
 | |
| 	@exit 1
 | |
| 
 | |
| ifdef C_OBJS
 | |
| menuselect_curses.o: CFLAGS+=$(C_INCLUDE)
 | |
| cmenuselect: $(OBJS) $(C_OBJS)
 | |
| 	$(CC) $(LDFLAGS) -o $@ $^ $(C_LIBS) $(LIBXML2_LIB)
 | |
| else
 | |
| cmenuselect:
 | |
| endif
 | |
| 
 | |
| ifdef G_OBJS
 | |
| menuselect_gtk.o: CFLAGS+=$(G_INCLUDE)
 | |
| gmenuselect: $(OBJS) $(G_OBJS)
 | |
| 	$(CC) $(LDFLAGS) -o $@ $^ $(G_LIBS) $(LIBXML2_LIB)
 | |
| else
 | |
| gmenuselect:
 | |
| endif
 | |
| 
 | |
| ifdef N_OBJS
 | |
| menuselect_newt.o: CFLAGS+=$(N_INCLUDE)
 | |
| nmenuselect: $(OBJS) $(N_OBJS)
 | |
| 	$(CC) $(LDFLAGS) -o $@ $^ $(N_LIBS) $(LIBXML2_LIB)
 | |
| else
 | |
| nmenuselect:
 | |
| endif
 | |
| 
 | |
| menuselect.o: CFLAGS+=$(LIBXML2_INCLUDE)
 | |
| 
 | |
| menuselect: $(OBJS) $(M_OBJS)
 | |
| 	$(CC) $(LDFLAGS) -o $@ $^ $(M_LIBS)
 | |
| 
 | |
| test: menuselect
 | |
| 	(cd test; ../$< menuselect.makeopts)
 | |
| 
 | |
| ctest: cmenuselect
 | |
| 	(cd test; ../$< menuselect.makeopts)
 | |
| 
 | |
| gtest: gmenuselect
 | |
| 	(cd test; ../$< menuselect.makeopts)
 | |
| 
 | |
| ntest: nmenuselect
 | |
| 	(cd test; ../$< menuselect.makeopts)
 | |
| 
 | |
| clean:
 | |
| 	rm -f menuselect cmenuselect gmenuselect nmenuselect $(OBJS) $(M_OBJS) $(C_OBJS) $(G_OBJS) $(N_OBJS)
 | |
| 
 | |
| dist-clean: distclean
 | |
| 
 | |
| distclean: clean
 | |
| 	rm -f autoconfig.h config.status config.log makeopts
 | |
| 	rm -rf autom4te.cache
 |