summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBodo Möller <bodo@openssl.org>1999-07-21 20:49:15 +0000
committerBodo Möller <bodo@openssl.org>1999-07-21 20:49:15 +0000
commit664b99853cbefd2dc9f6ee56631f36b0f63d0d06 (patch)
tree45b4de7ba626a2ce59ad2c12de987e3e85663715
parent16bc9fea4dd8cfbfefa9173f36859885d8ede705 (diff)
avoid -DPLATFORM=\"...\" and -DCFLAGS=\"...\" command lines,
use new file buildinf.h instead.
-rw-r--r--CHANGES8
-rwxr-xr-xConfigure14
-rw-r--r--crypto/Makefile.ssl20
-rw-r--r--crypto/cryptlib.c1
-rw-r--r--crypto/cversion.c2
5 files changed, 28 insertions, 17 deletions
diff --git a/CHANGES b/CHANGES
index df10c894b2..d481e6e586 100644
--- a/CHANGES
+++ b/CHANGES
@@ -4,6 +4,14 @@
Changes between 0.9.3a and 0.9.4
+ *) The -DPLATFORM="\"$(PLATFORM)\"" definition and the similar -DCFLAGS=...
+ (both in crypto/Makefile.ssl for use by crypto/cversion.c) caused
+ problems not only on Windows, but also on some Unix platforms.
+ To avoid problematic command lines, these definitions are now made
+ in auto-generated file crypto/buildinf.h, which also defines DATE
+ and thus replaces crypto/date.h.
+ [Bodo Moeller]
+
*) MIPS III/IV assembler module is reimplemented.
[Andy Polyakov]
diff --git a/Configure b/Configure
index 4b68a097dd..2bc2ad001e 100755
--- a/Configure
+++ b/Configure
@@ -266,6 +266,8 @@ my %table=(
"BC-16","bcc:::(unknown)::BN_LLONG DES_PTR RC4_INDEX SIXTEEN_BIT:::",
# CygWin32
+# (Note: the real CFLAGS for Windows builds are defined by util/mk1mf.pl
+# and its library files in util/pl/*)
"CygWin32", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::::BN_LLONG $x86_gcc_des $x86_gcc_opts:",
"Mingw32", "gcc:-DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::::BN_LLONG $x86_gcc_des $x86_gcc_opts:",
@@ -686,16 +688,14 @@ print "BF_PTR used\n" if $bf_ptr == 1;
print "BF_PTR2 used\n" if $bf_ptr == 2;
if($IsWindows) {
- open (OUT,">crypto/date.h") || die "Can't open date.h";
- printf OUT "#define DATE \"%s\"\n", scalar gmtime();
- printf OUT <<EOF; # Kludge -- usually those are passed on the command line
-#ifndef CFLAGS
+ open (OUT,">crypto/buildinf.h") || die "Can't open buildinf.h";
+ printf OUT <<EOF;
+/* auto-generated by Configure for crypto/cversion.c */
+/* (Unix builds: auto-generated by crypto/Makefile.ssl) */
#define CFLAGS "$cc $cflags"
-#endif
-#ifndef PLATFORM
#define PLATFORM "$target"
-#endif
EOF
+ printf OUT "#define DATE \"%s\"\n", scalar gmtime();
close(OUT);
system "perl crypto/objects/obj_dat.pl <crypto/objects/objects.h >crypto/objects/obj_dat.h";
} else {
diff --git a/crypto/Makefile.ssl b/crypto/Makefile.ssl
index fce13683da..e8940de9a1 100644
--- a/crypto/Makefile.ssl
+++ b/crypto/Makefile.ssl
@@ -20,7 +20,7 @@ AR= ar r
PEX_LIBS=
EX_LIBS=
-CFLAGS= $(INCLUDE) $(CFLAG) -DCFLAGS="\"$(CC) $(CFLAG)\"" -DPLATFORM="\"$(PLATFORM)\""
+CFLAGS= $(INCLUDE) $(CFLAG)
LIBS=
@@ -40,17 +40,21 @@ LIBOBJ= cryptlib.o mem.o cversion.o ex_data.o tmdiff.o cpt_err.o
SRC= $(LIBSRC)
EXHEADER= crypto.h tmdiff.h opensslv.h opensslconf.h ebcdic.h
-HEADER= cryptlib.h date.h $(EXHEADER)
+HEADER= cryptlib.h buildinf.h $(EXHEADER)
ALL= $(GENERAL) $(SRC) $(HEADER)
top:
@(cd ..; $(MAKE) DIRS=$(DIR) all)
-all: date.h lib subdirs
+all: buildinf.h lib subdirs
-date.h: ../Makefile.ssl
- echo "#define DATE \"`date`\"" >date.h
+buildinf.h: ../Makefile.ssl
+ ( echo "/* auto-generated by crypto/Makefile.ssl for crypto/cversion.c */"; \
+ echo "/* (Windows builds: auto-generated by Configure) */"; \
+ echo "#define CFLAGS \"$(CC) $(CFLAG)\""; \
+ echo "#define PLATFORM \"$(PLATFORM)\""; \
+ echo "#define DATE \"`date`\"" ) >buildinf.h
subdirs:
@for i in $(SDIRS) ;\
@@ -125,7 +129,7 @@ depend:
done;
clean:
- rm -f date.h *.o */*.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
+ rm -f buildinf.h date.h *.o */*.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
@for i in $(SDIRS) ;\
do \
(cd $$i; echo "making clean in crypto/$$i..."; \
@@ -149,12 +153,12 @@ cryptlib.o: ../include/openssl/bio.h ../include/openssl/buffer.h
cryptlib.o: ../include/openssl/crypto.h ../include/openssl/e_os.h
cryptlib.o: ../include/openssl/e_os2.h ../include/openssl/err.h
cryptlib.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-cryptlib.o: ../include/openssl/stack.h cryptlib.h date.h
+cryptlib.o: ../include/openssl/stack.h cryptlib.h
cversion.o: ../include/openssl/bio.h ../include/openssl/buffer.h
cversion.o: ../include/openssl/crypto.h ../include/openssl/e_os.h
cversion.o: ../include/openssl/e_os2.h ../include/openssl/err.h
cversion.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
-cversion.o: ../include/openssl/stack.h cryptlib.h date.h
+cversion.o: ../include/openssl/stack.h buildinf.h cryptlib.h
ex_data.o: ../include/openssl/bio.h ../include/openssl/buffer.h
ex_data.o: ../include/openssl/crypto.h ../include/openssl/e_os.h
ex_data.o: ../include/openssl/e_os2.h ../include/openssl/err.h
diff --git a/crypto/cryptlib.c b/crypto/cryptlib.c
index d70a570dce..356c476a99 100644
--- a/crypto/cryptlib.c
+++ b/crypto/cryptlib.c
@@ -60,7 +60,6 @@
#include <string.h>
#include "cryptlib.h"
#include <openssl/crypto.h>
-#include "date.h"
#if defined(WIN32) || defined(WIN16)
static double SSLeay_MSVC5_hack=0.0; /* and for VC1.5 */
diff --git a/crypto/cversion.c b/crypto/cversion.c
index 959b2611b7..72af476fbe 100644
--- a/crypto/cversion.c
+++ b/crypto/cversion.c
@@ -60,7 +60,7 @@
#include <string.h>
#include "cryptlib.h"
#include <openssl/crypto.h>
-#include "date.h"
+#include "buildinf.h"
const char *SSLeay_version(int t)
{