1# The olsr.org Optimized Link-State Routing daemon (olsrd) 2# 3# (c) by the OLSR project 4# 5# See our Git repository to find out who worked on this file 6# and thus is a copyright holder on it. 7# 8# All rights reserved. 9# 10# Redistribution and use in source and binary forms, with or without 11# modification, are permitted provided that the following conditions 12# are met: 13# 14# * Redistributions of source code must retain the above copyright 15# notice, this list of conditions and the following disclaimer. 16# * Redistributions in binary form must reproduce the above copyright 17# notice, this list of conditions and the following disclaimer in 18# the documentation and/or other materials provided with the 19# distribution. 20# * Neither the name of olsr.org, olsrd nor the names of its 21# contributors may be used to endorse or promote products derived 22# from this software without specific prior written permission. 23# 24# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 25# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 26# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 27# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 28# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 29# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 30# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 31# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 32# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 33# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 34# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 35# POSSIBILITY OF SUCH DAMAGE. 36# 37# Visit http://www.olsr.org for more information. 38# 39# If you find this software useful feel free to make a donation 40# to the project. For more information see the website or contact 41# the copyright holders. 42# 43 44TOPDIR=../.. 45include $(TOPDIR)/Makefile.inc 46 47# delete the variables from above 48SRCS = 49HDRS = 50 51include local.mk 52 53OBJS += ../ipcalc.o ../builddata.o ../common/autobuf.o ../common/string_handling.o ../lock_file.o 54OBJS += ../superfasthash.o 55 56ifeq ($(OS), win32) 57 58LIBNAME ?= olsrd_cfgparser.dll 59BINNAME ?= olsrd_cfgparser.exe 60OBJS += ../win32/compat.o 61 62else 63 64LIBNAME ?= olsrd_cfgparser.so.0.1 65BINNAME ?= olsrd_cfgparser 66 67endif 68 69 70ifdef MAKEBIN 71 72CPPFLAGS += -DMAKEBIN 73NAME = $(BINNAME) 74 75else 76 77# build lib per default 78 79ifeq (${OS}, osx) 80LDFLAGS += -dynamiclib -single_module 81else 82LDFLAGS += -shared -Wl,-soname,$(LIBNAME) 83endif 84 85ifeq (${OS}, win32) 86LDFLAGS += -Wl,--out-implib=libolsrd_cfgparser.a -Wl,--export-all-symbols 87endif 88 89CPPFLAGS += -DMAKELIB 90NAME = $(LIBNAME) 91 92endif 93 94.PHONY: install clean uberclean 95 96# Targets 97default_target: $(NAME) 98 99$(NAME): $(OBJS) 100ifeq ($(VERBOSE),0) 101 @echo "[LD] $@" 102endif 103 $(MAKECMDPREFIX)$(CC) $(LDFLAGS) -o "$@" $^ $(LIBS) 104 105install: 106 install -D -m 755 $(NAME) $(LIBDIR)/$(NAME) 107 $(LDCONFIG) -n $(LIBDIR) 108 109clean: 110 rm -f *.[od~] $(LIBNAME) $(BINNAME) $(TMPFILES) 111 112uberclean: clean 113