Commit 4813ad2d authored by Richard Levitte's avatar Richard Levitte
Browse files

Harmonise the different build files



- User targets are now the same and generally do the same things
- configdata.pm depends on exactly the same files on all platforms
- VMS production of shared libraries is simplified
- VMS automatic dependency files get the extension .D rather than .MMS

Reviewed-by: default avatarRich Salz <rsalz@openssl.org>
parent d3b64b89
Loading
Loading
Loading
Loading
+85 −66
Original line number Diff line number Diff line
@@ -37,14 +37,25 @@
      "";
  }

  # Because we need to make two computations of these data,
  # we store them in arrays for reuse
  our @shlibs = map { $unified_info{sharednames}->{$_} || () } @{$unified_info{libraries}};
  our @programs = grep { !m|^\[\.test\]| } @{$unified_info{programs}};
  our @testprogs = grep { m|^\[\.test\]| } @{$unified_info{programs}};
  our @generated = ( ( map { (my $x = $_) =~ s|\.S$|\.s|; $x }
                       grep { defined $unified_info{generate}->{$_} }
                       map { @{$unified_info{sources}->{$_}} }
                       grep { /\.o$/ } keys %{$unified_info{sources}} ),
                     ( grep { /\.h$/ } keys %{$unified_info{generate}} ) );

  # This is a horrible hack, but is needed because recursive inclusion of files
  # in different directories does not work well with HP C.
  my $sd = sourcedir("crypto", "async", "arch");
  foreach (grep /\[\.crypto\.async\.arch\].*\.o$/, keys %{$unified_info{sources}}) {
      (my $x = $_) =~ s|\.o$|.OBJ|;
      $unified_info{before}->{$x}
          = qq(arch = F\$PARSE("$sd","A.;",,,"SYNTAX_ONLY") - "A.;"
        define arch 'arch');
          = qq(arch_include = F\$PARSE("$sd","A.;",,,"SYNTAX_ONLY") - "A.;"
        define arch 'arch_include');
      $unified_info{after}->{$x}
          = qq(deassign arch);
  }
