mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-01-12 10:54:48 +08:00
ITS#7832 - Fix Makefile so that it installs into DESTDIR
Tweak CRACKLIB linking so that it doesn't depend on gmake
This commit is contained in:
parent
cd7127309e
commit
136eedda8f
@ -1,15 +1,47 @@
|
||||
# contrib/slapd-modules/ppm/Makefile
|
||||
# Copyright 2014 David Coutadeur, Paris. All Rights Reserved.
|
||||
# $OpenLDAP$
|
||||
# Copyright 2014 David Coutadeur, Paris.
|
||||
# All rights reserved.
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted only as authorized by the OpenLDAP
|
||||
# Public License.
|
||||
#
|
||||
# A copy of this license is available in the file LICENSE in the
|
||||
# top-level directory of the distribution or, alternatively, at
|
||||
# <http://www.OpenLDAP.org/license.html>.
|
||||
|
||||
LDAP_SRC=../../..
|
||||
LDAP_BUILD=$(LDAP_SRC)
|
||||
LDAP_INC=-I$(LDAP_SRC)/include \
|
||||
-I$(LDAP_SRC)/servers/slapd
|
||||
LDAP_LIBS=-L$(LDAP_BUILD)/libraries/liblber/.libs \
|
||||
-L$(LDAP_BUILD)/libraries/libldap/.libs
|
||||
LDAP_LIB=-lldap -llber
|
||||
CRACK_LIB=-lcrack
|
||||
LDAP_SRC = ../../..
|
||||
LDAP_BUILD = $(LDAP_SRC)
|
||||
LDAP_INC = -I$(LDAP_BUILD)/include -I$(LDAP_SRC)/include -I$(LDAP_SRC)/servers/slapd
|
||||
LDAP_LIB = $(LDAP_BUILD)/libraries/liblber/liblber.la $(LDAP_BUILD)/libraries/libldap/libldap.la
|
||||
|
||||
LIBTOOL = $(LDAP_BUILD)/libtool
|
||||
INSTALL = /usr/bin/install
|
||||
CC = gcc
|
||||
OPT = -g -O2 -Wall -fpic
|
||||
|
||||
# To skip linking against CRACKLIB make CRACK=no
|
||||
CRACK=yes
|
||||
CRACKDEF_yes= -DCRACKLIB
|
||||
CRACKDEF_no=
|
||||
|
||||
CRACKLIB_yes= -lcrack
|
||||
CRACKLIB_no=
|
||||
|
||||
CRACKDEF=$(CRACKDEF_$(CRACK))
|
||||
CRACKLIB=$(CRACKLIB_$(CRACK))
|
||||
|
||||
DEFS = -DDEBUG $(CRACKDEF)
|
||||
# Define if using a config file:
|
||||
# -DCONFIG_FILE="\"$(etcdir)/$(EXAMPLE)\""
|
||||
|
||||
INCS = $(LDAP_INC)
|
||||
LIBS = $(LDAP_LIB)
|
||||
|
||||
PROGRAMS=ppm.so
|
||||
LTVER = 0:0:0
|
||||
|
||||
LDAP_LIBS = -L$(LDAP_BUILD)/libraries/liblber/.libs -L$(LDAP_BUILD)/libraries/libldap/.libs -lldap -llber
|
||||
|
||||
prefix=/usr/local
|
||||
exec_prefix=$(prefix)
|
||||
@ -22,40 +54,28 @@ mandir = $(exec_prefix)/share/man
|
||||
man5dir = $(mandir)/man5
|
||||
etcdir = $(exec_prefix)/etc$(ldap_subdir)
|
||||
|
||||
CC=gcc
|
||||
INSTALL = /usr/bin/install
|
||||
PROGRAMS=ppm.so
|
||||
TEST=ppm_test
|
||||
EXAMPLE=ppm.example
|
||||
TESTS=./unit_tests.sh
|
||||
OPT=-g -O2 -Wall -fpic \
|
||||
-DCONFIG_FILE="\"$(etcdir)/$(EXAMPLE)\"" \
|
||||
-DCRACKLIB \
|
||||
-DDEBUG
|
||||
|
||||
# don't link against cracklib if option -DCRACKLIB is not defined in OPT
|
||||
ifeq (,$(findstring CRACKLIB,$(OPT)))
|
||||
CRACK_LIB=
|
||||
endif
|
||||
|
||||
|
||||
|
||||
|
||||
all: ppm $(TEST)
|
||||
|
||||
$(TEST):
|
||||
$(CC) -g $(LDAP_INC) $(LDAP_LIBS) -Wl,-rpath=. -o $(TEST) ppm_test.c $(PROGRAMS) $(LDAP_LIB) $(CRACK_LIB)
|
||||
$(TEST): ppm
|
||||
$(CC) -g $(INCS) $(LDAP_LIBS) -Wl,-rpath=. -o $(TEST) ppm_test.c $(PROGRAMS) $(LDAP_LIBS) $(CRACKLIB)
|
||||
|
||||
ppm.o:
|
||||
$(CC) $(OPT) -c $(LDAP_INC) ppm.c
|
||||
$(CC) $(OPT) $(DEFS) -c $(INCS) ppm.c
|
||||
|
||||
ppm: ppm.o
|
||||
$(CC) $(LDAP_INC) -shared -o $(PROGRAMS) ppm.o $(CRACK_LIB)
|
||||
$(CC) $(INCS) -shared -o $(PROGRAMS) ppm.o $(CRACKLIB)
|
||||
|
||||
install: ppm
|
||||
$(INSTALL) -m 644 $(PROGRAMS) $(libdir)
|
||||
$(INSTALL) -m 755 $(TEST) $(libdir)
|
||||
$(INSTALL) -m 644 $(EXAMPLE) $(etcdir)/
|
||||
mkdir -p $(DESTDIR)$(moduledir)
|
||||
for p in $(PROGRAMS); do \
|
||||
$(LIBTOOL) --mode=install cp $$p $(DESTDIR)/$(moduledir) ; \
|
||||
done
|
||||
$(INSTALL) -m 644 $(EXAMPLE) $(DESTDIR)$(etcdir)/
|
||||
# $(INSTALL) -m 755 $(TEST) $(libdir)
|
||||
|
||||
.PHONY: clean
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user