>I have now added bss_file.c to HEADER, because that is what I think
>was originally intended ("EXHEADER" = "exported headers", i.e. files
>that should be copied into the "include" directory to be visible for
>other programs that use OpenSSL; "HEADER" = other files that are
>included somewhere within the library, e.g. all the ..._locl.h ones).
Good idea, but it doesn't work without adding a new target to the
makefiles. Or at least, that's the way I've got it to work... :)
The problem: the mk1mf.pl EXHEADER treatment changes the name of the
file in the generated .mak file from .c to .h (whops):
$defs.=&do_defs("EXHEADER",$exheader,"\$(INC_D)",".h");
$rules.=&do_copy_rule("\$(INC_D)",$exheader,".h");
The solution (well, *one* solution): make an EXSOURCE target in the
makefile.ssl, and enhance mk1mf.pl to use the source extension ".c".
The diff'd bio/Makefile.ssl (<before> then <after>):
*** i:/work/crypto/bio/Makefile.ssl Wed Apr 14 18:17:16 1999
--- e:/OpenSSL-0.9.3/crypto/bio/Makefile.ssl Thu Apr 15 11:05:54 1999
***************
*** 35,42 ****
SRC= $(LIBSRC)
EXHEADER= bio.h
! HEADER= bss_file.c $(EXHEADER)
ALL= $(GENERAL) $(SRC) $(HEADER)
--- 35,43 ----
SRC= $(LIBSRC)
+ EXSOURCE=bss_file.c
EXHEADER= bio.h
! HEADER= $(EXHEADER)
ALL= $(GENERAL) $(SRC) $(HEADER)
The diff'd mk1mk.pl:
E:\>diff -c i:/work/util/mk1mf.pl e:/OpenSSL-0.9.3/util/mk1mf.pl
*** i:/work/util/mk1mf.pl Sat Apr 3 17:17:18 1999
--- e:/OpenSSL-0.9.3/util/mk1mf.pl Thu Apr 15 10:49:14 1999
***************
*** 385,391 ****
\$(INC_D):
\$(MKDIR) \$(INC_D)
! headers: \$(HEADER) \$(EXHEADER)
lib: \$(LIBS_DEP)
--- 385,391 ----
\$(INC_D):
\$(MKDIR) \$(INC_D)
! headers: \$(HEADER) \$(EXHEADER) \$(EXSOURCE)
lib: \$(LIBS_DEP)
***************
*** 450,455 ****
--- 450,458 ----
if ($key eq "EXHEADER")
{ $exheader.=&var_add($dir,$val); }
+ if ($key eq "EXSOURCE")
+ { $exsource.=&var_add($dir,$val); }
+
if ($key eq "HEADER")
{ $header.=&var_add($dir,$val); }
***************
*** 466,475 ****
--- 469,480 ----
$test=&clean_up_ws($test);
$e_exe=&clean_up_ws($e_exe);
$exheader=&clean_up_ws($exheader);
+ $exsource=&clean_up_ws($exsource);
$header=&clean_up_ws($header);
# First we strip the exheaders from the headers list
foreach (split(/\s+/,$exheader)){ $h{$_}=1; }
+ foreach (split(/\s+/,$exsource)){ $h{$_}=1; }
foreach (split(/\s+/,$header)) { $h.=$_." " unless $h{$_}; }
chop($h); $header=$h;
***************
*** 478,483 ****
--- 483,491 ----
$defs.=&do_defs("EXHEADER",$exheader,"\$(INC_D)",".h");
$rules.=&do_copy_rule("\$(INC_D)",$exheader,".h");
+
+ $defs.=&do_defs("EXSOURCE",$exsource,"\$(INC_D)",".c");
+ $rules.=&do_copy_rule("\$(INC_D)",$exsource,".c");
$defs.=&do_defs("T_OBJ",$test,"\$(OBJ_D)",$obj);
$rules.=&do_compile_rule("\$(OBJ_D)",$test,"\$(APP_CFLAGS)");
TT
______________________________________________________________________
OpenSSL Project http://www.openssl.org
Development Mailing List [EMAIL PROTECTED]
Automated List Manager [EMAIL PROTECTED]