@@ -52,10 +63,10 @@
  my $sd2 = sourcedir("ssl","statem");
  $unified_info{before}->{"[.test]heartbeat_test.OBJ"}
      = $unified_info{before}->{"[.test]ssltest_old.OBJ"}
      = qq(record = F\$PARSE("$sd1","A.;",,,"SYNTAX_ONLY") - "A.;"
        define record 'record'
        statem = F\$PARSE("$sd2","A.;",,,"SYNTAX_ONLY") - "A.;"
        define statem 'statem');
      = qq(record_include = F\$PARSE("$sd1","A.;",,,"SYNTAX_ONLY") - "A.;"
        define record 'record_include'
        statem_include = F\$PARSE("$sd2","A.;",,,"SYNTAX_ONLY") - "A.;"
        define statem 'statem_include');
  $unified_info{after}->{"[.test]heartbeat_test.OBJ"}
      = $unified_info{after}->{"[.test]ssltest.OBJ"}
      = qq(deassign statem
@@ -63,10 +74,10 @@
  foreach (grep /^\[\.ssl\.(?:record|statem)\].*\.o$/, keys %{$unified_info{sources}}) {
      (my $x = $_) =~ s|\.o$|.OBJ|;
      $unified_info{before}->{$x}
          = qq(record = F\$PARSE("$sd1","A.;",,,"SYNTAX_ONLY") - "A.;"
        define record 'record'
        statem = F\$PARSE("$sd2","A.;",,,"SYNTAX_ONLY") - "A.;"
        define statem 'statem');
          = qq(record_include = F\$PARSE("$sd1","A.;",,,"SYNTAX_ONLY") - "A.;"
        define record 'record_include'
        statem_include = F\$PARSE("$sd2","A.;",,,"SYNTAX_ONLY") - "A.;"
        define statem 'statem_include');
      $unified_info{after}->{$x}
          = qq(deassign statem
        deassign record);
@@ -99,13 +110,13 @@ EXE_EXT=.EXE
LIB_EXT=.OLB
SHLIB_EXT=.EXE
OBJ_EXT=.OBJ
DEP_EXT=.MMS
DEP_EXT=.D

LIBS={- join(", ", map { "-\n\t".$_.".OLB" } @{$unified_info{libraries}}) -}
SHLIBS={- join(" ", map { $_."\$(SHLIB_EXT)" } map { $unified_info{sharednames}->{$_} || () } @{$unified_info{libraries}}) -}
SHLIBS={- join(", ", map { "-\n\t".$_.".EXE" } @shlibs) -}
ENGINES={- join(", ", map { "-\n\t".$_.".EXE" } @{$unified_info{engines}}) -}
PROGRAMS={- join(", ", map { "-\n\t".$_.".EXE" } grep { !m|^\[\.test\]| } @{$unified_info{programs}}) -}
TESTPROGS={- join(", ", map { "-\n\t".$_.".EXE" } grep { m|^\[\.test\]| } @{$unified_info{programs}}) -}
PROGRAMS={- join(", ", map { "-\n\t".$_.".EXE" } @programs) -}
TESTPROGS={- join(", ", map { "-\n\t".$_.".EXE" } @testprogs) -}
SCRIPTS={- join(", ", map { "-\n\t".$_ } @{$unified_info{scripts}}) -}
{- output_off() if $disabled{makedepend}; "" -}
DEPS={- our @deps = map { (my $x = $_) =~ s|\.o$|\$(DEP_EXT)|; $x; }
@@ -113,7 +124,8 @@ DEPS={- our @deps = map { (my $x = $_) =~ s|\.o$|\$(DEP_EXT)|; $x; }
                    keys %{$unified_info{sources}};
        join(", ", map { "-\n\t".$_ } @deps); -}
{- output_on() if $disabled{makedepend}; "" -}
GENERATED_MANDATORY={- join(",", @{$unified_info{depends}->{""}} ) -}
GENERATED_MANDATORY={- join(", ", map { "-\n\t".$_ } @{$unified_info{depends}->{""}} ) -}
GENERATED={- join(", ", map { "-\n\t".$_ } @generated) -}

{- output_off() if $disabled{apps}; "" -}
BIN_SCRIPTS=[.tools]c_rehash.pl
@@ -257,18 +269,15 @@ test tests : build_generated, -
        @ ! {- output_on() if !$disabled{tests}; "" -}

list-tests :
        @ TOP=$(SRCDIR) PERL=$(PERL) $(PERL) {- catfile($config{sourcedir},"test", "run_tests.pl") -} list

# Because VMS wants the generation number (or *) to delete files, we can't
# use $(LIBS), $(PROGRAMS) and $(TESTPROGS) directly.
libclean :
        - DELETE []OSSL$LIB*.OLB;*,OSSL$LIB*.LIS;*
        - DELETE [.crypto...]*.OBJ;*,*.LIS;*
        - DELETE [.ssl...]*.OBJ;*,*.LIS;*
        - DELETE [.engines...]*.OBJ;*,*.LIS;*
        - DELETE []CXX$DEMANGLER_DB.;*
        @ ! {- output_off() if $disabled{tests}; "" -}
        @ DEFINE SRCTOP {- sourcedir() -}
        @ $(PERL) {- sourcefile("test", "run_tests.pl") -} list
        @ DEASSIGN SRCTOP
        @ ! {- if ($disabled{tests}) { output_on(); } else { output_off(); } "" -}
        @ WRITE SYS$OUTPUT "Tests are not supported with your chosen Configure options"
        @ ! {- output_on() if !$disabled{tests}; "" -}

install : install_sw install_docs
install : install_sw install_ssldirs install_docs
        @ WRITE SYS$OUTPUT ""
        @ WRITE SYS$OUTPUT "######################################################################"
        @ WRITE SYS$OUTPUT ""
@@ -295,16 +304,25 @@ install : install_sw install_docs

uninstall : uninstall_docs uninstall_sw

# Because VMS wants the generation number (or *) to delete files, we can't
# use $(LIBS), $(PROGRAMS), $(GENERATED), $(ENGINES) and $(TESTPROGS) directly.
libclean :
        {- join("\n\t", map { "- DELETE $_.OLB;*" } @{$unified_info{libraries}}) || "@ !" -}
        {- join("\n\t", map { "- DELETE $_.EXE;*,$_.MAP;*,$_.OPT;*" } @shlibs) || "@ !" -}

clean : libclean
        - DELETE {- join(",", map { "$_;*" } @{$unified_info{depends}->{""}} ) -}
        - DELETE []OSSL$LIB*.EXE;*,OSSL$LIB*.MAP;*,OSSL$LIB*.OPT;*
        - DELETE [.engines...]LIB*.EXE;*,LIB*.MAP;*,LIB*.OPT;*
        - DELETE [.apps]*.EXE;*,*.MAP;*,*.OPT;*
        - DELETE [.apps]*.OBJ;*,*.LIS;*
        - DELETE [.test]*.EXE;*,*.MAP;*,*.OPT;*
        - DELETE [.test]*.OBJ;*,*.LIS;*
        - DELETE [.test]*.LOG;*
        - DELETE []*.MAP;*
        {- join("\n\t", map { "- DELETE $_.EXE;*,$_.OPT;*" } @programs) || "@ !" -}
        {- join("\n\t", map { "- DELETE $_.EXE;*,$_.OPT;*" } @testprogs) || "@ !" -}
        {- join("\n\t", map { "- DELETE $_.EXE;*,$_.OPT;*" } @{$unified_info{engines}}) || "@ !" -}
        {- join("\n\t", map { "- DELETE $_;*" } @{$unified_info{scripts}}) || "@ !" -}
        {- join("\n\t", map { "- DELETE $_;*" } @generated) || "@ !" -}
        - DELETE [...]*.MAP;*
        - DELETE [...]*.D;*
        - DELETE [...]*.OBJ;*,*.LIS;*
        - DELETE []CXX$DEMANGLER_DB.;*
        - DELETE [.VMS]openssl_startup.com;*
        - DELETE [.VMS]openssl_shutdown.com;*
        - DELETE []vmsconfig.pm;*

distclean : clean
        - DELETE configdata.pm;*
@@ -327,13 +345,26 @@ descrip.mms : FORCE

# Install helper targets #############################################

install_sw : all install_dev install_engines install_runtime install_config
install_sw : all install_dev install_engines install_runtime install_startup

uninstall_sw : uninstall_dev uninstall_engines uninstall_runtime uninstall_config
uninstall_sw : uninstall_dev uninstall_engines uninstall_runtime uninstall_startup

install_docs : install_man_docs install_html_docs
install_docs : install_html_docs

uninstall_docs : uninstall_man_docs uninstall_html_docs
uninstall_docs : uninstall_html_docs

install_ssldirs : check_INSTALLTOP
        - CREATE/DIR/PROT=(S:RWED,O:RWE,G:RE,W:RE) OSSL_DATAROOT:[000000]
        IF F$SEARCH("OSSL_DATAROOT:[000000]CERTS.DIR;1") .EQS. "" THEN -
                CREATE/DIR/PROT=(S:RWED,O:RWE,G:RE,W:RE) OSSL_DATAROOT:[CERTS]
        IF F$SEARCH("OSSL_DATAROOT:[000000]PRIVATE.DIR;1") .EQS. "" THEN -
                CREATE/DIR/PROT=(S:RWED,O:RWE,G,W) OSSL_DATAROOT:[PRIVATE]
        IF F$SEARCH("OSSL_DATAROOT:[000000]MISC.DIR;1") .EQS. "" THEN -
                CREATE/DIR/PROT=(S:RWED,O:RWE,G,W) OSSL_DATAROOT:[MISC]
        COPY/PROT=W:RE $(MISC_SCRIPTS) OSSL_DATAROOT:[MISC]
        @ ! Install configuration file
        COPY/PROT=W:RE {- sourcefile("apps", "openssl-vms.cnf") -} -
                ossl_dataroot:[000000]openssl.cnf

install_dev : check_INSTALLTOP
        @ WRITE SYS$OUTPUT "*** Installing development files"
@@ -362,10 +393,6 @@ install_runtime : check_INSTALLTOP
        - CREATE/DIR ossl_installroot:[EXE]
        COPY/PROT=W:RE $(BIN_SCRIPTS) ossl_installroot:[EXE]
        @ ! {- output_on() if $disabled{apps}; "" -}
        @ ! Install configuration file
        - CREATE/DIR ossl_dataroot:[000000]
        COPY/PROT=W:RE {- sourcefile("apps", "openssl-vms.cnf") -} -
                ossl_dataroot:[000000]openssl.cnf

install_engines : check_INSTALLTOP
        @ {- output_off() unless scalar @{$unified_info{engines}}; "" -} !
@@ -376,22 +403,18 @@ install_engines : check_INSTALLTOP
                grep(!m|ossltest$|i, @{$unified_info{engines}})) -}
        @ {- output_on() unless scalar @{$unified_info{engines}}; "" -} !

install_config : [.VMS]openssl_startup.com [.VMS]openssl_shutdown.com -
install_startup : [.VMS]openssl_startup.com [.VMS]openssl_shutdown.com -
                 check_INSTALLTOP
        IF F$SEARCH("OSSL_DATAROOT:[000000]CERTS.DIR;1") .EQS. "" THEN -
                CREATE/DIR/PROT=(S:RWED,O:RWE,G:RE,W:RE) OSSL_DATAROOT:[CERTS]
        IF F$SEARCH("OSSL_DATAROOT:[000000]PRIVATE.DIR;1") .EQS. "" THEN -
                CREATE/DIR/PROT=(S:RWED,O:RWE,G,W) OSSL_DATAROOT:[PRIVATE]
        IF F$SEARCH("OSSL_DATAROOT:[000000]MISC.DIR;1") .EQS. "" THEN -
                CREATE/DIR/PROT=(S:RWED,O:RWE,G,W) OSSL_DATAROOT:[MISC]
        - CREATE/DIR ossl_installroot:[SYS$STARTUP]
        COPY/PROT=W:RE -
                [.VMS]openssl_startup.com,openssl_startup.com -
                ossl_installroot:[SYS$STARTUP]
        COPY/PROT=W:RE -
                [.VMS]openssl_startup.com,openssl_shutdown.com -
                ossl_installroot:[SYS$STARTUP]
        COPY/PROT=W:RE -
                {- sourcefile("VMS", "openssl_utils.com") -} -
                ossl_installroot:[SYS$STARTUP]
        COPY/PROT=W:RE $(MISC_SCRIPTS) OSSL_DATAROOT:[MISC]

[.VMS]openssl_startup.com : vmsconfig.pm {- sourcefile("VMS", "openssl_startup.com.in") -}
        - CREATE/DIR [.VMS]
@@ -537,7 +560,7 @@ EOF
      my $before = $unified_info{before}->{$obj.".OBJ"} || "\@ !";
      my $after = $unified_info{after}->{$obj.".OBJ"} || "\@ !";
      my $depbuild = $disabled{makedepend} ? ""
          : " /MMS=(FILE=${objd}${objn}.tmp-MMS,TARGET=$obj.OBJ)";
          : " /MMS=(FILE=${objd}${objn}.tmp-D,TARGET=$obj.OBJ)";

      return <<"EOF";
$obj.OBJ : $deps
@@ -548,9 +571,9 @@ $obj.OBJ : $deps
        $incs_off
        SET DEFAULT $backward
        ${after}
        \@ PIPE ( \$(PERL) -e "use File::Compare qw/compare_text/; my \$x = compare_text(""$obj.MMS"",""$obj.tmp-MMS""); exit(0x10000000 + (\$x == 0));" || -
                 RENAME $obj.tmp-MMS $obj.mms )
        \@ IF F\$SEARCH("$obj.tmp-MMS") .NES. "" THEN DELETE $obj.tmp-MMS;*
        \@ PIPE ( \$(PERL) -e "use File::Compare qw/compare_text/; my \$x = compare_text(""$obj.D"",""$obj.tmp-D""); exit(0x10000000 + (\$x == 0));" || -
                 RENAME $obj.tmp-D $obj.d )
        \@ IF F\$SEARCH("$obj.tmp-D") .NES. "" THEN DELETE $obj.tmp-D;*
        - PURGE $obj.OBJ
EOF
  }
