makefile.mk (d0556839) makefile.mk (10e20387)
1#**************************************************************
2#
3# Licensed to the Apache Software Foundation (ASF) under one
4# or more contributor license agreements. See the NOTICE file
5# distributed with this work for additional information
6# regarding copyright ownership. The ASF licenses this file
7# to you under the Apache License, Version 2.0 (the
8# "License"); you may not use this file except in compliance

--- 21 unchanged lines hidden (view full) ---

30.INCLUDE : serf_version.mk
31
32# --- Files --------------------------------------------------------
33
34# Assemble the full version number from the parts defined in serf_version.mk
35LIBSERFVERSION=$(SERF_MAJOR).$(SERF_MINOR).$(SERF_MICRO)
36
37TARFILE_NAME=$(PRJNAME)-$(LIBSERFVERSION)
1#**************************************************************
2#
3# Licensed to the Apache Software Foundation (ASF) under one
4# or more contributor license agreements. See the NOTICE file
5# distributed with this work for additional information
6# regarding copyright ownership. The ASF licenses this file
7# to you under the Apache License, Version 2.0 (the
8# "License"); you may not use this file except in compliance

--- 21 unchanged lines hidden (view full) ---

30.INCLUDE : serf_version.mk
31
32# --- Files --------------------------------------------------------
33
34# Assemble the full version number from the parts defined in serf_version.mk
35LIBSERFVERSION=$(SERF_MAJOR).$(SERF_MINOR).$(SERF_MICRO)
36
37TARFILE_NAME=$(PRJNAME)-$(LIBSERFVERSION)
38TARFILE_MD5=3b179ed18f65c43141528aa6d2440db4
38# This is the SHA1 checksum, not MD5 but tg_ext.mk does not now about this and,
39# thankfully, does not care.
40TARFILE_MD5=231af70b7567a753b49df4216743010c193884b7
39
41
40# Apply patches that provide callbacks for ssl certificate verification with the
41# whole certificate chain (issue68.patch). The patch is taken from serf's
42# issue 68 (http://code.google.com/p/serf/issues/detail?id=68).
43# This patch needs some minor fixes (issue68b.patch) for proper initialization of
44# some callbacks and export of new functions.
45PATCH_FILES=$(TARFILE_NAME).issue68.patch $(TARFILE_NAME).issue68b.patch
42PATCH_FILES=
46
43
47# disable default used Transfer-Encoding = chunked for sending requests.
48PATCH_FILES+=$(TARFILE_NAME).nochunkedtransferencoding.patch
49
50.IF "$(OS)"=="WNT"
51
44.IF "$(OS)"=="WNT"
45
52ADDITIONAL_FILES=Makefile Module_serf.mk Library_serf.mk Package_inc.mk
53
54PATCH_FILES+=$(TARFILE_NAME).makewin32.patch
55
56CONFIGURE_DIR=
57CONFIGURE_ACTION=
58CONFIGURE_FLAGS=
59
46CONFIGURE_DIR=
47CONFIGURE_ACTION=
48CONFIGURE_FLAGS=
49
60BUILD_DIR=$(CONFIGURE_DIR)
50BUILD_DIR=
61BUILD_ACTION=$(GNUMAKE)
51BUILD_ACTION=$(GNUMAKE)
62BUILD_FLAGS+= -j$(EXTMAXPROCESS)
52BUILD_FLAGS+= -f ../../../../win/Makefile -j$(EXTMAXPROCESS)
63
64.ELIF "$(GUI)" == "OS2"
65
66@all:
67 @echo "using system serf. nothing do do."
68
69.ELSE
70
71.IF "$(OS)"=="MACOSX" || "$(OS)"=="FREEBSD" || "$(OS)"=="LINUX"
72# Do not link against expat. It is not necessary (apr-util is already linked against it)
73# and does not work (we use a different expat library schema.)
53
54.ELIF "$(GUI)" == "OS2"
55
56@all:
57 @echo "using system serf. nothing do do."
58
59.ELSE
60
61.IF "$(OS)"=="MACOSX" || "$(OS)"=="FREEBSD" || "$(OS)"=="LINUX"
62# Do not link against expat. It is not necessary (apr-util is already linked against it)
63# and does not work (we use a different expat library schema.)
74PATCH_FILES+=$(TARFILE_NAME).mac.patch
64#PATCH_FILES+=$(TARFILE_NAME).mac.patch
75.ENDIF
76
77.IF "$(OS)"=="LINUX"
78# Add -ldl as last library so that the linker has no trouble resolving dependencies.
65.ENDIF
66
67.IF "$(OS)"=="LINUX"
68# Add -ldl as last library so that the linker has no trouble resolving dependencies.
79PATCH_FILES+=$(TARFILE_NAME).ldl.patch
69#PATCH_FILES+=$(TARFILE_NAME).ldl.patch
80.ENDIF
81
82CONFIGURE_DIR=
83CONFIGURE_ACTION=autoconf && .$/configure
84
70.ENDIF
71
72CONFIGURE_DIR=
73CONFIGURE_ACTION=autoconf && .$/configure
74
85.IF "$(OS)"=="MACOSX" || "$(OS)"=="LINUX"
86.IF "$(OS)"=="LINUX"
87.IF "$(SYSTEM_OPENSSL)"=="YES"
88CDEFS+=$(OPENSSL_CFLAGS)
89.ELSE
90OPENSSLINCDIR=external
91CDEFS+=-I$(SOLARINCDIR)$/$(OPENSSLINCDIR)
92.ENDIF
93.ENDIF
75.IF "$(OS)"=="LINUX"
76.IF "$(SYSTEM_OPENSSL)"=="YES"
77CDEFS+=$(OPENSSL_CFLAGS)
78.ELSE
79OPENSSLINCDIR=external
80CDEFS+=-I$(SOLARINCDIR)$/$(OPENSSLINCDIR)
81.ENDIF
82.ENDIF
83
94# On Linux/Mac we need the content of CDEFS in CFLAGS so that the ssl headers are searched for
84# On Linux/Mac we need the content of CDEFS in CFLAGS so that the ssl headers are searched for
85.IF "$(OS)"=="MACOSX" || "$(OS)"=="LINUX"
95# in a directory that corresponds to the directory that is searched for the ssl library.
96CONFIGURE_FLAGS='CFLAGS=$(CDEFS)'
97.ENDIF
98
99BUILD_DIR=$(CONFIGURE_DIR)
100BUILD_ACTION=$(GNUMAKE)
101BUILD_FLAGS+= -j$(EXTMAXPROCESS)
102
86# in a directory that corresponds to the directory that is searched for the ssl library.
87CONFIGURE_FLAGS='CFLAGS=$(CDEFS)'
88.ENDIF
89
90BUILD_DIR=$(CONFIGURE_DIR)
91BUILD_ACTION=$(GNUMAKE)
92BUILD_FLAGS+= -j$(EXTMAXPROCESS)
93
94.IF "$(OS)"=="MACOSX"
95# Serf names its library only with the major number.
96# We are using minor and micro as well. Fix that here
97# by creating a copy with the right name.
98SERF_ORIGINAL_LIB=.libs/libserf-$(SERF_MAJOR).0.0.0.dylib
99SERF_FIXED_LIB=.libs/libserf-$(LIBSERFVERSION).0.dylib
100INSTALL_ACTION=if [ -f "$(SERF_ORIGINAL_LIB)" -a ! -f "$(SERF_FIXED_LIB)" ]; then cp $(SERF_ORGINAL_LIB) $(SERF_FIXED_LIB); fi
101.ENDIF
102
103OUT2INC+=serf*.h
104OUT2INC_SUBDIR=serf
105
106.IF "$(OS)"=="MACOSX"
103OUT2INC+=serf*.h
104OUT2INC_SUBDIR=serf
105
106.IF "$(OS)"=="MACOSX"
107OUT2LIB+=.libs/libserf-1.*dylib
107OUT2LIB+=$(SERF_FIXED_LIB)
108.ELSE
109OUT2LIB=.libs/libserf-1.so*
110.ENDIF
111
112.ENDIF
113
114# --- Targets ------------------------------------------------------
115
116.INCLUDE : set_ext.mk
117.INCLUDE : target.mk
118.INCLUDE : tg_ext.mk
108.ELSE
109OUT2LIB=.libs/libserf-1.so*
110.ENDIF
111
112.ENDIF
113
114# --- Targets ------------------------------------------------------
115
116.INCLUDE : set_ext.mk
117.INCLUDE : target.mk
118.INCLUDE : tg_ext.mk