| 
									
										
										
										
											2014-07-17 18:42:43 +00:00
										 |  |  | #
 | 
					
						
							|  |  |  | # Asterisk -- A telephony toolkit for Linux.
 | 
					
						
							| 
									
										
										
										
											2017-12-22 09:23:22 -05:00
										 |  |  | #
 | 
					
						
							| 
									
										
										
										
											2014-07-17 18:42:43 +00:00
										 |  |  | # 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 | 
					
						
							|  |  |  | CFLAGS+=-g -D_GNU_SOURCE -Wall | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-20 12:40:21 +02:00
										 |  |  | 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 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-07-17 18:42:43 +00:00
										 |  |  | ifeq ($(MENUSELECT_DEBUG),yes) | 
					
						
							|  |  |  |   CFLAGS += -DMENUSELECT_DEBUG | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ifdef NCURSES_LIB | 
					
						
							|  |  |  |   C_OBJS += menuselect_curses.o | 
					
						
							| 
									
										
										
										
											2019-08-09 06:51:28 -04:00
										 |  |  |   C_LIBS += $(NCURSES_LIB) $(TINFO_LIB) | 
					
						
							|  |  |  |   C_INCLUDE += $(NCURSES_INCLUDE) $(TINFO_INCLUDE) | 
					
						
							| 
									
										
										
										
											2014-07-17 18:42:43 +00:00
										 |  |  |   ALL_TGTS += cmenuselect | 
					
						
							| 
									
										
										
										
											2018-07-28 18:49:17 +02:00
										 |  |  |   CFLAGS += -DHAVE_NCURSES | 
					
						
							|  |  |  |   ifeq ($(HAVE_NCURSES_SUBDIR),yes) | 
					
						
							|  |  |  |     CFLAGS += -DHAVE_NCURSES_SUBDIR | 
					
						
							|  |  |  |   endif | 
					
						
							| 
									
										
										
										
											2014-07-17 18:42:43 +00:00
										 |  |  | else | 
					
						
							|  |  |  |   ifdef CURSES_LIB | 
					
						
							|  |  |  |     C_OBJS += menuselect_curses.o | 
					
						
							| 
									
										
										
										
											2019-08-09 06:51:28 -04:00
										 |  |  |     C_LIBS += $(CURSES_LIB) $(TINFO_LIB) | 
					
						
							|  |  |  |     C_INCLUDE += $(CURSES_INCLUDE) $(TINFO_INCLUDE) | 
					
						
							| 
									
										
										
										
											2014-07-17 18:42:43 +00:00
										 |  |  |     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 | 
					
						
							| 
									
										
										
										
											2014-07-17 19:02:22 +00:00
										 |  |  | M_LIBS += $(LIBXML2_LIB) | 
					
						
							| 
									
										
										
										
											2014-07-17 18:42:43 +00:00
										 |  |  | ALL_TGTS += menuselect | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | all: $(ALL_TGTS) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | $(OBJS) $(C_OBJS) $(N_OBJS) $(G_OBJS) $(M_OBJS): autoconfig.h menuselect.h | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-12-27 20:27:18 -05:00
										 |  |  | makeopts: configure | 
					
						
							| 
									
										
										
										
											2014-07-17 18:42:43 +00:00
										 |  |  | 	@./configure $(CONFIGURE_SILENT) | 
					
						
							| 
									
										
										
										
											2014-07-17 19:02:22 +00:00
										 |  |  | 	@echo "****" | 
					
						
							|  |  |  | 	@echo "**** The configure script was just executed, so 'make' needs to be" | 
					
						
							|  |  |  | 	@echo "**** restarted." | 
					
						
							|  |  |  | 	@echo "****" | 
					
						
							|  |  |  | 	@exit 1 | 
					
						
							| 
									
										
										
										
											2014-07-17 18:42:43 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | ifdef C_OBJS | 
					
						
							|  |  |  | menuselect_curses.o: CFLAGS+=$(C_INCLUDE) | 
					
						
							|  |  |  | cmenuselect: $(OBJS) $(C_OBJS) | 
					
						
							| 
									
										
										
										
											2014-07-17 19:02:22 +00:00
										 |  |  | 	$(CC) $(LDFLAGS) -o $@ $^ $(C_LIBS) $(LIBXML2_LIB) | 
					
						
							| 
									
										
										
										
											2014-07-17 18:42:43 +00:00
										 |  |  | else | 
					
						
							|  |  |  | cmenuselect: | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ifdef G_OBJS | 
					
						
							|  |  |  | menuselect_gtk.o: CFLAGS+=$(G_INCLUDE) | 
					
						
							|  |  |  | gmenuselect: $(OBJS) $(G_OBJS) | 
					
						
							| 
									
										
										
										
											2014-07-17 19:02:22 +00:00
										 |  |  | 	$(CC) $(LDFLAGS) -o $@ $^ $(G_LIBS) $(LIBXML2_LIB) | 
					
						
							| 
									
										
										
										
											2014-07-17 18:42:43 +00:00
										 |  |  | else | 
					
						
							|  |  |  | gmenuselect: | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ifdef N_OBJS | 
					
						
							|  |  |  | menuselect_newt.o: CFLAGS+=$(N_INCLUDE) | 
					
						
							|  |  |  | nmenuselect: $(OBJS) $(N_OBJS) | 
					
						
							| 
									
										
										
										
											2014-07-17 19:02:22 +00:00
										 |  |  | 	$(CC) $(LDFLAGS) -o $@ $^ $(N_LIBS) $(LIBXML2_LIB) | 
					
						
							| 
									
										
										
										
											2014-07-17 18:42:43 +00:00
										 |  |  | else | 
					
						
							|  |  |  | nmenuselect: | 
					
						
							|  |  |  | endif | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-07-17 19:02:22 +00:00
										 |  |  | menuselect.o: CFLAGS+=$(LIBXML2_INCLUDE) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2014-07-17 18:42:43 +00:00
										 |  |  | 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 |