mirror of
				https://github.com/libssh2/libssh2.git
				synced 2025-11-03 22:13:11 +03:00 
			
		
		
		
	Also: - rename a spellcheck file to match curl. - editorconfig: fix line width. - editorconfig: make it use UTF-8. - editroconfig: apply some rules to all files. - .gitignore: drop dupe, drop `.DS_Store` (not created by this repo), sort. - .gitignore: add for tests executables. Closes #1718
		
			
				
	
	
		
			129 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			129 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
$! Copyright (C) The libssh2 project and its contributors.
 | 
						|
$!
 | 
						|
$! SPDX-License-Identifier: BSD-3-Clause
 | 
						|
$!
 | 
						|
$!
 | 
						|
$ olddir = f$environment("default")
 | 
						|
$ on control_y then goto YExit
 | 
						|
$!
 | 
						|
$ gosub Init
 | 
						|
$ if .not. init_status then goto YExit
 | 
						|
$!
 | 
						|
$ if what .eqs. "ALL"
 | 
						|
$ then
 | 
						|
$   call MakeAll
 | 
						|
$ else
 | 
						|
$   call Make
 | 
						|
$endif
 | 
						|
$!
 | 
						|
$YExit:
 | 
						|
$ set noon
 | 
						|
$! deassign exadir
 | 
						|
$! deassign objdir
 | 
						|
$ delete 'link_opts';*
 | 
						|
$ set default 'olddir'
 | 
						|
$exit
 | 
						|
 | 
						|
$MakeAll: subroutine
 | 
						|
$!
 | 
						|
$ set noon
 | 
						|
$Loop:
 | 
						|
$ this = f$search("exadir:*.c;0")
 | 
						|
$ if this .eqs. "" then goto EndLoop
 | 
						|
$!
 | 
						|
$ what = f$parse( this,,,"name")
 | 
						|
$ if what .eqs. "x11" then goto loop ! not portable yet
 | 
						|
$ call Make
 | 
						|
$!
 | 
						|
$ goto Loop
 | 
						|
$EndLoop:
 | 
						|
$!
 | 
						|
$exit
 | 
						|
$endsubroutine
 | 
						|
 | 
						|
 | 
						|
$Make: subroutine
 | 
						|
$!
 | 
						|
$ set noon
 | 
						|
$!
 | 
						|
$ cc 'cc_include' 'cc_flags'/object=objdir:'what' exadir:'what'
 | 
						|
$ sev = $severity
 | 
						|
$ if sev .and. 2
 | 
						|
$ then
 | 
						|
$   say "Error compiling ''what', not linked."
 | 
						|
$ else
 | 
						|
$   if .not. (sev .and. 1)
 | 
						|
$   then
 | 
						|
$     say "Compile warnings in  ''what'"
 | 
						|
$   endif
 | 
						|
$  link/exe='what'.exe objdir:'what'.obj, 'link_opts'/opt
 | 
						|
$ endif
 | 
						|
$!
 | 
						|
$!
 | 
						|
$End:
 | 
						|
$ delete objdir:'what'.obj;*
 | 
						|
$exit
 | 
						|
$endsubroutine
 | 
						|
 | 
						|
 | 
						|
$Init:
 | 
						|
$!
 | 
						|
$!
 | 
						|
$ init_status = 1
 | 
						|
$ thisid = f$integer( %x'f$getjpi(0,"pid")') + "''f$cvtime(,,"second")'"
 | 
						|
$ mdir   = f$environment("procedure")
 | 
						|
$ mdir   = mdir - f$parse(mdir,,,"name") - f$parse(mdir,,,"type") - f$parse(mdir,,,"version")
 | 
						|
$ set default 'mdir'
 | 
						|
$!
 | 
						|
$ objdir = "[.example_objects]"
 | 
						|
$ exadir = "[-.example]"
 | 
						|
$!
 | 
						|
$ objdirfile = objdir - "[." - "]" + ".dir"
 | 
						|
$ if f$search( objdirfile ) .eqs. ""
 | 
						|
$ then
 | 
						|
$   create/directory 'objdir'
 | 
						|
$ endif
 | 
						|
$!
 | 
						|
$ define objdir 'objdir'
 | 
						|
$ define exadir 'exadir'
 | 
						|
$!
 | 
						|
$ cc_include = "/include=([],[-.include])"
 | 
						|
$ cc_flags   = "/name=shortened/show=all/define=(_USE_STD_STAT=1)"
 | 
						|
$ link_opts  = "objdir:libssh2_''thisid'.opt"
 | 
						|
$!
 | 
						|
$!
 | 
						|
$ what = "''p1'"
 | 
						|
$ if what .eqs. "" .or. f$edit(p1,"trim,collapse,upcase") .eqs. "ALL"
 | 
						|
$ then
 | 
						|
$   what = "ALL"
 | 
						|
$ else
 | 
						|
$   what = f$parse(what,,,"name")
 | 
						|
$   if f$search("exadir:''what'.c") .eqs. ""
 | 
						|
$   then
 | 
						|
$     write sys$output "Can't make ''what'"
 | 
						|
$     init_status = 0
 | 
						|
$   endif
 | 
						|
$ endif
 | 
						|
$!
 | 
						|
$ currentlib = f$search("libssh2*.exe")
 | 
						|
$!
 | 
						|
$ define libssh2 'currentlib'
 | 
						|
$!
 | 
						|
$ how  = "''p2'"
 | 
						|
$ if how .eqs. "" .or. f$edit(p2,"trim,collapse,upcase") .eqs. "STATIC"
 | 
						|
$ then
 | 
						|
$   open/write lout 'link_opts'
 | 
						|
$   write lout "libssh2.olb/lib"
 | 
						|
$   write lout "sys$share:ssl$libcrypto_shr32.exe/share"
 | 
						|
$   write lout "sys$share:ssl$libssl_shr32.exe/share"
 | 
						|
$   write lout "gnv$libzshr/share"
 | 
						|
$   close lout
 | 
						|
$ else
 | 
						|
$   how = "SHARED"
 | 
						|
$   open/write lout 'link_opts'
 | 
						|
$   write lout "libssh2/share"
 | 
						|
$   close lout
 | 
						|
$ endif
 | 
						|
$!
 | 
						|
$return
 |