@@ -588,22 +611,18 @@ EOF
          || "\@ !";
      return <<"EOF";
$shlib.EXE : $lib.OLB $deps $ordinalsfile
        IF "$mkdef_key" .EQS. "ssl" .OR. "$mkdef_key" .EQS. "crypto" THEN -
        \$(PERL) $mkdef_pl "$mkdef_key" "VMS" > $shlib.SYMVEC-tmp
        IF "$mkdef_key" .EQS. "ssl" .OR. "$mkdef_key" .EQS. "crypto" THEN -
        \$(PERL) $translatesyms_pl \$(BLDDIR)CXX\$DEMANGLER_DB. < $shlib.SYMVEC-tmp > $shlib.SYMVEC
        DELETE $shlib.SYMVEC-tmp;*
        OPEN/WRITE/SHARE=READ OPT_FILE $shlib.OPT
        WRITE OPT_FILE "IDENTIFICATION=""V$config{version}"""
        IF "$mkdef_key" .NES. "ssl" .AND. "$mkdef_key" .NES. "crypto" THEN -
           TYPE $engine_opt /OUTPUT=OPT_FILE:
        IF "$mkdef_key" .EQS. "ssl" .OR. "$mkdef_key" .EQS. "crypto" THEN -
        TYPE $shlib.SYMVEC /OUTPUT=OPT_FILE:
        WRITE OPT_FILE "$lib.OLB/LIBRARY"
        $write_opt ! Comment to protect from empty line
        $write_opt
        CLOSE OPT_FILE
        LINK /MAP=$shlib.MAP /FULL/SHARE=$shlib.EXE $shlib.OPT/OPT \$(EX_LIBS)
        - DELETE $shlib.SYMVEC;*
        - PURGE $shlib.EXE,$shlib.OPT,$shlib.MAP
        DELETE $shlib.SYMVEC;*
        PURGE $shlib.EXE,$shlib.OPT,$shlib.MAP
EOF
  }
  sub obj2dso {
+36 −38
Original line number Diff line number Diff line
@@ -242,7 +242,16 @@ tests: build_generated \
	@ : {- output_on() if !$disabled{tests}; "" -}

list-tests:
	@TOP="$(SRCDIR)" PERL="$(PERL)" $(PERL) $(SRCDIR)/test/run_tests.pl list
	@ : {- output_off() if $disabled{tests}; "" -}
	@SRCTOP="$(SRCDIR)" \
	 $(PERL) $(SRCDIR)/test/run_tests.pl list
	@ : {- if ($disabled{tests}) { output_on(); } else { output_off(); } "" -}
	@echo "Tests are not supported with your chosen Configure options"
	@ : {- output_on() if !$disabled{tests}; "" -}

install: install_sw install_ssldirs install_docs

uninstall: uninstall_docs uninstall_sw

libclean:
	@set -e; for s in $(SHLIB_INFO); do \
@@ -256,25 +265,22 @@ libclean:
		fi; \
	done
	$(RM) $(LIBS)

install: install_sw install_ssldirs install_docs

uninstall: uninstall_docs uninstall_sw
	$(RM) *.map

clean: libclean
	rm -f $(PROGRAMS) $(TESTPROGS) $(ENGINES) $(SCRIPTS)
	rm -f $(GENERATED)
	-rm -f `find . -name '*{- $depext -}'`
	-rm -f `find . -name '*{- $objext -}'`
	rm -f core
	rm -f tags TAGS
	rm -f openssl.pc libcrypto.pc libssl.pc
	-rm -f `find . -type l -a \! -path "./.git/*"`
	rm -f $(TARFILE)
	$(RM) $(PROGRAMS) $(TESTPROGS) $(ENGINES) $(SCRIPTS)
	$(RM) $(GENERATED)
	-$(RM) `find . -name '*{- $depext -}' -a \! -path "./.git/*"`
	-$(RM) `find . -name '*{- $objext -}' -a \! -path "./.git/*"`
	$(RM) core
	$(RM) tags TAGS
	$(RM) openssl.pc libcrypto.pc libssl.pc
	-$(RM) `find . -type l -a \! -path "./.git/*"`
	$(RM) $(TARFILE)

distclean: clean
	rm -f configdata.pm
	rm -f Makefile
	$(RM) configdata.pm
	$(RM) Makefile

# This exists solely for those who still type 'make depend'
#
@@ -311,6 +317,19 @@ uninstall_docs: uninstall_man_docs uninstall_html_docs
install_ssldirs:
	@$(PERL) $(SRCDIR)/util/mkdir-p.pl $(DESTDIR)$(OPENSSLDIR)/certs
	@$(PERL) $(SRCDIR)/util/mkdir-p.pl $(DESTDIR)$(OPENSSLDIR)/private
	@set -e; for x in dummy $(MISC_SCRIPTS); do \
		if [ "$$x" = "dummy" ]; then continue; fi; \
		fn=`basename $$x`; \
		echo "install $$x -> $(DESTDIR)$(OPENSSLDIR)/misc/$$fn"; \
		cp $$x $(DESTDIR)$(OPENSSLDIR)/misc/$$fn.new; \
		chmod 755 $(DESTDIR)$(OPENSSLDIR)/misc/$$fn.new; \
		mv -f $(DESTDIR)$(OPENSSLDIR)/misc/$$fn.new \
		      $(DESTDIR)$(OPENSSLDIR)/misc/$$fn; \
	done
	@echo "install $(SRCDIR)/apps/openssl.cnf -> $(DESTDIR)$(OPENSSLDIR)/openssl.cnf"
	@cp $(SRCDIR)/apps/openssl.cnf $(DESTDIR)$(OPENSSLDIR)/openssl.cnf.new
	@chmod 644 $(DESTDIR)$(OPENSSLDIR)/openssl.cnf.new
	@mv -f  $(DESTDIR)$(OPENSSLDIR)/openssl.cnf.new $(DESTDIR)$(OPENSSLDIR)/openssl.cnf

install_dev:
	@[ -n "$(INSTALLTOP)" ] || (echo INSTALLTOP should not be empty; exit 1)
@@ -473,19 +492,6 @@ install_runtime:
		mv -f $(DESTDIR)$(INSTALLTOP)/bin/$$fn.new \
		      $(DESTDIR)$(INSTALLTOP)/bin/$$fn; \
	done
	@set -e; for x in dummy $(MISC_SCRIPTS); do \
		if [ "$$x" = "dummy" ]; then continue; fi; \
		fn=`basename $$x`; \
		echo "install $$x -> $(DESTDIR)$(OPENSSLDIR)/misc/$$fn"; \
		cp $$x $(DESTDIR)$(OPENSSLDIR)/misc/$$fn.new; \
		chmod 755 $(DESTDIR)$(OPENSSLDIR)/misc/$$fn.new; \
		mv -f $(DESTDIR)$(OPENSSLDIR)/misc/$$fn.new \
		      $(DESTDIR)$(OPENSSLDIR)/misc/$$fn; \
	done
	@echo "install $(SRCDIR)/apps/openssl.cnf -> $(DESTDIR)$(OPENSSLDIR)/openssl.cnf"
	@cp $(SRCDIR)/apps/openssl.cnf $(DESTDIR)$(OPENSSLDIR)/openssl.cnf.new
	@chmod 644 $(DESTDIR)$(OPENSSLDIR)/openssl.cnf.new
	@mv -f  $(DESTDIR)$(OPENSSLDIR)/openssl.cnf.new $(DESTDIR)$(OPENSSLDIR)/openssl.cnf

uninstall_runtime:
	@echo "*** Uninstalling runtime files"
@@ -644,10 +650,6 @@ generate: generate_apps generate_crypto_bn generate_crypto_objects \
#coverage: $(PROGRAMS) $(TESTPROGRAMS)
#	...

# Currently disabled, util/selftest.pl needs a rewrite
#report:
#	SRCDIR=$(SRCDIR) @$(PERL) util/selftest.pl

lint:
	lint -DLINT $(INCLUDES) $(SRCS)

@@ -798,11 +800,7 @@ openssl.pc:
	    echo 'Version: '$(VERSION); \
	    echo 'Requires: libssl libcrypto' ) > openssl.pc

# Note on the use of $(MFLAGS): this was an older variant of MAKEFLAGS which
# wasn't passed down automatically.  It's quite safe to use it like we do
# below; if it doesn't exist, the result will be empty and 'make' will pick
# up $(MAKEFLAGS) which is passed down as an environment variable.
configdata.pm: $(SRCDIR)/Configurations/unix-Makefile.tmpl $(SRCDIR)/Configurations/common.tmpl $(SRCDIR)/Configure $(SRCDIR)/config {- join(" ", @{$config{build_infos}}) -}
configdata.pm: {- $config{build_file_template} -} $(SRCDIR)/Configurations/common.tmpl $(SRCDIR)/Configure $(SRCDIR)/config {- join(" ", @{$config{build_infos}}) -}
	@echo "Detected changed: $?"
	@echo "Reconfiguring..."
	$(SRCDIR)/Configure reconf
+15 −8
Original line number Diff line number Diff line
@@ -172,9 +172,12 @@ tests: build_generated \
	@rem {- output_on() if !$disabled{tests}; "" -}

list-tests:
	@set TOP=$(SRCDIR)
	@set PERL=$(PERL)
	@rem {- output_off() if $disabled{tests}; "" -}
	@set SRCTOP=$(SRCDIR)
	@"$(PERL)" "$(SRCDIR)\test\run_tests.pl" list
	@rem {- if ($disabled{tests}) { output_on(); } else { output_off(); } "" -}
	@echo "Tests are not supported with your chosen Configure options"
	@rem {- output_on() if !$disabled{tests}; "" -}

install: install_sw install_ssldirs install_docs

@@ -189,7 +192,7 @@ libclean:

clean: libclean
	-del /Q /F $(PROGRAMS) $(TESTPROGS) $(ENGINES) $(SCRIPTS)
	-del /Q /S /F $(GENERATED)
	-del /Q /F $(GENERATED)
	-del /Q /S /F *.d
	-del /Q /S /F *.obj
	-del /Q /S /F *.pdb
@@ -213,11 +216,9 @@ install_sw: all install_dev install_engines install_runtime

uninstall_sw: uninstall_runtime uninstall_engines uninstall_dev

install_docs:
        "$(PERL)" "$(SRCDIR)\util\process_docs.pl" \
                "--destdir=$(DESTDIR)$(INSTALLTOP)\html" --type=html
install_docs: install_html_docs

uninstall_docs:
uninstall_docs: uninstall_html_docs

install_ssldirs:
	@"$(PERL)" "$(SRCDIR)\util\mkdir-p.pl" "$(DESTDIR)$(OPENSSLDIR)\certs"
@@ -274,9 +275,15 @@ install_runtime:

uninstall_runtime:

install_html_docs:
        "$(PERL)" "$(SRCDIR)\util\process_docs.pl" \
                "--destdir=$(DESTDIR)$(INSTALLTOP)\html" --type=html

uninstall_html_docs:

# Building targets ###################################################

configdata.pm: "{- $config{build_file_template} -}" "$(SRCDIR)\Configure"
configdata.pm: "{- $config{build_file_template} -}" "$(SRCDIR)\Configurations\common.tmpl" "$(SRCDIR)\Configure" {- join(" ", map { '"'.$_.'"' } @{$config{build_infos}}) -}
	@echo "Detected changed: $?"
	@echo "Reconfiguring..."
	"$(PERL)" "$(SRCDIR)\Configure" reconf