Added https, ssh, sftp libraries.
This commit is contained in:
parent
144c3f1ca2
commit
3c39f48bde
503 changed files with 167695 additions and 108 deletions
35
Makefile
35
Makefile
|
|
@ -136,7 +136,7 @@ ENETOBJ = $(foreach n,$(ENETNAMES),obj/enet_$(n).o)
|
|||
|
||||
BINS = bin/testBroker bin/testLua bin/testMyBasic bin/testPolyglot bin/testActor \
|
||||
bin/testEngineLua bin/testEngineMyBasic bin/testSquirrel bin/testEngineSquirrel bin/testJs bin/testEngineJs \
|
||||
bin/testEngineBerry bin/testEngineS7 bin/testEngineWren bin/testLoad bin/testDb bin/testNet bin/testTask bin/testExport bin/testJson bin/testTime bin/testFs bin/testCrypto bin/testKv bin/testTimer bin/testPubsub bin/testHttp bin/embed
|
||||
bin/testEngineBerry bin/testEngineS7 bin/testEngineWren bin/testLoad bin/testDb bin/testNet bin/testTask bin/testExport bin/testJson bin/testTime bin/testFs bin/testCrypto bin/testKv bin/testTimer bin/testPubsub bin/testHttp bin/testHttps bin/embed
|
||||
|
||||
all: $(BINS)
|
||||
|
||||
|
|
@ -148,15 +148,29 @@ $(STRICTOBJ): obj/%.o: %.c | obj
|
|||
$(CC) $(COREFLAGS) $(INC) -c -o $@ $<
|
||||
|
||||
# strict C, threaded
|
||||
THREADOBJ = obj/context.o obj/mybasicEngine.o obj/testActor.o obj/testEngineLua.o obj/testEngineSquirrel.o obj/testEngineJs.o obj/testEngineMyBasic.o obj/testEngineBerry.o obj/testEngineS7.o obj/testEngineWren.o obj/calogHandle.o obj/testDb.o obj/testNet.o obj/testTask.o obj/calogExport.o obj/testExport.o obj/calogJson.o obj/testJson.o obj/calogFs.o obj/testFs.o obj/calogTime.o obj/testTime.o obj/calogKv.o obj/testKv.o obj/testCrypto.o obj/calogTimer.o obj/testTimer.o obj/calogPubsub.o obj/testPubsub.o obj/testHttp.o
|
||||
THREADOBJ = obj/context.o obj/mybasicEngine.o obj/testActor.o obj/testEngineLua.o obj/testEngineSquirrel.o obj/testEngineJs.o obj/testEngineMyBasic.o obj/testEngineBerry.o obj/testEngineS7.o obj/testEngineWren.o obj/calogHandle.o obj/testDb.o obj/testNet.o obj/testTask.o obj/calogExport.o obj/testExport.o obj/calogJson.o obj/testJson.o obj/calogFs.o obj/testFs.o obj/calogTime.o obj/testTime.o obj/calogKv.o obj/testKv.o obj/testCrypto.o obj/calogTimer.o obj/testTimer.o obj/calogPubsub.o obj/testPubsub.o obj/testHttp.o obj/testSsh.o
|
||||
$(THREADOBJ): obj/%.o: %.c | obj
|
||||
$(CC) $(COREFLAGS) $(INC) -pthread -c -o $@ $<
|
||||
|
||||
# calogCrypto and calogHttp need the vendored OpenSSL headers, which are outside $(INC).
|
||||
OSSLINC = -Ivendor/openssl/include
|
||||
obj/calogCrypto.o obj/calogHttp.o: obj/%.o: %.c | obj
|
||||
obj/calogCrypto.o obj/calogHttp.o obj/testHttps.o: obj/%.o: %.c | obj
|
||||
$(CC) $(COREFLAGS) $(INC) $(OSSLINC) -pthread -c -o $@ $<
|
||||
|
||||
# calogSsh binds vendored libssh2 (static, built via CMake against our vendored OpenSSL).
|
||||
LIBSSH2DIR = vendor/libssh2
|
||||
LIBSSH2INC = -I$(LIBSSH2DIR)/include
|
||||
LIBSSH2LIB = $(LIBSSH2DIR)/build/src/libssh2.a
|
||||
$(LIBSSH2LIB): | $(LIBSSH2DIR)
|
||||
cmake -S $(LIBSSH2DIR) -B $(LIBSSH2DIR)/build -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=OFF \
|
||||
-DLIBSSH2_EXAMPLES=OFF -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF -DCRYPTO_BACKEND=OpenSSL \
|
||||
-DOPENSSL_ROOT_DIR=$(CURDIR)/vendor/openssl -DOPENSSL_INCLUDE_DIR=$(CURDIR)/vendor/openssl/include \
|
||||
-DOPENSSL_SSL_LIBRARY=$(CURDIR)/vendor/openssl/libssl.a -DOPENSSL_CRYPTO_LIBRARY=$(CURDIR)/vendor/openssl/libcrypto.a \
|
||||
-DENABLE_ZLIB_COMPRESSION=OFF
|
||||
cmake --build $(LIBSSH2DIR)/build -j
|
||||
obj/calogSsh.o: calogSsh.c | obj
|
||||
$(CC) $(COREFLAGS) $(INC) $(LIBSSH2INC) -pthread -c -o $@ $<
|
||||
|
||||
# relaxed C + Lua headers
|
||||
LUAADP = obj/luaAdapter.o obj/testLua.o
|
||||
$(LUAADP): obj/%.o: %.c | obj
|
||||
|
|
@ -431,13 +445,26 @@ bin/testPubsub: obj/testPubsub.o obj/calogPubsub.o lib/libcalog.a lib/liblua.a |
|
|||
bin/testHttp: obj/testHttp.o obj/calogHttp.o lib/libcalog.a lib/liblua.a | bin
|
||||
$(CC) $(LDFLAGS) -pthread -o $@ $^ $(SSLARCH) $(LUALIBS) -ldl
|
||||
|
||||
bin/testHttps: obj/testHttps.o obj/calogHttp.o lib/libcalog.a lib/liblua.a | bin
|
||||
$(CC) $(LDFLAGS) -pthread -o $@ $^ $(SSLARCH) $(LUALIBS) -ldl
|
||||
|
||||
# SSH/SFTP over vendored libssh2 (before OpenSSL in the link line: libssh2 depends on it).
|
||||
bin/testSsh: obj/testSsh.o obj/calogSsh.o obj/calogHandle.o lib/libcalog.a lib/liblua.a $(LIBSSH2LIB) | bin
|
||||
$(CC) $(LDFLAGS) -pthread -o $@ $^ $(SSLARCH) $(LUALIBS) -ldl
|
||||
|
||||
# The SSH test spawns a throwaway unprivileged sshd (needs system sshd + ssh-keygen), so it is
|
||||
# NOT part of `make test`. Run it explicitly.
|
||||
.PHONY: ssh-test
|
||||
ssh-test: bin/testSsh
|
||||
./bin/testSsh
|
||||
|
||||
obj bin lib:
|
||||
mkdir -p $@
|
||||
|
||||
test: all
|
||||
./bin/testBroker && ./bin/testLua && ./bin/testMyBasic && ./bin/testPolyglot && \
|
||||
./bin/testActor && ./bin/testEngineLua && ./bin/testEngineMyBasic && ./bin/testSquirrel && ./bin/testEngineSquirrel && \
|
||||
./bin/testJs && ./bin/testEngineJs && ./bin/testEngineBerry && ./bin/testEngineS7 && ./bin/testEngineWren && ./bin/testLoad && ./bin/testDb && ./bin/testNet && ./bin/testTask && ./bin/testExport && ./bin/testJson && ./bin/testTime && ./bin/testFs && ./bin/testCrypto && ./bin/testKv && ./bin/testTimer && ./bin/testPubsub && ./bin/testHttp
|
||||
./bin/testJs && ./bin/testEngineJs && ./bin/testEngineBerry && ./bin/testEngineS7 && ./bin/testEngineWren && ./bin/testLoad && ./bin/testDb && ./bin/testNet && ./bin/testTask && ./bin/testExport && ./bin/testJson && ./bin/testTime && ./bin/testFs && ./bin/testCrypto && ./bin/testKv && ./bin/testTimer && ./bin/testPubsub && ./bin/testHttp && ./bin/testHttps
|
||||
|
||||
# ThreadSanitizer build of the actor core and the Lua engine path (cannot combine
|
||||
# with ASan). Recompiled from source under TSan; the vendored Lua objects are
|
||||
|
|
|
|||
|
|
@ -29,15 +29,15 @@ static int32_t cryptoUuidNative(CalogValueT *args, int32_t argCount, CalogValueT
|
|||
|
||||
|
||||
int32_t calogCryptoRegister(CalogT *calog) {
|
||||
calogRegisterInline(calog, "hashSha256", cryptoHashSha256Native, NULL);
|
||||
calogRegisterInline(calog, "hashSha1", cryptoHashSha1Native, NULL);
|
||||
calogRegisterInline(calog, "hmacSha256", cryptoHmacSha256Native, NULL);
|
||||
calogRegisterInline(calog, "randomBytes", cryptoRandomBytesNative, NULL);
|
||||
calogRegisterInline(calog, "base64Encode", cryptoBase64EncodeNative, NULL);
|
||||
calogRegisterInline(calog, "base64Decode", cryptoBase64DecodeNative, NULL);
|
||||
calogRegisterInline(calog, "hexEncode", cryptoHexEncodeNative, NULL);
|
||||
calogRegisterInline(calog, "hexDecode", cryptoHexDecodeNative, NULL);
|
||||
calogRegisterInline(calog, "uuid", cryptoUuidNative, NULL);
|
||||
calogRegisterInline(calog, "cryptoHashSha256", cryptoHashSha256Native, NULL);
|
||||
calogRegisterInline(calog, "cryptoHashSha1", cryptoHashSha1Native, NULL);
|
||||
calogRegisterInline(calog, "cryptoHmacSha256", cryptoHmacSha256Native, NULL);
|
||||
calogRegisterInline(calog, "cryptoRandomBytes", cryptoRandomBytesNative, NULL);
|
||||
calogRegisterInline(calog, "cryptoBase64Encode", cryptoBase64EncodeNative, NULL);
|
||||
calogRegisterInline(calog, "cryptoBase64Decode", cryptoBase64DecodeNative, NULL);
|
||||
calogRegisterInline(calog, "cryptoHexEncode", cryptoHexEncodeNative, NULL);
|
||||
calogRegisterInline(calog, "cryptoHexDecode", cryptoHexDecodeNative, NULL);
|
||||
calogRegisterInline(calog, "cryptoUuid", cryptoUuidNative, NULL);
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
|
@ -54,7 +54,7 @@ static int32_t cryptoBase64DecodeNative(CalogValueT *args, int32_t argCount, Cal
|
|||
(void)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 1 || args[0].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "base64Decode expects (text)");
|
||||
return calogFail(result, calogErrArgE, "cryptoBase64Decode expects (text)");
|
||||
}
|
||||
length = args[0].as.s.length;
|
||||
in = (const unsigned char *)args[0].as.s.bytes;
|
||||
|
|
@ -74,19 +74,19 @@ static int32_t cryptoBase64DecodeNative(CalogValueT *args, int32_t argCount, Cal
|
|||
return calogValueString(result, "", 0);
|
||||
}
|
||||
if ((length % 4) != 0 || length > INT_MAX) {
|
||||
return calogFail(result, calogErrArgE, "base64Decode: invalid base64 length");
|
||||
return calogFail(result, calogErrArgE, "cryptoBase64Decode: invalid base64 length");
|
||||
}
|
||||
outCap = ((size_t)length / 4) * 3;
|
||||
out = (unsigned char *)malloc(outCap);
|
||||
if (out == NULL) {
|
||||
return calogFail(result, calogErrOomE, "base64Decode: out of memory");
|
||||
return calogFail(result, calogErrOomE, "cryptoBase64Decode: out of memory");
|
||||
}
|
||||
// EVP_DecodeBlock always emits a multiple of three bytes and does NOT drop the bytes that
|
||||
// correspond to '=' padding, so trim one output byte per trailing '=' ourselves.
|
||||
decoded = EVP_DecodeBlock(out, in, (int)length);
|
||||
if (decoded < 0) {
|
||||
free(out);
|
||||
return calogFail(result, calogErrArgE, "base64Decode: invalid base64 data");
|
||||
return calogFail(result, calogErrArgE, "cryptoBase64Decode: invalid base64 data");
|
||||
}
|
||||
pad = 0;
|
||||
if (in[length - 1] == '=') {
|
||||
|
|
@ -98,7 +98,7 @@ static int32_t cryptoBase64DecodeNative(CalogValueT *args, int32_t argCount, Cal
|
|||
status = calogValueString(result, (const char *)out, (int64_t)(decoded - pad));
|
||||
free(out);
|
||||
if (status != calogOkE) {
|
||||
return calogFail(result, status, "base64Decode: out of memory");
|
||||
return calogFail(result, status, "cryptoBase64Decode: out of memory");
|
||||
}
|
||||
return calogOkE;
|
||||
}
|
||||
|
|
@ -114,10 +114,10 @@ static int32_t cryptoBase64EncodeNative(CalogValueT *args, int32_t argCount, Cal
|
|||
(void)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 1 || args[0].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "base64Encode expects (data)");
|
||||
return calogFail(result, calogErrArgE, "cryptoBase64Encode expects (data)");
|
||||
}
|
||||
if (args[0].as.s.length > INT_MAX) {
|
||||
return calogFail(result, calogErrRangeE, "base64Encode: input too large");
|
||||
return calogFail(result, calogErrRangeE, "cryptoBase64Encode: input too large");
|
||||
}
|
||||
inLen = (size_t)args[0].as.s.length;
|
||||
if (inLen == 0) {
|
||||
|
|
@ -126,13 +126,13 @@ static int32_t cryptoBase64EncodeNative(CalogValueT *args, int32_t argCount, Cal
|
|||
outCap = ((inLen + 2) / 3) * 4 + 1; // 4 base64 chars per 3 input bytes, plus the NUL EVP writes
|
||||
out = (unsigned char *)malloc(outCap);
|
||||
if (out == NULL) {
|
||||
return calogFail(result, calogErrOomE, "base64Encode: out of memory");
|
||||
return calogFail(result, calogErrOomE, "cryptoBase64Encode: out of memory");
|
||||
}
|
||||
written = EVP_EncodeBlock(out, (const unsigned char *)args[0].as.s.bytes, (int)inLen);
|
||||
status = calogValueString(result, (const char *)out, (int64_t)written);
|
||||
free(out);
|
||||
if (status != calogOkE) {
|
||||
return calogFail(result, status, "base64Encode: out of memory");
|
||||
return calogFail(result, status, "cryptoBase64Encode: out of memory");
|
||||
}
|
||||
return calogOkE;
|
||||
}
|
||||
|
|
@ -181,13 +181,13 @@ static int32_t cryptoDigestHex(CalogValueT *args, int32_t argCount, CalogValueT
|
|||
|
||||
static int32_t cryptoHashSha1Native(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData) {
|
||||
(void)userData;
|
||||
return cryptoDigestHex(args, argCount, result, EVP_sha1(), "hashSha1 expects (data)");
|
||||
return cryptoDigestHex(args, argCount, result, EVP_sha1(), "cryptoHashSha1 expects (data)");
|
||||
}
|
||||
|
||||
|
||||
static int32_t cryptoHashSha256Native(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData) {
|
||||
(void)userData;
|
||||
return cryptoDigestHex(args, argCount, result, EVP_sha256(), "hashSha256 expects (data)");
|
||||
return cryptoDigestHex(args, argCount, result, EVP_sha256(), "cryptoHashSha256 expects (data)");
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -202,11 +202,11 @@ static int32_t cryptoHexDecodeNative(CalogValueT *args, int32_t argCount, CalogV
|
|||
(void)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 1 || args[0].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "hexDecode expects (hexText)");
|
||||
return calogFail(result, calogErrArgE, "cryptoHexDecode expects (hexText)");
|
||||
}
|
||||
length = args[0].as.s.length;
|
||||
if ((length % 2) != 0) {
|
||||
return calogFail(result, calogErrArgE, "hexDecode: odd-length hex string");
|
||||
return calogFail(result, calogErrArgE, "cryptoHexDecode: odd-length hex string");
|
||||
}
|
||||
if (length == 0) {
|
||||
return calogValueString(result, "", 0);
|
||||
|
|
@ -215,7 +215,7 @@ static int32_t cryptoHexDecodeNative(CalogValueT *args, int32_t argCount, CalogV
|
|||
outLen = length / 2;
|
||||
out = (unsigned char *)malloc((size_t)outLen);
|
||||
if (out == NULL) {
|
||||
return calogFail(result, calogErrOomE, "hexDecode: out of memory");
|
||||
return calogFail(result, calogErrOomE, "cryptoHexDecode: out of memory");
|
||||
}
|
||||
for (index = 0; index < outLen; index++) {
|
||||
int32_t hi;
|
||||
|
|
@ -224,14 +224,14 @@ static int32_t cryptoHexDecodeNative(CalogValueT *args, int32_t argCount, CalogV
|
|||
lo = cryptoHexNibble(in[index * 2 + 1]);
|
||||
if (hi < 0 || lo < 0) {
|
||||
free(out);
|
||||
return calogFail(result, calogErrArgE, "hexDecode: invalid hex digit");
|
||||
return calogFail(result, calogErrArgE, "cryptoHexDecode: invalid hex digit");
|
||||
}
|
||||
out[index] = (unsigned char)((hi << 4) | lo);
|
||||
}
|
||||
status = calogValueString(result, (const char *)out, outLen);
|
||||
free(out);
|
||||
if (status != calogOkE) {
|
||||
return calogFail(result, status, "hexDecode: out of memory");
|
||||
return calogFail(result, status, "cryptoHexDecode: out of memory");
|
||||
}
|
||||
return calogOkE;
|
||||
}
|
||||
|
|
@ -241,7 +241,7 @@ static int32_t cryptoHexEncodeNative(CalogValueT *args, int32_t argCount, CalogV
|
|||
(void)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 1 || args[0].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "hexEncode expects (data)");
|
||||
return calogFail(result, calogErrArgE, "cryptoHexEncode expects (data)");
|
||||
}
|
||||
return cryptoBytesToHex(result, (const unsigned char *)args[0].as.s.bytes, (size_t)args[0].as.s.length);
|
||||
}
|
||||
|
|
@ -268,14 +268,14 @@ static int32_t cryptoHmacSha256Native(CalogValueT *args, int32_t argCount, Calog
|
|||
(void)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 2 || args[0].type != calogStringE || args[1].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "hmacSha256 expects (key, data)");
|
||||
return calogFail(result, calogErrArgE, "cryptoHmacSha256 expects (key, data)");
|
||||
}
|
||||
if (args[0].as.s.length > INT_MAX) {
|
||||
return calogFail(result, calogErrRangeE, "hmacSha256: key too large");
|
||||
return calogFail(result, calogErrRangeE, "cryptoHmacSha256: key too large");
|
||||
}
|
||||
digestLen = 0;
|
||||
if (HMAC(EVP_sha256(), args[0].as.s.bytes, (int)args[0].as.s.length, (const unsigned char *)args[1].as.s.bytes, (size_t)args[1].as.s.length, digest, &digestLen) == NULL) {
|
||||
return calogFail(result, calogErrUnsupportedE, "hmacSha256 computation failed");
|
||||
return calogFail(result, calogErrUnsupportedE, "cryptoHmacSha256 computation failed");
|
||||
}
|
||||
return cryptoBytesToHex(result, digest, (size_t)digestLen);
|
||||
}
|
||||
|
|
@ -289,27 +289,27 @@ static int32_t cryptoRandomBytesNative(CalogValueT *args, int32_t argCount, Calo
|
|||
(void)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 1 || args[0].type != calogIntE) {
|
||||
return calogFail(result, calogErrArgE, "randomBytes expects (count)");
|
||||
return calogFail(result, calogErrArgE, "cryptoRandomBytes expects (count)");
|
||||
}
|
||||
count = args[0].as.i;
|
||||
if (count < 0 || count > INT_MAX) {
|
||||
return calogFail(result, calogErrRangeE, "randomBytes: count out of range");
|
||||
return calogFail(result, calogErrRangeE, "cryptoRandomBytes: count out of range");
|
||||
}
|
||||
if (count == 0) {
|
||||
return calogValueString(result, "", 0);
|
||||
}
|
||||
buf = (unsigned char *)malloc((size_t)count);
|
||||
if (buf == NULL) {
|
||||
return calogFail(result, calogErrOomE, "randomBytes: out of memory");
|
||||
return calogFail(result, calogErrOomE, "cryptoRandomBytes: out of memory");
|
||||
}
|
||||
if (RAND_bytes(buf, (int)count) != 1) {
|
||||
free(buf);
|
||||
return calogFail(result, calogErrUnsupportedE, "randomBytes: RAND_bytes failed");
|
||||
return calogFail(result, calogErrUnsupportedE, "cryptoRandomBytes: RAND_bytes failed");
|
||||
}
|
||||
status = calogValueString(result, (const char *)buf, count);
|
||||
free(buf);
|
||||
if (status != calogOkE) {
|
||||
return calogFail(result, status, "randomBytes: out of memory");
|
||||
return calogFail(result, status, "cryptoRandomBytes: out of memory");
|
||||
}
|
||||
return calogOkE;
|
||||
}
|
||||
|
|
@ -326,10 +326,10 @@ static int32_t cryptoUuidNative(CalogValueT *args, int32_t argCount, CalogValueT
|
|||
(void)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 0) {
|
||||
return calogFail(result, calogErrArgE, "uuid expects no arguments");
|
||||
return calogFail(result, calogErrArgE, "cryptoUuid expects no arguments");
|
||||
}
|
||||
if (RAND_bytes(bytes, (int)sizeof(bytes)) != 1) {
|
||||
return calogFail(result, calogErrUnsupportedE, "uuid: RAND_bytes failed");
|
||||
return calogFail(result, calogErrUnsupportedE, "cryptoUuid: RAND_bytes failed");
|
||||
}
|
||||
bytes[6] = (unsigned char)((bytes[6] & 0x0F) | 0x40); // version 4
|
||||
bytes[8] = (unsigned char)((bytes[8] & 0x3F) | 0x80); // RFC 4122 variant
|
||||
|
|
|
|||
|
|
@ -2,15 +2,15 @@
|
|||
//
|
||||
// Bridges binary-safe calog strings to OpenSSL's one-shot primitives, so any engine gets
|
||||
// hashing, HMAC, randomness, and common encodings without an engine-specific library:
|
||||
// hashSha256(data) -> lowercase hex digest (64 chars)
|
||||
// hashSha1(data) -> lowercase hex digest (40 chars)
|
||||
// hmacSha256(key, data) -> lowercase hex HMAC-SHA-256 (64 chars)
|
||||
// randomBytes(count) -> binary string of count cryptographically-random bytes
|
||||
// base64Encode(data) -> base64 text
|
||||
// base64Decode(text) -> decoded binary string
|
||||
// hexEncode(data) -> lowercase hex text
|
||||
// hexDecode(hexText) -> decoded binary string
|
||||
// uuid() -> random RFC 4122 version-4 UUID string
|
||||
// cryptoHashSha256(data) -> lowercase hex digest (64 chars)
|
||||
// cryptoHashSha1(data) -> lowercase hex digest (40 chars)
|
||||
// cryptoHmacSha256(key, data) -> lowercase hex HMAC-SHA-256 (64 chars)
|
||||
// cryptoRandomBytes(count) -> binary string of count cryptographically-random bytes
|
||||
// cryptoBase64Encode(data) -> base64 text
|
||||
// cryptoBase64Decode(text) -> decoded binary string
|
||||
// cryptoHexEncode(data) -> lowercase hex text
|
||||
// cryptoHexDecode(hexText) -> decoded binary string
|
||||
// cryptoUuid() -> random RFC 4122 version-4 UUID string
|
||||
// All natives are binary-safe and INLINE (pure computation over OpenSSL one-shots, no shared
|
||||
// state), so there is nothing to shut down.
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,8 @@
|
|||
// response to EOF, and decode it (status line, lowercased headers into a map, and a body that
|
||||
// honors Transfer-Encoding: chunked / Content-Length / read-to-close). No shared state: every
|
||||
// native is a self-contained connection, so the natives are INLINE and there is nothing to
|
||||
// shut down. TLS does NO certificate verification in v1 (documented in the header).
|
||||
// shut down. https verifies the server certificate + hostname against the system CA store by
|
||||
// default; httpRequest can pass insecure=true to skip verification (self-signed / dev).
|
||||
|
||||
#define _GNU_SOURCE
|
||||
|
||||
|
|
@ -21,6 +22,7 @@
|
|||
#include <unistd.h>
|
||||
|
||||
#include <openssl/ssl.h>
|
||||
#include <openssl/x509v3.h>
|
||||
|
||||
#define HTTP_BUF_INITIAL 256
|
||||
#define HTTP_READ_CHUNK 16384
|
||||
|
|
@ -44,11 +46,14 @@ typedef struct HttpUrlT {
|
|||
char path[HTTP_PATH_MAX];
|
||||
} HttpUrlT;
|
||||
|
||||
// One connection: a plain socket, or a TLS session layered over it when ssl != NULL.
|
||||
// One connection: a plain socket, or a TLS session layered over it when ssl != NULL. verify
|
||||
// requests certificate + hostname authentication for an https connection (default; an https
|
||||
// request can opt out with insecure=true).
|
||||
typedef struct HttpConnT {
|
||||
int fd;
|
||||
SSL *ssl;
|
||||
SSL_CTX *ctx;
|
||||
bool verify;
|
||||
} HttpConnT;
|
||||
|
||||
static int32_t httpAppendHeaders(HttpBufT *buf, const CalogAggT *headers);
|
||||
|
|
@ -74,7 +79,7 @@ static int32_t httpMapSetStr(CalogAggT *map, const char *key, const char *bytes,
|
|||
static int64_t httpParseInt(const char *bytes, size_t length);
|
||||
static int32_t httpParseStatus(const char *line, size_t length, int32_t *codeOut);
|
||||
static int32_t httpParseUrl(const char *url, int64_t urlLen, HttpUrlT *out, CalogValueT *result);
|
||||
static int32_t httpPerform(const char *method, const char *urlBytes, int64_t urlLen, const CalogAggT *headers, const char *body, int64_t bodyLen, CalogValueT *result);
|
||||
static int32_t httpPerform(const char *method, const char *urlBytes, int64_t urlLen, const CalogAggT *headers, const char *body, int64_t bodyLen, bool verify, CalogValueT *result);
|
||||
static int32_t httpReadResponse(HttpConnT *conn, HttpBufT *raw);
|
||||
static int32_t httpRequestNative(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData);
|
||||
static int32_t httpTlsHandshake(HttpConnT *conn, const HttpUrlT *url, CalogValueT *result);
|
||||
|
|
@ -571,7 +576,7 @@ static int32_t httpGetNative(CalogValueT *args, int32_t argCount, CalogValueT *r
|
|||
if (argCount != 1 || args[0].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "httpGet expects (url)");
|
||||
}
|
||||
return httpPerform("GET", args[0].as.s.bytes, args[0].as.s.length, NULL, NULL, 0, result);
|
||||
return httpPerform("GET", args[0].as.s.bytes, args[0].as.s.length, NULL, NULL, 0, true, result);
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -764,7 +769,7 @@ static int32_t httpParseUrl(const char *url, int64_t urlLen, HttpUrlT *out, Calo
|
|||
}
|
||||
|
||||
|
||||
static int32_t httpPerform(const char *method, const char *urlBytes, int64_t urlLen, const CalogAggT *headers, const char *body, int64_t bodyLen, CalogValueT *result) {
|
||||
static int32_t httpPerform(const char *method, const char *urlBytes, int64_t urlLen, const CalogAggT *headers, const char *body, int64_t bodyLen, bool verify, CalogValueT *result) {
|
||||
HttpUrlT url;
|
||||
HttpConnT conn;
|
||||
HttpBufT request;
|
||||
|
|
@ -841,6 +846,7 @@ static int32_t httpPerform(const char *method, const char *urlBytes, int64_t url
|
|||
return calogFail(result, status, "http: out of memory");
|
||||
}
|
||||
|
||||
conn.verify = verify;
|
||||
status = httpConnOpen(&conn, &url, result);
|
||||
if (status != calogOkE) {
|
||||
httpBufFree(&request);
|
||||
|
|
@ -895,12 +901,14 @@ static int32_t httpRequestNative(CalogValueT *args, int32_t argCount, CalogValue
|
|||
CalogValueT *methodValue;
|
||||
CalogValueT *headersValue;
|
||||
CalogValueT *bodyValue;
|
||||
CalogValueT *insecureValue;
|
||||
CalogValueT keyValue;
|
||||
const CalogAggT *headers;
|
||||
const char *method;
|
||||
const char *body;
|
||||
int64_t bodyLen;
|
||||
int32_t status;
|
||||
bool verify;
|
||||
|
||||
(void)userData;
|
||||
calogValueNil(result);
|
||||
|
|
@ -958,7 +966,19 @@ static int32_t httpRequestNative(CalogValueT *args, int32_t argCount, CalogValue
|
|||
bodyLen = bodyValue->as.s.length;
|
||||
}
|
||||
|
||||
return httpPerform(method, urlValue->as.s.bytes, urlValue->as.s.length, headers, body, bodyLen, result);
|
||||
// insecure (optional): true skips certificate + hostname verification for an https request.
|
||||
verify = true;
|
||||
status = calogValueString(&keyValue, "insecure", 8);
|
||||
if (status != calogOkE) {
|
||||
return calogFail(result, status, "httpRequest: out of memory");
|
||||
}
|
||||
insecureValue = calogAggGet(opts, &keyValue);
|
||||
calogValueFree(&keyValue);
|
||||
if (insecureValue != NULL && insecureValue->type == calogBoolE && insecureValue->as.b) {
|
||||
verify = false;
|
||||
}
|
||||
|
||||
return httpPerform(method, urlValue->as.s.bytes, urlValue->as.s.length, headers, body, bodyLen, verify, result);
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -967,6 +987,14 @@ static int32_t httpTlsHandshake(HttpConnT *conn, const HttpUrlT *url, CalogValue
|
|||
if (conn->ctx == NULL) {
|
||||
return calogFail(result, calogErrUnsupportedE, "http: TLS context creation failed");
|
||||
}
|
||||
if (conn->verify) {
|
||||
// Authenticate the server: require a certificate chain to a trusted CA. Load the system
|
||||
// CA store plus OpenSSL's compiled-in defaults; with no trust anchors the handshake
|
||||
// fails closed rather than open. (An https request can pass insecure=true to skip this.)
|
||||
SSL_CTX_set_verify(conn->ctx, SSL_VERIFY_PEER, NULL);
|
||||
(void)SSL_CTX_set_default_verify_paths(conn->ctx);
|
||||
(void)SSL_CTX_load_verify_locations(conn->ctx, "/etc/ssl/certs/ca-certificates.crt", "/etc/ssl/certs");
|
||||
}
|
||||
conn->ssl = SSL_new(conn->ctx);
|
||||
if (conn->ssl == NULL) {
|
||||
return calogFail(result, calogErrUnsupportedE, "http: TLS session creation failed");
|
||||
|
|
@ -974,11 +1002,18 @@ static int32_t httpTlsHandshake(HttpConnT *conn, const HttpUrlT *url, CalogValue
|
|||
if (SSL_set_fd(conn->ssl, conn->fd) != 1) {
|
||||
return calogFail(result, calogErrUnsupportedE, "http: TLS SSL_set_fd failed");
|
||||
}
|
||||
// SNI so name-based virtual hosts serve the right certificate. NOTE: v1 does NO certificate
|
||||
// verification -- https here is transport encryption only, not server authentication.
|
||||
// SNI so name-based virtual hosts serve the right certificate.
|
||||
(void)SSL_set_tlsext_host_name(conn->ssl, url->host);
|
||||
if (conn->verify) {
|
||||
// Bind verification to the requested hostname, so a valid certificate issued for a
|
||||
// DIFFERENT host is still rejected.
|
||||
SSL_set_hostflags(conn->ssl, X509_CHECK_FLAG_NO_PARTIAL_WILDCARDS);
|
||||
if (SSL_set1_host(conn->ssl, url->host) != 1) {
|
||||
return calogFail(result, calogErrUnsupportedE, "http: could not set TLS verification hostname");
|
||||
}
|
||||
}
|
||||
if (SSL_connect(conn->ssl) != 1) {
|
||||
return calogFail(result, calogErrUnsupportedE, "http: TLS handshake failed");
|
||||
return calogFail(result, calogErrUnsupportedE, conn->verify ? "http: TLS handshake or certificate verification failed" : "http: TLS handshake failed");
|
||||
}
|
||||
return calogOkE;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,13 +4,15 @@
|
|||
// http:// and https:// without an engine-specific library:
|
||||
// httpGet(url) -> { status, body, headers }
|
||||
// httpRequest(opts) -> { status, body, headers }
|
||||
// where opts is a map { method (default "GET"), url, headers (map of name->value), body }.
|
||||
// The result map carries the integer status code, the binary-safe response body, and a
|
||||
// headers map keyed by the lowercased header name. Each call opens its own connection
|
||||
// ("Connection: close"), reads the whole response to EOF, and decodes the body honoring
|
||||
// Transfer-Encoding: chunked / Content-Length / read-to-close. Redirects are NOT followed
|
||||
// (a 3xx is returned as-is). For https:// the TLS handshake uses SNI but performs NO
|
||||
// certificate verification (v1 -- treat https as transport encoding only, not authenticated).
|
||||
// where opts is a map { method (default "GET"), url, headers (map of name->value), body,
|
||||
// insecure (bool) }. The result map carries the integer status code, the binary-safe response
|
||||
// body, and a headers map keyed by the lowercased header name. Each call opens its own
|
||||
// connection ("Connection: close"), reads the whole response to EOF, and decodes the body
|
||||
// honoring Transfer-Encoding: chunked / Content-Length / read-to-close. Redirects are NOT
|
||||
// followed (a 3xx is returned as-is). For https:// the TLS handshake uses SNI and, by DEFAULT,
|
||||
// verifies the server certificate chain against the system CA store and checks it matches the
|
||||
// requested hostname (an untrusted or mismatched certificate fails the request). Pass
|
||||
// insecure=true to httpRequest to skip verification (self-signed / development endpoints).
|
||||
// The natives are INLINE (each call is a self-contained connection with no shared state), so
|
||||
// there is nothing to shut down.
|
||||
|
||||
|
|
|
|||
|
|
@ -58,9 +58,9 @@ int32_t calogPubsubRegister(CalogT *calog) {
|
|||
pthread_mutex_lock(&gInitMutex);
|
||||
gRefCount++;
|
||||
pthread_mutex_unlock(&gInitMutex);
|
||||
calogRegisterInline(calog, "subscribe", pubsubSubscribe, NULL);
|
||||
calogRegisterInline(calog, "unsubscribe", pubsubUnsubscribe, NULL);
|
||||
calogRegisterInline(calog, "publish", pubsubPublish, NULL);
|
||||
calogRegisterInline(calog, "psSubscribe", pubsubSubscribe, NULL);
|
||||
calogRegisterInline(calog, "psUnsubscribe", pubsubUnsubscribe, NULL);
|
||||
calogRegisterInline(calog, "psPublish", pubsubPublish, NULL);
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
|
@ -109,7 +109,7 @@ static int32_t pubsubPublish(CalogValueT *args, int32_t argCount, CalogValueT *r
|
|||
(void)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 2 || args[0].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "publish expects (topic, message)");
|
||||
return calogFail(result, calogErrArgE, "psPublish expects (topic, message)");
|
||||
}
|
||||
topicLen = args[0].as.s.length;
|
||||
collected = NULL;
|
||||
|
|
@ -120,7 +120,7 @@ static int32_t pubsubPublish(CalogValueT *args, int32_t argCount, CalogValueT *r
|
|||
collected = (CalogFnT **)malloc((size_t)gCount * sizeof(CalogFnT *));
|
||||
if (collected == NULL) {
|
||||
pthread_mutex_unlock(&gListMutex);
|
||||
return calogFail(result, calogErrOomE, "publish: out of memory");
|
||||
return calogFail(result, calogErrOomE, "psPublish: out of memory");
|
||||
}
|
||||
for (index = 0; index < gCount; index++) {
|
||||
if (gEntries[index].topicLen == topicLen && memcmp(gEntries[index].topic, args[0].as.s.bytes, (size_t)topicLen) == 0) {
|
||||
|
|
@ -169,12 +169,12 @@ static int32_t pubsubSubscribe(CalogValueT *args, int32_t argCount, CalogValueT
|
|||
(void)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 2 || args[0].type != calogStringE || args[1].type != calogFnE) {
|
||||
return calogFail(result, calogErrArgE, "subscribe expects (topic, function)");
|
||||
return calogFail(result, calogErrArgE, "psSubscribe expects (topic, function)");
|
||||
}
|
||||
topicLen = args[0].as.s.length;
|
||||
topicCopy = (char *)malloc((size_t)topicLen + 1);
|
||||
if (topicCopy == NULL) {
|
||||
return calogFail(result, calogErrOomE, "subscribe: out of memory");
|
||||
return calogFail(result, calogErrOomE, "psSubscribe: out of memory");
|
||||
}
|
||||
memcpy(topicCopy, args[0].as.s.bytes, (size_t)topicLen);
|
||||
topicCopy[topicLen] = '\0';
|
||||
|
|
@ -187,7 +187,7 @@ static int32_t pubsubSubscribe(CalogValueT *args, int32_t argCount, CalogValueT
|
|||
if (grown == NULL) {
|
||||
pthread_mutex_unlock(&gListMutex);
|
||||
free(topicCopy);
|
||||
return calogFail(result, calogErrOomE, "subscribe: out of memory");
|
||||
return calogFail(result, calogErrOomE, "psSubscribe: out of memory");
|
||||
}
|
||||
gEntries = grown;
|
||||
gCap = newCap;
|
||||
|
|
@ -213,7 +213,7 @@ static int32_t pubsubUnsubscribe(CalogValueT *args, int32_t argCount, CalogValue
|
|||
(void)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 1 || (args[0].type != calogIntE && args[0].type != calogRealE)) {
|
||||
return calogFail(result, calogErrArgE, "unsubscribe expects (id)");
|
||||
return calogFail(result, calogErrArgE, "psUnsubscribe expects (id)");
|
||||
}
|
||||
id = (args[0].type == calogIntE) ? args[0].as.i : (int64_t)args[0].as.r;
|
||||
pthread_mutex_lock(&gListMutex);
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
// of a topic, across contexts and engines.
|
||||
//
|
||||
// Registers natives so a script can broadcast to any number of listeners by topic name:
|
||||
// subscribe(topic, fn) -> id register fn to receive messages published on topic
|
||||
// unsubscribe(id) -> nil drop the subscription with that id
|
||||
// publish(topic, msg) -> count deliver a copy of msg to every subscriber of topic,
|
||||
// returning how many subscribers were invoked
|
||||
// psSubscribe(topic, fn) -> id register fn to receive messages published on topic
|
||||
// psUnsubscribe(id) -> nil drop the subscription with that id
|
||||
// psPublish(topic, msg) -> count deliver a copy of msg to every subscriber of topic,
|
||||
// returning how many subscribers were invoked
|
||||
//
|
||||
// A subscriber is an ordinary calog function value, so each delivery runs in the
|
||||
// subscriber's OWN context/thread (marshalled like any callable) and receives its own deep
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
|
||||
#include "calog.h"
|
||||
|
||||
// Register the pubsub natives (subscribe, unsubscribe, publish) on a runtime. Idempotent
|
||||
// Register the pubsub natives (psSubscribe, psUnsubscribe, psPublish) on a runtime. Idempotent
|
||||
// across runtimes (shared registry).
|
||||
int32_t calogPubsubRegister(CalogT *calog);
|
||||
|
||||
|
|
|
|||
854
libs/calogSsh.c
Normal file
854
libs/calogSsh.c
Normal file
|
|
@ -0,0 +1,854 @@
|
|||
// calogSsh.c -- calog SSH library (see calogSsh.h). SSH command execution and SFTP file
|
||||
// transfer over the shared typed handle table, bound to libssh2. Every blocking call is an
|
||||
// inline native, so it stalls only the calling script's context thread. Sessions run in
|
||||
// libssh2 blocking mode; each connection handle is owner-scoped to the context that created
|
||||
// it (see SshConnT.ownerId).
|
||||
|
||||
#define _GNU_SOURCE
|
||||
|
||||
#include "calogSsh.h"
|
||||
|
||||
#include "calogHandle.h"
|
||||
|
||||
#include <netdb.h>
|
||||
#include <pthread.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdint.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <sys/socket.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#include <libssh2.h>
|
||||
#include <libssh2_sftp.h>
|
||||
|
||||
// Sole handle type tag for this library, distinct so a stray handle of another kind fails to
|
||||
// resolve here.
|
||||
#define SSH_TYPE_CONN 1u
|
||||
|
||||
#define SSH_PORT_MAX 65535
|
||||
|
||||
// Upper bound on a single read-to-EOF transfer (sshExec output, sftpGet file), matching
|
||||
// calogNet/calogHttp: without it a huge/endless remote source would grow an unbounded buffer
|
||||
// and OOM-kill the shared host process. Exceeding it fails with calogErrRangeE.
|
||||
#define SSH_MAX_TRANSFER (64 * 1024 * 1024)
|
||||
|
||||
// What a connection handle owns: the socket, the libssh2 session, a lazily-opened+cached SFTP
|
||||
// subsystem, and the id of the context that created it. ONLY that owner may operate on it.
|
||||
typedef struct SshConnT {
|
||||
int sock;
|
||||
LIBSSH2_SESSION *session;
|
||||
LIBSSH2_SFTP *sftp;
|
||||
uint64_t ownerId;
|
||||
} SshConnT;
|
||||
|
||||
// Process-wide SSH library state shared by every runtime that registers the natives; refCount
|
||||
// is one per registered runtime, so libssh2_exit runs (and the table is destroyed) only when
|
||||
// the LAST runtime shuts down.
|
||||
typedef struct SshLibT {
|
||||
CalogHandleTableT *handles;
|
||||
int32_t refCount;
|
||||
} SshLibT;
|
||||
|
||||
static pthread_mutex_t gSshLibMutex = PTHREAD_MUTEX_INITIALIZER;
|
||||
static SshLibT *gSshLib = NULL;
|
||||
|
||||
static int32_t sftpGet(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData);
|
||||
static int32_t sftpList(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData);
|
||||
static int32_t sftpMkdir(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData);
|
||||
static int32_t sftpPut(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData);
|
||||
static int32_t sftpRemove(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData);
|
||||
static int32_t sftpStat(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData);
|
||||
static int32_t sshAuthKey(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData);
|
||||
static int32_t sshAuthPassword(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData);
|
||||
static int32_t sshClose(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData);
|
||||
static void sshCloser(uint32_t type, void *resource);
|
||||
static int32_t sshConnect(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData);
|
||||
static int32_t sshDrain(LIBSSH2_CHANNEL *channel, int streamId, char **bytesOut, int64_t *lengthOut);
|
||||
static int32_t sshEnsureSftp(SshConnT *conn, CalogValueT *result);
|
||||
static int32_t sshExec(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData);
|
||||
static int32_t sshMapSetBool(CalogAggT *map, const char *key, bool value);
|
||||
static int32_t sshMapSetInt(CalogAggT *map, const char *key, int64_t value);
|
||||
static int32_t sshMapSetStr(CalogAggT *map, const char *key, const char *bytes, int64_t length);
|
||||
static int32_t sshResolve(SshLibT *lib, int64_t handle, CalogValueT *result, SshConnT **out);
|
||||
|
||||
|
||||
int32_t calogSshRegister(CalogT *calog) {
|
||||
pthread_mutex_lock(&gSshLibMutex);
|
||||
if (gSshLib == NULL) {
|
||||
SshLibT *lib;
|
||||
lib = (SshLibT *)calloc(1, sizeof(*lib));
|
||||
if (lib == NULL) {
|
||||
pthread_mutex_unlock(&gSshLibMutex);
|
||||
return calogErrOomE;
|
||||
}
|
||||
lib->handles = calogHandleTableCreate();
|
||||
if (lib->handles == NULL) {
|
||||
free(lib);
|
||||
pthread_mutex_unlock(&gSshLibMutex);
|
||||
return calogErrOomE;
|
||||
}
|
||||
// libssh2_init uses global state and is not thread safe; the lib mutex serialises it.
|
||||
if (libssh2_init(0) != 0) {
|
||||
calogHandleTableDestroy(lib->handles, NULL);
|
||||
free(lib);
|
||||
pthread_mutex_unlock(&gSshLibMutex);
|
||||
return calogErrUnsupportedE;
|
||||
}
|
||||
gSshLib = lib;
|
||||
}
|
||||
gSshLib->refCount++;
|
||||
pthread_mutex_unlock(&gSshLibMutex);
|
||||
calogRegisterInline(calog, "sshConnect", sshConnect, gSshLib);
|
||||
calogRegisterInline(calog, "sshAuthPassword", sshAuthPassword, gSshLib);
|
||||
calogRegisterInline(calog, "sshAuthKey", sshAuthKey, gSshLib);
|
||||
calogRegisterInline(calog, "sshExec", sshExec, gSshLib);
|
||||
calogRegisterInline(calog, "sshClose", sshClose, gSshLib);
|
||||
calogRegisterInline(calog, "sftpGet", sftpGet, gSshLib);
|
||||
calogRegisterInline(calog, "sftpPut", sftpPut, gSshLib);
|
||||
calogRegisterInline(calog, "sftpList", sftpList, gSshLib);
|
||||
calogRegisterInline(calog, "sftpStat", sftpStat, gSshLib);
|
||||
calogRegisterInline(calog, "sftpRemove", sftpRemove, gSshLib);
|
||||
calogRegisterInline(calog, "sftpMkdir", sftpMkdir, gSshLib);
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
||||
void calogSshShutdown(void) {
|
||||
pthread_mutex_lock(&gSshLibMutex);
|
||||
if (gSshLib == NULL) {
|
||||
pthread_mutex_unlock(&gSshLibMutex);
|
||||
return;
|
||||
}
|
||||
gSshLib->refCount--;
|
||||
if (gSshLib->refCount <= 0) {
|
||||
calogHandleTableDestroy(gSshLib->handles, sshCloser);
|
||||
libssh2_exit();
|
||||
free(gSshLib);
|
||||
gSshLib = NULL;
|
||||
}
|
||||
pthread_mutex_unlock(&gSshLibMutex);
|
||||
}
|
||||
|
||||
|
||||
static int32_t sftpGet(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData) {
|
||||
SshLibT *lib;
|
||||
SshConnT *conn;
|
||||
LIBSSH2_SFTP_HANDLE *file;
|
||||
char *buffer;
|
||||
size_t cap;
|
||||
size_t length;
|
||||
int32_t status;
|
||||
|
||||
lib = (SshLibT *)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 2 || args[0].type != calogIntE || args[1].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "sftpGet expects (handle, remotePath)");
|
||||
}
|
||||
status = sshResolve(lib, args[0].as.i, result, &conn);
|
||||
if (status != calogOkE) {
|
||||
return status;
|
||||
}
|
||||
status = sshEnsureSftp(conn, result);
|
||||
if (status != calogOkE) {
|
||||
return status;
|
||||
}
|
||||
file = libssh2_sftp_open(conn->sftp, args[1].as.s.bytes, LIBSSH2_FXF_READ, 0);
|
||||
if (file == NULL) {
|
||||
return calogFail(result, calogErrNotFoundE, "sftpGet: could not open the remote file");
|
||||
}
|
||||
buffer = NULL;
|
||||
cap = 0;
|
||||
length = 0;
|
||||
for (;;) {
|
||||
ssize_t n;
|
||||
if (length == cap) {
|
||||
size_t want;
|
||||
char *grown;
|
||||
if (cap >= SSH_MAX_TRANSFER) {
|
||||
free(buffer);
|
||||
libssh2_sftp_close(file);
|
||||
return calogFail(result, calogErrRangeE, "sftpGet: file exceeds the maximum transfer size");
|
||||
}
|
||||
want = (cap == 0) ? 65536 : cap * CALOG_GROWTH_FACTOR;
|
||||
if (want > SSH_MAX_TRANSFER) {
|
||||
want = SSH_MAX_TRANSFER;
|
||||
}
|
||||
grown = (char *)realloc(buffer, want);
|
||||
if (grown == NULL) {
|
||||
free(buffer);
|
||||
libssh2_sftp_close(file);
|
||||
return calogFail(result, calogErrOomE, "sftpGet: out of memory");
|
||||
}
|
||||
buffer = grown;
|
||||
cap = want;
|
||||
}
|
||||
n = libssh2_sftp_read(file, buffer + length, cap - length);
|
||||
if (n > 0) {
|
||||
length += (size_t)n;
|
||||
} else if (n == 0) {
|
||||
break;
|
||||
} else if (n == LIBSSH2_ERROR_EAGAIN) {
|
||||
continue;
|
||||
} else {
|
||||
free(buffer);
|
||||
libssh2_sftp_close(file);
|
||||
return calogFail(result, calogErrArgE, "sftpGet: read failed");
|
||||
}
|
||||
}
|
||||
libssh2_sftp_close(file);
|
||||
status = calogValueString(result, (buffer != NULL) ? buffer : "", (int64_t)length);
|
||||
free(buffer);
|
||||
return status;
|
||||
}
|
||||
|
||||
|
||||
static int32_t sftpList(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData) {
|
||||
SshLibT *lib;
|
||||
SshConnT *conn;
|
||||
LIBSSH2_SFTP_HANDLE *dir;
|
||||
CalogAggT *list;
|
||||
int32_t status;
|
||||
|
||||
lib = (SshLibT *)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 2 || args[0].type != calogIntE || args[1].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "sftpList expects (handle, path)");
|
||||
}
|
||||
status = sshResolve(lib, args[0].as.i, result, &conn);
|
||||
if (status != calogOkE) {
|
||||
return status;
|
||||
}
|
||||
status = sshEnsureSftp(conn, result);
|
||||
if (status != calogOkE) {
|
||||
return status;
|
||||
}
|
||||
dir = libssh2_sftp_opendir(conn->sftp, args[1].as.s.bytes);
|
||||
if (dir == NULL) {
|
||||
return calogFail(result, calogErrArgE, "sftpList: could not open the directory");
|
||||
}
|
||||
status = calogAggCreate(&list, calogListE);
|
||||
if (status != calogOkE) {
|
||||
libssh2_sftp_closedir(dir);
|
||||
return calogFail(result, status, "sftpList: out of memory");
|
||||
}
|
||||
for (;;) {
|
||||
LIBSSH2_SFTP_ATTRIBUTES attrs;
|
||||
CalogAggT *entry;
|
||||
CalogValueT entryValue;
|
||||
char name[512];
|
||||
int rc;
|
||||
|
||||
rc = libssh2_sftp_readdir(dir, name, sizeof(name), &attrs);
|
||||
if (rc == 0) {
|
||||
break;
|
||||
}
|
||||
if (rc == LIBSSH2_ERROR_EAGAIN) {
|
||||
continue;
|
||||
}
|
||||
if (rc < 0) {
|
||||
calogAggFree(list);
|
||||
libssh2_sftp_closedir(dir);
|
||||
return calogFail(result, calogErrArgE, "sftpList: read failed");
|
||||
}
|
||||
// Skip "." and ".." so callers see only real entries.
|
||||
if ((rc == 1 && name[0] == '.') || (rc == 2 && name[0] == '.' && name[1] == '.')) {
|
||||
continue;
|
||||
}
|
||||
status = calogAggCreate(&entry, calogMapE);
|
||||
if (status != calogOkE) {
|
||||
calogAggFree(list);
|
||||
libssh2_sftp_closedir(dir);
|
||||
return calogFail(result, status, "sftpList: out of memory");
|
||||
}
|
||||
status = sshMapSetStr(entry, "name", name, (int64_t)rc);
|
||||
if (status == calogOkE) {
|
||||
int64_t size;
|
||||
size = (attrs.flags & LIBSSH2_SFTP_ATTR_SIZE) ? (int64_t)attrs.filesize : 0;
|
||||
status = sshMapSetInt(entry, "size", size);
|
||||
}
|
||||
if (status == calogOkE) {
|
||||
bool isDir;
|
||||
isDir = (attrs.flags & LIBSSH2_SFTP_ATTR_PERMISSIONS) && LIBSSH2_SFTP_S_ISDIR(attrs.permissions);
|
||||
status = sshMapSetBool(entry, "isDir", isDir);
|
||||
}
|
||||
if (status != calogOkE) {
|
||||
calogAggFree(entry);
|
||||
calogAggFree(list);
|
||||
libssh2_sftp_closedir(dir);
|
||||
return calogFail(result, status, "sftpList: failed to build an entry");
|
||||
}
|
||||
calogValueAgg(&entryValue, entry);
|
||||
status = calogAggPush(list, &entryValue);
|
||||
if (status != calogOkE) {
|
||||
calogValueFree(&entryValue);
|
||||
calogAggFree(list);
|
||||
libssh2_sftp_closedir(dir);
|
||||
return calogFail(result, status, "sftpList: out of memory");
|
||||
}
|
||||
}
|
||||
libssh2_sftp_closedir(dir);
|
||||
calogValueAgg(result, list);
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
||||
static int32_t sftpMkdir(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData) {
|
||||
SshLibT *lib;
|
||||
SshConnT *conn;
|
||||
int32_t status;
|
||||
|
||||
lib = (SshLibT *)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 2 || args[0].type != calogIntE || args[1].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "sftpMkdir expects (handle, path)");
|
||||
}
|
||||
status = sshResolve(lib, args[0].as.i, result, &conn);
|
||||
if (status != calogOkE) {
|
||||
return status;
|
||||
}
|
||||
status = sshEnsureSftp(conn, result);
|
||||
if (status != calogOkE) {
|
||||
return status;
|
||||
}
|
||||
if (libssh2_sftp_mkdir(conn->sftp, args[1].as.s.bytes, 0755) != 0) {
|
||||
return calogFail(result, calogErrArgE, "sftpMkdir: could not create the directory");
|
||||
}
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
||||
static int32_t sftpPut(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData) {
|
||||
SshLibT *lib;
|
||||
SshConnT *conn;
|
||||
LIBSSH2_SFTP_HANDLE *file;
|
||||
int64_t total;
|
||||
int32_t status;
|
||||
|
||||
lib = (SshLibT *)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 3 || args[0].type != calogIntE || args[1].type != calogStringE || args[2].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "sftpPut expects (handle, remotePath, data)");
|
||||
}
|
||||
status = sshResolve(lib, args[0].as.i, result, &conn);
|
||||
if (status != calogOkE) {
|
||||
return status;
|
||||
}
|
||||
status = sshEnsureSftp(conn, result);
|
||||
if (status != calogOkE) {
|
||||
return status;
|
||||
}
|
||||
file = libssh2_sftp_open(conn->sftp, args[1].as.s.bytes,
|
||||
LIBSSH2_FXF_WRITE | LIBSSH2_FXF_CREAT | LIBSSH2_FXF_TRUNC, 0644);
|
||||
if (file == NULL) {
|
||||
return calogFail(result, calogErrArgE, "sftpPut: could not open the remote file");
|
||||
}
|
||||
total = 0;
|
||||
while (total < args[2].as.s.length) {
|
||||
ssize_t n;
|
||||
n = libssh2_sftp_write(file, args[2].as.s.bytes + total, (size_t)(args[2].as.s.length - total));
|
||||
if (n < 0) {
|
||||
if (n == LIBSSH2_ERROR_EAGAIN) {
|
||||
continue;
|
||||
}
|
||||
libssh2_sftp_close(file);
|
||||
return calogFail(result, calogErrArgE, "sftpPut: write failed");
|
||||
}
|
||||
total += (int64_t)n;
|
||||
}
|
||||
libssh2_sftp_close(file);
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
||||
static int32_t sftpRemove(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData) {
|
||||
SshLibT *lib;
|
||||
SshConnT *conn;
|
||||
int32_t status;
|
||||
|
||||
lib = (SshLibT *)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 2 || args[0].type != calogIntE || args[1].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "sftpRemove expects (handle, path)");
|
||||
}
|
||||
status = sshResolve(lib, args[0].as.i, result, &conn);
|
||||
if (status != calogOkE) {
|
||||
return status;
|
||||
}
|
||||
status = sshEnsureSftp(conn, result);
|
||||
if (status != calogOkE) {
|
||||
return status;
|
||||
}
|
||||
if (libssh2_sftp_unlink(conn->sftp, args[1].as.s.bytes) != 0) {
|
||||
return calogFail(result, calogErrArgE, "sftpRemove: could not remove the path");
|
||||
}
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
||||
static int32_t sftpStat(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData) {
|
||||
SshLibT *lib;
|
||||
SshConnT *conn;
|
||||
LIBSSH2_SFTP_ATTRIBUTES attrs;
|
||||
CalogAggT *map;
|
||||
int64_t size;
|
||||
bool isDir;
|
||||
int rc;
|
||||
int32_t status;
|
||||
|
||||
lib = (SshLibT *)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 2 || args[0].type != calogIntE || args[1].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "sftpStat expects (handle, path)");
|
||||
}
|
||||
status = sshResolve(lib, args[0].as.i, result, &conn);
|
||||
if (status != calogOkE) {
|
||||
return status;
|
||||
}
|
||||
status = sshEnsureSftp(conn, result);
|
||||
if (status != calogOkE) {
|
||||
return status;
|
||||
}
|
||||
rc = libssh2_sftp_stat(conn->sftp, args[1].as.s.bytes, &attrs);
|
||||
if (rc < 0) {
|
||||
// A missing path (or any stat failure) reports as nil rather than an error.
|
||||
return calogOkE;
|
||||
}
|
||||
status = calogAggCreate(&map, calogMapE);
|
||||
if (status != calogOkE) {
|
||||
return calogFail(result, status, "sftpStat: out of memory");
|
||||
}
|
||||
size = (attrs.flags & LIBSSH2_SFTP_ATTR_SIZE) ? (int64_t)attrs.filesize : 0;
|
||||
isDir = (attrs.flags & LIBSSH2_SFTP_ATTR_PERMISSIONS) && LIBSSH2_SFTP_S_ISDIR(attrs.permissions);
|
||||
status = sshMapSetInt(map, "size", size);
|
||||
if (status == calogOkE) {
|
||||
status = sshMapSetBool(map, "isDir", isDir);
|
||||
}
|
||||
if (status != calogOkE) {
|
||||
calogAggFree(map);
|
||||
return calogFail(result, status, "sftpStat: failed to build the result");
|
||||
}
|
||||
calogValueAgg(result, map);
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
||||
static int32_t sshAuthKey(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData) {
|
||||
SshLibT *lib;
|
||||
SshConnT *conn;
|
||||
const char *publicKey;
|
||||
const char *passphrase;
|
||||
int rc;
|
||||
int32_t status;
|
||||
|
||||
lib = (SshLibT *)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount < 3 || argCount > 5 || args[0].type != calogIntE || args[1].type != calogStringE || args[2].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "sshAuthKey expects (handle, user, privateKeyPath[, publicKeyPath, passphrase])");
|
||||
}
|
||||
publicKey = NULL;
|
||||
passphrase = NULL;
|
||||
if (argCount >= 4) {
|
||||
if (args[3].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "sshAuthKey: publicKeyPath must be a string");
|
||||
}
|
||||
if (args[3].as.s.length > 0) {
|
||||
publicKey = args[3].as.s.bytes;
|
||||
}
|
||||
}
|
||||
if (argCount == 5) {
|
||||
if (args[4].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "sshAuthKey: passphrase must be a string");
|
||||
}
|
||||
if (args[4].as.s.length > 0) {
|
||||
passphrase = args[4].as.s.bytes;
|
||||
}
|
||||
}
|
||||
status = sshResolve(lib, args[0].as.i, result, &conn);
|
||||
if (status != calogOkE) {
|
||||
return status;
|
||||
}
|
||||
rc = libssh2_userauth_publickey_fromfile_ex(conn->session, args[1].as.s.bytes, (unsigned int)args[1].as.s.length,
|
||||
publicKey, args[2].as.s.bytes, passphrase);
|
||||
calogValueBool(result, rc == 0);
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
||||
static int32_t sshAuthPassword(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData) {
|
||||
SshLibT *lib;
|
||||
SshConnT *conn;
|
||||
int rc;
|
||||
int32_t status;
|
||||
|
||||
lib = (SshLibT *)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 3 || args[0].type != calogIntE || args[1].type != calogStringE || args[2].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "sshAuthPassword expects (handle, user, password)");
|
||||
}
|
||||
status = sshResolve(lib, args[0].as.i, result, &conn);
|
||||
if (status != calogOkE) {
|
||||
return status;
|
||||
}
|
||||
rc = libssh2_userauth_password_ex(conn->session, args[1].as.s.bytes, (unsigned int)args[1].as.s.length,
|
||||
args[2].as.s.bytes, (unsigned int)args[2].as.s.length, NULL);
|
||||
calogValueBool(result, rc == 0);
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
||||
static int32_t sshClose(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData) {
|
||||
SshLibT *lib;
|
||||
SshConnT *conn;
|
||||
|
||||
lib = (SshLibT *)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 1 || args[0].type != calogIntE) {
|
||||
return calogFail(result, calogErrArgE, "sshClose expects (handle)");
|
||||
}
|
||||
// Peek first to enforce owner-scoping; because the owner is a single thread, the peek and
|
||||
// the remove below cannot race another context claiming this handle.
|
||||
conn = (SshConnT *)calogHandleGet(lib->handles, args[0].as.i, SSH_TYPE_CONN);
|
||||
if (conn == NULL) {
|
||||
return calogFail(result, calogErrNotFoundE, "sshClose: invalid ssh handle");
|
||||
}
|
||||
if (conn->ownerId != calogCurrentId()) {
|
||||
return calogFail(result, calogErrArgE, "sshClose: ssh handle belongs to another context");
|
||||
}
|
||||
conn = (SshConnT *)calogHandleRemove(lib->handles, args[0].as.i, SSH_TYPE_CONN);
|
||||
if (conn == NULL) {
|
||||
return calogFail(result, calogErrNotFoundE, "sshClose: invalid ssh handle");
|
||||
}
|
||||
if (conn->sftp != NULL) {
|
||||
libssh2_sftp_shutdown(conn->sftp);
|
||||
}
|
||||
libssh2_session_disconnect(conn->session, "calog: closing");
|
||||
libssh2_session_free(conn->session);
|
||||
close(conn->sock);
|
||||
free(conn);
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
||||
static void sshCloser(uint32_t type, void *resource) {
|
||||
SshConnT *conn;
|
||||
|
||||
(void)type;
|
||||
conn = (SshConnT *)resource;
|
||||
if (conn->sftp != NULL) {
|
||||
libssh2_sftp_shutdown(conn->sftp);
|
||||
}
|
||||
libssh2_session_disconnect(conn->session, "calog: shutdown");
|
||||
libssh2_session_free(conn->session);
|
||||
close(conn->sock);
|
||||
free(conn);
|
||||
}
|
||||
|
||||
|
||||
static int32_t sshConnect(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData) {
|
||||
SshLibT *lib;
|
||||
SshConnT *conn;
|
||||
LIBSSH2_SESSION *session;
|
||||
struct addrinfo hints;
|
||||
struct addrinfo *res;
|
||||
struct addrinfo *rp;
|
||||
char portBuffer[8];
|
||||
int64_t port;
|
||||
int64_t handle;
|
||||
int fd;
|
||||
int rc;
|
||||
|
||||
lib = (SshLibT *)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount < 1 || argCount > 2 || args[0].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "sshConnect expects (host[, port])");
|
||||
}
|
||||
port = 22;
|
||||
if (argCount == 2) {
|
||||
if (args[1].type != calogIntE) {
|
||||
return calogFail(result, calogErrArgE, "sshConnect expects (host[, port])");
|
||||
}
|
||||
port = args[1].as.i;
|
||||
}
|
||||
if (port < 1 || port > SSH_PORT_MAX) {
|
||||
return calogFail(result, calogErrArgE, "sshConnect: port out of range");
|
||||
}
|
||||
memset(&hints, 0, sizeof(hints));
|
||||
hints.ai_family = AF_UNSPEC;
|
||||
hints.ai_socktype = SOCK_STREAM;
|
||||
snprintf(portBuffer, sizeof(portBuffer), "%u", (unsigned int)port);
|
||||
rc = getaddrinfo(args[0].as.s.bytes, portBuffer, &hints, &res);
|
||||
if (rc != 0) {
|
||||
return calogFail(result, calogErrArgE, gai_strerror(rc));
|
||||
}
|
||||
fd = -1;
|
||||
for (rp = res; rp != NULL; rp = rp->ai_next) {
|
||||
fd = socket(rp->ai_family, rp->ai_socktype, rp->ai_protocol);
|
||||
if (fd < 0) {
|
||||
continue;
|
||||
}
|
||||
if (connect(fd, rp->ai_addr, rp->ai_addrlen) == 0) {
|
||||
break;
|
||||
}
|
||||
close(fd);
|
||||
fd = -1;
|
||||
}
|
||||
freeaddrinfo(res);
|
||||
if (fd < 0) {
|
||||
return calogFail(result, calogErrArgE, "sshConnect: could not connect");
|
||||
}
|
||||
session = libssh2_session_init();
|
||||
if (session == NULL) {
|
||||
close(fd);
|
||||
return calogFail(result, calogErrOomE, "sshConnect: could not create a session");
|
||||
}
|
||||
libssh2_session_set_blocking(session, 1);
|
||||
if (libssh2_session_handshake(session, fd) != 0) {
|
||||
libssh2_session_free(session);
|
||||
close(fd);
|
||||
return calogFail(result, calogErrArgE, "sshConnect: SSH handshake failed");
|
||||
}
|
||||
conn = (SshConnT *)calloc(1, sizeof(*conn));
|
||||
if (conn == NULL) {
|
||||
libssh2_session_disconnect(session, "out of memory");
|
||||
libssh2_session_free(session);
|
||||
close(fd);
|
||||
return calogFail(result, calogErrOomE, "sshConnect: out of memory");
|
||||
}
|
||||
conn->sock = fd;
|
||||
conn->session = session;
|
||||
conn->sftp = NULL;
|
||||
conn->ownerId = calogCurrentId();
|
||||
handle = calogHandleAdd(lib->handles, SSH_TYPE_CONN, conn);
|
||||
if (handle == 0) {
|
||||
libssh2_session_disconnect(session, "out of memory");
|
||||
libssh2_session_free(session);
|
||||
close(fd);
|
||||
free(conn);
|
||||
return calogFail(result, calogErrOomE, "sshConnect: out of memory");
|
||||
}
|
||||
calogValueInt(result, handle);
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
||||
// Drain one channel stream (0 = stdout, SSH_EXTENDED_DATA_STDERR = stderr) into a fresh
|
||||
// growable buffer, binary-safe. Returns calogOkE with *bytesOut owned by the caller (freed on
|
||||
// every path), or an error (the buffer is released here on failure).
|
||||
static int32_t sshDrain(LIBSSH2_CHANNEL *channel, int streamId, char **bytesOut, int64_t *lengthOut) {
|
||||
char *buffer;
|
||||
size_t cap;
|
||||
size_t length;
|
||||
|
||||
buffer = NULL;
|
||||
cap = 0;
|
||||
length = 0;
|
||||
for (;;) {
|
||||
ssize_t n;
|
||||
if (length == cap) {
|
||||
size_t want;
|
||||
char *grown;
|
||||
if (cap >= SSH_MAX_TRANSFER) {
|
||||
free(buffer);
|
||||
return calogErrRangeE;
|
||||
}
|
||||
want = (cap == 0) ? 4096 : cap * CALOG_GROWTH_FACTOR;
|
||||
if (want > SSH_MAX_TRANSFER) {
|
||||
want = SSH_MAX_TRANSFER;
|
||||
}
|
||||
grown = (char *)realloc(buffer, want);
|
||||
if (grown == NULL) {
|
||||
free(buffer);
|
||||
return calogErrOomE;
|
||||
}
|
||||
buffer = grown;
|
||||
cap = want;
|
||||
}
|
||||
n = libssh2_channel_read_ex(channel, streamId, buffer + length, cap - length);
|
||||
if (n > 0) {
|
||||
length += (size_t)n;
|
||||
} else if (n == 0) {
|
||||
break;
|
||||
} else if (n == LIBSSH2_ERROR_EAGAIN) {
|
||||
continue;
|
||||
} else {
|
||||
free(buffer);
|
||||
return calogErrArgE;
|
||||
}
|
||||
}
|
||||
*bytesOut = buffer;
|
||||
*lengthOut = (int64_t)length;
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
||||
// Open the SFTP subsystem on the connection if not already open, caching it for reuse.
|
||||
static int32_t sshEnsureSftp(SshConnT *conn, CalogValueT *result) {
|
||||
LIBSSH2_SFTP *sftp;
|
||||
|
||||
if (conn->sftp != NULL) {
|
||||
return calogOkE;
|
||||
}
|
||||
sftp = libssh2_sftp_init(conn->session);
|
||||
if (sftp == NULL) {
|
||||
return calogFail(result, calogErrArgE, "could not start an SFTP session");
|
||||
}
|
||||
conn->sftp = sftp;
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
||||
static int32_t sshExec(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData) {
|
||||
SshLibT *lib;
|
||||
SshConnT *conn;
|
||||
LIBSSH2_CHANNEL *channel;
|
||||
CalogAggT *map;
|
||||
char *outBytes;
|
||||
char *errBytes;
|
||||
int64_t outLength;
|
||||
int64_t errLength;
|
||||
int exitCode;
|
||||
int32_t status;
|
||||
|
||||
lib = (SshLibT *)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 2 || args[0].type != calogIntE || args[1].type != calogStringE) {
|
||||
return calogFail(result, calogErrArgE, "sshExec expects (handle, command)");
|
||||
}
|
||||
status = sshResolve(lib, args[0].as.i, result, &conn);
|
||||
if (status != calogOkE) {
|
||||
return status;
|
||||
}
|
||||
channel = libssh2_channel_open_session(conn->session);
|
||||
if (channel == NULL) {
|
||||
return calogFail(result, calogErrArgE, "sshExec: could not open a channel");
|
||||
}
|
||||
if (args[1].as.s.length > SSH_MAX_TRANSFER) {
|
||||
libssh2_channel_free(channel);
|
||||
return calogFail(result, calogErrRangeE, "sshExec: command too long");
|
||||
}
|
||||
// Not libssh2_channel_exec (it derives the length with strlen, truncating a command with an
|
||||
// embedded NUL); pass the binary-safe length explicitly.
|
||||
if (libssh2_channel_process_startup(channel, "exec", 4u, args[1].as.s.bytes, (unsigned int)args[1].as.s.length) != 0) {
|
||||
libssh2_channel_free(channel);
|
||||
return calogFail(result, calogErrArgE, "sshExec: could not start the command");
|
||||
}
|
||||
// Blocking reads: drain stdout to EOF, then stderr (libssh2 buffers the other stream).
|
||||
status = sshDrain(channel, 0, &outBytes, &outLength);
|
||||
if (status != calogOkE) {
|
||||
libssh2_channel_free(channel);
|
||||
return calogFail(result, status, "sshExec: out of memory");
|
||||
}
|
||||
status = sshDrain(channel, SSH_EXTENDED_DATA_STDERR, &errBytes, &errLength);
|
||||
if (status != calogOkE) {
|
||||
free(outBytes);
|
||||
libssh2_channel_free(channel);
|
||||
return calogFail(result, status, "sshExec: out of memory");
|
||||
}
|
||||
libssh2_channel_close(channel);
|
||||
exitCode = libssh2_channel_get_exit_status(channel);
|
||||
libssh2_channel_free(channel);
|
||||
status = calogAggCreate(&map, calogMapE);
|
||||
if (status != calogOkE) {
|
||||
free(outBytes);
|
||||
free(errBytes);
|
||||
return calogFail(result, status, "sshExec: out of memory");
|
||||
}
|
||||
status = sshMapSetStr(map, "stdout", outBytes, outLength);
|
||||
if (status == calogOkE) {
|
||||
status = sshMapSetStr(map, "stderr", errBytes, errLength);
|
||||
}
|
||||
if (status == calogOkE) {
|
||||
status = sshMapSetInt(map, "exitCode", (int64_t)exitCode);
|
||||
}
|
||||
free(outBytes);
|
||||
free(errBytes);
|
||||
if (status != calogOkE) {
|
||||
calogAggFree(map);
|
||||
return calogFail(result, status, "sshExec: failed to build the result");
|
||||
}
|
||||
calogValueAgg(result, map);
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
||||
// Set map[key] = boolean. On failure the (freshly built) key is released; the scalar needs
|
||||
// none.
|
||||
static int32_t sshMapSetBool(CalogAggT *map, const char *key, bool value) {
|
||||
CalogValueT keyValue;
|
||||
CalogValueT boolValue;
|
||||
int32_t status;
|
||||
|
||||
status = calogValueString(&keyValue, key, (int64_t)strlen(key));
|
||||
if (status != calogOkE) {
|
||||
return status;
|
||||
}
|
||||
calogValueBool(&boolValue, value);
|
||||
status = calogAggSet(map, &keyValue, &boolValue);
|
||||
if (status != calogOkE) {
|
||||
calogValueFree(&keyValue);
|
||||
}
|
||||
return status;
|
||||
}
|
||||
|
||||
|
||||
// Set map[key] = integer. On failure the (freshly built) key is released; the scalar needs
|
||||
// none.
|
||||
static int32_t sshMapSetInt(CalogAggT *map, const char *key, int64_t value) {
|
||||
CalogValueT keyValue;
|
||||
CalogValueT intValue;
|
||||
int32_t status;
|
||||
|
||||
status = calogValueString(&keyValue, key, (int64_t)strlen(key));
|
||||
if (status != calogOkE) {
|
||||
return status;
|
||||
}
|
||||
calogValueInt(&intValue, value);
|
||||
status = calogAggSet(map, &keyValue, &intValue);
|
||||
if (status != calogOkE) {
|
||||
calogValueFree(&keyValue);
|
||||
}
|
||||
return status;
|
||||
}
|
||||
|
||||
|
||||
// Set map[key] = binary-safe string. On failure any built values are released.
|
||||
static int32_t sshMapSetStr(CalogAggT *map, const char *key, const char *bytes, int64_t length) {
|
||||
CalogValueT keyValue;
|
||||
CalogValueT stringValue;
|
||||
int32_t status;
|
||||
|
||||
status = calogValueString(&keyValue, key, (int64_t)strlen(key));
|
||||
if (status != calogOkE) {
|
||||
return status;
|
||||
}
|
||||
status = calogValueString(&stringValue, bytes, length);
|
||||
if (status != calogOkE) {
|
||||
calogValueFree(&keyValue);
|
||||
return status;
|
||||
}
|
||||
status = calogAggSet(map, &keyValue, &stringValue);
|
||||
if (status != calogOkE) {
|
||||
calogValueFree(&keyValue);
|
||||
calogValueFree(&stringValue);
|
||||
}
|
||||
return status;
|
||||
}
|
||||
|
||||
|
||||
// Look up a connection handle and enforce owner-scoping. Not-found resolves to
|
||||
// calogErrNotFoundE; a handle owned by another context resolves to calogErrArgE.
|
||||
static int32_t sshResolve(SshLibT *lib, int64_t handle, CalogValueT *result, SshConnT **out) {
|
||||
SshConnT *conn;
|
||||
|
||||
conn = (SshConnT *)calogHandleGet(lib->handles, handle, SSH_TYPE_CONN);
|
||||
if (conn == NULL) {
|
||||
return calogFail(result, calogErrNotFoundE, "invalid ssh handle");
|
||||
}
|
||||
if (conn->ownerId != calogCurrentId()) {
|
||||
return calogFail(result, calogErrArgE, "ssh handle belongs to another context");
|
||||
}
|
||||
*out = conn;
|
||||
return calogOkE;
|
||||
}
|
||||
38
libs/calogSsh.h
Normal file
38
libs/calogSsh.h
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
// calogSsh.h -- calog SSH/SFTP library (built on libssh2).
|
||||
//
|
||||
// Registers inline natives that a script of any engine can call:
|
||||
// sshConnect(host[, port]) -> handle (port defaults to 22)
|
||||
// sshAuthPassword(handle, user, password) -> bool
|
||||
// sshAuthKey(handle, user, privateKeyPath[, publicKeyPath, passphrase]) -> bool
|
||||
// sshExec(handle, command) -> { stdout, stderr, exitCode }
|
||||
// sshClose(handle)
|
||||
// sftpGet(handle, remotePath) -> data (whole file, binary-safe)
|
||||
// sftpPut(handle, remotePath, data) (create|truncate, mode 0644)
|
||||
// sftpList(handle, path) -> [ { name, size, isDir }, ... ]
|
||||
// sftpStat(handle, path) -> { size, isDir } (nil if the path is missing)
|
||||
// sftpRemove(handle, path)
|
||||
// sftpMkdir(handle, path) (mode 0755)
|
||||
// Payloads are binary-safe strings. The blocking natives are INLINE, so they stall only the
|
||||
// calling script's context thread, not the host. Sessions are put in libssh2 blocking mode.
|
||||
// A connection handle belongs to the context that created it: using one from another context
|
||||
// fails (calogErrArgE) rather than racing. The SFTP subsystem is opened lazily on the first
|
||||
// sftp* call and cached on the connection. Handles are NOT reference-counted; closing one
|
||||
// while another context is mid-operation is undefined (use-after-free). Hostname resolution
|
||||
// uses getaddrinfo (works in dynamic builds; a fully-static glibc build cannot resolve names
|
||||
// -- connect by IP, or link musl).
|
||||
|
||||
#ifndef CALOG_SSH_H
|
||||
#define CALOG_SSH_H
|
||||
|
||||
#include "calog.h"
|
||||
|
||||
// Register the SSH natives on a runtime. Idempotent across runtimes (they share a
|
||||
// process-wide connection registry and a single libssh2_init). Returns calogOkE or an error.
|
||||
int32_t calogSshRegister(CalogT *calog);
|
||||
|
||||
// Close any still-open connections, free the process-wide registry, and call libssh2_exit
|
||||
// when the last runtime unregisters. Call it AFTER the runtime is torn down (calogDestroy),
|
||||
// since it invalidates the natives' state.
|
||||
void calogSshShutdown(void);
|
||||
|
||||
#endif
|
||||
|
|
@ -117,40 +117,40 @@ int main(void) {
|
|||
|
||||
ctx = calogContextOpen(calog, &calogLuaEngine);
|
||||
calogContextEval(ctx,
|
||||
"report(1, #hashSha256('abc'))\n" // 64 hex chars
|
||||
"report(2, hashSha256('abc') == 'ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad' and 1 or 0)\n" // known vector
|
||||
"report(3, hashSha1('abc') == 'a9993e364706816aba3e25717850c26c9cd0d89d' and 1 or 0)\n" // known vector
|
||||
"report(4, hmacSha256('key', 'The quick brown fox jumps over the lazy dog') == 'f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8' and 1 or 0)\n" // known vector
|
||||
"report(5, base64Encode('abc') == 'YWJj' and 1 or 0)\n" // known encoding
|
||||
"report(6, base64Decode(base64Encode('hello')) == 'hello' and 1 or 0)\n" // round-trip, one pad byte
|
||||
"report(7, hexEncode('abc') == '616263' and 1 or 0)\n" // known encoding
|
||||
"report(8, hexDecode(hexEncode('Hello!')) == 'Hello!' and 1 or 0)\n" // round-trip
|
||||
"report(9, #randomBytes(16))\n" // 16 bytes
|
||||
"local a = uuid()\n"
|
||||
"local b = uuid()\n"
|
||||
"report(1, #cryptoHashSha256('abc'))\n" // 64 hex chars
|
||||
"report(2, cryptoHashSha256('abc') == 'ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad' and 1 or 0)\n" // known vector
|
||||
"report(3, cryptoHashSha1('abc') == 'a9993e364706816aba3e25717850c26c9cd0d89d' and 1 or 0)\n" // known vector
|
||||
"report(4, cryptoHmacSha256('key', 'The quick brown fox jumps over the lazy dog') == 'f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8' and 1 or 0)\n" // known vector
|
||||
"report(5, cryptoBase64Encode('abc') == 'YWJj' and 1 or 0)\n" // known encoding
|
||||
"report(6, cryptoBase64Decode(cryptoBase64Encode('hello')) == 'hello' and 1 or 0)\n" // round-trip, one pad byte
|
||||
"report(7, cryptoHexEncode('abc') == '616263' and 1 or 0)\n" // known encoding
|
||||
"report(8, cryptoHexDecode(cryptoHexEncode('Hello!')) == 'Hello!' and 1 or 0)\n" // round-trip
|
||||
"report(9, #cryptoRandomBytes(16))\n" // 16 bytes
|
||||
"local a = cryptoUuid()\n"
|
||||
"local b = cryptoUuid()\n"
|
||||
"report(10, (#a == 36 and #b == 36 and a ~= b) and 1 or 0)\n" // distinct, well-formed
|
||||
"report(11, base64Decode(base64Encode('a')) == 'a' and 1 or 0)\n" // round-trip, two pad bytes
|
||||
"report(12, hexEncode('a\\0b') == '610062' and 1 or 0)\n" // binary-safe (embedded NUL)
|
||||
"local ok = pcall(function() hexDecode('xyz') end)\n"
|
||||
"report(11, cryptoBase64Decode(cryptoBase64Encode('a')) == 'a' and 1 or 0)\n" // round-trip, two pad bytes
|
||||
"report(12, cryptoHexEncode('a\\0b') == '610062' and 1 or 0)\n" // binary-safe (embedded NUL)
|
||||
"local ok = pcall(function() cryptoHexDecode('xyz') end)\n"
|
||||
"report(13, ok and 0 or 1)\n" // invalid hex is catchable
|
||||
"report(14, base64Decode('YQ==\\n') == 'a' and 1 or 0)\n" // trailing whitespace does not add spurious NULs
|
||||
"report(14, cryptoBase64Decode('YQ==\\n') == 'a' and 1 or 0)\n" // trailing whitespace does not add spurious NULs
|
||||
"done()");
|
||||
pumpUntilDone(1);
|
||||
|
||||
CHECK(atomic_load(&results[1]) == 64, "sha256 hex digest is 64 chars");
|
||||
CHECK(atomic_load(&results[2]) == 1, "sha256('abc') matches the known vector");
|
||||
CHECK(atomic_load(&results[3]) == 1, "sha1('abc') matches the known vector");
|
||||
CHECK(atomic_load(&results[4]) == 1, "hmacSha256 matches the known vector");
|
||||
CHECK(atomic_load(&results[5]) == 1, "base64Encode('abc') is YWJj");
|
||||
CHECK(atomic_load(&results[4]) == 1, "cryptoHmacSha256 matches the known vector");
|
||||
CHECK(atomic_load(&results[5]) == 1, "cryptoBase64Encode('abc') is YWJj");
|
||||
CHECK(atomic_load(&results[6]) == 1, "base64 round-trips a padded value");
|
||||
CHECK(atomic_load(&results[7]) == 1, "hexEncode('abc') is 616263");
|
||||
CHECK(atomic_load(&results[7]) == 1, "cryptoHexEncode('abc') is 616263");
|
||||
CHECK(atomic_load(&results[8]) == 1, "hex round-trips a value");
|
||||
CHECK(atomic_load(&results[9]) == 16, "randomBytes(16) yields 16 bytes");
|
||||
CHECK(atomic_load(&results[9]) == 16, "cryptoRandomBytes(16) yields 16 bytes");
|
||||
CHECK(atomic_load(&results[10]) == 1, "two uuids are distinct and 36 chars");
|
||||
CHECK(atomic_load(&results[11]) == 1, "base64 round-trips a double-padded value");
|
||||
CHECK(atomic_load(&results[12]) == 1, "hexEncode is binary-safe over embedded NULs");
|
||||
CHECK(atomic_load(&results[12]) == 1, "cryptoHexEncode is binary-safe over embedded NULs");
|
||||
CHECK(atomic_load(&results[13]) == 1, "invalid hex raises a catchable error");
|
||||
CHECK(atomic_load(&results[14]) == 1, "base64Decode trims trailing whitespace without spurious trailing NULs");
|
||||
CHECK(atomic_load(&results[14]) == 1, "cryptoBase64Decode trims trailing whitespace without spurious trailing NULs");
|
||||
CHECK(atomic_load(&errorCount) == 0, "no uncaught errors");
|
||||
|
||||
calogContextClose(ctx);
|
||||
|
|
|
|||
258
tests/testHttps.c
Normal file
258
tests/testHttps.c
Normal file
|
|
@ -0,0 +1,258 @@
|
|||
// testHttps.c -- exercises calogHttp's TLS certificate verification. An in-test HTTPS server
|
||||
// runs on loopback with a freshly generated SELF-SIGNED certificate (not chained to any trusted
|
||||
// CA). A default httpGet must therefore REJECT it (verification on), while an httpRequest with
|
||||
// insecure=true must ACCEPT it (verification off). Proves both the default-secure behavior and
|
||||
// the documented opt-out.
|
||||
|
||||
#define _GNU_SOURCE
|
||||
|
||||
#include "calog.h"
|
||||
#include "calogHttp.h"
|
||||
|
||||
#include <arpa/inet.h>
|
||||
#include <netinet/in.h>
|
||||
#include <pthread.h>
|
||||
#include <stdatomic.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <sys/socket.h>
|
||||
#include <time.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#include <openssl/evp.h>
|
||||
#include <openssl/pem.h>
|
||||
#include <openssl/ssl.h>
|
||||
#include <openssl/x509.h>
|
||||
|
||||
#define CHECK(cond, msg) checkImpl((cond), (msg), __FILE__, __LINE__)
|
||||
|
||||
#define PUMP_LIMIT 4000
|
||||
#define RESULT_SLOTS 8
|
||||
|
||||
static CalogT *calog = NULL;
|
||||
static _Atomic int64_t results[RESULT_SLOTS];
|
||||
static _Atomic int32_t doneCount = 0;
|
||||
static _Atomic int32_t errorCount = 0;
|
||||
static int32_t testsRun = 0;
|
||||
static int32_t testsFailed = 0;
|
||||
static int gListenFd = -1;
|
||||
|
||||
static void checkImpl(bool condition, const char *message, const char *file, int32_t line);
|
||||
static EVP_PKEY *makeSelfSigned(X509 **certOut);
|
||||
static int32_t nativeDone(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData);
|
||||
static int32_t nativeReport(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData);
|
||||
static void onError(uint64_t contextId, const char *message, void *userData);
|
||||
static void pumpUntilDone(int32_t target);
|
||||
static void *serverThread(void *arg);
|
||||
|
||||
|
||||
static void checkImpl(bool condition, const char *message, const char *file, int32_t line) {
|
||||
testsRun++;
|
||||
if (!condition) {
|
||||
testsFailed++;
|
||||
printf("FAIL %s:%d %s\n", file, line, message);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static EVP_PKEY *makeSelfSigned(X509 **certOut) {
|
||||
EVP_PKEY *pkey;
|
||||
X509 *cert;
|
||||
|
||||
pkey = EVP_RSA_gen(2048);
|
||||
if (pkey == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
cert = X509_new();
|
||||
if (cert == NULL) {
|
||||
EVP_PKEY_free(pkey);
|
||||
return NULL;
|
||||
}
|
||||
X509_set_version(cert, 2);
|
||||
ASN1_INTEGER_set(X509_get_serialNumber(cert), 1);
|
||||
X509_gmtime_adj(X509_getm_notBefore(cert), 0);
|
||||
X509_gmtime_adj(X509_getm_notAfter(cert), 3600);
|
||||
X509_set_pubkey(cert, pkey);
|
||||
X509_NAME_add_entry_by_txt(X509_get_subject_name(cert), "CN", MBSTRING_ASC, (const unsigned char *)"127.0.0.1", -1, -1, 0);
|
||||
X509_set_issuer_name(cert, X509_get_subject_name(cert));
|
||||
if (X509_sign(cert, pkey, EVP_sha256()) == 0) {
|
||||
X509_free(cert);
|
||||
EVP_PKEY_free(pkey);
|
||||
return NULL;
|
||||
}
|
||||
*certOut = cert;
|
||||
return pkey;
|
||||
}
|
||||
|
||||
|
||||
static int32_t nativeDone(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData) {
|
||||
(void)args;
|
||||
(void)argCount;
|
||||
(void)userData;
|
||||
atomic_fetch_add(&doneCount, 1);
|
||||
calogValueNil(result);
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
||||
static int32_t nativeReport(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData) {
|
||||
(void)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 2 || args[0].type != calogIntE) {
|
||||
return calogFail(result, calogErrArgE, "report expects (tag, value)");
|
||||
}
|
||||
if (args[0].as.i < 0 || args[0].as.i >= RESULT_SLOTS) {
|
||||
return calogFail(result, calogErrArgE, "report: tag out of range");
|
||||
}
|
||||
atomic_store(&results[args[0].as.i], (args[1].type == calogIntE) ? args[1].as.i : (int64_t)args[1].as.r);
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
||||
static void onError(uint64_t contextId, const char *message, void *userData) {
|
||||
(void)contextId;
|
||||
(void)userData;
|
||||
fprintf(stderr, " [script error] %s\n", (message != NULL) ? message : "(null)");
|
||||
atomic_fetch_add(&errorCount, 1);
|
||||
}
|
||||
|
||||
|
||||
static void pumpUntilDone(int32_t target) {
|
||||
struct timespec ts = { 0, 500000 };
|
||||
int i;
|
||||
|
||||
for (i = 0; i < PUMP_LIMIT; i++) {
|
||||
calogPump(calog);
|
||||
if (atomic_load(&doneCount) >= target) {
|
||||
calogPump(calog);
|
||||
return;
|
||||
}
|
||||
nanosleep(&ts, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static void *serverThread(void *arg) {
|
||||
static const char response[] = "HTTP/1.1 200 OK\r\nContent-Length: 5\r\n\r\nhello";
|
||||
SSL_CTX *ctx;
|
||||
EVP_PKEY *pkey;
|
||||
X509 *cert;
|
||||
int n;
|
||||
|
||||
(void)arg;
|
||||
cert = NULL;
|
||||
pkey = makeSelfSigned(&cert);
|
||||
if (pkey == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
ctx = SSL_CTX_new(TLS_server_method());
|
||||
if (ctx == NULL) {
|
||||
X509_free(cert);
|
||||
EVP_PKEY_free(pkey);
|
||||
return NULL;
|
||||
}
|
||||
SSL_CTX_use_certificate(ctx, cert);
|
||||
SSL_CTX_use_PrivateKey(ctx, pkey);
|
||||
// Two connections: the first (default verify) has its handshake aborted by the client when
|
||||
// it rejects the untrusted cert; the second (insecure=true) completes and gets the reply.
|
||||
for (n = 0; n < 2; n++) {
|
||||
SSL *ssl;
|
||||
int cfd;
|
||||
cfd = accept(gListenFd, NULL, NULL);
|
||||
if (cfd < 0) {
|
||||
break;
|
||||
}
|
||||
ssl = SSL_new(ctx);
|
||||
SSL_set_fd(ssl, cfd);
|
||||
if (SSL_accept(ssl) == 1) {
|
||||
char buf[1024];
|
||||
(void)SSL_read(ssl, buf, sizeof(buf));
|
||||
(void)SSL_write(ssl, response, (int)(sizeof(response) - 1));
|
||||
SSL_shutdown(ssl);
|
||||
}
|
||||
SSL_free(ssl);
|
||||
close(cfd);
|
||||
}
|
||||
SSL_CTX_free(ctx);
|
||||
X509_free(cert);
|
||||
EVP_PKEY_free(pkey);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
int main(void) {
|
||||
CalogContextT *ctx;
|
||||
pthread_t server;
|
||||
struct sockaddr_in addr;
|
||||
socklen_t addrLen;
|
||||
char script[512];
|
||||
int port;
|
||||
int yes;
|
||||
int32_t i;
|
||||
|
||||
calog = calogCreate();
|
||||
if (calog == NULL) {
|
||||
printf("calog create failed\n");
|
||||
return 1;
|
||||
}
|
||||
calogSetErrorHandler(calog, onError, NULL);
|
||||
calogRegister(calog, "report", nativeReport, NULL);
|
||||
calogRegister(calog, "done", nativeDone, NULL);
|
||||
calogHttpRegister(calog);
|
||||
for (i = 0; i < RESULT_SLOTS; i++) {
|
||||
atomic_store(&results[i], -1);
|
||||
}
|
||||
|
||||
gListenFd = socket(AF_INET, SOCK_STREAM, 0);
|
||||
if (gListenFd < 0) {
|
||||
printf("socket failed\n");
|
||||
return 1;
|
||||
}
|
||||
yes = 1;
|
||||
setsockopt(gListenFd, SOL_SOCKET, SO_REUSEADDR, &yes, sizeof(yes));
|
||||
memset(&addr, 0, sizeof(addr));
|
||||
addr.sin_family = AF_INET;
|
||||
addr.sin_addr.s_addr = htonl(INADDR_LOOPBACK);
|
||||
addr.sin_port = 0;
|
||||
if (bind(gListenFd, (struct sockaddr *)&addr, sizeof(addr)) != 0 || listen(gListenFd, 4) != 0) {
|
||||
printf("bind/listen failed\n");
|
||||
return 1;
|
||||
}
|
||||
addrLen = sizeof(addr);
|
||||
if (getsockname(gListenFd, (struct sockaddr *)&addr, &addrLen) != 0) {
|
||||
printf("getsockname failed\n");
|
||||
return 1;
|
||||
}
|
||||
port = (int)ntohs(addr.sin_port);
|
||||
pthread_create(&server, NULL, serverThread, NULL);
|
||||
|
||||
snprintf(script, sizeof(script),
|
||||
"local ok = pcall(function() return httpGet('https://127.0.0.1:%d/') end)\n"
|
||||
"report(1, ok and 0 or 1)\n" // 1, a self-signed cert is rejected by default
|
||||
"local r = httpRequest({url = 'https://127.0.0.1:%d/', insecure = true})\n"
|
||||
"report(2, r.status)\n" // 200, insecure skips verification
|
||||
"report(3, r.body == 'hello' and 1 or 0)\n" // 1, body over TLS
|
||||
"done()", port, port);
|
||||
|
||||
ctx = calogContextOpen(calog, &calogLuaEngine);
|
||||
calogContextEval(ctx, script);
|
||||
pumpUntilDone(1);
|
||||
|
||||
pthread_join(server, NULL);
|
||||
close(gListenFd);
|
||||
|
||||
CHECK(atomic_load(&results[1]) == 1, "httpGet rejects an untrusted self-signed certificate by default");
|
||||
CHECK(atomic_load(&results[2]) == 200, "httpRequest with insecure=true completes the TLS request");
|
||||
CHECK(atomic_load(&results[3]) == 1, "the body is delivered over TLS when verification is skipped");
|
||||
CHECK(atomic_load(&errorCount) == 0, "no uncaught errors");
|
||||
|
||||
calogContextClose(ctx);
|
||||
calogDestroy(calog);
|
||||
|
||||
printf("\n%d checks, %d failed\n", testsRun, testsFailed);
|
||||
fflush(stdout);
|
||||
if (testsFailed != 0) {
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -132,13 +132,13 @@ int main(void) {
|
|||
// number). subA keeps its subscription id in a global so a later eval can unsubscribe it.
|
||||
subA = calogContextOpen(calog, &calogLuaEngine);
|
||||
calogContextEval(subA,
|
||||
"subAId = subscribe('t', function(m)\n"
|
||||
"subAId = psSubscribe('t', function(m)\n"
|
||||
" if type(m) == 'table' then report(1, m.v) else report(1, m) end\n"
|
||||
"end)\n"
|
||||
"done()");
|
||||
subB = calogContextOpen(calog, &calogLuaEngine);
|
||||
calogContextEval(subB,
|
||||
"subscribe('t', function(m)\n"
|
||||
"psSubscribe('t', function(m)\n"
|
||||
" if type(m) == 'table' then report(2, m.v) else report(2, m) end\n"
|
||||
"end)\n"
|
||||
"done()");
|
||||
|
|
@ -146,7 +146,7 @@ int main(void) {
|
|||
|
||||
// A third context (NOT subscribed to "t") publishes a number: both subscribers run.
|
||||
pub = calogContextOpen(calog, &calogLuaEngine);
|
||||
calogContextEval(pub, "report(3, publish('t', 7))\n done()");
|
||||
calogContextEval(pub, "report(3, psPublish('t', 7))\n done()");
|
||||
pumpUntilDone(3);
|
||||
|
||||
CHECK(atomic_load(&results[3]) == 2, "publish reached both subscribers (count 2)");
|
||||
|
|
@ -156,9 +156,9 @@ int main(void) {
|
|||
// Unsubscribe A, then publish again: only B is invoked, and A's slot stays untouched.
|
||||
atomic_store(&results[1], -1);
|
||||
atomic_store(&results[2], -1);
|
||||
calogContextEval(subA, "unsubscribe(subAId)\n done()");
|
||||
calogContextEval(subA, "psUnsubscribe(subAId)\n done()");
|
||||
pumpUntilDone(4);
|
||||
calogContextEval(pub, "report(4, publish('t', 9))\n done()");
|
||||
calogContextEval(pub, "report(4, psPublish('t', 9))\n done()");
|
||||
pumpUntilDone(5);
|
||||
|
||||
CHECK(atomic_load(&results[4]) == 1, "after unsubscribe only one subscriber is invoked (count 1)");
|
||||
|
|
@ -167,14 +167,14 @@ int main(void) {
|
|||
|
||||
// Publish a table payload: publish deep-copies it, so B reads m.v out of its own copy.
|
||||
atomic_store(&results[2], -1);
|
||||
calogContextEval(pub, "report(6, publish('t', {v = 42}))\n done()");
|
||||
calogContextEval(pub, "report(6, psPublish('t', {v = 42}))\n done()");
|
||||
pumpUntilDone(6);
|
||||
|
||||
CHECK(atomic_load(&results[6]) == 1, "publishing a table reached the surviving subscriber (count 1)");
|
||||
CHECK(atomic_load(&results[2]) == 42, "the subscriber received the deep-copied table payload");
|
||||
|
||||
// A topic nobody subscribed to delivers to no one.
|
||||
calogContextEval(pub, "report(7, publish('none', 5))\n done()");
|
||||
calogContextEval(pub, "report(7, psPublish('none', 5))\n done()");
|
||||
pumpUntilDone(7);
|
||||
CHECK(atomic_load(&results[7]) == 0, "publishing to a topic with no subscribers returns 0");
|
||||
|
||||
|
|
@ -183,7 +183,7 @@ int main(void) {
|
|||
// Release every subscribed callback while the contexts are still alive, then confirm a
|
||||
// publish after shutdown is safe and simply finds no subscribers.
|
||||
calogPubsubShutdown();
|
||||
calogContextEval(pub, "report(11, publish('t', 1))\n done()");
|
||||
calogContextEval(pub, "report(11, psPublish('t', 1))\n done()");
|
||||
pumpUntilDone(8);
|
||||
CHECK(atomic_load(&results[11]) == 0, "publishing after shutdown is safe and finds no subscribers");
|
||||
|
||||
|
|
|
|||
372
tests/testSsh.c
Normal file
372
tests/testSsh.c
Normal file
|
|
@ -0,0 +1,372 @@
|
|||
// testSsh.c -- exercises the SSH/SFTP library against a throwaway, unprivileged sshd on
|
||||
// loopback. The test generates a host key and a client key, starts sshd on an ephemeral port
|
||||
// authenticating the CURRENT user by that key, then drives sshConnect / sshAuthKey / sshExec
|
||||
// and the sftp* file operations from a Lua context. Not part of `make test` (it needs a system
|
||||
// sshd + ssh-keygen); run it with `make ssh-test`.
|
||||
|
||||
#define _GNU_SOURCE
|
||||
|
||||
#include "calog.h"
|
||||
#include "calogSsh.h"
|
||||
|
||||
#include <arpa/inet.h>
|
||||
#include <fcntl.h>
|
||||
#include <netinet/in.h>
|
||||
#include <pwd.h>
|
||||
#include <signal.h>
|
||||
#include <stdatomic.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <sys/socket.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/wait.h>
|
||||
#include <time.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#define CHECK(cond, msg) checkImpl((cond), (msg), __FILE__, __LINE__)
|
||||
|
||||
#define PUMP_LIMIT 6000
|
||||
#define RESULT_SLOTS 12
|
||||
|
||||
static CalogT *calog = NULL;
|
||||
static _Atomic int64_t results[RESULT_SLOTS];
|
||||
static _Atomic int32_t doneCount = 0;
|
||||
static _Atomic int32_t errorCount = 0;
|
||||
static int32_t testsRun = 0;
|
||||
static int32_t testsFailed = 0;
|
||||
|
||||
static void checkImpl(bool condition, const char *message, const char *file, int32_t line);
|
||||
static int freePort(void);
|
||||
static int32_t nativeDone(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData);
|
||||
static int32_t nativeReport(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData);
|
||||
static void onError(uint64_t contextId, const char *message, void *userData);
|
||||
static void pumpUntilDone(int32_t target);
|
||||
static bool runCommand(const char *path, char *const argv[]);
|
||||
static bool waitForListen(int port);
|
||||
|
||||
|
||||
static void checkImpl(bool condition, const char *message, const char *file, int32_t line) {
|
||||
testsRun++;
|
||||
if (!condition) {
|
||||
testsFailed++;
|
||||
printf("FAIL %s:%d %s\n", file, line, message);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static int freePort(void) {
|
||||
struct sockaddr_in addr;
|
||||
socklen_t len;
|
||||
int fd;
|
||||
int port;
|
||||
|
||||
fd = socket(AF_INET, SOCK_STREAM, 0);
|
||||
if (fd < 0) {
|
||||
return -1;
|
||||
}
|
||||
memset(&addr, 0, sizeof(addr));
|
||||
addr.sin_family = AF_INET;
|
||||
addr.sin_addr.s_addr = htonl(INADDR_LOOPBACK);
|
||||
addr.sin_port = 0;
|
||||
if (bind(fd, (struct sockaddr *)&addr, sizeof(addr)) != 0) {
|
||||
close(fd);
|
||||
return -1;
|
||||
}
|
||||
len = sizeof(addr);
|
||||
if (getsockname(fd, (struct sockaddr *)&addr, &len) != 0) {
|
||||
close(fd);
|
||||
return -1;
|
||||
}
|
||||
port = (int)ntohs(addr.sin_port);
|
||||
close(fd);
|
||||
return port;
|
||||
}
|
||||
|
||||
|
||||
static int32_t nativeDone(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData) {
|
||||
(void)args;
|
||||
(void)argCount;
|
||||
(void)userData;
|
||||
atomic_fetch_add(&doneCount, 1);
|
||||
calogValueNil(result);
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
||||
static int32_t nativeReport(CalogValueT *args, int32_t argCount, CalogValueT *result, void *userData) {
|
||||
(void)userData;
|
||||
calogValueNil(result);
|
||||
if (argCount != 2 || args[0].type != calogIntE) {
|
||||
return calogFail(result, calogErrArgE, "report expects (tag, value)");
|
||||
}
|
||||
if (args[0].as.i < 0 || args[0].as.i >= RESULT_SLOTS) {
|
||||
return calogFail(result, calogErrArgE, "report: tag out of range");
|
||||
}
|
||||
atomic_store(&results[args[0].as.i], (args[1].type == calogIntE) ? args[1].as.i : (int64_t)args[1].as.r);
|
||||
return calogOkE;
|
||||
}
|
||||
|
||||
|
||||
static void onError(uint64_t contextId, const char *message, void *userData) {
|
||||
(void)contextId;
|
||||
(void)userData;
|
||||
fprintf(stderr, " [script error] %s\n", (message != NULL) ? message : "(null)");
|
||||
atomic_fetch_add(&errorCount, 1);
|
||||
}
|
||||
|
||||
|
||||
static void pumpUntilDone(int32_t target) {
|
||||
struct timespec ts = { 0, 1000000 };
|
||||
int i;
|
||||
|
||||
for (i = 0; i < PUMP_LIMIT; i++) {
|
||||
calogPump(calog);
|
||||
if (atomic_load(&doneCount) >= target) {
|
||||
calogPump(calog);
|
||||
return;
|
||||
}
|
||||
nanosleep(&ts, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static bool runCommand(const char *path, char *const argv[]) {
|
||||
pid_t pid;
|
||||
int status;
|
||||
|
||||
pid = fork();
|
||||
if (pid < 0) {
|
||||
return false;
|
||||
}
|
||||
if (pid == 0) {
|
||||
int devnull;
|
||||
devnull = open("/dev/null", 1);
|
||||
if (devnull >= 0) {
|
||||
dup2(devnull, 1);
|
||||
dup2(devnull, 2);
|
||||
}
|
||||
execv(path, argv);
|
||||
_exit(127);
|
||||
}
|
||||
if (waitpid(pid, &status, 0) != pid) {
|
||||
return false;
|
||||
}
|
||||
return WIFEXITED(status) && WEXITSTATUS(status) == 0;
|
||||
}
|
||||
|
||||
|
||||
static bool waitForListen(int port) {
|
||||
int i;
|
||||
|
||||
for (i = 0; i < 200; i++) {
|
||||
struct sockaddr_in addr;
|
||||
struct timespec ts = { 0, 20000000 };
|
||||
int fd;
|
||||
int rc;
|
||||
fd = socket(AF_INET, SOCK_STREAM, 0);
|
||||
if (fd < 0) {
|
||||
return false;
|
||||
}
|
||||
memset(&addr, 0, sizeof(addr));
|
||||
addr.sin_family = AF_INET;
|
||||
addr.sin_addr.s_addr = htonl(INADDR_LOOPBACK);
|
||||
addr.sin_port = htons((uint16_t)port);
|
||||
rc = connect(fd, (struct sockaddr *)&addr, sizeof(addr));
|
||||
close(fd);
|
||||
if (rc == 0) {
|
||||
return true;
|
||||
}
|
||||
nanosleep(&ts, NULL);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
int main(void) {
|
||||
CalogContextT *ctx;
|
||||
struct passwd *pw;
|
||||
const char *tmp;
|
||||
const char *user;
|
||||
char dir[256];
|
||||
char hostKey[320];
|
||||
char clientKey[320];
|
||||
char clientPub[328];
|
||||
char authKeys[320];
|
||||
char remoteFile[384];
|
||||
char sshdArg[400];
|
||||
char akoArg[400];
|
||||
char script[8192];
|
||||
char *cpCmd[5];
|
||||
char *sshdCmd[16];
|
||||
pid_t sshd;
|
||||
int port;
|
||||
int32_t i;
|
||||
|
||||
tmp = getenv("TMPDIR");
|
||||
if (tmp == NULL) {
|
||||
tmp = "/tmp";
|
||||
}
|
||||
pw = getpwuid(getuid());
|
||||
if (pw == NULL) {
|
||||
printf("cannot determine current user\n");
|
||||
return 1;
|
||||
}
|
||||
user = pw->pw_name;
|
||||
snprintf(dir, sizeof(dir), "%s/calogSshTest_%ld", tmp, (long)getpid());
|
||||
{
|
||||
char *mkdirCmd[4];
|
||||
mkdirCmd[0] = (char *)"/bin/mkdir";
|
||||
mkdirCmd[1] = (char *)"-p";
|
||||
mkdirCmd[2] = dir;
|
||||
mkdirCmd[3] = NULL;
|
||||
if (!runCommand("/bin/mkdir", mkdirCmd)) {
|
||||
printf("mkdir failed\n");
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
snprintf(hostKey, sizeof(hostKey), "%s/host_ed25519", dir);
|
||||
snprintf(clientKey, sizeof(clientKey), "%s/client_ed25519", dir);
|
||||
snprintf(clientPub, sizeof(clientPub), "%s.pub", clientKey);
|
||||
snprintf(authKeys, sizeof(authKeys), "%s/authorized_keys", dir);
|
||||
snprintf(remoteFile, sizeof(remoteFile), "%s/remote.txt", dir);
|
||||
|
||||
{
|
||||
char *kh[9];
|
||||
char *kc[9];
|
||||
kh[0] = (char *)"/usr/bin/ssh-keygen"; kh[1] = (char *)"-q"; kh[2] = (char *)"-t"; kh[3] = (char *)"ed25519";
|
||||
kh[4] = (char *)"-f"; kh[5] = hostKey; kh[6] = (char *)"-N"; kh[7] = (char *)""; kh[8] = NULL;
|
||||
kc[0] = (char *)"/usr/bin/ssh-keygen"; kc[1] = (char *)"-q"; kc[2] = (char *)"-t"; kc[3] = (char *)"ed25519";
|
||||
kc[4] = (char *)"-f"; kc[5] = clientKey; kc[6] = (char *)"-N"; kc[7] = (char *)""; kc[8] = NULL;
|
||||
if (!runCommand("/usr/bin/ssh-keygen", kh) || !runCommand("/usr/bin/ssh-keygen", kc)) {
|
||||
printf("ssh-keygen failed\n");
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
// authorized_keys = the client public key.
|
||||
cpCmd[0] = (char *)"/bin/cp";
|
||||
cpCmd[1] = clientPub;
|
||||
cpCmd[2] = authKeys;
|
||||
cpCmd[3] = NULL;
|
||||
if (!runCommand("/bin/cp", cpCmd)) {
|
||||
printf("cp authorized_keys failed\n");
|
||||
return 1;
|
||||
}
|
||||
|
||||
port = freePort();
|
||||
if (port < 0) {
|
||||
printf("no free port\n");
|
||||
return 1;
|
||||
}
|
||||
snprintf(sshdArg, sizeof(sshdArg), "%d", port);
|
||||
snprintf(akoArg, sizeof(akoArg), "AuthorizedKeysFile=%s", authKeys);
|
||||
sshdCmd[0] = (char *)"/usr/sbin/sshd";
|
||||
sshdCmd[1] = (char *)"-D";
|
||||
sshdCmd[2] = (char *)"-p";
|
||||
sshdCmd[3] = sshdArg;
|
||||
sshdCmd[4] = (char *)"-h";
|
||||
sshdCmd[5] = hostKey;
|
||||
sshdCmd[6] = (char *)"-o";
|
||||
sshdCmd[7] = (char *)"PidFile=none";
|
||||
sshdCmd[8] = (char *)"-o";
|
||||
sshdCmd[9] = (char *)"UsePAM=no";
|
||||
sshdCmd[10] = (char *)"-o";
|
||||
sshdCmd[11] = (char *)"StrictModes=no";
|
||||
sshdCmd[12] = (char *)"-o";
|
||||
sshdCmd[13] = akoArg;
|
||||
sshdCmd[14] = NULL;
|
||||
sshd = fork();
|
||||
if (sshd < 0) {
|
||||
printf("fork sshd failed\n");
|
||||
return 1;
|
||||
}
|
||||
if (sshd == 0) {
|
||||
int devnull;
|
||||
devnull = open("/dev/null", 1);
|
||||
if (devnull >= 0) {
|
||||
dup2(devnull, 1);
|
||||
dup2(devnull, 2);
|
||||
}
|
||||
execv("/usr/sbin/sshd", sshdCmd);
|
||||
_exit(127);
|
||||
}
|
||||
if (!waitForListen(port)) {
|
||||
printf("sshd did not start listening\n");
|
||||
kill(sshd, SIGTERM);
|
||||
waitpid(sshd, NULL, 0);
|
||||
return 1;
|
||||
}
|
||||
|
||||
calog = calogCreate();
|
||||
if (calog == NULL) {
|
||||
printf("calog create failed\n");
|
||||
kill(sshd, SIGTERM);
|
||||
waitpid(sshd, NULL, 0);
|
||||
return 1;
|
||||
}
|
||||
calogSetErrorHandler(calog, onError, NULL);
|
||||
calogRegister(calog, "report", nativeReport, NULL);
|
||||
calogRegister(calog, "done", nativeDone, NULL);
|
||||
calogSshRegister(calog);
|
||||
for (i = 0; i < RESULT_SLOTS; i++) {
|
||||
atomic_store(&results[i], -1);
|
||||
}
|
||||
|
||||
snprintf(script, sizeof(script),
|
||||
"local h = sshConnect('127.0.0.1', %d)\n"
|
||||
"report(1, h and 1 or 0)\n"
|
||||
"local ok = sshAuthKey(h, '%s', '%s', '%s', '')\n"
|
||||
"report(2, ok and 1 or 0)\n"
|
||||
"local r = sshExec(h, 'echo hello')\n"
|
||||
"report(3, (r.stdout == 'hello\\n' and r.exitCode == 0) and 1 or 0)\n"
|
||||
"sftpPut(h, '%s', 'sftp payload')\n"
|
||||
"report(4, sftpGet(h, '%s') == 'sftp payload' and 1 or 0)\n"
|
||||
"local st = sftpStat(h, '%s')\n"
|
||||
"report(5, (st ~= nil and st.size == 12 and st.isDir == false) and 1 or 0)\n"
|
||||
"local found = 0\n"
|
||||
"for _, e in ipairs(sftpList(h, '%s')) do if e.name == 'remote.txt' then found = 1 end end\n"
|
||||
"report(6, found)\n"
|
||||
"sftpRemove(h, '%s')\n"
|
||||
"report(7, sftpStat(h, '%s') == nil and 1 or 0)\n"
|
||||
"local big = sshExec(h, 'seq 1 20000')\n"
|
||||
"report(8, (big.exitCode == 0 and #big.stdout > 100000 and big.stdout:sub(-6) == '20000\\n') and 1 or 0)\n"
|
||||
"sshClose(h)\n"
|
||||
"done()",
|
||||
port, user, clientKey, clientPub, remoteFile, remoteFile, remoteFile, dir, remoteFile, remoteFile);
|
||||
|
||||
ctx = calogContextOpen(calog, &calogLuaEngine);
|
||||
calogContextEval(ctx, script);
|
||||
pumpUntilDone(1);
|
||||
|
||||
CHECK(atomic_load(&results[1]) == 1, "sshConnect returns a handle");
|
||||
CHECK(atomic_load(&results[2]) == 1, "sshAuthKey authenticates with the client key");
|
||||
CHECK(atomic_load(&results[3]) == 1, "sshExec runs a command and returns stdout + exitCode");
|
||||
CHECK(atomic_load(&results[4]) == 1, "sftpPut then sftpGet round-trips a file");
|
||||
CHECK(atomic_load(&results[5]) == 1, "sftpStat reports the file size and that it is not a directory");
|
||||
CHECK(atomic_load(&results[6]) == 1, "sftpList includes the written file");
|
||||
CHECK(atomic_load(&results[7]) == 1, "sftpRemove deletes the file (stat then returns nil)");
|
||||
CHECK(atomic_load(&results[8]) == 1, "sshExec drains a large multi-realloc output completely");
|
||||
CHECK(atomic_load(&errorCount) == 0, "no uncaught errors");
|
||||
|
||||
calogContextClose(ctx);
|
||||
calogDestroy(calog);
|
||||
calogSshShutdown();
|
||||
|
||||
kill(sshd, SIGTERM);
|
||||
waitpid(sshd, NULL, 0);
|
||||
{
|
||||
char *rmCmd[4];
|
||||
rmCmd[0] = (char *)"/bin/rm";
|
||||
rmCmd[1] = (char *)"-rf";
|
||||
rmCmd[2] = dir;
|
||||
rmCmd[3] = NULL;
|
||||
(void)runCommand("/bin/rm", rmCmd);
|
||||
}
|
||||
|
||||
printf("\n%d checks, %d failed\n", testsRun, testsFailed);
|
||||
fflush(stdout);
|
||||
if (testsFailed != 0) {
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
477
vendor/libssh2/CMakeLists.txt
vendored
Normal file
477
vendor/libssh2/CMakeLists.txt
vendored
Normal file
|
|
@ -0,0 +1,477 @@
|
|||
# Copyright (C) Alexander Lamaison <alexander.lamaison@gmail.com>
|
||||
# Copyright (C) Viktor Szakats
|
||||
#
|
||||
# Redistribution and use in source and binary forms,
|
||||
# with or without modification, are permitted provided
|
||||
# that the following conditions are met:
|
||||
#
|
||||
# Redistributions of source code must retain the above
|
||||
# copyright notice, this list of conditions and the
|
||||
# following disclaimer.
|
||||
#
|
||||
# Redistributions in binary form must reproduce the above
|
||||
# copyright notice, this list of conditions and the following
|
||||
# disclaimer in the documentation and/or other materials
|
||||
# provided with the distribution.
|
||||
#
|
||||
# Neither the name of the copyright holder nor the names
|
||||
# of any other contributors may be used to endorse or
|
||||
# promote products derived from this software without
|
||||
# specific prior written permission.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
|
||||
# CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
|
||||
# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
|
||||
# USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
|
||||
# OF SUCH DAMAGE.
|
||||
#
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
cmake_minimum_required(VERSION 3.7)
|
||||
message(STATUS "Using CMake version ${CMAKE_VERSION}")
|
||||
|
||||
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH})
|
||||
|
||||
include(CheckFunctionExists)
|
||||
include(CheckSymbolExists)
|
||||
include(CheckIncludeFiles)
|
||||
include(CMakePushCheckState)
|
||||
include(FeatureSummary)
|
||||
|
||||
include(CheckFunctionExistsMayNeedLibrary)
|
||||
include(CheckNonblockingSocketSupport)
|
||||
|
||||
project(libssh2 C)
|
||||
|
||||
function(libssh2_dumpvars) # Dump all defined variables with their values
|
||||
message("::group::CMake Variable Dump")
|
||||
get_cmake_property(_vars VARIABLES)
|
||||
foreach(_var ${_vars})
|
||||
message("${_var} = ${${_var}}")
|
||||
endforeach()
|
||||
message("::endgroup::")
|
||||
endfunction()
|
||||
|
||||
if(NOT DEFINED CMAKE_UNITY_BUILD_BATCH_SIZE)
|
||||
set(CMAKE_UNITY_BUILD_BATCH_SIZE 0)
|
||||
endif()
|
||||
|
||||
option(BUILD_STATIC_LIBS "Build static libraries" ON)
|
||||
add_feature_info("Static library" BUILD_STATIC_LIBS "creating libssh2 static library")
|
||||
|
||||
option(BUILD_SHARED_LIBS "Build shared libraries" ON)
|
||||
add_feature_info("Shared library" BUILD_SHARED_LIBS "creating libssh2 shared library (.so/.dll)")
|
||||
|
||||
# Parse version
|
||||
|
||||
file(READ "${PROJECT_SOURCE_DIR}/include/libssh2.h" _header_contents)
|
||||
string(REGEX REPLACE ".*#define LIBSSH2_VERSION[ \t]+\"([^\"]+)\".*" "\\1" LIBSSH2_VERSION "${_header_contents}")
|
||||
string(REGEX REPLACE ".*#define LIBSSH2_VERSION_MAJOR[ \t]+([0-9]+).*" "\\1" LIBSSH2_VERSION_MAJOR "${_header_contents}")
|
||||
string(REGEX REPLACE ".*#define LIBSSH2_VERSION_MINOR[ \t]+([0-9]+).*" "\\1" LIBSSH2_VERSION_MINOR "${_header_contents}")
|
||||
string(REGEX REPLACE ".*#define LIBSSH2_VERSION_PATCH[ \t]+([0-9]+).*" "\\1" LIBSSH2_VERSION_PATCH "${_header_contents}")
|
||||
unset(_header_contents)
|
||||
|
||||
if(NOT LIBSSH2_VERSION OR
|
||||
NOT LIBSSH2_VERSION_MAJOR MATCHES "^[0-9]+$" OR
|
||||
NOT LIBSSH2_VERSION_MINOR MATCHES "^[0-9]+$" OR
|
||||
NOT LIBSSH2_VERSION_PATCH MATCHES "^[0-9]+$")
|
||||
message(FATAL_ERROR "Unable to parse version from ${PROJECT_SOURCE_DIR}/include/libssh2.h")
|
||||
endif()
|
||||
|
||||
include(GNUInstallDirs)
|
||||
install(
|
||||
FILES
|
||||
COPYING NEWS README RELEASE-NOTES
|
||||
docs/AUTHORS docs/BINDINGS.md docs/HACKING.md
|
||||
DESTINATION ${CMAKE_INSTALL_DOCDIR})
|
||||
|
||||
include(PickyWarnings)
|
||||
|
||||
set(LIBSSH2_LIBS_SOCKET "")
|
||||
set(LIBSSH2_LIBS "")
|
||||
set(LIBSSH2_LIBDIRS "")
|
||||
set(LIBSSH2_PC_REQUIRES_PRIVATE "")
|
||||
|
||||
# Add socket libraries
|
||||
if(WIN32)
|
||||
list(APPEND LIBSSH2_LIBS_SOCKET "ws2_32")
|
||||
else()
|
||||
check_function_exists_may_need_library("socket" HAVE_SOCKET "socket")
|
||||
if(NEED_LIB_SOCKET)
|
||||
list(APPEND LIBSSH2_LIBS_SOCKET "socket")
|
||||
endif()
|
||||
check_function_exists_may_need_library("inet_addr" HAVE_INET_ADDR "nsl")
|
||||
if(NEED_LIB_NSL)
|
||||
list(APPEND LIBSSH2_LIBS_SOCKET "nsl")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
option(BUILD_EXAMPLES "Build libssh2 examples" ON)
|
||||
option(BUILD_TESTING "Build libssh2 test suite" ON)
|
||||
|
||||
if(NOT BUILD_STATIC_LIBS AND NOT BUILD_SHARED_LIBS)
|
||||
set(BUILD_STATIC_LIBS ON)
|
||||
endif()
|
||||
|
||||
set(LIB_NAME "libssh2")
|
||||
set(LIB_STATIC "${LIB_NAME}_static")
|
||||
set(LIB_SHARED "${LIB_NAME}_shared")
|
||||
|
||||
# lib flavour selected for example and test programs.
|
||||
if(BUILD_SHARED_LIBS)
|
||||
set(LIB_SELECTED ${LIB_SHARED})
|
||||
else()
|
||||
set(LIB_SELECTED ${LIB_STATIC})
|
||||
endif()
|
||||
|
||||
# Symbol hiding
|
||||
|
||||
option(HIDE_SYMBOLS "Hide all libssh2 symbols that are not officially external" ON)
|
||||
mark_as_advanced(HIDE_SYMBOLS)
|
||||
if(HIDE_SYMBOLS)
|
||||
set(LIB_SHARED_DEFINITIONS "LIBSSH2_EXPORTS")
|
||||
if(WIN32)
|
||||
elseif((CMAKE_C_COMPILER_ID MATCHES "Clang") OR
|
||||
(CMAKE_COMPILER_IS_GNUCC AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.0) OR
|
||||
(CMAKE_C_COMPILER_ID MATCHES "Intel" AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 9.1))
|
||||
set(LIB_SHARED_C_FLAGS "-fvisibility=hidden")
|
||||
set(LIBSSH2_API "__attribute__ ((__visibility__ (\"default\")))")
|
||||
elseif(CMAKE_C_COMPILER_ID MATCHES "SunPro" AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 8.0)
|
||||
set(LIB_SHARED_C_FLAGS "-xldscope=hidden")
|
||||
set(LIBSSH2_API "__global")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Options
|
||||
|
||||
# Enable debugging logging by default if the user configured a debug build
|
||||
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||
set(DEBUG_LOGGING_DEFAULT ON)
|
||||
else()
|
||||
set(DEBUG_LOGGING_DEFAULT OFF)
|
||||
endif()
|
||||
option(ENABLE_DEBUG_LOGGING "Log execution with debug trace" ${DEBUG_LOGGING_DEFAULT})
|
||||
add_feature_info(Logging ENABLE_DEBUG_LOGGING "Logging of execution with debug trace")
|
||||
if(ENABLE_DEBUG_LOGGING)
|
||||
# Must be visible to the library and tests using internals
|
||||
add_definitions("-DLIBSSH2DEBUG")
|
||||
endif()
|
||||
|
||||
option(LIBSSH2_NO_DEPRECATED "Build without deprecated APIs" OFF)
|
||||
add_feature_info("Without deprecated APIs" LIBSSH2_NO_DEPRECATED "")
|
||||
if(LIBSSH2_NO_DEPRECATED)
|
||||
add_definitions("-DLIBSSH2_NO_DEPRECATED")
|
||||
endif()
|
||||
|
||||
# Auto-detection
|
||||
|
||||
# Prefill values with known detection results
|
||||
# Keep this synced with src/libssh2_setup.h
|
||||
if(WIN32)
|
||||
if(MINGW)
|
||||
set(HAVE_SNPRINTF 1)
|
||||
set(HAVE_UNISTD_H 1)
|
||||
set(HAVE_INTTYPES_H 1)
|
||||
set(HAVE_SYS_TIME_H 1)
|
||||
set(HAVE_GETTIMEOFDAY 1)
|
||||
set(HAVE_STRTOLL 1)
|
||||
elseif(MSVC)
|
||||
set(HAVE_GETTIMEOFDAY 0)
|
||||
if(NOT MSVC_VERSION LESS 1800)
|
||||
set(HAVE_INTTYPES_H 1)
|
||||
set(HAVE_STRTOLL 1)
|
||||
else()
|
||||
set(HAVE_INTTYPES_H 0)
|
||||
set(HAVE_STRTOLL 0)
|
||||
set(HAVE_STRTOI64 1)
|
||||
endif()
|
||||
if(NOT MSVC_VERSION LESS 1900)
|
||||
set(HAVE_SNPRINTF 1)
|
||||
else()
|
||||
set(HAVE_SNPRINTF 0)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
## Platform checks
|
||||
check_include_files("inttypes.h" HAVE_INTTYPES_H)
|
||||
if(NOT MSVC)
|
||||
check_include_files("unistd.h" HAVE_UNISTD_H)
|
||||
check_include_files("sys/time.h" HAVE_SYS_TIME_H)
|
||||
endif()
|
||||
if(NOT WIN32)
|
||||
check_include_files("sys/select.h" HAVE_SYS_SELECT_H)
|
||||
check_include_files("sys/uio.h" HAVE_SYS_UIO_H)
|
||||
check_include_files("sys/socket.h" HAVE_SYS_SOCKET_H)
|
||||
check_include_files("sys/ioctl.h" HAVE_SYS_IOCTL_H)
|
||||
check_include_files("sys/un.h" HAVE_SYS_UN_H)
|
||||
check_include_files("arpa/inet.h" HAVE_ARPA_INET_H) # example and tests
|
||||
check_include_files("netinet/in.h" HAVE_NETINET_IN_H) # example and tests
|
||||
endif()
|
||||
|
||||
# CMake uses C syntax in check_symbol_exists() that generates a warning with
|
||||
# MSVC. To not break detection with ENABLE_WERRROR, we disable it for the
|
||||
# duration of these tests.
|
||||
if(MSVC AND ENABLE_WERROR)
|
||||
cmake_push_check_state()
|
||||
set(CMAKE_REQUIRED_FLAGS "/WX-")
|
||||
endif()
|
||||
|
||||
if(HAVE_SYS_TIME_H)
|
||||
check_symbol_exists("gettimeofday" "sys/time.h" HAVE_GETTIMEOFDAY)
|
||||
else()
|
||||
check_function_exists("gettimeofday" HAVE_GETTIMEOFDAY)
|
||||
endif()
|
||||
check_symbol_exists("strtoll" "stdlib.h" HAVE_STRTOLL)
|
||||
if(NOT HAVE_STRTOLL)
|
||||
# Try _strtoi64() if strtoll() is not available
|
||||
check_symbol_exists("_strtoi64" "stdlib.h" HAVE_STRTOI64)
|
||||
endif()
|
||||
check_symbol_exists("snprintf" "stdio.h" HAVE_SNPRINTF)
|
||||
if(NOT WIN32)
|
||||
check_symbol_exists("explicit_bzero" "string.h" HAVE_EXPLICIT_BZERO)
|
||||
check_symbol_exists("explicit_memset" "string.h" HAVE_EXPLICIT_MEMSET)
|
||||
check_symbol_exists("memset_s" "string.h" HAVE_MEMSET_S)
|
||||
endif()
|
||||
|
||||
if(MSVC AND ENABLE_WERROR)
|
||||
cmake_pop_check_state()
|
||||
endif()
|
||||
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR
|
||||
CMAKE_SYSTEM_NAME STREQUAL "Interix")
|
||||
# poll() does not work on these platforms
|
||||
#
|
||||
# Interix: "does provide poll(), but the implementing developer must
|
||||
# have been in a bad mood, because poll() only works on the /proc
|
||||
# filesystem here"
|
||||
#
|
||||
# macOS poll() has funny behaviors, like:
|
||||
# not being able to do poll on no filedescriptors (10.3?)
|
||||
# not being able to poll on some files (like anything in /dev)
|
||||
# not having reliable timeout support
|
||||
# inconsistent return of POLLHUP where other implementations give POLLIN
|
||||
message(STATUS "poll use is disabled on this platform")
|
||||
elseif(NOT WIN32)
|
||||
check_function_exists("poll" HAVE_POLL)
|
||||
endif()
|
||||
if(WIN32)
|
||||
set(HAVE_SELECT 1)
|
||||
else()
|
||||
check_function_exists("select" HAVE_SELECT)
|
||||
endif()
|
||||
|
||||
# Non-blocking socket support tests. Use a separate, yet unset variable
|
||||
# for the socket libraries to not link against the other configured
|
||||
# dependencies which might not have been built yet.
|
||||
if(NOT WIN32)
|
||||
cmake_push_check_state()
|
||||
set(CMAKE_REQUIRED_LIBRARIES ${LIBSSH2_LIBS_SOCKET})
|
||||
check_nonblocking_socket_support()
|
||||
cmake_pop_check_state()
|
||||
endif()
|
||||
|
||||
# Config file
|
||||
|
||||
add_definitions("-DHAVE_CONFIG_H")
|
||||
|
||||
configure_file("src/libssh2_config_cmake.h.in"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/src/libssh2_config.h")
|
||||
|
||||
## Cryptography backend choice
|
||||
|
||||
set(CRYPTO_BACKEND "" CACHE
|
||||
STRING "The backend to use for cryptography: OpenSSL, wolfSSL, Libgcrypt, WinCNG, mbedTLS, or empty to try any available")
|
||||
|
||||
# If the crypto backend was given, rather than searching for the first
|
||||
# we are able to find, the find_package commands must abort configuration
|
||||
# and report to the user.
|
||||
if(CRYPTO_BACKEND)
|
||||
set(_specific_crypto_requirement "REQUIRED")
|
||||
endif()
|
||||
|
||||
if(CRYPTO_BACKEND STREQUAL "OpenSSL" OR NOT CRYPTO_BACKEND)
|
||||
|
||||
find_package(OpenSSL ${_specific_crypto_requirement})
|
||||
|
||||
if(OPENSSL_FOUND)
|
||||
set(CRYPTO_BACKEND "OpenSSL")
|
||||
set(CRYPTO_BACKEND_DEFINE "LIBSSH2_OPENSSL")
|
||||
set(CRYPTO_BACKEND_INCLUDE_DIR ${OPENSSL_INCLUDE_DIR})
|
||||
list(APPEND LIBSSH2_LIBS OpenSSL::Crypto)
|
||||
list(APPEND LIBSSH2_PC_REQUIRES_PRIVATE "libcrypto")
|
||||
|
||||
if(WIN32)
|
||||
# Statically linking to OpenSSL requires crypt32 for some Windows APIs.
|
||||
# This should really be handled by FindOpenSSL.cmake.
|
||||
list(APPEND LIBSSH2_LIBS "crypt32" "bcrypt")
|
||||
|
||||
#set(CMAKE_FIND_DEBUG_MODE ON)
|
||||
|
||||
find_file(DLL_LIBCRYPTO
|
||||
NAMES "crypto.dll"
|
||||
"libcrypto-1_1.dll" "libcrypto-1_1-x64.dll"
|
||||
"libcrypto-3.dll" "libcrypto-3-x64.dll"
|
||||
HINTS ${_OPENSSL_ROOT_HINTS} PATHS ${_OPENSSL_ROOT_PATHS}
|
||||
PATH_SUFFIXES "bin" NO_DEFAULT_PATH)
|
||||
if(DLL_LIBCRYPTO)
|
||||
list(APPEND _RUNTIME_DEPENDENCIES ${DLL_LIBCRYPTO})
|
||||
message(STATUS "Found libcrypto DLL: ${DLL_LIBCRYPTO}")
|
||||
else()
|
||||
message(WARNING "Unable to find OpenSSL libcrypto DLL, executables may not run")
|
||||
endif()
|
||||
|
||||
#set(CMAKE_FIND_DEBUG_MODE OFF)
|
||||
endif()
|
||||
|
||||
find_package(ZLIB)
|
||||
|
||||
if(ZLIB_FOUND)
|
||||
list(APPEND LIBSSH2_LIBS ${ZLIB_LIBRARIES})
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(CRYPTO_BACKEND STREQUAL "wolfSSL" OR NOT CRYPTO_BACKEND)
|
||||
|
||||
find_package(WolfSSL ${_specific_crypto_requirement})
|
||||
|
||||
if(WOLFSSL_FOUND)
|
||||
set(CRYPTO_BACKEND "wolfSSL")
|
||||
set(CRYPTO_BACKEND_DEFINE "LIBSSH2_WOLFSSL")
|
||||
set(CRYPTO_BACKEND_INCLUDE_DIR ${WOLFSSL_INCLUDE_DIRS})
|
||||
list(APPEND LIBSSH2_LIBS ${WOLFSSL_LIBRARIES})
|
||||
list(APPEND LIBSSH2_LIBDIRS ${WOLFSSL_LIBRARY_DIRS})
|
||||
list(APPEND LIBSSH2_PC_REQUIRES_PRIVATE "wolfssl")
|
||||
link_directories(${WOLFSSL_LIBRARY_DIRS})
|
||||
if(WOLFSSL_CFLAGS)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${WOLFSSL_CFLAGS}")
|
||||
endif()
|
||||
|
||||
if(WIN32)
|
||||
list(APPEND LIBSSH2_LIBS "crypt32")
|
||||
endif()
|
||||
|
||||
find_package(ZLIB)
|
||||
|
||||
if(ZLIB_FOUND)
|
||||
list(APPEND CRYPTO_BACKEND_INCLUDE_DIR ${ZLIB_INCLUDE_DIR}) # Public wolfSSL headers require zlib headers
|
||||
list(APPEND LIBSSH2_LIBS ${ZLIB_LIBRARIES})
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(CRYPTO_BACKEND STREQUAL "Libgcrypt" OR NOT CRYPTO_BACKEND)
|
||||
|
||||
find_package(Libgcrypt ${_specific_crypto_requirement})
|
||||
|
||||
if(LIBGCRYPT_FOUND)
|
||||
set(CRYPTO_BACKEND "Libgcrypt")
|
||||
set(CRYPTO_BACKEND_DEFINE "LIBSSH2_LIBGCRYPT")
|
||||
set(CRYPTO_BACKEND_INCLUDE_DIR ${LIBGCRYPT_INCLUDE_DIRS})
|
||||
list(APPEND LIBSSH2_LIBS ${LIBGCRYPT_LIBRARIES})
|
||||
list(APPEND LIBSSH2_LIBDIRS ${LIBGCRYPT_LIBRARY_DIRS})
|
||||
list(APPEND LIBSSH2_PC_REQUIRES_PRIVATE "libgcrypt")
|
||||
link_directories(${LIBGCRYPT_LIBRARY_DIRS})
|
||||
if(LIBGCRYPT_CFLAGS)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${LIBGCRYPT_CFLAGS}")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(CRYPTO_BACKEND STREQUAL "mbedTLS" OR NOT CRYPTO_BACKEND)
|
||||
|
||||
find_package(MbedTLS ${_specific_crypto_requirement})
|
||||
|
||||
if(MBEDTLS_FOUND)
|
||||
set(CRYPTO_BACKEND "mbedTLS")
|
||||
set(CRYPTO_BACKEND_DEFINE "LIBSSH2_MBEDTLS")
|
||||
set(CRYPTO_BACKEND_INCLUDE_DIR ${MBEDTLS_INCLUDE_DIRS})
|
||||
list(APPEND LIBSSH2_LIBS ${MBEDTLS_LIBRARIES})
|
||||
list(APPEND LIBSSH2_LIBDIRS ${MBEDTLS_LIBRARY_DIRS})
|
||||
list(APPEND LIBSSH2_PC_REQUIRES_PRIVATE "mbedcrypto")
|
||||
link_directories(${MBEDTLS_LIBRARY_DIRS})
|
||||
if(MBEDTLS_CFLAGS)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${MBEDTLS_CFLAGS}")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Detect platform-specific crypto-backends last:
|
||||
|
||||
if(CRYPTO_BACKEND STREQUAL "WinCNG" OR NOT CRYPTO_BACKEND)
|
||||
if(WIN32)
|
||||
set(CRYPTO_BACKEND "WinCNG")
|
||||
set(CRYPTO_BACKEND_DEFINE "LIBSSH2_WINCNG")
|
||||
set(CRYPTO_BACKEND_INCLUDE_DIR "")
|
||||
list(APPEND LIBSSH2_LIBS "crypt32" "bcrypt")
|
||||
|
||||
option(ENABLE_ECDSA_WINCNG "Enable WinCNG ECDSA support (requires Windows 10 or later)" OFF)
|
||||
add_feature_info(WinCNG ENABLE_ECDSA_WINCNG "WinCNG ECDSA support")
|
||||
if(ENABLE_ECDSA_WINCNG)
|
||||
add_definitions("-DLIBSSH2_ECDSA_WINCNG")
|
||||
if(MSVC)
|
||||
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /SUBSYSTEM:WINDOWS,10")
|
||||
elseif(MINGW)
|
||||
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--subsystem,windows:10")
|
||||
endif()
|
||||
endif()
|
||||
elseif(_specific_crypto_requirement STREQUAL "REQUIRED")
|
||||
message(FATAL_ERROR "WinCNG not available")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Global functions
|
||||
|
||||
# Convert GNU Make assignments into CMake ones.
|
||||
function(transform_makefile_inc _input_file _output_file)
|
||||
file(READ ${_input_file} _makefile_inc_cmake)
|
||||
|
||||
string(REGEX REPLACE "\\\\\n" "" _makefile_inc_cmake ${_makefile_inc_cmake})
|
||||
string(REGEX REPLACE "([A-Za-z_]+) *= *([^\n]*)" "set(\\1 \\2)" _makefile_inc_cmake ${_makefile_inc_cmake})
|
||||
|
||||
file(WRITE ${_output_file} ${_makefile_inc_cmake})
|
||||
set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS "${_input_file}")
|
||||
endfunction()
|
||||
|
||||
#
|
||||
|
||||
add_subdirectory(src)
|
||||
|
||||
if(BUILD_EXAMPLES)
|
||||
add_subdirectory(example)
|
||||
endif()
|
||||
|
||||
if(BUILD_TESTING)
|
||||
enable_testing()
|
||||
add_subdirectory(tests)
|
||||
endif()
|
||||
|
||||
option(LINT "Check style while building" OFF)
|
||||
if(LINT)
|
||||
add_custom_target(lint ALL "./ci/checksrc.sh" WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
|
||||
if(BUILD_STATIC_LIBS)
|
||||
add_dependencies(${LIB_STATIC} lint)
|
||||
else()
|
||||
add_dependencies(${LIB_SHARED} lint)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
add_subdirectory(docs)
|
||||
|
||||
feature_summary(WHAT ALL)
|
||||
|
||||
set(CPACK_PACKAGE_VERSION_MAJOR ${LIBSSH2_VERSION_MAJOR})
|
||||
set(CPACK_PACKAGE_VERSION_MINOR ${LIBSSH2_VERSION_MINOR})
|
||||
set(CPACK_PACKAGE_VERSION_PATCH ${LIBSSH2_VERSION_PATCH})
|
||||
set(CPACK_PACKAGE_VERSION ${LIBSSH2_VERSION})
|
||||
include(CPack)
|
||||
43
vendor/libssh2/COPYING
vendored
Normal file
43
vendor/libssh2/COPYING
vendored
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
/* Copyright (C) 2004-2007 Sara Golemon <sarag@libssh2.org>
|
||||
* Copyright (C) 2005,2006 Mikhail Gusarov <dottedmag@dottedmag.net>
|
||||
* Copyright (C) 2006-2007 The Written Word, Inc.
|
||||
* Copyright (C) 2007 Eli Fant <elifantu@mail.ru>
|
||||
* Copyright (C) 2009-2023 Daniel Stenberg
|
||||
* Copyright (C) 2008, 2009 Simon Josefsson
|
||||
* Copyright (C) 2000 Markus Friedl
|
||||
* Copyright (C) 2015 Microsoft Corp.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms,
|
||||
* with or without modification, are permitted provided
|
||||
* that the following conditions are met:
|
||||
*
|
||||
* Redistributions of source code must retain the above
|
||||
* copyright notice, this list of conditions and the
|
||||
* following disclaimer.
|
||||
*
|
||||
* Redistributions in binary form must reproduce the above
|
||||
* copyright notice, this list of conditions and the following
|
||||
* disclaimer in the documentation and/or other materials
|
||||
* provided with the distribution.
|
||||
*
|
||||
* Neither the name of the copyright holder nor the names
|
||||
* of any other contributors may be used to endorse or
|
||||
* promote products derived from this software without
|
||||
* specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
|
||||
* CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
|
||||
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
|
||||
* USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
|
||||
* OF SUCH DAMAGE.
|
||||
*/
|
||||
1
vendor/libssh2/ChangeLog
vendored
Normal file
1
vendor/libssh2/ChangeLog
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
see NEWS
|
||||
84
vendor/libssh2/Makefile.am
vendored
Normal file
84
vendor/libssh2/Makefile.am
vendored
Normal file
|
|
@ -0,0 +1,84 @@
|
|||
# Copyright (C) The libssh2 project and its contributors.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
AUTOMAKE_OPTIONS = foreign nostdinc
|
||||
|
||||
SUBDIRS = src docs
|
||||
SUBDIRS += tests
|
||||
if BUILD_EXAMPLES
|
||||
SUBDIRS += example
|
||||
endif
|
||||
|
||||
pkgconfigdir = $(libdir)/pkgconfig
|
||||
pkgconfig_DATA = libssh2.pc
|
||||
|
||||
include_HEADERS = \
|
||||
include/libssh2.h \
|
||||
include/libssh2_publickey.h \
|
||||
include/libssh2_sftp.h
|
||||
|
||||
DISTCLEANFILES =
|
||||
|
||||
VMSFILES = vms/libssh2_make_example.dcl vms/libssh2_make_help.dcl \
|
||||
vms/libssh2_make_kit.dcl vms/libssh2_make_lib.dcl vms/man2help.c \
|
||||
vms/readme.vms vms/libssh2_config.h
|
||||
|
||||
WIN32FILES = src/libssh2.rc
|
||||
|
||||
OS400FILES = os400/README400 os400/initscript.sh os400/make.sh \
|
||||
os400/make-src.sh os400/make-rpg.sh os400/make-include.sh \
|
||||
os400/config400.default \
|
||||
os400/os400sys.c os400/ccsid.c \
|
||||
os400/libssh2_config.h os400/macros.h os400/libssh2_ccsid.h \
|
||||
os400/include/alloca.h os400/include/sys/socket.h \
|
||||
os400/include/assert.h \
|
||||
os400/libssh2rpg/libssh2.rpgle.in \
|
||||
os400/libssh2rpg/libssh2_ccsid.rpgle.in \
|
||||
os400/libssh2rpg/libssh2_publickey.rpgle \
|
||||
os400/libssh2rpg/libssh2_sftp.rpgle \
|
||||
os400/rpg-examples/SFTPXMPLE
|
||||
|
||||
EXTRA_DIST = $(WIN32FILES) get_ver.awk \
|
||||
maketgz RELEASE-NOTES libssh2.pc.in $(VMSFILES) config.rpath \
|
||||
CMakeLists.txt cmake git2news.pl libssh2-style.el README.md $(OS400FILES)
|
||||
|
||||
ACLOCAL_AMFLAGS = -I m4
|
||||
|
||||
.PHONY: ChangeLog
|
||||
ChangeLog:
|
||||
echo "see NEWS" > ./ChangeLog
|
||||
DISTCLEANFILES += ChangeLog
|
||||
|
||||
dist-hook:
|
||||
rm -rf $(top_builddir)/tests/log
|
||||
find $(distdir) -name "*.dist" -exec rm {} \;
|
||||
(distit=`find $(srcdir) -name "*.dist"`; \
|
||||
for file in $$distit; do \
|
||||
strip=`echo $$file | sed -e s/^$(srcdir)// -e s/\.dist//`; \
|
||||
cp -p $$file $(distdir)$$strip; \
|
||||
done)
|
||||
|
||||
# Code Coverage
|
||||
|
||||
init-coverage:
|
||||
make clean
|
||||
lcov --directory . --zerocounters
|
||||
|
||||
COVERAGE_CCOPTS := "-g --coverage"
|
||||
COVERAGE_OUT := docs/coverage
|
||||
|
||||
build-coverage:
|
||||
make CFLAGS=$(COVERAGE_CCOPTS) check
|
||||
mkdir -p $(COVERAGE_OUT)
|
||||
lcov --directory . --output-file $(COVERAGE_OUT)/$(PACKAGE).info \
|
||||
--capture
|
||||
|
||||
gen-coverage:
|
||||
genhtml --output-directory $(COVERAGE_OUT) \
|
||||
$(COVERAGE_OUT)/$(PACKAGE).info \
|
||||
--highlight --frames --legend \
|
||||
--title "$(PACKAGE_NAME)"
|
||||
|
||||
coverage: init-coverage build-coverage gen-coverage
|
||||
|
||||
checksrc:
|
||||
ci/checksrc.sh
|
||||
1007
vendor/libssh2/Makefile.in
vendored
Normal file
1007
vendor/libssh2/Makefile.in
vendored
Normal file
File diff suppressed because it is too large
Load diff
10896
vendor/libssh2/NEWS
vendored
Normal file
10896
vendor/libssh2/NEWS
vendored
Normal file
File diff suppressed because it is too large
Load diff
19
vendor/libssh2/README
vendored
Normal file
19
vendor/libssh2/README
vendored
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
libssh2 - SSH2 library
|
||||
======================
|
||||
|
||||
libssh2 is a library implementing the SSH2 protocol, available under
|
||||
the revised BSD license.
|
||||
|
||||
Web site: https://libssh2.org/
|
||||
|
||||
Mailing list: https://lists.haxx.se/listinfo/libssh2-devel
|
||||
|
||||
License: see COPYING
|
||||
|
||||
Source code: https://github.com/libssh2/libssh2
|
||||
|
||||
Web site source code: https://github.com/libssh2/www
|
||||
|
||||
Installation instructions are in:
|
||||
- docs/INSTALL_CMAKE for CMake
|
||||
- docs/INSTALL_AUTOTOOLS for Autotools
|
||||
16
vendor/libssh2/README.md
vendored
Normal file
16
vendor/libssh2/README.md
vendored
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
# libssh2 - SSH2 library
|
||||
|
||||
libssh2 is a library implementing the SSH2 protocol, available under
|
||||
the revised BSD license.
|
||||
|
||||
[Web site](https://libssh2.org/)
|
||||
|
||||
[Mailing list](https://lists.haxx.se/listinfo/libssh2-devel)
|
||||
|
||||
[BSD Licensed](https://libssh2.org/license.html)
|
||||
|
||||
[Web site source code](https://github.com/libssh2/www)
|
||||
|
||||
Installation instructions:
|
||||
- [for CMake](docs/INSTALL_CMAKE.md)
|
||||
- [for autotools](docs/INSTALL_AUTOTOOLS)
|
||||
325
vendor/libssh2/RELEASE-NOTES
vendored
Normal file
325
vendor/libssh2/RELEASE-NOTES
vendored
Normal file
|
|
@ -0,0 +1,325 @@
|
|||
libssh2 1.11.1
|
||||
|
||||
Deprecation notices:
|
||||
|
||||
- Starting October 2024, the following algos go deprecated and will be
|
||||
disabled in default builds (with an option to enable them):
|
||||
|
||||
- DSA: `ssh-dss` hostkeys.
|
||||
You can enable it now with `-DLIBSSH2_DSA_ENABLE`.
|
||||
Disabled by default in OpenSSH 7.0 (2015-08-11).
|
||||
Support to be removed by early 2025 from OpenSSH.
|
||||
- MD5-based MACs and hashes: `hmac-md5`, `hmac-md5-96`,
|
||||
`LIBSSH2_HOSTKEY_HASH_MD5`
|
||||
You can disable it now with `-DLIBSSH2_NO_MD5`.
|
||||
Disabled by default since OpenSSH 7.2 (2016-02-29).
|
||||
- 3DES cipher: `3des-cbc`
|
||||
You can disable it now with `-DLIBSSH2_NO_3DES`.
|
||||
Disabled by default since OpenSSH 7.4 (2016-12-19).
|
||||
- RIPEMD-160 MACs: `hmac-ripemd160`, `hmac-ripemd160@openssh.com`
|
||||
You can disable it now with `-DLIBSSH2_NO_HMAC_RIPEMD`.
|
||||
Removed in OpenSSH 7.6 (2017-10-03).
|
||||
- Blowfish cipher: `blowfish-cbc`
|
||||
You can disable it now with `-DLIBSSH2_NO_BLOWFISH`.
|
||||
Removed in OpenSSH 7.6 (2017-10-03).
|
||||
- RC4 ciphers: `arcfour`, `arcfour128`
|
||||
You can disable it now with `-DLIBSSH2_NO_RC4`.
|
||||
Removed in OpenSSH 7.6 (2017-10-03).
|
||||
- CAST cipher: `cast128-cbc`
|
||||
You can disable it now with `-DLIBSSH2_NO_CAST`.
|
||||
Removed in OpenSSH 7.6 (2017-10-03).
|
||||
|
||||
- Starting April 2025, above options will be deleted from the
|
||||
libssh2 codebase.
|
||||
|
||||
- Default builds will also disable support for old-style, MD5-based
|
||||
encrypted private keys.
|
||||
You can disable it now with `-DLIBSSH2_NO_MD5_PEM`.
|
||||
|
||||
This release includes the following enhancements and bugfixes:
|
||||
|
||||
- autotools: fix to update `LDFLAGS` for each detected dependency (d19b6190 #1384 #1381 #1377)
|
||||
- autotools: delete `--disable-tests` option, fix CI tests (e051ae34 #1271 #715 revert: 7483edfa)
|
||||
- autotools: show the default for `hidden-symbols` option (a3f5594a #1269)
|
||||
- autotools: enable `-Wunused-macros` with gcc (ecdf5199 #1262 #1227 #1224)
|
||||
- autotools: fix dotless gcc and Apple clang version detections (89ccc83c #1232 #1187)
|
||||
- autotools: show more clang/gcc version details (fb580161 #1230)
|
||||
- autotools: avoid warnings in libtool stub code (96682bd5 #1227 #1224)
|
||||
- autotools: sync warning enabler code with curl (5996fefe #1223)
|
||||
- autotools: rename variable (ce5f208a #1222)
|
||||
- autotools: picky warning options tidy-up (cdca8cff #1221)
|
||||
- autotools: fix `cp` to preserve attributes and timestamp in `Makefile.am` (f64e6318)
|
||||
- autotools: fix selecting WinCNG in cross-builds (and more) (00a3b88c #1187 #1186)
|
||||
- autotools: use comma separator in `Requires.private` of `libssh2.pc` (7f83de14 #1124)
|
||||
- autotools: remove `AB_INIT` from `configure.ac` (f4f52ccc)
|
||||
- autotools: improve libz position (c89174a7 #1077 #941 #1075 #1013 regr: 4f0f4bff)
|
||||
- autotools: skip tests requiring static lib if `--disable-static` (572c57c9 #1072 #663 #1056 regr: 83853f8a)
|
||||
- build: stop detecting `sys/param.h` header (2677d3b0 #1418 #1415)
|
||||
- build: silence warnings inside `FD_SET()`/`FD_ISSET()` macros (323a14b2 #1379)
|
||||
- build: drop `-Wformat-nonliteral` warning suppressions (c452c5cc #1342)
|
||||
- build: enable `-pedantic-errors` (3ec53f3e #1286)
|
||||
- build: add mingw-w64 support to `LIBSSH2_PRINTF()` attribute (f8c45794 #1287)
|
||||
- build: add `LIBSSH2_NO_DEPRECATED` option (b1414503 #1267 #1266 #1260 #1259)
|
||||
- build: enable missing OpenSSF-recommended warnings, with fixes (afa6b865 #1257)
|
||||
- build: enable more compiler warnings and fix them (7ecc309c #1224)
|
||||
- build: picky warning updates (328a96b3 #1219)
|
||||
- build: revert: respect autotools `DLL_EXPORT` in `libssh2.h` (481be044 #1141 #917 revert: fb1195cf)
|
||||
- build: stop requiring libssl from openssl (c84745e3 #1128)
|
||||
- build: tidy-up `libssh2.pc.in` variable names (5720dd9f #1125)
|
||||
- build: add/fix `Requires.private` packages in `libssh2.pc` (ef538069 #1123)
|
||||
- buildconf: drop (814a850c #1441 follow: fc5d7788)
|
||||
- checksrc: update, check all sources, fix fallouts (1117b677 #1457)
|
||||
- checksrc: sync with curl (8cd473c9 #1272)
|
||||
- checksrc: fix spelling in comment (a95d401f)
|
||||
- checksrc: modernise Perl file open (3d309f9b)
|
||||
- checksrc: switch to dot file (d67a91aa #1052)
|
||||
- ci: use Ninja with cmake (20ad047d #1458)
|
||||
- ci: disable dependency tracking in autotools builds (e44f0418 #1396)
|
||||
- ci: fix mbedtls runners on macOS (84411539 #1381)
|
||||
- ci: enable Unity mode for most CMake builds (1bfae57b #1367 #1034)
|
||||
- ci: add shellcheck job and script (d88b9bcd)
|
||||
- ci: verify build and install from tarball (a86e27e8 #1362)
|
||||
- ci: add reproducibility test for `maketgz` (2d765e45 #1360)
|
||||
- ci: use Linux runner for BSDs, add arm64 FreeBSD 14 job (6f86b196 #1343)
|
||||
- ci: do not parallelize `distcheck` job (5e65dd87 #1339)
|
||||
- ci: add FreeBSD 14 job, fix issues (46333adf #1277)
|
||||
- ci: add OmniOS job, fix issues (5e0ec991)
|
||||
- ci: show compiler in cross/cygwin job names (c9124088)
|
||||
- ci: add OpenBSD (v7.4) job + fix build error in example (0c9a8e35 #1250)
|
||||
- ci: add NetBSD (v9.3) job (65c7a7a5)
|
||||
- ci: update and speed up FreeBSD job (eee4e805)
|
||||
- ci: use absolute path in `CMAKE_INSTALL_PREFIX` (74948816 #1247)
|
||||
- ci: boost mbedTLS build speed (236e79a1 #1245)
|
||||
- ci: add BoringSSL job (cmake, gcc, amd64) (c9dd3566 #1233)
|
||||
- ci: fixup FreeBSD version, bump mbedTLS (fea6664e #1217)
|
||||
- ci: add FreeBSD 13.2 job (a7d2a573 #1215)
|
||||
- ci: mbedTLS 3.5.0 (5e190442 #1202)
|
||||
- ci: update actions, use shallow clones with appveyor (d468a33f #1199)
|
||||
- ci: replace `mv` + `chmod` with `install` in `Dockerfile` (5754fed6 #1175)
|
||||
- ci: set file mode early in `appveyor_docker.yml` (633db55f)
|
||||
- ci: add spellcheck (codespell) (a79218d3)
|
||||
- ci: add MSYS builds (autotools and cmake) (d43b8d9b #1162)
|
||||
- ci: add Cygwin builds (autotools and cmake) (f1e96e73 #1161)
|
||||
- ci: add mingw-w64 UWP build (1215aa5f #1155 #1147)
|
||||
- ci: add missing timeout to 'autotools distcheck' step (6265ffdb)
|
||||
- ci: add non-static autotools i386 build, ignore GHA updates on AppVeyor (c6e137f7 #1074 #1072)
|
||||
- ci: prefer `=` operator in shell snippets (e5c03043 #1073)
|
||||
- ci: drop redundant/unused vars, sync var names (ab8e95bc #1059)
|
||||
- ci: add i386 Linux build (with mbedTLS) (abdf40c7 #1057 #1053)
|
||||
- ci/appveyor: reduce test runs (workaround for infrastructure permafails) (b5e68bdc #1461)
|
||||
- ci/appveyor: increase wait for SSH server on GHA (bf3af90b)
|
||||
- ci/appveyor: bump to OpenSSL 3.2.1 (53d9c1a6 #1363 #1348)
|
||||
- ci/appveyor: re-enable parallel mode (e190e5b2 #1294 #884 #867)
|
||||
- ci/appveyor: delete UWP job broken since Visual Studio upgrade (d0a7f1da #1275)
|
||||
- ci/appveyor: YAML/PowerShell formatting, shorten variable name (06fd721f #1200)
|
||||
- ci/appveyor: move to pure PowerShell (8a081fd9 #1197)
|
||||
- ci/GHA: revert concurrency and improve permissions (e4c042f6)
|
||||
- ci/GHA: FreeBSD 14.1, actions bump (ae04b1b9 #1424)
|
||||
- ci/GHA: fix wolfSSL-from-source AES-GCM tests (1c0b07a7 #1409 #1408)
|
||||
- ci/GHA: add Linux job with latest wolfSSL built from source (d4cea53f #1408 #1299 #1020)
|
||||
- ci/GHA: tidy up build-from-source steps (2c633033)
|
||||
- ci/GHA: show configure logs on failure and other tidy-ups (dab48398 #1403)
|
||||
- ci/GHA: bump parallel jobs to nproc+1 (6f3d3bc8 #1402)
|
||||
- ci/GHA: show test logs on failure (b8ffa7a5 #1401)
|
||||
- ci/GHA: fix `Dockerfile` failing after Ubuntu package update (839bb84e #1400)
|
||||
- ci/GHA: use ubuntu-latest with OmniOS job (50143d58)
|
||||
- ci/GHA: shell syntax tidy-up (3b23e039 #1390)
|
||||
- ci/GHA: bump NetBSD/OpenBSD, add NetBSD arm64 job (e980af72 #1388)
|
||||
- ci/GHA: tidy up wolfSSL autotools config on macOS (5953c1f1 #1383)
|
||||
- ci/GHA: shorter mbedTLS autotools workaround (736e3d7d #1382 #1381)
|
||||
- ci/GHA: fix gcrypt with autotools/macOS/Homebrew/ARM64 (ae2770de #1377)
|
||||
- ci/GHA: fix verbose option for autotools jobs (499b27ae #1376)
|
||||
- ci/GHA: dump `config.log` on failure for macOS autotools jobs (4fa69214 #1375)
|
||||
- ci/GHA: fix `autoreconf` failure on macOS/Homebrew (0b64b30b #1374)
|
||||
- ci/GHA: fixup Homebrew location (for ARM runners) (6128aee0 #1373)
|
||||
- ci/GHA: review/fixup auto-cancel settings (b08cfbc9 #1292)
|
||||
- ci/GHA: restore curly braces in `if` (36748270 #1145)
|
||||
- ci/GHA: simplify `if` strings (cab3db58 #1140)
|
||||
- cmake: sync and improve Find modules, add `pkg-config` native detection (45064137 #1445 #1420)
|
||||
- cmake: generate `LIBSSH2_PC_LIBS_PRIVATE` dynamically (c87f1296 #1466)
|
||||
- cmake: add comment about `ibssh2.pc.in` variables (14b1b9d0)
|
||||
- cmake: support absolute `CMAKE_INSTALL_INCLUDEDIR`/`CMAKE_INSTALL_LIBDIR` (d70cee36 #1465)
|
||||
- cmake: rename two variables and initialize them (0fce9dcc #1464)
|
||||
- cmake: prefer `find_dependency()` in `libssh2-config.cmake` (d9c2e550 #1460)
|
||||
- cmake: tidy up syntax, minor improvements (9d9ee780 #1446)
|
||||
- cmake: rename mbedTLS and wolfSSL Find modules (570de0f2)
|
||||
- cmake: fixup version detection in mbedTLS Find module (8e3c40b2 #1444)
|
||||
- cmake: mbedTLS detection tidy-ups (6d1d13c2 #1438)
|
||||
- cmake: add quotes, delete ending dirseps (2bb46d44 #1437 #1166)
|
||||
- cmake: sync formatting in `cmake/Find*` modules (a0310699)
|
||||
- cmake: tidy up function name casing in `CopyRuntimeDependencies.cmake` (03547cb8)
|
||||
- cmake: use the imported target of FindOpenSSL module (82b09f9b #1322)
|
||||
- cmake: rename picky warnings script (64d6789f #1225)
|
||||
- cmake: fix multiple include of libssh2 package (932d6a32 #1216)
|
||||
- cmake: show crypto backend in feature summary (20387285 #1211)
|
||||
- cmake: simplify showing CMake version (fc00bdd7 #1203)
|
||||
- cmake: cleanup mbedTLS version detection more (4c241d5c #1196 #1192)
|
||||
- cmake: delete duplicate `include()` (30eef0a6)
|
||||
- cmake: improve/fix mbedTLS detection (41594675 #1192 #1191)
|
||||
- cmake: tidy-up `foreach()` syntax (4a64ca14 #1180)
|
||||
- cmake: verify `libssh2_VERSION` in integration tests (a20572e9)
|
||||
- cmake: show cmake versions in ci (87f5769b)
|
||||
- cmake: quote more strings (e9c7d3af #1173)
|
||||
- cmake: add `ExternalProject` integration test (aeaefaf6 #1171)
|
||||
- cmake: add integration tests (8715c3d5 #1170)
|
||||
- cmake: (re-)add aliases for `add_subdirectory()` builds (4ff64ae3 #1169)
|
||||
- cmake: style tidy-up (3fa5282d #1166)
|
||||
- cmake: add `LIB_NAME` variable (5453fc80 #1159)
|
||||
- cmake: tidy-up concatenation in `CMAKE_MODULE_PATH` (ae7d5108 #1157)
|
||||
- cmake: replace `libssh2` literals with `PROJECT_NAME` variable (72fd2595 #1152)
|
||||
- cmake: fix `STREQUAL` check in error branch (42d3bf13 #1151)
|
||||
- cmake: cache more config values on Windows (11a03690 #1142)
|
||||
- cmake: streamline invocation (f58f77b5 #1138)
|
||||
- cmake: merge `set_target_properties()` calls (a9091007 #1132)
|
||||
- cmake: (re-)add zlib to `Libs.private` in `libssh2.pc` (64643018 #1131)
|
||||
- cmake: use `wolfssl/options.h` for detection, like autotools (c5ec6c49 #1130)
|
||||
- cmake: add openssl libs to `Libs.private` in `libssh2.pc` (5cfa59d3 #1127)
|
||||
- cmake: bump minimum CMake version to v3.7.0 (9cd18f45 #1126)
|
||||
- cmake: CMAKE_SOURCE_DIR -> PROJECT_SOURCE_DIR (0f396aa9 #1121)
|
||||
- cmake: tidy-ups (2fc36790 #1122)
|
||||
- cmake: re-add `Libssh2:libssh2` for compatibility + lowercase namespace (2da13c13 #1104 #731 #1103)
|
||||
- copyright: remove years from copyright headers (187d89bb #1082)
|
||||
- disable DSA by default (b7ab0faa #1435 #1433)
|
||||
- docs: update `INSTALL_AUTOTOOLS` (2f0efde3 #1316)
|
||||
- docs: replace SHA1 with SHA256 in CMake example (766bde9f)
|
||||
- example: restore `sys/time.h` for AIX (24503cb9 #1340 #1335 #1334 #1001 regr: e53aae0e)
|
||||
- example: use `libssh2_socket_t` in X11 example (3f60ccb7)
|
||||
- example: replace remaining libssh2_scp_recv with libssh2_scp_recv2 in output messages (8d69e63d #1258 follow: 6c84a426)
|
||||
- example: fix regression in `ssh2_exec.c` (279a2e57 #1106 #861 #846 #1105 regr: b13936bd)
|
||||
- example, tests: call `WSACleanup()` for each `WSAStartup()` (94b6bad3 #1283)
|
||||
- example, tests: fix/silence `-Wformat-truncation=2` gcc warnings (744e059f)
|
||||
- hostkey: do not advertise ssh-rsa when SHA1 is disabled (82d1b8ff #1093 #1092)
|
||||
- kex: prevent possible double free of hostkey (b3465418 #1452)
|
||||
- kex: always check for null pointers before calling _libssh2_bn_set_word (9f23a3bb #1423)
|
||||
- kex: fix a memory leak in key exchange (19101843 #1412 #1404)
|
||||
- kex: always add extension indicators to kex_algorithms (00e2a07e #1327 #1326)
|
||||
- libssh2.h: add deprecated function warnings (9839ebe5 #1289 #1260)
|
||||
- libssh2.h: add portable `LIBSSH2_SOCKET_CLOSE()` macro (28dbf016 #1278)
|
||||
- libssh2.h: use `_WIN32` for Windows detection instead of rolling our own (631e7734 #1238)
|
||||
- libssh2.pc: reference mbedcrypto pkgconfig (c149a127 #1405)
|
||||
- libssh2.pc: re-add & extend support for static-only libssh2 builds (624abe27 #1119 #1114)
|
||||
- libssh2.pc: don't put `@LIBS@` in pc file (1209c16d)
|
||||
- mac: add empty hash functions for `mac_method_hmac_aesgcm` to not crash when e.g. setting `LIBSSH2_METHOD_CRYPT_CS` (b2738391 #1321)
|
||||
- mac: handle low-level errors (f64885b6 #1297)
|
||||
- Makefile.mk: delete Windows-focused raw GNU Make build (43485579 #1204)
|
||||
- maketgz: reproducible tarballs/zip, display tarball hashes (d52fe1b4 #1357 #1359)
|
||||
- maketgz: `set -eu`, reproducibility, improve zip, add CI test (cba7f975 #1353)
|
||||
- man: improve `libssh2_userauth_publickey_from*` manpages (581b72aa #1347 #1308 #652)
|
||||
- man: fix double spaces and dash escaping (a3ffc422 #1210)
|
||||
- man: add description to `libssh2_session_get_blocking.3` (67e39091 #1185)
|
||||
- mbedtls: always init ECDSA mbedtls_pk_context (a50d7deb #1430)
|
||||
- mbedtls: correctly initialize values (ECDSA) (1701d5c0 #1428 #1421)
|
||||
- mbedtls: expose `mbedtls_pk_load_file()` for our use (1628f6ca #1421 #1393 #1349 follow: e973493f)
|
||||
- mbedtls: add workaround + FIXME to build with 3.6.0 (2e4c5ec4 #1349)
|
||||
- mbedtls: improve disabling `-Wredundant-decls` (ecec68a2 #1226 #1224)
|
||||
- mbedtls: include `version.h` for `MBEDTLS_VERSION_NUMBER` (9d7bc253 #1095 #1094)
|
||||
- mbedtls: use more `size_t` to sync up with `crypto.h` (1153ebde #1054 #879 #846 #1053)
|
||||
- md5: allow disabling old-style encrypted private keys at build-time (eb9f9de2 #1181)
|
||||
- mingw: fix printf mask for 64-bit integers (36c1e1d1 #1091 #876 #846 #1090)
|
||||
- misc: flatten `_libssh2_explicit_zero` if tree (74e74288 #1149)
|
||||
- NMakefile: delete (c515eed3 #1134 #1129)
|
||||
- openssl: free allocated resources when using openssl3 (b942bad1 #1459)
|
||||
- openssl: fix memory leaks in `_libssh2_ecdsa_curve_name_with_octal_new` and `_libssh2_ecdsa_verify` (8d3bc19b #1449)
|
||||
- openssl: fix calculating DSA public key with OpenSSL 3 (8b3c6e9d #1380)
|
||||
- openssl: initialize BIGNUMs to NULL in `gen_publickey_from_dsa` for OpenSSL 3 (f1133c75 #1320)
|
||||
- openssl: fix cppcheck found NULL dereferences (f2945905 #1304)
|
||||
- openssl: delete internal `read_openssh_private_key_from_memory()` (34aff5ff #1306)
|
||||
- openssl: use OpenSSL 3 HMAC API, add `no-deprecated` CI job (363dcbf4 #1243 #1235 #1207)
|
||||
- openssl: make a function static, add `#ifdef` comments (efee9133 #1246 #248 follow: 03092292)
|
||||
- openssl: fix DSA code to use OpenSSL 3 API (82581941 #1244 #1207)
|
||||
- openssl: fix `EC_KEY` reference with OpenSSL 3 `no-deprecated` build (487152f4 #1236 #1235 #1207)
|
||||
- openssl: use non-deprecated APIs with OpenSSL 3.x (b0ab005f #1207)
|
||||
- openssl: silence `-Wunused-value` warnings (bf285500 #1205)
|
||||
- openssl: use automatic initialization with LibreSSL 2.7.0+ (d79047c9 #1146 #302)
|
||||
- openssl: add missing check for `LIBRESSL_VERSION_NUMBER` before use (4a42f42e #1117 #1115)
|
||||
- os400: drop vsprintf() use (40e817ff #1462 #1457)
|
||||
- os400: Add two recent files to the distribution (e4c65e5b #1364)
|
||||
- os400: fix shellcheck warnings in scripts (fixups) (81341e1e #1366 #1364 #1358)
|
||||
- os400: fix shellcheck warnings in scripts (c6625707 #1358)
|
||||
- os400: maintain up to date (8457c37a #1309)
|
||||
- packet: properly bounds check packet_authagent_open() (88a960a8 #1179)
|
||||
- pem: fix private keys encrypted with AES-GCM methods (e87bdefa #1133)
|
||||
- reuse: upgrade to `REUSE.toml` (70b8bf31 #1419)
|
||||
- reuse: fix duplicate copyright warning (b9a4ed83)
|
||||
- reuse: comply with 3.1 spec and 2.0.0 checker (fe6239a1 #1102 #1101 #1098)
|
||||
- reuse: provide SPDX identifiers (f6aa31f4 #1084)
|
||||
- scp: fix missing cast for targets without large file support (c317e06f #1060 #1057 #1002 regr: 5db836b2)
|
||||
- session: support server banners up to 8192 bytes (was: 256) (1a9e8811 #1443 #1442)
|
||||
- session: add `libssh2_session_callback_set2()` (c0f69548 #1285)
|
||||
- session: handle EINTR from send/recv/poll/select to try again as the error is not fatal (798ed4a7 #1058 #955)
|
||||
- sftp: increase SFTP_HANDLE_MAXLEN back to 4092 (75de6a37 #1422)
|
||||
- sftp: implement posix-rename@openssh.com (fb652746 #1386)
|
||||
- src: implement chacha20-poly1305@openssh.com (492bc543 #1426 #584)
|
||||
- src: use `UINT32_MAX` (dc206408 #1413)
|
||||
- src: fix type warning in `libssh2_sftp_unlink` macro (ac2e8c73 #1406)
|
||||
- src: check the return value from `_libssh2_bn_*()` functions (95c824d5 #1354)
|
||||
- src: support RSA-SHA2 cert-based authentication (rsa-sha2-512_cert and rsa-sha2-256_cert) (3a6ab70d #1314)
|
||||
- src: check hash update/final success (4718ede4 #1303 #1301)
|
||||
- src: check hash init success (2ed9eb92 #1301)
|
||||
- src: add 'strict KEX' to fix CVE-2023-48795 "Terrapin Attack" (d34d9258 #1291 #1290)
|
||||
- src: disable `-Wsign-conversion` warnings, add option to re-enable (6e451669 #1284 #1257)
|
||||
- src: fix gcc 13 `-Wconversion` warning on Darwin (8cca7b77 #1209 follow: 08354e0a)
|
||||
- src: drop a redundant `#include` (1f0174d0 #1153)
|
||||
- src: improve MSVC C4701 warning fix (8b924999 #1086 #876 #1083)
|
||||
- src: bump `hash_len` to `size_t` in `LIBSSH2_HOSTKEY_METHOD` (8b917d76 #1076)
|
||||
- src: bump DSA and ECDSA sign `hash_len` to `size_t` (7b8e0225 #1055)
|
||||
- tests: avoid using `MAXPATHLEN`, for portability (12427f4f #1415 #198 #1414)
|
||||
- tests: fix excluding AES-GCM tests (fbd9d192 #1410)
|
||||
- tests: drop default cygpath option `-u` (38e50aa0)
|
||||
- tests: fix shellcheck issues in `test_sshd.test` (a2ac8c55)
|
||||
- tests: sync port number type with the rest of codebase (eb996af8)
|
||||
- tests: fall back to `$LOGNAME` for username (5326a5ce #1241 #1240)
|
||||
- tests: show cmake version used in integration tests (2cd2f40e #1201)
|
||||
- tests: formatting and tidy-ups (e61987a3)
|
||||
- tests: replace FIXME with comments (1a99a86a)
|
||||
- tests: add aes256-gcm encrypted key test (802336cf #1135 #1133)
|
||||
- tests: trap signals in scripts (b2916b28 #1098)
|
||||
- tests: cast to avoid `-Wchar-subscripts` with Cygwin (43df6a46 #1081 #1080)
|
||||
- test_read: make it run without Docker (57e9d18e #1139)
|
||||
- test_sshd.test: show sshd and test connect logs on harness failure (299c2040 #1097)
|
||||
- test_sshd.test: set a safe PID directory (e8cabdcf #1089)
|
||||
- test_sshd.test: minor cleanups (d29eea1d)
|
||||
- tidy-up: link updates (c905bfd2 #1434)
|
||||
- tidy-up: typo in comment (792e1b6f)
|
||||
- tidy-up: fix typo found by codespell (706ec36d)
|
||||
- tidy-up: bump casts from int to long for large C99 types in printfs (2e5a8719 #1264 #1257)
|
||||
- tidy-up: `unsigned` -> `unsigned int` (b136c379)
|
||||
- tidy-up: stop using leading underscores in macro names (c6589b88 #1248)
|
||||
- tidy-up: around `stdint.h` (bfa00f1b #1212)
|
||||
- tidy-up: fix typo in `readme.vms` (a9a79e7a)
|
||||
- tidy-up: use built-in `_WIN32` macro to detect Windows (6fbc9505 #1195)
|
||||
- tidy-up: drop `www.` from `www.libssh2.org` (6e3e8839 #1172)
|
||||
- tidy-up: delete duplicate word from comment (76307435)
|
||||
- tidy-up: avoid exclamations, prefer single quotes, in outputs (003fb454 #1079)
|
||||
- TODO: disable or drop weak algos (0b4bdc85 #1261)
|
||||
- transport: fix unstable connections over non-blocking sockets (de004875 #1454 #720 #1431 #1397)
|
||||
- transport: check ETM on remote end when receiving (bde10825 #1332 #1331)
|
||||
- transport: fix incorrect byte offset in debug message (2388a3aa #1096)
|
||||
- userauth: avoid oob with huge interactive kbd response (f3a85cad #1337)
|
||||
- userauth: add a new structure to separate memory read and file read (63b4c20e #773)
|
||||
- userauth: check whether `*key_method` is a NULL pointer instead of `key_method` (bec57c40)
|
||||
- wincng: fix `DH_GEX_MAXGROUP` set higher than supported (48584671 #1372 #493)
|
||||
- wincng: add to ci/GHA, add `./configure` option `--enable-ecdsa-wincng` (3f98bfb0 #1368 #1315)
|
||||
- wincng: add ECDSA support for host and user authentication (3e723437 #1315)
|
||||
- wincng: prefer `ULONG`/`DWORD` over `unsigned long` (186c1d63 #1165)
|
||||
- wincng: tidy-ups (7bb669b5 #1164)
|
||||
- wolfssl: drop header path hack (8ae1b2d7 #1439)
|
||||
- wolfssl: fix `EVP_Cipher()` use with v5.6.0 and older (a5b0fac2 #1407 #1394 #797 #1299 #1020)
|
||||
- wolfssl: bump version in upstream issue comment (5cab802c)
|
||||
- wolfssl: require v5.4.0 for AES-GCM (260a721c #1411 #1299 #1020)
|
||||
- wolfssl: enable debug logging in wolfSSL when compiled in (76e7a68a #1310)
|
||||
|
||||
This release would not have looked like this without help, code, reports and
|
||||
advice from friends like these:
|
||||
|
||||
Viktor Szakats, Michael Buckley, Patrick Monnerat, Ren Mingshuai,
|
||||
Will Cosgrove, Daniel Stenberg, Josef Cejka, Nicolas Mora, Ryan Kelley,
|
||||
Aaron Stone, Adam, Anders Borum, András Fekete, Andrei Augustin, binary1248,
|
||||
Brian Inglis, brucsc on GitHub, concussious on github, Dan Fandrich,
|
||||
dksslq on github, Haowei Hsu, Harmen Stoppels, Harry Mallon, Jack L,
|
||||
Jakob Egger, Jiwoo Park, João M. S. Silva, Joel Depooter, Johannes Passing,
|
||||
Jose Quaresma, Juliusz Sosinowicz, Kai Pastor, Kenneth Davidson,
|
||||
klux21 on github, Lyndon Brown, Marc Hoersken, mike-jumper, naddy,
|
||||
Nursan Valeyev, Paul Howarth, PewPewPew, Radek Brich, rahmanih on github,
|
||||
rolag on github, Seo Suchan, shubhamhii on github, Steve McIntyre,
|
||||
Tejaswi Kandula, Tobias Stoeckmann, Trzik, Xi Ruoyao
|
||||
950
vendor/libssh2/acinclude.m4
vendored
Normal file
950
vendor/libssh2/acinclude.m4
vendored
Normal file
|
|
@ -0,0 +1,950 @@
|
|||
# Copyright (C) The libssh2 project and its contributors.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
dnl CURL_CPP_P
|
||||
dnl
|
||||
dnl Check if $cpp -P should be used for extract define values due to gcc 5
|
||||
dnl splitting up strings and defines between line outputs. gcc by default
|
||||
dnl (without -P) will show TEST EINVAL TEST as
|
||||
dnl
|
||||
dnl # 13 "conftest.c"
|
||||
dnl TEST
|
||||
dnl # 13 "conftest.c" 3 4
|
||||
dnl 22
|
||||
dnl # 13 "conftest.c"
|
||||
dnl TEST
|
||||
|
||||
AC_DEFUN([CURL_CPP_P], [
|
||||
AC_MSG_CHECKING([if cpp -P is needed])
|
||||
AC_EGREP_CPP([TEST.*TEST], [
|
||||
#include <errno.h>
|
||||
TEST EINVAL TEST
|
||||
], [cpp=no], [cpp=yes])
|
||||
AC_MSG_RESULT([$cpp])
|
||||
|
||||
dnl we need cpp -P so check if it works then
|
||||
if test "x$cpp" = "xyes"; then
|
||||
AC_MSG_CHECKING([if cpp -P works])
|
||||
OLDCPPFLAGS=$CPPFLAGS
|
||||
CPPFLAGS="$CPPFLAGS -P"
|
||||
AC_EGREP_CPP([TEST.*TEST], [
|
||||
#include <errno.h>
|
||||
TEST EINVAL TEST
|
||||
], [cpp_p=yes], [cpp_p=no])
|
||||
AC_MSG_RESULT([$cpp_p])
|
||||
|
||||
if test "x$cpp_p" = "xno"; then
|
||||
AC_MSG_WARN([failed to figure out cpp -P alternative])
|
||||
# without -P
|
||||
CPPPFLAG=""
|
||||
else
|
||||
# with -P
|
||||
CPPPFLAG="-P"
|
||||
fi
|
||||
dnl restore CPPFLAGS
|
||||
CPPFLAGS=$OLDCPPFLAGS
|
||||
else
|
||||
# without -P
|
||||
CPPPFLAG=""
|
||||
fi
|
||||
])
|
||||
|
||||
dnl CURL_CHECK_DEF (SYMBOL, [INCLUDES], [SILENT])
|
||||
dnl -------------------------------------------------
|
||||
dnl Use the C preprocessor to find out if the given object-style symbol
|
||||
dnl is defined and get its expansion. This macro will not use default
|
||||
dnl includes even if no INCLUDES argument is given. This macro will run
|
||||
dnl silently when invoked with three arguments. If the expansion would
|
||||
dnl result in a set of double-quoted strings the returned expansion will
|
||||
dnl actually be a single double-quoted string concatenating all them.
|
||||
|
||||
AC_DEFUN([CURL_CHECK_DEF], [
|
||||
AC_REQUIRE([CURL_CPP_P])dnl
|
||||
OLDCPPFLAGS=$CPPFLAGS
|
||||
# CPPPFLAG comes from CURL_CPP_P
|
||||
CPPFLAGS="$CPPFLAGS $CPPPFLAG"
|
||||
AS_VAR_PUSHDEF([ac_HaveDef], [curl_cv_have_def_$1])dnl
|
||||
AS_VAR_PUSHDEF([ac_Def], [curl_cv_def_$1])dnl
|
||||
if test -z "$SED"; then
|
||||
AC_MSG_ERROR([SED not set. Cannot continue without SED being set.])
|
||||
fi
|
||||
if test -z "$GREP"; then
|
||||
AC_MSG_ERROR([GREP not set. Cannot continue without GREP being set.])
|
||||
fi
|
||||
ifelse($3,,[AC_MSG_CHECKING([for preprocessor definition of $1])])
|
||||
tmp_exp=""
|
||||
AC_PREPROC_IFELSE([
|
||||
AC_LANG_SOURCE(
|
||||
ifelse($2,,,[$2])[[
|
||||
#ifdef $1
|
||||
CURL_DEF_TOKEN $1
|
||||
#endif
|
||||
]])
|
||||
],[
|
||||
tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
|
||||
"$GREP" CURL_DEF_TOKEN 2>/dev/null | \
|
||||
"$SED" 's/.*CURL_DEF_TOKEN[[ ]][[ ]]*//' 2>/dev/null | \
|
||||
"$SED" 's/[["]][[ ]]*[["]]//g' 2>/dev/null`
|
||||
if test -z "$tmp_exp" || test "$tmp_exp" = "$1"; then
|
||||
tmp_exp=""
|
||||
fi
|
||||
])
|
||||
if test -z "$tmp_exp"; then
|
||||
AS_VAR_SET(ac_HaveDef, no)
|
||||
ifelse($3,,[AC_MSG_RESULT([no])])
|
||||
else
|
||||
AS_VAR_SET(ac_HaveDef, yes)
|
||||
AS_VAR_SET(ac_Def, $tmp_exp)
|
||||
ifelse($3,,[AC_MSG_RESULT([$tmp_exp])])
|
||||
fi
|
||||
AS_VAR_POPDEF([ac_Def])dnl
|
||||
AS_VAR_POPDEF([ac_HaveDef])dnl
|
||||
CPPFLAGS=$OLDCPPFLAGS
|
||||
])
|
||||
|
||||
dnl CURL_CHECK_COMPILER_CLANG
|
||||
dnl -------------------------------------------------
|
||||
dnl Verify if compiler being used is clang.
|
||||
|
||||
AC_DEFUN([CURL_CHECK_COMPILER_CLANG], [
|
||||
AC_BEFORE([$0],[CURL_CHECK_COMPILER_GNU_C])dnl
|
||||
AC_MSG_CHECKING([if compiler is clang])
|
||||
CURL_CHECK_DEF([__clang__], [], [silent])
|
||||
if test "$curl_cv_have_def___clang__" = "yes"; then
|
||||
AC_MSG_RESULT([yes])
|
||||
AC_MSG_CHECKING([if compiler is xlclang])
|
||||
CURL_CHECK_DEF([__ibmxl__], [], [silent])
|
||||
if test "$curl_cv_have_def___ibmxl__" = "yes" ; then
|
||||
dnl IBM's almost-compatible clang version
|
||||
AC_MSG_RESULT([yes])
|
||||
compiler_id="XLCLANG"
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
compiler_id="CLANG"
|
||||
fi
|
||||
flags_dbg_yes="-g"
|
||||
flags_opt_all="-O -O0 -O1 -O2 -Os -O3 -O4"
|
||||
flags_opt_yes="-O2"
|
||||
flags_opt_off="-O0"
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
])
|
||||
|
||||
dnl **********************************************************************
|
||||
dnl CURL_DETECT_ICC ([ACTION-IF-YES])
|
||||
dnl
|
||||
dnl check if this is the Intel ICC compiler, and if so run the ACTION-IF-YES
|
||||
dnl sets the $ICC variable to "yes" or "no"
|
||||
dnl **********************************************************************
|
||||
AC_DEFUN([CURL_DETECT_ICC],
|
||||
[
|
||||
ICC="no"
|
||||
AC_MSG_CHECKING([for icc in use])
|
||||
if test "$GCC" = "yes"; then
|
||||
dnl check if this is icc acting as gcc in disguise
|
||||
AC_EGREP_CPP([^__INTEL_COMPILER], [__INTEL_COMPILER],
|
||||
dnl action if the text is found, this it has not been replaced by the
|
||||
dnl cpp
|
||||
ICC="no",
|
||||
dnl the text was not found, it was replaced by the cpp
|
||||
ICC="yes"
|
||||
AC_MSG_RESULT([yes])
|
||||
[$1]
|
||||
)
|
||||
fi
|
||||
if test "$ICC" = "no"; then
|
||||
# this is not ICC
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
])
|
||||
|
||||
dnl We create a function for detecting which compiler we use and then set as
|
||||
dnl pedantic compiler options as possible for that particular compiler. The
|
||||
dnl options are only used for debug-builds.
|
||||
|
||||
AC_DEFUN([CURL_CC_DEBUG_OPTS],
|
||||
[
|
||||
if test "z$CLANG" = "z"; then
|
||||
CURL_CHECK_COMPILER_CLANG
|
||||
if test "z$compiler_id" = "zCLANG"; then
|
||||
CLANG="yes"
|
||||
else
|
||||
CLANG="no"
|
||||
fi
|
||||
fi
|
||||
if test "z$ICC" = "z"; then
|
||||
CURL_DETECT_ICC
|
||||
fi
|
||||
|
||||
if test "$CLANG" = "yes"; then
|
||||
|
||||
# indentation to match curl's m4/curl-compilers.m4
|
||||
|
||||
dnl figure out clang version!
|
||||
AC_MSG_CHECKING([compiler version])
|
||||
fullclangver=`$CC -v 2>&1 | grep version`
|
||||
if echo $fullclangver | grep 'Apple' >/dev/null; then
|
||||
appleclang=1
|
||||
else
|
||||
appleclang=0
|
||||
fi
|
||||
clangver=`echo $fullclangver | grep "based on LLVM " | "$SED" 's/.*(based on LLVM \(@<:@0-9@:>@*\.@<:@0-9@:>@*\).*)/\1/'`
|
||||
if test -z "$clangver"; then
|
||||
clangver=`echo $fullclangver | "$SED" 's/.*version \(@<:@0-9@:>@*\.@<:@0-9@:>@*\).*/\1/'`
|
||||
oldapple=0
|
||||
else
|
||||
oldapple=1
|
||||
fi
|
||||
clangvhi=`echo $clangver | cut -d . -f1`
|
||||
clangvlo=`echo $clangver | cut -d . -f2`
|
||||
compiler_num=`(expr $clangvhi "*" 100 + $clangvlo) 2>/dev/null`
|
||||
if test "$appleclang" = '1' && test "$oldapple" = '0'; then
|
||||
dnl Starting with Xcode 7 / clang 3.7, Apple clang won't tell its upstream version
|
||||
if test "$compiler_num" -ge '1300'; then compiler_num='1200'
|
||||
elif test "$compiler_num" -ge '1205'; then compiler_num='1101'
|
||||
elif test "$compiler_num" -ge '1204'; then compiler_num='1000'
|
||||
elif test "$compiler_num" -ge '1107'; then compiler_num='900'
|
||||
elif test "$compiler_num" -ge '1103'; then compiler_num='800'
|
||||
elif test "$compiler_num" -ge '1003'; then compiler_num='700'
|
||||
elif test "$compiler_num" -ge '1001'; then compiler_num='600'
|
||||
elif test "$compiler_num" -ge '904'; then compiler_num='500'
|
||||
elif test "$compiler_num" -ge '902'; then compiler_num='400'
|
||||
elif test "$compiler_num" -ge '803'; then compiler_num='309'
|
||||
elif test "$compiler_num" -ge '703'; then compiler_num='308'
|
||||
else compiler_num='307'
|
||||
fi
|
||||
fi
|
||||
AC_MSG_RESULT([clang '$compiler_num' (raw: '$fullclangver' / '$clangver')])
|
||||
|
||||
tmp_CFLAGS="-pedantic"
|
||||
if test "$want_werror" = "yes"; then
|
||||
LIBSSH2_CFLAG_EXTRAS="$LIBSSH2_CFLAG_EXTRAS -pedantic-errors"
|
||||
fi
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [all extra])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [pointer-arith write-strings])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [shadow])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [inline nested-externs])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [missing-declarations])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [missing-prototypes])
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-long-long"
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [float-equal])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [sign-compare])
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-multichar"
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [undef])
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-format-nonliteral"
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [endif-labels strict-prototypes])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [declaration-after-statement])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [cast-align])
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-system-headers"
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [shorten-64-to-32])
|
||||
#
|
||||
dnl Only clang 1.1 or later
|
||||
if test "$compiler_num" -ge "101"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [unused])
|
||||
fi
|
||||
#
|
||||
dnl Only clang 2.7 or later
|
||||
if test "$compiler_num" -ge "207"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [address])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [attributes])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [bad-function-cast])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [conversion])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [div-by-zero format-security])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [empty-body])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [missing-field-initializers])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [missing-noreturn])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [old-style-definition])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [redundant-decls])
|
||||
# CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [switch-enum]) # Not used because this basically disallows default case
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [type-limits])
|
||||
if test "x$have_windows_h" != "xyes"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [unused-macros]) # Seen to clash with libtool-generated stub code
|
||||
fi
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [unreachable-code unused-parameter])
|
||||
fi
|
||||
#
|
||||
dnl Only clang 2.8 or later
|
||||
if test "$compiler_num" -ge "208"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [ignored-qualifiers])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [vla])
|
||||
fi
|
||||
#
|
||||
dnl Only clang 2.9 or later
|
||||
if test "$compiler_num" -ge "209"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [sign-conversion])
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-error=sign-conversion" # FIXME
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [shift-sign-overflow])
|
||||
# CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [padded]) # Not used because we cannot change public structs
|
||||
fi
|
||||
#
|
||||
dnl Only clang 3.0 or later
|
||||
if test "$compiler_num" -ge "300"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [language-extension-token])
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wformat=2"
|
||||
fi
|
||||
#
|
||||
dnl Only clang 3.2 or later
|
||||
if test "$compiler_num" -ge "302"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [enum-conversion])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [sometimes-uninitialized])
|
||||
case $host_os in
|
||||
cygwin* | mingw*)
|
||||
dnl skip missing-variable-declarations warnings for cygwin and
|
||||
dnl mingw because the libtool wrapper executable causes them
|
||||
;;
|
||||
*)
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [missing-variable-declarations])
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
#
|
||||
dnl Only clang 3.4 or later
|
||||
if test "$compiler_num" -ge "304"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [header-guard])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [unused-const-variable])
|
||||
fi
|
||||
#
|
||||
dnl Only clang 3.5 or later
|
||||
if test "$compiler_num" -ge "305"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [pragmas])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [unreachable-code-break])
|
||||
fi
|
||||
#
|
||||
dnl Only clang 3.6 or later
|
||||
if test "$compiler_num" -ge "306"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [double-promotion])
|
||||
fi
|
||||
#
|
||||
dnl Only clang 3.9 or later
|
||||
if test "$compiler_num" -ge "309"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [comma])
|
||||
# avoid the varargs warning, fixed in 4.0
|
||||
# https://bugs.llvm.org/show_bug.cgi?id=29140
|
||||
if test "$compiler_num" -lt "400"; then
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-varargs"
|
||||
fi
|
||||
fi
|
||||
dnl clang 7 or later
|
||||
if test "$compiler_num" -ge "700"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [assign-enum])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [extra-semi-stmt])
|
||||
fi
|
||||
dnl clang 10 or later
|
||||
if test "$compiler_num" -ge "1000"; then
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wimplicit-fallthrough" # we have silencing markup for clang 10.0 and above only
|
||||
fi
|
||||
|
||||
CFLAGS="$CFLAGS $tmp_CFLAGS"
|
||||
|
||||
AC_MSG_NOTICE([Added this set of compiler options: $tmp_CFLAGS])
|
||||
|
||||
elif test "$GCC" = "yes"; then
|
||||
|
||||
# indentation to match curl's m4/curl-compilers.m4
|
||||
|
||||
dnl figure out gcc version!
|
||||
AC_MSG_CHECKING([compiler version])
|
||||
# strip '-suffix' parts, e.g. Ubuntu Windows cross-gcc returns '10-win32'
|
||||
gccver=`$CC -dumpversion | sed -E 's/-.+$//'`
|
||||
gccvhi=`echo $gccver | cut -d . -f1`
|
||||
if echo $gccver | grep -F "." >/dev/null; then
|
||||
gccvlo=`echo $gccver | cut -d . -f2`
|
||||
else
|
||||
gccvlo="0"
|
||||
fi
|
||||
compiler_num=`(expr $gccvhi "*" 100 + $gccvlo) 2>/dev/null`
|
||||
AC_MSG_RESULT([gcc '$compiler_num' (raw: '$gccver')])
|
||||
|
||||
if test "$ICC" = "yes"; then
|
||||
dnl this is icc, not gcc.
|
||||
|
||||
dnl ICC warnings we ignore:
|
||||
dnl * 269 warns on our "%Od" printf formatters for curl_off_t output:
|
||||
dnl "invalid format string conversion"
|
||||
dnl * 279 warns on static conditions in while expressions
|
||||
dnl * 981 warns on "operands are evaluated in unspecified order"
|
||||
dnl * 1418 "external definition with no prior declaration"
|
||||
dnl * 1419 warns on "external declaration in primary source file"
|
||||
dnl which we know and do on purpose.
|
||||
|
||||
tmp_CFLAGS="-wd279,269,981,1418,1419"
|
||||
|
||||
if test "$compiler_num" -gt "600"; then
|
||||
dnl icc 6.0 and older doesn't have the -Wall flag
|
||||
tmp_CFLAGS="-Wall $tmp_CFLAGS"
|
||||
fi
|
||||
else dnl $ICC = yes
|
||||
dnl this is a set of options we believe *ALL* gcc versions support:
|
||||
tmp_CFLAGS="-pedantic"
|
||||
if test "$want_werror" = "yes"; then
|
||||
LIBSSH2_CFLAG_EXTRAS="$LIBSSH2_CFLAG_EXTRAS -pedantic-errors"
|
||||
fi
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [all])
|
||||
tmp_CFLAGS="$tmp_CFLAGS -W"
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [pointer-arith write-strings])
|
||||
#
|
||||
dnl Only gcc 2.7 or later
|
||||
if test "$compiler_num" -ge "207"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [inline nested-externs])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [missing-declarations])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [missing-prototypes])
|
||||
fi
|
||||
#
|
||||
dnl Only gcc 2.95 or later
|
||||
if test "$compiler_num" -ge "295"; then
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-long-long"
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [bad-function-cast])
|
||||
fi
|
||||
#
|
||||
dnl Only gcc 2.96 or later
|
||||
if test "$compiler_num" -ge "296"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [float-equal])
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-multichar"
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [sign-compare])
|
||||
dnl -Wundef used only if gcc is 2.96 or later since we get
|
||||
dnl lots of "`_POSIX_C_SOURCE' is not defined" in system
|
||||
dnl headers with gcc 2.95.4 on FreeBSD 4.9
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [undef])
|
||||
fi
|
||||
#
|
||||
dnl Only gcc 2.97 or later
|
||||
if test "$compiler_num" -ge "297"; then
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-format-nonliteral"
|
||||
fi
|
||||
#
|
||||
dnl Only gcc 3.0 or later
|
||||
if test "$compiler_num" -ge "300"; then
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-system-headers"
|
||||
dnl -Wunreachable-code seems totally unreliable on my gcc 3.3.2 on
|
||||
dnl on i686-Linux as it gives us heaps with false positives.
|
||||
dnl Also, on gcc 4.0.X it is totally unbearable and complains all
|
||||
dnl over making it unusable for generic purposes. Let's not use it.
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [unused shadow])
|
||||
fi
|
||||
#
|
||||
dnl Only gcc 3.3 or later
|
||||
if test "$compiler_num" -ge "303"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [endif-labels strict-prototypes])
|
||||
fi
|
||||
#
|
||||
dnl Only gcc 3.4 or later
|
||||
if test "$compiler_num" -ge "304"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [declaration-after-statement])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [old-style-definition])
|
||||
fi
|
||||
#
|
||||
dnl Only gcc 4.0 or later
|
||||
if test "$compiler_num" -ge "400"; then
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wstrict-aliasing=3"
|
||||
fi
|
||||
#
|
||||
dnl Only gcc 4.1 or later (possibly earlier)
|
||||
if test "$compiler_num" -ge "401"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [attributes])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [div-by-zero format-security])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [missing-field-initializers])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [missing-noreturn])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [unreachable-code unused-parameter])
|
||||
# CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [padded]) # Not used because we cannot change public structs
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [pragmas])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [redundant-decls])
|
||||
# CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [switch-enum]) # Not used because this basically disallows default case
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [unused-macros])
|
||||
fi
|
||||
#
|
||||
dnl Only gcc 4.2 or later
|
||||
if test "$compiler_num" -ge "402"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [cast-align])
|
||||
fi
|
||||
#
|
||||
dnl Only gcc 4.3 or later
|
||||
if test "$compiler_num" -ge "403"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [address])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [type-limits old-style-declaration])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [missing-parameter-type empty-body])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [clobbered ignored-qualifiers])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [conversion trampolines])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [sign-conversion])
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-error=sign-conversion" # FIXME
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [vla])
|
||||
dnl required for -Warray-bounds, included in -Wall
|
||||
tmp_CFLAGS="$tmp_CFLAGS -ftree-vrp"
|
||||
fi
|
||||
#
|
||||
dnl Only gcc 4.5 or later
|
||||
if test "$compiler_num" -ge "405"; then
|
||||
dnl Only windows targets
|
||||
case $host_os in
|
||||
mingw*)
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-pedantic-ms-format"
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
#
|
||||
dnl Only gcc 4.6 or later
|
||||
if test "$compiler_num" -ge "406"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [double-promotion])
|
||||
fi
|
||||
#
|
||||
dnl only gcc 4.8 or later
|
||||
if test "$compiler_num" -ge "408"; then
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wformat=2"
|
||||
fi
|
||||
#
|
||||
dnl Only gcc 5 or later
|
||||
if test "$compiler_num" -ge "500"; then
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Warray-bounds=2"
|
||||
fi
|
||||
#
|
||||
dnl Only gcc 6 or later
|
||||
if test "$compiler_num" -ge "600"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [shift-negative-value])
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wshift-overflow=2"
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [null-dereference])
|
||||
tmp_CFLAGS="$tmp_CFLAGS -fdelete-null-pointer-checks"
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [duplicated-cond])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [unused-const-variable])
|
||||
fi
|
||||
#
|
||||
dnl Only gcc 7 or later
|
||||
if test "$compiler_num" -ge "700"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [duplicated-branches])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [restrict])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [alloc-zero])
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wformat-overflow=2"
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wformat-truncation=2"
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wimplicit-fallthrough"
|
||||
fi
|
||||
#
|
||||
dnl Only gcc 10 or later
|
||||
if test "$compiler_num" -ge "1000"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [arith-conversion])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [enum-conversion])
|
||||
fi
|
||||
|
||||
for flag in $CPPFLAGS; do
|
||||
case "$flag" in
|
||||
-I*)
|
||||
dnl Include path, provide a -isystem option for the same dir
|
||||
dnl to prevent warnings in those dirs. The -isystem was not very
|
||||
dnl reliable on earlier gcc versions.
|
||||
add=`echo $flag | sed 's/^-I/-isystem /g'`
|
||||
tmp_CFLAGS="$tmp_CFLAGS $add"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
fi dnl $ICC = no
|
||||
|
||||
CFLAGS="$CFLAGS $tmp_CFLAGS"
|
||||
|
||||
AC_MSG_NOTICE([Added this set of compiler options: $tmp_CFLAGS])
|
||||
|
||||
else dnl $GCC = yes
|
||||
|
||||
AC_MSG_NOTICE([Added no extra compiler options])
|
||||
|
||||
fi dnl $GCC = yes
|
||||
|
||||
dnl strip off optimizer flags
|
||||
NEWFLAGS=""
|
||||
for flag in $CFLAGS; do
|
||||
case "$flag" in
|
||||
-O*)
|
||||
dnl echo "cut off $flag"
|
||||
;;
|
||||
*)
|
||||
NEWFLAGS="$NEWFLAGS $flag"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
CFLAGS=$NEWFLAGS
|
||||
|
||||
]) dnl end of AC_DEFUN()
|
||||
|
||||
dnl CURL_ADD_COMPILER_WARNINGS (WARNING-LIST, NEW-WARNINGS)
|
||||
dnl -------------------------------------------------------
|
||||
dnl Contents of variable WARNING-LIST and NEW-WARNINGS are
|
||||
dnl handled as whitespace separated lists of words.
|
||||
dnl Add each compiler warning from NEW-WARNINGS that has not
|
||||
dnl been disabled via CFLAGS to WARNING-LIST.
|
||||
|
||||
AC_DEFUN([CURL_ADD_COMPILER_WARNINGS], [
|
||||
AC_REQUIRE([CURL_SHFUNC_SQUEEZE])dnl
|
||||
ac_var_added_warnings=""
|
||||
for warning in [$2]; do
|
||||
CURL_VAR_MATCH(CFLAGS, [-Wno-$warning -W$warning])
|
||||
if test "$ac_var_match_word" = "no"; then
|
||||
ac_var_added_warnings="$ac_var_added_warnings -W$warning"
|
||||
fi
|
||||
done
|
||||
dnl squeeze whitespace out of result
|
||||
[$1]="$[$1] $ac_var_added_warnings"
|
||||
squeeze [$1]
|
||||
])
|
||||
|
||||
dnl CURL_SHFUNC_SQUEEZE
|
||||
dnl -------------------------------------------------
|
||||
dnl Declares a shell function squeeze() which removes
|
||||
dnl redundant whitespace out of a shell variable.
|
||||
|
||||
AC_DEFUN([CURL_SHFUNC_SQUEEZE], [
|
||||
squeeze() {
|
||||
_sqz_result=""
|
||||
eval _sqz_input=\[$][$]1
|
||||
for _sqz_token in $_sqz_input; do
|
||||
if test -z "$_sqz_result"; then
|
||||
_sqz_result="$_sqz_token"
|
||||
else
|
||||
_sqz_result="$_sqz_result $_sqz_token"
|
||||
fi
|
||||
done
|
||||
eval [$]1=\$_sqz_result
|
||||
return 0
|
||||
}
|
||||
])
|
||||
|
||||
dnl CURL_VAR_MATCH (VARNAME, VALUE)
|
||||
dnl -------------------------------------------------
|
||||
dnl Verifies if shell variable VARNAME contains VALUE.
|
||||
dnl Contents of variable VARNAME and VALUE are handled
|
||||
dnl as whitespace separated lists of words. If at least
|
||||
dnl one word of VALUE is present in VARNAME the match
|
||||
dnl is considered positive, otherwise false.
|
||||
|
||||
AC_DEFUN([CURL_VAR_MATCH], [
|
||||
ac_var_match_word="no"
|
||||
for word1 in $[$1]; do
|
||||
for word2 in [$2]; do
|
||||
if test "$word1" = "$word2"; then
|
||||
ac_var_match_word="yes"
|
||||
fi
|
||||
done
|
||||
done
|
||||
])
|
||||
|
||||
dnl CURL_CHECK_NONBLOCKING_SOCKET
|
||||
dnl -------------------------------------------------
|
||||
dnl Check for how to set a socket to non-blocking state. There seems to exist
|
||||
dnl four known different ways, with the one used almost everywhere being POSIX
|
||||
dnl and XPG3, while the other different ways for different systems (old BSD,
|
||||
dnl Windows and Amiga).
|
||||
dnl
|
||||
dnl There are two known platforms (AIX 3.x and SunOS 4.1.x) where the
|
||||
dnl O_NONBLOCK define is found but does not work. This condition is attempted
|
||||
dnl to get caught in this script by using an excessive number of #ifdefs...
|
||||
dnl
|
||||
AC_DEFUN([CURL_CHECK_NONBLOCKING_SOCKET],
|
||||
[
|
||||
AC_MSG_CHECKING([non-blocking sockets style])
|
||||
|
||||
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
||||
/* headers for O_NONBLOCK test */
|
||||
#include <sys/types.h>
|
||||
#include <unistd.h>
|
||||
#include <fcntl.h>
|
||||
]], [[
|
||||
/* try to compile O_NONBLOCK */
|
||||
|
||||
#if defined(sun) || defined(__sun__) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
|
||||
# if defined(__SVR4) || defined(__srv4__)
|
||||
# define PLATFORM_SOLARIS
|
||||
# else
|
||||
# define PLATFORM_SUNOS4
|
||||
# endif
|
||||
#endif
|
||||
#if (defined(_AIX) || defined(__xlC__)) && !defined(_AIX41)
|
||||
# define PLATFORM_AIX_V3
|
||||
#endif
|
||||
|
||||
#if defined(PLATFORM_SUNOS4) || defined(PLATFORM_AIX_V3) || defined(__BEOS__)
|
||||
#error "O_NONBLOCK does not work on this platform"
|
||||
#endif
|
||||
int socket;
|
||||
int flags = fcntl(socket, F_SETFL, flags | O_NONBLOCK);
|
||||
]])],[
|
||||
dnl the O_NONBLOCK test was fine
|
||||
nonblock="O_NONBLOCK"
|
||||
AC_DEFINE(HAVE_O_NONBLOCK, 1, [use O_NONBLOCK for non-blocking sockets])
|
||||
],[
|
||||
dnl the code was bad, try a different program now, test 2
|
||||
|
||||
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
||||
/* headers for FIONBIO test */
|
||||
#include <unistd.h>
|
||||
#include <stropts.h>
|
||||
]], [[
|
||||
/* FIONBIO source test (old-style unix) */
|
||||
int socket;
|
||||
int flags = ioctl(socket, FIONBIO, &flags);
|
||||
]])],[
|
||||
dnl FIONBIO test was good
|
||||
nonblock="FIONBIO"
|
||||
AC_DEFINE(HAVE_FIONBIO, 1, [use FIONBIO for non-blocking sockets])
|
||||
],[
|
||||
dnl FIONBIO test was also bad
|
||||
dnl the code was bad, try a different program now, test 3
|
||||
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
|
||||
/* headers for IoctlSocket test (Amiga?) */
|
||||
#include <sys/ioctl.h>
|
||||
]], [[
|
||||
/* IoctlSocket source code */
|
||||
int socket;
|
||||
int flags = IoctlSocket(socket, FIONBIO, (long)1);
|
||||
]])],[
|
||||
dnl ioctlsocket test was good
|
||||
nonblock="IoctlSocket"
|
||||
AC_DEFINE(HAVE_IOCTLSOCKET_CASE, 1, [use Ioctlsocket() for non-blocking sockets])
|
||||
],[
|
||||
dnl Ioctlsocket did not compile, do test 4!
|
||||
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
||||
/* headers for SO_NONBLOCK test (BeOS) */
|
||||
#include <socket.h>
|
||||
]], [[
|
||||
/* SO_NONBLOCK source code */
|
||||
long b = 1;
|
||||
int socket;
|
||||
int flags = setsockopt(socket, SOL_SOCKET, SO_NONBLOCK, &b, sizeof(b));
|
||||
]])],[
|
||||
dnl the SO_NONBLOCK test was good
|
||||
nonblock="SO_NONBLOCK"
|
||||
AC_DEFINE(HAVE_SO_NONBLOCK, 1, [use SO_NONBLOCK for non-blocking sockets])
|
||||
],[
|
||||
dnl test 4 did not compile!
|
||||
nonblock="nada"
|
||||
])
|
||||
dnl end of forth test
|
||||
|
||||
])
|
||||
dnl end of third test
|
||||
|
||||
])
|
||||
dnl end of second test
|
||||
|
||||
])
|
||||
dnl end of non-blocking try-compile test
|
||||
AC_MSG_RESULT($nonblock)
|
||||
|
||||
if test "$nonblock" = "nada"; then
|
||||
AC_MSG_WARN([non-block sockets disabled])
|
||||
fi
|
||||
])
|
||||
|
||||
dnl CURL_CHECK_NEED_REENTRANT_SYSTEM
|
||||
dnl -------------------------------------------------
|
||||
dnl Checks if the preprocessor _REENTRANT definition
|
||||
dnl must be unconditionally done for this platform.
|
||||
dnl Internal macro for CURL_CONFIGURE_REENTRANT.
|
||||
|
||||
AC_DEFUN([CURL_CHECK_NEED_REENTRANT_SYSTEM], [
|
||||
case $host in
|
||||
*-*-solaris* | *-*-hpux*)
|
||||
tmp_need_reentrant="yes"
|
||||
;;
|
||||
*)
|
||||
tmp_need_reentrant="no"
|
||||
;;
|
||||
esac
|
||||
])
|
||||
|
||||
|
||||
dnl CURL_CONFIGURE_FROM_NOW_ON_WITH_REENTRANT
|
||||
dnl -------------------------------------------------
|
||||
dnl This macro ensures that configuration tests done
|
||||
dnl after this will execute with preprocessor symbol
|
||||
dnl _REENTRANT defined. This macro also ensures that
|
||||
dnl the generated config file defines NEED_REENTRANT
|
||||
dnl and that in turn setup.h will define _REENTRANT.
|
||||
dnl Internal macro for CURL_CONFIGURE_REENTRANT.
|
||||
|
||||
AC_DEFUN([CURL_CONFIGURE_FROM_NOW_ON_WITH_REENTRANT], [
|
||||
AC_DEFINE(NEED_REENTRANT, 1,
|
||||
[Define to 1 if _REENTRANT preprocessor symbol must be defined.])
|
||||
cat >>confdefs.h <<_EOF
|
||||
#ifndef _REENTRANT
|
||||
# define _REENTRANT
|
||||
#endif
|
||||
_EOF
|
||||
])
|
||||
|
||||
|
||||
dnl CURL_CONFIGURE_REENTRANT
|
||||
dnl -------------------------------------------------
|
||||
dnl This first checks if the preprocessor _REENTRANT
|
||||
dnl symbol is already defined. If it isn't currently
|
||||
dnl defined a set of checks are performed to verify
|
||||
dnl if its definition is required to make visible to
|
||||
dnl the compiler a set of *_r functions. Finally, if
|
||||
dnl _REENTRANT is already defined or needed it takes
|
||||
dnl care of making adjustments necessary to ensure
|
||||
dnl that it is defined equally for further configure
|
||||
dnl tests and generated config file.
|
||||
|
||||
AC_DEFUN([CURL_CONFIGURE_REENTRANT], [
|
||||
AC_PREREQ([2.50])dnl
|
||||
#
|
||||
AC_MSG_CHECKING([if _REENTRANT is already defined])
|
||||
AC_COMPILE_IFELSE([
|
||||
AC_LANG_PROGRAM([[
|
||||
]],[[
|
||||
#ifdef _REENTRANT
|
||||
int dummy=1;
|
||||
#else
|
||||
force compilation error
|
||||
#endif
|
||||
]])
|
||||
],[
|
||||
AC_MSG_RESULT([yes])
|
||||
tmp_reentrant_initially_defined="yes"
|
||||
],[
|
||||
AC_MSG_RESULT([no])
|
||||
tmp_reentrant_initially_defined="no"
|
||||
])
|
||||
#
|
||||
if test "$tmp_reentrant_initially_defined" = "no"; then
|
||||
AC_MSG_CHECKING([if _REENTRANT is actually needed])
|
||||
CURL_CHECK_NEED_REENTRANT_SYSTEM
|
||||
|
||||
if test "$tmp_need_reentrant" = "yes"; then
|
||||
AC_MSG_RESULT([yes])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
fi
|
||||
#
|
||||
AC_MSG_CHECKING([if _REENTRANT is onwards defined])
|
||||
if test "$tmp_reentrant_initially_defined" = "yes" ||
|
||||
test "$tmp_need_reentrant" = "yes"; then
|
||||
CURL_CONFIGURE_FROM_NOW_ON_WITH_REENTRANT
|
||||
AC_MSG_RESULT([yes])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
#
|
||||
])
|
||||
|
||||
dnl LIBSSH2_LIB_HAVE_LINKFLAGS
|
||||
dnl --------------------------
|
||||
dnl Wrapper around AC_LIB_HAVE_LINKFLAGS to also check $prefix/lib, if set.
|
||||
dnl
|
||||
dnl autoconf only checks $prefix/lib64 if gcc -print-search-dirs output
|
||||
dnl includes a directory named lib64. So, to find libraries in $prefix/lib
|
||||
dnl we append -L$prefix/lib to LDFLAGS before checking.
|
||||
dnl
|
||||
dnl For convenience, $4 is expanded if [lib]$1 is found.
|
||||
|
||||
AC_DEFUN([LIBSSH2_LIB_HAVE_LINKFLAGS], [
|
||||
libssh2_save_CPPFLAGS="$CPPFLAGS"
|
||||
libssh2_save_LDFLAGS="$LDFLAGS"
|
||||
|
||||
if test "${with_lib$1_prefix+set}" = set; then
|
||||
CPPFLAGS="$CPPFLAGS${CPPFLAGS:+ }-I${with_lib$1_prefix}/include"
|
||||
LDFLAGS="$LDFLAGS${LDFLAGS:+ }-L${with_lib$1_prefix}/lib"
|
||||
fi
|
||||
|
||||
AC_LIB_HAVE_LINKFLAGS([$1], [$2], [$3])
|
||||
|
||||
if test "$ac_cv_lib$1" = "yes"; then :
|
||||
$4
|
||||
else
|
||||
CPPFLAGS="$libssh2_save_CPPFLAGS"
|
||||
LDFLAGS="$libssh2_save_LDFLAGS"
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN([LIBSSH2_CHECK_CRYPTO], [
|
||||
if test "$use_crypto" = "auto" && test "$found_crypto" = "none" || test "$use_crypto" = "$1"; then
|
||||
m4_case([$1],
|
||||
[openssl], [
|
||||
LIBSSH2_LIB_HAVE_LINKFLAGS([ssl], [crypto], [#include <openssl/ssl.h>], [
|
||||
AC_DEFINE(LIBSSH2_OPENSSL, 1, [Use $1])
|
||||
LIBSSH2_PC_REQUIRES_PRIVATE="$LIBSSH2_PC_REQUIRES_PRIVATE${LIBSSH2_PC_REQUIRES_PRIVATE:+,}libcrypto"
|
||||
found_crypto="$1"
|
||||
found_crypto_str="OpenSSL"
|
||||
])
|
||||
],
|
||||
|
||||
[wolfssl], [
|
||||
LIBSSH2_LIB_HAVE_LINKFLAGS([wolfssl], [], [#include <wolfssl/options.h>], [
|
||||
AC_DEFINE(LIBSSH2_WOLFSSL, 1, [Use $1])
|
||||
LIBSSH2_PC_REQUIRES_PRIVATE="$LIBSSH2_PC_REQUIRES_PRIVATE${LIBSSH2_PC_REQUIRES_PRIVATE:+,}wolfssl"
|
||||
found_crypto="$1"
|
||||
])
|
||||
],
|
||||
|
||||
[libgcrypt], [
|
||||
LIBSSH2_LIB_HAVE_LINKFLAGS([gcrypt], [], [#include <gcrypt.h>], [
|
||||
AC_DEFINE(LIBSSH2_LIBGCRYPT, 1, [Use $1])
|
||||
LIBSSH2_PC_REQUIRES_PRIVATE="$LIBSSH2_PC_REQUIRES_PRIVATE${LIBSSH2_PC_REQUIRES_PRIVATE:+,}libgcrypt"
|
||||
found_crypto="$1"
|
||||
])
|
||||
],
|
||||
|
||||
[mbedtls], [
|
||||
LIBSSH2_LIB_HAVE_LINKFLAGS([mbedcrypto], [], [#include <mbedtls/version.h>], [
|
||||
AC_DEFINE(LIBSSH2_MBEDTLS, 1, [Use $1])
|
||||
LIBS="$LIBS -lmbedcrypto"
|
||||
found_crypto="$1"
|
||||
])
|
||||
],
|
||||
|
||||
[wincng], [
|
||||
if test "x$have_windows_h" = "xyes"; then
|
||||
# Look for Windows Cryptography API: Next Generation
|
||||
|
||||
LIBS="$LIBS -lcrypt32"
|
||||
|
||||
# Check necessary for old-MinGW
|
||||
LIBSSH2_LIB_HAVE_LINKFLAGS([bcrypt], [], [
|
||||
#include <windows.h>
|
||||
#include <bcrypt.h>
|
||||
], [
|
||||
AC_DEFINE(LIBSSH2_WINCNG, 1, [Use $1])
|
||||
found_crypto="$1"
|
||||
found_crypto_str="Windows Cryptography API: Next Generation"
|
||||
])
|
||||
fi
|
||||
],
|
||||
)
|
||||
test "$found_crypto" = "none" &&
|
||||
crypto_errors="${crypto_errors}No $1 crypto library found!
|
||||
"
|
||||
fi
|
||||
])
|
||||
|
||||
|
||||
dnl LIBSSH2_CHECK_OPTION_WERROR
|
||||
dnl -------------------------------------------------
|
||||
dnl Verify if configure has been invoked with option
|
||||
dnl --enable-werror or --disable-werror, and set
|
||||
dnl shell variable want_werror as appropriate.
|
||||
|
||||
AC_DEFUN([LIBSSH2_CHECK_OPTION_WERROR], [
|
||||
AC_BEFORE([$0],[LIBSSH2_CHECK_COMPILER])dnl
|
||||
AC_MSG_CHECKING([whether to enable compiler warnings as errors])
|
||||
OPT_COMPILER_WERROR="default"
|
||||
AC_ARG_ENABLE(werror,
|
||||
AS_HELP_STRING([--enable-werror],[Enable compiler warnings as errors])
|
||||
AS_HELP_STRING([--disable-werror],[Disable compiler warnings as errors]),
|
||||
OPT_COMPILER_WERROR=$enableval)
|
||||
case "$OPT_COMPILER_WERROR" in
|
||||
no)
|
||||
dnl --disable-werror option used
|
||||
want_werror="no"
|
||||
;;
|
||||
default)
|
||||
dnl configure option not specified
|
||||
want_werror="no"
|
||||
;;
|
||||
*)
|
||||
dnl --enable-werror option used
|
||||
want_werror="yes"
|
||||
;;
|
||||
esac
|
||||
AC_MSG_RESULT([$want_werror])
|
||||
|
||||
if test X"$want_werror" = Xyes; then
|
||||
LIBSSH2_CFLAG_EXTRAS="$LIBSSH2_CFLAG_EXTRAS -Werror"
|
||||
fi
|
||||
])
|
||||
1195
vendor/libssh2/aclocal.m4
vendored
Normal file
1195
vendor/libssh2/aclocal.m4
vendored
Normal file
File diff suppressed because it is too large
Load diff
701
vendor/libssh2/build/CMakeCache.txt
vendored
Normal file
701
vendor/libssh2/build/CMakeCache.txt
vendored
Normal file
|
|
@ -0,0 +1,701 @@
|
|||
# This is the CMakeCache file.
|
||||
# For build in directory: /home/scott/claude/calog/vendor/libssh2/build
|
||||
# It was generated by CMake: /usr/bin/cmake
|
||||
# You can edit this file to change values found and used by cmake.
|
||||
# If you do not want to change any of the values, simply exit the editor.
|
||||
# If you do want to change a value, simply edit, save, and exit the editor.
|
||||
# The syntax for the file is as follows:
|
||||
# KEY:TYPE=VALUE
|
||||
# KEY is the name of a variable in the cache.
|
||||
# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!.
|
||||
# VALUE is the current value for the KEY.
|
||||
|
||||
########################
|
||||
# EXTERNAL cache entries
|
||||
########################
|
||||
|
||||
//Build libssh2 examples
|
||||
BUILD_EXAMPLES:BOOL=OFF
|
||||
|
||||
//Build shared libraries
|
||||
BUILD_SHARED_LIBS:BOOL=OFF
|
||||
|
||||
//Build static libraries
|
||||
BUILD_STATIC_LIBS:BOOL=ON
|
||||
|
||||
//Build libssh2 test suite
|
||||
BUILD_TESTING:BOOL=OFF
|
||||
|
||||
//Enable clearing of memory before being freed
|
||||
CLEAR_MEMORY:BOOL=ON
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_ADDR2LINE:FILEPATH=/usr/bin/addr2line
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_AR:FILEPATH=/usr/bin/ar
|
||||
|
||||
//Choose the type of build, options are: None Debug Release RelWithDebInfo
|
||||
// MinSizeRel ...
|
||||
CMAKE_BUILD_TYPE:STRING=Release
|
||||
|
||||
//Enable/Disable color output during build.
|
||||
CMAKE_COLOR_MAKEFILE:BOOL=ON
|
||||
|
||||
//C compiler
|
||||
CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc
|
||||
|
||||
//A wrapper around 'ar' adding the appropriate '--plugin' option
|
||||
// for the GCC compiler
|
||||
CMAKE_C_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-13
|
||||
|
||||
//A wrapper around 'ranlib' adding the appropriate '--plugin' option
|
||||
// for the GCC compiler
|
||||
CMAKE_C_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-13
|
||||
|
||||
//Flags used by the C compiler during all build types.
|
||||
CMAKE_C_FLAGS:STRING=
|
||||
|
||||
//Flags used by the C compiler during DEBUG builds.
|
||||
CMAKE_C_FLAGS_DEBUG:STRING=-g
|
||||
|
||||
//Flags used by the C compiler during MINSIZEREL builds.
|
||||
CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
|
||||
|
||||
//Flags used by the C compiler during RELEASE builds.
|
||||
CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
|
||||
|
||||
//Flags used by the C compiler during RELWITHDEBINFO builds.
|
||||
CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND
|
||||
|
||||
//Flags used by the linker during all build types.
|
||||
CMAKE_EXE_LINKER_FLAGS:STRING=
|
||||
|
||||
//Flags used by the linker during DEBUG builds.
|
||||
CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING=
|
||||
|
||||
//Flags used by the linker during MINSIZEREL builds.
|
||||
CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING=
|
||||
|
||||
//Flags used by the linker during RELEASE builds.
|
||||
CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=
|
||||
|
||||
//Flags used by the linker during RELWITHDEBINFO builds.
|
||||
CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
|
||||
|
||||
//Enable/Disable output of compile commands during generation.
|
||||
CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=
|
||||
|
||||
//Value Computed by CMake.
|
||||
CMAKE_FIND_PACKAGE_REDIRECTS_DIR:STATIC=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles/pkgRedirects
|
||||
|
||||
//User executables (bin)
|
||||
CMAKE_INSTALL_BINDIR:PATH=bin
|
||||
|
||||
//Read-only architecture-independent data (DATAROOTDIR)
|
||||
CMAKE_INSTALL_DATADIR:PATH=
|
||||
|
||||
//Read-only architecture-independent data root (share)
|
||||
CMAKE_INSTALL_DATAROOTDIR:PATH=share
|
||||
|
||||
//Documentation root (DATAROOTDIR/doc/PROJECT_NAME)
|
||||
CMAKE_INSTALL_DOCDIR:PATH=
|
||||
|
||||
//C header files (include)
|
||||
CMAKE_INSTALL_INCLUDEDIR:PATH=include
|
||||
|
||||
//Info documentation (DATAROOTDIR/info)
|
||||
CMAKE_INSTALL_INFODIR:PATH=
|
||||
|
||||
//Object code libraries (lib)
|
||||
CMAKE_INSTALL_LIBDIR:PATH=lib
|
||||
|
||||
//Program executables (libexec)
|
||||
CMAKE_INSTALL_LIBEXECDIR:PATH=libexec
|
||||
|
||||
//Locale-dependent data (DATAROOTDIR/locale)
|
||||
CMAKE_INSTALL_LOCALEDIR:PATH=
|
||||
|
||||
//Modifiable single-machine data (var)
|
||||
CMAKE_INSTALL_LOCALSTATEDIR:PATH=var
|
||||
|
||||
//Man documentation (DATAROOTDIR/man)
|
||||
CMAKE_INSTALL_MANDIR:PATH=
|
||||
|
||||
//C header files for non-gcc (/usr/include)
|
||||
CMAKE_INSTALL_OLDINCLUDEDIR:PATH=/usr/include
|
||||
|
||||
//Install path prefix, prepended onto install directories.
|
||||
CMAKE_INSTALL_PREFIX:PATH=/usr/local
|
||||
|
||||
//Run-time variable data (LOCALSTATEDIR/run)
|
||||
CMAKE_INSTALL_RUNSTATEDIR:PATH=
|
||||
|
||||
//System admin executables (sbin)
|
||||
CMAKE_INSTALL_SBINDIR:PATH=sbin
|
||||
|
||||
//Modifiable architecture-independent data (com)
|
||||
CMAKE_INSTALL_SHAREDSTATEDIR:PATH=com
|
||||
|
||||
//Read-only single-machine data (etc)
|
||||
CMAKE_INSTALL_SYSCONFDIR:PATH=etc
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_LINKER:FILEPATH=/usr/bin/ld
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/gmake
|
||||
|
||||
//Flags used by the linker during the creation of modules during
|
||||
// all build types.
|
||||
CMAKE_MODULE_LINKER_FLAGS:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of modules during
|
||||
// DEBUG builds.
|
||||
CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of modules during
|
||||
// MINSIZEREL builds.
|
||||
CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of modules during
|
||||
// RELEASE builds.
|
||||
CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of modules during
|
||||
// RELWITHDEBINFO builds.
|
||||
CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_NM:FILEPATH=/usr/bin/nm
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump
|
||||
|
||||
//Value Computed by CMake
|
||||
CMAKE_PROJECT_DESCRIPTION:STATIC=
|
||||
|
||||
//Value Computed by CMake
|
||||
CMAKE_PROJECT_HOMEPAGE_URL:STATIC=
|
||||
|
||||
//Value Computed by CMake
|
||||
CMAKE_PROJECT_NAME:STATIC=libssh2
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_READELF:FILEPATH=/usr/bin/readelf
|
||||
|
||||
//Flags used by the linker during the creation of shared libraries
|
||||
// during all build types.
|
||||
CMAKE_SHARED_LINKER_FLAGS:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of shared libraries
|
||||
// during DEBUG builds.
|
||||
CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of shared libraries
|
||||
// during MINSIZEREL builds.
|
||||
CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of shared libraries
|
||||
// during RELEASE builds.
|
||||
CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of shared libraries
|
||||
// during RELWITHDEBINFO builds.
|
||||
CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING=
|
||||
|
||||
//If set, runtime paths are not added when installing shared libraries,
|
||||
// but are added when building.
|
||||
CMAKE_SKIP_INSTALL_RPATH:BOOL=NO
|
||||
|
||||
//If set, runtime paths are not added when using shared libraries.
|
||||
CMAKE_SKIP_RPATH:BOOL=NO
|
||||
|
||||
//Flags used by the linker during the creation of static libraries
|
||||
// during all build types.
|
||||
CMAKE_STATIC_LINKER_FLAGS:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of static libraries
|
||||
// during DEBUG builds.
|
||||
CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of static libraries
|
||||
// during MINSIZEREL builds.
|
||||
CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of static libraries
|
||||
// during RELEASE builds.
|
||||
CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of static libraries
|
||||
// during RELWITHDEBINFO builds.
|
||||
CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING=
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_STRIP:FILEPATH=/usr/bin/strip
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_TAPI:FILEPATH=CMAKE_TAPI-NOTFOUND
|
||||
|
||||
//If this value is on, makefiles will be generated without the
|
||||
// .SILENT directive, and all commands will be echoed to the console
|
||||
// during the make. This is useful for debugging only. With Visual
|
||||
// Studio IDE projects all commands are done without /nologo.
|
||||
CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE
|
||||
|
||||
//Enable to build Debian packages
|
||||
CPACK_BINARY_DEB:BOOL=OFF
|
||||
|
||||
//Enable to build FreeBSD packages
|
||||
CPACK_BINARY_FREEBSD:BOOL=OFF
|
||||
|
||||
//Enable to build IFW packages
|
||||
CPACK_BINARY_IFW:BOOL=OFF
|
||||
|
||||
//Enable to build NSIS packages
|
||||
CPACK_BINARY_NSIS:BOOL=OFF
|
||||
|
||||
//Enable to build RPM packages
|
||||
CPACK_BINARY_RPM:BOOL=OFF
|
||||
|
||||
//Enable to build STGZ packages
|
||||
CPACK_BINARY_STGZ:BOOL=ON
|
||||
|
||||
//Enable to build TBZ2 packages
|
||||
CPACK_BINARY_TBZ2:BOOL=OFF
|
||||
|
||||
//Enable to build TGZ packages
|
||||
CPACK_BINARY_TGZ:BOOL=ON
|
||||
|
||||
//Enable to build TXZ packages
|
||||
CPACK_BINARY_TXZ:BOOL=OFF
|
||||
|
||||
//Enable to build TZ packages
|
||||
CPACK_BINARY_TZ:BOOL=ON
|
||||
|
||||
//Enable to build RPM source packages
|
||||
CPACK_SOURCE_RPM:BOOL=OFF
|
||||
|
||||
//Enable to build TBZ2 source packages
|
||||
CPACK_SOURCE_TBZ2:BOOL=ON
|
||||
|
||||
//Enable to build TGZ source packages
|
||||
CPACK_SOURCE_TGZ:BOOL=ON
|
||||
|
||||
//Enable to build TXZ source packages
|
||||
CPACK_SOURCE_TXZ:BOOL=ON
|
||||
|
||||
//Enable to build TZ source packages
|
||||
CPACK_SOURCE_TZ:BOOL=ON
|
||||
|
||||
//Enable to build ZIP source packages
|
||||
CPACK_SOURCE_ZIP:BOOL=OFF
|
||||
|
||||
//The backend to use for cryptography: OpenSSL, wolfSSL, Libgcrypt,
|
||||
// WinCNG, mbedTLS, or empty to try any available
|
||||
CRYPTO_BACKEND:STRING=OpenSSL
|
||||
|
||||
//Log execution with debug trace
|
||||
ENABLE_DEBUG_LOGGING:BOOL=OFF
|
||||
|
||||
//Turn compiler warnings into errors
|
||||
ENABLE_WERROR:BOOL=OFF
|
||||
|
||||
//Use zlib for compression
|
||||
ENABLE_ZLIB_COMPRESSION:BOOL=OFF
|
||||
|
||||
//Hide all libssh2 symbols that are not officially external
|
||||
HIDE_SYMBOLS:BOOL=ON
|
||||
|
||||
//No help, variable specified on the command line.
|
||||
LIBSSH2_EXAMPLES:UNINITIALIZED=OFF
|
||||
|
||||
//Build without deprecated APIs
|
||||
LIBSSH2_NO_DEPRECATED:BOOL=OFF
|
||||
|
||||
//Check style while building
|
||||
LINT:BOOL=OFF
|
||||
|
||||
//Path to a library.
|
||||
OPENSSL_CRYPTO_LIBRARY:FILEPATH=/home/scott/claude/calog/vendor/openssl/libcrypto.a
|
||||
|
||||
//Path to a file.
|
||||
OPENSSL_INCLUDE_DIR:PATH=/home/scott/claude/calog/vendor/openssl/include
|
||||
|
||||
//No help, variable specified on the command line.
|
||||
OPENSSL_ROOT_DIR:UNINITIALIZED=/home/scott/claude/calog/vendor/openssl
|
||||
|
||||
//Path to a library.
|
||||
OPENSSL_SSL_LIBRARY:FILEPATH=/home/scott/claude/calog/vendor/openssl/libssl.a
|
||||
|
||||
//Enable picky compiler options
|
||||
PICKY_COMPILER:BOOL=ON
|
||||
|
||||
//Arguments to supply to pkg-config
|
||||
PKG_CONFIG_ARGN:STRING=
|
||||
|
||||
//pkg-config executable
|
||||
PKG_CONFIG_EXECUTABLE:FILEPATH=/usr/bin/pkg-config
|
||||
|
||||
//Path to a file.
|
||||
ZLIB_INCLUDE_DIR:PATH=/usr/include
|
||||
|
||||
//Path to a library.
|
||||
ZLIB_LIBRARY_DEBUG:FILEPATH=ZLIB_LIBRARY_DEBUG-NOTFOUND
|
||||
|
||||
//Path to a library.
|
||||
ZLIB_LIBRARY_RELEASE:FILEPATH=/usr/lib/x86_64-linux-gnu/libz.so
|
||||
|
||||
//Value Computed by CMake
|
||||
libssh2_BINARY_DIR:STATIC=/home/scott/claude/calog/vendor/libssh2/build
|
||||
|
||||
//Value Computed by CMake
|
||||
libssh2_IS_TOP_LEVEL:STATIC=ON
|
||||
|
||||
//Value Computed by CMake
|
||||
libssh2_SOURCE_DIR:STATIC=/home/scott/claude/calog/vendor/libssh2
|
||||
|
||||
//Dependencies for the target
|
||||
libssh2_static_LIB_DEPENDS:STATIC=general;OpenSSL::Crypto;general;/usr/lib/x86_64-linux-gnu/libz.so;
|
||||
|
||||
//Path to a library.
|
||||
pkgcfg_lib__OPENSSL_crypto:FILEPATH=/usr/lib/x86_64-linux-gnu/libcrypto.so
|
||||
|
||||
//Path to a library.
|
||||
pkgcfg_lib__OPENSSL_ssl:FILEPATH=/usr/lib/x86_64-linux-gnu/libssl.so
|
||||
|
||||
|
||||
########################
|
||||
# INTERNAL cache entries
|
||||
########################
|
||||
|
||||
//ADVANCED property for variable: CMAKE_ADDR2LINE
|
||||
CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_AR
|
||||
CMAKE_AR-ADVANCED:INTERNAL=1
|
||||
//This is the directory where this CMakeCache.txt was created
|
||||
CMAKE_CACHEFILE_DIR:INTERNAL=/home/scott/claude/calog/vendor/libssh2/build
|
||||
//Major version of cmake used to create the current loaded cache
|
||||
CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3
|
||||
//Minor version of cmake used to create the current loaded cache
|
||||
CMAKE_CACHE_MINOR_VERSION:INTERNAL=28
|
||||
//Patch version of cmake used to create the current loaded cache
|
||||
CMAKE_CACHE_PATCH_VERSION:INTERNAL=3
|
||||
//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE
|
||||
CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1
|
||||
//Path to CMake executable.
|
||||
CMAKE_COMMAND:INTERNAL=/usr/bin/cmake
|
||||
//Path to cpack program executable.
|
||||
CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack
|
||||
//Path to ctest program executable.
|
||||
CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest
|
||||
//ADVANCED property for variable: CMAKE_C_COMPILER
|
||||
CMAKE_C_COMPILER-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_C_COMPILER_AR
|
||||
CMAKE_C_COMPILER_AR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_C_COMPILER_RANLIB
|
||||
CMAKE_C_COMPILER_RANLIB-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_C_FLAGS
|
||||
CMAKE_C_FLAGS-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG
|
||||
CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL
|
||||
CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE
|
||||
CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO
|
||||
CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_DLLTOOL
|
||||
CMAKE_DLLTOOL-ADVANCED:INTERNAL=1
|
||||
//Path to cache edit program executable.
|
||||
CMAKE_EDIT_COMMAND:INTERNAL=/usr/bin/ccmake
|
||||
//Executable file format
|
||||
CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF
|
||||
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS
|
||||
CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG
|
||||
CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL
|
||||
CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE
|
||||
CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO
|
||||
CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS
|
||||
CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1
|
||||
//Name of external makefile project generator.
|
||||
CMAKE_EXTRA_GENERATOR:INTERNAL=
|
||||
//Name of generator.
|
||||
CMAKE_GENERATOR:INTERNAL=Unix Makefiles
|
||||
//Generator instance identifier.
|
||||
CMAKE_GENERATOR_INSTANCE:INTERNAL=
|
||||
//Name of generator platform.
|
||||
CMAKE_GENERATOR_PLATFORM:INTERNAL=
|
||||
//Name of generator toolset.
|
||||
CMAKE_GENERATOR_TOOLSET:INTERNAL=
|
||||
//Test CMAKE_HAVE_LIBC_PTHREAD
|
||||
CMAKE_HAVE_LIBC_PTHREAD:INTERNAL=1
|
||||
//Source directory with the top level CMakeLists.txt file for this
|
||||
// project
|
||||
CMAKE_HOME_DIRECTORY:INTERNAL=/home/scott/claude/calog/vendor/libssh2
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_BINDIR
|
||||
CMAKE_INSTALL_BINDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_DATADIR
|
||||
CMAKE_INSTALL_DATADIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_DATAROOTDIR
|
||||
CMAKE_INSTALL_DATAROOTDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_DOCDIR
|
||||
CMAKE_INSTALL_DOCDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_INCLUDEDIR
|
||||
CMAKE_INSTALL_INCLUDEDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_INFODIR
|
||||
CMAKE_INSTALL_INFODIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_LIBDIR
|
||||
CMAKE_INSTALL_LIBDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_LIBEXECDIR
|
||||
CMAKE_INSTALL_LIBEXECDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_LOCALEDIR
|
||||
CMAKE_INSTALL_LOCALEDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_LOCALSTATEDIR
|
||||
CMAKE_INSTALL_LOCALSTATEDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_MANDIR
|
||||
CMAKE_INSTALL_MANDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_OLDINCLUDEDIR
|
||||
CMAKE_INSTALL_OLDINCLUDEDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_RUNSTATEDIR
|
||||
CMAKE_INSTALL_RUNSTATEDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_SBINDIR
|
||||
CMAKE_INSTALL_SBINDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_SHAREDSTATEDIR
|
||||
CMAKE_INSTALL_SHAREDSTATEDIR-ADVANCED:INTERNAL=1
|
||||
//Install .so files without execute permission.
|
||||
CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_SYSCONFDIR
|
||||
CMAKE_INSTALL_SYSCONFDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_LINKER
|
||||
CMAKE_LINKER-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_MAKE_PROGRAM
|
||||
CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS
|
||||
CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG
|
||||
CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL
|
||||
CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE
|
||||
CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO
|
||||
CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_NM
|
||||
CMAKE_NM-ADVANCED:INTERNAL=1
|
||||
//number of local generators
|
||||
CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=3
|
||||
//ADVANCED property for variable: CMAKE_OBJCOPY
|
||||
CMAKE_OBJCOPY-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_OBJDUMP
|
||||
CMAKE_OBJDUMP-ADVANCED:INTERNAL=1
|
||||
//Platform information initialized
|
||||
CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_RANLIB
|
||||
CMAKE_RANLIB-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_READELF
|
||||
CMAKE_READELF-ADVANCED:INTERNAL=1
|
||||
//Path to CMake installation.
|
||||
CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.28
|
||||
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS
|
||||
CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG
|
||||
CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL
|
||||
CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE
|
||||
CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO
|
||||
CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH
|
||||
CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_SKIP_RPATH
|
||||
CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS
|
||||
CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG
|
||||
CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL
|
||||
CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE
|
||||
CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO
|
||||
CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_STRIP
|
||||
CMAKE_STRIP-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_TAPI
|
||||
CMAKE_TAPI-ADVANCED:INTERNAL=1
|
||||
//uname command
|
||||
CMAKE_UNAME:INTERNAL=/usr/bin/uname
|
||||
//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
|
||||
CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CPACK_BINARY_DEB
|
||||
CPACK_BINARY_DEB-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CPACK_BINARY_FREEBSD
|
||||
CPACK_BINARY_FREEBSD-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CPACK_BINARY_IFW
|
||||
CPACK_BINARY_IFW-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CPACK_BINARY_NSIS
|
||||
CPACK_BINARY_NSIS-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CPACK_BINARY_RPM
|
||||
CPACK_BINARY_RPM-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CPACK_BINARY_STGZ
|
||||
CPACK_BINARY_STGZ-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CPACK_BINARY_TBZ2
|
||||
CPACK_BINARY_TBZ2-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CPACK_BINARY_TGZ
|
||||
CPACK_BINARY_TGZ-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CPACK_BINARY_TXZ
|
||||
CPACK_BINARY_TXZ-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CPACK_BINARY_TZ
|
||||
CPACK_BINARY_TZ-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CPACK_SOURCE_RPM
|
||||
CPACK_SOURCE_RPM-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CPACK_SOURCE_TBZ2
|
||||
CPACK_SOURCE_TBZ2-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CPACK_SOURCE_TGZ
|
||||
CPACK_SOURCE_TGZ-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CPACK_SOURCE_TXZ
|
||||
CPACK_SOURCE_TXZ-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CPACK_SOURCE_TZ
|
||||
CPACK_SOURCE_TZ-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CPACK_SOURCE_ZIP
|
||||
CPACK_SOURCE_ZIP-ADVANCED:INTERNAL=1
|
||||
//Details about finding OpenSSL
|
||||
FIND_PACKAGE_MESSAGE_DETAILS_OpenSSL:INTERNAL=[/home/scott/claude/calog/vendor/openssl/libcrypto.a][/home/scott/claude/calog/vendor/openssl/include][c ][v3.5.7()]
|
||||
//Details about finding Threads
|
||||
FIND_PACKAGE_MESSAGE_DETAILS_Threads:INTERNAL=[TRUE][v()]
|
||||
//Details about finding ZLIB
|
||||
FIND_PACKAGE_MESSAGE_DETAILS_ZLIB:INTERNAL=[/usr/lib/x86_64-linux-gnu/libz.so][/usr/include][c ][v1.3()]
|
||||
//Have include arpa/inet.h
|
||||
HAVE_ARPA_INET_H:INTERNAL=1
|
||||
//Have symbol explicit_bzero
|
||||
HAVE_EXPLICIT_BZERO:INTERNAL=1
|
||||
//Have symbol explicit_memset
|
||||
HAVE_EXPLICIT_MEMSET:INTERNAL=
|
||||
//Have symbol gettimeofday
|
||||
HAVE_GETTIMEOFDAY:INTERNAL=1
|
||||
//Have function inet_addr
|
||||
HAVE_INET_ADDR:INTERNAL=1
|
||||
//Have include inttypes.h
|
||||
HAVE_INTTYPES_H:INTERNAL=1
|
||||
//Have symbol memset_s
|
||||
HAVE_MEMSET_S:INTERNAL=
|
||||
//Have include netinet/in.h
|
||||
HAVE_NETINET_IN_H:INTERNAL=1
|
||||
//Test HAVE_O_NONBLOCK
|
||||
HAVE_O_NONBLOCK:INTERNAL=1
|
||||
//Have function poll
|
||||
HAVE_POLL:INTERNAL=1
|
||||
//Have function select
|
||||
HAVE_SELECT:INTERNAL=1
|
||||
//Have symbol snprintf
|
||||
HAVE_SNPRINTF:INTERNAL=1
|
||||
//Have function socket
|
||||
HAVE_SOCKET:INTERNAL=1
|
||||
//Have symbol strtoll
|
||||
HAVE_STRTOLL:INTERNAL=1
|
||||
//Have include sys/ioctl.h
|
||||
HAVE_SYS_IOCTL_H:INTERNAL=1
|
||||
//Have include sys/select.h
|
||||
HAVE_SYS_SELECT_H:INTERNAL=1
|
||||
//Have include sys/socket.h
|
||||
HAVE_SYS_SOCKET_H:INTERNAL=1
|
||||
//Have include sys/time.h
|
||||
HAVE_SYS_TIME_H:INTERNAL=1
|
||||
//Have include sys/uio.h
|
||||
HAVE_SYS_UIO_H:INTERNAL=1
|
||||
//Have include sys/un.h
|
||||
HAVE_SYS_UN_H:INTERNAL=1
|
||||
//Have include unistd.h
|
||||
HAVE_UNISTD_H:INTERNAL=1
|
||||
//ADVANCED property for variable: HIDE_SYMBOLS
|
||||
HIDE_SYMBOLS-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: OPENSSL_CRYPTO_LIBRARY
|
||||
OPENSSL_CRYPTO_LIBRARY-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: OPENSSL_INCLUDE_DIR
|
||||
OPENSSL_INCLUDE_DIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: OPENSSL_SSL_LIBRARY
|
||||
OPENSSL_SSL_LIBRARY-ADVANCED:INTERNAL=1
|
||||
//Test OPT_Wdouble_promotion
|
||||
OPT_Wdouble_promotion:INTERNAL=1
|
||||
//Test OPT_Wenum_conversion
|
||||
OPT_Wenum_conversion:INTERNAL=1
|
||||
//Test OPT_Wpragmas
|
||||
OPT_Wpragmas:INTERNAL=1
|
||||
//Test OPT_Wunused_const_variable
|
||||
OPT_Wunused_const_variable:INTERNAL=1
|
||||
//ADVANCED property for variable: PKG_CONFIG_ARGN
|
||||
PKG_CONFIG_ARGN-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: PKG_CONFIG_EXECUTABLE
|
||||
PKG_CONFIG_EXECUTABLE-ADVANCED:INTERNAL=1
|
||||
//Files that must be in the same directory as the executables at
|
||||
// runtime.
|
||||
RUNTIME_DEPENDENCIES:INTERNAL=
|
||||
//ADVANCED property for variable: ZLIB_INCLUDE_DIR
|
||||
ZLIB_INCLUDE_DIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: ZLIB_LIBRARY_DEBUG
|
||||
ZLIB_LIBRARY_DEBUG-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: ZLIB_LIBRARY_RELEASE
|
||||
ZLIB_LIBRARY_RELEASE-ADVANCED:INTERNAL=1
|
||||
//linker supports push/pop state
|
||||
_CMAKE_LINKER_PUSHPOP_STATE_SUPPORTED:INTERNAL=TRUE
|
||||
//CMAKE_INSTALL_PREFIX during last run
|
||||
_GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX:INTERNAL=/usr/local
|
||||
_OPENSSL_CFLAGS:INTERNAL=-I/usr/include
|
||||
_OPENSSL_CFLAGS_I:INTERNAL=
|
||||
_OPENSSL_CFLAGS_OTHER:INTERNAL=
|
||||
_OPENSSL_FOUND:INTERNAL=1
|
||||
_OPENSSL_INCLUDEDIR:INTERNAL=/usr/include
|
||||
_OPENSSL_INCLUDE_DIRS:INTERNAL=/usr/include
|
||||
_OPENSSL_LDFLAGS:INTERNAL=-L/usr/lib/x86_64-linux-gnu;-lssl;-lcrypto
|
||||
_OPENSSL_LDFLAGS_OTHER:INTERNAL=
|
||||
_OPENSSL_LIBDIR:INTERNAL=/usr/lib/x86_64-linux-gnu
|
||||
_OPENSSL_LIBRARIES:INTERNAL=ssl;crypto
|
||||
_OPENSSL_LIBRARY_DIRS:INTERNAL=/usr/lib/x86_64-linux-gnu
|
||||
_OPENSSL_LIBS:INTERNAL=
|
||||
_OPENSSL_LIBS_L:INTERNAL=
|
||||
_OPENSSL_LIBS_OTHER:INTERNAL=
|
||||
_OPENSSL_LIBS_PATHS:INTERNAL=
|
||||
_OPENSSL_MODULE_NAME:INTERNAL=openssl
|
||||
_OPENSSL_PREFIX:INTERNAL=/usr
|
||||
_OPENSSL_STATIC_CFLAGS:INTERNAL=-I/usr/include
|
||||
_OPENSSL_STATIC_CFLAGS_I:INTERNAL=
|
||||
_OPENSSL_STATIC_CFLAGS_OTHER:INTERNAL=
|
||||
_OPENSSL_STATIC_INCLUDE_DIRS:INTERNAL=/usr/include
|
||||
_OPENSSL_STATIC_LDFLAGS:INTERNAL=-L/usr/lib/x86_64-linux-gnu;-lssl;-L/usr/lib/x86_64-linux-gnu;-ldl;-pthread;-lcrypto;-ldl;-pthread
|
||||
_OPENSSL_STATIC_LDFLAGS_OTHER:INTERNAL=-pthread;-pthread
|
||||
_OPENSSL_STATIC_LIBDIR:INTERNAL=
|
||||
_OPENSSL_STATIC_LIBRARIES:INTERNAL=ssl;dl;crypto;dl
|
||||
_OPENSSL_STATIC_LIBRARY_DIRS:INTERNAL=/usr/lib/x86_64-linux-gnu;/usr/lib/x86_64-linux-gnu
|
||||
_OPENSSL_STATIC_LIBS:INTERNAL=
|
||||
_OPENSSL_STATIC_LIBS_L:INTERNAL=
|
||||
_OPENSSL_STATIC_LIBS_OTHER:INTERNAL=
|
||||
_OPENSSL_STATIC_LIBS_PATHS:INTERNAL=
|
||||
_OPENSSL_VERSION:INTERNAL=3.0.13
|
||||
_OPENSSL_openssl_INCLUDEDIR:INTERNAL=
|
||||
_OPENSSL_openssl_LIBDIR:INTERNAL=
|
||||
_OPENSSL_openssl_PREFIX:INTERNAL=
|
||||
_OPENSSL_openssl_VERSION:INTERNAL=
|
||||
__pkg_config_arguments__OPENSSL:INTERNAL=QUIET;openssl
|
||||
__pkg_config_checked__OPENSSL:INTERNAL=1
|
||||
//ADVANCED property for variable: pkgcfg_lib__OPENSSL_crypto
|
||||
pkgcfg_lib__OPENSSL_crypto-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: pkgcfg_lib__OPENSSL_ssl
|
||||
pkgcfg_lib__OPENSSL_ssl-ADVANCED:INTERNAL=1
|
||||
prefix_result:INTERNAL=/usr/lib/x86_64-linux-gnu
|
||||
|
||||
74
vendor/libssh2/build/CMakeFiles/3.28.3/CMakeCCompiler.cmake
vendored
Normal file
74
vendor/libssh2/build/CMakeFiles/3.28.3/CMakeCCompiler.cmake
vendored
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
set(CMAKE_C_COMPILER "/usr/bin/cc")
|
||||
set(CMAKE_C_COMPILER_ARG1 "")
|
||||
set(CMAKE_C_COMPILER_ID "GNU")
|
||||
set(CMAKE_C_COMPILER_VERSION "13.3.0")
|
||||
set(CMAKE_C_COMPILER_VERSION_INTERNAL "")
|
||||
set(CMAKE_C_COMPILER_WRAPPER "")
|
||||
set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "17")
|
||||
set(CMAKE_C_EXTENSIONS_COMPUTED_DEFAULT "ON")
|
||||
set(CMAKE_C_COMPILE_FEATURES "c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert;c_std_17;c_std_23")
|
||||
set(CMAKE_C90_COMPILE_FEATURES "c_std_90;c_function_prototypes")
|
||||
set(CMAKE_C99_COMPILE_FEATURES "c_std_99;c_restrict;c_variadic_macros")
|
||||
set(CMAKE_C11_COMPILE_FEATURES "c_std_11;c_static_assert")
|
||||
set(CMAKE_C17_COMPILE_FEATURES "c_std_17")
|
||||
set(CMAKE_C23_COMPILE_FEATURES "c_std_23")
|
||||
|
||||
set(CMAKE_C_PLATFORM_ID "Linux")
|
||||
set(CMAKE_C_SIMULATE_ID "")
|
||||
set(CMAKE_C_COMPILER_FRONTEND_VARIANT "GNU")
|
||||
set(CMAKE_C_SIMULATE_VERSION "")
|
||||
|
||||
|
||||
|
||||
|
||||
set(CMAKE_AR "/usr/bin/ar")
|
||||
set(CMAKE_C_COMPILER_AR "/usr/bin/gcc-ar-13")
|
||||
set(CMAKE_RANLIB "/usr/bin/ranlib")
|
||||
set(CMAKE_C_COMPILER_RANLIB "/usr/bin/gcc-ranlib-13")
|
||||
set(CMAKE_LINKER "/usr/bin/ld")
|
||||
set(CMAKE_MT "")
|
||||
set(CMAKE_TAPI "CMAKE_TAPI-NOTFOUND")
|
||||
set(CMAKE_COMPILER_IS_GNUCC 1)
|
||||
set(CMAKE_C_COMPILER_LOADED 1)
|
||||
set(CMAKE_C_COMPILER_WORKS TRUE)
|
||||
set(CMAKE_C_ABI_COMPILED TRUE)
|
||||
|
||||
set(CMAKE_C_COMPILER_ENV_VAR "CC")
|
||||
|
||||
set(CMAKE_C_COMPILER_ID_RUN 1)
|
||||
set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m)
|
||||
set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC)
|
||||
set(CMAKE_C_LINKER_PREFERENCE 10)
|
||||
set(CMAKE_C_LINKER_DEPFILE_SUPPORTED TRUE)
|
||||
|
||||
# Save compiler ABI information.
|
||||
set(CMAKE_C_SIZEOF_DATA_PTR "8")
|
||||
set(CMAKE_C_COMPILER_ABI "ELF")
|
||||
set(CMAKE_C_BYTE_ORDER "LITTLE_ENDIAN")
|
||||
set(CMAKE_C_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
|
||||
|
||||
if(CMAKE_C_SIZEOF_DATA_PTR)
|
||||
set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}")
|
||||
endif()
|
||||
|
||||
if(CMAKE_C_COMPILER_ABI)
|
||||
set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}")
|
||||
endif()
|
||||
|
||||
if(CMAKE_C_LIBRARY_ARCHITECTURE)
|
||||
set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
|
||||
endif()
|
||||
|
||||
set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "")
|
||||
if(CMAKE_C_CL_SHOWINCLUDES_PREFIX)
|
||||
set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}")
|
||||
endif()
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/13/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include")
|
||||
set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "gcc;gcc_s;c;gcc;gcc_s")
|
||||
set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/13;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib")
|
||||
set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
|
||||
BIN
vendor/libssh2/build/CMakeFiles/3.28.3/CMakeDetermineCompilerABI_C.bin
vendored
Executable file
BIN
vendor/libssh2/build/CMakeFiles/3.28.3/CMakeDetermineCompilerABI_C.bin
vendored
Executable file
Binary file not shown.
15
vendor/libssh2/build/CMakeFiles/3.28.3/CMakeSystem.cmake
vendored
Normal file
15
vendor/libssh2/build/CMakeFiles/3.28.3/CMakeSystem.cmake
vendored
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
set(CMAKE_HOST_SYSTEM "Linux-6.8.0-124-generic")
|
||||
set(CMAKE_HOST_SYSTEM_NAME "Linux")
|
||||
set(CMAKE_HOST_SYSTEM_VERSION "6.8.0-124-generic")
|
||||
set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64")
|
||||
|
||||
|
||||
|
||||
set(CMAKE_SYSTEM "Linux-6.8.0-124-generic")
|
||||
set(CMAKE_SYSTEM_NAME "Linux")
|
||||
set(CMAKE_SYSTEM_VERSION "6.8.0-124-generic")
|
||||
set(CMAKE_SYSTEM_PROCESSOR "x86_64")
|
||||
|
||||
set(CMAKE_CROSSCOMPILING "FALSE")
|
||||
|
||||
set(CMAKE_SYSTEM_LOADED 1)
|
||||
880
vendor/libssh2/build/CMakeFiles/3.28.3/CompilerIdC/CMakeCCompilerId.c
vendored
Normal file
880
vendor/libssh2/build/CMakeFiles/3.28.3/CompilerIdC/CMakeCCompilerId.c
vendored
Normal file
|
|
@ -0,0 +1,880 @@
|
|||
#ifdef __cplusplus
|
||||
# error "A C++ compiler has been selected for C."
|
||||
#endif
|
||||
|
||||
#if defined(__18CXX)
|
||||
# define ID_VOID_MAIN
|
||||
#endif
|
||||
#if defined(__CLASSIC_C__)
|
||||
/* cv-qualifiers did not exist in K&R C */
|
||||
# define const
|
||||
# define volatile
|
||||
#endif
|
||||
|
||||
#if !defined(__has_include)
|
||||
/* If the compiler does not have __has_include, pretend the answer is
|
||||
always no. */
|
||||
# define __has_include(x) 0
|
||||
#endif
|
||||
|
||||
|
||||
/* Version number components: V=Version, R=Revision, P=Patch
|
||||
Version date components: YYYY=Year, MM=Month, DD=Day */
|
||||
|
||||
#if defined(__INTEL_COMPILER) || defined(__ICC)
|
||||
# define COMPILER_ID "Intel"
|
||||
# if defined(_MSC_VER)
|
||||
# define SIMULATE_ID "MSVC"
|
||||
# endif
|
||||
# if defined(__GNUC__)
|
||||
# define SIMULATE_ID "GNU"
|
||||
# endif
|
||||
/* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later,
|
||||
except that a few beta releases use the old format with V=2021. */
|
||||
# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111
|
||||
# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
|
||||
# if defined(__INTEL_COMPILER_UPDATE)
|
||||
# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
|
||||
# else
|
||||
# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10)
|
||||
# endif
|
||||
# else
|
||||
# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER)
|
||||
# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE)
|
||||
/* The third version component from --version is an update index,
|
||||
but no macro is provided for it. */
|
||||
# define COMPILER_VERSION_PATCH DEC(0)
|
||||
# endif
|
||||
# if defined(__INTEL_COMPILER_BUILD_DATE)
|
||||
/* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
|
||||
# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
|
||||
# endif
|
||||
# if defined(_MSC_VER)
|
||||
/* _MSC_VER = VVRR */
|
||||
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
|
||||
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
|
||||
# endif
|
||||
# if defined(__GNUC__)
|
||||
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
|
||||
# elif defined(__GNUG__)
|
||||
# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
|
||||
# endif
|
||||
# if defined(__GNUC_MINOR__)
|
||||
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
|
||||
# endif
|
||||
# if defined(__GNUC_PATCHLEVEL__)
|
||||
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
|
||||
# endif
|
||||
|
||||
#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER)
|
||||
# define COMPILER_ID "IntelLLVM"
|
||||
#if defined(_MSC_VER)
|
||||
# define SIMULATE_ID "MSVC"
|
||||
#endif
|
||||
#if defined(__GNUC__)
|
||||
# define SIMULATE_ID "GNU"
|
||||
#endif
|
||||
/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and
|
||||
* later. Look for 6 digit vs. 8 digit version number to decide encoding.
|
||||
* VVVV is no smaller than the current year when a version is released.
|
||||
*/
|
||||
#if __INTEL_LLVM_COMPILER < 1000000L
|
||||
# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10)
|
||||
#else
|
||||
# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100)
|
||||
# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100)
|
||||
#endif
|
||||
#if defined(_MSC_VER)
|
||||
/* _MSC_VER = VVRR */
|
||||
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
|
||||
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
|
||||
#endif
|
||||
#if defined(__GNUC__)
|
||||
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
|
||||
#elif defined(__GNUG__)
|
||||
# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
|
||||
#endif
|
||||
#if defined(__GNUC_MINOR__)
|
||||
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
|
||||
#endif
|
||||
#if defined(__GNUC_PATCHLEVEL__)
|
||||
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
|
||||
#endif
|
||||
|
||||
#elif defined(__PATHCC__)
|
||||
# define COMPILER_ID "PathScale"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
|
||||
# if defined(__PATHCC_PATCHLEVEL__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
|
||||
# endif
|
||||
|
||||
#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
|
||||
# define COMPILER_ID "Embarcadero"
|
||||
# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
|
||||
# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
|
||||
# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF)
|
||||
|
||||
#elif defined(__BORLANDC__)
|
||||
# define COMPILER_ID "Borland"
|
||||
/* __BORLANDC__ = 0xVRR */
|
||||
# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
|
||||
# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
|
||||
|
||||
#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
|
||||
# define COMPILER_ID "Watcom"
|
||||
/* __WATCOMC__ = VVRR */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
|
||||
# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
|
||||
# if (__WATCOMC__ % 10) > 0
|
||||
# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
|
||||
# endif
|
||||
|
||||
#elif defined(__WATCOMC__)
|
||||
# define COMPILER_ID "OpenWatcom"
|
||||
/* __WATCOMC__ = VVRP + 1100 */
|
||||
# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
|
||||
# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
|
||||
# if (__WATCOMC__ % 10) > 0
|
||||
# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
|
||||
# endif
|
||||
|
||||
#elif defined(__SUNPRO_C)
|
||||
# define COMPILER_ID "SunPro"
|
||||
# if __SUNPRO_C >= 0x5100
|
||||
/* __SUNPRO_C = 0xVRRP */
|
||||
# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12)
|
||||
# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF)
|
||||
# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF)
|
||||
# else
|
||||
/* __SUNPRO_CC = 0xVRP */
|
||||
# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8)
|
||||
# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF)
|
||||
# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF)
|
||||
# endif
|
||||
|
||||
#elif defined(__HP_cc)
|
||||
# define COMPILER_ID "HP"
|
||||
/* __HP_cc = VVRRPP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100)
|
||||
# define COMPILER_VERSION_PATCH DEC(__HP_cc % 100)
|
||||
|
||||
#elif defined(__DECC)
|
||||
# define COMPILER_ID "Compaq"
|
||||
/* __DECC_VER = VVRRTPPPP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000 % 100)
|
||||
# define COMPILER_VERSION_PATCH DEC(__DECC_VER % 10000)
|
||||
|
||||
#elif defined(__IBMC__) && defined(__COMPILER_VER__)
|
||||
# define COMPILER_ID "zOS"
|
||||
/* __IBMC__ = VRP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
|
||||
|
||||
#elif defined(__open_xl__) && defined(__clang__)
|
||||
# define COMPILER_ID "IBMClang"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__open_xl_release__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__)
|
||||
# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__)
|
||||
|
||||
|
||||
#elif defined(__ibmxl__) && defined(__clang__)
|
||||
# define COMPILER_ID "XLClang"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
|
||||
# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
|
||||
|
||||
|
||||
#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800
|
||||
# define COMPILER_ID "XL"
|
||||
/* __IBMC__ = VRP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
|
||||
|
||||
#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800
|
||||
# define COMPILER_ID "VisualAge"
|
||||
/* __IBMC__ = VRP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
|
||||
|
||||
#elif defined(__NVCOMPILER)
|
||||
# define COMPILER_ID "NVHPC"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__)
|
||||
# if defined(__NVCOMPILER_PATCHLEVEL__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__)
|
||||
# endif
|
||||
|
||||
#elif defined(__PGI)
|
||||
# define COMPILER_ID "PGI"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
|
||||
# if defined(__PGIC_PATCHLEVEL__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
|
||||
# endif
|
||||
|
||||
#elif defined(__clang__) && defined(__cray__)
|
||||
# define COMPILER_ID "CrayClang"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__cray_major__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__cray_minor__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__cray_patchlevel__)
|
||||
# define COMPILER_VERSION_INTERNAL_STR __clang_version__
|
||||
|
||||
|
||||
#elif defined(_CRAYC)
|
||||
# define COMPILER_ID "Cray"
|
||||
# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
|
||||
# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
|
||||
|
||||
#elif defined(__TI_COMPILER_VERSION__)
|
||||
# define COMPILER_ID "TI"
|
||||
/* __TI_COMPILER_VERSION__ = VVVRRRPPP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000)
|
||||
# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000)
|
||||
|
||||
#elif defined(__CLANG_FUJITSU)
|
||||
# define COMPILER_ID "FujitsuClang"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
|
||||
# define COMPILER_VERSION_INTERNAL_STR __clang_version__
|
||||
|
||||
|
||||
#elif defined(__FUJITSU)
|
||||
# define COMPILER_ID "Fujitsu"
|
||||
# if defined(__FCC_version__)
|
||||
# define COMPILER_VERSION __FCC_version__
|
||||
# elif defined(__FCC_major__)
|
||||
# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
|
||||
# endif
|
||||
# if defined(__fcc_version)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__fcc_version)
|
||||
# elif defined(__FCC_VERSION)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION)
|
||||
# endif
|
||||
|
||||
|
||||
#elif defined(__ghs__)
|
||||
# define COMPILER_ID "GHS"
|
||||
/* __GHS_VERSION_NUMBER = VVVVRP */
|
||||
# ifdef __GHS_VERSION_NUMBER
|
||||
# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10)
|
||||
# endif
|
||||
|
||||
#elif defined(__TASKING__)
|
||||
# define COMPILER_ID "Tasking"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__VERSION__/1000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__VERSION__ % 100)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__VERSION__)
|
||||
|
||||
#elif defined(__ORANGEC__)
|
||||
# define COMPILER_ID "OrangeC"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__ORANGEC_MAJOR__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__ORANGEC_MINOR__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__ORANGEC_PATCHLEVEL__)
|
||||
|
||||
#elif defined(__TINYC__)
|
||||
# define COMPILER_ID "TinyCC"
|
||||
|
||||
#elif defined(__BCC__)
|
||||
# define COMPILER_ID "Bruce"
|
||||
|
||||
#elif defined(__SCO_VERSION__)
|
||||
# define COMPILER_ID "SCO"
|
||||
|
||||
#elif defined(__ARMCC_VERSION) && !defined(__clang__)
|
||||
# define COMPILER_ID "ARMCC"
|
||||
#if __ARMCC_VERSION >= 1000000
|
||||
/* __ARMCC_VERSION = VRRPPPP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
|
||||
# define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
|
||||
#else
|
||||
/* __ARMCC_VERSION = VRPPPP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
|
||||
#endif
|
||||
|
||||
|
||||
#elif defined(__clang__) && defined(__apple_build_version__)
|
||||
# define COMPILER_ID "AppleClang"
|
||||
# if defined(_MSC_VER)
|
||||
# define SIMULATE_ID "MSVC"
|
||||
# endif
|
||||
# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
|
||||
# if defined(_MSC_VER)
|
||||
/* _MSC_VER = VVRR */
|
||||
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
|
||||
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
|
||||
# endif
|
||||
# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
|
||||
|
||||
#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION)
|
||||
# define COMPILER_ID "ARMClang"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100)
|
||||
# define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION/100 % 100)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION)
|
||||
|
||||
#elif defined(__clang__)
|
||||
# define COMPILER_ID "Clang"
|
||||
# if defined(_MSC_VER)
|
||||
# define SIMULATE_ID "MSVC"
|
||||
# endif
|
||||
# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
|
||||
# if defined(_MSC_VER)
|
||||
/* _MSC_VER = VVRR */
|
||||
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
|
||||
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
|
||||
# endif
|
||||
|
||||
#elif defined(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__))
|
||||
# define COMPILER_ID "LCC"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__LCC__ / 100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__LCC__ % 100)
|
||||
# if defined(__LCC_MINOR__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__)
|
||||
# endif
|
||||
# if defined(__GNUC__) && defined(__GNUC_MINOR__)
|
||||
# define SIMULATE_ID "GNU"
|
||||
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
|
||||
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
|
||||
# if defined(__GNUC_PATCHLEVEL__)
|
||||
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
|
||||
# endif
|
||||
# endif
|
||||
|
||||
#elif defined(__GNUC__)
|
||||
# define COMPILER_ID "GNU"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
|
||||
# if defined(__GNUC_MINOR__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
|
||||
# endif
|
||||
# if defined(__GNUC_PATCHLEVEL__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
|
||||
# endif
|
||||
|
||||
#elif defined(_MSC_VER)
|
||||
# define COMPILER_ID "MSVC"
|
||||
/* _MSC_VER = VVRR */
|
||||
# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
|
||||
# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
|
||||
# if defined(_MSC_FULL_VER)
|
||||
# if _MSC_VER >= 1400
|
||||
/* _MSC_FULL_VER = VVRRPPPPP */
|
||||
# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
|
||||
# else
|
||||
/* _MSC_FULL_VER = VVRRPPPP */
|
||||
# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
|
||||
# endif
|
||||
# endif
|
||||
# if defined(_MSC_BUILD)
|
||||
# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
|
||||
# endif
|
||||
|
||||
#elif defined(_ADI_COMPILER)
|
||||
# define COMPILER_ID "ADSP"
|
||||
#if defined(__VERSIONNUM__)
|
||||
/* __VERSIONNUM__ = 0xVVRRPPTT */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__VERSIONNUM__ >> 24 & 0xFF)
|
||||
# define COMPILER_VERSION_MINOR DEC(__VERSIONNUM__ >> 16 & 0xFF)
|
||||
# define COMPILER_VERSION_PATCH DEC(__VERSIONNUM__ >> 8 & 0xFF)
|
||||
# define COMPILER_VERSION_TWEAK DEC(__VERSIONNUM__ & 0xFF)
|
||||
#endif
|
||||
|
||||
#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
|
||||
# define COMPILER_ID "IAR"
|
||||
# if defined(__VER__) && defined(__ICCARM__)
|
||||
# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000)
|
||||
# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000)
|
||||
# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
|
||||
# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__))
|
||||
# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100)
|
||||
# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100))
|
||||
# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
|
||||
# endif
|
||||
|
||||
#elif defined(__SDCC_VERSION_MAJOR) || defined(SDCC)
|
||||
# define COMPILER_ID "SDCC"
|
||||
# if defined(__SDCC_VERSION_MAJOR)
|
||||
# define COMPILER_VERSION_MAJOR DEC(__SDCC_VERSION_MAJOR)
|
||||
# define COMPILER_VERSION_MINOR DEC(__SDCC_VERSION_MINOR)
|
||||
# define COMPILER_VERSION_PATCH DEC(__SDCC_VERSION_PATCH)
|
||||
# else
|
||||
/* SDCC = VRP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(SDCC/100)
|
||||
# define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(SDCC % 10)
|
||||
# endif
|
||||
|
||||
|
||||
/* These compilers are either not known or too old to define an
|
||||
identification macro. Try to identify the platform and guess that
|
||||
it is the native compiler. */
|
||||
#elif defined(__hpux) || defined(__hpua)
|
||||
# define COMPILER_ID "HP"
|
||||
|
||||
#else /* unknown compiler */
|
||||
# define COMPILER_ID ""
|
||||
#endif
|
||||
|
||||
/* Construct the string literal in pieces to prevent the source from
|
||||
getting matched. Store it in a pointer rather than an array
|
||||
because some compilers will just produce instructions to fill the
|
||||
array rather than assigning a pointer to a static array. */
|
||||
char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
|
||||
#ifdef SIMULATE_ID
|
||||
char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
|
||||
#endif
|
||||
|
||||
#ifdef __QNXNTO__
|
||||
char const* qnxnto = "INFO" ":" "qnxnto[]";
|
||||
#endif
|
||||
|
||||
#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
|
||||
char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
|
||||
#endif
|
||||
|
||||
#define STRINGIFY_HELPER(X) #X
|
||||
#define STRINGIFY(X) STRINGIFY_HELPER(X)
|
||||
|
||||
/* Identify known platforms by name. */
|
||||
#if defined(__linux) || defined(__linux__) || defined(linux)
|
||||
# define PLATFORM_ID "Linux"
|
||||
|
||||
#elif defined(__MSYS__)
|
||||
# define PLATFORM_ID "MSYS"
|
||||
|
||||
#elif defined(__CYGWIN__)
|
||||
# define PLATFORM_ID "Cygwin"
|
||||
|
||||
#elif defined(__MINGW32__)
|
||||
# define PLATFORM_ID "MinGW"
|
||||
|
||||
#elif defined(__APPLE__)
|
||||
# define PLATFORM_ID "Darwin"
|
||||
|
||||
#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
|
||||
# define PLATFORM_ID "Windows"
|
||||
|
||||
#elif defined(__FreeBSD__) || defined(__FreeBSD)
|
||||
# define PLATFORM_ID "FreeBSD"
|
||||
|
||||
#elif defined(__NetBSD__) || defined(__NetBSD)
|
||||
# define PLATFORM_ID "NetBSD"
|
||||
|
||||
#elif defined(__OpenBSD__) || defined(__OPENBSD)
|
||||
# define PLATFORM_ID "OpenBSD"
|
||||
|
||||
#elif defined(__sun) || defined(sun)
|
||||
# define PLATFORM_ID "SunOS"
|
||||
|
||||
#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
|
||||
# define PLATFORM_ID "AIX"
|
||||
|
||||
#elif defined(__hpux) || defined(__hpux__)
|
||||
# define PLATFORM_ID "HP-UX"
|
||||
|
||||
#elif defined(__HAIKU__)
|
||||
# define PLATFORM_ID "Haiku"
|
||||
|
||||
#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
|
||||
# define PLATFORM_ID "BeOS"
|
||||
|
||||
#elif defined(__QNX__) || defined(__QNXNTO__)
|
||||
# define PLATFORM_ID "QNX"
|
||||
|
||||
#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
|
||||
# define PLATFORM_ID "Tru64"
|
||||
|
||||
#elif defined(__riscos) || defined(__riscos__)
|
||||
# define PLATFORM_ID "RISCos"
|
||||
|
||||
#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
|
||||
# define PLATFORM_ID "SINIX"
|
||||
|
||||
#elif defined(__UNIX_SV__)
|
||||
# define PLATFORM_ID "UNIX_SV"
|
||||
|
||||
#elif defined(__bsdos__)
|
||||
# define PLATFORM_ID "BSDOS"
|
||||
|
||||
#elif defined(_MPRAS) || defined(MPRAS)
|
||||
# define PLATFORM_ID "MP-RAS"
|
||||
|
||||
#elif defined(__osf) || defined(__osf__)
|
||||
# define PLATFORM_ID "OSF1"
|
||||
|
||||
#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
|
||||
# define PLATFORM_ID "SCO_SV"
|
||||
|
||||
#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
|
||||
# define PLATFORM_ID "ULTRIX"
|
||||
|
||||
#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
|
||||
# define PLATFORM_ID "Xenix"
|
||||
|
||||
#elif defined(__WATCOMC__)
|
||||
# if defined(__LINUX__)
|
||||
# define PLATFORM_ID "Linux"
|
||||
|
||||
# elif defined(__DOS__)
|
||||
# define PLATFORM_ID "DOS"
|
||||
|
||||
# elif defined(__OS2__)
|
||||
# define PLATFORM_ID "OS2"
|
||||
|
||||
# elif defined(__WINDOWS__)
|
||||
# define PLATFORM_ID "Windows3x"
|
||||
|
||||
# elif defined(__VXWORKS__)
|
||||
# define PLATFORM_ID "VxWorks"
|
||||
|
||||
# else /* unknown platform */
|
||||
# define PLATFORM_ID
|
||||
# endif
|
||||
|
||||
#elif defined(__INTEGRITY)
|
||||
# if defined(INT_178B)
|
||||
# define PLATFORM_ID "Integrity178"
|
||||
|
||||
# else /* regular Integrity */
|
||||
# define PLATFORM_ID "Integrity"
|
||||
# endif
|
||||
|
||||
# elif defined(_ADI_COMPILER)
|
||||
# define PLATFORM_ID "ADSP"
|
||||
|
||||
#else /* unknown platform */
|
||||
# define PLATFORM_ID
|
||||
|
||||
#endif
|
||||
|
||||
/* For windows compilers MSVC and Intel we can determine
|
||||
the architecture of the compiler being used. This is because
|
||||
the compilers do not have flags that can change the architecture,
|
||||
but rather depend on which compiler is being used
|
||||
*/
|
||||
#if defined(_WIN32) && defined(_MSC_VER)
|
||||
# if defined(_M_IA64)
|
||||
# define ARCHITECTURE_ID "IA64"
|
||||
|
||||
# elif defined(_M_ARM64EC)
|
||||
# define ARCHITECTURE_ID "ARM64EC"
|
||||
|
||||
# elif defined(_M_X64) || defined(_M_AMD64)
|
||||
# define ARCHITECTURE_ID "x64"
|
||||
|
||||
# elif defined(_M_IX86)
|
||||
# define ARCHITECTURE_ID "X86"
|
||||
|
||||
# elif defined(_M_ARM64)
|
||||
# define ARCHITECTURE_ID "ARM64"
|
||||
|
||||
# elif defined(_M_ARM)
|
||||
# if _M_ARM == 4
|
||||
# define ARCHITECTURE_ID "ARMV4I"
|
||||
# elif _M_ARM == 5
|
||||
# define ARCHITECTURE_ID "ARMV5I"
|
||||
# else
|
||||
# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
|
||||
# endif
|
||||
|
||||
# elif defined(_M_MIPS)
|
||||
# define ARCHITECTURE_ID "MIPS"
|
||||
|
||||
# elif defined(_M_SH)
|
||||
# define ARCHITECTURE_ID "SHx"
|
||||
|
||||
# else /* unknown architecture */
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#elif defined(__WATCOMC__)
|
||||
# if defined(_M_I86)
|
||||
# define ARCHITECTURE_ID "I86"
|
||||
|
||||
# elif defined(_M_IX86)
|
||||
# define ARCHITECTURE_ID "X86"
|
||||
|
||||
# else /* unknown architecture */
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
|
||||
# if defined(__ICCARM__)
|
||||
# define ARCHITECTURE_ID "ARM"
|
||||
|
||||
# elif defined(__ICCRX__)
|
||||
# define ARCHITECTURE_ID "RX"
|
||||
|
||||
# elif defined(__ICCRH850__)
|
||||
# define ARCHITECTURE_ID "RH850"
|
||||
|
||||
# elif defined(__ICCRL78__)
|
||||
# define ARCHITECTURE_ID "RL78"
|
||||
|
||||
# elif defined(__ICCRISCV__)
|
||||
# define ARCHITECTURE_ID "RISCV"
|
||||
|
||||
# elif defined(__ICCAVR__)
|
||||
# define ARCHITECTURE_ID "AVR"
|
||||
|
||||
# elif defined(__ICC430__)
|
||||
# define ARCHITECTURE_ID "MSP430"
|
||||
|
||||
# elif defined(__ICCV850__)
|
||||
# define ARCHITECTURE_ID "V850"
|
||||
|
||||
# elif defined(__ICC8051__)
|
||||
# define ARCHITECTURE_ID "8051"
|
||||
|
||||
# elif defined(__ICCSTM8__)
|
||||
# define ARCHITECTURE_ID "STM8"
|
||||
|
||||
# else /* unknown architecture */
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#elif defined(__ghs__)
|
||||
# if defined(__PPC64__)
|
||||
# define ARCHITECTURE_ID "PPC64"
|
||||
|
||||
# elif defined(__ppc__)
|
||||
# define ARCHITECTURE_ID "PPC"
|
||||
|
||||
# elif defined(__ARM__)
|
||||
# define ARCHITECTURE_ID "ARM"
|
||||
|
||||
# elif defined(__x86_64__)
|
||||
# define ARCHITECTURE_ID "x64"
|
||||
|
||||
# elif defined(__i386__)
|
||||
# define ARCHITECTURE_ID "X86"
|
||||
|
||||
# else /* unknown architecture */
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#elif defined(__TI_COMPILER_VERSION__)
|
||||
# if defined(__TI_ARM__)
|
||||
# define ARCHITECTURE_ID "ARM"
|
||||
|
||||
# elif defined(__MSP430__)
|
||||
# define ARCHITECTURE_ID "MSP430"
|
||||
|
||||
# elif defined(__TMS320C28XX__)
|
||||
# define ARCHITECTURE_ID "TMS320C28x"
|
||||
|
||||
# elif defined(__TMS320C6X__) || defined(_TMS320C6X)
|
||||
# define ARCHITECTURE_ID "TMS320C6x"
|
||||
|
||||
# else /* unknown architecture */
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
# elif defined(__ADSPSHARC__)
|
||||
# define ARCHITECTURE_ID "SHARC"
|
||||
|
||||
# elif defined(__ADSPBLACKFIN__)
|
||||
# define ARCHITECTURE_ID "Blackfin"
|
||||
|
||||
#elif defined(__TASKING__)
|
||||
|
||||
# if defined(__CTC__) || defined(__CPTC__)
|
||||
# define ARCHITECTURE_ID "TriCore"
|
||||
|
||||
# elif defined(__CMCS__)
|
||||
# define ARCHITECTURE_ID "MCS"
|
||||
|
||||
# elif defined(__CARM__)
|
||||
# define ARCHITECTURE_ID "ARM"
|
||||
|
||||
# elif defined(__CARC__)
|
||||
# define ARCHITECTURE_ID "ARC"
|
||||
|
||||
# elif defined(__C51__)
|
||||
# define ARCHITECTURE_ID "8051"
|
||||
|
||||
# elif defined(__CPCP__)
|
||||
# define ARCHITECTURE_ID "PCP"
|
||||
|
||||
# else
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#else
|
||||
# define ARCHITECTURE_ID
|
||||
#endif
|
||||
|
||||
/* Convert integer to decimal digit literals. */
|
||||
#define DEC(n) \
|
||||
('0' + (((n) / 10000000)%10)), \
|
||||
('0' + (((n) / 1000000)%10)), \
|
||||
('0' + (((n) / 100000)%10)), \
|
||||
('0' + (((n) / 10000)%10)), \
|
||||
('0' + (((n) / 1000)%10)), \
|
||||
('0' + (((n) / 100)%10)), \
|
||||
('0' + (((n) / 10)%10)), \
|
||||
('0' + ((n) % 10))
|
||||
|
||||
/* Convert integer to hex digit literals. */
|
||||
#define HEX(n) \
|
||||
('0' + ((n)>>28 & 0xF)), \
|
||||
('0' + ((n)>>24 & 0xF)), \
|
||||
('0' + ((n)>>20 & 0xF)), \
|
||||
('0' + ((n)>>16 & 0xF)), \
|
||||
('0' + ((n)>>12 & 0xF)), \
|
||||
('0' + ((n)>>8 & 0xF)), \
|
||||
('0' + ((n)>>4 & 0xF)), \
|
||||
('0' + ((n) & 0xF))
|
||||
|
||||
/* Construct a string literal encoding the version number. */
|
||||
#ifdef COMPILER_VERSION
|
||||
char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]";
|
||||
|
||||
/* Construct a string literal encoding the version number components. */
|
||||
#elif defined(COMPILER_VERSION_MAJOR)
|
||||
char const info_version[] = {
|
||||
'I', 'N', 'F', 'O', ':',
|
||||
'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
|
||||
COMPILER_VERSION_MAJOR,
|
||||
# ifdef COMPILER_VERSION_MINOR
|
||||
'.', COMPILER_VERSION_MINOR,
|
||||
# ifdef COMPILER_VERSION_PATCH
|
||||
'.', COMPILER_VERSION_PATCH,
|
||||
# ifdef COMPILER_VERSION_TWEAK
|
||||
'.', COMPILER_VERSION_TWEAK,
|
||||
# endif
|
||||
# endif
|
||||
# endif
|
||||
']','\0'};
|
||||
#endif
|
||||
|
||||
/* Construct a string literal encoding the internal version number. */
|
||||
#ifdef COMPILER_VERSION_INTERNAL
|
||||
char const info_version_internal[] = {
|
||||
'I', 'N', 'F', 'O', ':',
|
||||
'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_',
|
||||
'i','n','t','e','r','n','a','l','[',
|
||||
COMPILER_VERSION_INTERNAL,']','\0'};
|
||||
#elif defined(COMPILER_VERSION_INTERNAL_STR)
|
||||
char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]";
|
||||
#endif
|
||||
|
||||
/* Construct a string literal encoding the version number components. */
|
||||
#ifdef SIMULATE_VERSION_MAJOR
|
||||
char const info_simulate_version[] = {
|
||||
'I', 'N', 'F', 'O', ':',
|
||||
's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
|
||||
SIMULATE_VERSION_MAJOR,
|
||||
# ifdef SIMULATE_VERSION_MINOR
|
||||
'.', SIMULATE_VERSION_MINOR,
|
||||
# ifdef SIMULATE_VERSION_PATCH
|
||||
'.', SIMULATE_VERSION_PATCH,
|
||||
# ifdef SIMULATE_VERSION_TWEAK
|
||||
'.', SIMULATE_VERSION_TWEAK,
|
||||
# endif
|
||||
# endif
|
||||
# endif
|
||||
']','\0'};
|
||||
#endif
|
||||
|
||||
/* Construct the string literal in pieces to prevent the source from
|
||||
getting matched. Store it in a pointer rather than an array
|
||||
because some compilers will just produce instructions to fill the
|
||||
array rather than assigning a pointer to a static array. */
|
||||
char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
|
||||
char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
|
||||
|
||||
|
||||
|
||||
#if !defined(__STDC__) && !defined(__clang__)
|
||||
# if defined(_MSC_VER) || defined(__ibmxl__) || defined(__IBMC__)
|
||||
# define C_VERSION "90"
|
||||
# else
|
||||
# define C_VERSION
|
||||
# endif
|
||||
#elif __STDC_VERSION__ > 201710L
|
||||
# define C_VERSION "23"
|
||||
#elif __STDC_VERSION__ >= 201710L
|
||||
# define C_VERSION "17"
|
||||
#elif __STDC_VERSION__ >= 201000L
|
||||
# define C_VERSION "11"
|
||||
#elif __STDC_VERSION__ >= 199901L
|
||||
# define C_VERSION "99"
|
||||
#else
|
||||
# define C_VERSION "90"
|
||||
#endif
|
||||
const char* info_language_standard_default =
|
||||
"INFO" ":" "standard_default[" C_VERSION "]";
|
||||
|
||||
const char* info_language_extensions_default = "INFO" ":" "extensions_default["
|
||||
#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) || \
|
||||
defined(__TI_COMPILER_VERSION__)) && \
|
||||
!defined(__STRICT_ANSI__)
|
||||
"ON"
|
||||
#else
|
||||
"OFF"
|
||||
#endif
|
||||
"]";
|
||||
|
||||
/*--------------------------------------------------------------------------*/
|
||||
|
||||
#ifdef ID_VOID_MAIN
|
||||
void main() {}
|
||||
#else
|
||||
# if defined(__CLASSIC_C__)
|
||||
int main(argc, argv) int argc; char *argv[];
|
||||
# else
|
||||
int main(int argc, char* argv[])
|
||||
# endif
|
||||
{
|
||||
int require = 0;
|
||||
require += info_compiler[argc];
|
||||
require += info_platform[argc];
|
||||
require += info_arch[argc];
|
||||
#ifdef COMPILER_VERSION_MAJOR
|
||||
require += info_version[argc];
|
||||
#endif
|
||||
#ifdef COMPILER_VERSION_INTERNAL
|
||||
require += info_version_internal[argc];
|
||||
#endif
|
||||
#ifdef SIMULATE_ID
|
||||
require += info_simulate[argc];
|
||||
#endif
|
||||
#ifdef SIMULATE_VERSION_MAJOR
|
||||
require += info_simulate_version[argc];
|
||||
#endif
|
||||
#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
|
||||
require += info_cray[argc];
|
||||
#endif
|
||||
require += info_language_standard_default[argc];
|
||||
require += info_language_extensions_default[argc];
|
||||
(void)argv;
|
||||
return require;
|
||||
}
|
||||
#endif
|
||||
BIN
vendor/libssh2/build/CMakeFiles/3.28.3/CompilerIdC/a.out
vendored
Executable file
BIN
vendor/libssh2/build/CMakeFiles/3.28.3/CompilerIdC/a.out
vendored
Executable file
Binary file not shown.
1157
vendor/libssh2/build/CMakeFiles/CMakeConfigureLog.yaml
vendored
Normal file
1157
vendor/libssh2/build/CMakeFiles/CMakeConfigureLog.yaml
vendored
Normal file
File diff suppressed because it is too large
Load diff
16
vendor/libssh2/build/CMakeFiles/CMakeDirectoryInformation.cmake
vendored
Normal file
16
vendor/libssh2/build/CMakeFiles/CMakeDirectoryInformation.cmake
vendored
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
# CMAKE generated file: DO NOT EDIT!
|
||||
# Generated by "Unix Makefiles" Generator, CMake Version 3.28
|
||||
|
||||
# Relative path conversion top directories.
|
||||
set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/scott/claude/calog/vendor/libssh2")
|
||||
set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/scott/claude/calog/vendor/libssh2/build")
|
||||
|
||||
# Force unix paths in dependencies.
|
||||
set(CMAKE_FORCE_UNIX_PATHS 1)
|
||||
|
||||
|
||||
# The C and CXX include file regular expressions for this directory.
|
||||
set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
|
||||
set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
|
||||
set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
|
||||
set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
|
||||
154
vendor/libssh2/build/CMakeFiles/Makefile.cmake
vendored
Normal file
154
vendor/libssh2/build/CMakeFiles/Makefile.cmake
vendored
Normal file
|
|
@ -0,0 +1,154 @@
|
|||
# CMAKE generated file: DO NOT EDIT!
|
||||
# Generated by "Unix Makefiles" Generator, CMake Version 3.28
|
||||
|
||||
# The generator used is:
|
||||
set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles")
|
||||
|
||||
# The top level Makefile was generated from the following files:
|
||||
set(CMAKE_MAKEFILE_DEPENDS
|
||||
"CMakeCache.txt"
|
||||
"/home/scott/claude/calog/vendor/libssh2/CMakeLists.txt"
|
||||
"CMakeFiles/3.28.3/CMakeCCompiler.cmake"
|
||||
"CMakeFiles/3.28.3/CMakeSystem.cmake"
|
||||
"docs/Makefile.am.cmake"
|
||||
"src/Makefile.inc.cmake"
|
||||
"/home/scott/claude/calog/vendor/libssh2/cmake/CheckFunctionExistsMayNeedLibrary.cmake"
|
||||
"/home/scott/claude/calog/vendor/libssh2/cmake/CheckNonblockingSocketSupport.cmake"
|
||||
"/home/scott/claude/calog/vendor/libssh2/cmake/PickyWarnings.cmake"
|
||||
"/home/scott/claude/calog/vendor/libssh2/cmake/libssh2-config.cmake.in"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/CMakeLists.txt"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/Makefile.am"
|
||||
"/home/scott/claude/calog/vendor/libssh2/libssh2.pc.in"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/CMakeLists.txt"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/Makefile.inc"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/libssh2_config_cmake.h.in"
|
||||
"/usr/share/cmake-3.28/Modules/BasicConfigVersion-SameMajorVersion.cmake.in"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeCCompiler.cmake.in"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeCCompilerABI.c"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeCInformation.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeCheckCompilerFlagCommonPatterns.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeCommonLanguageInclude.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeCompilerIdDetection.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeDetermineCCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeDetermineCompileFeatures.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeDetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerABI.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeDetermineCompilerId.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeDetermineSystem.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeFindBinUtils.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeGenericSystem.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeInitializeConfigs.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeLanguageInformation.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakePackageConfigHelpers.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeParseImplicitIncludeInfo.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeParseImplicitLinkInfo.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeParseLibraryArchitecture.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakePushCheckState.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeSystem.cmake.in"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeSystemSpecificInformation.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeSystemSpecificInitialize.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeTestCCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeTestCompilerCommon.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CMakeUnixFindMake.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CPack.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CPackComponent.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CheckCCompilerFlag.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CheckCSourceCompiles.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CheckFunctionExists.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CheckIncludeFile.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CheckIncludeFiles.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CheckLibraryExists.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/CheckSymbolExists.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/ADSP-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/ARMCC-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/ARMClang-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/AppleClang-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/Borland-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/Bruce-C-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/CMakeCommonCompilerMacros.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/Clang-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/Clang-DetermineCompilerInternal.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/Compaq-C-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/Cray-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/CrayClang-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/Embarcadero-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/Fujitsu-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/FujitsuClang-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/GHS-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/GNU-C-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/GNU-C.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/GNU-FindBinUtils.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/GNU.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/HP-C-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/IAR-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/IBMCPP-C-DetermineVersionInternal.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/IBMClang-C-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/Intel-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/IntelLLVM-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/LCC-C-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/MSVC-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/NVHPC-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/NVIDIA-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/OpenWatcom-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/OrangeC-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/PGI-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/PathScale-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/SCO-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/SDCC-C-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/SunPro-C-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/TI-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/Tasking-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/TinyCC-C-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/VisualAge-C-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/Watcom-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/XL-C-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/XLClang-C-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Compiler/zOS-C-DetermineCompiler.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/FeatureSummary.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/FindOpenSSL.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/FindPackageHandleStandardArgs.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/FindPackageMessage.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/FindPkgConfig.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/FindThreads.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/FindZLIB.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/GNUInstallDirs.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Internal/CheckCompilerFlag.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Internal/CheckFlagCommonConfig.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Internal/CheckSourceCompiles.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Internal/FeatureTesting.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Platform/Linux-GNU-C.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Platform/Linux-GNU.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Platform/Linux-Initialize.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Platform/Linux.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/Platform/UnixPaths.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/SelectLibraryConfigurations.cmake"
|
||||
"/usr/share/cmake-3.28/Modules/WriteBasicConfigVersionFile.cmake"
|
||||
"/usr/share/cmake-3.28/Templates/CPackConfig.cmake.in"
|
||||
)
|
||||
|
||||
# The corresponding makefile is:
|
||||
set(CMAKE_MAKEFILE_OUTPUTS
|
||||
"Makefile"
|
||||
"CMakeFiles/cmake.check_cache"
|
||||
)
|
||||
|
||||
# Byproducts of CMake generate step:
|
||||
set(CMAKE_MAKEFILE_PRODUCTS
|
||||
"CMakeFiles/3.28.3/CMakeSystem.cmake"
|
||||
"CMakeFiles/3.28.3/CMakeCCompiler.cmake"
|
||||
"CMakeFiles/3.28.3/CMakeCCompiler.cmake"
|
||||
"src/libssh2_config.h"
|
||||
"CPackConfig.cmake"
|
||||
"CPackSourceConfig.cmake"
|
||||
"CMakeFiles/CMakeDirectoryInformation.cmake"
|
||||
"src/libssh2-config.cmake"
|
||||
"src/libssh2.pc"
|
||||
"src/libssh2-config-version.cmake"
|
||||
"src/CMakeFiles/CMakeDirectoryInformation.cmake"
|
||||
"docs/CMakeFiles/CMakeDirectoryInformation.cmake"
|
||||
)
|
||||
|
||||
# Dependency information for all targets:
|
||||
set(CMAKE_DEPEND_INFO_FILES
|
||||
"src/CMakeFiles/libssh2_static.dir/DependInfo.cmake"
|
||||
)
|
||||
145
vendor/libssh2/build/CMakeFiles/Makefile2
vendored
Normal file
145
vendor/libssh2/build/CMakeFiles/Makefile2
vendored
Normal file
|
|
@ -0,0 +1,145 @@
|
|||
# CMAKE generated file: DO NOT EDIT!
|
||||
# Generated by "Unix Makefiles" Generator, CMake Version 3.28
|
||||
|
||||
# Default target executed when no arguments are given to make.
|
||||
default_target: all
|
||||
.PHONY : default_target
|
||||
|
||||
#=============================================================================
|
||||
# Special targets provided by cmake.
|
||||
|
||||
# Disable implicit rules so canonical targets will work.
|
||||
.SUFFIXES:
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : %,v
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : RCS/%
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : RCS/%,v
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : SCCS/s.%
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : s.%
|
||||
|
||||
.SUFFIXES: .hpux_make_needs_suffix_list
|
||||
|
||||
# Command-line flag to silence nested $(MAKE).
|
||||
$(VERBOSE)MAKESILENT = -s
|
||||
|
||||
#Suppress display of executed commands.
|
||||
$(VERBOSE).SILENT:
|
||||
|
||||
# A target that is always out of date.
|
||||
cmake_force:
|
||||
.PHONY : cmake_force
|
||||
|
||||
#=============================================================================
|
||||
# Set environment variables for the build.
|
||||
|
||||
# The shell in which to execute make rules.
|
||||
SHELL = /bin/sh
|
||||
|
||||
# The CMake executable.
|
||||
CMAKE_COMMAND = /usr/bin/cmake
|
||||
|
||||
# The command to remove a file.
|
||||
RM = /usr/bin/cmake -E rm -f
|
||||
|
||||
# Escaping for special characters.
|
||||
EQUALS = =
|
||||
|
||||
# The top-level source directory on which CMake was run.
|
||||
CMAKE_SOURCE_DIR = /home/scott/claude/calog/vendor/libssh2
|
||||
|
||||
# The top-level build directory on which CMake was run.
|
||||
CMAKE_BINARY_DIR = /home/scott/claude/calog/vendor/libssh2/build
|
||||
|
||||
#=============================================================================
|
||||
# Directory level rules for the build root directory
|
||||
|
||||
# The main recursive "all" target.
|
||||
all: src/all
|
||||
all: docs/all
|
||||
.PHONY : all
|
||||
|
||||
# The main recursive "preinstall" target.
|
||||
preinstall: src/preinstall
|
||||
preinstall: docs/preinstall
|
||||
.PHONY : preinstall
|
||||
|
||||
# The main recursive "clean" target.
|
||||
clean: src/clean
|
||||
clean: docs/clean
|
||||
.PHONY : clean
|
||||
|
||||
#=============================================================================
|
||||
# Directory level rules for directory docs
|
||||
|
||||
# Recursive "all" directory target.
|
||||
docs/all:
|
||||
.PHONY : docs/all
|
||||
|
||||
# Recursive "preinstall" directory target.
|
||||
docs/preinstall:
|
||||
.PHONY : docs/preinstall
|
||||
|
||||
# Recursive "clean" directory target.
|
||||
docs/clean:
|
||||
.PHONY : docs/clean
|
||||
|
||||
#=============================================================================
|
||||
# Directory level rules for directory src
|
||||
|
||||
# Recursive "all" directory target.
|
||||
src/all: src/CMakeFiles/libssh2_static.dir/all
|
||||
.PHONY : src/all
|
||||
|
||||
# Recursive "preinstall" directory target.
|
||||
src/preinstall:
|
||||
.PHONY : src/preinstall
|
||||
|
||||
# Recursive "clean" directory target.
|
||||
src/clean: src/CMakeFiles/libssh2_static.dir/clean
|
||||
.PHONY : src/clean
|
||||
|
||||
#=============================================================================
|
||||
# Target rules for target src/CMakeFiles/libssh2_static.dir
|
||||
|
||||
# All Build rule for target.
|
||||
src/CMakeFiles/libssh2_static.dir/all:
|
||||
$(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/depend
|
||||
$(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/build
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27 "Built target libssh2_static"
|
||||
.PHONY : src/CMakeFiles/libssh2_static.dir/all
|
||||
|
||||
# Build rule for subdir invocation for target.
|
||||
src/CMakeFiles/libssh2_static.dir/rule: cmake_check_build_system
|
||||
$(CMAKE_COMMAND) -E cmake_progress_start /home/scott/claude/calog/vendor/libssh2/build/CMakeFiles 27
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 src/CMakeFiles/libssh2_static.dir/all
|
||||
$(CMAKE_COMMAND) -E cmake_progress_start /home/scott/claude/calog/vendor/libssh2/build/CMakeFiles 0
|
||||
.PHONY : src/CMakeFiles/libssh2_static.dir/rule
|
||||
|
||||
# Convenience name for target.
|
||||
libssh2_static: src/CMakeFiles/libssh2_static.dir/rule
|
||||
.PHONY : libssh2_static
|
||||
|
||||
# clean rule for target.
|
||||
src/CMakeFiles/libssh2_static.dir/clean:
|
||||
$(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/clean
|
||||
.PHONY : src/CMakeFiles/libssh2_static.dir/clean
|
||||
|
||||
#=============================================================================
|
||||
# Special targets to cleanup operation of make.
|
||||
|
||||
# Special rule to run CMake to check the build system integrity.
|
||||
# No rule that depends on this can have commands that come from listfiles
|
||||
# because they might be regenerated.
|
||||
cmake_check_build_system:
|
||||
$(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
|
||||
.PHONY : cmake_check_build_system
|
||||
|
||||
25
vendor/libssh2/build/CMakeFiles/TargetDirectories.txt
vendored
Normal file
25
vendor/libssh2/build/CMakeFiles/TargetDirectories.txt
vendored
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles/package.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles/package_source.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles/edit_cache.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles/rebuild_cache.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles/list_install_components.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles/install.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles/install/local.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles/install/strip.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/src/CMakeFiles/package.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/src/CMakeFiles/package_source.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/src/CMakeFiles/edit_cache.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/src/CMakeFiles/rebuild_cache.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/src/CMakeFiles/list_install_components.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/src/CMakeFiles/install.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/src/CMakeFiles/install/local.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/src/CMakeFiles/install/strip.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/docs/CMakeFiles/package.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/docs/CMakeFiles/package_source.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/docs/CMakeFiles/edit_cache.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/docs/CMakeFiles/rebuild_cache.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/docs/CMakeFiles/list_install_components.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/docs/CMakeFiles/install.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/docs/CMakeFiles/install/local.dir
|
||||
/home/scott/claude/calog/vendor/libssh2/build/docs/CMakeFiles/install/strip.dir
|
||||
1
vendor/libssh2/build/CMakeFiles/cmake.check_cache
vendored
Normal file
1
vendor/libssh2/build/CMakeFiles/cmake.check_cache
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
# This file is generated by cmake for dependency checking of the CMakeCache.txt file
|
||||
1
vendor/libssh2/build/CMakeFiles/progress.marks
vendored
Normal file
1
vendor/libssh2/build/CMakeFiles/progress.marks
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
27
|
||||
80
vendor/libssh2/build/CPackConfig.cmake
vendored
Normal file
80
vendor/libssh2/build/CPackConfig.cmake
vendored
Normal file
|
|
@ -0,0 +1,80 @@
|
|||
# This file will be configured to contain variables for CPack. These variables
|
||||
# should be set in the CMake list file of the project before CPack module is
|
||||
# included. The list of available CPACK_xxx variables and their associated
|
||||
# documentation may be obtained using
|
||||
# cpack --help-variable-list
|
||||
#
|
||||
# Some variables are common to all generators (e.g. CPACK_PACKAGE_NAME)
|
||||
# and some are specific to a generator
|
||||
# (e.g. CPACK_NSIS_EXTRA_INSTALL_COMMANDS). The generator specific variables
|
||||
# usually begin with CPACK_<GENNAME>_xxxx.
|
||||
|
||||
|
||||
set(CPACK_BINARY_DEB "OFF")
|
||||
set(CPACK_BINARY_FREEBSD "OFF")
|
||||
set(CPACK_BINARY_IFW "OFF")
|
||||
set(CPACK_BINARY_NSIS "OFF")
|
||||
set(CPACK_BINARY_RPM "OFF")
|
||||
set(CPACK_BINARY_STGZ "ON")
|
||||
set(CPACK_BINARY_TBZ2 "OFF")
|
||||
set(CPACK_BINARY_TGZ "ON")
|
||||
set(CPACK_BINARY_TXZ "OFF")
|
||||
set(CPACK_BINARY_TZ "ON")
|
||||
set(CPACK_BUILD_SOURCE_DIRS "/home/scott/claude/calog/vendor/libssh2;/home/scott/claude/calog/vendor/libssh2/build")
|
||||
set(CPACK_CMAKE_GENERATOR "Unix Makefiles")
|
||||
set(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE")
|
||||
set(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE")
|
||||
set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_FILE "/usr/share/cmake-3.28/Templates/CPack.GenericDescription.txt")
|
||||
set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_SUMMARY "libssh2 built using CMake")
|
||||
set(CPACK_GENERATOR "STGZ;TGZ;TZ")
|
||||
set(CPACK_INNOSETUP_ARCHITECTURE "x64")
|
||||
set(CPACK_INSTALL_CMAKE_PROJECTS "/home/scott/claude/calog/vendor/libssh2/build;libssh2;ALL;/")
|
||||
set(CPACK_INSTALL_PREFIX "/usr/local")
|
||||
set(CPACK_MODULE_PATH "/home/scott/claude/calog/vendor/libssh2/cmake")
|
||||
set(CPACK_NSIS_DISPLAY_NAME "libssh2 1.11.1")
|
||||
set(CPACK_NSIS_INSTALLER_ICON_CODE "")
|
||||
set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "")
|
||||
set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES")
|
||||
set(CPACK_NSIS_PACKAGE_NAME "libssh2 1.11.1")
|
||||
set(CPACK_NSIS_UNINSTALL_NAME "Uninstall")
|
||||
set(CPACK_OBJCOPY_EXECUTABLE "/usr/bin/objcopy")
|
||||
set(CPACK_OBJDUMP_EXECUTABLE "/usr/bin/objdump")
|
||||
set(CPACK_OUTPUT_CONFIG_FILE "/home/scott/claude/calog/vendor/libssh2/build/CPackConfig.cmake")
|
||||
set(CPACK_PACKAGE_DEFAULT_LOCATION "/")
|
||||
set(CPACK_PACKAGE_DESCRIPTION_FILE "/usr/share/cmake-3.28/Templates/CPack.GenericDescription.txt")
|
||||
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "libssh2 built using CMake")
|
||||
set(CPACK_PACKAGE_FILE_NAME "libssh2-1.11.1-Linux")
|
||||
set(CPACK_PACKAGE_INSTALL_DIRECTORY "libssh2 1.11.1")
|
||||
set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "libssh2 1.11.1")
|
||||
set(CPACK_PACKAGE_NAME "libssh2")
|
||||
set(CPACK_PACKAGE_RELOCATABLE "true")
|
||||
set(CPACK_PACKAGE_VENDOR "Humanity")
|
||||
set(CPACK_PACKAGE_VERSION "1.11.1")
|
||||
set(CPACK_PACKAGE_VERSION_MAJOR "1")
|
||||
set(CPACK_PACKAGE_VERSION_MINOR "11")
|
||||
set(CPACK_PACKAGE_VERSION_PATCH "1")
|
||||
set(CPACK_READELF_EXECUTABLE "/usr/bin/readelf")
|
||||
set(CPACK_RESOURCE_FILE_LICENSE "/usr/share/cmake-3.28/Templates/CPack.GenericLicense.txt")
|
||||
set(CPACK_RESOURCE_FILE_README "/usr/share/cmake-3.28/Templates/CPack.GenericDescription.txt")
|
||||
set(CPACK_RESOURCE_FILE_WELCOME "/usr/share/cmake-3.28/Templates/CPack.GenericWelcome.txt")
|
||||
set(CPACK_SET_DESTDIR "OFF")
|
||||
set(CPACK_SOURCE_GENERATOR "TBZ2;TGZ;TXZ;TZ")
|
||||
set(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/home/scott/claude/calog/vendor/libssh2/build/CPackSourceConfig.cmake")
|
||||
set(CPACK_SOURCE_RPM "OFF")
|
||||
set(CPACK_SOURCE_TBZ2 "ON")
|
||||
set(CPACK_SOURCE_TGZ "ON")
|
||||
set(CPACK_SOURCE_TXZ "ON")
|
||||
set(CPACK_SOURCE_TZ "ON")
|
||||
set(CPACK_SOURCE_ZIP "OFF")
|
||||
set(CPACK_SYSTEM_NAME "Linux")
|
||||
set(CPACK_THREADS "1")
|
||||
set(CPACK_TOPLEVEL_TAG "Linux")
|
||||
set(CPACK_WIX_SIZEOF_VOID_P "8")
|
||||
|
||||
if(NOT CPACK_PROPERTIES_FILE)
|
||||
set(CPACK_PROPERTIES_FILE "/home/scott/claude/calog/vendor/libssh2/build/CPackProperties.cmake")
|
||||
endif()
|
||||
|
||||
if(EXISTS ${CPACK_PROPERTIES_FILE})
|
||||
include(${CPACK_PROPERTIES_FILE})
|
||||
endif()
|
||||
88
vendor/libssh2/build/CPackSourceConfig.cmake
vendored
Normal file
88
vendor/libssh2/build/CPackSourceConfig.cmake
vendored
Normal file
|
|
@ -0,0 +1,88 @@
|
|||
# This file will be configured to contain variables for CPack. These variables
|
||||
# should be set in the CMake list file of the project before CPack module is
|
||||
# included. The list of available CPACK_xxx variables and their associated
|
||||
# documentation may be obtained using
|
||||
# cpack --help-variable-list
|
||||
#
|
||||
# Some variables are common to all generators (e.g. CPACK_PACKAGE_NAME)
|
||||
# and some are specific to a generator
|
||||
# (e.g. CPACK_NSIS_EXTRA_INSTALL_COMMANDS). The generator specific variables
|
||||
# usually begin with CPACK_<GENNAME>_xxxx.
|
||||
|
||||
|
||||
set(CPACK_BINARY_DEB "OFF")
|
||||
set(CPACK_BINARY_FREEBSD "OFF")
|
||||
set(CPACK_BINARY_IFW "OFF")
|
||||
set(CPACK_BINARY_NSIS "OFF")
|
||||
set(CPACK_BINARY_RPM "OFF")
|
||||
set(CPACK_BINARY_STGZ "ON")
|
||||
set(CPACK_BINARY_TBZ2 "OFF")
|
||||
set(CPACK_BINARY_TGZ "ON")
|
||||
set(CPACK_BINARY_TXZ "OFF")
|
||||
set(CPACK_BINARY_TZ "ON")
|
||||
set(CPACK_BUILD_SOURCE_DIRS "/home/scott/claude/calog/vendor/libssh2;/home/scott/claude/calog/vendor/libssh2/build")
|
||||
set(CPACK_CMAKE_GENERATOR "Unix Makefiles")
|
||||
set(CPACK_COMPONENT_UNSPECIFIED_HIDDEN "TRUE")
|
||||
set(CPACK_COMPONENT_UNSPECIFIED_REQUIRED "TRUE")
|
||||
set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_FILE "/usr/share/cmake-3.28/Templates/CPack.GenericDescription.txt")
|
||||
set(CPACK_DEFAULT_PACKAGE_DESCRIPTION_SUMMARY "libssh2 built using CMake")
|
||||
set(CPACK_GENERATOR "TBZ2;TGZ;TXZ;TZ")
|
||||
set(CPACK_IGNORE_FILES "/CVS/;/\\.svn/;/\\.bzr/;/\\.hg/;/\\.git/;\\.swp\$;\\.#;/#")
|
||||
set(CPACK_INNOSETUP_ARCHITECTURE "x64")
|
||||
set(CPACK_INSTALLED_DIRECTORIES "/home/scott/claude/calog/vendor/libssh2;/")
|
||||
set(CPACK_INSTALL_CMAKE_PROJECTS "")
|
||||
set(CPACK_INSTALL_PREFIX "/usr/local")
|
||||
set(CPACK_MODULE_PATH "/home/scott/claude/calog/vendor/libssh2/cmake")
|
||||
set(CPACK_NSIS_DISPLAY_NAME "libssh2 1.11.1")
|
||||
set(CPACK_NSIS_INSTALLER_ICON_CODE "")
|
||||
set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "")
|
||||
set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES")
|
||||
set(CPACK_NSIS_PACKAGE_NAME "libssh2 1.11.1")
|
||||
set(CPACK_NSIS_UNINSTALL_NAME "Uninstall")
|
||||
set(CPACK_OBJCOPY_EXECUTABLE "/usr/bin/objcopy")
|
||||
set(CPACK_OBJDUMP_EXECUTABLE "/usr/bin/objdump")
|
||||
set(CPACK_OUTPUT_CONFIG_FILE "/home/scott/claude/calog/vendor/libssh2/build/CPackConfig.cmake")
|
||||
set(CPACK_PACKAGE_DEFAULT_LOCATION "/")
|
||||
set(CPACK_PACKAGE_DESCRIPTION_FILE "/usr/share/cmake-3.28/Templates/CPack.GenericDescription.txt")
|
||||
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "libssh2 built using CMake")
|
||||
set(CPACK_PACKAGE_FILE_NAME "libssh2-1.11.1-Source")
|
||||
set(CPACK_PACKAGE_INSTALL_DIRECTORY "libssh2 1.11.1")
|
||||
set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "libssh2 1.11.1")
|
||||
set(CPACK_PACKAGE_NAME "libssh2")
|
||||
set(CPACK_PACKAGE_RELOCATABLE "true")
|
||||
set(CPACK_PACKAGE_VENDOR "Humanity")
|
||||
set(CPACK_PACKAGE_VERSION "1.11.1")
|
||||
set(CPACK_PACKAGE_VERSION_MAJOR "1")
|
||||
set(CPACK_PACKAGE_VERSION_MINOR "11")
|
||||
set(CPACK_PACKAGE_VERSION_PATCH "1")
|
||||
set(CPACK_READELF_EXECUTABLE "/usr/bin/readelf")
|
||||
set(CPACK_RESOURCE_FILE_LICENSE "/usr/share/cmake-3.28/Templates/CPack.GenericLicense.txt")
|
||||
set(CPACK_RESOURCE_FILE_README "/usr/share/cmake-3.28/Templates/CPack.GenericDescription.txt")
|
||||
set(CPACK_RESOURCE_FILE_WELCOME "/usr/share/cmake-3.28/Templates/CPack.GenericWelcome.txt")
|
||||
set(CPACK_RPM_PACKAGE_SOURCES "ON")
|
||||
set(CPACK_SET_DESTDIR "OFF")
|
||||
set(CPACK_SOURCE_GENERATOR "TBZ2;TGZ;TXZ;TZ")
|
||||
set(CPACK_SOURCE_IGNORE_FILES "/CVS/;/\\.svn/;/\\.bzr/;/\\.hg/;/\\.git/;\\.swp\$;\\.#;/#")
|
||||
set(CPACK_SOURCE_INSTALLED_DIRECTORIES "/home/scott/claude/calog/vendor/libssh2;/")
|
||||
set(CPACK_SOURCE_OUTPUT_CONFIG_FILE "/home/scott/claude/calog/vendor/libssh2/build/CPackSourceConfig.cmake")
|
||||
set(CPACK_SOURCE_PACKAGE_FILE_NAME "libssh2-1.11.1-Source")
|
||||
set(CPACK_SOURCE_RPM "OFF")
|
||||
set(CPACK_SOURCE_TBZ2 "ON")
|
||||
set(CPACK_SOURCE_TGZ "ON")
|
||||
set(CPACK_SOURCE_TOPLEVEL_TAG "Linux-Source")
|
||||
set(CPACK_SOURCE_TXZ "ON")
|
||||
set(CPACK_SOURCE_TZ "ON")
|
||||
set(CPACK_SOURCE_ZIP "OFF")
|
||||
set(CPACK_STRIP_FILES "")
|
||||
set(CPACK_SYSTEM_NAME "Linux")
|
||||
set(CPACK_THREADS "1")
|
||||
set(CPACK_TOPLEVEL_TAG "Linux-Source")
|
||||
set(CPACK_WIX_SIZEOF_VOID_P "8")
|
||||
|
||||
if(NOT CPACK_PROPERTIES_FILE)
|
||||
set(CPACK_PROPERTIES_FILE "/home/scott/claude/calog/vendor/libssh2/build/CPackProperties.cmake")
|
||||
endif()
|
||||
|
||||
if(EXISTS ${CPACK_PROPERTIES_FILE})
|
||||
include(${CPACK_PROPERTIES_FILE})
|
||||
endif()
|
||||
225
vendor/libssh2/build/Makefile
vendored
Normal file
225
vendor/libssh2/build/Makefile
vendored
Normal file
|
|
@ -0,0 +1,225 @@
|
|||
# CMAKE generated file: DO NOT EDIT!
|
||||
# Generated by "Unix Makefiles" Generator, CMake Version 3.28
|
||||
|
||||
# Default target executed when no arguments are given to make.
|
||||
default_target: all
|
||||
.PHONY : default_target
|
||||
|
||||
# Allow only one "make -f Makefile2" at a time, but pass parallelism.
|
||||
.NOTPARALLEL:
|
||||
|
||||
#=============================================================================
|
||||
# Special targets provided by cmake.
|
||||
|
||||
# Disable implicit rules so canonical targets will work.
|
||||
.SUFFIXES:
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : %,v
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : RCS/%
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : RCS/%,v
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : SCCS/s.%
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : s.%
|
||||
|
||||
.SUFFIXES: .hpux_make_needs_suffix_list
|
||||
|
||||
# Command-line flag to silence nested $(MAKE).
|
||||
$(VERBOSE)MAKESILENT = -s
|
||||
|
||||
#Suppress display of executed commands.
|
||||
$(VERBOSE).SILENT:
|
||||
|
||||
# A target that is always out of date.
|
||||
cmake_force:
|
||||
.PHONY : cmake_force
|
||||
|
||||
#=============================================================================
|
||||
# Set environment variables for the build.
|
||||
|
||||
# The shell in which to execute make rules.
|
||||
SHELL = /bin/sh
|
||||
|
||||
# The CMake executable.
|
||||
CMAKE_COMMAND = /usr/bin/cmake
|
||||
|
||||
# The command to remove a file.
|
||||
RM = /usr/bin/cmake -E rm -f
|
||||
|
||||
# Escaping for special characters.
|
||||
EQUALS = =
|
||||
|
||||
# The top-level source directory on which CMake was run.
|
||||
CMAKE_SOURCE_DIR = /home/scott/claude/calog/vendor/libssh2
|
||||
|
||||
# The top-level build directory on which CMake was run.
|
||||
CMAKE_BINARY_DIR = /home/scott/claude/calog/vendor/libssh2/build
|
||||
|
||||
#=============================================================================
|
||||
# Targets provided globally by CMake.
|
||||
|
||||
# Special rule for the target package
|
||||
package: preinstall
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Run CPack packaging tool..."
|
||||
/usr/bin/cpack --config ./CPackConfig.cmake
|
||||
.PHONY : package
|
||||
|
||||
# Special rule for the target package
|
||||
package/fast: package
|
||||
.PHONY : package/fast
|
||||
|
||||
# Special rule for the target package_source
|
||||
package_source:
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Run CPack packaging tool for source..."
|
||||
/usr/bin/cpack --config ./CPackSourceConfig.cmake /home/scott/claude/calog/vendor/libssh2/build/CPackSourceConfig.cmake
|
||||
.PHONY : package_source
|
||||
|
||||
# Special rule for the target package_source
|
||||
package_source/fast: package_source
|
||||
.PHONY : package_source/fast
|
||||
|
||||
# Special rule for the target edit_cache
|
||||
edit_cache:
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running CMake cache editor..."
|
||||
/usr/bin/ccmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
|
||||
.PHONY : edit_cache
|
||||
|
||||
# Special rule for the target edit_cache
|
||||
edit_cache/fast: edit_cache
|
||||
.PHONY : edit_cache/fast
|
||||
|
||||
# Special rule for the target rebuild_cache
|
||||
rebuild_cache:
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running CMake to regenerate build system..."
|
||||
/usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
|
||||
.PHONY : rebuild_cache
|
||||
|
||||
# Special rule for the target rebuild_cache
|
||||
rebuild_cache/fast: rebuild_cache
|
||||
.PHONY : rebuild_cache/fast
|
||||
|
||||
# Special rule for the target list_install_components
|
||||
list_install_components:
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Available install components are: \"Unspecified\""
|
||||
.PHONY : list_install_components
|
||||
|
||||
# Special rule for the target list_install_components
|
||||
list_install_components/fast: list_install_components
|
||||
.PHONY : list_install_components/fast
|
||||
|
||||
# Special rule for the target install
|
||||
install: preinstall
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Install the project..."
|
||||
/usr/bin/cmake -P cmake_install.cmake
|
||||
.PHONY : install
|
||||
|
||||
# Special rule for the target install
|
||||
install/fast: preinstall/fast
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Install the project..."
|
||||
/usr/bin/cmake -P cmake_install.cmake
|
||||
.PHONY : install/fast
|
||||
|
||||
# Special rule for the target install/local
|
||||
install/local: preinstall
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing only the local directory..."
|
||||
/usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
|
||||
.PHONY : install/local
|
||||
|
||||
# Special rule for the target install/local
|
||||
install/local/fast: preinstall/fast
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing only the local directory..."
|
||||
/usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
|
||||
.PHONY : install/local/fast
|
||||
|
||||
# Special rule for the target install/strip
|
||||
install/strip: preinstall
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing the project stripped..."
|
||||
/usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
|
||||
.PHONY : install/strip
|
||||
|
||||
# Special rule for the target install/strip
|
||||
install/strip/fast: preinstall/fast
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing the project stripped..."
|
||||
/usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
|
||||
.PHONY : install/strip/fast
|
||||
|
||||
# The main all target
|
||||
all: cmake_check_build_system
|
||||
$(CMAKE_COMMAND) -E cmake_progress_start /home/scott/claude/calog/vendor/libssh2/build/CMakeFiles /home/scott/claude/calog/vendor/libssh2/build//CMakeFiles/progress.marks
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 all
|
||||
$(CMAKE_COMMAND) -E cmake_progress_start /home/scott/claude/calog/vendor/libssh2/build/CMakeFiles 0
|
||||
.PHONY : all
|
||||
|
||||
# The main clean target
|
||||
clean:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 clean
|
||||
.PHONY : clean
|
||||
|
||||
# The main clean target
|
||||
clean/fast: clean
|
||||
.PHONY : clean/fast
|
||||
|
||||
# Prepare targets for installation.
|
||||
preinstall: all
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall
|
||||
.PHONY : preinstall
|
||||
|
||||
# Prepare targets for installation.
|
||||
preinstall/fast:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall
|
||||
.PHONY : preinstall/fast
|
||||
|
||||
# clear depends
|
||||
depend:
|
||||
$(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
|
||||
.PHONY : depend
|
||||
|
||||
#=============================================================================
|
||||
# Target rules for targets named libssh2_static
|
||||
|
||||
# Build rule for target.
|
||||
libssh2_static: cmake_check_build_system
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 libssh2_static
|
||||
.PHONY : libssh2_static
|
||||
|
||||
# fast build rule for target.
|
||||
libssh2_static/fast:
|
||||
$(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/build
|
||||
.PHONY : libssh2_static/fast
|
||||
|
||||
# Help Target
|
||||
help:
|
||||
@echo "The following are some of the valid targets for this Makefile:"
|
||||
@echo "... all (the default if no target is provided)"
|
||||
@echo "... clean"
|
||||
@echo "... depend"
|
||||
@echo "... edit_cache"
|
||||
@echo "... install"
|
||||
@echo "... install/local"
|
||||
@echo "... install/strip"
|
||||
@echo "... list_install_components"
|
||||
@echo "... package"
|
||||
@echo "... package_source"
|
||||
@echo "... rebuild_cache"
|
||||
@echo "... libssh2_static"
|
||||
.PHONY : help
|
||||
|
||||
|
||||
|
||||
#=============================================================================
|
||||
# Special targets to cleanup operation of make.
|
||||
|
||||
# Special rule to run CMake to check the build system integrity.
|
||||
# No rule that depends on this can have commands that come from listfiles
|
||||
# because they might be regenerated.
|
||||
cmake_check_build_system:
|
||||
$(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
|
||||
.PHONY : cmake_check_build_system
|
||||
|
||||
73
vendor/libssh2/build/cmake_install.cmake
vendored
Normal file
73
vendor/libssh2/build/cmake_install.cmake
vendored
Normal file
|
|
@ -0,0 +1,73 @@
|
|||
# Install script for directory: /home/scott/claude/calog/vendor/libssh2
|
||||
|
||||
# Set the install prefix
|
||||
if(NOT DEFINED CMAKE_INSTALL_PREFIX)
|
||||
set(CMAKE_INSTALL_PREFIX "/usr/local")
|
||||
endif()
|
||||
string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
|
||||
|
||||
# Set the install configuration name.
|
||||
if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
|
||||
if(BUILD_TYPE)
|
||||
string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
|
||||
CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
|
||||
else()
|
||||
set(CMAKE_INSTALL_CONFIG_NAME "Release")
|
||||
endif()
|
||||
message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
|
||||
endif()
|
||||
|
||||
# Set the component getting installed.
|
||||
if(NOT CMAKE_INSTALL_COMPONENT)
|
||||
if(COMPONENT)
|
||||
message(STATUS "Install component: \"${COMPONENT}\"")
|
||||
set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
|
||||
else()
|
||||
set(CMAKE_INSTALL_COMPONENT)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Install shared libraries without execute permission?
|
||||
if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
|
||||
set(CMAKE_INSTALL_SO_NO_EXE "1")
|
||||
endif()
|
||||
|
||||
# Is this installation the result of a crosscompile?
|
||||
if(NOT DEFINED CMAKE_CROSSCOMPILING)
|
||||
set(CMAKE_CROSSCOMPILING "FALSE")
|
||||
endif()
|
||||
|
||||
# Set default install directory permissions.
|
||||
if(NOT DEFINED CMAKE_OBJDUMP)
|
||||
set(CMAKE_OBJDUMP "/usr/bin/objdump")
|
||||
endif()
|
||||
|
||||
if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT)
|
||||
file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/share/doc/libssh2" TYPE FILE FILES
|
||||
"/home/scott/claude/calog/vendor/libssh2/COPYING"
|
||||
"/home/scott/claude/calog/vendor/libssh2/NEWS"
|
||||
"/home/scott/claude/calog/vendor/libssh2/README"
|
||||
"/home/scott/claude/calog/vendor/libssh2/RELEASE-NOTES"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/AUTHORS"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/BINDINGS.md"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/HACKING.md"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(NOT CMAKE_INSTALL_LOCAL_ONLY)
|
||||
# Include the install script for each subdirectory.
|
||||
include("/home/scott/claude/calog/vendor/libssh2/build/src/cmake_install.cmake")
|
||||
include("/home/scott/claude/calog/vendor/libssh2/build/docs/cmake_install.cmake")
|
||||
|
||||
endif()
|
||||
|
||||
if(CMAKE_INSTALL_COMPONENT)
|
||||
set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
|
||||
else()
|
||||
set(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
|
||||
endif()
|
||||
|
||||
string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT
|
||||
"${CMAKE_INSTALL_MANIFEST_FILES}")
|
||||
file(WRITE "/home/scott/claude/calog/vendor/libssh2/build/${CMAKE_INSTALL_MANIFEST}"
|
||||
"${CMAKE_INSTALL_MANIFEST_CONTENT}")
|
||||
16
vendor/libssh2/build/docs/CMakeFiles/CMakeDirectoryInformation.cmake
vendored
Normal file
16
vendor/libssh2/build/docs/CMakeFiles/CMakeDirectoryInformation.cmake
vendored
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
# CMAKE generated file: DO NOT EDIT!
|
||||
# Generated by "Unix Makefiles" Generator, CMake Version 3.28
|
||||
|
||||
# Relative path conversion top directories.
|
||||
set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/scott/claude/calog/vendor/libssh2")
|
||||
set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/scott/claude/calog/vendor/libssh2/build")
|
||||
|
||||
# Force unix paths in dependencies.
|
||||
set(CMAKE_FORCE_UNIX_PATHS 1)
|
||||
|
||||
|
||||
# The C and CXX include file regular expressions for this directory.
|
||||
set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
|
||||
set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
|
||||
set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
|
||||
set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
|
||||
1
vendor/libssh2/build/docs/CMakeFiles/progress.marks
vendored
Normal file
1
vendor/libssh2/build/docs/CMakeFiles/progress.marks
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
0
|
||||
211
vendor/libssh2/build/docs/Makefile
vendored
Normal file
211
vendor/libssh2/build/docs/Makefile
vendored
Normal file
|
|
@ -0,0 +1,211 @@
|
|||
# CMAKE generated file: DO NOT EDIT!
|
||||
# Generated by "Unix Makefiles" Generator, CMake Version 3.28
|
||||
|
||||
# Default target executed when no arguments are given to make.
|
||||
default_target: all
|
||||
.PHONY : default_target
|
||||
|
||||
# Allow only one "make -f Makefile2" at a time, but pass parallelism.
|
||||
.NOTPARALLEL:
|
||||
|
||||
#=============================================================================
|
||||
# Special targets provided by cmake.
|
||||
|
||||
# Disable implicit rules so canonical targets will work.
|
||||
.SUFFIXES:
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : %,v
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : RCS/%
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : RCS/%,v
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : SCCS/s.%
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : s.%
|
||||
|
||||
.SUFFIXES: .hpux_make_needs_suffix_list
|
||||
|
||||
# Command-line flag to silence nested $(MAKE).
|
||||
$(VERBOSE)MAKESILENT = -s
|
||||
|
||||
#Suppress display of executed commands.
|
||||
$(VERBOSE).SILENT:
|
||||
|
||||
# A target that is always out of date.
|
||||
cmake_force:
|
||||
.PHONY : cmake_force
|
||||
|
||||
#=============================================================================
|
||||
# Set environment variables for the build.
|
||||
|
||||
# The shell in which to execute make rules.
|
||||
SHELL = /bin/sh
|
||||
|
||||
# The CMake executable.
|
||||
CMAKE_COMMAND = /usr/bin/cmake
|
||||
|
||||
# The command to remove a file.
|
||||
RM = /usr/bin/cmake -E rm -f
|
||||
|
||||
# Escaping for special characters.
|
||||
EQUALS = =
|
||||
|
||||
# The top-level source directory on which CMake was run.
|
||||
CMAKE_SOURCE_DIR = /home/scott/claude/calog/vendor/libssh2
|
||||
|
||||
# The top-level build directory on which CMake was run.
|
||||
CMAKE_BINARY_DIR = /home/scott/claude/calog/vendor/libssh2/build
|
||||
|
||||
#=============================================================================
|
||||
# Targets provided globally by CMake.
|
||||
|
||||
# Special rule for the target package
|
||||
package: preinstall
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Run CPack packaging tool..."
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && /usr/bin/cpack --config ./CPackConfig.cmake
|
||||
.PHONY : package
|
||||
|
||||
# Special rule for the target package
|
||||
package/fast: package
|
||||
.PHONY : package/fast
|
||||
|
||||
# Special rule for the target package_source
|
||||
package_source:
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Run CPack packaging tool for source..."
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && /usr/bin/cpack --config ./CPackSourceConfig.cmake /home/scott/claude/calog/vendor/libssh2/build/CPackSourceConfig.cmake
|
||||
.PHONY : package_source
|
||||
|
||||
# Special rule for the target package_source
|
||||
package_source/fast: package_source
|
||||
.PHONY : package_source/fast
|
||||
|
||||
# Special rule for the target edit_cache
|
||||
edit_cache:
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running CMake cache editor..."
|
||||
/usr/bin/ccmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
|
||||
.PHONY : edit_cache
|
||||
|
||||
# Special rule for the target edit_cache
|
||||
edit_cache/fast: edit_cache
|
||||
.PHONY : edit_cache/fast
|
||||
|
||||
# Special rule for the target rebuild_cache
|
||||
rebuild_cache:
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running CMake to regenerate build system..."
|
||||
/usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
|
||||
.PHONY : rebuild_cache
|
||||
|
||||
# Special rule for the target rebuild_cache
|
||||
rebuild_cache/fast: rebuild_cache
|
||||
.PHONY : rebuild_cache/fast
|
||||
|
||||
# Special rule for the target list_install_components
|
||||
list_install_components:
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Available install components are: \"Unspecified\""
|
||||
.PHONY : list_install_components
|
||||
|
||||
# Special rule for the target list_install_components
|
||||
list_install_components/fast: list_install_components
|
||||
.PHONY : list_install_components/fast
|
||||
|
||||
# Special rule for the target install
|
||||
install: preinstall
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Install the project..."
|
||||
/usr/bin/cmake -P cmake_install.cmake
|
||||
.PHONY : install
|
||||
|
||||
# Special rule for the target install
|
||||
install/fast: preinstall/fast
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Install the project..."
|
||||
/usr/bin/cmake -P cmake_install.cmake
|
||||
.PHONY : install/fast
|
||||
|
||||
# Special rule for the target install/local
|
||||
install/local: preinstall
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing only the local directory..."
|
||||
/usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
|
||||
.PHONY : install/local
|
||||
|
||||
# Special rule for the target install/local
|
||||
install/local/fast: preinstall/fast
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing only the local directory..."
|
||||
/usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
|
||||
.PHONY : install/local/fast
|
||||
|
||||
# Special rule for the target install/strip
|
||||
install/strip: preinstall
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing the project stripped..."
|
||||
/usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
|
||||
.PHONY : install/strip
|
||||
|
||||
# Special rule for the target install/strip
|
||||
install/strip/fast: preinstall/fast
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing the project stripped..."
|
||||
/usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
|
||||
.PHONY : install/strip/fast
|
||||
|
||||
# The main all target
|
||||
all: cmake_check_build_system
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(CMAKE_COMMAND) -E cmake_progress_start /home/scott/claude/calog/vendor/libssh2/build/CMakeFiles /home/scott/claude/calog/vendor/libssh2/build/docs//CMakeFiles/progress.marks
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 docs/all
|
||||
$(CMAKE_COMMAND) -E cmake_progress_start /home/scott/claude/calog/vendor/libssh2/build/CMakeFiles 0
|
||||
.PHONY : all
|
||||
|
||||
# The main clean target
|
||||
clean:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 docs/clean
|
||||
.PHONY : clean
|
||||
|
||||
# The main clean target
|
||||
clean/fast: clean
|
||||
.PHONY : clean/fast
|
||||
|
||||
# Prepare targets for installation.
|
||||
preinstall: all
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 docs/preinstall
|
||||
.PHONY : preinstall
|
||||
|
||||
# Prepare targets for installation.
|
||||
preinstall/fast:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 docs/preinstall
|
||||
.PHONY : preinstall/fast
|
||||
|
||||
# clear depends
|
||||
depend:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
|
||||
.PHONY : depend
|
||||
|
||||
# Help Target
|
||||
help:
|
||||
@echo "The following are some of the valid targets for this Makefile:"
|
||||
@echo "... all (the default if no target is provided)"
|
||||
@echo "... clean"
|
||||
@echo "... depend"
|
||||
@echo "... edit_cache"
|
||||
@echo "... install"
|
||||
@echo "... install/local"
|
||||
@echo "... install/strip"
|
||||
@echo "... list_install_components"
|
||||
@echo "... package"
|
||||
@echo "... package_source"
|
||||
@echo "... rebuild_cache"
|
||||
.PHONY : help
|
||||
|
||||
|
||||
|
||||
#=============================================================================
|
||||
# Special targets to cleanup operation of make.
|
||||
|
||||
# Special rule to run CMake to check the build system integrity.
|
||||
# No rule that depends on this can have commands that come from listfiles
|
||||
# because they might be regenerated.
|
||||
cmake_check_build_system:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
|
||||
.PHONY : cmake_check_build_system
|
||||
|
||||
3
vendor/libssh2/build/docs/Makefile.am.cmake
vendored
Normal file
3
vendor/libssh2/build/docs/Makefile.am.cmake
vendored
Normal file
File diff suppressed because one or more lines are too long
235
vendor/libssh2/build/docs/cmake_install.cmake
vendored
Normal file
235
vendor/libssh2/build/docs/cmake_install.cmake
vendored
Normal file
|
|
@ -0,0 +1,235 @@
|
|||
# Install script for directory: /home/scott/claude/calog/vendor/libssh2/docs
|
||||
|
||||
# Set the install prefix
|
||||
if(NOT DEFINED CMAKE_INSTALL_PREFIX)
|
||||
set(CMAKE_INSTALL_PREFIX "/usr/local")
|
||||
endif()
|
||||
string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
|
||||
|
||||
# Set the install configuration name.
|
||||
if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
|
||||
if(BUILD_TYPE)
|
||||
string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
|
||||
CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
|
||||
else()
|
||||
set(CMAKE_INSTALL_CONFIG_NAME "Release")
|
||||
endif()
|
||||
message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
|
||||
endif()
|
||||
|
||||
# Set the component getting installed.
|
||||
if(NOT CMAKE_INSTALL_COMPONENT)
|
||||
if(COMPONENT)
|
||||
message(STATUS "Install component: \"${COMPONENT}\"")
|
||||
set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
|
||||
else()
|
||||
set(CMAKE_INSTALL_COMPONENT)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Install shared libraries without execute permission?
|
||||
if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
|
||||
set(CMAKE_INSTALL_SO_NO_EXE "1")
|
||||
endif()
|
||||
|
||||
# Is this installation the result of a crosscompile?
|
||||
if(NOT DEFINED CMAKE_CROSSCOMPILING)
|
||||
set(CMAKE_CROSSCOMPILING "FALSE")
|
||||
endif()
|
||||
|
||||
# Set default install directory permissions.
|
||||
if(NOT DEFINED CMAKE_OBJDUMP)
|
||||
set(CMAKE_OBJDUMP "/usr/bin/objdump")
|
||||
endif()
|
||||
|
||||
if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT)
|
||||
file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/share/man/man3" TYPE FILE FILES
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_agent_connect.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_agent_disconnect.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_agent_free.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_agent_get_identity.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_agent_get_identity_path.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_agent_init.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_agent_list_identities.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_agent_set_identity_path.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_agent_sign.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_agent_userauth.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_banner_set.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_base64_decode.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_close.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_direct_streamlocal_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_direct_tcpip.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_direct_tcpip_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_eof.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_exec.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_flush.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_flush_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_flush_stderr.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_forward_accept.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_forward_cancel.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_forward_listen.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_forward_listen_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_free.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_get_exit_signal.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_get_exit_status.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_handle_extended_data.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_handle_extended_data2.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_ignore_extended_data.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_open_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_open_session.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_process_startup.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_read.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_read_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_read_stderr.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_receive_window_adjust.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_receive_window_adjust2.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_request_auth_agent.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_request_pty.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_request_pty_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_request_pty_size.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_request_pty_size_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_send_eof.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_set_blocking.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_setenv.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_setenv_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_shell.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_signal_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_subsystem.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_wait_closed.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_wait_eof.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_window_read.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_window_read_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_window_write.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_window_write_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_write.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_write_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_write_stderr.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_x11_req.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_channel_x11_req_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_crypto_engine.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_exit.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_free.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_hostkey_hash.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_init.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_keepalive_config.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_keepalive_send.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_knownhost_add.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_knownhost_addc.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_knownhost_check.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_knownhost_checkp.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_knownhost_del.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_knownhost_free.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_knownhost_get.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_knownhost_init.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_knownhost_readfile.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_knownhost_readline.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_knownhost_writefile.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_knownhost_writeline.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_poll.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_poll_channel_read.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_publickey_add.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_publickey_add_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_publickey_init.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_publickey_list_fetch.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_publickey_list_free.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_publickey_remove.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_publickey_remove_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_publickey_shutdown.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_scp_recv.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_scp_recv2.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_scp_send.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_scp_send64.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_scp_send_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_abstract.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_banner_get.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_banner_set.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_block_directions.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_callback_set.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_callback_set2.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_disconnect.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_disconnect_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_flag.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_free.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_get_blocking.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_get_read_timeout.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_get_timeout.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_handshake.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_hostkey.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_init.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_init_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_last_errno.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_last_error.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_method_pref.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_methods.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_set_blocking.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_set_last_error.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_set_read_timeout.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_set_timeout.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_startup.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_session_supported_algs.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_close.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_close_handle.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_closedir.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_fsetstat.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_fstat.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_fstat_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_fstatvfs.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_fsync.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_get_channel.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_init.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_last_error.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_lstat.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_mkdir.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_mkdir_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_open.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_open_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_open_ex_r.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_open_r.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_opendir.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_posix_rename.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_posix_rename_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_read.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_readdir.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_readdir_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_readlink.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_realpath.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_rename.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_rename_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_rewind.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_rmdir.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_rmdir_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_seek.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_seek64.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_setstat.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_shutdown.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_stat.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_stat_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_statvfs.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_symlink.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_symlink_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_tell.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_tell64.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_unlink.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_unlink_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sftp_write.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_sign_sk.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_trace.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_trace_sethandler.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_userauth_authenticated.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_userauth_banner.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_userauth_hostbased_fromfile.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_userauth_hostbased_fromfile_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_userauth_keyboard_interactive.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_userauth_keyboard_interactive_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_userauth_list.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_userauth_password.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_userauth_password_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_userauth_publickey.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_userauth_publickey_fromfile.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_userauth_publickey_fromfile_ex.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_userauth_publickey_frommemory.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_userauth_publickey_sk.3"
|
||||
"/home/scott/claude/calog/vendor/libssh2/docs/libssh2_version.3"
|
||||
)
|
||||
endif()
|
||||
|
||||
16
vendor/libssh2/build/src/CMakeFiles/CMakeDirectoryInformation.cmake
vendored
Normal file
16
vendor/libssh2/build/src/CMakeFiles/CMakeDirectoryInformation.cmake
vendored
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
# CMAKE generated file: DO NOT EDIT!
|
||||
# Generated by "Unix Makefiles" Generator, CMake Version 3.28
|
||||
|
||||
# Relative path conversion top directories.
|
||||
set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/scott/claude/calog/vendor/libssh2")
|
||||
set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/scott/claude/calog/vendor/libssh2/build")
|
||||
|
||||
# Force unix paths in dependencies.
|
||||
set(CMAKE_FORCE_UNIX_PATHS 1)
|
||||
|
||||
|
||||
# The C and CXX include file regular expressions for this directory.
|
||||
set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
|
||||
set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
|
||||
set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
|
||||
set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
#----------------------------------------------------------------
|
||||
# Generated CMake target import file for configuration "Release".
|
||||
#----------------------------------------------------------------
|
||||
|
||||
# Commands may need to know the format version.
|
||||
set(CMAKE_IMPORT_FILE_VERSION 1)
|
||||
|
||||
# Import target "libssh2::libssh2_static" for configuration "Release"
|
||||
set_property(TARGET libssh2::libssh2_static APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
|
||||
set_target_properties(libssh2::libssh2_static PROPERTIES
|
||||
IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "C"
|
||||
IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libssh2.a"
|
||||
)
|
||||
|
||||
list(APPEND _cmake_import_check_targets libssh2::libssh2_static )
|
||||
list(APPEND _cmake_import_check_files_for_libssh2::libssh2_static "${_IMPORT_PREFIX}/lib/libssh2.a" )
|
||||
|
||||
# Commands beyond this point should not need to know the version.
|
||||
set(CMAKE_IMPORT_FILE_VERSION)
|
||||
107
vendor/libssh2/build/src/CMakeFiles/Export/42214405a3257a3f963467afd5bfd32f/libssh2-targets.cmake
vendored
Normal file
107
vendor/libssh2/build/src/CMakeFiles/Export/42214405a3257a3f963467afd5bfd32f/libssh2-targets.cmake
vendored
Normal file
|
|
@ -0,0 +1,107 @@
|
|||
# Generated by CMake
|
||||
|
||||
if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.8)
|
||||
message(FATAL_ERROR "CMake >= 2.8.0 required")
|
||||
endif()
|
||||
if(CMAKE_VERSION VERSION_LESS "2.8.3")
|
||||
message(FATAL_ERROR "CMake >= 2.8.3 required")
|
||||
endif()
|
||||
cmake_policy(PUSH)
|
||||
cmake_policy(VERSION 2.8.3...3.26)
|
||||
#----------------------------------------------------------------
|
||||
# Generated CMake target import file.
|
||||
#----------------------------------------------------------------
|
||||
|
||||
# Commands may need to know the format version.
|
||||
set(CMAKE_IMPORT_FILE_VERSION 1)
|
||||
|
||||
# Protect against multiple inclusion, which would fail when already imported targets are added once more.
|
||||
set(_cmake_targets_defined "")
|
||||
set(_cmake_targets_not_defined "")
|
||||
set(_cmake_expected_targets "")
|
||||
foreach(_cmake_expected_target IN ITEMS libssh2::libssh2_static)
|
||||
list(APPEND _cmake_expected_targets "${_cmake_expected_target}")
|
||||
if(TARGET "${_cmake_expected_target}")
|
||||
list(APPEND _cmake_targets_defined "${_cmake_expected_target}")
|
||||
else()
|
||||
list(APPEND _cmake_targets_not_defined "${_cmake_expected_target}")
|
||||
endif()
|
||||
endforeach()
|
||||
unset(_cmake_expected_target)
|
||||
if(_cmake_targets_defined STREQUAL _cmake_expected_targets)
|
||||
unset(_cmake_targets_defined)
|
||||
unset(_cmake_targets_not_defined)
|
||||
unset(_cmake_expected_targets)
|
||||
unset(CMAKE_IMPORT_FILE_VERSION)
|
||||
cmake_policy(POP)
|
||||
return()
|
||||
endif()
|
||||
if(NOT _cmake_targets_defined STREQUAL "")
|
||||
string(REPLACE ";" ", " _cmake_targets_defined_text "${_cmake_targets_defined}")
|
||||
string(REPLACE ";" ", " _cmake_targets_not_defined_text "${_cmake_targets_not_defined}")
|
||||
message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_cmake_targets_defined_text}\nTargets not yet defined: ${_cmake_targets_not_defined_text}\n")
|
||||
endif()
|
||||
unset(_cmake_targets_defined)
|
||||
unset(_cmake_targets_not_defined)
|
||||
unset(_cmake_expected_targets)
|
||||
|
||||
|
||||
# Compute the installation prefix relative to this file.
|
||||
get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
||||
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
||||
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
||||
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
|
||||
if(_IMPORT_PREFIX STREQUAL "/")
|
||||
set(_IMPORT_PREFIX "")
|
||||
endif()
|
||||
|
||||
# Create imported target libssh2::libssh2_static
|
||||
add_library(libssh2::libssh2_static STATIC IMPORTED)
|
||||
|
||||
set_target_properties(libssh2::libssh2_static PROPERTIES
|
||||
INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include"
|
||||
INTERFACE_LINK_LIBRARIES "\$<LINK_ONLY:OpenSSL::Crypto>;/usr/lib/x86_64-linux-gnu/libz.so"
|
||||
)
|
||||
|
||||
if(CMAKE_VERSION VERSION_LESS 2.8.12)
|
||||
message(FATAL_ERROR "This file relies on consumers using CMake 2.8.12 or greater.")
|
||||
endif()
|
||||
|
||||
# Load information for each installed configuration.
|
||||
file(GLOB _cmake_config_files "${CMAKE_CURRENT_LIST_DIR}/libssh2-targets-*.cmake")
|
||||
foreach(_cmake_config_file IN LISTS _cmake_config_files)
|
||||
include("${_cmake_config_file}")
|
||||
endforeach()
|
||||
unset(_cmake_config_file)
|
||||
unset(_cmake_config_files)
|
||||
|
||||
# Cleanup temporary variables.
|
||||
set(_IMPORT_PREFIX)
|
||||
|
||||
# Loop over all imported files and verify that they actually exist
|
||||
foreach(_cmake_target IN LISTS _cmake_import_check_targets)
|
||||
foreach(_cmake_file IN LISTS "_cmake_import_check_files_for_${_cmake_target}")
|
||||
if(NOT EXISTS "${_cmake_file}")
|
||||
message(FATAL_ERROR "The imported target \"${_cmake_target}\" references the file
|
||||
\"${_cmake_file}\"
|
||||
but this file does not exist. Possible reasons include:
|
||||
* The file was deleted, renamed, or moved to another location.
|
||||
* An install or uninstall procedure did not complete successfully.
|
||||
* The installation package was faulty and contained
|
||||
\"${CMAKE_CURRENT_LIST_FILE}\"
|
||||
but not all the files it references.
|
||||
")
|
||||
endif()
|
||||
endforeach()
|
||||
unset(_cmake_file)
|
||||
unset("_cmake_import_check_files_for_${_cmake_target}")
|
||||
endforeach()
|
||||
unset(_cmake_target)
|
||||
unset(_cmake_import_check_targets)
|
||||
|
||||
# This file does not depend on other imported targets which have
|
||||
# been exported from the same project but in a separate export set.
|
||||
|
||||
# Commands beyond this point should not need to know the version.
|
||||
set(CMAKE_IMPORT_FILE_VERSION)
|
||||
cmake_policy(POP)
|
||||
48
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/DependInfo.cmake
vendored
Normal file
48
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/DependInfo.cmake
vendored
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
|
||||
# Consider dependencies only in project.
|
||||
set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF)
|
||||
|
||||
# The set of languages for which implicit dependencies are needed:
|
||||
set(CMAKE_DEPENDS_LANGUAGES
|
||||
)
|
||||
|
||||
# The set of dependency files which are needed:
|
||||
set(CMAKE_DEPENDS_DEPENDENCY_FILES
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/agent.c" "src/CMakeFiles/libssh2_static.dir/agent.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/agent.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/bcrypt_pbkdf.c" "src/CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/chacha.c" "src/CMakeFiles/libssh2_static.dir/chacha.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/chacha.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/channel.c" "src/CMakeFiles/libssh2_static.dir/channel.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/channel.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/cipher-chachapoly.c" "src/CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/comp.c" "src/CMakeFiles/libssh2_static.dir/comp.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/comp.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/crypt.c" "src/CMakeFiles/libssh2_static.dir/crypt.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/crypt.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/crypto.c" "src/CMakeFiles/libssh2_static.dir/crypto.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/crypto.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/global.c" "src/CMakeFiles/libssh2_static.dir/global.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/global.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/hostkey.c" "src/CMakeFiles/libssh2_static.dir/hostkey.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/hostkey.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/keepalive.c" "src/CMakeFiles/libssh2_static.dir/keepalive.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/keepalive.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/kex.c" "src/CMakeFiles/libssh2_static.dir/kex.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/kex.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/knownhost.c" "src/CMakeFiles/libssh2_static.dir/knownhost.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/knownhost.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/mac.c" "src/CMakeFiles/libssh2_static.dir/mac.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/mac.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/misc.c" "src/CMakeFiles/libssh2_static.dir/misc.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/misc.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/packet.c" "src/CMakeFiles/libssh2_static.dir/packet.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/packet.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/pem.c" "src/CMakeFiles/libssh2_static.dir/pem.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/pem.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/poly1305.c" "src/CMakeFiles/libssh2_static.dir/poly1305.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/poly1305.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/publickey.c" "src/CMakeFiles/libssh2_static.dir/publickey.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/publickey.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/scp.c" "src/CMakeFiles/libssh2_static.dir/scp.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/scp.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/session.c" "src/CMakeFiles/libssh2_static.dir/session.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/session.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/sftp.c" "src/CMakeFiles/libssh2_static.dir/sftp.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/sftp.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/transport.c" "src/CMakeFiles/libssh2_static.dir/transport.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/transport.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/userauth.c" "src/CMakeFiles/libssh2_static.dir/userauth.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/userauth.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/userauth_kbd_packet.c" "src/CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.o.d"
|
||||
"/home/scott/claude/calog/vendor/libssh2/src/version.c" "src/CMakeFiles/libssh2_static.dir/version.c.o" "gcc" "src/CMakeFiles/libssh2_static.dir/version.c.o.d"
|
||||
)
|
||||
|
||||
# Targets to which this target links which contain Fortran sources.
|
||||
set(CMAKE_Fortran_TARGET_LINKED_INFO_FILES
|
||||
)
|
||||
|
||||
# Targets to which this target links which contain Fortran sources.
|
||||
set(CMAKE_Fortran_TARGET_FORWARD_LINKED_INFO_FILES
|
||||
)
|
||||
|
||||
# Fortran module output directory.
|
||||
set(CMAKE_Fortran_TARGET_MODULE_DIR "")
|
||||
511
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/build.make
vendored
Normal file
511
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/build.make
vendored
Normal file
|
|
@ -0,0 +1,511 @@
|
|||
# CMAKE generated file: DO NOT EDIT!
|
||||
# Generated by "Unix Makefiles" Generator, CMake Version 3.28
|
||||
|
||||
# Delete rule output on recipe failure.
|
||||
.DELETE_ON_ERROR:
|
||||
|
||||
#=============================================================================
|
||||
# Special targets provided by cmake.
|
||||
|
||||
# Disable implicit rules so canonical targets will work.
|
||||
.SUFFIXES:
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : %,v
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : RCS/%
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : RCS/%,v
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : SCCS/s.%
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : s.%
|
||||
|
||||
.SUFFIXES: .hpux_make_needs_suffix_list
|
||||
|
||||
# Command-line flag to silence nested $(MAKE).
|
||||
$(VERBOSE)MAKESILENT = -s
|
||||
|
||||
#Suppress display of executed commands.
|
||||
$(VERBOSE).SILENT:
|
||||
|
||||
# A target that is always out of date.
|
||||
cmake_force:
|
||||
.PHONY : cmake_force
|
||||
|
||||
#=============================================================================
|
||||
# Set environment variables for the build.
|
||||
|
||||
# The shell in which to execute make rules.
|
||||
SHELL = /bin/sh
|
||||
|
||||
# The CMake executable.
|
||||
CMAKE_COMMAND = /usr/bin/cmake
|
||||
|
||||
# The command to remove a file.
|
||||
RM = /usr/bin/cmake -E rm -f
|
||||
|
||||
# Escaping for special characters.
|
||||
EQUALS = =
|
||||
|
||||
# The top-level source directory on which CMake was run.
|
||||
CMAKE_SOURCE_DIR = /home/scott/claude/calog/vendor/libssh2
|
||||
|
||||
# The top-level build directory on which CMake was run.
|
||||
CMAKE_BINARY_DIR = /home/scott/claude/calog/vendor/libssh2/build
|
||||
|
||||
# Include any dependencies generated for this target.
|
||||
include src/CMakeFiles/libssh2_static.dir/depend.make
|
||||
# Include any dependencies generated by the compiler for this target.
|
||||
include src/CMakeFiles/libssh2_static.dir/compiler_depend.make
|
||||
|
||||
# Include the progress variables for this target.
|
||||
include src/CMakeFiles/libssh2_static.dir/progress.make
|
||||
|
||||
# Include the compile flags for this target's objects.
|
||||
include src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/agent.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/agent.c.o: /home/scott/claude/calog/vendor/libssh2/src/agent.c
|
||||
src/CMakeFiles/libssh2_static.dir/agent.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building C object src/CMakeFiles/libssh2_static.dir/agent.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/agent.c.o -MF CMakeFiles/libssh2_static.dir/agent.c.o.d -o CMakeFiles/libssh2_static.dir/agent.c.o -c /home/scott/claude/calog/vendor/libssh2/src/agent.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/agent.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/agent.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/agent.c > CMakeFiles/libssh2_static.dir/agent.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/agent.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/agent.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/agent.c -o CMakeFiles/libssh2_static.dir/agent.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.o: /home/scott/claude/calog/vendor/libssh2/src/bcrypt_pbkdf.c
|
||||
src/CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building C object src/CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.o -MF CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.o.d -o CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.o -c /home/scott/claude/calog/vendor/libssh2/src/bcrypt_pbkdf.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/bcrypt_pbkdf.c > CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/bcrypt_pbkdf.c -o CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/channel.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/channel.c.o: /home/scott/claude/calog/vendor/libssh2/src/channel.c
|
||||
src/CMakeFiles/libssh2_static.dir/channel.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building C object src/CMakeFiles/libssh2_static.dir/channel.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/channel.c.o -MF CMakeFiles/libssh2_static.dir/channel.c.o.d -o CMakeFiles/libssh2_static.dir/channel.c.o -c /home/scott/claude/calog/vendor/libssh2/src/channel.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/channel.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/channel.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/channel.c > CMakeFiles/libssh2_static.dir/channel.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/channel.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/channel.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/channel.c -o CMakeFiles/libssh2_static.dir/channel.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/comp.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/comp.c.o: /home/scott/claude/calog/vendor/libssh2/src/comp.c
|
||||
src/CMakeFiles/libssh2_static.dir/comp.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Building C object src/CMakeFiles/libssh2_static.dir/comp.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/comp.c.o -MF CMakeFiles/libssh2_static.dir/comp.c.o.d -o CMakeFiles/libssh2_static.dir/comp.c.o -c /home/scott/claude/calog/vendor/libssh2/src/comp.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/comp.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/comp.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/comp.c > CMakeFiles/libssh2_static.dir/comp.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/comp.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/comp.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/comp.c -o CMakeFiles/libssh2_static.dir/comp.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/chacha.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/chacha.c.o: /home/scott/claude/calog/vendor/libssh2/src/chacha.c
|
||||
src/CMakeFiles/libssh2_static.dir/chacha.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_5) "Building C object src/CMakeFiles/libssh2_static.dir/chacha.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/chacha.c.o -MF CMakeFiles/libssh2_static.dir/chacha.c.o.d -o CMakeFiles/libssh2_static.dir/chacha.c.o -c /home/scott/claude/calog/vendor/libssh2/src/chacha.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/chacha.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/chacha.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/chacha.c > CMakeFiles/libssh2_static.dir/chacha.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/chacha.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/chacha.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/chacha.c -o CMakeFiles/libssh2_static.dir/chacha.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.o: /home/scott/claude/calog/vendor/libssh2/src/cipher-chachapoly.c
|
||||
src/CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_6) "Building C object src/CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.o -MF CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.o.d -o CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.o -c /home/scott/claude/calog/vendor/libssh2/src/cipher-chachapoly.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/cipher-chachapoly.c > CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/cipher-chachapoly.c -o CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/crypt.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/crypt.c.o: /home/scott/claude/calog/vendor/libssh2/src/crypt.c
|
||||
src/CMakeFiles/libssh2_static.dir/crypt.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_7) "Building C object src/CMakeFiles/libssh2_static.dir/crypt.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/crypt.c.o -MF CMakeFiles/libssh2_static.dir/crypt.c.o.d -o CMakeFiles/libssh2_static.dir/crypt.c.o -c /home/scott/claude/calog/vendor/libssh2/src/crypt.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/crypt.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/crypt.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/crypt.c > CMakeFiles/libssh2_static.dir/crypt.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/crypt.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/crypt.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/crypt.c -o CMakeFiles/libssh2_static.dir/crypt.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/crypto.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/crypto.c.o: /home/scott/claude/calog/vendor/libssh2/src/crypto.c
|
||||
src/CMakeFiles/libssh2_static.dir/crypto.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_8) "Building C object src/CMakeFiles/libssh2_static.dir/crypto.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/crypto.c.o -MF CMakeFiles/libssh2_static.dir/crypto.c.o.d -o CMakeFiles/libssh2_static.dir/crypto.c.o -c /home/scott/claude/calog/vendor/libssh2/src/crypto.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/crypto.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/crypto.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/crypto.c > CMakeFiles/libssh2_static.dir/crypto.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/crypto.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/crypto.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/crypto.c -o CMakeFiles/libssh2_static.dir/crypto.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/global.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/global.c.o: /home/scott/claude/calog/vendor/libssh2/src/global.c
|
||||
src/CMakeFiles/libssh2_static.dir/global.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_9) "Building C object src/CMakeFiles/libssh2_static.dir/global.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/global.c.o -MF CMakeFiles/libssh2_static.dir/global.c.o.d -o CMakeFiles/libssh2_static.dir/global.c.o -c /home/scott/claude/calog/vendor/libssh2/src/global.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/global.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/global.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/global.c > CMakeFiles/libssh2_static.dir/global.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/global.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/global.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/global.c -o CMakeFiles/libssh2_static.dir/global.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/hostkey.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/hostkey.c.o: /home/scott/claude/calog/vendor/libssh2/src/hostkey.c
|
||||
src/CMakeFiles/libssh2_static.dir/hostkey.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_10) "Building C object src/CMakeFiles/libssh2_static.dir/hostkey.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/hostkey.c.o -MF CMakeFiles/libssh2_static.dir/hostkey.c.o.d -o CMakeFiles/libssh2_static.dir/hostkey.c.o -c /home/scott/claude/calog/vendor/libssh2/src/hostkey.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/hostkey.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/hostkey.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/hostkey.c > CMakeFiles/libssh2_static.dir/hostkey.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/hostkey.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/hostkey.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/hostkey.c -o CMakeFiles/libssh2_static.dir/hostkey.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/keepalive.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/keepalive.c.o: /home/scott/claude/calog/vendor/libssh2/src/keepalive.c
|
||||
src/CMakeFiles/libssh2_static.dir/keepalive.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_11) "Building C object src/CMakeFiles/libssh2_static.dir/keepalive.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/keepalive.c.o -MF CMakeFiles/libssh2_static.dir/keepalive.c.o.d -o CMakeFiles/libssh2_static.dir/keepalive.c.o -c /home/scott/claude/calog/vendor/libssh2/src/keepalive.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/keepalive.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/keepalive.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/keepalive.c > CMakeFiles/libssh2_static.dir/keepalive.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/keepalive.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/keepalive.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/keepalive.c -o CMakeFiles/libssh2_static.dir/keepalive.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/kex.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/kex.c.o: /home/scott/claude/calog/vendor/libssh2/src/kex.c
|
||||
src/CMakeFiles/libssh2_static.dir/kex.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_12) "Building C object src/CMakeFiles/libssh2_static.dir/kex.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/kex.c.o -MF CMakeFiles/libssh2_static.dir/kex.c.o.d -o CMakeFiles/libssh2_static.dir/kex.c.o -c /home/scott/claude/calog/vendor/libssh2/src/kex.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/kex.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/kex.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/kex.c > CMakeFiles/libssh2_static.dir/kex.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/kex.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/kex.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/kex.c -o CMakeFiles/libssh2_static.dir/kex.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/knownhost.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/knownhost.c.o: /home/scott/claude/calog/vendor/libssh2/src/knownhost.c
|
||||
src/CMakeFiles/libssh2_static.dir/knownhost.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_13) "Building C object src/CMakeFiles/libssh2_static.dir/knownhost.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/knownhost.c.o -MF CMakeFiles/libssh2_static.dir/knownhost.c.o.d -o CMakeFiles/libssh2_static.dir/knownhost.c.o -c /home/scott/claude/calog/vendor/libssh2/src/knownhost.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/knownhost.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/knownhost.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/knownhost.c > CMakeFiles/libssh2_static.dir/knownhost.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/knownhost.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/knownhost.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/knownhost.c -o CMakeFiles/libssh2_static.dir/knownhost.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/mac.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/mac.c.o: /home/scott/claude/calog/vendor/libssh2/src/mac.c
|
||||
src/CMakeFiles/libssh2_static.dir/mac.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_14) "Building C object src/CMakeFiles/libssh2_static.dir/mac.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/mac.c.o -MF CMakeFiles/libssh2_static.dir/mac.c.o.d -o CMakeFiles/libssh2_static.dir/mac.c.o -c /home/scott/claude/calog/vendor/libssh2/src/mac.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/mac.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/mac.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/mac.c > CMakeFiles/libssh2_static.dir/mac.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/mac.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/mac.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/mac.c -o CMakeFiles/libssh2_static.dir/mac.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/misc.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/misc.c.o: /home/scott/claude/calog/vendor/libssh2/src/misc.c
|
||||
src/CMakeFiles/libssh2_static.dir/misc.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_15) "Building C object src/CMakeFiles/libssh2_static.dir/misc.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/misc.c.o -MF CMakeFiles/libssh2_static.dir/misc.c.o.d -o CMakeFiles/libssh2_static.dir/misc.c.o -c /home/scott/claude/calog/vendor/libssh2/src/misc.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/misc.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/misc.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/misc.c > CMakeFiles/libssh2_static.dir/misc.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/misc.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/misc.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/misc.c -o CMakeFiles/libssh2_static.dir/misc.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/packet.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/packet.c.o: /home/scott/claude/calog/vendor/libssh2/src/packet.c
|
||||
src/CMakeFiles/libssh2_static.dir/packet.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_16) "Building C object src/CMakeFiles/libssh2_static.dir/packet.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/packet.c.o -MF CMakeFiles/libssh2_static.dir/packet.c.o.d -o CMakeFiles/libssh2_static.dir/packet.c.o -c /home/scott/claude/calog/vendor/libssh2/src/packet.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/packet.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/packet.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/packet.c > CMakeFiles/libssh2_static.dir/packet.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/packet.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/packet.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/packet.c -o CMakeFiles/libssh2_static.dir/packet.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/pem.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/pem.c.o: /home/scott/claude/calog/vendor/libssh2/src/pem.c
|
||||
src/CMakeFiles/libssh2_static.dir/pem.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_17) "Building C object src/CMakeFiles/libssh2_static.dir/pem.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/pem.c.o -MF CMakeFiles/libssh2_static.dir/pem.c.o.d -o CMakeFiles/libssh2_static.dir/pem.c.o -c /home/scott/claude/calog/vendor/libssh2/src/pem.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/pem.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/pem.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/pem.c > CMakeFiles/libssh2_static.dir/pem.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/pem.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/pem.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/pem.c -o CMakeFiles/libssh2_static.dir/pem.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/poly1305.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/poly1305.c.o: /home/scott/claude/calog/vendor/libssh2/src/poly1305.c
|
||||
src/CMakeFiles/libssh2_static.dir/poly1305.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_18) "Building C object src/CMakeFiles/libssh2_static.dir/poly1305.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/poly1305.c.o -MF CMakeFiles/libssh2_static.dir/poly1305.c.o.d -o CMakeFiles/libssh2_static.dir/poly1305.c.o -c /home/scott/claude/calog/vendor/libssh2/src/poly1305.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/poly1305.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/poly1305.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/poly1305.c > CMakeFiles/libssh2_static.dir/poly1305.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/poly1305.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/poly1305.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/poly1305.c -o CMakeFiles/libssh2_static.dir/poly1305.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/publickey.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/publickey.c.o: /home/scott/claude/calog/vendor/libssh2/src/publickey.c
|
||||
src/CMakeFiles/libssh2_static.dir/publickey.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_19) "Building C object src/CMakeFiles/libssh2_static.dir/publickey.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/publickey.c.o -MF CMakeFiles/libssh2_static.dir/publickey.c.o.d -o CMakeFiles/libssh2_static.dir/publickey.c.o -c /home/scott/claude/calog/vendor/libssh2/src/publickey.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/publickey.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/publickey.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/publickey.c > CMakeFiles/libssh2_static.dir/publickey.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/publickey.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/publickey.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/publickey.c -o CMakeFiles/libssh2_static.dir/publickey.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/scp.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/scp.c.o: /home/scott/claude/calog/vendor/libssh2/src/scp.c
|
||||
src/CMakeFiles/libssh2_static.dir/scp.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_20) "Building C object src/CMakeFiles/libssh2_static.dir/scp.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/scp.c.o -MF CMakeFiles/libssh2_static.dir/scp.c.o.d -o CMakeFiles/libssh2_static.dir/scp.c.o -c /home/scott/claude/calog/vendor/libssh2/src/scp.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/scp.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/scp.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/scp.c > CMakeFiles/libssh2_static.dir/scp.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/scp.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/scp.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/scp.c -o CMakeFiles/libssh2_static.dir/scp.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/session.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/session.c.o: /home/scott/claude/calog/vendor/libssh2/src/session.c
|
||||
src/CMakeFiles/libssh2_static.dir/session.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_21) "Building C object src/CMakeFiles/libssh2_static.dir/session.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/session.c.o -MF CMakeFiles/libssh2_static.dir/session.c.o.d -o CMakeFiles/libssh2_static.dir/session.c.o -c /home/scott/claude/calog/vendor/libssh2/src/session.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/session.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/session.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/session.c > CMakeFiles/libssh2_static.dir/session.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/session.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/session.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/session.c -o CMakeFiles/libssh2_static.dir/session.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/sftp.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/sftp.c.o: /home/scott/claude/calog/vendor/libssh2/src/sftp.c
|
||||
src/CMakeFiles/libssh2_static.dir/sftp.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_22) "Building C object src/CMakeFiles/libssh2_static.dir/sftp.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/sftp.c.o -MF CMakeFiles/libssh2_static.dir/sftp.c.o.d -o CMakeFiles/libssh2_static.dir/sftp.c.o -c /home/scott/claude/calog/vendor/libssh2/src/sftp.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/sftp.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/sftp.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/sftp.c > CMakeFiles/libssh2_static.dir/sftp.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/sftp.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/sftp.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/sftp.c -o CMakeFiles/libssh2_static.dir/sftp.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/transport.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/transport.c.o: /home/scott/claude/calog/vendor/libssh2/src/transport.c
|
||||
src/CMakeFiles/libssh2_static.dir/transport.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_23) "Building C object src/CMakeFiles/libssh2_static.dir/transport.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/transport.c.o -MF CMakeFiles/libssh2_static.dir/transport.c.o.d -o CMakeFiles/libssh2_static.dir/transport.c.o -c /home/scott/claude/calog/vendor/libssh2/src/transport.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/transport.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/transport.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/transport.c > CMakeFiles/libssh2_static.dir/transport.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/transport.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/transport.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/transport.c -o CMakeFiles/libssh2_static.dir/transport.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/userauth.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/userauth.c.o: /home/scott/claude/calog/vendor/libssh2/src/userauth.c
|
||||
src/CMakeFiles/libssh2_static.dir/userauth.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_24) "Building C object src/CMakeFiles/libssh2_static.dir/userauth.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/userauth.c.o -MF CMakeFiles/libssh2_static.dir/userauth.c.o.d -o CMakeFiles/libssh2_static.dir/userauth.c.o -c /home/scott/claude/calog/vendor/libssh2/src/userauth.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/userauth.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/userauth.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/userauth.c > CMakeFiles/libssh2_static.dir/userauth.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/userauth.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/userauth.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/userauth.c -o CMakeFiles/libssh2_static.dir/userauth.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.o: /home/scott/claude/calog/vendor/libssh2/src/userauth_kbd_packet.c
|
||||
src/CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_25) "Building C object src/CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.o -MF CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.o.d -o CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.o -c /home/scott/claude/calog/vendor/libssh2/src/userauth_kbd_packet.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/userauth_kbd_packet.c > CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/userauth_kbd_packet.c -o CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.s
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/version.c.o: src/CMakeFiles/libssh2_static.dir/flags.make
|
||||
src/CMakeFiles/libssh2_static.dir/version.c.o: /home/scott/claude/calog/vendor/libssh2/src/version.c
|
||||
src/CMakeFiles/libssh2_static.dir/version.c.o: src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_26) "Building C object src/CMakeFiles/libssh2_static.dir/version.c.o"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT src/CMakeFiles/libssh2_static.dir/version.c.o -MF CMakeFiles/libssh2_static.dir/version.c.o.d -o CMakeFiles/libssh2_static.dir/version.c.o -c /home/scott/claude/calog/vendor/libssh2/src/version.c
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/version.c.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing C source to CMakeFiles/libssh2_static.dir/version.c.i"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -E /home/scott/claude/calog/vendor/libssh2/src/version.c > CMakeFiles/libssh2_static.dir/version.c.i
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/version.c.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling C source to assembly CMakeFiles/libssh2_static.dir/version.c.s"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && /usr/bin/cc $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -S /home/scott/claude/calog/vendor/libssh2/src/version.c -o CMakeFiles/libssh2_static.dir/version.c.s
|
||||
|
||||
# Object files for target libssh2_static
|
||||
libssh2_static_OBJECTS = \
|
||||
"CMakeFiles/libssh2_static.dir/agent.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/channel.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/comp.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/chacha.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/crypt.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/crypto.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/global.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/hostkey.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/keepalive.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/kex.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/knownhost.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/mac.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/misc.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/packet.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/pem.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/poly1305.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/publickey.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/scp.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/session.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/sftp.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/transport.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/userauth.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.o" \
|
||||
"CMakeFiles/libssh2_static.dir/version.c.o"
|
||||
|
||||
# External object files for target libssh2_static
|
||||
libssh2_static_EXTERNAL_OBJECTS =
|
||||
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/agent.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/channel.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/comp.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/chacha.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/crypt.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/crypto.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/global.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/hostkey.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/keepalive.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/kex.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/knownhost.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/mac.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/misc.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/packet.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/pem.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/poly1305.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/publickey.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/scp.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/session.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/sftp.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/transport.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/userauth.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/version.c.o
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/build.make
|
||||
src/libssh2.a: src/CMakeFiles/libssh2_static.dir/link.txt
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --bold --progress-dir=/home/scott/claude/calog/vendor/libssh2/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_27) "Linking C static library libssh2.a"
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && $(CMAKE_COMMAND) -P CMakeFiles/libssh2_static.dir/cmake_clean_target.cmake
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/libssh2_static.dir/link.txt --verbose=$(VERBOSE)
|
||||
|
||||
# Rule to build all files generated by this target.
|
||||
src/CMakeFiles/libssh2_static.dir/build: src/libssh2.a
|
||||
.PHONY : src/CMakeFiles/libssh2_static.dir/build
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/clean:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build/src && $(CMAKE_COMMAND) -P CMakeFiles/libssh2_static.dir/cmake_clean.cmake
|
||||
.PHONY : src/CMakeFiles/libssh2_static.dir/clean
|
||||
|
||||
src/CMakeFiles/libssh2_static.dir/depend:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/scott/claude/calog/vendor/libssh2 /home/scott/claude/calog/vendor/libssh2/src /home/scott/claude/calog/vendor/libssh2/build /home/scott/claude/calog/vendor/libssh2/build/src /home/scott/claude/calog/vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/DependInfo.cmake "--color=$(COLOR)"
|
||||
.PHONY : src/CMakeFiles/libssh2_static.dir/depend
|
||||
|
||||
61
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/cmake_clean.cmake
vendored
Normal file
61
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/cmake_clean.cmake
vendored
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
file(REMOVE_RECURSE
|
||||
"CMakeFiles/libssh2_static.dir/agent.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/agent.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/chacha.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/chacha.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/channel.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/channel.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/comp.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/comp.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/crypt.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/crypt.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/crypto.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/crypto.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/global.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/global.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/hostkey.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/hostkey.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/keepalive.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/keepalive.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/kex.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/kex.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/knownhost.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/knownhost.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/mac.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/mac.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/misc.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/misc.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/packet.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/packet.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/pem.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/pem.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/poly1305.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/poly1305.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/publickey.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/publickey.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/scp.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/scp.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/session.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/session.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/sftp.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/sftp.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/transport.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/transport.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/userauth.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/userauth.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.o.d"
|
||||
"CMakeFiles/libssh2_static.dir/version.c.o"
|
||||
"CMakeFiles/libssh2_static.dir/version.c.o.d"
|
||||
"libssh2.a"
|
||||
"libssh2.pdb"
|
||||
)
|
||||
|
||||
# Per-language clean rules from dependency scanning.
|
||||
foreach(lang C)
|
||||
include(CMakeFiles/libssh2_static.dir/cmake_clean_${lang}.cmake OPTIONAL)
|
||||
endforeach()
|
||||
3
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/cmake_clean_target.cmake
vendored
Normal file
3
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/cmake_clean_target.cmake
vendored
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
file(REMOVE_RECURSE
|
||||
"libssh2.a"
|
||||
)
|
||||
2
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/compiler_depend.make
vendored
Normal file
2
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/compiler_depend.make
vendored
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
# Empty compiler generated dependencies file for libssh2_static.
|
||||
# This may be replaced when dependencies are built.
|
||||
2
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
vendored
Normal file
2
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/compiler_depend.ts
vendored
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
# CMAKE generated file: DO NOT EDIT!
|
||||
# Timestamp file for compiler generated dependencies management for libssh2_static.
|
||||
2
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/depend.make
vendored
Normal file
2
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/depend.make
vendored
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
# Empty dependencies file for libssh2_static.
|
||||
# This may be replaced when dependencies are built.
|
||||
10
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/flags.make
vendored
Normal file
10
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/flags.make
vendored
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
# CMAKE generated file: DO NOT EDIT!
|
||||
# Generated by "Unix Makefiles" Generator, CMake Version 3.28
|
||||
|
||||
# compile C with /usr/bin/cc
|
||||
C_DEFINES = -DHAVE_CONFIG_H -DLIBSSH2_OPENSSL
|
||||
|
||||
C_INCLUDES = -I/home/scott/claude/calog/vendor/libssh2/include -I/home/scott/claude/calog/vendor/libssh2/build/src -isystem /home/scott/claude/calog/vendor/openssl/include
|
||||
|
||||
C_FLAGS = -Wall -W -pedantic -Wbad-function-cast -Wconversion -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wno-long-long -Wno-multichar -Wpointer-arith -Wshadow -Wsign-compare -Wundef -Wunused -Wwrite-strings -Waddress -Wattributes -Wcast-align -Wdeclaration-after-statement -Wdiv-by-zero -Wempty-body -Wendif-labels -Wfloat-equal -Wformat-security -Wignored-qualifiers -Wmissing-field-initializers -Wmissing-noreturn -Wno-format-nonliteral -Wno-system-headers -Wold-style-definition -Wredundant-decls -Wsign-conversion -Wno-error=sign-conversion -Wstrict-prototypes -Wtype-limits -Wunreachable-code -Wunused-macros -Wunused-parameter -Wvla -Wclobbered -Wmissing-parameter-type -Wold-style-declaration -Wstrict-aliasing=3 -Wtrampolines -Wformat=2 -Warray-bounds=2 -ftree-vrp -Wduplicated-cond -Wnull-dereference -fdelete-null-pointer-checks -Wshift-negative-value -Wshift-overflow=2 -Walloc-zero -Wduplicated-branches -Wformat-overflow=2 -Wformat-truncation=2 -Wimplicit-fallthrough -Wrestrict -Warith-conversion -Wdouble-promotion -Wenum-conversion -Wpragmas -Wunused-const-variable -O3 -DNDEBUG
|
||||
|
||||
2
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/link.txt
vendored
Normal file
2
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/link.txt
vendored
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
/usr/bin/ar qc libssh2.a CMakeFiles/libssh2_static.dir/agent.c.o CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.o CMakeFiles/libssh2_static.dir/channel.c.o CMakeFiles/libssh2_static.dir/comp.c.o CMakeFiles/libssh2_static.dir/chacha.c.o "CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.o" CMakeFiles/libssh2_static.dir/crypt.c.o CMakeFiles/libssh2_static.dir/crypto.c.o CMakeFiles/libssh2_static.dir/global.c.o CMakeFiles/libssh2_static.dir/hostkey.c.o CMakeFiles/libssh2_static.dir/keepalive.c.o CMakeFiles/libssh2_static.dir/kex.c.o CMakeFiles/libssh2_static.dir/knownhost.c.o CMakeFiles/libssh2_static.dir/mac.c.o CMakeFiles/libssh2_static.dir/misc.c.o CMakeFiles/libssh2_static.dir/packet.c.o CMakeFiles/libssh2_static.dir/pem.c.o CMakeFiles/libssh2_static.dir/poly1305.c.o CMakeFiles/libssh2_static.dir/publickey.c.o CMakeFiles/libssh2_static.dir/scp.c.o CMakeFiles/libssh2_static.dir/session.c.o CMakeFiles/libssh2_static.dir/sftp.c.o CMakeFiles/libssh2_static.dir/transport.c.o CMakeFiles/libssh2_static.dir/userauth.c.o CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.o CMakeFiles/libssh2_static.dir/version.c.o
|
||||
/usr/bin/ranlib libssh2.a
|
||||
28
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/progress.make
vendored
Normal file
28
vendor/libssh2/build/src/CMakeFiles/libssh2_static.dir/progress.make
vendored
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
CMAKE_PROGRESS_1 = 1
|
||||
CMAKE_PROGRESS_2 = 2
|
||||
CMAKE_PROGRESS_3 = 3
|
||||
CMAKE_PROGRESS_4 = 4
|
||||
CMAKE_PROGRESS_5 = 5
|
||||
CMAKE_PROGRESS_6 = 6
|
||||
CMAKE_PROGRESS_7 = 7
|
||||
CMAKE_PROGRESS_8 = 8
|
||||
CMAKE_PROGRESS_9 = 9
|
||||
CMAKE_PROGRESS_10 = 10
|
||||
CMAKE_PROGRESS_11 = 11
|
||||
CMAKE_PROGRESS_12 = 12
|
||||
CMAKE_PROGRESS_13 = 13
|
||||
CMAKE_PROGRESS_14 = 14
|
||||
CMAKE_PROGRESS_15 = 15
|
||||
CMAKE_PROGRESS_16 = 16
|
||||
CMAKE_PROGRESS_17 = 17
|
||||
CMAKE_PROGRESS_18 = 18
|
||||
CMAKE_PROGRESS_19 = 19
|
||||
CMAKE_PROGRESS_20 = 20
|
||||
CMAKE_PROGRESS_21 = 21
|
||||
CMAKE_PROGRESS_22 = 22
|
||||
CMAKE_PROGRESS_23 = 23
|
||||
CMAKE_PROGRESS_24 = 24
|
||||
CMAKE_PROGRESS_25 = 25
|
||||
CMAKE_PROGRESS_26 = 26
|
||||
CMAKE_PROGRESS_27 = 27
|
||||
|
||||
1
vendor/libssh2/build/src/CMakeFiles/progress.marks
vendored
Normal file
1
vendor/libssh2/build/src/CMakeFiles/progress.marks
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
27
|
||||
928
vendor/libssh2/build/src/Makefile
vendored
Normal file
928
vendor/libssh2/build/src/Makefile
vendored
Normal file
|
|
@ -0,0 +1,928 @@
|
|||
# CMAKE generated file: DO NOT EDIT!
|
||||
# Generated by "Unix Makefiles" Generator, CMake Version 3.28
|
||||
|
||||
# Default target executed when no arguments are given to make.
|
||||
default_target: all
|
||||
.PHONY : default_target
|
||||
|
||||
# Allow only one "make -f Makefile2" at a time, but pass parallelism.
|
||||
.NOTPARALLEL:
|
||||
|
||||
#=============================================================================
|
||||
# Special targets provided by cmake.
|
||||
|
||||
# Disable implicit rules so canonical targets will work.
|
||||
.SUFFIXES:
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : %,v
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : RCS/%
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : RCS/%,v
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : SCCS/s.%
|
||||
|
||||
# Disable VCS-based implicit rules.
|
||||
% : s.%
|
||||
|
||||
.SUFFIXES: .hpux_make_needs_suffix_list
|
||||
|
||||
# Command-line flag to silence nested $(MAKE).
|
||||
$(VERBOSE)MAKESILENT = -s
|
||||
|
||||
#Suppress display of executed commands.
|
||||
$(VERBOSE).SILENT:
|
||||
|
||||
# A target that is always out of date.
|
||||
cmake_force:
|
||||
.PHONY : cmake_force
|
||||
|
||||
#=============================================================================
|
||||
# Set environment variables for the build.
|
||||
|
||||
# The shell in which to execute make rules.
|
||||
SHELL = /bin/sh
|
||||
|
||||
# The CMake executable.
|
||||
CMAKE_COMMAND = /usr/bin/cmake
|
||||
|
||||
# The command to remove a file.
|
||||
RM = /usr/bin/cmake -E rm -f
|
||||
|
||||
# Escaping for special characters.
|
||||
EQUALS = =
|
||||
|
||||
# The top-level source directory on which CMake was run.
|
||||
CMAKE_SOURCE_DIR = /home/scott/claude/calog/vendor/libssh2
|
||||
|
||||
# The top-level build directory on which CMake was run.
|
||||
CMAKE_BINARY_DIR = /home/scott/claude/calog/vendor/libssh2/build
|
||||
|
||||
#=============================================================================
|
||||
# Targets provided globally by CMake.
|
||||
|
||||
# Special rule for the target package
|
||||
package: preinstall
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Run CPack packaging tool..."
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && /usr/bin/cpack --config ./CPackConfig.cmake
|
||||
.PHONY : package
|
||||
|
||||
# Special rule for the target package
|
||||
package/fast: package
|
||||
.PHONY : package/fast
|
||||
|
||||
# Special rule for the target package_source
|
||||
package_source:
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Run CPack packaging tool for source..."
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && /usr/bin/cpack --config ./CPackSourceConfig.cmake /home/scott/claude/calog/vendor/libssh2/build/CPackSourceConfig.cmake
|
||||
.PHONY : package_source
|
||||
|
||||
# Special rule for the target package_source
|
||||
package_source/fast: package_source
|
||||
.PHONY : package_source/fast
|
||||
|
||||
# Special rule for the target edit_cache
|
||||
edit_cache:
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running CMake cache editor..."
|
||||
/usr/bin/ccmake -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
|
||||
.PHONY : edit_cache
|
||||
|
||||
# Special rule for the target edit_cache
|
||||
edit_cache/fast: edit_cache
|
||||
.PHONY : edit_cache/fast
|
||||
|
||||
# Special rule for the target rebuild_cache
|
||||
rebuild_cache:
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Running CMake to regenerate build system..."
|
||||
/usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
|
||||
.PHONY : rebuild_cache
|
||||
|
||||
# Special rule for the target rebuild_cache
|
||||
rebuild_cache/fast: rebuild_cache
|
||||
.PHONY : rebuild_cache/fast
|
||||
|
||||
# Special rule for the target list_install_components
|
||||
list_install_components:
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Available install components are: \"Unspecified\""
|
||||
.PHONY : list_install_components
|
||||
|
||||
# Special rule for the target list_install_components
|
||||
list_install_components/fast: list_install_components
|
||||
.PHONY : list_install_components/fast
|
||||
|
||||
# Special rule for the target install
|
||||
install: preinstall
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Install the project..."
|
||||
/usr/bin/cmake -P cmake_install.cmake
|
||||
.PHONY : install
|
||||
|
||||
# Special rule for the target install
|
||||
install/fast: preinstall/fast
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Install the project..."
|
||||
/usr/bin/cmake -P cmake_install.cmake
|
||||
.PHONY : install/fast
|
||||
|
||||
# Special rule for the target install/local
|
||||
install/local: preinstall
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing only the local directory..."
|
||||
/usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
|
||||
.PHONY : install/local
|
||||
|
||||
# Special rule for the target install/local
|
||||
install/local/fast: preinstall/fast
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing only the local directory..."
|
||||
/usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
|
||||
.PHONY : install/local/fast
|
||||
|
||||
# Special rule for the target install/strip
|
||||
install/strip: preinstall
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing the project stripped..."
|
||||
/usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
|
||||
.PHONY : install/strip
|
||||
|
||||
# Special rule for the target install/strip
|
||||
install/strip/fast: preinstall/fast
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --cyan "Installing the project stripped..."
|
||||
/usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
|
||||
.PHONY : install/strip/fast
|
||||
|
||||
# The main all target
|
||||
all: cmake_check_build_system
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(CMAKE_COMMAND) -E cmake_progress_start /home/scott/claude/calog/vendor/libssh2/build/CMakeFiles /home/scott/claude/calog/vendor/libssh2/build/src//CMakeFiles/progress.marks
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 src/all
|
||||
$(CMAKE_COMMAND) -E cmake_progress_start /home/scott/claude/calog/vendor/libssh2/build/CMakeFiles 0
|
||||
.PHONY : all
|
||||
|
||||
# The main clean target
|
||||
clean:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 src/clean
|
||||
.PHONY : clean
|
||||
|
||||
# The main clean target
|
||||
clean/fast: clean
|
||||
.PHONY : clean/fast
|
||||
|
||||
# Prepare targets for installation.
|
||||
preinstall: all
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 src/preinstall
|
||||
.PHONY : preinstall
|
||||
|
||||
# Prepare targets for installation.
|
||||
preinstall/fast:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 src/preinstall
|
||||
.PHONY : preinstall/fast
|
||||
|
||||
# clear depends
|
||||
depend:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
|
||||
.PHONY : depend
|
||||
|
||||
# Convenience name for target.
|
||||
src/CMakeFiles/libssh2_static.dir/rule:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 src/CMakeFiles/libssh2_static.dir/rule
|
||||
.PHONY : src/CMakeFiles/libssh2_static.dir/rule
|
||||
|
||||
# Convenience name for target.
|
||||
libssh2_static: src/CMakeFiles/libssh2_static.dir/rule
|
||||
.PHONY : libssh2_static
|
||||
|
||||
# fast build rule for target.
|
||||
libssh2_static/fast:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/build
|
||||
.PHONY : libssh2_static/fast
|
||||
|
||||
agent.o: agent.c.o
|
||||
.PHONY : agent.o
|
||||
|
||||
# target to build an object file
|
||||
agent.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/agent.c.o
|
||||
.PHONY : agent.c.o
|
||||
|
||||
agent.i: agent.c.i
|
||||
.PHONY : agent.i
|
||||
|
||||
# target to preprocess a source file
|
||||
agent.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/agent.c.i
|
||||
.PHONY : agent.c.i
|
||||
|
||||
agent.s: agent.c.s
|
||||
.PHONY : agent.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
agent.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/agent.c.s
|
||||
.PHONY : agent.c.s
|
||||
|
||||
bcrypt_pbkdf.o: bcrypt_pbkdf.c.o
|
||||
.PHONY : bcrypt_pbkdf.o
|
||||
|
||||
# target to build an object file
|
||||
bcrypt_pbkdf.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.o
|
||||
.PHONY : bcrypt_pbkdf.c.o
|
||||
|
||||
bcrypt_pbkdf.i: bcrypt_pbkdf.c.i
|
||||
.PHONY : bcrypt_pbkdf.i
|
||||
|
||||
# target to preprocess a source file
|
||||
bcrypt_pbkdf.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.i
|
||||
.PHONY : bcrypt_pbkdf.c.i
|
||||
|
||||
bcrypt_pbkdf.s: bcrypt_pbkdf.c.s
|
||||
.PHONY : bcrypt_pbkdf.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
bcrypt_pbkdf.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/bcrypt_pbkdf.c.s
|
||||
.PHONY : bcrypt_pbkdf.c.s
|
||||
|
||||
chacha.o: chacha.c.o
|
||||
.PHONY : chacha.o
|
||||
|
||||
# target to build an object file
|
||||
chacha.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/chacha.c.o
|
||||
.PHONY : chacha.c.o
|
||||
|
||||
chacha.i: chacha.c.i
|
||||
.PHONY : chacha.i
|
||||
|
||||
# target to preprocess a source file
|
||||
chacha.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/chacha.c.i
|
||||
.PHONY : chacha.c.i
|
||||
|
||||
chacha.s: chacha.c.s
|
||||
.PHONY : chacha.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
chacha.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/chacha.c.s
|
||||
.PHONY : chacha.c.s
|
||||
|
||||
channel.o: channel.c.o
|
||||
.PHONY : channel.o
|
||||
|
||||
# target to build an object file
|
||||
channel.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/channel.c.o
|
||||
.PHONY : channel.c.o
|
||||
|
||||
channel.i: channel.c.i
|
||||
.PHONY : channel.i
|
||||
|
||||
# target to preprocess a source file
|
||||
channel.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/channel.c.i
|
||||
.PHONY : channel.c.i
|
||||
|
||||
channel.s: channel.c.s
|
||||
.PHONY : channel.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
channel.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/channel.c.s
|
||||
.PHONY : channel.c.s
|
||||
|
||||
cipher-chachapoly.o: cipher-chachapoly.c.o
|
||||
.PHONY : cipher-chachapoly.o
|
||||
|
||||
# target to build an object file
|
||||
cipher-chachapoly.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.o
|
||||
.PHONY : cipher-chachapoly.c.o
|
||||
|
||||
cipher-chachapoly.i: cipher-chachapoly.c.i
|
||||
.PHONY : cipher-chachapoly.i
|
||||
|
||||
# target to preprocess a source file
|
||||
cipher-chachapoly.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.i
|
||||
.PHONY : cipher-chachapoly.c.i
|
||||
|
||||
cipher-chachapoly.s: cipher-chachapoly.c.s
|
||||
.PHONY : cipher-chachapoly.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
cipher-chachapoly.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/cipher-chachapoly.c.s
|
||||
.PHONY : cipher-chachapoly.c.s
|
||||
|
||||
comp.o: comp.c.o
|
||||
.PHONY : comp.o
|
||||
|
||||
# target to build an object file
|
||||
comp.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/comp.c.o
|
||||
.PHONY : comp.c.o
|
||||
|
||||
comp.i: comp.c.i
|
||||
.PHONY : comp.i
|
||||
|
||||
# target to preprocess a source file
|
||||
comp.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/comp.c.i
|
||||
.PHONY : comp.c.i
|
||||
|
||||
comp.s: comp.c.s
|
||||
.PHONY : comp.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
comp.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/comp.c.s
|
||||
.PHONY : comp.c.s
|
||||
|
||||
crypt.o: crypt.c.o
|
||||
.PHONY : crypt.o
|
||||
|
||||
# target to build an object file
|
||||
crypt.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/crypt.c.o
|
||||
.PHONY : crypt.c.o
|
||||
|
||||
crypt.i: crypt.c.i
|
||||
.PHONY : crypt.i
|
||||
|
||||
# target to preprocess a source file
|
||||
crypt.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/crypt.c.i
|
||||
.PHONY : crypt.c.i
|
||||
|
||||
crypt.s: crypt.c.s
|
||||
.PHONY : crypt.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
crypt.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/crypt.c.s
|
||||
.PHONY : crypt.c.s
|
||||
|
||||
crypto.o: crypto.c.o
|
||||
.PHONY : crypto.o
|
||||
|
||||
# target to build an object file
|
||||
crypto.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/crypto.c.o
|
||||
.PHONY : crypto.c.o
|
||||
|
||||
crypto.i: crypto.c.i
|
||||
.PHONY : crypto.i
|
||||
|
||||
# target to preprocess a source file
|
||||
crypto.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/crypto.c.i
|
||||
.PHONY : crypto.c.i
|
||||
|
||||
crypto.s: crypto.c.s
|
||||
.PHONY : crypto.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
crypto.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/crypto.c.s
|
||||
.PHONY : crypto.c.s
|
||||
|
||||
global.o: global.c.o
|
||||
.PHONY : global.o
|
||||
|
||||
# target to build an object file
|
||||
global.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/global.c.o
|
||||
.PHONY : global.c.o
|
||||
|
||||
global.i: global.c.i
|
||||
.PHONY : global.i
|
||||
|
||||
# target to preprocess a source file
|
||||
global.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/global.c.i
|
||||
.PHONY : global.c.i
|
||||
|
||||
global.s: global.c.s
|
||||
.PHONY : global.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
global.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/global.c.s
|
||||
.PHONY : global.c.s
|
||||
|
||||
hostkey.o: hostkey.c.o
|
||||
.PHONY : hostkey.o
|
||||
|
||||
# target to build an object file
|
||||
hostkey.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/hostkey.c.o
|
||||
.PHONY : hostkey.c.o
|
||||
|
||||
hostkey.i: hostkey.c.i
|
||||
.PHONY : hostkey.i
|
||||
|
||||
# target to preprocess a source file
|
||||
hostkey.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/hostkey.c.i
|
||||
.PHONY : hostkey.c.i
|
||||
|
||||
hostkey.s: hostkey.c.s
|
||||
.PHONY : hostkey.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
hostkey.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/hostkey.c.s
|
||||
.PHONY : hostkey.c.s
|
||||
|
||||
keepalive.o: keepalive.c.o
|
||||
.PHONY : keepalive.o
|
||||
|
||||
# target to build an object file
|
||||
keepalive.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/keepalive.c.o
|
||||
.PHONY : keepalive.c.o
|
||||
|
||||
keepalive.i: keepalive.c.i
|
||||
.PHONY : keepalive.i
|
||||
|
||||
# target to preprocess a source file
|
||||
keepalive.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/keepalive.c.i
|
||||
.PHONY : keepalive.c.i
|
||||
|
||||
keepalive.s: keepalive.c.s
|
||||
.PHONY : keepalive.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
keepalive.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/keepalive.c.s
|
||||
.PHONY : keepalive.c.s
|
||||
|
||||
kex.o: kex.c.o
|
||||
.PHONY : kex.o
|
||||
|
||||
# target to build an object file
|
||||
kex.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/kex.c.o
|
||||
.PHONY : kex.c.o
|
||||
|
||||
kex.i: kex.c.i
|
||||
.PHONY : kex.i
|
||||
|
||||
# target to preprocess a source file
|
||||
kex.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/kex.c.i
|
||||
.PHONY : kex.c.i
|
||||
|
||||
kex.s: kex.c.s
|
||||
.PHONY : kex.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
kex.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/kex.c.s
|
||||
.PHONY : kex.c.s
|
||||
|
||||
knownhost.o: knownhost.c.o
|
||||
.PHONY : knownhost.o
|
||||
|
||||
# target to build an object file
|
||||
knownhost.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/knownhost.c.o
|
||||
.PHONY : knownhost.c.o
|
||||
|
||||
knownhost.i: knownhost.c.i
|
||||
.PHONY : knownhost.i
|
||||
|
||||
# target to preprocess a source file
|
||||
knownhost.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/knownhost.c.i
|
||||
.PHONY : knownhost.c.i
|
||||
|
||||
knownhost.s: knownhost.c.s
|
||||
.PHONY : knownhost.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
knownhost.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/knownhost.c.s
|
||||
.PHONY : knownhost.c.s
|
||||
|
||||
mac.o: mac.c.o
|
||||
.PHONY : mac.o
|
||||
|
||||
# target to build an object file
|
||||
mac.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/mac.c.o
|
||||
.PHONY : mac.c.o
|
||||
|
||||
mac.i: mac.c.i
|
||||
.PHONY : mac.i
|
||||
|
||||
# target to preprocess a source file
|
||||
mac.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/mac.c.i
|
||||
.PHONY : mac.c.i
|
||||
|
||||
mac.s: mac.c.s
|
||||
.PHONY : mac.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
mac.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/mac.c.s
|
||||
.PHONY : mac.c.s
|
||||
|
||||
misc.o: misc.c.o
|
||||
.PHONY : misc.o
|
||||
|
||||
# target to build an object file
|
||||
misc.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/misc.c.o
|
||||
.PHONY : misc.c.o
|
||||
|
||||
misc.i: misc.c.i
|
||||
.PHONY : misc.i
|
||||
|
||||
# target to preprocess a source file
|
||||
misc.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/misc.c.i
|
||||
.PHONY : misc.c.i
|
||||
|
||||
misc.s: misc.c.s
|
||||
.PHONY : misc.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
misc.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/misc.c.s
|
||||
.PHONY : misc.c.s
|
||||
|
||||
packet.o: packet.c.o
|
||||
.PHONY : packet.o
|
||||
|
||||
# target to build an object file
|
||||
packet.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/packet.c.o
|
||||
.PHONY : packet.c.o
|
||||
|
||||
packet.i: packet.c.i
|
||||
.PHONY : packet.i
|
||||
|
||||
# target to preprocess a source file
|
||||
packet.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/packet.c.i
|
||||
.PHONY : packet.c.i
|
||||
|
||||
packet.s: packet.c.s
|
||||
.PHONY : packet.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
packet.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/packet.c.s
|
||||
.PHONY : packet.c.s
|
||||
|
||||
pem.o: pem.c.o
|
||||
.PHONY : pem.o
|
||||
|
||||
# target to build an object file
|
||||
pem.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/pem.c.o
|
||||
.PHONY : pem.c.o
|
||||
|
||||
pem.i: pem.c.i
|
||||
.PHONY : pem.i
|
||||
|
||||
# target to preprocess a source file
|
||||
pem.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/pem.c.i
|
||||
.PHONY : pem.c.i
|
||||
|
||||
pem.s: pem.c.s
|
||||
.PHONY : pem.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
pem.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/pem.c.s
|
||||
.PHONY : pem.c.s
|
||||
|
||||
poly1305.o: poly1305.c.o
|
||||
.PHONY : poly1305.o
|
||||
|
||||
# target to build an object file
|
||||
poly1305.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/poly1305.c.o
|
||||
.PHONY : poly1305.c.o
|
||||
|
||||
poly1305.i: poly1305.c.i
|
||||
.PHONY : poly1305.i
|
||||
|
||||
# target to preprocess a source file
|
||||
poly1305.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/poly1305.c.i
|
||||
.PHONY : poly1305.c.i
|
||||
|
||||
poly1305.s: poly1305.c.s
|
||||
.PHONY : poly1305.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
poly1305.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/poly1305.c.s
|
||||
.PHONY : poly1305.c.s
|
||||
|
||||
publickey.o: publickey.c.o
|
||||
.PHONY : publickey.o
|
||||
|
||||
# target to build an object file
|
||||
publickey.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/publickey.c.o
|
||||
.PHONY : publickey.c.o
|
||||
|
||||
publickey.i: publickey.c.i
|
||||
.PHONY : publickey.i
|
||||
|
||||
# target to preprocess a source file
|
||||
publickey.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/publickey.c.i
|
||||
.PHONY : publickey.c.i
|
||||
|
||||
publickey.s: publickey.c.s
|
||||
.PHONY : publickey.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
publickey.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/publickey.c.s
|
||||
.PHONY : publickey.c.s
|
||||
|
||||
scp.o: scp.c.o
|
||||
.PHONY : scp.o
|
||||
|
||||
# target to build an object file
|
||||
scp.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/scp.c.o
|
||||
.PHONY : scp.c.o
|
||||
|
||||
scp.i: scp.c.i
|
||||
.PHONY : scp.i
|
||||
|
||||
# target to preprocess a source file
|
||||
scp.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/scp.c.i
|
||||
.PHONY : scp.c.i
|
||||
|
||||
scp.s: scp.c.s
|
||||
.PHONY : scp.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
scp.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/scp.c.s
|
||||
.PHONY : scp.c.s
|
||||
|
||||
session.o: session.c.o
|
||||
.PHONY : session.o
|
||||
|
||||
# target to build an object file
|
||||
session.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/session.c.o
|
||||
.PHONY : session.c.o
|
||||
|
||||
session.i: session.c.i
|
||||
.PHONY : session.i
|
||||
|
||||
# target to preprocess a source file
|
||||
session.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/session.c.i
|
||||
.PHONY : session.c.i
|
||||
|
||||
session.s: session.c.s
|
||||
.PHONY : session.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
session.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/session.c.s
|
||||
.PHONY : session.c.s
|
||||
|
||||
sftp.o: sftp.c.o
|
||||
.PHONY : sftp.o
|
||||
|
||||
# target to build an object file
|
||||
sftp.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/sftp.c.o
|
||||
.PHONY : sftp.c.o
|
||||
|
||||
sftp.i: sftp.c.i
|
||||
.PHONY : sftp.i
|
||||
|
||||
# target to preprocess a source file
|
||||
sftp.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/sftp.c.i
|
||||
.PHONY : sftp.c.i
|
||||
|
||||
sftp.s: sftp.c.s
|
||||
.PHONY : sftp.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
sftp.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/sftp.c.s
|
||||
.PHONY : sftp.c.s
|
||||
|
||||
transport.o: transport.c.o
|
||||
.PHONY : transport.o
|
||||
|
||||
# target to build an object file
|
||||
transport.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/transport.c.o
|
||||
.PHONY : transport.c.o
|
||||
|
||||
transport.i: transport.c.i
|
||||
.PHONY : transport.i
|
||||
|
||||
# target to preprocess a source file
|
||||
transport.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/transport.c.i
|
||||
.PHONY : transport.c.i
|
||||
|
||||
transport.s: transport.c.s
|
||||
.PHONY : transport.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
transport.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/transport.c.s
|
||||
.PHONY : transport.c.s
|
||||
|
||||
userauth.o: userauth.c.o
|
||||
.PHONY : userauth.o
|
||||
|
||||
# target to build an object file
|
||||
userauth.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/userauth.c.o
|
||||
.PHONY : userauth.c.o
|
||||
|
||||
userauth.i: userauth.c.i
|
||||
.PHONY : userauth.i
|
||||
|
||||
# target to preprocess a source file
|
||||
userauth.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/userauth.c.i
|
||||
.PHONY : userauth.c.i
|
||||
|
||||
userauth.s: userauth.c.s
|
||||
.PHONY : userauth.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
userauth.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/userauth.c.s
|
||||
.PHONY : userauth.c.s
|
||||
|
||||
userauth_kbd_packet.o: userauth_kbd_packet.c.o
|
||||
.PHONY : userauth_kbd_packet.o
|
||||
|
||||
# target to build an object file
|
||||
userauth_kbd_packet.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.o
|
||||
.PHONY : userauth_kbd_packet.c.o
|
||||
|
||||
userauth_kbd_packet.i: userauth_kbd_packet.c.i
|
||||
.PHONY : userauth_kbd_packet.i
|
||||
|
||||
# target to preprocess a source file
|
||||
userauth_kbd_packet.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.i
|
||||
.PHONY : userauth_kbd_packet.c.i
|
||||
|
||||
userauth_kbd_packet.s: userauth_kbd_packet.c.s
|
||||
.PHONY : userauth_kbd_packet.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
userauth_kbd_packet.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/userauth_kbd_packet.c.s
|
||||
.PHONY : userauth_kbd_packet.c.s
|
||||
|
||||
version.o: version.c.o
|
||||
.PHONY : version.o
|
||||
|
||||
# target to build an object file
|
||||
version.c.o:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/version.c.o
|
||||
.PHONY : version.c.o
|
||||
|
||||
version.i: version.c.i
|
||||
.PHONY : version.i
|
||||
|
||||
# target to preprocess a source file
|
||||
version.c.i:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/version.c.i
|
||||
.PHONY : version.c.i
|
||||
|
||||
version.s: version.c.s
|
||||
.PHONY : version.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
version.c.s:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(MAKE) $(MAKESILENT) -f src/CMakeFiles/libssh2_static.dir/build.make src/CMakeFiles/libssh2_static.dir/version.c.s
|
||||
.PHONY : version.c.s
|
||||
|
||||
# Help Target
|
||||
help:
|
||||
@echo "The following are some of the valid targets for this Makefile:"
|
||||
@echo "... all (the default if no target is provided)"
|
||||
@echo "... clean"
|
||||
@echo "... depend"
|
||||
@echo "... edit_cache"
|
||||
@echo "... install"
|
||||
@echo "... install/local"
|
||||
@echo "... install/strip"
|
||||
@echo "... list_install_components"
|
||||
@echo "... package"
|
||||
@echo "... package_source"
|
||||
@echo "... rebuild_cache"
|
||||
@echo "... libssh2_static"
|
||||
@echo "... agent.o"
|
||||
@echo "... agent.i"
|
||||
@echo "... agent.s"
|
||||
@echo "... bcrypt_pbkdf.o"
|
||||
@echo "... bcrypt_pbkdf.i"
|
||||
@echo "... bcrypt_pbkdf.s"
|
||||
@echo "... chacha.o"
|
||||
@echo "... chacha.i"
|
||||
@echo "... chacha.s"
|
||||
@echo "... channel.o"
|
||||
@echo "... channel.i"
|
||||
@echo "... channel.s"
|
||||
@echo "... cipher-chachapoly.o"
|
||||
@echo "... cipher-chachapoly.i"
|
||||
@echo "... cipher-chachapoly.s"
|
||||
@echo "... comp.o"
|
||||
@echo "... comp.i"
|
||||
@echo "... comp.s"
|
||||
@echo "... crypt.o"
|
||||
@echo "... crypt.i"
|
||||
@echo "... crypt.s"
|
||||
@echo "... crypto.o"
|
||||
@echo "... crypto.i"
|
||||
@echo "... crypto.s"
|
||||
@echo "... global.o"
|
||||
@echo "... global.i"
|
||||
@echo "... global.s"
|
||||
@echo "... hostkey.o"
|
||||
@echo "... hostkey.i"
|
||||
@echo "... hostkey.s"
|
||||
@echo "... keepalive.o"
|
||||
@echo "... keepalive.i"
|
||||
@echo "... keepalive.s"
|
||||
@echo "... kex.o"
|
||||
@echo "... kex.i"
|
||||
@echo "... kex.s"
|
||||
@echo "... knownhost.o"
|
||||
@echo "... knownhost.i"
|
||||
@echo "... knownhost.s"
|
||||
@echo "... mac.o"
|
||||
@echo "... mac.i"
|
||||
@echo "... mac.s"
|
||||
@echo "... misc.o"
|
||||
@echo "... misc.i"
|
||||
@echo "... misc.s"
|
||||
@echo "... packet.o"
|
||||
@echo "... packet.i"
|
||||
@echo "... packet.s"
|
||||
@echo "... pem.o"
|
||||
@echo "... pem.i"
|
||||
@echo "... pem.s"
|
||||
@echo "... poly1305.o"
|
||||
@echo "... poly1305.i"
|
||||
@echo "... poly1305.s"
|
||||
@echo "... publickey.o"
|
||||
@echo "... publickey.i"
|
||||
@echo "... publickey.s"
|
||||
@echo "... scp.o"
|
||||
@echo "... scp.i"
|
||||
@echo "... scp.s"
|
||||
@echo "... session.o"
|
||||
@echo "... session.i"
|
||||
@echo "... session.s"
|
||||
@echo "... sftp.o"
|
||||
@echo "... sftp.i"
|
||||
@echo "... sftp.s"
|
||||
@echo "... transport.o"
|
||||
@echo "... transport.i"
|
||||
@echo "... transport.s"
|
||||
@echo "... userauth.o"
|
||||
@echo "... userauth.i"
|
||||
@echo "... userauth.s"
|
||||
@echo "... userauth_kbd_packet.o"
|
||||
@echo "... userauth_kbd_packet.i"
|
||||
@echo "... userauth_kbd_packet.s"
|
||||
@echo "... version.o"
|
||||
@echo "... version.i"
|
||||
@echo "... version.s"
|
||||
.PHONY : help
|
||||
|
||||
|
||||
|
||||
#=============================================================================
|
||||
# Special targets to cleanup operation of make.
|
||||
|
||||
# Special rule to run CMake to check the build system integrity.
|
||||
# No rule that depends on this can have commands that come from listfiles
|
||||
# because they might be regenerated.
|
||||
cmake_check_build_system:
|
||||
cd /home/scott/claude/calog/vendor/libssh2/build && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
|
||||
.PHONY : cmake_check_build_system
|
||||
|
||||
7
vendor/libssh2/build/src/Makefile.inc.cmake
vendored
Normal file
7
vendor/libssh2/build/src/Makefile.inc.cmake
vendored
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
# Copyright (C) The libssh2 project and its contributors.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
set(CSOURCES agent.c bcrypt_pbkdf.c channel.c comp.c chacha.c cipher-chachapoly.c crypt.c crypto.c global.c hostkey.c keepalive.c kex.c knownhost.c mac.c misc.c packet.c pem.c poly1305.c publickey.c scp.c session.c sftp.c transport.c userauth.c userauth_kbd_packet.c version.c)
|
||||
|
||||
set(HHEADERS chacha.h channel.h cipher-chachapoly.h comp.h crypto.h crypto_config.h libgcrypt.h libssh2_priv.h libssh2_setup.h mac.h mbedtls.h misc.h openssl.h os400qc3.h packet.h poly1305.h session.h sftp.h transport.h userauth.h userauth_kbd_packet.h wincng.h)
|
||||
|
||||
set(EXTRA_DIST agent_win.c blowfish.c libgcrypt.c mbedtls.c openssl.c os400qc3.c wincng.c)
|
||||
96
vendor/libssh2/build/src/cmake_install.cmake
vendored
Normal file
96
vendor/libssh2/build/src/cmake_install.cmake
vendored
Normal file
|
|
@ -0,0 +1,96 @@
|
|||
# Install script for directory: /home/scott/claude/calog/vendor/libssh2/src
|
||||
|
||||
# Set the install prefix
|
||||
if(NOT DEFINED CMAKE_INSTALL_PREFIX)
|
||||
set(CMAKE_INSTALL_PREFIX "/usr/local")
|
||||
endif()
|
||||
string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
|
||||
|
||||
# Set the install configuration name.
|
||||
if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
|
||||
if(BUILD_TYPE)
|
||||
string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
|
||||
CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
|
||||
else()
|
||||
set(CMAKE_INSTALL_CONFIG_NAME "Release")
|
||||
endif()
|
||||
message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
|
||||
endif()
|
||||
|
||||
# Set the component getting installed.
|
||||
if(NOT CMAKE_INSTALL_COMPONENT)
|
||||
if(COMPONENT)
|
||||
message(STATUS "Install component: \"${COMPONENT}\"")
|
||||
set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
|
||||
else()
|
||||
set(CMAKE_INSTALL_COMPONENT)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Install shared libraries without execute permission?
|
||||
if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
|
||||
set(CMAKE_INSTALL_SO_NO_EXE "1")
|
||||
endif()
|
||||
|
||||
# Is this installation the result of a crosscompile?
|
||||
if(NOT DEFINED CMAKE_CROSSCOMPILING)
|
||||
set(CMAKE_CROSSCOMPILING "FALSE")
|
||||
endif()
|
||||
|
||||
# Set default install directory permissions.
|
||||
if(NOT DEFINED CMAKE_OBJDUMP)
|
||||
set(CMAKE_OBJDUMP "/usr/bin/objdump")
|
||||
endif()
|
||||
|
||||
if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT)
|
||||
file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include" TYPE FILE FILES
|
||||
"/home/scott/claude/calog/vendor/libssh2/include/libssh2.h"
|
||||
"/home/scott/claude/calog/vendor/libssh2/include/libssh2_publickey.h"
|
||||
"/home/scott/claude/calog/vendor/libssh2/include/libssh2_sftp.h"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT)
|
||||
file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE STATIC_LIBRARY FILES "/home/scott/claude/calog/vendor/libssh2/build/src/libssh2.a")
|
||||
endif()
|
||||
|
||||
if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT)
|
||||
if(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/cmake/libssh2/libssh2-targets.cmake")
|
||||
file(DIFFERENT _cmake_export_file_changed FILES
|
||||
"$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/cmake/libssh2/libssh2-targets.cmake"
|
||||
"/home/scott/claude/calog/vendor/libssh2/build/src/CMakeFiles/Export/42214405a3257a3f963467afd5bfd32f/libssh2-targets.cmake")
|
||||
if(_cmake_export_file_changed)
|
||||
file(GLOB _cmake_old_config_files "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/cmake/libssh2/libssh2-targets-*.cmake")
|
||||
if(_cmake_old_config_files)
|
||||
string(REPLACE ";" ", " _cmake_old_config_files_text "${_cmake_old_config_files}")
|
||||
message(STATUS "Old export file \"$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/cmake/libssh2/libssh2-targets.cmake\" will be replaced. Removing files [${_cmake_old_config_files_text}].")
|
||||
unset(_cmake_old_config_files_text)
|
||||
file(REMOVE ${_cmake_old_config_files})
|
||||
endif()
|
||||
unset(_cmake_old_config_files)
|
||||
endif()
|
||||
unset(_cmake_export_file_changed)
|
||||
endif()
|
||||
file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/cmake/libssh2" TYPE FILE FILES "/home/scott/claude/calog/vendor/libssh2/build/src/CMakeFiles/Export/42214405a3257a3f963467afd5bfd32f/libssh2-targets.cmake")
|
||||
if(CMAKE_INSTALL_CONFIG_NAME MATCHES "^([Rr][Ee][Ll][Ee][Aa][Ss][Ee])$")
|
||||
file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/cmake/libssh2" TYPE FILE FILES "/home/scott/claude/calog/vendor/libssh2/build/src/CMakeFiles/Export/42214405a3257a3f963467afd5bfd32f/libssh2-targets-release.cmake")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT)
|
||||
file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/cmake/libssh2" TYPE FILE FILES
|
||||
"/home/scott/claude/calog/vendor/libssh2/build/src/libssh2-config.cmake"
|
||||
"/home/scott/claude/calog/vendor/libssh2/cmake/FindLibgcrypt.cmake"
|
||||
"/home/scott/claude/calog/vendor/libssh2/cmake/FindMbedTLS.cmake"
|
||||
"/home/scott/claude/calog/vendor/libssh2/cmake/FindWolfSSL.cmake"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT)
|
||||
file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig" TYPE FILE FILES "/home/scott/claude/calog/vendor/libssh2/build/src/libssh2.pc")
|
||||
endif()
|
||||
|
||||
if(CMAKE_INSTALL_COMPONENT STREQUAL "Unspecified" OR NOT CMAKE_INSTALL_COMPONENT)
|
||||
file(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/cmake/libssh2" TYPE FILE FILES "/home/scott/claude/calog/vendor/libssh2/build/src/libssh2-config-version.cmake")
|
||||
endif()
|
||||
|
||||
65
vendor/libssh2/build/src/libssh2-config-version.cmake
vendored
Normal file
65
vendor/libssh2/build/src/libssh2-config-version.cmake
vendored
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
# This is a basic version file for the Config-mode of find_package().
|
||||
# It is used by write_basic_package_version_file() as input file for configure_file()
|
||||
# to create a version-file which can be installed along a config.cmake file.
|
||||
#
|
||||
# The created file sets PACKAGE_VERSION_EXACT if the current version string and
|
||||
# the requested version string are exactly the same and it sets
|
||||
# PACKAGE_VERSION_COMPATIBLE if the current version is >= requested version,
|
||||
# but only if the requested major version is the same as the current one.
|
||||
# The variable CVF_VERSION must be set before calling configure_file().
|
||||
|
||||
|
||||
set(PACKAGE_VERSION "1.11.1")
|
||||
|
||||
if(PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION)
|
||||
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
||||
else()
|
||||
|
||||
if("1.11.1" MATCHES "^([0-9]+)\\.")
|
||||
set(CVF_VERSION_MAJOR "${CMAKE_MATCH_1}")
|
||||
if(NOT CVF_VERSION_MAJOR VERSION_EQUAL 0)
|
||||
string(REGEX REPLACE "^0+" "" CVF_VERSION_MAJOR "${CVF_VERSION_MAJOR}")
|
||||
endif()
|
||||
else()
|
||||
set(CVF_VERSION_MAJOR "1.11.1")
|
||||
endif()
|
||||
|
||||
if(PACKAGE_FIND_VERSION_RANGE)
|
||||
# both endpoints of the range must have the expected major version
|
||||
math (EXPR CVF_VERSION_MAJOR_NEXT "${CVF_VERSION_MAJOR} + 1")
|
||||
if (NOT PACKAGE_FIND_VERSION_MIN_MAJOR STREQUAL CVF_VERSION_MAJOR
|
||||
OR ((PACKAGE_FIND_VERSION_RANGE_MAX STREQUAL "INCLUDE" AND NOT PACKAGE_FIND_VERSION_MAX_MAJOR STREQUAL CVF_VERSION_MAJOR)
|
||||
OR (PACKAGE_FIND_VERSION_RANGE_MAX STREQUAL "EXCLUDE" AND NOT PACKAGE_FIND_VERSION_MAX VERSION_LESS_EQUAL CVF_VERSION_MAJOR_NEXT)))
|
||||
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
||||
elseif(PACKAGE_FIND_VERSION_MIN_MAJOR STREQUAL CVF_VERSION_MAJOR
|
||||
AND ((PACKAGE_FIND_VERSION_RANGE_MAX STREQUAL "INCLUDE" AND PACKAGE_VERSION VERSION_LESS_EQUAL PACKAGE_FIND_VERSION_MAX)
|
||||
OR (PACKAGE_FIND_VERSION_RANGE_MAX STREQUAL "EXCLUDE" AND PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION_MAX)))
|
||||
set(PACKAGE_VERSION_COMPATIBLE TRUE)
|
||||
else()
|
||||
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
||||
endif()
|
||||
else()
|
||||
if(PACKAGE_FIND_VERSION_MAJOR STREQUAL CVF_VERSION_MAJOR)
|
||||
set(PACKAGE_VERSION_COMPATIBLE TRUE)
|
||||
else()
|
||||
set(PACKAGE_VERSION_COMPATIBLE FALSE)
|
||||
endif()
|
||||
|
||||
if(PACKAGE_FIND_VERSION STREQUAL PACKAGE_VERSION)
|
||||
set(PACKAGE_VERSION_EXACT TRUE)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
||||
# if the installed or the using project don't have CMAKE_SIZEOF_VOID_P set, ignore it:
|
||||
if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "" OR "8" STREQUAL "")
|
||||
return()
|
||||
endif()
|
||||
|
||||
# check that the installed version has the same 32/64bit-ness as the one which is currently searching:
|
||||
if(NOT CMAKE_SIZEOF_VOID_P STREQUAL "8")
|
||||
math(EXPR installedBits "8 * 8")
|
||||
set(PACKAGE_VERSION "${PACKAGE_VERSION} (${installedBits}bit)")
|
||||
set(PACKAGE_VERSION_UNSUITABLE TRUE)
|
||||
endif()
|
||||
31
vendor/libssh2/build/src/libssh2-config.cmake
vendored
Normal file
31
vendor/libssh2/build/src/libssh2-config.cmake
vendored
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
# Copyright (C) The libssh2 project and its contributors.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
include(CMakeFindDependencyMacro)
|
||||
list(PREPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR})
|
||||
|
||||
if("OpenSSL" STREQUAL "OpenSSL")
|
||||
find_dependency(OpenSSL)
|
||||
elseif("OpenSSL" STREQUAL "wolfSSL")
|
||||
find_dependency(WolfSSL)
|
||||
elseif("OpenSSL" STREQUAL "Libgcrypt")
|
||||
find_dependency(Libgcrypt)
|
||||
elseif("OpenSSL" STREQUAL "mbedTLS")
|
||||
find_dependency(MbedTLS)
|
||||
endif()
|
||||
|
||||
if(TRUE)
|
||||
find_dependency(ZLIB)
|
||||
endif()
|
||||
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/libssh2-targets.cmake")
|
||||
|
||||
# Alias for either shared or static library
|
||||
if(NOT TARGET libssh2::libssh2)
|
||||
add_library(libssh2::libssh2 ALIAS libssh2::libssh2_static)
|
||||
endif()
|
||||
|
||||
# Compatibility alias
|
||||
if(NOT TARGET Libssh2::libssh2)
|
||||
add_library(Libssh2::libssh2 ALIAS libssh2::libssh2_static)
|
||||
endif()
|
||||
69
vendor/libssh2/build/src/libssh2-targets.cmake
vendored
Normal file
69
vendor/libssh2/build/src/libssh2-targets.cmake
vendored
Normal file
|
|
@ -0,0 +1,69 @@
|
|||
# Generated by CMake
|
||||
|
||||
if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.8)
|
||||
message(FATAL_ERROR "CMake >= 2.8.0 required")
|
||||
endif()
|
||||
if(CMAKE_VERSION VERSION_LESS "2.8.3")
|
||||
message(FATAL_ERROR "CMake >= 2.8.3 required")
|
||||
endif()
|
||||
cmake_policy(PUSH)
|
||||
cmake_policy(VERSION 2.8.3...3.26)
|
||||
#----------------------------------------------------------------
|
||||
# Generated CMake target import file.
|
||||
#----------------------------------------------------------------
|
||||
|
||||
# Commands may need to know the format version.
|
||||
set(CMAKE_IMPORT_FILE_VERSION 1)
|
||||
|
||||
# Protect against multiple inclusion, which would fail when already imported targets are added once more.
|
||||
set(_cmake_targets_defined "")
|
||||
set(_cmake_targets_not_defined "")
|
||||
set(_cmake_expected_targets "")
|
||||
foreach(_cmake_expected_target IN ITEMS libssh2::libssh2_static)
|
||||
list(APPEND _cmake_expected_targets "${_cmake_expected_target}")
|
||||
if(TARGET "${_cmake_expected_target}")
|
||||
list(APPEND _cmake_targets_defined "${_cmake_expected_target}")
|
||||
else()
|
||||
list(APPEND _cmake_targets_not_defined "${_cmake_expected_target}")
|
||||
endif()
|
||||
endforeach()
|
||||
unset(_cmake_expected_target)
|
||||
if(_cmake_targets_defined STREQUAL _cmake_expected_targets)
|
||||
unset(_cmake_targets_defined)
|
||||
unset(_cmake_targets_not_defined)
|
||||
unset(_cmake_expected_targets)
|
||||
unset(CMAKE_IMPORT_FILE_VERSION)
|
||||
cmake_policy(POP)
|
||||
return()
|
||||
endif()
|
||||
if(NOT _cmake_targets_defined STREQUAL "")
|
||||
string(REPLACE ";" ", " _cmake_targets_defined_text "${_cmake_targets_defined}")
|
||||
string(REPLACE ";" ", " _cmake_targets_not_defined_text "${_cmake_targets_not_defined}")
|
||||
message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_cmake_targets_defined_text}\nTargets not yet defined: ${_cmake_targets_not_defined_text}\n")
|
||||
endif()
|
||||
unset(_cmake_targets_defined)
|
||||
unset(_cmake_targets_not_defined)
|
||||
unset(_cmake_expected_targets)
|
||||
|
||||
|
||||
# Create imported target libssh2::libssh2_static
|
||||
add_library(libssh2::libssh2_static STATIC IMPORTED)
|
||||
|
||||
set_target_properties(libssh2::libssh2_static PROPERTIES
|
||||
INTERFACE_INCLUDE_DIRECTORIES "/home/scott/claude/calog/vendor/libssh2/include"
|
||||
INTERFACE_LINK_LIBRARIES "\$<LINK_ONLY:OpenSSL::Crypto>;/usr/lib/x86_64-linux-gnu/libz.so"
|
||||
)
|
||||
|
||||
# Import target "libssh2::libssh2_static" for configuration "Release"
|
||||
set_property(TARGET libssh2::libssh2_static APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
|
||||
set_target_properties(libssh2::libssh2_static PROPERTIES
|
||||
IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "C"
|
||||
IMPORTED_LOCATION_RELEASE "/home/scott/claude/calog/vendor/libssh2/build/src/libssh2.a"
|
||||
)
|
||||
|
||||
# This file does not depend on other imported targets which have
|
||||
# been exported from the same project but in a separate export set.
|
||||
|
||||
# Commands beyond this point should not need to know the version.
|
||||
set(CMAKE_IMPORT_FILE_VERSION)
|
||||
cmake_policy(POP)
|
||||
21
vendor/libssh2/build/src/libssh2.pc
vendored
Normal file
21
vendor/libssh2/build/src/libssh2.pc
vendored
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
###########################################################################
|
||||
# libssh2 installation details
|
||||
#
|
||||
# Copyright (C) The libssh2 project and its contributors.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
###########################################################################
|
||||
|
||||
prefix=/usr/local
|
||||
exec_prefix=${prefix}
|
||||
libdir=${exec_prefix}/lib
|
||||
includedir=${prefix}/include
|
||||
|
||||
Name: libssh2
|
||||
URL: https://libssh2.org/
|
||||
Description: Library for SSH-based communication
|
||||
Version: 1.11.1
|
||||
Requires: libcrypto
|
||||
Requires.private: libcrypto
|
||||
Libs: -L${libdir} -lssh2 -L/home/scott/claude/calog/vendor/openssl -lcrypto -lz
|
||||
Libs.private: -L/home/scott/claude/calog/vendor/openssl -lcrypto -lz
|
||||
Cflags: -I${includedir}
|
||||
76
vendor/libssh2/build/src/libssh2_config.h
vendored
Normal file
76
vendor/libssh2/build/src/libssh2_config.h
vendored
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
/* Copyright (C) Alexander Lamaison <alexander.lamaison@gmail.com>
|
||||
* Copyright (C) Douglas Gilbert
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms,
|
||||
* with or without modification, are permitted provided
|
||||
* that the following conditions are met:
|
||||
*
|
||||
* Redistributions of source code must retain the above
|
||||
* copyright notice, this list of conditions and the
|
||||
* following disclaimer.
|
||||
*
|
||||
* Redistributions in binary form must reproduce the above
|
||||
* copyright notice, this list of conditions and the following
|
||||
* disclaimer in the documentation and/or other materials
|
||||
* provided with the distribution.
|
||||
*
|
||||
* Neither the name of the copyright holder nor the names
|
||||
* of any other contributors may be used to endorse or
|
||||
* promote products derived from this software without
|
||||
* specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
|
||||
* CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
|
||||
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
|
||||
* USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
|
||||
* OF SUCH DAMAGE.
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-3-Clause
|
||||
*/
|
||||
|
||||
/* Headers */
|
||||
#define HAVE_UNISTD_H
|
||||
#define HAVE_INTTYPES_H
|
||||
#define HAVE_SYS_SELECT_H
|
||||
#define HAVE_SYS_UIO_H
|
||||
#define HAVE_SYS_SOCKET_H
|
||||
#define HAVE_SYS_IOCTL_H
|
||||
#define HAVE_SYS_TIME_H
|
||||
#define HAVE_SYS_UN_H
|
||||
|
||||
/* for example and tests */
|
||||
#define HAVE_ARPA_INET_H
|
||||
#define HAVE_NETINET_IN_H
|
||||
|
||||
/* Functions */
|
||||
#define HAVE_GETTIMEOFDAY
|
||||
#define HAVE_STRTOLL
|
||||
/* #undef HAVE_STRTOI64 */
|
||||
#define HAVE_SNPRINTF
|
||||
#define HAVE_EXPLICIT_BZERO
|
||||
/* #undef HAVE_EXPLICIT_MEMSET */
|
||||
/* #undef HAVE_MEMSET_S */
|
||||
|
||||
#define HAVE_POLL
|
||||
#define HAVE_SELECT
|
||||
|
||||
/* Socket non-blocking support */
|
||||
#define HAVE_O_NONBLOCK
|
||||
/* #undef HAVE_FIONBIO */
|
||||
/* #undef HAVE_IOCTLSOCKET_CASE */
|
||||
/* #undef HAVE_SO_NONBLOCK */
|
||||
|
||||
/* attribute to export symbol */
|
||||
#if defined(LIBSSH2_EXPORTS) && defined(LIBSSH2_LIBRARY)
|
||||
#define LIBSSH2_API __attribute__ ((__visibility__ ("default")))
|
||||
#endif
|
||||
81
vendor/libssh2/cmake/CheckFunctionExistsMayNeedLibrary.cmake
vendored
Normal file
81
vendor/libssh2/cmake/CheckFunctionExistsMayNeedLibrary.cmake
vendored
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
# Copyright (C) Alexander Lamaison <alexander.lamaison@gmail.com>
|
||||
#
|
||||
# Redistribution and use in source and binary forms,
|
||||
# with or without modification, are permitted provided
|
||||
# that the following conditions are met:
|
||||
#
|
||||
# Redistributions of source code must retain the above
|
||||
# copyright notice, this list of conditions and the
|
||||
# following disclaimer.
|
||||
#
|
||||
# Redistributions in binary form must reproduce the above
|
||||
# copyright notice, this list of conditions and the following
|
||||
# disclaimer in the documentation and/or other materials
|
||||
# provided with the distribution.
|
||||
#
|
||||
# Neither the name of the copyright holder nor the names
|
||||
# of any other contributors may be used to endorse or
|
||||
# promote products derived from this software without
|
||||
# specific prior written permission.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
|
||||
# CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
|
||||
# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
|
||||
# USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
|
||||
# OF SUCH DAMAGE.
|
||||
#
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
|
||||
# - check_function_exists_maybe_need_library(<function> <var> [lib1 ... libn])
|
||||
#
|
||||
# Check if function is available for linking, first without extra libraries, and
|
||||
# then, if not found that way, linking in each optional library as well. This
|
||||
# function is similar to autotools AC_SEARCH_LIBS.
|
||||
#
|
||||
# If the function if found, this will define <var>.
|
||||
#
|
||||
# If the function was only found by linking in an additional library, this
|
||||
# will define NEED_LIB_LIBX, where LIBX is the one of lib1 to libn that
|
||||
# makes the function available, in uppercase.
|
||||
#
|
||||
# The following variables may be set before calling this macro to
|
||||
# modify the way the check is run:
|
||||
#
|
||||
# CMAKE_REQUIRED_FLAGS = string of compile command line flags
|
||||
# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
|
||||
# CMAKE_REQUIRED_INCLUDES = list of include directories
|
||||
# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
|
||||
#
|
||||
|
||||
include(CheckFunctionExists)
|
||||
include(CheckLibraryExists)
|
||||
|
||||
function(check_function_exists_may_need_library _function _variable)
|
||||
|
||||
check_function_exists(${_function} ${_variable})
|
||||
|
||||
if(NOT ${_variable})
|
||||
foreach(_lib IN LISTS ARGN)
|
||||
string(TOUPPER ${_lib} _up_lib)
|
||||
# Use new variable to prevent cache from previous step shortcircuiting
|
||||
# new test
|
||||
check_library_exists(${_lib} ${_function} "" HAVE_${_function}_IN_${_lib})
|
||||
if(HAVE_${_function}_IN_${_lib})
|
||||
set(${_variable} 1 CACHE INTERNAL "Function ${_function} found in library ${_lib}")
|
||||
set(NEED_LIB_${_up_lib} 1 CACHE INTERNAL "Need to link ${_lib}")
|
||||
break()
|
||||
endif()
|
||||
endforeach()
|
||||
endif()
|
||||
|
||||
endfunction()
|
||||
95
vendor/libssh2/cmake/CheckNonblockingSocketSupport.cmake
vendored
Normal file
95
vendor/libssh2/cmake/CheckNonblockingSocketSupport.cmake
vendored
Normal file
|
|
@ -0,0 +1,95 @@
|
|||
# Copyright (C) The libssh2 project and its contributors.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
include(CheckCSourceCompiles)
|
||||
|
||||
# - check_nonblocking_socket_support()
|
||||
#
|
||||
# Check for how to set a socket to non-blocking state. There seems to exist
|
||||
# four known different ways, with the one used almost everywhere being POSIX
|
||||
# and XPG3, while the other different ways for different systems (old BSD,
|
||||
# Windows and Amiga).
|
||||
#
|
||||
# One of the following variables will be set indicating the supported
|
||||
# method (if any):
|
||||
# HAVE_O_NONBLOCK
|
||||
# HAVE_FIONBIO
|
||||
# HAVE_IOCTLSOCKET_CASE
|
||||
# HAVE_SO_NONBLOCK
|
||||
#
|
||||
# The following variables may be set before calling this macro to
|
||||
# modify the way the check is run:
|
||||
#
|
||||
# CMAKE_REQUIRED_FLAGS = string of compile command line flags
|
||||
# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
|
||||
# CMAKE_REQUIRED_INCLUDES = list of include directories
|
||||
# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
|
||||
#
|
||||
macro(check_nonblocking_socket_support)
|
||||
# There are two known platforms (AIX 3.x and SunOS 4.1.x) where the
|
||||
# O_NONBLOCK define is found but does not work.
|
||||
check_c_source_compiles("
|
||||
#include <sys/types.h>
|
||||
#include <unistd.h>
|
||||
#include <fcntl.h>
|
||||
|
||||
#if defined(sun) || defined(__sun__) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
|
||||
# if defined(__SVR4) || defined(__srv4__)
|
||||
# define PLATFORM_SOLARIS
|
||||
# else
|
||||
# define PLATFORM_SUNOS4
|
||||
# endif
|
||||
#endif
|
||||
#if (defined(_AIX) || defined(__xlC__)) && !defined(_AIX41)
|
||||
# define PLATFORM_AIX_V3
|
||||
#endif
|
||||
|
||||
#if defined(PLATFORM_SUNOS4) || defined(PLATFORM_AIX_V3) || defined(__BEOS__)
|
||||
#error \"O_NONBLOCK does not work on this platform\"
|
||||
#endif
|
||||
|
||||
int main(void)
|
||||
{
|
||||
int socket = 0;
|
||||
(void)fcntl(socket, F_SETFL, O_NONBLOCK);
|
||||
}"
|
||||
HAVE_O_NONBLOCK)
|
||||
|
||||
if(NOT HAVE_O_NONBLOCK)
|
||||
check_c_source_compiles("/* FIONBIO test (old-style unix) */
|
||||
#include <unistd.h>
|
||||
#include <stropts.h>
|
||||
|
||||
int main(void)
|
||||
{
|
||||
int socket = 0;
|
||||
int flags = 0;
|
||||
(void)ioctl(socket, FIONBIO, &flags);
|
||||
}"
|
||||
HAVE_FIONBIO)
|
||||
|
||||
if(NOT HAVE_FIONBIO)
|
||||
check_c_source_compiles("/* IoctlSocket test (Amiga?) */
|
||||
#include <sys/ioctl.h>
|
||||
|
||||
int main(void)
|
||||
{
|
||||
int socket = 0;
|
||||
(void)IoctlSocket(socket, FIONBIO, (long)1);
|
||||
}"
|
||||
HAVE_IOCTLSOCKET_CASE)
|
||||
|
||||
if(NOT HAVE_IOCTLSOCKET_CASE)
|
||||
check_c_source_compiles("/* SO_NONBLOCK test (BeOS) */
|
||||
#include <socket.h>
|
||||
|
||||
int main(void)
|
||||
{
|
||||
long b = 1;
|
||||
int socket = 0;
|
||||
(void)setsockopt(socket, SOL_SOCKET, SO_NONBLOCK, &b, sizeof(b));
|
||||
}"
|
||||
HAVE_SO_NONBLOCK)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
endmacro()
|
||||
68
vendor/libssh2/cmake/CopyRuntimeDependencies.cmake
vendored
Normal file
68
vendor/libssh2/cmake/CopyRuntimeDependencies.cmake
vendored
Normal file
|
|
@ -0,0 +1,68 @@
|
|||
# Copyright (C) Alexander Lamaison <alexander.lamaison@gmail.com>
|
||||
#
|
||||
# Redistribution and use in source and binary forms,
|
||||
# with or without modification, are permitted provided
|
||||
# that the following conditions are met:
|
||||
#
|
||||
# Redistributions of source code must retain the above
|
||||
# copyright notice, this list of conditions and the
|
||||
# following disclaimer.
|
||||
#
|
||||
# Redistributions in binary form must reproduce the above
|
||||
# copyright notice, this list of conditions and the following
|
||||
# disclaimer in the documentation and/or other materials
|
||||
# provided with the distribution.
|
||||
#
|
||||
# Neither the name of the copyright holder nor the names
|
||||
# of any other contributors may be used to endorse or
|
||||
# promote products derived from this software without
|
||||
# specific prior written permission.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
|
||||
# CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
|
||||
# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
|
||||
# USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
|
||||
# OF SUCH DAMAGE.
|
||||
#
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
include(CMakeParseArguments)
|
||||
|
||||
function(add_target_to_copy_dependencies)
|
||||
set(options)
|
||||
set(oneValueArgs TARGET)
|
||||
set(multiValueArgs DEPENDENCIES BEFORE_TARGETS)
|
||||
cmake_parse_arguments(COPY "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
||||
|
||||
if(NOT COPY_DEPENDENCIES)
|
||||
return()
|
||||
endif()
|
||||
|
||||
# Using a custom target to drive custom commands stops multiple
|
||||
# parallel builds trying to kick off the commands at the same time
|
||||
add_custom_target(${COPY_TARGET})
|
||||
|
||||
foreach(_target IN LISTS COPY_BEFORE_TARGETS)
|
||||
add_dependencies(${_target} ${COPY_TARGET})
|
||||
endforeach()
|
||||
|
||||
foreach(_dependency IN LISTS COPY_DEPENDENCIES)
|
||||
add_custom_command(
|
||||
TARGET ${COPY_TARGET}
|
||||
DEPENDS ${_dependency}
|
||||
# Make directory first otherwise file is copied in place of
|
||||
# directory instead of into it
|
||||
COMMAND ${CMAKE_COMMAND} ARGS -E make_directory "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}"
|
||||
COMMAND ${CMAKE_COMMAND} ARGS -E copy ${_dependency} "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}"
|
||||
VERBATIM)
|
||||
endforeach()
|
||||
endfunction()
|
||||
59
vendor/libssh2/cmake/FindLibgcrypt.cmake
vendored
Normal file
59
vendor/libssh2/cmake/FindLibgcrypt.cmake
vendored
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
# Copyright (C) The libssh2 project and its contributors.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
#
|
||||
###########################################################################
|
||||
# Find the libgcrypt library
|
||||
#
|
||||
# Input variables:
|
||||
#
|
||||
# LIBGCRYPT_INCLUDE_DIR The libgcrypt include directory
|
||||
# LIBGCRYPT_LIBRARY Path to libgcrypt library
|
||||
#
|
||||
# Result variables:
|
||||
#
|
||||
# LIBGCRYPT_FOUND System has libgcrypt
|
||||
# LIBGCRYPT_INCLUDE_DIRS The libgcrypt include directories
|
||||
# LIBGCRYPT_LIBRARIES The libgcrypt library names
|
||||
# LIBGCRYPT_LIBRARY_DIRS The libgcrypt library directories
|
||||
# LIBGCRYPT_CFLAGS Required compiler flags
|
||||
# LIBGCRYPT_VERSION Version of libgcrypt
|
||||
|
||||
if((UNIX OR VCPKG_TOOLCHAIN OR (MINGW AND NOT CMAKE_CROSSCOMPILING)) AND
|
||||
NOT DEFINED LIBGCRYPT_INCLUDE_DIR AND
|
||||
NOT DEFINED LIBGCRYPT_LIBRARY)
|
||||
find_package(PkgConfig QUIET)
|
||||
pkg_check_modules(LIBGCRYPT "libgcrypt")
|
||||
endif()
|
||||
|
||||
if(LIBGCRYPT_FOUND)
|
||||
string(REPLACE ";" " " LIBGCRYPT_CFLAGS "${LIBGCRYPT_CFLAGS}")
|
||||
message(STATUS "Found Libgcrypt (via pkg-config): ${LIBGCRYPT_INCLUDE_DIRS} (found version \"${LIBGCRYPT_VERSION}\")")
|
||||
else()
|
||||
find_path(LIBGCRYPT_INCLUDE_DIR NAMES "gcrypt.h")
|
||||
find_library(LIBGCRYPT_LIBRARY NAMES "gcrypt" "libgcrypt")
|
||||
|
||||
if(LIBGCRYPT_INCLUDE_DIR AND EXISTS "${LIBGCRYPT_INCLUDE_DIR}/gcrypt.h")
|
||||
set(_version_regex "#[\t ]*define[\t ]+GCRYPT_VERSION[\t ]+\"([^\"]*)\"")
|
||||
file(STRINGS "${LIBGCRYPT_INCLUDE_DIR}/gcrypt.h" _version_str REGEX "${_version_regex}")
|
||||
string(REGEX REPLACE "${_version_regex}" "\\1" _version_str "${_version_str}")
|
||||
set(LIBGCRYPT_VERSION "${_version_str}")
|
||||
unset(_version_regex)
|
||||
unset(_version_str)
|
||||
endif()
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(Libgcrypt
|
||||
REQUIRED_VARS
|
||||
LIBGCRYPT_INCLUDE_DIR
|
||||
LIBGCRYPT_LIBRARY
|
||||
VERSION_VAR
|
||||
LIBGCRYPT_VERSION
|
||||
)
|
||||
|
||||
if(LIBGCRYPT_FOUND)
|
||||
set(LIBGCRYPT_INCLUDE_DIRS ${LIBGCRYPT_INCLUDE_DIR})
|
||||
set(LIBGCRYPT_LIBRARIES ${LIBGCRYPT_LIBRARY})
|
||||
endif()
|
||||
|
||||
mark_as_advanced(LIBGCRYPT_INCLUDE_DIR LIBGCRYPT_LIBRARY)
|
||||
endif()
|
||||
69
vendor/libssh2/cmake/FindMbedTLS.cmake
vendored
Normal file
69
vendor/libssh2/cmake/FindMbedTLS.cmake
vendored
Normal file
|
|
@ -0,0 +1,69 @@
|
|||
# Copyright (C) The libssh2 project and its contributors.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
#
|
||||
###########################################################################
|
||||
# Find the mbedtls library
|
||||
#
|
||||
# Input variables:
|
||||
#
|
||||
# MBEDTLS_INCLUDE_DIR The mbedtls include directory
|
||||
# MBEDCRYPTO_LIBRARY Path to mbedcrypto library
|
||||
#
|
||||
# Result variables:
|
||||
#
|
||||
# MBEDTLS_FOUND System has mbedtls
|
||||
# MBEDTLS_INCLUDE_DIRS The mbedtls include directories
|
||||
# MBEDTLS_LIBRARIES The mbedtls library names
|
||||
# MBEDTLS_LIBRARY_DIRS The mbedtls library directories
|
||||
# MBEDTLS_CFLAGS Required compiler flags
|
||||
# MBEDTLS_VERSION Version of mbedtls
|
||||
|
||||
if((UNIX OR VCPKG_TOOLCHAIN OR (MINGW AND NOT CMAKE_CROSSCOMPILING)) AND
|
||||
NOT DEFINED MBEDTLS_INCLUDE_DIR AND
|
||||
NOT DEFINED MBEDCRYPTO_LIBRARY)
|
||||
find_package(PkgConfig QUIET)
|
||||
pkg_check_modules(MBEDTLS "mbedcrypto")
|
||||
endif()
|
||||
|
||||
if(MBEDTLS_FOUND)
|
||||
string(REPLACE ";" " " MBEDTLS_CFLAGS "${MBEDTLS_CFLAGS}")
|
||||
message(STATUS "Found MbedTLS (via pkg-config): ${MBEDTLS_INCLUDE_DIRS} (found version \"${MBEDTLS_VERSION}\")")
|
||||
else()
|
||||
find_path(MBEDTLS_INCLUDE_DIR NAMES "mbedtls/version.h")
|
||||
find_library(MBEDCRYPTO_LIBRARY NAMES "mbedcrypto" "libmbedcrypto")
|
||||
|
||||
if(MBEDTLS_INCLUDE_DIR)
|
||||
if(EXISTS "${MBEDTLS_INCLUDE_DIR}/mbedtls/build_info.h") # 3.x
|
||||
set(_version_header "${MBEDTLS_INCLUDE_DIR}/mbedtls/build_info.h")
|
||||
elseif(EXISTS "${MBEDTLS_INCLUDE_DIR}/mbedtls/version.h") # 2.x
|
||||
set(_version_header "${MBEDTLS_INCLUDE_DIR}/mbedtls/version.h")
|
||||
else()
|
||||
unset(_version_header)
|
||||
endif()
|
||||
if(_version_header)
|
||||
set(_version_regex "#[\t ]*define[\t ]+MBEDTLS_VERSION_STRING[\t ]+\"([0-9.]+)\"")
|
||||
file(STRINGS "${_version_header}" _version_str REGEX "${_version_regex}")
|
||||
string(REGEX REPLACE "${_version_regex}" "\\1" _version_str "${_version_str}")
|
||||
set(MBEDTLS_VERSION "${_version_str}")
|
||||
unset(_version_regex)
|
||||
unset(_version_str)
|
||||
unset(_version_header)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(MbedTLS
|
||||
REQUIRED_VARS
|
||||
MBEDTLS_INCLUDE_DIR
|
||||
MBEDCRYPTO_LIBRARY
|
||||
VERSION_VAR
|
||||
MBEDTLS_VERSION
|
||||
)
|
||||
|
||||
if(MBEDTLS_FOUND)
|
||||
set(MBEDTLS_INCLUDE_DIRS ${MBEDTLS_INCLUDE_DIR})
|
||||
set(MBEDTLS_LIBRARIES ${MBEDCRYPTO_LIBRARY})
|
||||
endif()
|
||||
|
||||
mark_as_advanced(MBEDTLS_INCLUDE_DIR MBEDCRYPTO_LIBRARY)
|
||||
endif()
|
||||
59
vendor/libssh2/cmake/FindWolfSSL.cmake
vendored
Normal file
59
vendor/libssh2/cmake/FindWolfSSL.cmake
vendored
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
# Copyright (C) The libssh2 project and its contributors.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
#
|
||||
###########################################################################
|
||||
# Find the wolfssl library
|
||||
#
|
||||
# Input variables:
|
||||
#
|
||||
# WOLFSSL_INCLUDE_DIR The wolfssl include directory
|
||||
# WOLFSSL_LIBRARY Path to wolfssl library
|
||||
#
|
||||
# Result variables:
|
||||
#
|
||||
# WOLFSSL_FOUND System has wolfssl
|
||||
# WOLFSSL_INCLUDE_DIRS The wolfssl include directories
|
||||
# WOLFSSL_LIBRARIES The wolfssl library names
|
||||
# WOLFSSL_LIBRARY_DIRS The wolfssl library directories
|
||||
# WOLFSSL_CFLAGS Required compiler flags
|
||||
# WOLFSSL_VERSION Version of wolfssl
|
||||
|
||||
if((UNIX OR VCPKG_TOOLCHAIN OR (MINGW AND NOT CMAKE_CROSSCOMPILING)) AND
|
||||
NOT DEFINED WOLFSSL_INCLUDE_DIR AND
|
||||
NOT DEFINED WOLFSSL_LIBRARY)
|
||||
find_package(PkgConfig QUIET)
|
||||
pkg_check_modules(WOLFSSL "wolfssl")
|
||||
endif()
|
||||
|
||||
if(WOLFSSL_FOUND)
|
||||
string(REPLACE ";" " " WOLFSSL_CFLAGS "${WOLFSSL_CFLAGS}")
|
||||
message(STATUS "Found WolfSSL (via pkg-config): ${WOLFSSL_INCLUDE_DIRS} (found version \"${WOLFSSL_VERSION}\")")
|
||||
else()
|
||||
find_path(WOLFSSL_INCLUDE_DIR NAMES "wolfssl/options.h")
|
||||
find_library(WOLFSSL_LIBRARY NAMES "wolfssl")
|
||||
|
||||
if(WOLFSSL_INCLUDE_DIR AND EXISTS "${WOLFSSL_INCLUDE_DIR}/wolfssl/version.h")
|
||||
set(_version_regex "#[\t ]*define[\t ]+LIBWOLFSSL_VERSION_STRING[\t ]+\"([^\"]*)\"")
|
||||
file(STRINGS "${WOLFSSL_INCLUDE_DIR}/wolfssl/version.h" _version_str REGEX "${_version_regex}")
|
||||
string(REGEX REPLACE "${_version_regex}" "\\1" _version_str "${_version_str}")
|
||||
set(WOLFSSL_VERSION "${_version_str}")
|
||||
unset(_version_regex)
|
||||
unset(_version_str)
|
||||
endif()
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(WolfSSL
|
||||
REQUIRED_VARS
|
||||
WOLFSSL_INCLUDE_DIR
|
||||
WOLFSSL_LIBRARY
|
||||
VERSION_VAR
|
||||
WOLFSSL_VERSION
|
||||
)
|
||||
|
||||
if(WOLFSSL_FOUND)
|
||||
set(WOLFSSL_INCLUDE_DIRS ${WOLFSSL_INCLUDE_DIR})
|
||||
set(WOLFSSL_LIBRARIES ${WOLFSSL_LIBRARY})
|
||||
endif()
|
||||
|
||||
mark_as_advanced(WOLFSSL_INCLUDE_DIR WOLFSSL_LIBRARY)
|
||||
endif()
|
||||
247
vendor/libssh2/cmake/PickyWarnings.cmake
vendored
Normal file
247
vendor/libssh2/cmake/PickyWarnings.cmake
vendored
Normal file
|
|
@ -0,0 +1,247 @@
|
|||
# Copyright (C) Viktor Szakats
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
include(CheckCCompilerFlag)
|
||||
|
||||
option(ENABLE_WERROR "Turn compiler warnings into errors" OFF)
|
||||
option(PICKY_COMPILER "Enable picky compiler options" ON)
|
||||
|
||||
if(ENABLE_WERROR)
|
||||
if(MSVC)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /WX")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /WX")
|
||||
else() # llvm/clang and gcc style options
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(MSVC)
|
||||
# Use the highest warning level for Visual Studio.
|
||||
if(PICKY_COMPILER)
|
||||
if(CMAKE_CXX_FLAGS MATCHES "[/-]W[0-4]")
|
||||
string(REGEX REPLACE "[/-]W[0-4]" "/W4" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
|
||||
else()
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4")
|
||||
endif()
|
||||
if(CMAKE_C_FLAGS MATCHES "[/-]W[0-4]")
|
||||
string(REGEX REPLACE "[/-]W[0-4]" "/W4" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
|
||||
else()
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /W4")
|
||||
endif()
|
||||
endif()
|
||||
elseif(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX OR CMAKE_C_COMPILER_ID MATCHES "Clang")
|
||||
|
||||
# https://clang.llvm.org/docs/DiagnosticsReference.html
|
||||
# https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html
|
||||
|
||||
if(NOT CMAKE_CXX_FLAGS MATCHES "-Wall")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")
|
||||
endif()
|
||||
if(NOT CMAKE_C_FLAGS MATCHES "-Wall")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall")
|
||||
endif()
|
||||
|
||||
if(PICKY_COMPILER)
|
||||
|
||||
# WPICKY_ENABLE = Options we want to enable as-is.
|
||||
# WPICKY_DETECT = Options we want to test first and enable if available.
|
||||
|
||||
# Prefer the -Wextra alias with clang.
|
||||
if(CMAKE_C_COMPILER_ID MATCHES "Clang")
|
||||
set(WPICKY_ENABLE "-Wextra")
|
||||
else()
|
||||
set(WPICKY_ENABLE "-W")
|
||||
endif()
|
||||
|
||||
list(APPEND WPICKY_ENABLE
|
||||
-pedantic
|
||||
)
|
||||
|
||||
if(ENABLE_WERROR)
|
||||
list(APPEND WPICKY_ENABLE
|
||||
-pedantic-errors
|
||||
)
|
||||
endif()
|
||||
|
||||
# ----------------------------------
|
||||
# Add new options here, if in doubt:
|
||||
# ----------------------------------
|
||||
set(WPICKY_DETECT
|
||||
)
|
||||
|
||||
# Assume these options always exist with both clang and gcc.
|
||||
# Require clang 3.0 / gcc 2.95 or later.
|
||||
list(APPEND WPICKY_ENABLE
|
||||
-Wbad-function-cast # clang 2.7 gcc 2.95
|
||||
-Wconversion # clang 2.7 gcc 2.95
|
||||
-Winline # clang 1.0 gcc 1.0
|
||||
-Wmissing-declarations # clang 1.0 gcc 2.7
|
||||
-Wmissing-prototypes # clang 1.0 gcc 1.0
|
||||
-Wnested-externs # clang 1.0 gcc 2.7
|
||||
-Wno-long-long # clang 1.0 gcc 2.95
|
||||
-Wno-multichar # clang 1.0 gcc 2.95
|
||||
-Wpointer-arith # clang 1.0 gcc 1.4
|
||||
-Wshadow # clang 1.0 gcc 2.95
|
||||
-Wsign-compare # clang 1.0 gcc 2.95
|
||||
-Wundef # clang 1.0 gcc 2.95
|
||||
-Wunused # clang 1.1 gcc 2.95
|
||||
-Wwrite-strings # clang 1.0 gcc 1.4
|
||||
)
|
||||
|
||||
# Always enable with clang, version dependent with gcc
|
||||
set(WPICKY_COMMON_OLD
|
||||
-Waddress # clang 2.7 gcc 4.3
|
||||
-Wattributes # clang 2.7 gcc 4.1
|
||||
-Wcast-align # clang 1.0 gcc 4.2
|
||||
-Wdeclaration-after-statement # clang 1.0 gcc 3.4
|
||||
-Wdiv-by-zero # clang 2.7 gcc 4.1
|
||||
-Wempty-body # clang 2.7 gcc 4.3
|
||||
-Wendif-labels # clang 1.0 gcc 3.3
|
||||
-Wfloat-equal # clang 1.0 gcc 2.96 (3.0)
|
||||
-Wformat-security # clang 2.7 gcc 4.1
|
||||
-Wignored-qualifiers # clang 2.8 gcc 4.3
|
||||
-Wmissing-field-initializers # clang 2.7 gcc 4.1
|
||||
-Wmissing-noreturn # clang 2.7 gcc 4.1
|
||||
-Wno-format-nonliteral # clang 1.0 gcc 2.96 (3.0)
|
||||
-Wno-system-headers # clang 1.0 gcc 3.0
|
||||
# -Wpadded # clang 2.9 gcc 4.1 # Not used because we cannot change public structs
|
||||
-Wold-style-definition # clang 2.7 gcc 3.4
|
||||
-Wredundant-decls # clang 2.7 gcc 4.1
|
||||
-Wsign-conversion # clang 2.9 gcc 4.3
|
||||
-Wno-error=sign-conversion # FIXME
|
||||
-Wstrict-prototypes # clang 1.0 gcc 3.3
|
||||
# -Wswitch-enum # clang 2.7 gcc 4.1 # Not used because this basically disallows default case
|
||||
-Wtype-limits # clang 2.7 gcc 4.3
|
||||
-Wunreachable-code # clang 2.7 gcc 4.1
|
||||
-Wunused-macros # clang 2.7 gcc 4.1
|
||||
-Wunused-parameter # clang 2.7 gcc 4.1
|
||||
-Wvla # clang 2.8 gcc 4.3
|
||||
)
|
||||
|
||||
set(WPICKY_COMMON
|
||||
-Wdouble-promotion # clang 3.6 gcc 4.6 appleclang 6.3
|
||||
-Wenum-conversion # clang 3.2 gcc 10.0 appleclang 4.6 g++ 11.0
|
||||
-Wpragmas # clang 3.5 gcc 4.1 appleclang 6.0
|
||||
-Wunused-const-variable # clang 3.4 gcc 6.0 appleclang 5.1
|
||||
)
|
||||
|
||||
if(CMAKE_C_COMPILER_ID MATCHES "Clang")
|
||||
list(APPEND WPICKY_ENABLE
|
||||
${WPICKY_COMMON_OLD}
|
||||
-Wshift-sign-overflow # clang 2.9
|
||||
-Wshorten-64-to-32 # clang 1.0
|
||||
-Wlanguage-extension-token # clang 3.0
|
||||
-Wformat=2 # clang 3.0 gcc 4.8
|
||||
)
|
||||
# Enable based on compiler version
|
||||
if((CMAKE_C_COMPILER_ID STREQUAL "Clang" AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 3.6) OR
|
||||
(CMAKE_C_COMPILER_ID STREQUAL "AppleClang" AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 6.3))
|
||||
list(APPEND WPICKY_ENABLE
|
||||
${WPICKY_COMMON}
|
||||
-Wunreachable-code-break # clang 3.5 appleclang 6.0
|
||||
-Wheader-guard # clang 3.4 appleclang 5.1
|
||||
-Wsometimes-uninitialized # clang 3.2 appleclang 4.6
|
||||
)
|
||||
endif()
|
||||
if((CMAKE_C_COMPILER_ID STREQUAL "Clang" AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 3.9) OR
|
||||
(CMAKE_C_COMPILER_ID STREQUAL "AppleClang" AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 8.3))
|
||||
list(APPEND WPICKY_ENABLE
|
||||
-Wcomma # clang 3.9 appleclang 8.3
|
||||
-Wmissing-variable-declarations # clang 3.2 appleclang 4.6
|
||||
)
|
||||
endif()
|
||||
if((CMAKE_C_COMPILER_ID STREQUAL "Clang" AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 7.0) OR
|
||||
(CMAKE_C_COMPILER_ID STREQUAL "AppleClang" AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 10.3))
|
||||
list(APPEND WPICKY_ENABLE
|
||||
-Wassign-enum # clang 7.0 appleclang 10.3
|
||||
-Wextra-semi-stmt # clang 7.0 appleclang 10.3
|
||||
)
|
||||
endif()
|
||||
if((CMAKE_C_COMPILER_ID STREQUAL "Clang" AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 10.0) OR
|
||||
(CMAKE_C_COMPILER_ID STREQUAL "AppleClang" AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 12.4))
|
||||
list(APPEND WPICKY_ENABLE
|
||||
-Wimplicit-fallthrough # clang 4.0 gcc 7.0 appleclang 12.4 # we have silencing markup for clang 10.0 and above only
|
||||
)
|
||||
endif()
|
||||
else() # gcc
|
||||
list(APPEND WPICKY_DETECT
|
||||
${WPICKY_COMMON}
|
||||
)
|
||||
# Enable based on compiler version
|
||||
if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.3)
|
||||
list(APPEND WPICKY_ENABLE
|
||||
${WPICKY_COMMON_OLD}
|
||||
-Wclobbered # gcc 4.3
|
||||
-Wmissing-parameter-type # gcc 4.3
|
||||
-Wold-style-declaration # gcc 4.3
|
||||
-Wstrict-aliasing=3 # gcc 4.0
|
||||
-Wtrampolines # gcc 4.3
|
||||
)
|
||||
endif()
|
||||
if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.5 AND MINGW)
|
||||
list(APPEND WPICKY_ENABLE
|
||||
-Wno-pedantic-ms-format # gcc 4.5 (mingw-only)
|
||||
)
|
||||
endif()
|
||||
if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 4.8)
|
||||
list(APPEND WPICKY_ENABLE
|
||||
-Wformat=2 # clang 3.0 gcc 4.8
|
||||
)
|
||||
endif()
|
||||
if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 5.0)
|
||||
list(APPEND WPICKY_ENABLE
|
||||
-Warray-bounds=2 -ftree-vrp # clang 3.0 gcc 5.0 (clang default: -Warray-bounds)
|
||||
)
|
||||
endif()
|
||||
if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 6.0)
|
||||
list(APPEND WPICKY_ENABLE
|
||||
-Wduplicated-cond # gcc 6.0
|
||||
-Wnull-dereference # clang 3.0 gcc 6.0 (clang default)
|
||||
-fdelete-null-pointer-checks
|
||||
-Wshift-negative-value # clang 3.7 gcc 6.0 (clang default)
|
||||
-Wshift-overflow=2 # clang 3.0 gcc 6.0 (clang default: -Wshift-overflow)
|
||||
)
|
||||
endif()
|
||||
if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 7.0)
|
||||
list(APPEND WPICKY_ENABLE
|
||||
-Walloc-zero # gcc 7.0
|
||||
-Wduplicated-branches # gcc 7.0
|
||||
-Wformat-overflow=2 # gcc 7.0
|
||||
-Wformat-truncation=2 # gcc 7.0
|
||||
-Wimplicit-fallthrough # clang 4.0 gcc 7.0
|
||||
-Wrestrict # gcc 7.0
|
||||
)
|
||||
endif()
|
||||
if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 10.0)
|
||||
list(APPEND WPICKY_ENABLE
|
||||
-Warith-conversion # gcc 10.0
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
#
|
||||
|
||||
unset(WPICKY)
|
||||
|
||||
foreach(_CCOPT IN LISTS WPICKY_ENABLE)
|
||||
set(WPICKY "${WPICKY} ${_CCOPT}")
|
||||
endforeach()
|
||||
|
||||
foreach(_CCOPT IN LISTS WPICKY_DETECT)
|
||||
# surprisingly, CHECK_C_COMPILER_FLAG needs a new variable to store each new
|
||||
# test result in.
|
||||
string(MAKE_C_IDENTIFIER "OPT${_CCOPT}" _optvarname)
|
||||
# GCC only warns about unknown -Wno- options if there are also other diagnostic messages,
|
||||
# so test for the positive form instead
|
||||
string(REPLACE "-Wno-" "-W" _CCOPT_ON "${_CCOPT}")
|
||||
check_c_compiler_flag(${_CCOPT_ON} ${_optvarname})
|
||||
if(${_optvarname})
|
||||
set(WPICKY "${WPICKY} ${_CCOPT}")
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
message(STATUS "Picky compiler options:${WPICKY}")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${WPICKY}")
|
||||
endif()
|
||||
endif()
|
||||
31
vendor/libssh2/cmake/libssh2-config.cmake.in
vendored
Normal file
31
vendor/libssh2/cmake/libssh2-config.cmake.in
vendored
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
# Copyright (C) The libssh2 project and its contributors.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
include(CMakeFindDependencyMacro)
|
||||
list(PREPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR})
|
||||
|
||||
if("@CRYPTO_BACKEND@" STREQUAL "OpenSSL")
|
||||
find_dependency(OpenSSL)
|
||||
elseif("@CRYPTO_BACKEND@" STREQUAL "wolfSSL")
|
||||
find_dependency(WolfSSL)
|
||||
elseif("@CRYPTO_BACKEND@" STREQUAL "Libgcrypt")
|
||||
find_dependency(Libgcrypt)
|
||||
elseif("@CRYPTO_BACKEND@" STREQUAL "mbedTLS")
|
||||
find_dependency(MbedTLS)
|
||||
endif()
|
||||
|
||||
if(@ZLIB_FOUND@)
|
||||
find_dependency(ZLIB)
|
||||
endif()
|
||||
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@-targets.cmake")
|
||||
|
||||
# Alias for either shared or static library
|
||||
if(NOT TARGET @PROJECT_NAME@::@LIB_NAME@)
|
||||
add_library(@PROJECT_NAME@::@LIB_NAME@ ALIAS @PROJECT_NAME@::@LIB_SELECTED@)
|
||||
endif()
|
||||
|
||||
# Compatibility alias
|
||||
if(NOT TARGET Libssh2::@LIB_NAME@)
|
||||
add_library(Libssh2::@LIB_NAME@ ALIAS @PROJECT_NAME@::@LIB_SELECTED@)
|
||||
endif()
|
||||
348
vendor/libssh2/compile
vendored
Executable file
348
vendor/libssh2/compile
vendored
Executable file
|
|
@ -0,0 +1,348 @@
|
|||
#! /bin/sh
|
||||
# Wrapper for compilers which do not understand '-c -o'.
|
||||
|
||||
scriptversion=2018-03-07.03; # UTC
|
||||
|
||||
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||
# Written by Tom Tromey <tromey@cygnus.com>.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2, or (at your option)
|
||||
# any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
# As a special exception to the GNU General Public License, if you
|
||||
# distribute this file as part of a program that contains a
|
||||
# configuration script generated by Autoconf, you may include it under
|
||||
# the same distribution terms that you use for the rest of that program.
|
||||
|
||||
# This file is maintained in Automake, please report
|
||||
# bugs to <bug-automake@gnu.org> or send patches to
|
||||
# <automake-patches@gnu.org>.
|
||||
|
||||
nl='
|
||||
'
|
||||
|
||||
# We need space, tab and new line, in precisely that order. Quoting is
|
||||
# there to prevent tools from complaining about whitespace usage.
|
||||
IFS=" "" $nl"
|
||||
|
||||
file_conv=
|
||||
|
||||
# func_file_conv build_file lazy
|
||||
# Convert a $build file to $host form and store it in $file
|
||||
# Currently only supports Windows hosts. If the determined conversion
|
||||
# type is listed in (the comma separated) LAZY, no conversion will
|
||||
# take place.
|
||||
func_file_conv ()
|
||||
{
|
||||
file=$1
|
||||
case $file in
|
||||
/ | /[!/]*) # absolute file, and not a UNC file
|
||||
if test -z "$file_conv"; then
|
||||
# lazily determine how to convert abs files
|
||||
case `uname -s` in
|
||||
MINGW*)
|
||||
file_conv=mingw
|
||||
;;
|
||||
CYGWIN* | MSYS*)
|
||||
file_conv=cygwin
|
||||
;;
|
||||
*)
|
||||
file_conv=wine
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
case $file_conv/,$2, in
|
||||
*,$file_conv,*)
|
||||
;;
|
||||
mingw/*)
|
||||
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
|
||||
;;
|
||||
cygwin/* | msys/*)
|
||||
file=`cygpath -m "$file" || echo "$file"`
|
||||
;;
|
||||
wine/*)
|
||||
file=`winepath -w "$file" || echo "$file"`
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
# func_cl_dashL linkdir
|
||||
# Make cl look for libraries in LINKDIR
|
||||
func_cl_dashL ()
|
||||
{
|
||||
func_file_conv "$1"
|
||||
if test -z "$lib_path"; then
|
||||
lib_path=$file
|
||||
else
|
||||
lib_path="$lib_path;$file"
|
||||
fi
|
||||
linker_opts="$linker_opts -LIBPATH:$file"
|
||||
}
|
||||
|
||||
# func_cl_dashl library
|
||||
# Do a library search-path lookup for cl
|
||||
func_cl_dashl ()
|
||||
{
|
||||
lib=$1
|
||||
found=no
|
||||
save_IFS=$IFS
|
||||
IFS=';'
|
||||
for dir in $lib_path $LIB
|
||||
do
|
||||
IFS=$save_IFS
|
||||
if $shared && test -f "$dir/$lib.dll.lib"; then
|
||||
found=yes
|
||||
lib=$dir/$lib.dll.lib
|
||||
break
|
||||
fi
|
||||
if test -f "$dir/$lib.lib"; then
|
||||
found=yes
|
||||
lib=$dir/$lib.lib
|
||||
break
|
||||
fi
|
||||
if test -f "$dir/lib$lib.a"; then
|
||||
found=yes
|
||||
lib=$dir/lib$lib.a
|
||||
break
|
||||
fi
|
||||
done
|
||||
IFS=$save_IFS
|
||||
|
||||
if test "$found" != yes; then
|
||||
lib=$lib.lib
|
||||
fi
|
||||
}
|
||||
|
||||
# func_cl_wrapper cl arg...
|
||||
# Adjust compile command to suit cl
|
||||
func_cl_wrapper ()
|
||||
{
|
||||
# Assume a capable shell
|
||||
lib_path=
|
||||
shared=:
|
||||
linker_opts=
|
||||
for arg
|
||||
do
|
||||
if test -n "$eat"; then
|
||||
eat=
|
||||
else
|
||||
case $1 in
|
||||
-o)
|
||||
# configure might choose to run compile as 'compile cc -o foo foo.c'.
|
||||
eat=1
|
||||
case $2 in
|
||||
*.o | *.[oO][bB][jJ])
|
||||
func_file_conv "$2"
|
||||
set x "$@" -Fo"$file"
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
func_file_conv "$2"
|
||||
set x "$@" -Fe"$file"
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
-I)
|
||||
eat=1
|
||||
func_file_conv "$2" mingw
|
||||
set x "$@" -I"$file"
|
||||
shift
|
||||
;;
|
||||
-I*)
|
||||
func_file_conv "${1#-I}" mingw
|
||||
set x "$@" -I"$file"
|
||||
shift
|
||||
;;
|
||||
-l)
|
||||
eat=1
|
||||
func_cl_dashl "$2"
|
||||
set x "$@" "$lib"
|
||||
shift
|
||||
;;
|
||||
-l*)
|
||||
func_cl_dashl "${1#-l}"
|
||||
set x "$@" "$lib"
|
||||
shift
|
||||
;;
|
||||
-L)
|
||||
eat=1
|
||||
func_cl_dashL "$2"
|
||||
;;
|
||||
-L*)
|
||||
func_cl_dashL "${1#-L}"
|
||||
;;
|
||||
-static)
|
||||
shared=false
|
||||
;;
|
||||
-Wl,*)
|
||||
arg=${1#-Wl,}
|
||||
save_ifs="$IFS"; IFS=','
|
||||
for flag in $arg; do
|
||||
IFS="$save_ifs"
|
||||
linker_opts="$linker_opts $flag"
|
||||
done
|
||||
IFS="$save_ifs"
|
||||
;;
|
||||
-Xlinker)
|
||||
eat=1
|
||||
linker_opts="$linker_opts $2"
|
||||
;;
|
||||
-*)
|
||||
set x "$@" "$1"
|
||||
shift
|
||||
;;
|
||||
*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
|
||||
func_file_conv "$1"
|
||||
set x "$@" -Tp"$file"
|
||||
shift
|
||||
;;
|
||||
*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
|
||||
func_file_conv "$1" mingw
|
||||
set x "$@" "$file"
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
set x "$@" "$1"
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
shift
|
||||
done
|
||||
if test -n "$linker_opts"; then
|
||||
linker_opts="-link$linker_opts"
|
||||
fi
|
||||
exec "$@" $linker_opts
|
||||
exit 1
|
||||
}
|
||||
|
||||
eat=
|
||||
|
||||
case $1 in
|
||||
'')
|
||||
echo "$0: No command. Try '$0 --help' for more information." 1>&2
|
||||
exit 1;
|
||||
;;
|
||||
-h | --h*)
|
||||
cat <<\EOF
|
||||
Usage: compile [--help] [--version] PROGRAM [ARGS]
|
||||
|
||||
Wrapper for compilers which do not understand '-c -o'.
|
||||
Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
|
||||
arguments, and rename the output as expected.
|
||||
|
||||
If you are trying to build a whole package this is not the
|
||||
right script to run: please start by reading the file 'INSTALL'.
|
||||
|
||||
Report bugs to <bug-automake@gnu.org>.
|
||||
EOF
|
||||
exit $?
|
||||
;;
|
||||
-v | --v*)
|
||||
echo "compile $scriptversion"
|
||||
exit $?
|
||||
;;
|
||||
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
|
||||
icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
|
||||
func_cl_wrapper "$@" # Doesn't return...
|
||||
;;
|
||||
esac
|
||||
|
||||
ofile=
|
||||
cfile=
|
||||
|
||||
for arg
|
||||
do
|
||||
if test -n "$eat"; then
|
||||
eat=
|
||||
else
|
||||
case $1 in
|
||||
-o)
|
||||
# configure might choose to run compile as 'compile cc -o foo foo.c'.
|
||||
# So we strip '-o arg' only if arg is an object.
|
||||
eat=1
|
||||
case $2 in
|
||||
*.o | *.obj)
|
||||
ofile=$2
|
||||
;;
|
||||
*)
|
||||
set x "$@" -o "$2"
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*.c)
|
||||
cfile=$1
|
||||
set x "$@" "$1"
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
set x "$@" "$1"
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
shift
|
||||
done
|
||||
|
||||
if test -z "$ofile" || test -z "$cfile"; then
|
||||
# If no '-o' option was seen then we might have been invoked from a
|
||||
# pattern rule where we don't need one. That is ok -- this is a
|
||||
# normal compilation that the losing compiler can handle. If no
|
||||
# '.c' file was seen then we are probably linking. That is also
|
||||
# ok.
|
||||
exec "$@"
|
||||
fi
|
||||
|
||||
# Name of file we expect compiler to create.
|
||||
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
|
||||
|
||||
# Create the lock directory.
|
||||
# Note: use '[/\\:.-]' here to ensure that we don't use the same name
|
||||
# that we are using for the .o file. Also, base the name on the expected
|
||||
# object file name, since that is what matters with a parallel build.
|
||||
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
|
||||
while true; do
|
||||
if mkdir "$lockdir" >/dev/null 2>&1; then
|
||||
break
|
||||
fi
|
||||
sleep 1
|
||||
done
|
||||
# FIXME: race condition here if user kills between mkdir and trap.
|
||||
trap "rmdir '$lockdir'; exit 1" 1 2 15
|
||||
|
||||
# Run the compile.
|
||||
"$@"
|
||||
ret=$?
|
||||
|
||||
if test -f "$cofile"; then
|
||||
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
|
||||
elif test -f "${cofile}bj"; then
|
||||
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
|
||||
fi
|
||||
|
||||
rmdir "$lockdir"
|
||||
exit $ret
|
||||
|
||||
# Local Variables:
|
||||
# mode: shell-script
|
||||
# sh-indentation: 2
|
||||
# eval: (add-hook 'before-save-hook 'time-stamp)
|
||||
# time-stamp-start: "scriptversion="
|
||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||
# time-stamp-time-zone: "UTC0"
|
||||
# time-stamp-end: "; # UTC"
|
||||
# End:
|
||||
1754
vendor/libssh2/config.guess
vendored
Executable file
1754
vendor/libssh2/config.guess
vendored
Executable file
File diff suppressed because it is too large
Load diff
662
vendor/libssh2/config.rpath
vendored
Executable file
662
vendor/libssh2/config.rpath
vendored
Executable file
|
|
@ -0,0 +1,662 @@
|
|||
#! /bin/sh
|
||||
# Output a system dependent set of variables, describing how to set the
|
||||
# run time search path of shared libraries in an executable.
|
||||
#
|
||||
# Copyright 1996-2006 Free Software Foundation, Inc.
|
||||
# Taken from GNU libtool, 2001
|
||||
# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
|
||||
#
|
||||
# This file is free software; the Free Software Foundation gives
|
||||
# unlimited permission to copy and/or distribute it, with or without
|
||||
# modifications, as long as this notice is preserved.
|
||||
#
|
||||
# The first argument passed to this file is the canonical host specification,
|
||||
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
|
||||
# or
|
||||
# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
|
||||
# The environment variables CC, GCC, LDFLAGS, LD, with_gnu_ld
|
||||
# should be set by the caller.
|
||||
#
|
||||
# The set of defined variables is at the end of this script.
|
||||
|
||||
# Known limitations:
|
||||
# - On IRIX 6.5 with CC="cc", the run time search patch must not be longer
|
||||
# than 256 bytes, otherwise the compiler driver will dump core. The only
|
||||
# known workaround is to choose shorter directory names for the build
|
||||
# directory and/or the installation directory.
|
||||
#
|
||||
# SPDX-License-Identifier: FSFULLR
|
||||
|
||||
# All known linkers require a `.a' archive for static linking (except MSVC,
|
||||
# which needs '.lib').
|
||||
libext=a
|
||||
shrext=.so
|
||||
|
||||
host="$1"
|
||||
host_cpu=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
|
||||
host_vendor=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
|
||||
host_os=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
|
||||
|
||||
# Code taken from libtool.m4's _LT_CC_BASENAME.
|
||||
|
||||
for cc_temp in $CC""; do
|
||||
case $cc_temp in
|
||||
compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
|
||||
distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
|
||||
\-*) ;;
|
||||
*) break;;
|
||||
esac
|
||||
done
|
||||
cc_basename=`echo "$cc_temp" | sed -e 's%^.*/%%'`
|
||||
|
||||
# Code taken from libtool.m4's AC_LIBTOOL_PROG_COMPILER_PIC.
|
||||
|
||||
wl=
|
||||
if test "$GCC" = yes; then
|
||||
wl='-Wl,'
|
||||
else
|
||||
case "$host_os" in
|
||||
aix*)
|
||||
wl='-Wl,'
|
||||
;;
|
||||
darwin*)
|
||||
case $cc_basename in
|
||||
xlc*)
|
||||
wl='-Wl,'
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
mingw* | pw32* | os2*)
|
||||
;;
|
||||
hpux9* | hpux10* | hpux11*)
|
||||
wl='-Wl,'
|
||||
;;
|
||||
irix5* | irix6* | nonstopux*)
|
||||
wl='-Wl,'
|
||||
;;
|
||||
newsos6)
|
||||
;;
|
||||
linux*)
|
||||
case $cc_basename in
|
||||
icc* | ecc*)
|
||||
wl='-Wl,'
|
||||
;;
|
||||
pgcc | pgf77 | pgf90)
|
||||
wl='-Wl,'
|
||||
;;
|
||||
ccc*)
|
||||
wl='-Wl,'
|
||||
;;
|
||||
como)
|
||||
wl='-lopt='
|
||||
;;
|
||||
*)
|
||||
case `$CC -V 2>&1 | sed 5q` in
|
||||
*Sun\ C*)
|
||||
wl='-Wl,'
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
osf3* | osf4* | osf5*)
|
||||
wl='-Wl,'
|
||||
;;
|
||||
sco3.2v5*)
|
||||
;;
|
||||
solaris*)
|
||||
wl='-Wl,'
|
||||
;;
|
||||
sunos4*)
|
||||
wl='-Qoption ld '
|
||||
;;
|
||||
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
|
||||
wl='-Wl,'
|
||||
;;
|
||||
sysv4*MP*)
|
||||
;;
|
||||
unicos*)
|
||||
wl='-Wl,'
|
||||
;;
|
||||
uts4*)
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
# Code taken from libtool.m4's AC_LIBTOOL_PROG_LD_SHLIBS.
|
||||
|
||||
hardcode_libdir_flag_spec=
|
||||
hardcode_libdir_separator=
|
||||
hardcode_direct=no
|
||||
hardcode_minus_L=no
|
||||
|
||||
case "$host_os" in
|
||||
cygwin* | mingw* | pw32*)
|
||||
# FIXME: the MSVC++ port hasn't been tested in a loooong time
|
||||
# When not using gcc, we currently assume that we are using
|
||||
# Microsoft Visual C++.
|
||||
if test "$GCC" != yes; then
|
||||
with_gnu_ld=no
|
||||
fi
|
||||
;;
|
||||
interix*)
|
||||
# we just hope/assume this is gcc and not c89 (= MSVC++)
|
||||
with_gnu_ld=yes
|
||||
;;
|
||||
openbsd*)
|
||||
with_gnu_ld=no
|
||||
;;
|
||||
esac
|
||||
|
||||
ld_shlibs=yes
|
||||
if test "$with_gnu_ld" = yes; then
|
||||
# Set some defaults for GNU ld with shared library support. These
|
||||
# are reset later if shared libraries are not supported. Putting them
|
||||
# here allows them to be overridden if necessary.
|
||||
# Unlike libtool, we use -rpath here, not --rpath, since the documented
|
||||
# option of GNU ld is called -rpath, not --rpath.
|
||||
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
|
||||
case "$host_os" in
|
||||
aix3* | aix4* | aix5*)
|
||||
# On AIX/PPC, the GNU linker is very broken
|
||||
if test "$host_cpu" != ia64; then
|
||||
ld_shlibs=no
|
||||
fi
|
||||
;;
|
||||
amigaos*)
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
hardcode_minus_L=yes
|
||||
# Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
|
||||
# that the semantics of dynamic libraries on AmigaOS, at least up
|
||||
# to version 4, is to share data among multiple programs linked
|
||||
# with the same dynamic library. Since this doesn't match the
|
||||
# behavior of shared libraries on other platforms, we cannot use
|
||||
# them.
|
||||
ld_shlibs=no
|
||||
;;
|
||||
beos*)
|
||||
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
|
||||
:
|
||||
else
|
||||
ld_shlibs=no
|
||||
fi
|
||||
;;
|
||||
cygwin* | mingw* | pw32*)
|
||||
# hardcode_libdir_flag_spec is actually meaningless, as there is
|
||||
# no search path for DLLs.
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
|
||||
:
|
||||
else
|
||||
ld_shlibs=no
|
||||
fi
|
||||
;;
|
||||
interix3*)
|
||||
hardcode_direct=no
|
||||
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
|
||||
;;
|
||||
linux*)
|
||||
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
|
||||
:
|
||||
else
|
||||
ld_shlibs=no
|
||||
fi
|
||||
;;
|
||||
netbsd*)
|
||||
;;
|
||||
solaris*)
|
||||
if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then
|
||||
ld_shlibs=no
|
||||
elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
|
||||
:
|
||||
else
|
||||
ld_shlibs=no
|
||||
fi
|
||||
;;
|
||||
sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
|
||||
case `$LD -v 2>&1` in
|
||||
*\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)
|
||||
ld_shlibs=no
|
||||
;;
|
||||
*)
|
||||
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
|
||||
hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`'
|
||||
else
|
||||
ld_shlibs=no
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
sunos4*)
|
||||
hardcode_direct=yes
|
||||
;;
|
||||
*)
|
||||
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
|
||||
:
|
||||
else
|
||||
ld_shlibs=no
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
if test "$ld_shlibs" = no; then
|
||||
hardcode_libdir_flag_spec=
|
||||
fi
|
||||
else
|
||||
case "$host_os" in
|
||||
aix3*)
|
||||
# Note: this linker hardcodes the directories in LIBPATH if there
|
||||
# are no directories specified by -L.
|
||||
hardcode_minus_L=yes
|
||||
if test "$GCC" = yes; then
|
||||
# Neither direct hardcoding nor static linking is supported with a
|
||||
# broken collect2.
|
||||
hardcode_direct=unsupported
|
||||
fi
|
||||
;;
|
||||
aix4* | aix5*)
|
||||
if test "$host_cpu" = ia64; then
|
||||
# On IA64, the linker does run time linking by default, so we don't
|
||||
# have to do anything special.
|
||||
aix_use_runtimelinking=no
|
||||
else
|
||||
aix_use_runtimelinking=no
|
||||
# Test if we are trying to use run time linking or normal
|
||||
# AIX style linking. If -brtl is somewhere in LDFLAGS, we
|
||||
# need to do runtime linking.
|
||||
case $host_os in aix4.[23]|aix4.[23].*|aix5*)
|
||||
for ld_flag in $LDFLAGS; do
|
||||
if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
|
||||
aix_use_runtimelinking=yes
|
||||
break
|
||||
fi
|
||||
done
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
hardcode_direct=yes
|
||||
hardcode_libdir_separator=':'
|
||||
if test "$GCC" = yes; then
|
||||
case $host_os in aix4.[012]|aix4.[012].*)
|
||||
collect2name=`${CC} -print-prog-name=collect2`
|
||||
if test -f "$collect2name" && \
|
||||
strings "$collect2name" | grep resolve_lib_name >/dev/null
|
||||
then
|
||||
# We have reworked collect2
|
||||
hardcode_direct=yes
|
||||
else
|
||||
# We have old collect2
|
||||
hardcode_direct=unsupported
|
||||
hardcode_minus_L=yes
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
hardcode_libdir_separator=
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
# Begin _LT_AC_SYS_LIBPATH_AIX.
|
||||
echo 'int main () { return 0; }' > conftest.c
|
||||
${CC} ${LDFLAGS} conftest.c -o conftest
|
||||
aix_libpath=`dump -H conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
|
||||
}'`
|
||||
if test -z "$aix_libpath"; then
|
||||
aix_libpath=`dump -HX64 conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
|
||||
}'`
|
||||
fi
|
||||
if test -z "$aix_libpath"; then
|
||||
aix_libpath="/usr/lib:/lib"
|
||||
fi
|
||||
rm -f conftest.c conftest
|
||||
# End _LT_AC_SYS_LIBPATH_AIX.
|
||||
if test "$aix_use_runtimelinking" = yes; then
|
||||
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
|
||||
else
|
||||
if test "$host_cpu" = ia64; then
|
||||
hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
|
||||
else
|
||||
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
amigaos*)
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
hardcode_minus_L=yes
|
||||
# see comment about different semantics on the GNU ld section
|
||||
ld_shlibs=no
|
||||
;;
|
||||
bsdi[45]*)
|
||||
;;
|
||||
cygwin* | mingw* | pw32*)
|
||||
# When not using gcc, we currently assume that we are using
|
||||
# Microsoft Visual C++.
|
||||
# hardcode_libdir_flag_spec is actually meaningless, as there is
|
||||
# no search path for DLLs.
|
||||
hardcode_libdir_flag_spec=' '
|
||||
libext=lib
|
||||
;;
|
||||
darwin* | rhapsody*)
|
||||
hardcode_direct=no
|
||||
if test "$GCC" = yes ; then
|
||||
:
|
||||
else
|
||||
case $cc_basename in
|
||||
xlc*)
|
||||
;;
|
||||
*)
|
||||
ld_shlibs=no
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
;;
|
||||
dgux*)
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
;;
|
||||
freebsd1*)
|
||||
ld_shlibs=no
|
||||
;;
|
||||
freebsd2.2*)
|
||||
hardcode_libdir_flag_spec='-R$libdir'
|
||||
hardcode_direct=yes
|
||||
;;
|
||||
freebsd2*)
|
||||
hardcode_direct=yes
|
||||
hardcode_minus_L=yes
|
||||
;;
|
||||
freebsd* | kfreebsd*-gnu | dragonfly*)
|
||||
hardcode_libdir_flag_spec='-R$libdir'
|
||||
hardcode_direct=yes
|
||||
;;
|
||||
hpux9*)
|
||||
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
|
||||
hardcode_libdir_separator=:
|
||||
hardcode_direct=yes
|
||||
# hardcode_minus_L: Not really in the search PATH,
|
||||
# but as the default location of the library.
|
||||
hardcode_minus_L=yes
|
||||
;;
|
||||
hpux10*)
|
||||
if test "$with_gnu_ld" = no; then
|
||||
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
|
||||
hardcode_libdir_separator=:
|
||||
hardcode_direct=yes
|
||||
# hardcode_minus_L: Not really in the search PATH,
|
||||
# but as the default location of the library.
|
||||
hardcode_minus_L=yes
|
||||
fi
|
||||
;;
|
||||
hpux11*)
|
||||
if test "$with_gnu_ld" = no; then
|
||||
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
|
||||
hardcode_libdir_separator=:
|
||||
case $host_cpu in
|
||||
hppa*64*|ia64*)
|
||||
hardcode_direct=no
|
||||
;;
|
||||
*)
|
||||
hardcode_direct=yes
|
||||
# hardcode_minus_L: Not really in the search PATH,
|
||||
# but as the default location of the library.
|
||||
hardcode_minus_L=yes
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
;;
|
||||
irix5* | irix6* | nonstopux*)
|
||||
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
|
||||
hardcode_libdir_separator=:
|
||||
;;
|
||||
netbsd*)
|
||||
hardcode_libdir_flag_spec='-R$libdir'
|
||||
hardcode_direct=yes
|
||||
;;
|
||||
newsos6)
|
||||
hardcode_direct=yes
|
||||
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
|
||||
hardcode_libdir_separator=:
|
||||
;;
|
||||
openbsd*)
|
||||
hardcode_direct=yes
|
||||
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
|
||||
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
|
||||
else
|
||||
case "$host_os" in
|
||||
openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
|
||||
hardcode_libdir_flag_spec='-R$libdir'
|
||||
;;
|
||||
*)
|
||||
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
;;
|
||||
os2*)
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
hardcode_minus_L=yes
|
||||
;;
|
||||
osf3*)
|
||||
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
|
||||
hardcode_libdir_separator=:
|
||||
;;
|
||||
osf4* | osf5*)
|
||||
if test "$GCC" = yes; then
|
||||
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
|
||||
else
|
||||
# Both cc and cxx compiler support -rpath directly
|
||||
hardcode_libdir_flag_spec='-rpath $libdir'
|
||||
fi
|
||||
hardcode_libdir_separator=:
|
||||
;;
|
||||
solaris*)
|
||||
hardcode_libdir_flag_spec='-R$libdir'
|
||||
;;
|
||||
sunos4*)
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
hardcode_direct=yes
|
||||
hardcode_minus_L=yes
|
||||
;;
|
||||
sysv4)
|
||||
case $host_vendor in
|
||||
sni)
|
||||
hardcode_direct=yes # is this really true???
|
||||
;;
|
||||
siemens)
|
||||
hardcode_direct=no
|
||||
;;
|
||||
motorola)
|
||||
hardcode_direct=no #Motorola manual says yes, but my tests say they lie
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
sysv4.3*)
|
||||
;;
|
||||
sysv4*MP*)
|
||||
if test -d /usr/nec; then
|
||||
ld_shlibs=yes
|
||||
fi
|
||||
;;
|
||||
sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7*)
|
||||
;;
|
||||
sysv5* | sco3.2v5* | sco5v6*)
|
||||
hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`'
|
||||
hardcode_libdir_separator=':'
|
||||
;;
|
||||
uts4*)
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
;;
|
||||
*)
|
||||
ld_shlibs=no
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
# Check dynamic linker characteristics
|
||||
# Code taken from libtool.m4's AC_LIBTOOL_SYS_DYNAMIC_LINKER.
|
||||
# Unlike libtool.m4, here we don't care about _all_ names of the library, but
|
||||
# only about the one the linker finds when passed -lNAME. This is the last
|
||||
# element of library_names_spec in libtool.m4, or possibly two of them if the
|
||||
# linker has special search rules.
|
||||
library_names_spec= # the last element of library_names_spec in libtool.m4
|
||||
libname_spec='lib$name'
|
||||
case "$host_os" in
|
||||
aix3*)
|
||||
library_names_spec='$libname.a'
|
||||
;;
|
||||
aix4* | aix5*)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
amigaos*)
|
||||
library_names_spec='$libname.a'
|
||||
;;
|
||||
beos*)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
bsdi[45]*)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
cygwin* | mingw* | pw32*)
|
||||
shrext=.dll
|
||||
library_names_spec='$libname.dll.a $libname.lib'
|
||||
;;
|
||||
darwin* | rhapsody*)
|
||||
shrext=.dylib
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
dgux*)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
freebsd1*)
|
||||
;;
|
||||
kfreebsd*-gnu)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
freebsd* | dragonfly*)
|
||||
case "$host_os" in
|
||||
freebsd[123]*)
|
||||
library_names_spec='$libname$shrext$versuffix' ;;
|
||||
*)
|
||||
library_names_spec='$libname$shrext' ;;
|
||||
esac
|
||||
;;
|
||||
gnu*)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
hpux9* | hpux10* | hpux11*)
|
||||
case $host_cpu in
|
||||
ia64*)
|
||||
shrext=.so
|
||||
;;
|
||||
hppa*64*)
|
||||
shrext=.sl
|
||||
;;
|
||||
*)
|
||||
shrext=.sl
|
||||
;;
|
||||
esac
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
interix3*)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
irix5* | irix6* | nonstopux*)
|
||||
library_names_spec='$libname$shrext'
|
||||
case "$host_os" in
|
||||
irix5* | nonstopux*)
|
||||
libsuff= shlibsuff=
|
||||
;;
|
||||
*)
|
||||
case $LD in
|
||||
*-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= ;;
|
||||
*-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 ;;
|
||||
*-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 ;;
|
||||
*) libsuff= shlibsuff= ;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
linux*oldld* | linux*aout* | linux*coff*)
|
||||
;;
|
||||
linux*)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
knetbsd*-gnu)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
netbsd*)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
newsos6)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
nto-qnx*)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
openbsd*)
|
||||
library_names_spec='$libname$shrext$versuffix'
|
||||
;;
|
||||
os2*)
|
||||
libname_spec='$name'
|
||||
shrext=.dll
|
||||
library_names_spec='$libname.a'
|
||||
;;
|
||||
osf3* | osf4* | osf5*)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
solaris*)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
sunos4*)
|
||||
library_names_spec='$libname$shrext$versuffix'
|
||||
;;
|
||||
sysv4 | sysv4.3*)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
sysv4*MP*)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
uts4*)
|
||||
library_names_spec='$libname$shrext'
|
||||
;;
|
||||
esac
|
||||
|
||||
sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
|
||||
escaped_wl=`echo "X$wl" | sed -e 's/^X//' -e "$sed_quote_subst"`
|
||||
shlibext=`echo "$shrext" | sed -e 's,^\.,,'`
|
||||
escaped_libname_spec=`echo "X$libname_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
|
||||
escaped_library_names_spec=`echo "X$library_names_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
|
||||
escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
|
||||
|
||||
LC_ALL=C sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <<EOF
|
||||
|
||||
# How to pass a linker flag through the compiler.
|
||||
wl="$escaped_wl"
|
||||
|
||||
# Static library suffix (normally "a").
|
||||
libext="$libext"
|
||||
|
||||
# Shared library suffix (normally "so").
|
||||
shlibext="$shlibext"
|
||||
|
||||
# Format of library name prefix.
|
||||
libname_spec="$escaped_libname_spec"
|
||||
|
||||
# Library names that the linker finds when passed -lNAME.
|
||||
library_names_spec="$escaped_library_names_spec"
|
||||
|
||||
# Flag to hardcode \$libdir into a binary during linking.
|
||||
# This must work even if \$libdir does not exist.
|
||||
hardcode_libdir_flag_spec="$escaped_hardcode_libdir_flag_spec"
|
||||
|
||||
# Whether we need a single -rpath flag with a separated argument.
|
||||
hardcode_libdir_separator="$hardcode_libdir_separator"
|
||||
|
||||
# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
|
||||
# resulting binary.
|
||||
hardcode_direct="$hardcode_direct"
|
||||
|
||||
# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
|
||||
# resulting binary.
|
||||
hardcode_minus_L="$hardcode_minus_L"
|
||||
|
||||
EOF
|
||||
1890
vendor/libssh2/config.sub
vendored
Executable file
1890
vendor/libssh2/config.sub
vendored
Executable file
File diff suppressed because it is too large
Load diff
29447
vendor/libssh2/configure
vendored
Executable file
29447
vendor/libssh2/configure
vendored
Executable file
File diff suppressed because it is too large
Load diff
453
vendor/libssh2/configure.ac
vendored
Normal file
453
vendor/libssh2/configure.ac
vendored
Normal file
|
|
@ -0,0 +1,453 @@
|
|||
# Copyright (C) The libssh2 project and its contributors.
|
||||
#
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
#
|
||||
|
||||
# AC_PREREQ(2.59)
|
||||
AC_INIT([libssh2],[-],[libssh2-devel@lists.haxx.se])
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
AC_CONFIG_SRCDIR([src])
|
||||
AC_CONFIG_HEADERS([src/libssh2_config.h])
|
||||
AC_REQUIRE_AUX_FILE([tap-driver.sh])
|
||||
AM_MAINTAINER_MODE
|
||||
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
|
||||
|
||||
dnl SED is needed by some of the tools
|
||||
AC_PATH_PROG( SED, sed, sed-was-not-found-by-configure,
|
||||
$PATH:/usr/bin:/usr/local/bin)
|
||||
AC_SUBST(SED)
|
||||
|
||||
if test "x$SED" = "xsed-was-not-found-by-configure"; then
|
||||
AC_MSG_WARN([sed was not found, this may ruin your chances to build fine])
|
||||
fi
|
||||
|
||||
dnl figure out the libssh2 version
|
||||
LIBSSH2_VERSION=`$SED -ne 's/^#define LIBSSH2_VERSION *"\(.*\)"/\1/p' ${srcdir}/include/libssh2.h`
|
||||
AM_INIT_AUTOMAKE
|
||||
AC_MSG_CHECKING([libssh2 version])
|
||||
AC_MSG_RESULT($LIBSSH2_VERSION)
|
||||
|
||||
AC_SUBST(LIBSSH2_VERSION)
|
||||
|
||||
# Check for the OS.
|
||||
# Daniel's note: this should not be necessary and we need to work to
|
||||
# get this removed.
|
||||
AC_CANONICAL_HOST
|
||||
case "$host" in
|
||||
*-mingw*)
|
||||
LIBS="$LIBS -lws2_32"
|
||||
;;
|
||||
*darwin*)
|
||||
;;
|
||||
*hpux*)
|
||||
;;
|
||||
*osf*)
|
||||
CFLAGS="$CFLAGS -D_POSIX_PII_SOCKET"
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
||||
dnl Our configure and build reentrant settings
|
||||
CURL_CONFIGURE_REENTRANT
|
||||
|
||||
# Some systems (Solaris?) have socket() in -lsocket.
|
||||
AC_SEARCH_LIBS(socket, socket)
|
||||
|
||||
# Solaris has inet_addr() in -lnsl.
|
||||
AC_SEARCH_LIBS(inet_addr, nsl)
|
||||
|
||||
AC_SUBST(LIBS)
|
||||
|
||||
AC_PROG_CC
|
||||
AC_PROG_CXX
|
||||
AC_PROG_INSTALL
|
||||
AC_PROG_LN_S
|
||||
AC_PROG_MAKE_SET
|
||||
AC_PATH_PROGS(SSHD, [sshd], [],
|
||||
[$PATH$PATH_SEPARATOR/usr/libexec$PATH_SEPARATOR]dnl
|
||||
[/usr/sbin$PATH_SEPARATOR/usr/etc$PATH_SEPARATOR/etc])
|
||||
AM_CONDITIONAL(SSHD, test -n "$SSHD")
|
||||
m4_ifdef([LT_INIT],
|
||||
[dnl
|
||||
LT_INIT([win32-dll])
|
||||
],[dnl
|
||||
AC_LIBTOOL_WIN32_DLL
|
||||
AC_PROG_LIBTOOL
|
||||
])
|
||||
AC_C_BIGENDIAN
|
||||
|
||||
LT_LANG([Windows Resource])
|
||||
|
||||
dnl check for windows.h
|
||||
case $host in
|
||||
*-*-msys | *-*-cygwin* | *-*-cegcc*)
|
||||
# These are POSIX-like systems using BSD-like sockets API.
|
||||
;;
|
||||
*)
|
||||
AC_CHECK_HEADERS([windows.h], [have_windows_h=yes], [have_windows_h=no])
|
||||
;;
|
||||
esac
|
||||
|
||||
dnl check for how to do large files
|
||||
AC_SYS_LARGEFILE
|
||||
|
||||
# Crypto backends
|
||||
|
||||
found_crypto=none
|
||||
found_crypto_str=""
|
||||
crypto_errors=""
|
||||
|
||||
m4_set_add([crypto_backends], [openssl])
|
||||
m4_set_add([crypto_backends], [libgcrypt])
|
||||
m4_set_add([crypto_backends], [mbedtls])
|
||||
m4_set_add([crypto_backends], [wincng])
|
||||
m4_set_add([crypto_backends], [wolfssl])
|
||||
|
||||
AC_ARG_WITH([crypto],
|
||||
AS_HELP_STRING([--with-crypto=auto|]m4_set_contents([crypto_backends], [|]),
|
||||
[Select crypto backend (default: auto)]),
|
||||
use_crypto=$withval,
|
||||
use_crypto=auto
|
||||
)
|
||||
|
||||
case "${use_crypto}" in
|
||||
auto|m4_set_contents([crypto_backends], [|]))
|
||||
m4_set_map([crypto_backends], [LIBSSH2_CHECK_CRYPTO])
|
||||
;;
|
||||
yes|"")
|
||||
crypto_errors="No crypto backend specified."
|
||||
;;
|
||||
*)
|
||||
crypto_errors="Unknown crypto backend '${use_crypto}' specified."
|
||||
;;
|
||||
esac
|
||||
|
||||
if test "$found_crypto" = "none"; then
|
||||
crypto_errors="${crypto_errors}
|
||||
Specify --with-crypto=\$backend and/or the necessary library search prefix.
|
||||
|
||||
Known crypto backends: auto, m4_set_contents([crypto_backends], [, ])"
|
||||
AS_MESSAGE([ERROR: ${crypto_errors}])
|
||||
else
|
||||
test "$found_crypto_str" = "" && found_crypto_str="$found_crypto"
|
||||
fi
|
||||
|
||||
# ECDSA support with WinCNG
|
||||
AC_ARG_ENABLE(ecdsa-wincng,
|
||||
AS_HELP_STRING([--enable-ecdsa-wincng],
|
||||
WinCNG ECDSA support (requires Windows 10 or later)),
|
||||
[wincng_ecdsa=$enableval])
|
||||
if test "$wincng_ecdsa" = yes; then
|
||||
AC_DEFINE(LIBSSH2_ECDSA_WINCNG, 1, [Enable WinCNG ECDSA support])
|
||||
else
|
||||
wincng_ecdsa=no
|
||||
fi
|
||||
|
||||
# libz
|
||||
|
||||
AC_ARG_WITH([libz],
|
||||
AS_HELP_STRING([--with-libz],[Use libz for compression]),
|
||||
use_libz=$withval,
|
||||
use_libz=auto)
|
||||
|
||||
found_libz=no
|
||||
libz_errors=""
|
||||
|
||||
if test "$use_libz" != no; then
|
||||
AC_LIB_HAVE_LINKFLAGS([z], [], [#include <zlib.h>])
|
||||
if test "$ac_cv_libz" != yes; then
|
||||
if test "$use_libz" = auto; then
|
||||
AC_MSG_NOTICE([Cannot find libz, disabling compression])
|
||||
found_libz="disabled; no libz found"
|
||||
else
|
||||
libz_errors="No libz found.
|
||||
Try --with-libz-prefix=PATH if you know that you have it."
|
||||
AS_MESSAGE([ERROR: $libz_errors])
|
||||
fi
|
||||
else
|
||||
AC_DEFINE(LIBSSH2_HAVE_ZLIB, 1, [Compile in zlib support])
|
||||
LIBSSH2_PC_REQUIRES_PRIVATE="$LIBSSH2_PC_REQUIRES_PRIVATE${LIBSSH2_PC_REQUIRES_PRIVATE:+,}zlib"
|
||||
found_libz="yes"
|
||||
fi
|
||||
fi
|
||||
|
||||
AC_SUBST(LIBSSH2_PC_REQUIRES_PRIVATE)
|
||||
|
||||
#
|
||||
# Optional Settings
|
||||
#
|
||||
AC_ARG_ENABLE(clear-memory,
|
||||
AS_HELP_STRING([--disable-clear-memory],[Disable clearing of memory before being freed]),
|
||||
[CLEAR_MEMORY=$enableval])
|
||||
if test "$CLEAR_MEMORY" = "no"; then
|
||||
AC_DEFINE(LIBSSH2_NO_CLEAR_MEMORY, 1, [Disable clearing of memory before being freed])
|
||||
enable_clear_memory=no
|
||||
else
|
||||
enable_clear_memory=yes
|
||||
fi
|
||||
|
||||
LIBSSH2_CFLAG_EXTRAS=""
|
||||
|
||||
LIBSSH2_CHECK_OPTION_WERROR
|
||||
|
||||
dnl ************************************************************
|
||||
dnl option to switch on compiler debug options
|
||||
dnl
|
||||
AC_MSG_CHECKING([whether to enable pedantic and debug compiler options])
|
||||
AC_ARG_ENABLE(debug,
|
||||
AS_HELP_STRING([--enable-debug],[Enable pedantic and debug options])
|
||||
AS_HELP_STRING([--disable-debug],[Disable debug options]),
|
||||
[ case "$enable_debug" in
|
||||
no)
|
||||
AC_MSG_RESULT(no)
|
||||
CPPFLAGS="$CPPFLAGS -DNDEBUG"
|
||||
;;
|
||||
*) AC_MSG_RESULT(yes)
|
||||
enable_debug=yes
|
||||
CPPFLAGS="$CPPFLAGS -DLIBSSH2DEBUG"
|
||||
CFLAGS="$CFLAGS -g"
|
||||
|
||||
dnl set compiler "debug" options to become more picky, and remove
|
||||
dnl optimize options from CFLAGS
|
||||
CURL_CC_DEBUG_OPTS
|
||||
;;
|
||||
esac
|
||||
],
|
||||
enable_debug=no
|
||||
AC_MSG_RESULT(no)
|
||||
)
|
||||
|
||||
AC_SUBST(LIBSSH2_CFLAG_EXTRAS)
|
||||
|
||||
dnl ************************************************************
|
||||
dnl Enable hiding of internal symbols in library to reduce its size and
|
||||
dnl speed dynamic linking of applications. This currently is only supported
|
||||
dnl on gcc >= 4.0 and SunPro C.
|
||||
dnl
|
||||
AC_MSG_CHECKING([whether to enable hidden symbols in the library])
|
||||
AC_ARG_ENABLE(hidden-symbols,
|
||||
AS_HELP_STRING([--enable-hidden-symbols],[Hide internal symbols in library])
|
||||
AS_HELP_STRING([--disable-hidden-symbols],[Leave all symbols with default visibility in library (default)]),
|
||||
[ case "$enableval" in
|
||||
no)
|
||||
AC_MSG_RESULT(no)
|
||||
;;
|
||||
*)
|
||||
AC_MSG_CHECKING([whether $CC supports it])
|
||||
if test "$GCC" = yes ; then
|
||||
if $CC --help --verbose 2>&1 | grep fvisibility= > /dev/null ; then
|
||||
AC_MSG_RESULT(yes)
|
||||
AC_DEFINE(LIBSSH2_API, [__attribute__ ((visibility ("default")))], [to make a symbol visible])
|
||||
CFLAGS="$CFLAGS -fvisibility=hidden"
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
fi
|
||||
|
||||
else
|
||||
dnl Test for SunPro cc
|
||||
if $CC 2>&1 | grep flags >/dev/null && $CC -flags | grep xldscope= >/dev/null ; then
|
||||
AC_MSG_RESULT(yes)
|
||||
AC_DEFINE(LIBSSH2_API, [__global], [to make a symbol visible])
|
||||
CFLAGS="$CFLAGS -xldscope=hidden"
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
esac ],
|
||||
AC_MSG_RESULT(no)
|
||||
)
|
||||
|
||||
dnl Build without deprecated APIs?
|
||||
AC_ARG_ENABLE([deprecated],
|
||||
[AS_HELP_STRING([--disable-deprecated], [Build without deprecated APIs @<:@default=no@:>@])],
|
||||
[case "$enableval" in
|
||||
*)
|
||||
with_deprecated="no"
|
||||
CPPFLAGS="$CPPFLAGS -DLIBSSH2_NO_DEPRECATED"
|
||||
;;
|
||||
esac],
|
||||
[with_deprecated="yes"])
|
||||
|
||||
# Run Docker tests?
|
||||
AC_ARG_ENABLE([docker-tests],
|
||||
[AS_HELP_STRING([--disable-docker-tests],
|
||||
[Do not run tests requiring Docker])],
|
||||
[run_docker_tests=no], [run_docker_tests=yes])
|
||||
AM_CONDITIONAL([RUN_DOCKER_TESTS], [test "x$run_docker_tests" != "xno"])
|
||||
|
||||
# Run sshd tests?
|
||||
AC_ARG_ENABLE([sshd-tests],
|
||||
[AS_HELP_STRING([--disable-sshd-tests],
|
||||
[Do not run tests requiring sshd])],
|
||||
[run_sshd_tests=no], [run_sshd_tests=yes])
|
||||
AM_CONDITIONAL([RUN_SSHD_TESTS], [test "x$run_sshd_tests" != "xno"])
|
||||
|
||||
# Build example applications?
|
||||
AC_MSG_CHECKING([whether to build example applications])
|
||||
AC_ARG_ENABLE([examples-build],
|
||||
AS_HELP_STRING([--enable-examples-build], [Build example applications (this is the default)])
|
||||
AS_HELP_STRING([--disable-examples-build], [Do not build example applications]),
|
||||
[case "$enableval" in
|
||||
no | false)
|
||||
build_examples='no'
|
||||
;;
|
||||
*)
|
||||
build_examples='yes'
|
||||
;;
|
||||
esac], [build_examples='yes'])
|
||||
AC_MSG_RESULT($build_examples)
|
||||
AM_CONDITIONAL([BUILD_EXAMPLES], [test "x$build_examples" != "xno"])
|
||||
|
||||
|
||||
# Build OSS fuzzing targets?
|
||||
AC_ARG_ENABLE([ossfuzzers],
|
||||
[AS_HELP_STRING([--enable-ossfuzzers],
|
||||
[Whether to generate the fuzzers for OSS-Fuzz])],
|
||||
[have_ossfuzzers=yes], [have_ossfuzzers=no])
|
||||
AM_CONDITIONAL([USE_OSSFUZZERS], [test "x$have_ossfuzzers" = "xyes"])
|
||||
|
||||
|
||||
# Set the correct flags for the given fuzzing engine.
|
||||
AC_SUBST([LIB_FUZZING_ENGINE])
|
||||
AM_CONDITIONAL([USE_OSSFUZZ_FLAG], [test "x$LIB_FUZZING_ENGINE" = "x-fsanitize=fuzzer"])
|
||||
AM_CONDITIONAL([USE_OSSFUZZ_STATIC], [test -f "$LIB_FUZZING_ENGINE"])
|
||||
|
||||
|
||||
# Checks for header files.
|
||||
AC_CHECK_HEADERS([errno.h fcntl.h stdio.h unistd.h sys/uio.h])
|
||||
AC_CHECK_HEADERS([sys/select.h sys/socket.h sys/ioctl.h sys/time.h])
|
||||
AC_CHECK_HEADERS([arpa/inet.h netinet/in.h])
|
||||
AC_CHECK_HEADERS([sys/un.h])
|
||||
|
||||
case $host in
|
||||
*darwin*|*interix*)
|
||||
dnl poll() does not work on these platforms
|
||||
dnl Interix: "does provide poll(), but the implementing developer must
|
||||
dnl have been in a bad mood, because poll() only works on the /proc
|
||||
dnl filesystem here"
|
||||
dnl macOS poll() has funny behaviors, like:
|
||||
dnl not being able to do poll on no fildescriptors (10.3?)
|
||||
dnl not being able to poll on some files (like anything in /dev)
|
||||
dnl not having reliable timeout support
|
||||
dnl inconsistent return of POLLHUP where other implementations give POLLIN
|
||||
AC_MSG_NOTICE([poll use is disabled on this platform])
|
||||
;;
|
||||
*)
|
||||
AC_CHECK_FUNCS(poll)
|
||||
;;
|
||||
esac
|
||||
|
||||
AC_CHECK_FUNCS(gettimeofday select strtoll explicit_bzero explicit_memset memset_s snprintf)
|
||||
|
||||
dnl Check for select() into ws2_32 for Msys/Mingw
|
||||
if test "$ac_cv_func_select" != "yes"; then
|
||||
AC_MSG_CHECKING([for select in ws2_32])
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
|
||||
#ifdef HAVE_WINDOWS_H
|
||||
#ifndef WIN32_LEAN_AND_MEAN
|
||||
#define WIN32_LEAN_AND_MEAN
|
||||
#endif
|
||||
#include <winsock2.h>
|
||||
#endif
|
||||
]], [[
|
||||
select(0,(fd_set *)NULL,(fd_set *)NULL,(fd_set *)NULL,(struct timeval *)NULL);
|
||||
]])],[
|
||||
AC_MSG_RESULT([yes])
|
||||
HAVE_SELECT="1"
|
||||
AC_DEFINE_UNQUOTED(HAVE_SELECT, 1,
|
||||
[Define to 1 if you have the select function.])
|
||||
],[
|
||||
AC_MSG_RESULT([no])
|
||||
])
|
||||
fi
|
||||
|
||||
AC_FUNC_ALLOCA
|
||||
|
||||
# Checks for typedefs, structures, and compiler characteristics.
|
||||
AC_C_CONST
|
||||
AC_C_INLINE
|
||||
|
||||
CURL_CHECK_NONBLOCKING_SOCKET
|
||||
|
||||
missing_required_deps=0
|
||||
|
||||
if test "${libz_errors}" != ""; then
|
||||
AS_MESSAGE([ERROR: ${libz_errors}])
|
||||
missing_required_deps=1
|
||||
fi
|
||||
|
||||
if test "$found_crypto" = "none"; then
|
||||
AS_MESSAGE([ERROR: ${crypto_errors}])
|
||||
missing_required_deps=1
|
||||
fi
|
||||
|
||||
if test $missing_required_deps = 1; then
|
||||
AC_MSG_ERROR([Required dependencies are missing.])
|
||||
fi
|
||||
|
||||
AM_CONDITIONAL([HAVE_WINDRES],
|
||||
[test "x$have_windows_h" = "xyes" && test "x${enable_shared}" = "xyes" && test -n "${RC}"])
|
||||
|
||||
AM_CONDITIONAL([HAVE_LIB_STATIC], [test "x$enable_static" != "xno"])
|
||||
|
||||
# Configure parameters
|
||||
|
||||
# Append crypto lib
|
||||
if test "$found_crypto" = "openssl"; then
|
||||
LIBS="${LIBS} ${LTLIBSSL}"
|
||||
elif test "$found_crypto" = "wolfssl"; then
|
||||
LIBS="${LIBS} ${LTLIBWOLFSSL}"
|
||||
elif test "$found_crypto" = "libgcrypt"; then
|
||||
LIBS="${LIBS} ${LTLIBGCRYPT}"
|
||||
elif test "$found_crypto" = "wincng"; then
|
||||
LIBS="${LIBS} ${LTLIBBCRYPT}"
|
||||
elif test "$found_crypto" = "mbedtls"; then
|
||||
LIBS="${LIBS} ${LTLIBMBEDCRYPTO}"
|
||||
fi
|
||||
|
||||
LIBS="${LIBS} ${LTLIBZ}"
|
||||
|
||||
LIBSSH2_PC_LIBS_PRIVATE=$LIBS
|
||||
AC_SUBST(LIBSSH2_PC_LIBS_PRIVATE)
|
||||
|
||||
dnl merge the pkg-config private fields into public ones when static-only
|
||||
if test "x$enable_shared" = "xyes"; then
|
||||
LIBSSH2_PC_REQUIRES=
|
||||
LIBSSH2_PC_LIBS=
|
||||
else
|
||||
LIBSSH2_PC_REQUIRES=$LIBSSH2_PC_REQUIRES_PRIVATE
|
||||
LIBSSH2_PC_LIBS=$LIBSSH2_PC_LIBS_PRIVATE
|
||||
fi
|
||||
AC_SUBST(LIBSSH2_PC_REQUIRES)
|
||||
AC_SUBST(LIBSSH2_PC_LIBS)
|
||||
|
||||
AC_CONFIG_FILES([Makefile
|
||||
src/Makefile
|
||||
tests/Makefile
|
||||
tests/ossfuzz/Makefile
|
||||
example/Makefile
|
||||
docs/Makefile
|
||||
libssh2.pc])
|
||||
AC_OUTPUT
|
||||
|
||||
AC_MSG_NOTICE([summary of build options:
|
||||
|
||||
version: ${LIBSSH2_VERSION}
|
||||
Host type: ${host}
|
||||
Install prefix: ${prefix}
|
||||
Compiler: ${CC}
|
||||
Compiler flags: ${CFLAGS}
|
||||
Library types: Shared=${enable_shared}, Static=${enable_static}
|
||||
Crypto library: ${found_crypto_str}
|
||||
WinCNG ECDSA: $wincng_ecdsa
|
||||
zlib compression: ${found_libz}
|
||||
Clear memory: $enable_clear_memory
|
||||
Deprecated APIs: $with_deprecated
|
||||
Debug build: $enable_debug
|
||||
Build examples: $build_examples
|
||||
Run Docker tests: $run_docker_tests
|
||||
Run sshd tests: $run_sshd_tests
|
||||
Path to sshd: $ac_cv_path_SSHD (only for self-tests)
|
||||
])
|
||||
791
vendor/libssh2/depcomp
vendored
Executable file
791
vendor/libssh2/depcomp
vendored
Executable file
|
|
@ -0,0 +1,791 @@
|
|||
#! /bin/sh
|
||||
# depcomp - compile a program generating dependencies as side-effects
|
||||
|
||||
scriptversion=2018-03-07.03; # UTC
|
||||
|
||||
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2, or (at your option)
|
||||
# any later version.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
# As a special exception to the GNU General Public License, if you
|
||||
# distribute this file as part of a program that contains a
|
||||
# configuration script generated by Autoconf, you may include it under
|
||||
# the same distribution terms that you use for the rest of that program.
|
||||
|
||||
# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
|
||||
|
||||
case $1 in
|
||||
'')
|
||||
echo "$0: No command. Try '$0 --help' for more information." 1>&2
|
||||
exit 1;
|
||||
;;
|
||||
-h | --h*)
|
||||
cat <<\EOF
|
||||
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
|
||||
|
||||
Run PROGRAMS ARGS to compile a file, generating dependencies
|
||||
as side-effects.
|
||||
|
||||
Environment variables:
|
||||
depmode Dependency tracking mode.
|
||||
source Source file read by 'PROGRAMS ARGS'.
|
||||
object Object file output by 'PROGRAMS ARGS'.
|
||||
DEPDIR directory where to store dependencies.
|
||||
depfile Dependency file to output.
|
||||
tmpdepfile Temporary file to use when outputting dependencies.
|
||||
libtool Whether libtool is used (yes/no).
|
||||
|
||||
Report bugs to <bug-automake@gnu.org>.
|
||||
EOF
|
||||
exit $?
|
||||
;;
|
||||
-v | --v*)
|
||||
echo "depcomp $scriptversion"
|
||||
exit $?
|
||||
;;
|
||||
esac
|
||||
|
||||
# Get the directory component of the given path, and save it in the
|
||||
# global variables '$dir'. Note that this directory component will
|
||||
# be either empty or ending with a '/' character. This is deliberate.
|
||||
set_dir_from ()
|
||||
{
|
||||
case $1 in
|
||||
*/*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;;
|
||||
*) dir=;;
|
||||
esac
|
||||
}
|
||||
|
||||
# Get the suffix-stripped basename of the given path, and save it the
|
||||
# global variable '$base'.
|
||||
set_base_from ()
|
||||
{
|
||||
base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'`
|
||||
}
|
||||
|
||||
# If no dependency file was actually created by the compiler invocation,
|
||||
# we still have to create a dummy depfile, to avoid errors with the
|
||||
# Makefile "include basename.Plo" scheme.
|
||||
make_dummy_depfile ()
|
||||
{
|
||||
echo "#dummy" > "$depfile"
|
||||
}
|
||||
|
||||
# Factor out some common post-processing of the generated depfile.
|
||||
# Requires the auxiliary global variable '$tmpdepfile' to be set.
|
||||
aix_post_process_depfile ()
|
||||
{
|
||||
# If the compiler actually managed to produce a dependency file,
|
||||
# post-process it.
|
||||
if test -f "$tmpdepfile"; then
|
||||
# Each line is of the form 'foo.o: dependency.h'.
|
||||
# Do two passes, one to just change these to
|
||||
# $object: dependency.h
|
||||
# and one to simply output
|
||||
# dependency.h:
|
||||
# which is needed to avoid the deleted-header problem.
|
||||
{ sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile"
|
||||
sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile"
|
||||
} > "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
else
|
||||
make_dummy_depfile
|
||||
fi
|
||||
}
|
||||
|
||||
# A tabulation character.
|
||||
tab=' '
|
||||
# A newline character.
|
||||
nl='
|
||||
'
|
||||
# Character ranges might be problematic outside the C locale.
|
||||
# These definitions help.
|
||||
upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ
|
||||
lower=abcdefghijklmnopqrstuvwxyz
|
||||
digits=0123456789
|
||||
alpha=${upper}${lower}
|
||||
|
||||
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
|
||||
echo "depcomp: Variables source, object and depmode must be set" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
|
||||
depfile=${depfile-`echo "$object" |
|
||||
sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
|
||||
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
|
||||
|
||||
rm -f "$tmpdepfile"
|
||||
|
||||
# Avoid interferences from the environment.
|
||||
gccflag= dashmflag=
|
||||
|
||||
# Some modes work just like other modes, but use different flags. We
|
||||
# parameterize here, but still list the modes in the big case below,
|
||||
# to make depend.m4 easier to write. Note that we *cannot* use a case
|
||||
# here, because this file can only contain one case statement.
|
||||
if test "$depmode" = hp; then
|
||||
# HP compiler uses -M and no extra arg.
|
||||
gccflag=-M
|
||||
depmode=gcc
|
||||
fi
|
||||
|
||||
if test "$depmode" = dashXmstdout; then
|
||||
# This is just like dashmstdout with a different argument.
|
||||
dashmflag=-xM
|
||||
depmode=dashmstdout
|
||||
fi
|
||||
|
||||
cygpath_u="cygpath -u -f -"
|
||||
if test "$depmode" = msvcmsys; then
|
||||
# This is just like msvisualcpp but w/o cygpath translation.
|
||||
# Just convert the backslash-escaped backslashes to single forward
|
||||
# slashes to satisfy depend.m4
|
||||
cygpath_u='sed s,\\\\,/,g'
|
||||
depmode=msvisualcpp
|
||||
fi
|
||||
|
||||
if test "$depmode" = msvc7msys; then
|
||||
# This is just like msvc7 but w/o cygpath translation.
|
||||
# Just convert the backslash-escaped backslashes to single forward
|
||||
# slashes to satisfy depend.m4
|
||||
cygpath_u='sed s,\\\\,/,g'
|
||||
depmode=msvc7
|
||||
fi
|
||||
|
||||
if test "$depmode" = xlc; then
|
||||
# IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information.
|
||||
gccflag=-qmakedep=gcc,-MF
|
||||
depmode=gcc
|
||||
fi
|
||||
|
||||
case "$depmode" in
|
||||
gcc3)
|
||||
## gcc 3 implements dependency tracking that does exactly what
|
||||
## we want. Yay! Note: for some reason libtool 1.4 doesn't like
|
||||
## it if -MD -MP comes after the -MF stuff. Hmm.
|
||||
## Unfortunately, FreeBSD c89 acceptance of flags depends upon
|
||||
## the command line argument order; so add the flags where they
|
||||
## appear in depend2.am. Note that the slowdown incurred here
|
||||
## affects only configure: in makefiles, %FASTDEP% shortcuts this.
|
||||
for arg
|
||||
do
|
||||
case $arg in
|
||||
-c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
|
||||
*) set fnord "$@" "$arg" ;;
|
||||
esac
|
||||
shift # fnord
|
||||
shift # $arg
|
||||
done
|
||||
"$@"
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
mv "$tmpdepfile" "$depfile"
|
||||
;;
|
||||
|
||||
gcc)
|
||||
## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.
|
||||
## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.
|
||||
## (see the conditional assignment to $gccflag above).
|
||||
## There are various ways to get dependency output from gcc. Here's
|
||||
## why we pick this rather obscure method:
|
||||
## - Don't want to use -MD because we'd like the dependencies to end
|
||||
## up in a subdir. Having to rename by hand is ugly.
|
||||
## (We might end up doing this anyway to support other compilers.)
|
||||
## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
|
||||
## -MM, not -M (despite what the docs say). Also, it might not be
|
||||
## supported by the other compilers which use the 'gcc' depmode.
|
||||
## - Using -M directly means running the compiler twice (even worse
|
||||
## than renaming).
|
||||
if test -z "$gccflag"; then
|
||||
gccflag=-MD,
|
||||
fi
|
||||
"$@" -Wp,"$gccflag$tmpdepfile"
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
rm -f "$depfile"
|
||||
echo "$object : \\" > "$depfile"
|
||||
# The second -e expression handles DOS-style file names with drive
|
||||
# letters.
|
||||
sed -e 's/^[^:]*: / /' \
|
||||
-e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
|
||||
## This next piece of magic avoids the "deleted header file" problem.
|
||||
## The problem is that when a header file which appears in a .P file
|
||||
## is deleted, the dependency causes make to die (because there is
|
||||
## typically no way to rebuild the header). We avoid this by adding
|
||||
## dummy dependencies for each header file. Too bad gcc doesn't do
|
||||
## this for us directly.
|
||||
## Some versions of gcc put a space before the ':'. On the theory
|
||||
## that the space means something, we add a space to the output as
|
||||
## well. hp depmode also adds that space, but also prefixes the VPATH
|
||||
## to the object. Take care to not repeat it in the output.
|
||||
## Some versions of the HPUX 10.20 sed can't process this invocation
|
||||
## correctly. Breaking it into two sed invocations is a workaround.
|
||||
tr ' ' "$nl" < "$tmpdepfile" \
|
||||
| sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
|
||||
| sed -e 's/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
hp)
|
||||
# This case exists only to let depend.m4 do its work. It works by
|
||||
# looking at the text of this script. This case will never be run,
|
||||
# since it is checked for above.
|
||||
exit 1
|
||||
;;
|
||||
|
||||
sgi)
|
||||
if test "$libtool" = yes; then
|
||||
"$@" "-Wp,-MDupdate,$tmpdepfile"
|
||||
else
|
||||
"$@" -MDupdate "$tmpdepfile"
|
||||
fi
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
rm -f "$depfile"
|
||||
|
||||
if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
|
||||
echo "$object : \\" > "$depfile"
|
||||
# Clip off the initial element (the dependent). Don't try to be
|
||||
# clever and replace this with sed code, as IRIX sed won't handle
|
||||
# lines with more than a fixed number of characters (4096 in
|
||||
# IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
|
||||
# the IRIX cc adds comments like '#:fec' to the end of the
|
||||
# dependency line.
|
||||
tr ' ' "$nl" < "$tmpdepfile" \
|
||||
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \
|
||||
| tr "$nl" ' ' >> "$depfile"
|
||||
echo >> "$depfile"
|
||||
# The second pass generates a dummy entry for each header file.
|
||||
tr ' ' "$nl" < "$tmpdepfile" \
|
||||
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
|
||||
>> "$depfile"
|
||||
else
|
||||
make_dummy_depfile
|
||||
fi
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
xlc)
|
||||
# This case exists only to let depend.m4 do its work. It works by
|
||||
# looking at the text of this script. This case will never be run,
|
||||
# since it is checked for above.
|
||||
exit 1
|
||||
;;
|
||||
|
||||
aix)
|
||||
# The C for AIX Compiler uses -M and outputs the dependencies
|
||||
# in a .u file. In older versions, this file always lives in the
|
||||
# current directory. Also, the AIX compiler puts '$object:' at the
|
||||
# start of each line; $object doesn't have directory information.
|
||||
# Version 6 uses the directory in both cases.
|
||||
set_dir_from "$object"
|
||||
set_base_from "$object"
|
||||
if test "$libtool" = yes; then
|
||||
tmpdepfile1=$dir$base.u
|
||||
tmpdepfile2=$base.u
|
||||
tmpdepfile3=$dir.libs/$base.u
|
||||
"$@" -Wc,-M
|
||||
else
|
||||
tmpdepfile1=$dir$base.u
|
||||
tmpdepfile2=$dir$base.u
|
||||
tmpdepfile3=$dir$base.u
|
||||
"$@" -M
|
||||
fi
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||
exit $stat
|
||||
fi
|
||||
|
||||
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||
do
|
||||
test -f "$tmpdepfile" && break
|
||||
done
|
||||
aix_post_process_depfile
|
||||
;;
|
||||
|
||||
tcc)
|
||||
# tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26
|
||||
# FIXME: That version still under development at the moment of writing.
|
||||
# Make that this statement remains true also for stable, released
|
||||
# versions.
|
||||
# It will wrap lines (doesn't matter whether long or short) with a
|
||||
# trailing '\', as in:
|
||||
#
|
||||
# foo.o : \
|
||||
# foo.c \
|
||||
# foo.h \
|
||||
#
|
||||
# It will put a trailing '\' even on the last line, and will use leading
|
||||
# spaces rather than leading tabs (at least since its commit 0394caf7
|
||||
# "Emit spaces for -MD").
|
||||
"$@" -MD -MF "$tmpdepfile"
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
rm -f "$depfile"
|
||||
# Each non-empty line is of the form 'foo.o : \' or ' dep.h \'.
|
||||
# We have to change lines of the first kind to '$object: \'.
|
||||
sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile"
|
||||
# And for each line of the second kind, we have to emit a 'dep.h:'
|
||||
# dummy dependency, to avoid the deleted-header problem.
|
||||
sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
## The order of this option in the case statement is important, since the
|
||||
## shell code in configure will try each of these formats in the order
|
||||
## listed in this file. A plain '-MD' option would be understood by many
|
||||
## compilers, so we must ensure this comes after the gcc and icc options.
|
||||
pgcc)
|
||||
# Portland's C compiler understands '-MD'.
|
||||
# Will always output deps to 'file.d' where file is the root name of the
|
||||
# source file under compilation, even if file resides in a subdirectory.
|
||||
# The object file name does not affect the name of the '.d' file.
|
||||
# pgcc 10.2 will output
|
||||
# foo.o: sub/foo.c sub/foo.h
|
||||
# and will wrap long lines using '\' :
|
||||
# foo.o: sub/foo.c ... \
|
||||
# sub/foo.h ... \
|
||||
# ...
|
||||
set_dir_from "$object"
|
||||
# Use the source, not the object, to determine the base name, since
|
||||
# that's sadly what pgcc will do too.
|
||||
set_base_from "$source"
|
||||
tmpdepfile=$base.d
|
||||
|
||||
# For projects that build the same source file twice into different object
|
||||
# files, the pgcc approach of using the *source* file root name can cause
|
||||
# problems in parallel builds. Use a locking strategy to avoid stomping on
|
||||
# the same $tmpdepfile.
|
||||
lockdir=$base.d-lock
|
||||
trap "
|
||||
echo '$0: caught signal, cleaning up...' >&2
|
||||
rmdir '$lockdir'
|
||||
exit 1
|
||||
" 1 2 13 15
|
||||
numtries=100
|
||||
i=$numtries
|
||||
while test $i -gt 0; do
|
||||
# mkdir is a portable test-and-set.
|
||||
if mkdir "$lockdir" 2>/dev/null; then
|
||||
# This process acquired the lock.
|
||||
"$@" -MD
|
||||
stat=$?
|
||||
# Release the lock.
|
||||
rmdir "$lockdir"
|
||||
break
|
||||
else
|
||||
# If the lock is being held by a different process, wait
|
||||
# until the winning process is done or we timeout.
|
||||
while test -d "$lockdir" && test $i -gt 0; do
|
||||
sleep 1
|
||||
i=`expr $i - 1`
|
||||
done
|
||||
fi
|
||||
i=`expr $i - 1`
|
||||
done
|
||||
trap - 1 2 13 15
|
||||
if test $i -le 0; then
|
||||
echo "$0: failed to acquire lock after $numtries attempts" >&2
|
||||
echo "$0: check lockdir '$lockdir'" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
rm -f "$depfile"
|
||||
# Each line is of the form `foo.o: dependent.h',
|
||||
# or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
|
||||
# Do two passes, one to just change these to
|
||||
# `$object: dependent.h' and one to simply `dependent.h:'.
|
||||
sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
|
||||
# Some versions of the HPUX 10.20 sed can't process this invocation
|
||||
# correctly. Breaking it into two sed invocations is a workaround.
|
||||
sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \
|
||||
| sed -e 's/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
hp2)
|
||||
# The "hp" stanza above does not work with aCC (C++) and HP's ia64
|
||||
# compilers, which have integrated preprocessors. The correct option
|
||||
# to use with these is +Maked; it writes dependencies to a file named
|
||||
# 'foo.d', which lands next to the object file, wherever that
|
||||
# happens to be.
|
||||
# Much of this is similar to the tru64 case; see comments there.
|
||||
set_dir_from "$object"
|
||||
set_base_from "$object"
|
||||
if test "$libtool" = yes; then
|
||||
tmpdepfile1=$dir$base.d
|
||||
tmpdepfile2=$dir.libs/$base.d
|
||||
"$@" -Wc,+Maked
|
||||
else
|
||||
tmpdepfile1=$dir$base.d
|
||||
tmpdepfile2=$dir$base.d
|
||||
"$@" +Maked
|
||||
fi
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile1" "$tmpdepfile2"
|
||||
exit $stat
|
||||
fi
|
||||
|
||||
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
|
||||
do
|
||||
test -f "$tmpdepfile" && break
|
||||
done
|
||||
if test -f "$tmpdepfile"; then
|
||||
sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile"
|
||||
# Add 'dependent.h:' lines.
|
||||
sed -ne '2,${
|
||||
s/^ *//
|
||||
s/ \\*$//
|
||||
s/$/:/
|
||||
p
|
||||
}' "$tmpdepfile" >> "$depfile"
|
||||
else
|
||||
make_dummy_depfile
|
||||
fi
|
||||
rm -f "$tmpdepfile" "$tmpdepfile2"
|
||||
;;
|
||||
|
||||
tru64)
|
||||
# The Tru64 compiler uses -MD to generate dependencies as a side
|
||||
# effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
|
||||
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
|
||||
# dependencies in 'foo.d' instead, so we check for that too.
|
||||
# Subdirectories are respected.
|
||||
set_dir_from "$object"
|
||||
set_base_from "$object"
|
||||
|
||||
if test "$libtool" = yes; then
|
||||
# Libtool generates 2 separate objects for the 2 libraries. These
|
||||
# two compilations output dependencies in $dir.libs/$base.o.d and
|
||||
# in $dir$base.o.d. We have to check for both files, because
|
||||
# one of the two compilations can be disabled. We should prefer
|
||||
# $dir$base.o.d over $dir.libs/$base.o.d because the latter is
|
||||
# automatically cleaned when .libs/ is deleted, while ignoring
|
||||
# the former would cause a distcleancheck panic.
|
||||
tmpdepfile1=$dir$base.o.d # libtool 1.5
|
||||
tmpdepfile2=$dir.libs/$base.o.d # Likewise.
|
||||
tmpdepfile3=$dir.libs/$base.d # Compaq CCC V6.2-504
|
||||
"$@" -Wc,-MD
|
||||
else
|
||||
tmpdepfile1=$dir$base.d
|
||||
tmpdepfile2=$dir$base.d
|
||||
tmpdepfile3=$dir$base.d
|
||||
"$@" -MD
|
||||
fi
|
||||
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||
exit $stat
|
||||
fi
|
||||
|
||||
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||
do
|
||||
test -f "$tmpdepfile" && break
|
||||
done
|
||||
# Same post-processing that is required for AIX mode.
|
||||
aix_post_process_depfile
|
||||
;;
|
||||
|
||||
msvc7)
|
||||
if test "$libtool" = yes; then
|
||||
showIncludes=-Wc,-showIncludes
|
||||
else
|
||||
showIncludes=-showIncludes
|
||||
fi
|
||||
"$@" $showIncludes > "$tmpdepfile"
|
||||
stat=$?
|
||||
grep -v '^Note: including file: ' "$tmpdepfile"
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
rm -f "$depfile"
|
||||
echo "$object : \\" > "$depfile"
|
||||
# The first sed program below extracts the file names and escapes
|
||||
# backslashes for cygpath. The second sed program outputs the file
|
||||
# name when reading, but also accumulates all include files in the
|
||||
# hold buffer in order to output them again at the end. This only
|
||||
# works with sed implementations that can handle large buffers.
|
||||
sed < "$tmpdepfile" -n '
|
||||
/^Note: including file: *\(.*\)/ {
|
||||
s//\1/
|
||||
s/\\/\\\\/g
|
||||
p
|
||||
}' | $cygpath_u | sort -u | sed -n '
|
||||
s/ /\\ /g
|
||||
s/\(.*\)/'"$tab"'\1 \\/p
|
||||
s/.\(.*\) \\/\1:/
|
||||
H
|
||||
$ {
|
||||
s/.*/'"$tab"'/
|
||||
G
|
||||
p
|
||||
}' >> "$depfile"
|
||||
echo >> "$depfile" # make sure the fragment doesn't end with a backslash
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
msvc7msys)
|
||||
# This case exists only to let depend.m4 do its work. It works by
|
||||
# looking at the text of this script. This case will never be run,
|
||||
# since it is checked for above.
|
||||
exit 1
|
||||
;;
|
||||
|
||||
#nosideeffect)
|
||||
# This comment above is used by automake to tell side-effect
|
||||
# dependency tracking mechanisms from slower ones.
|
||||
|
||||
dashmstdout)
|
||||
# Important note: in order to support this mode, a compiler *must*
|
||||
# always write the preprocessed file to stdout, regardless of -o.
|
||||
"$@" || exit $?
|
||||
|
||||
# Remove the call to Libtool.
|
||||
if test "$libtool" = yes; then
|
||||
while test "X$1" != 'X--mode=compile'; do
|
||||
shift
|
||||
done
|
||||
shift
|
||||
fi
|
||||
|
||||
# Remove '-o $object'.
|
||||
IFS=" "
|
||||
for arg
|
||||
do
|
||||
case $arg in
|
||||
-o)
|
||||
shift
|
||||
;;
|
||||
$object)
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
set fnord "$@" "$arg"
|
||||
shift # fnord
|
||||
shift # $arg
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
test -z "$dashmflag" && dashmflag=-M
|
||||
# Require at least two characters before searching for ':'
|
||||
# in the target name. This is to cope with DOS-style filenames:
|
||||
# a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
|
||||
"$@" $dashmflag |
|
||||
sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile"
|
||||
rm -f "$depfile"
|
||||
cat < "$tmpdepfile" > "$depfile"
|
||||
# Some versions of the HPUX 10.20 sed can't process this sed invocation
|
||||
# correctly. Breaking it into two sed invocations is a workaround.
|
||||
tr ' ' "$nl" < "$tmpdepfile" \
|
||||
| sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
|
||||
| sed -e 's/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
dashXmstdout)
|
||||
# This case only exists to satisfy depend.m4. It is never actually
|
||||
# run, as this mode is specially recognized in the preamble.
|
||||
exit 1
|
||||
;;
|
||||
|
||||
makedepend)
|
||||
"$@" || exit $?
|
||||
# Remove any Libtool call
|
||||
if test "$libtool" = yes; then
|
||||
while test "X$1" != 'X--mode=compile'; do
|
||||
shift
|
||||
done
|
||||
shift
|
||||
fi
|
||||
# X makedepend
|
||||
shift
|
||||
cleared=no eat=no
|
||||
for arg
|
||||
do
|
||||
case $cleared in
|
||||
no)
|
||||
set ""; shift
|
||||
cleared=yes ;;
|
||||
esac
|
||||
if test $eat = yes; then
|
||||
eat=no
|
||||
continue
|
||||
fi
|
||||
case "$arg" in
|
||||
-D*|-I*)
|
||||
set fnord "$@" "$arg"; shift ;;
|
||||
# Strip any option that makedepend may not understand. Remove
|
||||
# the object too, otherwise makedepend will parse it as a source file.
|
||||
-arch)
|
||||
eat=yes ;;
|
||||
-*|$object)
|
||||
;;
|
||||
*)
|
||||
set fnord "$@" "$arg"; shift ;;
|
||||
esac
|
||||
done
|
||||
obj_suffix=`echo "$object" | sed 's/^.*\././'`
|
||||
touch "$tmpdepfile"
|
||||
${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
|
||||
rm -f "$depfile"
|
||||
# makedepend may prepend the VPATH from the source file name to the object.
|
||||
# No need to regex-escape $object, excess matching of '.' is harmless.
|
||||
sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
|
||||
# Some versions of the HPUX 10.20 sed can't process the last invocation
|
||||
# correctly. Breaking it into two sed invocations is a workaround.
|
||||
sed '1,2d' "$tmpdepfile" \
|
||||
| tr ' ' "$nl" \
|
||||
| sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
|
||||
| sed -e 's/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile" "$tmpdepfile".bak
|
||||
;;
|
||||
|
||||
cpp)
|
||||
# Important note: in order to support this mode, a compiler *must*
|
||||
# always write the preprocessed file to stdout.
|
||||
"$@" || exit $?
|
||||
|
||||
# Remove the call to Libtool.
|
||||
if test "$libtool" = yes; then
|
||||
while test "X$1" != 'X--mode=compile'; do
|
||||
shift
|
||||
done
|
||||
shift
|
||||
fi
|
||||
|
||||
# Remove '-o $object'.
|
||||
IFS=" "
|
||||
for arg
|
||||
do
|
||||
case $arg in
|
||||
-o)
|
||||
shift
|
||||
;;
|
||||
$object)
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
set fnord "$@" "$arg"
|
||||
shift # fnord
|
||||
shift # $arg
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
"$@" -E \
|
||||
| sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
|
||||
-e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
|
||||
| sed '$ s: \\$::' > "$tmpdepfile"
|
||||
rm -f "$depfile"
|
||||
echo "$object : \\" > "$depfile"
|
||||
cat < "$tmpdepfile" >> "$depfile"
|
||||
sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
msvisualcpp)
|
||||
# Important note: in order to support this mode, a compiler *must*
|
||||
# always write the preprocessed file to stdout.
|
||||
"$@" || exit $?
|
||||
|
||||
# Remove the call to Libtool.
|
||||
if test "$libtool" = yes; then
|
||||
while test "X$1" != 'X--mode=compile'; do
|
||||
shift
|
||||
done
|
||||
shift
|
||||
fi
|
||||
|
||||
IFS=" "
|
||||
for arg
|
||||
do
|
||||
case "$arg" in
|
||||
-o)
|
||||
shift
|
||||
;;
|
||||
$object)
|
||||
shift
|
||||
;;
|
||||
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
|
||||
set fnord "$@"
|
||||
shift
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
set fnord "$@" "$arg"
|
||||
shift
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
done
|
||||
"$@" -E 2>/dev/null |
|
||||
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
|
||||
rm -f "$depfile"
|
||||
echo "$object : \\" > "$depfile"
|
||||
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile"
|
||||
echo "$tab" >> "$depfile"
|
||||
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
msvcmsys)
|
||||
# This case exists only to let depend.m4 do its work. It works by
|
||||
# looking at the text of this script. This case will never be run,
|
||||
# since it is checked for above.
|
||||
exit 1
|
||||
;;
|
||||
|
||||
none)
|
||||
exec "$@"
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "Unknown depmode $depmode" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
|
||||
# Local Variables:
|
||||
# mode: shell-script
|
||||
# sh-indentation: 2
|
||||
# eval: (add-hook 'before-save-hook 'time-stamp)
|
||||
# time-stamp-start: "scriptversion="
|
||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||
# time-stamp-time-zone: "UTC0"
|
||||
# time-stamp-end: "; # UTC"
|
||||
# End:
|
||||
80
vendor/libssh2/docs/AUTHORS
vendored
Normal file
80
vendor/libssh2/docs/AUTHORS
vendored
Normal file
|
|
@ -0,0 +1,80 @@
|
|||
libssh2 is the result of many friendly people. This list is an attempt to
|
||||
mention all contributors. If we have missed anyone, tell us!
|
||||
|
||||
This list of names is a-z sorted.
|
||||
|
||||
Adam Gobiowski
|
||||
Alexander Holyapin
|
||||
Alexander Lamaison
|
||||
Alfred Gebert
|
||||
Ben Kibbey
|
||||
Bjorn Stenborg
|
||||
Carlo Bramini
|
||||
Cristian Rodríguez
|
||||
Daiki Ueno
|
||||
Dan Casey
|
||||
Dan Fandrich
|
||||
Daniel Stenberg
|
||||
Dave Hayden
|
||||
Dave McCaldon
|
||||
David J Sullivan
|
||||
David Robins
|
||||
Dmitry Smirnov
|
||||
Douglas Masterson
|
||||
Edink Kadribasic
|
||||
Erik Brossler
|
||||
Francois Dupoux
|
||||
Gellule Xg
|
||||
Grubsky Grigory
|
||||
Guenter Knauf
|
||||
Heiner Steven
|
||||
Henrik Nordstrom
|
||||
James Housleys
|
||||
Jasmeet Bagga
|
||||
Jean-Louis Charton
|
||||
Jernej Kovacic
|
||||
Joey Degges
|
||||
John Little
|
||||
Jose Baars
|
||||
Jussi Mononen
|
||||
Kamil Dudka
|
||||
Lars Nordin
|
||||
Mark McPherson
|
||||
Mark Smith
|
||||
Markus Moeller
|
||||
Matt Lilley
|
||||
Matthew Booth
|
||||
Maxime Larocque
|
||||
Mike Protts
|
||||
Mikhail Gusarov
|
||||
Neil Gierman
|
||||
Olivier Hervieu
|
||||
Paul Howarth
|
||||
Paul Querna
|
||||
Paul Veldkamp
|
||||
Peter Krempa
|
||||
Peter O'Gorman
|
||||
Peter Stuge
|
||||
Pierre Joye
|
||||
Rafael Kitover
|
||||
Romain Bondue
|
||||
Sara Golemon
|
||||
Satish Mittal
|
||||
Sean Peterson
|
||||
Selcuk Gueney
|
||||
Simon Hart
|
||||
Simon Josefsson
|
||||
Sofian Brabez
|
||||
Steven Ayre
|
||||
Steven Dake
|
||||
Steven Van Ingelgem
|
||||
TJ Saunders
|
||||
Tommy Lindgren
|
||||
Tor Arntsen
|
||||
Viktor Szakats
|
||||
Vincent Jaulin
|
||||
Vincent Torri
|
||||
Vlad Grachov
|
||||
Wez Furlong
|
||||
Yang Tse
|
||||
Zl Liu
|
||||
25
vendor/libssh2/docs/BINDINGS.md
vendored
Normal file
25
vendor/libssh2/docs/BINDINGS.md
vendored
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
libssh2 bindings
|
||||
================
|
||||
|
||||
Creative people have written bindings or interfaces for various environments
|
||||
and programming languages. Using one of these bindings allows you to take
|
||||
advantage of libssh2 directly from within your favourite language.
|
||||
|
||||
The bindings listed below are not part of the libssh2 distribution archives,
|
||||
but must be downloaded and installed separately.
|
||||
|
||||
<!-- markdown-link-check-disable -->
|
||||
|
||||
[Cocoa/Objective-C](https://github.com/karelia/libssh2_sftp-Cocoa-wrapper)
|
||||
|
||||
[Haskell FFI bindings](https://hackage.haskell.org/package/libssh2)
|
||||
|
||||
[Perl Net::SSH2](https://metacpan.org/pod/Net::SSH2)
|
||||
|
||||
[PHP ssh2](https://pecl.php.net/package/ssh2)
|
||||
|
||||
[Python pylibssh2](https://pypi.python.org/pypi/pylibssh2)
|
||||
|
||||
[Python-ctypes PySsh2](https://github.com/gellule/PySsh2)
|
||||
|
||||
[Ruby libssh2-ruby](https://github.com/mitchellh/libssh2-ruby)
|
||||
44
vendor/libssh2/docs/CMakeLists.txt
vendored
Normal file
44
vendor/libssh2/docs/CMakeLists.txt
vendored
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
# Copyright (C) Alexander Lamaison <alexander.lamaison@gmail.com>
|
||||
# Copyright (C) Viktor Szakats
|
||||
#
|
||||
# Redistribution and use in source and binary forms,
|
||||
# with or without modification, are permitted provided
|
||||
# that the following conditions are met:
|
||||
#
|
||||
# Redistributions of source code must retain the above
|
||||
# copyright notice, this list of conditions and the
|
||||
# following disclaimer.
|
||||
#
|
||||
# Redistributions in binary form must reproduce the above
|
||||
# copyright notice, this list of conditions and the following
|
||||
# disclaimer in the documentation and/or other materials
|
||||
# provided with the distribution.
|
||||
#
|
||||
# Neither the name of the copyright holder nor the names
|
||||
# of any other contributors may be used to endorse or
|
||||
# promote products derived from this software without
|
||||
# specific prior written permission.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
|
||||
# CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
|
||||
# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
|
||||
# USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
|
||||
# OF SUCH DAMAGE.
|
||||
#
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
transform_makefile_inc("Makefile.am" "${CMAKE_CURRENT_BINARY_DIR}/Makefile.am.cmake")
|
||||
# Get 'dist_man_MANS' variable
|
||||
include("${CMAKE_CURRENT_BINARY_DIR}/Makefile.am.cmake")
|
||||
|
||||
include(GNUInstallDirs)
|
||||
install(FILES ${dist_man_MANS} DESTINATION "${CMAKE_INSTALL_MANDIR}/man3")
|
||||
989
vendor/libssh2/docs/HACKING-CRYPTO
vendored
Normal file
989
vendor/libssh2/docs/HACKING-CRYPTO
vendored
Normal file
|
|
@ -0,0 +1,989 @@
|
|||
Definitions needed to implement a specific crypto library
|
||||
|
||||
This document offers some hints about implementing a new crypto library
|
||||
interface.
|
||||
|
||||
A crypto library interface consists of at least a header file, defining
|
||||
entities referenced from the libssh2 core modules.
|
||||
Real code implementation (if needed), is left at the implementor's choice.
|
||||
|
||||
This document lists the entities that must/may be defined in the header file.
|
||||
|
||||
Procedures listed as "void" may indeed have a result type: the void indication
|
||||
indicates the libssh2 core modules never use the function result.
|
||||
|
||||
|
||||
0) Build system.
|
||||
|
||||
Adding a crypto backend to the autotools build system (./configure) is easy:
|
||||
|
||||
0.1) Add one new line in configure.ac
|
||||
|
||||
m4_set_add([crypto_backends], [newname])
|
||||
|
||||
This automatically creates a --with-crypto=newname option.
|
||||
|
||||
0.2) Add an m4_case stanza to LIBSSH2_CRYPTO_CHECK in acinclude.m4
|
||||
|
||||
This must check for all required libraries, and if found set and AC_SUBST a
|
||||
variable with the library linking flags. The recommended method is to use
|
||||
LIBSSH2_LIB_HAVE_LINKFLAGS from LIBSSH2_CRYPTO_CHECK, which automatically
|
||||
creates and handles a --with-$newname-prefix option and sets an
|
||||
LTLIBNEWNAME variable on success.
|
||||
|
||||
0.3) Add new header to src/Makefile.inc
|
||||
|
||||
0.4) Include new source in src/crypto.c
|
||||
|
||||
0.5) Add a new block in configure.ac
|
||||
|
||||
```
|
||||
elif test "$found_crypto" = "newname"; then
|
||||
LIBS="${LIBS} ${LTLIBNEWNAME}"
|
||||
```
|
||||
|
||||
0.6) Add CMake detection logic to CMakeLists.txt
|
||||
|
||||
1) Crypto library initialization/termination.
|
||||
|
||||
void libssh2_crypto_init(void);
|
||||
Initializes the crypto library. May be an empty macro if not needed.
|
||||
|
||||
void libssh2_crypto_exit(void);
|
||||
Terminates the crypto library use. May be an empty macro if not needed.
|
||||
|
||||
1.1) Crypto runtime detection
|
||||
|
||||
The libssh2_crypto_engine_t enum must include the new engine, and
|
||||
libssh2_crypto_engine() must return it when it is built in.
|
||||
|
||||
2) HMAC
|
||||
|
||||
libssh2_hmac_ctx
|
||||
Type of an HMAC computation context. Generally a struct.
|
||||
Used for all hash algorithms.
|
||||
|
||||
int _libssh2_hmac_ctx_init(libssh2_hmac_ctx *ctx);
|
||||
Initializes the HMAC computation context ctx.
|
||||
Called before setting-up the hash algorithm.
|
||||
Must return 1 for success and 0 for failure.
|
||||
|
||||
int _libssh2_hmac_update(libssh2_hmac_ctx *ctx,
|
||||
const void *data, int datalen);
|
||||
Continue computation of an HMAC on datalen bytes at data using context ctx.
|
||||
Must return 1 for success and 0 for failure.
|
||||
|
||||
int _libssh2_hmac_final(libssh2_hmac_ctx *ctx,
|
||||
void output[]);
|
||||
Get the computed HMAC from context ctx into the output buffer. The
|
||||
minimum data buffer size depends on the HMAC hash algorithm.
|
||||
Must return 1 for success and 0 for failure.
|
||||
|
||||
void _libssh2_hmac_cleanup(libssh2_hmac_ctx *ctx);
|
||||
Releases the HMAC computation context at ctx.
|
||||
|
||||
|
||||
3) Hash algorithms.
|
||||
|
||||
3.1) SHA-1
|
||||
Must always be implemented.
|
||||
|
||||
SHA_DIGEST_LENGTH
|
||||
#define to 20, the SHA-1 digest length.
|
||||
|
||||
libssh2_sha1_ctx
|
||||
Type of an SHA-1 computation context. Generally a struct.
|
||||
|
||||
int libssh2_sha1_init(libssh2_sha1_ctx *x);
|
||||
Initializes the SHA-1 computation context at x.
|
||||
Returns 1 for success and 0 for failure
|
||||
|
||||
int libssh2_sha1_update(libssh2_sha1_ctx ctx,
|
||||
const unsigned char *data,
|
||||
size_t len);
|
||||
Continue computation of SHA-1 on len bytes at data using context ctx.
|
||||
Note: if the ctx parameter is modified by the underlying code,
|
||||
this procedure must be implemented as a macro to map ctx --> &ctx.
|
||||
Must return 1 for success and 0 for failure.
|
||||
|
||||
int libssh2_sha1_final(libssh2_sha1_ctx ctx,
|
||||
unsigned char output[SHA_DIGEST_LEN]);
|
||||
Get the computed SHA-1 signature from context ctx and store it into the
|
||||
output buffer.
|
||||
Release the context.
|
||||
Note: if the ctx parameter is modified by the underlying code,
|
||||
this procedure must be implemented as a macro to map ctx --> &ctx.
|
||||
Must return 1 for success and 0 for failure.
|
||||
|
||||
int libssh2_hmac_sha1_init(libssh2_hmac_ctx *ctx,
|
||||
const void *key,
|
||||
int keylen);
|
||||
Setup the HMAC computation context ctx for an HMAC-SHA-1 computation using the
|
||||
keylen-byte key. Is invoked just after libssh2_hmac_ctx_init().
|
||||
Returns 1 for success and 0 for failure.
|
||||
|
||||
3.2) SHA-256
|
||||
Must always be implemented.
|
||||
|
||||
SHA256_DIGEST_LENGTH
|
||||
#define to 32, the SHA-256 digest length.
|
||||
|
||||
libssh2_sha256_ctx
|
||||
Type of an SHA-256 computation context. Generally a struct.
|
||||
|
||||
int libssh2_sha256_init(libssh2_sha256_ctx *x);
|
||||
Initializes the SHA-256 computation context at x.
|
||||
Returns 1 for success and 0 for failure
|
||||
|
||||
int libssh2_sha256_update(libssh2_sha256_ctx ctx,
|
||||
const unsigned char *data,
|
||||
size_t len);
|
||||
Continue computation of SHA-256 on len bytes at data using context ctx.
|
||||
Note: if the ctx parameter is modified by the underlying code,
|
||||
this procedure must be implemented as a macro to map ctx --> &ctx.
|
||||
Must return 1 for success and 0 for failure.
|
||||
|
||||
int libssh2_sha256_final(libssh2_sha256_ctx ctx,
|
||||
unsigned char output[SHA256_DIGEST_LENGTH]);
|
||||
Gets the computed SHA-256 signature from context ctx into the output buffer.
|
||||
Release the context.
|
||||
Note: if the ctx parameter is modified by the underlying code,
|
||||
this procedure must be implemented as a macro to map ctx --> &ctx.
|
||||
Must return 1 for success and 0 for failure.
|
||||
|
||||
int libssh2_sha256(const unsigned char *message,
|
||||
size_t len,
|
||||
unsigned char output[SHA256_DIGEST_LENGTH]);
|
||||
Computes the SHA-256 signature over the given message of length len and
|
||||
store the result into the output buffer.
|
||||
Return 1 if error, else 0.
|
||||
Note: Seems unused in current code, but defined in each crypto library backend.
|
||||
|
||||
LIBSSH2_HMAC_SHA256
|
||||
#define as 1 if the crypto library supports HMAC-SHA-256, else 0.
|
||||
If defined as 0, the rest of this section can be omitted.
|
||||
|
||||
int libssh2_hmac_sha256_init(libssh2_hmac_ctx *ctx,
|
||||
const void *key,
|
||||
int keylen);
|
||||
Setup the HMAC computation context ctx for an HMAC-256 computation using the
|
||||
keylen-byte key. Is invoked just after libssh2_hmac_ctx_init().
|
||||
Returns 1 for success and 0 for failure.
|
||||
|
||||
3.3) SHA-384
|
||||
Mandatory if ECDSA is implemented. Can be omitted otherwise.
|
||||
|
||||
SHA384_DIGEST_LENGTH
|
||||
#define to 48, the SHA-384 digest length.
|
||||
|
||||
libssh2_sha384_ctx
|
||||
Type of an SHA-384 computation context. Generally a struct.
|
||||
|
||||
int libssh2_sha384_init(libssh2_sha384_ctx *x);
|
||||
Initializes the SHA-384 computation context at x.
|
||||
Returns 1 for success and 0 for failure
|
||||
|
||||
int libssh2_sha384_update(libssh2_sha384_ctx ctx,
|
||||
const unsigned char *data,
|
||||
size_t len);
|
||||
Continue computation of SHA-384 on len bytes at data using context ctx.
|
||||
Note: if the ctx parameter is modified by the underlying code,
|
||||
this procedure must be implemented as a macro to map ctx --> &ctx.
|
||||
Must return 1 for success and 0 for failure.
|
||||
|
||||
int libssh2_sha384_final(libssh2_sha384_ctx ctx,
|
||||
unsigned char output[SHA384_DIGEST_LENGTH]);
|
||||
Gets the computed SHA-384 signature from context ctx into the output buffer.
|
||||
Release the context.
|
||||
Note: if the ctx parameter is modified by the underlying code,
|
||||
this procedure must be implemented as a macro to map ctx --> &ctx.
|
||||
Must return 1 for success and 0 for failure.
|
||||
|
||||
int libssh2_sha384(const unsigned char *message,
|
||||
size_t len,
|
||||
unsigned char output[SHA384_DIGEST_LENGTH]);
|
||||
Computes the SHA-384 signature over the given message of length len and
|
||||
store the result into the output buffer.
|
||||
Return 1 if error, else 0.
|
||||
|
||||
3.4) SHA-512
|
||||
Must always be implemented.
|
||||
|
||||
SHA512_DIGEST_LENGTH
|
||||
#define to 64, the SHA-512 digest length.
|
||||
|
||||
libssh2_sha512_ctx
|
||||
Type of an SHA-512 computation context. Generally a struct.
|
||||
|
||||
int libssh2_sha512_init(libssh2_sha512_ctx *x);
|
||||
Initializes the SHA-512 computation context at x.
|
||||
Returns 1 for success and 0 for failure
|
||||
|
||||
int libssh2_sha512_update(libssh2_sha512_ctx ctx,
|
||||
const unsigned char *data,
|
||||
size_t len);
|
||||
Continue computation of SHA-512 on len bytes at data using context ctx.
|
||||
Note: if the ctx parameter is modified by the underlying code,
|
||||
this procedure must be implemented as a macro to map ctx --> &ctx.
|
||||
Must return 1 for success and 0 for failure.
|
||||
|
||||
int libssh2_sha512_final(libssh2_sha512_ctx ctx,
|
||||
unsigned char output[SHA512_DIGEST_LENGTH]);
|
||||
Gets the computed SHA-512 signature from context ctx into the output buffer.
|
||||
Release the context.
|
||||
Note: if the ctx parameter is modified by the underlying code,
|
||||
this procedure must be implemented as a macro to map ctx --> &ctx.
|
||||
Must return 1 for success and 0 for failure.
|
||||
|
||||
int libssh2_sha512(const unsigned char *message,
|
||||
size_t len,
|
||||
unsigned char output[SHA512_DIGEST_LENGTH]);
|
||||
Computes the SHA-512 signature over the given message of length len and
|
||||
store the result into the output buffer.
|
||||
Return 1 if error, else 0.
|
||||
Note: Seems unused in current code, but defined in each crypto library backend.
|
||||
|
||||
LIBSSH2_HMAC_SHA512
|
||||
#define as 1 if the crypto library supports HMAC-SHA-512, else 0.
|
||||
If defined as 0, the rest of this section can be omitted.
|
||||
|
||||
int libssh2_hmac_sha512_init(libssh2_hmac_ctx *ctx,
|
||||
const void *key,
|
||||
int keylen);
|
||||
Setup the HMAC computation context ctx for an HMAC-512 computation using the
|
||||
keylen-byte key. Is invoked just after libssh2_hmac_ctx_init().
|
||||
Returns 1 for success and 0 for failure.
|
||||
|
||||
3.5) MD5
|
||||
LIBSSH2_MD5
|
||||
#define to 1 if the crypto library supports MD5, else 0.
|
||||
If defined as 0, the rest of this section can be omitted.
|
||||
|
||||
MD5_DIGEST_LENGTH
|
||||
#define to 16, the MD5 digest length.
|
||||
|
||||
libssh2_md5_ctx
|
||||
Type of an MD5 computation context. Generally a struct.
|
||||
|
||||
int libssh2_md5_init(libssh2_md5_ctx *x);
|
||||
Initializes the MD5 computation context at x.
|
||||
Returns 1 for success and 0 for failure
|
||||
|
||||
int libssh2_md5_update(libssh2_md5_ctx ctx,
|
||||
const unsigned char *data,
|
||||
size_t len);
|
||||
Continues computation of MD5 on len bytes at data using context ctx.
|
||||
Returns 1 for success and 0 for failure.
|
||||
Note: if the ctx parameter is modified by the underlying code,
|
||||
this procedure must be implemented as a macro to map ctx --> &ctx.
|
||||
Must return 1 for success and 0 for failure.
|
||||
|
||||
int libssh2_md5_final(libssh2_md5_ctx ctx,
|
||||
unsigned char output[MD5_DIGEST_LENGTH]);
|
||||
Gets the computed MD5 signature from context ctx into the output buffer.
|
||||
Release the context.
|
||||
Note: if the ctx parameter is modified by the underlying code,
|
||||
this procedure must be implemented as a macro to map ctx --> &ctx.
|
||||
Must return 1 for success and 0 for failure.
|
||||
|
||||
int libssh2_hmac_md5_init(libssh2_hmac_ctx *ctx,
|
||||
const void *key,
|
||||
int keylen);
|
||||
Setup the HMAC computation context ctx for an HMAC-MD5 computation using the
|
||||
keylen-byte key. Is invoked just after libssh2_hmac_ctx_init().
|
||||
Returns 1 for success and 0 for failure.
|
||||
|
||||
3.6) RIPEMD-160
|
||||
LIBSSH2_HMAC_RIPEMD
|
||||
#define as 1 if the crypto library supports HMAC-RIPEMD-160, else 0.
|
||||
If defined as 0, the rest of this section can be omitted.
|
||||
|
||||
int libssh2_hmac_ripemd160_init(libssh2_hmac_ctx *ctx,
|
||||
const void *key,
|
||||
int keylen);
|
||||
Setup the HMAC computation context ctx for an HMAC-RIPEMD-160 computation using
|
||||
the keylen-byte key. Is invoked just after libssh2_hmac_ctx_init().
|
||||
Returns 1 for success and 0 for failure.
|
||||
|
||||
|
||||
4) Bidirectional key ciphers.
|
||||
|
||||
_libssh2_cipher_ctx
|
||||
Type of a cipher computation context.
|
||||
|
||||
_libssh2_cipher_type(name);
|
||||
Macro defining name as storage identifying a cipher algorithm for
|
||||
the crypto library interface. No trailing semicolon.
|
||||
|
||||
int _libssh2_cipher_init(_libssh2_cipher_ctx *h,
|
||||
_libssh2_cipher_type(algo),
|
||||
unsigned char *iv,
|
||||
unsigned char *secret,
|
||||
int encrypt);
|
||||
Creates a cipher context for the given algorithm with the initialization vector
|
||||
iv and the secret key secret. Prepare for encryption or decryption depending on
|
||||
encrypt.
|
||||
Return 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_cipher_crypt(_libssh2_cipher_ctx *ctx,
|
||||
_libssh2_cipher_type(algo),
|
||||
int encrypt,
|
||||
unsigned char *block,
|
||||
size_t blocksize,
|
||||
int firstlast);
|
||||
Encrypt or decrypt in-place data at (block, blocksize) using the given
|
||||
context and/or algorithm.
|
||||
Return 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
void _libssh2_cipher_dtor(_libssh2_cipher_ctx *ctx);
|
||||
Release cipher context at ctx.
|
||||
|
||||
4.1) AES
|
||||
4.1.1) AES in CBC block mode.
|
||||
LIBSSH2_AES
|
||||
#define as 1 if the crypto library supports AES in CBC mode, else 0.
|
||||
If defined as 0, the rest of this section can be omitted.
|
||||
|
||||
_libssh2_cipher_aes128
|
||||
AES-128-CBC algorithm identifier initializer.
|
||||
#define with constant value of type _libssh2_cipher_type().
|
||||
|
||||
_libssh2_cipher_aes192
|
||||
AES-192-CBC algorithm identifier initializer.
|
||||
#define with constant value of type _libssh2_cipher_type().
|
||||
|
||||
_libssh2_cipher_aes256
|
||||
AES-256-CBC algorithm identifier initializer.
|
||||
#define with constant value of type _libssh2_cipher_type().
|
||||
|
||||
4.1.2) AES in CTR block mode.
|
||||
LIBSSH2_AES_CTR
|
||||
#define as 1 if the crypto library supports AES in CTR mode, else 0.
|
||||
If defined as 0, the rest of this section can be omitted.
|
||||
|
||||
_libssh2_cipher_aes128ctr
|
||||
AES-128-CTR algorithm identifier initializer.
|
||||
#define with constant value of type _libssh2_cipher_type().
|
||||
|
||||
_libssh2_cipher_aes192ctr
|
||||
AES-192-CTR algorithm identifier initializer.
|
||||
#define with constant value of type _libssh2_cipher_type().
|
||||
|
||||
_libssh2_cipher_aes256ctr
|
||||
AES-256-CTR algorithm identifier initializer.
|
||||
#define with constant value of type _libssh2_cipher_type().
|
||||
|
||||
4.2) Blowfish in CBC block mode.
|
||||
LIBSSH2_BLOWFISH
|
||||
#define as 1 if the crypto library supports blowfish in CBC mode, else 0.
|
||||
If defined as 0, the rest of this section can be omitted.
|
||||
|
||||
_libssh2_cipher_blowfish
|
||||
Blowfish-CBC algorithm identifier initializer.
|
||||
#define with constant value of type _libssh2_cipher_type().
|
||||
|
||||
4.3) RC4.
|
||||
LIBSSH2_RC4
|
||||
#define as 1 if the crypto library supports RC4 (arcfour), else 0.
|
||||
If defined as 0, the rest of this section can be omitted.
|
||||
|
||||
_libssh2_cipher_arcfour
|
||||
RC4 algorithm identifier initializer.
|
||||
#define with constant value of type _libssh2_cipher_type().
|
||||
|
||||
4.4) CAST5 in CBC block mode.
|
||||
LIBSSH2_CAST
|
||||
#define 1 if the crypto library supports cast, else 0.
|
||||
If defined as 0, the rest of this section can be omitted.
|
||||
|
||||
_libssh2_cipher_cast5
|
||||
CAST5-CBC algorithm identifier initializer.
|
||||
#define with constant value of type _libssh2_cipher_type().
|
||||
|
||||
4.5) Triple DES in CBC block mode.
|
||||
LIBSSH2_3DES
|
||||
#define as 1 if the crypto library supports TripleDES in CBC mode, else 0.
|
||||
If defined as 0, the rest of this section can be omitted.
|
||||
|
||||
_libssh2_cipher_3des
|
||||
TripleDES-CBC algorithm identifier initializer.
|
||||
#define with constant value of type _libssh2_cipher_type().
|
||||
|
||||
|
||||
5) Diffie-Hellman support.
|
||||
|
||||
LIBSSH2_DH_GEX_MINGROUP
|
||||
The minimum Diffie-Hellman group length in bits supported by the backend.
|
||||
Usually defined as 2048.
|
||||
|
||||
LIBSSH2_DH_GEX_OPTGROUP
|
||||
The preferred Diffie-Hellman group length in bits. Usually defined as 4096.
|
||||
|
||||
LIBSSH2_DH_GEX_MAXGROUP
|
||||
The maximum Diffie-Hellman group length in bits supported by the backend.
|
||||
Usually defined as 8192.
|
||||
|
||||
LIBSSH2_DH_MAX_MODULUS_BITS
|
||||
The maximum Diffie-Hellman modulus bit count accepted from the server. This
|
||||
value must be supported by the backend. Usually 16384.
|
||||
|
||||
5.1) Diffie-Hellman context.
|
||||
_libssh2_dh_ctx
|
||||
Type of a Diffie-Hellman computation context.
|
||||
Must always be defined.
|
||||
|
||||
5.2) Diffie-Hellman computation procedures.
|
||||
void libssh2_dh_init(_libssh2_dh_ctx *dhctx);
|
||||
Initializes the Diffie-Hellman context at `dhctx'. No effective context
|
||||
creation needed here.
|
||||
|
||||
int libssh2_dh_key_pair(_libssh2_dh_ctx *dhctx, _libssh2_bn *public,
|
||||
_libssh2_bn *g, _libssh2_bn *p, int group_order,
|
||||
_libssh2_bn_ctx *bnctx);
|
||||
Generates a Diffie-Hellman key pair using base `g', prime `p' and the given
|
||||
`group_order'. Can use the given big number context `bnctx' if needed.
|
||||
The private key is stored as opaque in the Diffie-Hellman context `*dhctx' and
|
||||
the public key is returned in `public'.
|
||||
0 is returned upon success, else -1.
|
||||
|
||||
int libssh2_dh_secret(_libssh2_dh_ctx *dhctx, _libssh2_bn *secret,
|
||||
_libssh2_bn *f, _libssh2_bn *p, _libssh2_bn_ctx * bnctx)
|
||||
Computes the Diffie-Hellman secret from the previously created context `*dhctx',
|
||||
the public key `f' from the other party and the same prime `p' used at
|
||||
context creation. The result is stored in `secret'.
|
||||
0 is returned upon success, else -1.
|
||||
|
||||
void libssh2_dh_dtor(_libssh2_dh_ctx *dhctx)
|
||||
Destroys Diffie-Hellman context at `dhctx' and resets its storage.
|
||||
|
||||
|
||||
6) Big numbers.
|
||||
Positive multi-byte integers support is sufficient.
|
||||
|
||||
6.1) Computation contexts.
|
||||
This has a real meaning if the big numbers computations need some context
|
||||
storage. If not, use a dummy type and functions (macros).
|
||||
|
||||
_libssh2_bn_ctx
|
||||
Type of multiple precision computation context. May not be empty. if not used,
|
||||
#define as char, for example.
|
||||
|
||||
_libssh2_bn_ctx _libssh2_bn_ctx_new(void);
|
||||
Returns a new multiple precision computation context.
|
||||
|
||||
void _libssh2_bn_ctx_free(_libssh2_bn_ctx ctx);
|
||||
Releases a multiple precision computation context.
|
||||
|
||||
6.2) Computation support.
|
||||
_libssh2_bn
|
||||
Type of multiple precision numbers (aka bignumbers or huge integers) for the
|
||||
crypto library.
|
||||
|
||||
_libssh2_bn * _libssh2_bn_init(void);
|
||||
Creates a multiple precision number (preset to zero).
|
||||
|
||||
_libssh2_bn * _libssh2_bn_init_from_bin(void);
|
||||
Create a multiple precision number intended to be set by the
|
||||
_libssh2_bn_from_bin() function (see below). Unlike _libssh2_bn_init(), this
|
||||
code may be a dummy initializer if the _libssh2_bn_from_bin() actually
|
||||
allocates the number. Returns a value of type _libssh2_bn *.
|
||||
|
||||
void _libssh2_bn_free(_libssh2_bn *bn);
|
||||
Destroys the multiple precision number at bn.
|
||||
|
||||
unsigned long _libssh2_bn_bytes(_libssh2_bn *bn);
|
||||
Get the number of bytes needed to store the bits of the multiple precision
|
||||
number at bn.
|
||||
|
||||
unsigned long _libssh2_bn_bits(_libssh2_bn *bn);
|
||||
Returns the number of bits of multiple precision number at bn.
|
||||
|
||||
int _libssh2_bn_set_word(_libssh2_bn *bn, unsigned long val);
|
||||
Sets the value of bn to val.
|
||||
Returns 1 on success, 0 otherwise.
|
||||
|
||||
_libssh2_bn * _libssh2_bn_from_bin(_libssh2_bn *bn, int len,
|
||||
const unsigned char *val);
|
||||
Converts the positive integer in big-endian form of length len at val
|
||||
into a _libssh2_bn and place it in bn. If bn is NULL, a new _libssh2_bn is
|
||||
created.
|
||||
Returns a pointer to target _libssh2_bn or NULL if error.
|
||||
|
||||
int _libssh2_bn_to_bin(_libssh2_bn *bn, unsigned char *val);
|
||||
Converts the absolute value of bn into big-endian form and store it at
|
||||
val. val must point to _libssh2_bn_bytes(bn) bytes of memory.
|
||||
Returns the length of the big-endian number.
|
||||
|
||||
|
||||
7) Private key algorithms.
|
||||
Format of an RSA public key:
|
||||
a) "ssh-rsa".
|
||||
b) RSA exponent, MSB first, with high order bit = 0.
|
||||
c) RSA modulus, MSB first, with high order bit = 0.
|
||||
Each item is preceded by its 32-bit byte length, MSB first.
|
||||
|
||||
Format of a DSA public key:
|
||||
a) "ssh-dss".
|
||||
b) p, MSB first, with high order bit = 0.
|
||||
c) q, MSB first, with high order bit = 0.
|
||||
d) g, MSB first, with high order bit = 0.
|
||||
e) pub_key, MSB first, with high order bit = 0.
|
||||
Each item is preceded by its 32-bit byte length, MSB first.
|
||||
|
||||
Format of an ECDSA public key:
|
||||
a) "ecdsa-sha2-nistp256" or "ecdsa-sha2-nistp384" or "ecdsa-sha2-nistp521".
|
||||
b) domain: "nistp256", "nistp384" or "nistp521" matching a).
|
||||
c) raw public key ("octal").
|
||||
Each item is preceded by its 32-bit byte length, MSB first.
|
||||
|
||||
Format of an ED25519 public key:
|
||||
a) "ssh-ed25519".
|
||||
b) raw key (32 bytes).
|
||||
Each item is preceded by its 32-bit byte length, MSB first.
|
||||
|
||||
int _libssh2_pub_priv_keyfile(LIBSSH2_SESSION *session,
|
||||
unsigned char **method,
|
||||
size_t *method_len,
|
||||
unsigned char **pubkeydata,
|
||||
size_t *pubkeydata_len,
|
||||
const char *privatekey,
|
||||
const char *passphrase);
|
||||
Reads a private key from file privatekey and extract the public key -->
|
||||
(pubkeydata, pubkeydata_len). Store the associated method (ssh-rsa or ssh-dss)
|
||||
into (method, method_len).
|
||||
Both buffers have to be allocated using LIBSSH2_ALLOC().
|
||||
Returns 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_pub_priv_keyfilememory(LIBSSH2_SESSION *session,
|
||||
unsigned char **method,
|
||||
size_t *method_len,
|
||||
unsigned char **pubkeydata,
|
||||
size_t *pubkeydata_len,
|
||||
const char *privatekeydata,
|
||||
size_t privatekeydata_len,
|
||||
const char *passphrase);
|
||||
Gets a private key from bytes at (privatekeydata, privatekeydata_len) and
|
||||
extract the public key --> (pubkeydata, pubkeydata_len). Store the associated
|
||||
method (ssh-rsa or ssh-dss) into (method, method_len).
|
||||
Both buffers have to be allocated using LIBSSH2_ALLOC().
|
||||
Returns 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
|
||||
7.1) RSA
|
||||
LIBSSH2_RSA
|
||||
#define as 1 if the crypto library supports RSA, else 0.
|
||||
If defined as 0, the rest of this section can be omitted.
|
||||
|
||||
libssh2_rsa_ctx
|
||||
Type of an RSA computation context. Generally a struct.
|
||||
|
||||
int _libssh2_rsa_new(libssh2_rsa_ctx **rsa,
|
||||
const unsigned char *edata,
|
||||
unsigned long elen,
|
||||
const unsigned char *ndata,
|
||||
unsigned long nlen,
|
||||
const unsigned char *ddata,
|
||||
unsigned long dlen,
|
||||
const unsigned char *pdata,
|
||||
unsigned long plen,
|
||||
const unsigned char *qdata,
|
||||
unsigned long qlen,
|
||||
const unsigned char *e1data,
|
||||
unsigned long e1len,
|
||||
const unsigned char *e2data,
|
||||
unsigned long e2len,
|
||||
const unsigned char *coeffdata, unsigned long coefflen);
|
||||
Creates a new context for RSA computations from key source values:
|
||||
pdata, plen Prime number p. Only used if private key known (ddata).
|
||||
qdata, qlen Prime number q. Only used if private key known (ddata).
|
||||
ndata, nlen Modulus n.
|
||||
edata, elen Exponent e.
|
||||
ddata, dlen e^-1 % phi(n) = private key. May be NULL if unknown.
|
||||
e1data, e1len dp = d % (p-1). Only used if private key known (dtata).
|
||||
e2data, e2len dq = d % (q-1). Only used if private key known (dtata).
|
||||
coeffdata, coefflen q^-1 % p. Only used if private key known.
|
||||
Returns 0 if OK.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
Note: the current generic code only calls this function with e and n (public
|
||||
key parameters): unless used internally by the backend, it is not needed to
|
||||
support the private key and the other parameters here.
|
||||
|
||||
int _libssh2_rsa_new_private(libssh2_rsa_ctx **rsa,
|
||||
LIBSSH2_SESSION *session,
|
||||
const char *filename,
|
||||
unsigned const char *passphrase);
|
||||
Reads an RSA private key from file filename into a new RSA context.
|
||||
Must call _libssh2_init_if_needed().
|
||||
Return 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_rsa_new_private_frommemory(libssh2_rsa_ctx **rsa,
|
||||
LIBSSH2_SESSION *session,
|
||||
const char *data,
|
||||
size_t data_len,
|
||||
unsigned const char *passphrase);
|
||||
Gets an RSA private key from data into a new RSA context.
|
||||
Must call _libssh2_init_if_needed().
|
||||
Return 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_rsa_sha1_verify(libssh2_rsa_ctx *rsa,
|
||||
const unsigned char *sig,
|
||||
size_t sig_len,
|
||||
const unsigned char *m, size_t m_len);
|
||||
Verify (sig, sig_len) signature of (m, m_len) using an SHA-1 hash and the
|
||||
RSA context.
|
||||
Return 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_rsa_sha1_signv(LIBSSH2_SESSION *session,
|
||||
unsigned char **sig, size_t *siglen,
|
||||
int count, const struct iovec vector[],
|
||||
libssh2_rsa_ctx *ctx);
|
||||
RSA signs the SHA-1 hash computed over the count data chunks in vector.
|
||||
Signature is stored at (sig, siglen).
|
||||
Signature buffer must be allocated from the given session.
|
||||
Returns 0 if OK, else -1.
|
||||
Note: this procedure is optional: if provided, it MUST be defined as a macro.
|
||||
|
||||
int _libssh2_rsa_sha1_sign(LIBSSH2_SESSION *session,
|
||||
libssh2_rsa_ctx *rsactx,
|
||||
const unsigned char *hash,
|
||||
size_t hash_len,
|
||||
unsigned char **signature,
|
||||
size_t *signature_len);
|
||||
RSA signs the (hash, hashlen) SHA-1 hash bytes and stores the allocated
|
||||
signature at (signature, signature_len).
|
||||
Signature buffer must be allocated from the given session.
|
||||
Returns 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
Note: this procedure is not used if macro _libssh2_rsa_sha1_signv() is defined.
|
||||
|
||||
void _libssh2_rsa_free(libssh2_rsa_ctx *rsactx);
|
||||
Releases the RSA computation context at rsactx.
|
||||
|
||||
LIBSSH2_RSA_SHA2
|
||||
#define as 1 if the crypto library supports RSA SHA2 256/512, else 0.
|
||||
If defined as 0, the rest of this section can be omitted.
|
||||
|
||||
int _libssh2_rsa_sha2_sign(LIBSSH2_SESSION * session,
|
||||
libssh2_rsa_ctx * rsactx,
|
||||
const unsigned char *hash,
|
||||
size_t hash_len,
|
||||
unsigned char **signature,
|
||||
size_t *signature_len);
|
||||
RSA signs the (hash, hashlen) SHA-2 hash bytes based on hash length and stores
|
||||
the allocated signature at (signature, signature_len).
|
||||
Signature buffer must be allocated from the given session.
|
||||
Returns 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
Note: this procedure is not used if both macros _libssh2_rsa_sha2_256_signv()
|
||||
and _libssh2_rsa_sha2_512_signv are defined.
|
||||
|
||||
int _libssh2_rsa_sha2_256_signv(LIBSSH2_SESSION *session,
|
||||
unsigned char **sig, size_t *siglen,
|
||||
int count, const struct iovec vector[],
|
||||
libssh2_rsa_ctx *ctx);
|
||||
RSA signs the SHA-256 hash computed over the count data chunks in vector.
|
||||
Signature is stored at (sig, siglen).
|
||||
Signature buffer must be allocated from the given session.
|
||||
Returns 0 if OK, else -1.
|
||||
Note: this procedure is optional: if provided, it MUST be defined as a macro.
|
||||
|
||||
int _libssh2_rsa_sha2_512_signv(LIBSSH2_SESSION *session,
|
||||
unsigned char **sig, size_t *siglen,
|
||||
int count, const struct iovec vector[],
|
||||
libssh2_rsa_ctx *ctx);
|
||||
RSA signs the SHA-512 hash computed over the count data chunks in vector.
|
||||
Signature is stored at (sig, siglen).
|
||||
Signature buffer must be allocated from the given session.
|
||||
Returns 0 if OK, else -1.
|
||||
Note: this procedure is optional: if provided, it MUST be defined as a macro.
|
||||
|
||||
int _libssh2_rsa_sha2_verify(libssh2_rsa_ctx * rsa,
|
||||
size_t hash_len,
|
||||
const unsigned char *sig,
|
||||
size_t sig_len,
|
||||
const unsigned char *m, size_t m_len);
|
||||
Verify (sig, sig_len) signature of (m, m_len) using an SHA-2 hash based on
|
||||
hash length and the RSA context.
|
||||
Return 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
7.2) DSA
|
||||
LIBSSH2_DSA
|
||||
#define as 1 if the crypto library supports DSA, else 0.
|
||||
If defined as 0, the rest of this section can be omitted.
|
||||
|
||||
|
||||
libssh2_dsa_ctx
|
||||
Type of a DSA computation context. Generally a struct.
|
||||
|
||||
int _libssh2_dsa_new(libssh2_dsa_ctx **dsa,
|
||||
const unsigned char *pdata,
|
||||
unsigned long plen,
|
||||
const unsigned char *qdata,
|
||||
unsigned long qlen,
|
||||
const unsigned char *gdata,
|
||||
unsigned long glen,
|
||||
const unsigned char *ydata,
|
||||
unsigned long ylen,
|
||||
const unsigned char *x, unsigned long x_len);
|
||||
Creates a new context for DSA computations from source key values:
|
||||
pdata, plen Prime number p. Only used if private key known (ddata).
|
||||
qdata, qlen Prime number q. Only used if private key known (ddata).
|
||||
gdata, glen G number.
|
||||
ydata, ylen Public key.
|
||||
xdata, xlen Private key. Only taken if xlen non-zero.
|
||||
Returns 0 if OK.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_dsa_new_private(libssh2_dsa_ctx **dsa,
|
||||
LIBSSH2_SESSION *session,
|
||||
const char *filename,
|
||||
unsigned const char *passphrase);
|
||||
Gets a DSA private key from file filename into a new DSA context.
|
||||
Must call _libssh2_init_if_needed().
|
||||
Return 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_dsa_new_private_frommemory(libssh2_dsa_ctx **dsa,
|
||||
LIBSSH2_SESSION *session,
|
||||
const char *data,
|
||||
size_t data_len,
|
||||
unsigned const char *passphrase);
|
||||
Gets a DSA private key from the data_len-bytes data into a new DSA context.
|
||||
Must call _libssh2_init_if_needed().
|
||||
Returns 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_dsa_sha1_verify(libssh2_dsa_ctx *dsactx,
|
||||
const unsigned char *sig,
|
||||
const unsigned char *m, size_t m_len);
|
||||
Verify (sig, siglen) signature of (m, m_len) using an SHA-1 hash and the
|
||||
DSA context.
|
||||
Returns 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_dsa_sha1_sign(libssh2_dsa_ctx *dsactx,
|
||||
const unsigned char *hash,
|
||||
size_t hash_len, unsigned char *sig);
|
||||
DSA signs the (hash, hash_len) data using SHA-1 and store the signature at sig.
|
||||
Returns 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
void _libssh2_dsa_free(libssh2_dsa_ctx *dsactx);
|
||||
Releases the DSA computation context at dsactx.
|
||||
|
||||
|
||||
7.3) ECDSA
|
||||
LIBSSH2_ECDSA
|
||||
#define as 1 if the crypto library supports ECDSA, else 0.
|
||||
If defined as 0, _libssh2_ec_key should be defined as void and the rest of
|
||||
this section can be omitted.
|
||||
|
||||
EC_MAX_POINT_LEN
|
||||
Maximum point length. Usually defined as ((528 * 2 / 8) + 1) (= 133).
|
||||
|
||||
libssh2_ecdsa_ctx
|
||||
Type of an ECDSA computation context. Generally a struct.
|
||||
|
||||
_libssh2_ec_key
|
||||
Type of an elliptic curve key.
|
||||
|
||||
libssh2_curve_type
|
||||
An enum type defining curve types. Current supported identifiers are:
|
||||
LIBSSH2_EC_CURVE_NISTP256
|
||||
LIBSSH2_EC_CURVE_NISTP384
|
||||
LIBSSH2_EC_CURVE_NISTP521
|
||||
|
||||
int _libssh2_ecdsa_create_key(_libssh2_ec_key **out_private_key,
|
||||
unsigned char **out_public_key_octal,
|
||||
size_t *out_public_key_octal_len,
|
||||
libssh2_curve_type curve_type);
|
||||
Create a new ECDSA private key of type curve_type and return it at
|
||||
out_private_key. If out_public_key_octal is not NULL, store an allocated
|
||||
pointer to the associated public key in "octal" form in it and its length
|
||||
at out_public_key_octal_len.
|
||||
Return 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_ecdsa_new_private(libssh2_ecdsa_ctx **ec_ctx,
|
||||
LIBSSH2_SESSION * session,
|
||||
const char *filename,
|
||||
unsigned const char *passphrase);
|
||||
Reads an ECDSA private key from PEM file filename into a new ECDSA context.
|
||||
Must call _libssh2_init_if_needed().
|
||||
Return 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_ecdsa_new_private_frommemory(libssh2_ecdsa_ctx ** ec_ctx,
|
||||
LIBSSH2_SESSION * session,
|
||||
const char *filedata,
|
||||
size_t filedata_len,
|
||||
unsigned const char *passphrase);
|
||||
Builds an ECDSA private key from PEM data at filedata of length filedata_len
|
||||
into a new ECDSA context stored at ec_ctx.
|
||||
Must call _libssh2_init_if_needed().
|
||||
Return 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_ecdsa_curve_name_with_octal_new(libssh2_ecdsa_ctx **ecdsactx,
|
||||
const unsigned char *k,
|
||||
size_t k_len,
|
||||
libssh2_curve_type type);
|
||||
Stores at ecdsactx a new ECDSA context associated with the given curve type
|
||||
and with "octal" form public key (k, k_len).
|
||||
Return 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_ecdsa_new_openssh_private(libssh2_ecdsa_ctx **ec_ctx,
|
||||
LIBSSH2_SESSION * session,
|
||||
const char *filename,
|
||||
unsigned const char *passphrase);
|
||||
Reads a PEM-encoded ECDSA private key from file filename encrypted with
|
||||
passphrase and stores at ec_ctx a new ECDSA context for it.
|
||||
Return 0 if OK, else -1.
|
||||
Currently used only from openssl backend (ought to be private).
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_ecdsa_sign(LIBSSH2_SESSION *session, libssh2_ecdsa_ctx *ec_ctx,
|
||||
const unsigned char *hash, unsigned long hash_len,
|
||||
unsigned char **signature, size_t *signature_len);
|
||||
ECDSA signs the (hash, hashlen) hash bytes and stores the allocated
|
||||
signature at (signature, signature_len). Hash algorithm used should be
|
||||
SHA-256, SHA-384 or SHA-512 depending on type stored in ECDSA context at ec_ctx.
|
||||
Signature buffer must be allocated from the given session.
|
||||
Returns 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_ecdsa_verify(libssh2_ecdsa_ctx *ctx,
|
||||
const unsigned char *r, size_t r_len,
|
||||
const unsigned char *s, size_t s_len,
|
||||
const unsigned char *m, size_t m_len);
|
||||
Verify the ECDSA signature made of (r, r_len) and (s, s_len) of (m, m_len)
|
||||
using the hash algorithm configured in the ECDSA context ctx.
|
||||
Return 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
libssh2_curve_type _libssh2_ecdsa_get_curve_type(libssh2_ecdsa_ctx *ecdsactx);
|
||||
Returns the curve type associated with given context.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_ecdsa_curve_type_from_name(const char *name,
|
||||
libssh2_curve_type *out_type);
|
||||
Stores in out_type the curve type matching string name of the form
|
||||
"ecdsa-sha2-nistpxxx".
|
||||
Return 0 if OK, else -1.
|
||||
Currently used only from openssl backend (ought to be private).
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
void _libssh2_ecdsa_free(libssh2_ecdsa_ctx *ecdsactx);
|
||||
Releases the ECDSA computation context at ecdsactx.
|
||||
|
||||
|
||||
7.4) ED25519
|
||||
LIBSSH2_ED25519
|
||||
#define as 1 if the crypto library supports ED25519, else 0.
|
||||
If defined as 0, the rest of this section can be omitted.
|
||||
|
||||
|
||||
libssh2_ed25519_ctx
|
||||
Type of an ED25519 computation context. Generally a struct.
|
||||
|
||||
int _libssh2_curve25519_new(LIBSSH2_SESSION *session, libssh2_ed25519_ctx **ctx,
|
||||
uint8_t **out_public_key,
|
||||
uint8_t **out_private_key);
|
||||
Generates an ED25519 key pair, stores a pointer to them at out_private_key
|
||||
and out_public_key respectively and stores at ctx a new ED25519 context for
|
||||
this key.
|
||||
Argument ctx, out_private_key and out_public key may be NULL to disable storing
|
||||
the corresponding value.
|
||||
Length of each key is LIBSSH2_ED25519_KEY_LEN (32 bytes).
|
||||
Key buffers are allocated and should be released by caller after use.
|
||||
Returns 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_ed25519_new_private(libssh2_ed25519_ctx **ed_ctx,
|
||||
LIBSSH2_SESSION *session,
|
||||
const char *filename,
|
||||
const uint8_t *passphrase);
|
||||
Reads an ED25519 private key from PEM file filename into a new ED25519 context.
|
||||
Must call _libssh2_init_if_needed().
|
||||
Return 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_ed25519_new_public(libssh2_ed25519_ctx **ed_ctx,
|
||||
LIBSSH2_SESSION *session,
|
||||
const unsigned char *raw_pub_key,
|
||||
const size_t key_len);
|
||||
Stores at ed_ctx a new ED25519 key context for raw public key (raw_pub_key,
|
||||
key_len).
|
||||
Return 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_ed25519_new_private_frommemory(libssh2_ed25519_ctx **ed_ctx,
|
||||
LIBSSH2_SESSION *session,
|
||||
const char *filedata,
|
||||
size_t filedata_len,
|
||||
unsigned const char *passphrase);
|
||||
Builds an ED25519 private key from PEM data at filedata of length filedata_len
|
||||
into a new ED25519 context stored at ed_ctx.
|
||||
Must call _libssh2_init_if_needed().
|
||||
Return 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_ed25519_sign(libssh2_ed25519_ctx *ctx, LIBSSH2_SESSION *session,
|
||||
uint8_t **out_sig, size_t *out_sig_len,
|
||||
const uint8_t *message, size_t message_len);
|
||||
ED25519 signs the (message, message_len) bytes and stores the allocated
|
||||
signature at (sig, sig_len).
|
||||
Signature buffer is allocated from the given session.
|
||||
Returns 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_ed25519_verify(libssh2_ed25519_ctx *ctx, const uint8_t *s,
|
||||
size_t s_len, const uint8_t *m, size_t m_len);
|
||||
Verify (s, s_len) signature of (m, m_len) using the given ED25519 context.
|
||||
Return 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
int _libssh2_curve25519_gen_k(_libssh2_bn **k,
|
||||
uint8_t private_key[LIBSSH2_ED25519_KEY_LEN],
|
||||
uint8_t srvr_public_key[LIBSSH2_ED25519_KEY_LEN]);
|
||||
Computes a shared ED25519 secret key from the given raw server public key and
|
||||
raw client public key and stores it as a big number in *k. Big number should
|
||||
have been initialized before calling this function.
|
||||
Returns 0 if OK, else -1.
|
||||
This procedure is already prototyped in crypto.h.
|
||||
|
||||
void _libssh2_ed25519_free(libssh2_ed25519_ctx *ed25519ctx);
|
||||
Releases the ED25519 computation context at ed25519ctx.
|
||||
|
||||
|
||||
8) Miscellaneous
|
||||
|
||||
void libssh2_prepare_iovec(struct iovec *vector, unsigned int len);
|
||||
Prepare len consecutive iovec slots before using them.
|
||||
In example, this is needed to preset unused structure slacks on platforms
|
||||
requiring it.
|
||||
If this is not needed, it should be defined as an empty macro.
|
||||
|
||||
int _libssh2_random(unsigned char *buf, size_t len);
|
||||
Store len random bytes at buf.
|
||||
Returns 0 if OK, else -1.
|
||||
|
||||
const char * _libssh2_supported_key_sign_algorithms(LIBSSH2_SESSION *session,
|
||||
unsigned char *key_method,
|
||||
size_t key_method_len);
|
||||
|
||||
This function is for implementing key hash upgrading as defined in RFC 8332.
|
||||
|
||||
Based on the incoming key_method value, this function will return a
|
||||
list of supported algorithms that can upgrade the original key method algorithm
|
||||
as a comma separated list, if there is no upgrade option this function should
|
||||
return NULL.
|
||||
14
vendor/libssh2/docs/HACKING.md
vendored
Normal file
14
vendor/libssh2/docs/HACKING.md
vendored
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
# libssh2 source code style guide
|
||||
|
||||
- 4 level indent
|
||||
- spaces-only (no tabs)
|
||||
- open braces on the if/for line:
|
||||
|
||||
```
|
||||
if (banana) {
|
||||
go_nuts();
|
||||
}
|
||||
```
|
||||
|
||||
- keep source lines shorter than 80 columns
|
||||
- See `libssh2-style.el` for how to achieve this within Emacs
|
||||
316
vendor/libssh2/docs/INSTALL_AUTOTOOLS
vendored
Normal file
316
vendor/libssh2/docs/INSTALL_AUTOTOOLS
vendored
Normal file
|
|
@ -0,0 +1,316 @@
|
|||
Installation Instructions
|
||||
*************************
|
||||
|
||||
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free
|
||||
Software Foundation, Inc.
|
||||
|
||||
This file is free documentation; the Free Software Foundation gives
|
||||
unlimited permission to copy, distribute and modify it.
|
||||
|
||||
SPDX-License-Identifier: FSFULLR
|
||||
|
||||
When Building directly from Master
|
||||
==================================
|
||||
|
||||
If you want to build directly from the git repository, you must first
|
||||
generate the configure script and Makefile using autotools. Make
|
||||
sure that autoconf, automake and libtool are installed on your system,
|
||||
then execute:
|
||||
|
||||
autoreconf -fi
|
||||
|
||||
After executing this script, you can build the project as usual:
|
||||
|
||||
./configure
|
||||
make
|
||||
|
||||
Basic Installation
|
||||
==================
|
||||
|
||||
These are generic installation instructions.
|
||||
|
||||
The `configure' shell script attempts to guess correct values for
|
||||
various system-dependent variables used during compilation. It uses
|
||||
those values to create a `Makefile' in each directory of the package.
|
||||
It may also create one or more `.h' files containing system-dependent
|
||||
definitions. Finally, it creates a shell script `config.status' that
|
||||
you can run in the future to recreate the current configuration, and a
|
||||
file `config.log' containing compiler output (useful mainly for
|
||||
debugging `configure').
|
||||
|
||||
It can also use an optional file (typically called `config.cache'
|
||||
and enabled with `--cache-file=config.cache' or shortly `-C') that saves
|
||||
the results of its tests to speed up reconfiguring. (Caching is
|
||||
disabled by default to prevent problems with accidental use of stale
|
||||
cache files.)
|
||||
|
||||
If you need to do unusual things to compile the package, please try
|
||||
to figure out how `configure' could check whether to do them, and mail
|
||||
diffs or instructions to the address given in the `README' so they can
|
||||
be considered for the next release. If you are using the cache, and at
|
||||
some point `config.cache' contains results you do not want to keep, you
|
||||
may remove or edit it.
|
||||
|
||||
The file `configure.ac' (or `configure.in') is used to create
|
||||
`configure' by a program called `autoconf'. You only need
|
||||
`configure.ac' if you want to change it or regenerate `configure' using
|
||||
a newer version of `autoconf'.
|
||||
|
||||
The simplest way to compile this package is:
|
||||
|
||||
1. `cd' to the directory containing the package's source code and type
|
||||
`./configure' to configure the package for your system. If you are
|
||||
using `csh' on an old version of System V, you might need to type
|
||||
`sh ./configure' instead to prevent `csh' from trying to execute
|
||||
`configure' itself.
|
||||
|
||||
Running `configure' takes awhile. While running, it prints some
|
||||
messages telling which features it is checking for.
|
||||
|
||||
2. Type `make' to compile the package.
|
||||
|
||||
3. Optionally, type `make check' to run any self-tests that come with
|
||||
the package.
|
||||
|
||||
4. Type `make install' to install the programs and any data files and
|
||||
documentation.
|
||||
|
||||
5. You can remove the program binaries and object files from the
|
||||
source code directory by typing `make clean'. To also remove the
|
||||
files that `configure' created (so you can compile the package for
|
||||
a different kind of computer), type `make distclean'. There is
|
||||
also a `make maintainer-clean' target, but that is intended mainly
|
||||
for the package's developers. If you use it, you may have to get
|
||||
all sorts of other programs in order to regenerate files that came
|
||||
with the distribution.
|
||||
|
||||
Compilers and Options
|
||||
=====================
|
||||
|
||||
Some systems require unusual options for compilation or linking that the
|
||||
`configure' script does not know about. Run `./configure --help' for
|
||||
details on some of the pertinent environment variables.
|
||||
|
||||
You can give `configure' initial values for configuration parameters
|
||||
by setting variables in the command line or in the environment. Here
|
||||
is an example:
|
||||
|
||||
./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
|
||||
|
||||
*Note Defining Variables::, for more details.
|
||||
|
||||
Compiling For Multiple Architectures
|
||||
====================================
|
||||
|
||||
You can compile the package for more than one kind of computer at the
|
||||
same time, by placing the object files for each architecture in their
|
||||
own directory. To do this, you must use a version of `make' that
|
||||
supports the `VPATH' variable, such as GNU `make'. `cd' to the
|
||||
directory where you want the object files and executables to go and run
|
||||
the `configure' script. `configure' automatically checks for the
|
||||
source code in the directory that `configure' is in and in `..'.
|
||||
|
||||
If you have to use a `make' that does not support the `VPATH'
|
||||
variable, you have to compile the package for one architecture at a
|
||||
time in the source code directory. After you have installed the
|
||||
package for one architecture, use `make distclean' before reconfiguring
|
||||
for another architecture.
|
||||
|
||||
Installation Names
|
||||
==================
|
||||
|
||||
By default, `make install' installs the package's commands under
|
||||
`/usr/local/bin', include files under `/usr/local/include', etc. You
|
||||
can specify an installation prefix other than `/usr/local' by giving
|
||||
`configure' the option `--prefix=PREFIX'.
|
||||
|
||||
You can specify separate installation prefixes for
|
||||
architecture-specific files and architecture-independent files. If you
|
||||
pass the option `--exec-prefix=PREFIX' to `configure', the package uses
|
||||
PREFIX as the prefix for installing programs and libraries.
|
||||
Documentation and other data files still use the regular prefix.
|
||||
|
||||
In addition, if you use an unusual directory layout you can give
|
||||
options like `--bindir=DIR' to specify different values for particular
|
||||
kinds of files. Run `configure --help' for a list of the directories
|
||||
you can set and what kinds of files go in them.
|
||||
|
||||
If the package supports it, you can cause programs to be installed
|
||||
with an extra prefix or suffix on their names by giving `configure' the
|
||||
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
|
||||
|
||||
Optional Features
|
||||
=================
|
||||
|
||||
Some packages pay attention to `--enable-FEATURE' options to
|
||||
`configure', where FEATURE indicates an optional part of the package.
|
||||
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
|
||||
is something like `gnu-as' or `x' (for the X Window System). The
|
||||
`README' should mention any `--enable-' and `--with-' options that the
|
||||
package recognizes.
|
||||
|
||||
For packages that use the X Window System, `configure' can usually
|
||||
find the X include and library files automatically, but if it does not,
|
||||
you can use the `configure' options `--x-includes=DIR' and
|
||||
`--x-libraries=DIR' to specify their locations.
|
||||
|
||||
Specifying the System Type
|
||||
==========================
|
||||
|
||||
There may be some features `configure' cannot figure out automatically,
|
||||
but needs to determine by the type of machine the package will run on.
|
||||
Usually, assuming the package is built to be run on the _same_
|
||||
architectures, `configure' can figure that out, but if it prints a
|
||||
message saying it cannot guess the machine type, give it the
|
||||
`--build=TYPE' option. TYPE can either be a short name for the system
|
||||
type, such as `sun4', or a canonical name which has the form:
|
||||
|
||||
CPU-COMPANY-SYSTEM
|
||||
|
||||
where SYSTEM can have one of these forms:
|
||||
|
||||
OS KERNEL-OS
|
||||
|
||||
See the file `config.sub' for the possible values of each field. If
|
||||
`config.sub' is not included in this package, then this package does not
|
||||
need to know the machine type.
|
||||
|
||||
If you are _building_ compiler tools for cross-compiling, you should
|
||||
use the option `--target=TYPE' to select the type of system they will
|
||||
produce code for.
|
||||
|
||||
If you want to _use_ a cross compiler, that generates code for a
|
||||
platform different from the build platform, you should specify the
|
||||
"host" platform (i.e., that on which the generated programs will
|
||||
eventually be run) with `--host=TYPE'.
|
||||
|
||||
Sharing Defaults
|
||||
================
|
||||
|
||||
If you want to set default values for `configure' scripts to share, you
|
||||
can create a site shell script called `config.site' that gives default
|
||||
values for variables like `CC', `cache_file', and `prefix'.
|
||||
`configure' looks for `PREFIX/share/config.site' if it exists, then
|
||||
`PREFIX/etc/config.site' if it exists. Or, you can set the
|
||||
`CONFIG_SITE' environment variable to the location of the site script.
|
||||
A warning: not all `configure' scripts look for a site script.
|
||||
|
||||
Defining Variables
|
||||
==================
|
||||
|
||||
Variables not defined in a site shell script can be set in the
|
||||
environment passed to `configure'. However, some packages may run
|
||||
configure again during the build, and the customized values of these
|
||||
variables may be lost. In order to avoid this problem, you should set
|
||||
them in the `configure' command line, using `VAR=value'. For example:
|
||||
|
||||
./configure CC=/usr/local2/bin/gcc
|
||||
|
||||
causes the specified `gcc' to be used as the C compiler (unless it is
|
||||
overridden in the site shell script). Here is a another example:
|
||||
|
||||
/bin/bash ./configure CONFIG_SHELL=/bin/bash
|
||||
|
||||
Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent
|
||||
configuration-related scripts to be executed by `/bin/bash'.
|
||||
|
||||
`configure' Invocation
|
||||
======================
|
||||
|
||||
`configure' recognizes the following options to control how it operates.
|
||||
|
||||
`--help'
|
||||
`-h'
|
||||
Print a summary of the options to `configure', and exit.
|
||||
|
||||
`--version'
|
||||
`-V'
|
||||
Print the version of Autoconf used to generate the `configure'
|
||||
script, and exit.
|
||||
|
||||
`--cache-file=FILE'
|
||||
Enable the cache: use and save the results of the tests in FILE,
|
||||
traditionally `config.cache'. FILE defaults to `/dev/null' to
|
||||
disable caching.
|
||||
|
||||
`--config-cache'
|
||||
`-C'
|
||||
Alias for `--cache-file=config.cache'.
|
||||
|
||||
`--quiet'
|
||||
`--silent'
|
||||
`-q'
|
||||
Do not print messages saying which checks are being made. To
|
||||
suppress all normal output, redirect it to `/dev/null' (any error
|
||||
messages will still be shown).
|
||||
|
||||
`--srcdir=DIR'
|
||||
Look for the package's source code in directory DIR. Usually
|
||||
`configure' can determine that directory automatically.
|
||||
|
||||
`configure' also accepts some other, not widely useful, options. Run
|
||||
`configure --help' for more details.
|
||||
|
||||
More configure options
|
||||
======================
|
||||
|
||||
Some ./configure options deserve additional comments:
|
||||
|
||||
* --with-libgcrypt
|
||||
* --without-libgcrypt
|
||||
* --with-libgcrypt-prefix=DIR
|
||||
|
||||
libssh2 can use the Libgcrypt library
|
||||
(https://www.gnupg.org/) for cryptographic operations.
|
||||
One of the cryptographic libraries is required.
|
||||
|
||||
Configure will attempt to locate Libgcrypt
|
||||
automatically.
|
||||
|
||||
If your installation of Libgcrypt is in another
|
||||
location, specify it using --with-libgcrypt-prefix.
|
||||
|
||||
* --with-openssl
|
||||
* --without-openssl
|
||||
* --with-libssl-prefix=[DIR]
|
||||
|
||||
libssh2 can use the OpenSSL library
|
||||
(https://www.openssl-library.org/) for cryptographic operations.
|
||||
One of the cryptographic libraries is required.
|
||||
|
||||
Configure will attempt to locate OpenSSL in the
|
||||
default location.
|
||||
|
||||
If your installation of OpenSSL is in another
|
||||
location, specify it using --with-libssl-prefix.
|
||||
|
||||
* --with-mbedtls
|
||||
* --without-mbedtls
|
||||
* --with-libmbedcrypto-prefix=[DIR]
|
||||
|
||||
libssh2 can use the mbedTLS library
|
||||
(https://tls.mbed.org) for cryptographic operations.
|
||||
One of the cryptographic libraries is required.
|
||||
|
||||
Configure will attempt to locate mbedTLS in the
|
||||
default location.
|
||||
|
||||
If your installation of mbedTLS is in another
|
||||
location, specify it using --with-libmbedcrypto-prefix.
|
||||
|
||||
* --with-libz
|
||||
* --without-libz
|
||||
* --with-libz-prefix=[DIR]
|
||||
|
||||
If present, libssh2 will attempt to use the zlib
|
||||
(https://zlib.net/) for payload compression, however
|
||||
zlib is not required.
|
||||
|
||||
If your installation of Libz is in another location,
|
||||
specify it using --with-libz-prefix.
|
||||
|
||||
* --enable-debug
|
||||
|
||||
Will make the build use more pedantic and strict compiler
|
||||
options as well as enable the libssh2_trace() function (for
|
||||
showing debug traces).
|
||||
173
vendor/libssh2/docs/INSTALL_CMAKE.md
vendored
Normal file
173
vendor/libssh2/docs/INSTALL_CMAKE.md
vendored
Normal file
|
|
@ -0,0 +1,173 @@
|
|||
License: see COPYING
|
||||
|
||||
Source code: https://github.com/libssh2/libssh2
|
||||
|
||||
Web site source code: https://github.com/libssh2/www
|
||||
|
||||
Installation instructions are in docs/INSTALL
|
||||
=======
|
||||
To build libssh2 you will need CMake v3.7 or later [1] and one of the
|
||||
following cryptography libraries:
|
||||
|
||||
* OpenSSL
|
||||
* wolfSSL
|
||||
* Libgcrypt
|
||||
* WinCNG
|
||||
* mbedTLS
|
||||
|
||||
Getting started
|
||||
---------------
|
||||
|
||||
If you are happy with the default options, make a new build directory,
|
||||
change to it, configure the build environment and build the project:
|
||||
|
||||
```
|
||||
cmake -B bld
|
||||
cmake --build bld
|
||||
```
|
||||
|
||||
Use this with CMake 3.12.x or older:
|
||||
```
|
||||
mkdir bld
|
||||
cd bld
|
||||
cmake ..
|
||||
cmake --build .
|
||||
```
|
||||
|
||||
libssh2 will be built as a static library and will use any
|
||||
cryptography library available. The library binary will be put in
|
||||
`bin/src`, with the examples in `bin/example` and the tests in
|
||||
`bin/tests`.
|
||||
|
||||
Customising the build
|
||||
---------------------
|
||||
|
||||
You might want to customise the build options. You can pass the options
|
||||
to CMake on the command line:
|
||||
|
||||
cmake -D<option>=<value> ..
|
||||
|
||||
The following options are available:
|
||||
|
||||
* `LINT=ON`
|
||||
|
||||
Enables running the source code linter when building.
|
||||
Can be `ON` or `OFF`. Default: `OFF`
|
||||
|
||||
* `BUILD_STATIC_LIBS=OFF`
|
||||
|
||||
Determines whether to build a libssh2 static library.
|
||||
Can be `ON` or `OFF`. Default: `ON`
|
||||
|
||||
* `BUILD_SHARED_LIBS=OFF`
|
||||
|
||||
Determines whether to build a libssh2 shared library (.dll/.so).
|
||||
Can be `ON` or `OFF`. Default: `ON`
|
||||
|
||||
* `CRYPTO_BACKEND=`
|
||||
|
||||
Chooses a specific cryptography library to use for cryptographic
|
||||
operations. Can be `OpenSSL` (https://www.openssl-library.org/),
|
||||
`Libgcrypt` (https://www.gnupg.org/), `WinCNG` (Windows Vista+),
|
||||
`mbedTLS` (https://www.trustedfirmware.org/projects/mbed-tls/) or
|
||||
blank to use any library available.
|
||||
|
||||
CMake will attempt to locate the libraries automatically. See [2]
|
||||
for more information.
|
||||
|
||||
* `ENABLE_ZLIB_COMPRESSION=ON`
|
||||
|
||||
Use zlib (https://zlib.net/) for payload compression.
|
||||
Can be `ON` or `OFF`. Default: `OFF`
|
||||
|
||||
* `ENABLE_DEBUG_LOGGING=ON`
|
||||
|
||||
Enable the libssh2_trace() function for showing debug traces.
|
||||
Can be `ON` or `OFF`. Default: `OFF` in Release, `ON` in `Debug`
|
||||
|
||||
* `CLEAR_MEMORY=OFF`
|
||||
|
||||
Disable secure zero memory before freeing it (not recommended).
|
||||
Can be `ON` or `OFF`. Default: `ON`
|
||||
|
||||
Build tools
|
||||
-----------
|
||||
|
||||
The previous examples used CMake to start the build using:
|
||||
|
||||
cmake --build .
|
||||
|
||||
Alternatively, once CMake has configured your project, you can use
|
||||
your own build tool, e.g GNU make, Visual Studio, etc., from that
|
||||
point onwards.
|
||||
|
||||
Tests
|
||||
-----
|
||||
|
||||
To test the build, run the appropriate test target for your build
|
||||
system. For example:
|
||||
|
||||
```
|
||||
cmake --build . --target test
|
||||
```
|
||||
or
|
||||
```
|
||||
cmake --build . --target RUN_TESTS
|
||||
```
|
||||
|
||||
How do I use libssh2 in my project if my project does not use CMake?
|
||||
-------------------------------------------------------------------
|
||||
|
||||
If you are not using CMake for your own project, install libssh2
|
||||
```
|
||||
cmake <libssh2 source location>
|
||||
cmake --build .
|
||||
cmake --build . --target install
|
||||
```
|
||||
or
|
||||
```
|
||||
cmake --build . --target INSTALL
|
||||
```
|
||||
|
||||
and then specify the install location to your project in the normal
|
||||
way for your build environment. If you do not like the default install
|
||||
location, add `-DCMAKE_INSTALL_PREFIX=<chosen prefix>` when initially
|
||||
configuring the project.
|
||||
|
||||
How can I use libssh2 in my project if it also uses CMake?
|
||||
----------------------------------------------------------
|
||||
|
||||
If your own project also uses CMake, you do not need to worry about
|
||||
setting it up with libssh2's location. Add the following lines and
|
||||
CMake will find libssh2 on your system, set up the necessary paths and
|
||||
link the library with your binary.
|
||||
|
||||
find_package(libssh2 REQUIRED CONFIG)
|
||||
target_link_libraries(my_project_target libssh2::libssh2)
|
||||
|
||||
You still have to make libssh2 available on your system first. You can
|
||||
install it in the traditional way shown above, but you do not have to.
|
||||
Instead you can build it, which will export its location to the user
|
||||
package registry [3] where `find_package` will find it.
|
||||
|
||||
You can even combine the two steps using a so-called 'superbuild'
|
||||
project [4] that downloads, builds and exports libssh2, and then
|
||||
builds your project:
|
||||
|
||||
include(ExternalProject)
|
||||
|
||||
ExternalProject_Add(
|
||||
libssh2
|
||||
URL <libssh2 download location>
|
||||
URL_HASH SHA256=<libssh2 archive SHA256>
|
||||
INSTALL_COMMAND "")
|
||||
|
||||
ExternalProject_Add(
|
||||
MyProject DEPENDS libssh2
|
||||
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/src
|
||||
INSTALL_COMMAND "")
|
||||
|
||||
[1] https://www.cmake.org/cmake/resources/software.html
|
||||
[2] https://www.cmake.org/cmake/help/v3.0/manual/cmake-packages.7.html
|
||||
[3] https://www.cmake.org/cmake/help/v3.0/manual/cmake-packages.7.html#package-registry
|
||||
[4] https://blog.kitware.com/wp-content/uploads/2016/01/kitware_quarterly1009.pdf
|
||||
190
vendor/libssh2/docs/Makefile.am
vendored
Normal file
190
vendor/libssh2/docs/Makefile.am
vendored
Normal file
|
|
@ -0,0 +1,190 @@
|
|||
EXTRA_DIST = template.3 AUTHORS BINDINGS.md HACKING.md HACKING-CRYPTO \
|
||||
INSTALL_AUTOTOOLS INSTALL_CMAKE.md SECURITY.md TODO CMakeLists.txt
|
||||
|
||||
dist_man_MANS = \
|
||||
libssh2_agent_connect.3 \
|
||||
libssh2_agent_disconnect.3 \
|
||||
libssh2_agent_free.3 \
|
||||
libssh2_agent_get_identity.3 \
|
||||
libssh2_agent_get_identity_path.3 \
|
||||
libssh2_agent_init.3 \
|
||||
libssh2_agent_list_identities.3 \
|
||||
libssh2_agent_set_identity_path.3 \
|
||||
libssh2_agent_sign.3 \
|
||||
libssh2_agent_userauth.3 \
|
||||
libssh2_banner_set.3 \
|
||||
libssh2_base64_decode.3 \
|
||||
libssh2_channel_close.3 \
|
||||
libssh2_channel_direct_streamlocal_ex.3 \
|
||||
libssh2_channel_direct_tcpip.3 \
|
||||
libssh2_channel_direct_tcpip_ex.3 \
|
||||
libssh2_channel_eof.3 \
|
||||
libssh2_channel_exec.3 \
|
||||
libssh2_channel_flush.3 \
|
||||
libssh2_channel_flush_ex.3 \
|
||||
libssh2_channel_flush_stderr.3 \
|
||||
libssh2_channel_forward_accept.3 \
|
||||
libssh2_channel_forward_cancel.3 \
|
||||
libssh2_channel_forward_listen.3 \
|
||||
libssh2_channel_forward_listen_ex.3 \
|
||||
libssh2_channel_free.3 \
|
||||
libssh2_channel_get_exit_signal.3 \
|
||||
libssh2_channel_get_exit_status.3 \
|
||||
libssh2_channel_handle_extended_data.3 \
|
||||
libssh2_channel_handle_extended_data2.3 \
|
||||
libssh2_channel_ignore_extended_data.3 \
|
||||
libssh2_channel_open_ex.3 \
|
||||
libssh2_channel_open_session.3 \
|
||||
libssh2_channel_process_startup.3 \
|
||||
libssh2_channel_read.3 \
|
||||
libssh2_channel_read_ex.3 \
|
||||
libssh2_channel_read_stderr.3 \
|
||||
libssh2_channel_receive_window_adjust.3 \
|
||||
libssh2_channel_receive_window_adjust2.3 \
|
||||
libssh2_channel_request_auth_agent.3 \
|
||||
libssh2_channel_request_pty.3 \
|
||||
libssh2_channel_request_pty_ex.3 \
|
||||
libssh2_channel_request_pty_size.3 \
|
||||
libssh2_channel_request_pty_size_ex.3 \
|
||||
libssh2_channel_send_eof.3 \
|
||||
libssh2_channel_set_blocking.3 \
|
||||
libssh2_channel_setenv.3 \
|
||||
libssh2_channel_setenv_ex.3 \
|
||||
libssh2_channel_shell.3 \
|
||||
libssh2_channel_signal_ex.3 \
|
||||
libssh2_channel_subsystem.3 \
|
||||
libssh2_channel_wait_closed.3 \
|
||||
libssh2_channel_wait_eof.3 \
|
||||
libssh2_channel_window_read.3 \
|
||||
libssh2_channel_window_read_ex.3 \
|
||||
libssh2_channel_window_write.3 \
|
||||
libssh2_channel_window_write_ex.3 \
|
||||
libssh2_channel_write.3 \
|
||||
libssh2_channel_write_ex.3 \
|
||||
libssh2_channel_write_stderr.3 \
|
||||
libssh2_channel_x11_req.3 \
|
||||
libssh2_channel_x11_req_ex.3 \
|
||||
libssh2_crypto_engine.3 \
|
||||
libssh2_exit.3 \
|
||||
libssh2_free.3 \
|
||||
libssh2_hostkey_hash.3 \
|
||||
libssh2_init.3 \
|
||||
libssh2_keepalive_config.3 \
|
||||
libssh2_keepalive_send.3 \
|
||||
libssh2_knownhost_add.3 \
|
||||
libssh2_knownhost_addc.3 \
|
||||
libssh2_knownhost_check.3 \
|
||||
libssh2_knownhost_checkp.3 \
|
||||
libssh2_knownhost_del.3 \
|
||||
libssh2_knownhost_free.3 \
|
||||
libssh2_knownhost_get.3 \
|
||||
libssh2_knownhost_init.3 \
|
||||
libssh2_knownhost_readfile.3 \
|
||||
libssh2_knownhost_readline.3 \
|
||||
libssh2_knownhost_writefile.3 \
|
||||
libssh2_knownhost_writeline.3 \
|
||||
libssh2_poll.3 \
|
||||
libssh2_poll_channel_read.3 \
|
||||
libssh2_publickey_add.3 \
|
||||
libssh2_publickey_add_ex.3 \
|
||||
libssh2_publickey_init.3 \
|
||||
libssh2_publickey_list_fetch.3 \
|
||||
libssh2_publickey_list_free.3 \
|
||||
libssh2_publickey_remove.3 \
|
||||
libssh2_publickey_remove_ex.3 \
|
||||
libssh2_publickey_shutdown.3 \
|
||||
libssh2_scp_recv.3 \
|
||||
libssh2_scp_recv2.3 \
|
||||
libssh2_scp_send.3 \
|
||||
libssh2_scp_send64.3 \
|
||||
libssh2_scp_send_ex.3 \
|
||||
libssh2_session_abstract.3 \
|
||||
libssh2_session_banner_get.3 \
|
||||
libssh2_session_banner_set.3 \
|
||||
libssh2_session_block_directions.3 \
|
||||
libssh2_session_callback_set.3 \
|
||||
libssh2_session_callback_set2.3 \
|
||||
libssh2_session_disconnect.3 \
|
||||
libssh2_session_disconnect_ex.3 \
|
||||
libssh2_session_flag.3 \
|
||||
libssh2_session_free.3 \
|
||||
libssh2_session_get_blocking.3 \
|
||||
libssh2_session_get_read_timeout.3 \
|
||||
libssh2_session_get_timeout.3 \
|
||||
libssh2_session_handshake.3 \
|
||||
libssh2_session_hostkey.3 \
|
||||
libssh2_session_init.3 \
|
||||
libssh2_session_init_ex.3 \
|
||||
libssh2_session_last_errno.3 \
|
||||
libssh2_session_last_error.3 \
|
||||
libssh2_session_method_pref.3 \
|
||||
libssh2_session_methods.3 \
|
||||
libssh2_session_set_blocking.3 \
|
||||
libssh2_session_set_last_error.3 \
|
||||
libssh2_session_set_read_timeout.3 \
|
||||
libssh2_session_set_timeout.3 \
|
||||
libssh2_session_startup.3 \
|
||||
libssh2_session_supported_algs.3 \
|
||||
libssh2_sftp_close.3 \
|
||||
libssh2_sftp_close_handle.3 \
|
||||
libssh2_sftp_closedir.3 \
|
||||
libssh2_sftp_fsetstat.3 \
|
||||
libssh2_sftp_fstat.3 \
|
||||
libssh2_sftp_fstat_ex.3 \
|
||||
libssh2_sftp_fstatvfs.3 \
|
||||
libssh2_sftp_fsync.3 \
|
||||
libssh2_sftp_get_channel.3 \
|
||||
libssh2_sftp_init.3 \
|
||||
libssh2_sftp_last_error.3 \
|
||||
libssh2_sftp_lstat.3 \
|
||||
libssh2_sftp_mkdir.3 \
|
||||
libssh2_sftp_mkdir_ex.3 \
|
||||
libssh2_sftp_open.3 \
|
||||
libssh2_sftp_open_ex.3 \
|
||||
libssh2_sftp_open_ex_r.3 \
|
||||
libssh2_sftp_open_r.3 \
|
||||
libssh2_sftp_opendir.3 \
|
||||
libssh2_sftp_posix_rename.3 \
|
||||
libssh2_sftp_posix_rename_ex.3 \
|
||||
libssh2_sftp_read.3 \
|
||||
libssh2_sftp_readdir.3 \
|
||||
libssh2_sftp_readdir_ex.3 \
|
||||
libssh2_sftp_readlink.3 \
|
||||
libssh2_sftp_realpath.3 \
|
||||
libssh2_sftp_rename.3 \
|
||||
libssh2_sftp_rename_ex.3 \
|
||||
libssh2_sftp_rewind.3 \
|
||||
libssh2_sftp_rmdir.3 \
|
||||
libssh2_sftp_rmdir_ex.3 \
|
||||
libssh2_sftp_seek.3 \
|
||||
libssh2_sftp_seek64.3 \
|
||||
libssh2_sftp_setstat.3 \
|
||||
libssh2_sftp_shutdown.3 \
|
||||
libssh2_sftp_stat.3 \
|
||||
libssh2_sftp_stat_ex.3 \
|
||||
libssh2_sftp_statvfs.3 \
|
||||
libssh2_sftp_symlink.3 \
|
||||
libssh2_sftp_symlink_ex.3 \
|
||||
libssh2_sftp_tell.3 \
|
||||
libssh2_sftp_tell64.3 \
|
||||
libssh2_sftp_unlink.3 \
|
||||
libssh2_sftp_unlink_ex.3 \
|
||||
libssh2_sftp_write.3 \
|
||||
libssh2_sign_sk.3 \
|
||||
libssh2_trace.3 \
|
||||
libssh2_trace_sethandler.3 \
|
||||
libssh2_userauth_authenticated.3 \
|
||||
libssh2_userauth_banner.3 \
|
||||
libssh2_userauth_hostbased_fromfile.3 \
|
||||
libssh2_userauth_hostbased_fromfile_ex.3 \
|
||||
libssh2_userauth_keyboard_interactive.3 \
|
||||
libssh2_userauth_keyboard_interactive_ex.3 \
|
||||
libssh2_userauth_list.3 \
|
||||
libssh2_userauth_password.3 \
|
||||
libssh2_userauth_password_ex.3 \
|
||||
libssh2_userauth_publickey.3 \
|
||||
libssh2_userauth_publickey_fromfile.3 \
|
||||
libssh2_userauth_publickey_fromfile_ex.3 \
|
||||
libssh2_userauth_publickey_frommemory.3 \
|
||||
libssh2_userauth_publickey_sk.3 \
|
||||
libssh2_version.3
|
||||
755
vendor/libssh2/docs/Makefile.in
vendored
Normal file
755
vendor/libssh2/docs/Makefile.in
vendored
Normal file
|
|
@ -0,0 +1,755 @@
|
|||
# Makefile.in generated by automake 1.16.5 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
|
||||
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
VPATH = @srcdir@
|
||||
am__is_gnu_make = { \
|
||||
if test -z '$(MAKELEVEL)'; then \
|
||||
false; \
|
||||
elif test -n '$(MAKE_HOST)'; then \
|
||||
true; \
|
||||
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
|
||||
true; \
|
||||
else \
|
||||
false; \
|
||||
fi; \
|
||||
}
|
||||
am__make_running_with_option = \
|
||||
case $${target_option-} in \
|
||||
?) ;; \
|
||||
*) echo "am__make_running_with_option: internal error: invalid" \
|
||||
"target option '$${target_option-}' specified" >&2; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
has_opt=no; \
|
||||
sane_makeflags=$$MAKEFLAGS; \
|
||||
if $(am__is_gnu_make); then \
|
||||
sane_makeflags=$$MFLAGS; \
|
||||
else \
|
||||
case $$MAKEFLAGS in \
|
||||
*\\[\ \ ]*) \
|
||||
bs=\\; \
|
||||
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
|
||||
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
|
||||
esac; \
|
||||
fi; \
|
||||
skip_next=no; \
|
||||
strip_trailopt () \
|
||||
{ \
|
||||
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
|
||||
}; \
|
||||
for flg in $$sane_makeflags; do \
|
||||
test $$skip_next = yes && { skip_next=no; continue; }; \
|
||||
case $$flg in \
|
||||
*=*|--*) continue;; \
|
||||
-*I) strip_trailopt 'I'; skip_next=yes;; \
|
||||
-*I?*) strip_trailopt 'I';; \
|
||||
-*O) strip_trailopt 'O'; skip_next=yes;; \
|
||||
-*O?*) strip_trailopt 'O';; \
|
||||
-*l) strip_trailopt 'l'; skip_next=yes;; \
|
||||
-*l?*) strip_trailopt 'l';; \
|
||||
-[dEDm]) skip_next=yes;; \
|
||||
-[JT]) skip_next=yes;; \
|
||||
esac; \
|
||||
case $$flg in \
|
||||
*$$target_option*) has_opt=yes; break;; \
|
||||
esac; \
|
||||
done; \
|
||||
test $$has_opt = yes
|
||||
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
|
||||
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkglibexecdir = $(libexecdir)/@PACKAGE@
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
subdir = docs
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/m4/lib-ld.m4 \
|
||||
$(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
|
||||
$(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
|
||||
$(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
|
||||
$(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/acinclude.m4 \
|
||||
$(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/src/libssh2_config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
CONFIG_CLEAN_VPATH_FILES =
|
||||
AM_V_P = $(am__v_P_@AM_V@)
|
||||
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
||||
am__v_P_0 = false
|
||||
am__v_P_1 = :
|
||||
AM_V_GEN = $(am__v_GEN_@AM_V@)
|
||||
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
|
||||
am__v_GEN_0 = @echo " GEN " $@;
|
||||
am__v_GEN_1 =
|
||||
AM_V_at = $(am__v_at_@AM_V@)
|
||||
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
|
||||
am__v_at_0 = @
|
||||
am__v_at_1 =
|
||||
SOURCES =
|
||||
DIST_SOURCES =
|
||||
am__can_run_installinfo = \
|
||||
case $$AM_UPDATE_INFO_DIR in \
|
||||
n|no|NO) false;; \
|
||||
*) (install-info --version) >/dev/null 2>&1;; \
|
||||
esac
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
*) f=$$p;; \
|
||||
esac;
|
||||
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
|
||||
am__install_max = 40
|
||||
am__nobase_strip_setup = \
|
||||
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
|
||||
am__nobase_strip = \
|
||||
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
|
||||
am__nobase_list = $(am__nobase_strip_setup); \
|
||||
for p in $$list; do echo "$$p $$p"; done | \
|
||||
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
|
||||
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
|
||||
if (++n[$$2] == $(am__install_max)) \
|
||||
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
|
||||
END { for (dir in files) print dir, files[dir] }'
|
||||
am__base_list = \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
|
||||
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
|
||||
am__uninstall_files_from_dir = { \
|
||||
test -z "$$files" \
|
||||
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|
||||
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
|
||||
$(am__cd) "$$dir" && rm -f $$files; }; \
|
||||
}
|
||||
man3dir = $(mandir)/man3
|
||||
am__installdirs = "$(DESTDIR)$(man3dir)"
|
||||
NROFF = nroff
|
||||
MANS = $(dist_man_MANS)
|
||||
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
|
||||
am__DIST_COMMON = $(dist_man_MANS) $(srcdir)/Makefile.in AUTHORS TODO
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = @ACLOCAL@
|
||||
ALLOCA = @ALLOCA@
|
||||
AMTAR = @AMTAR@
|
||||
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
|
||||
AR = @AR@
|
||||
AS = @AS@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CSCOPE = @CSCOPE@
|
||||
CTAGS = @CTAGS@
|
||||
CXX = @CXX@
|
||||
CXXCPP = @CXXCPP@
|
||||
CXXDEPMODE = @CXXDEPMODE@
|
||||
CXXFLAGS = @CXXFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DLLTOOL = @DLLTOOL@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
DUMPBIN = @DUMPBIN@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
ETAGS = @ETAGS@
|
||||
EXEEXT = @EXEEXT@
|
||||
FGREP = @FGREP@
|
||||
FILECMD = @FILECMD@
|
||||
GREP = @GREP@
|
||||
HAVE_LIBBCRYPT = @HAVE_LIBBCRYPT@
|
||||
HAVE_LIBGCRYPT = @HAVE_LIBGCRYPT@
|
||||
HAVE_LIBMBEDCRYPTO = @HAVE_LIBMBEDCRYPTO@
|
||||
HAVE_LIBSSL = @HAVE_LIBSSL@
|
||||
HAVE_LIBWOLFSSL = @HAVE_LIBWOLFSSL@
|
||||
HAVE_LIBZ = @HAVE_LIBZ@
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
LD = @LD@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBBCRYPT = @LIBBCRYPT@
|
||||
LIBBCRYPT_PREFIX = @LIBBCRYPT_PREFIX@
|
||||
LIBGCRYPT = @LIBGCRYPT@
|
||||
LIBGCRYPT_PREFIX = @LIBGCRYPT_PREFIX@
|
||||
LIBMBEDCRYPTO = @LIBMBEDCRYPTO@
|
||||
LIBMBEDCRYPTO_PREFIX = @LIBMBEDCRYPTO_PREFIX@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBSSH2_CFLAG_EXTRAS = @LIBSSH2_CFLAG_EXTRAS@
|
||||
LIBSSH2_PC_LIBS = @LIBSSH2_PC_LIBS@
|
||||
LIBSSH2_PC_LIBS_PRIVATE = @LIBSSH2_PC_LIBS_PRIVATE@
|
||||
LIBSSH2_PC_REQUIRES = @LIBSSH2_PC_REQUIRES@
|
||||
LIBSSH2_PC_REQUIRES_PRIVATE = @LIBSSH2_PC_REQUIRES_PRIVATE@
|
||||
LIBSSH2_VERSION = @LIBSSH2_VERSION@
|
||||
LIBSSL = @LIBSSL@
|
||||
LIBSSL_PREFIX = @LIBSSL_PREFIX@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIBWOLFSSL = @LIBWOLFSSL@
|
||||
LIBWOLFSSL_PREFIX = @LIBWOLFSSL_PREFIX@
|
||||
LIBZ = @LIBZ@
|
||||
LIBZ_PREFIX = @LIBZ_PREFIX@
|
||||
LIB_FUZZING_ENGINE = @LIB_FUZZING_ENGINE@
|
||||
LIPO = @LIPO@
|
||||
LN_S = @LN_S@
|
||||
LTLIBBCRYPT = @LTLIBBCRYPT@
|
||||
LTLIBGCRYPT = @LTLIBGCRYPT@
|
||||
LTLIBMBEDCRYPTO = @LTLIBMBEDCRYPTO@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
LTLIBSSL = @LTLIBSSL@
|
||||
LTLIBWOLFSSL = @LTLIBWOLFSSL@
|
||||
LTLIBZ = @LTLIBZ@
|
||||
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
||||
MAINT = @MAINT@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OTOOL = @OTOOL@
|
||||
OTOOL64 = @OTOOL64@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_URL = @PACKAGE_URL@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
RANLIB = @RANLIB@
|
||||
RC = @RC@
|
||||
SED = @SED@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
SSHD = @SSHD@
|
||||
STRIP = @STRIP@
|
||||
VERSION = @VERSION@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
abs_top_srcdir = @abs_top_srcdir@
|
||||
ac_ct_AR = @ac_ct_AR@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_CXX = @ac_ct_CXX@
|
||||
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build = @build@
|
||||
build_alias = @build_alias@
|
||||
build_cpu = @build_cpu@
|
||||
build_os = @build_os@
|
||||
build_vendor = @build_vendor@
|
||||
builddir = @builddir@
|
||||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
dvidir = @dvidir@
|
||||
exec_prefix = @exec_prefix@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
host_os = @host_os@
|
||||
host_vendor = @host_vendor@
|
||||
htmldir = @htmldir@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localedir = @localedir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
pdfdir = @pdfdir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
runstatedir = @runstatedir@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
top_build_prefix = @top_build_prefix@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
EXTRA_DIST = template.3 AUTHORS BINDINGS.md HACKING.md HACKING-CRYPTO \
|
||||
INSTALL_AUTOTOOLS INSTALL_CMAKE.md SECURITY.md TODO CMakeLists.txt
|
||||
|
||||
dist_man_MANS = \
|
||||
libssh2_agent_connect.3 \
|
||||
libssh2_agent_disconnect.3 \
|
||||
libssh2_agent_free.3 \
|
||||
libssh2_agent_get_identity.3 \
|
||||
libssh2_agent_get_identity_path.3 \
|
||||
libssh2_agent_init.3 \
|
||||
libssh2_agent_list_identities.3 \
|
||||
libssh2_agent_set_identity_path.3 \
|
||||
libssh2_agent_sign.3 \
|
||||
libssh2_agent_userauth.3 \
|
||||
libssh2_banner_set.3 \
|
||||
libssh2_base64_decode.3 \
|
||||
libssh2_channel_close.3 \
|
||||
libssh2_channel_direct_streamlocal_ex.3 \
|
||||
libssh2_channel_direct_tcpip.3 \
|
||||
libssh2_channel_direct_tcpip_ex.3 \
|
||||
libssh2_channel_eof.3 \
|
||||
libssh2_channel_exec.3 \
|
||||
libssh2_channel_flush.3 \
|
||||
libssh2_channel_flush_ex.3 \
|
||||
libssh2_channel_flush_stderr.3 \
|
||||
libssh2_channel_forward_accept.3 \
|
||||
libssh2_channel_forward_cancel.3 \
|
||||
libssh2_channel_forward_listen.3 \
|
||||
libssh2_channel_forward_listen_ex.3 \
|
||||
libssh2_channel_free.3 \
|
||||
libssh2_channel_get_exit_signal.3 \
|
||||
libssh2_channel_get_exit_status.3 \
|
||||
libssh2_channel_handle_extended_data.3 \
|
||||
libssh2_channel_handle_extended_data2.3 \
|
||||
libssh2_channel_ignore_extended_data.3 \
|
||||
libssh2_channel_open_ex.3 \
|
||||
libssh2_channel_open_session.3 \
|
||||
libssh2_channel_process_startup.3 \
|
||||
libssh2_channel_read.3 \
|
||||
libssh2_channel_read_ex.3 \
|
||||
libssh2_channel_read_stderr.3 \
|
||||
libssh2_channel_receive_window_adjust.3 \
|
||||
libssh2_channel_receive_window_adjust2.3 \
|
||||
libssh2_channel_request_auth_agent.3 \
|
||||
libssh2_channel_request_pty.3 \
|
||||
libssh2_channel_request_pty_ex.3 \
|
||||
libssh2_channel_request_pty_size.3 \
|
||||
libssh2_channel_request_pty_size_ex.3 \
|
||||
libssh2_channel_send_eof.3 \
|
||||
libssh2_channel_set_blocking.3 \
|
||||
libssh2_channel_setenv.3 \
|
||||
libssh2_channel_setenv_ex.3 \
|
||||
libssh2_channel_shell.3 \
|
||||
libssh2_channel_signal_ex.3 \
|
||||
libssh2_channel_subsystem.3 \
|
||||
libssh2_channel_wait_closed.3 \
|
||||
libssh2_channel_wait_eof.3 \
|
||||
libssh2_channel_window_read.3 \
|
||||
libssh2_channel_window_read_ex.3 \
|
||||
libssh2_channel_window_write.3 \
|
||||
libssh2_channel_window_write_ex.3 \
|
||||
libssh2_channel_write.3 \
|
||||
libssh2_channel_write_ex.3 \
|
||||
libssh2_channel_write_stderr.3 \
|
||||
libssh2_channel_x11_req.3 \
|
||||
libssh2_channel_x11_req_ex.3 \
|
||||
libssh2_crypto_engine.3 \
|
||||
libssh2_exit.3 \
|
||||
libssh2_free.3 \
|
||||
libssh2_hostkey_hash.3 \
|
||||
libssh2_init.3 \
|
||||
libssh2_keepalive_config.3 \
|
||||
libssh2_keepalive_send.3 \
|
||||
libssh2_knownhost_add.3 \
|
||||
libssh2_knownhost_addc.3 \
|
||||
libssh2_knownhost_check.3 \
|
||||
libssh2_knownhost_checkp.3 \
|
||||
libssh2_knownhost_del.3 \
|
||||
libssh2_knownhost_free.3 \
|
||||
libssh2_knownhost_get.3 \
|
||||
libssh2_knownhost_init.3 \
|
||||
libssh2_knownhost_readfile.3 \
|
||||
libssh2_knownhost_readline.3 \
|
||||
libssh2_knownhost_writefile.3 \
|
||||
libssh2_knownhost_writeline.3 \
|
||||
libssh2_poll.3 \
|
||||
libssh2_poll_channel_read.3 \
|
||||
libssh2_publickey_add.3 \
|
||||
libssh2_publickey_add_ex.3 \
|
||||
libssh2_publickey_init.3 \
|
||||
libssh2_publickey_list_fetch.3 \
|
||||
libssh2_publickey_list_free.3 \
|
||||
libssh2_publickey_remove.3 \
|
||||
libssh2_publickey_remove_ex.3 \
|
||||
libssh2_publickey_shutdown.3 \
|
||||
libssh2_scp_recv.3 \
|
||||
libssh2_scp_recv2.3 \
|
||||
libssh2_scp_send.3 \
|
||||
libssh2_scp_send64.3 \
|
||||
libssh2_scp_send_ex.3 \
|
||||
libssh2_session_abstract.3 \
|
||||
libssh2_session_banner_get.3 \
|
||||
libssh2_session_banner_set.3 \
|
||||
libssh2_session_block_directions.3 \
|
||||
libssh2_session_callback_set.3 \
|
||||
libssh2_session_callback_set2.3 \
|
||||
libssh2_session_disconnect.3 \
|
||||
libssh2_session_disconnect_ex.3 \
|
||||
libssh2_session_flag.3 \
|
||||
libssh2_session_free.3 \
|
||||
libssh2_session_get_blocking.3 \
|
||||
libssh2_session_get_read_timeout.3 \
|
||||
libssh2_session_get_timeout.3 \
|
||||
libssh2_session_handshake.3 \
|
||||
libssh2_session_hostkey.3 \
|
||||
libssh2_session_init.3 \
|
||||
libssh2_session_init_ex.3 \
|
||||
libssh2_session_last_errno.3 \
|
||||
libssh2_session_last_error.3 \
|
||||
libssh2_session_method_pref.3 \
|
||||
libssh2_session_methods.3 \
|
||||
libssh2_session_set_blocking.3 \
|
||||
libssh2_session_set_last_error.3 \
|
||||
libssh2_session_set_read_timeout.3 \
|
||||
libssh2_session_set_timeout.3 \
|
||||
libssh2_session_startup.3 \
|
||||
libssh2_session_supported_algs.3 \
|
||||
libssh2_sftp_close.3 \
|
||||
libssh2_sftp_close_handle.3 \
|
||||
libssh2_sftp_closedir.3 \
|
||||
libssh2_sftp_fsetstat.3 \
|
||||
libssh2_sftp_fstat.3 \
|
||||
libssh2_sftp_fstat_ex.3 \
|
||||
libssh2_sftp_fstatvfs.3 \
|
||||
libssh2_sftp_fsync.3 \
|
||||
libssh2_sftp_get_channel.3 \
|
||||
libssh2_sftp_init.3 \
|
||||
libssh2_sftp_last_error.3 \
|
||||
libssh2_sftp_lstat.3 \
|
||||
libssh2_sftp_mkdir.3 \
|
||||
libssh2_sftp_mkdir_ex.3 \
|
||||
libssh2_sftp_open.3 \
|
||||
libssh2_sftp_open_ex.3 \
|
||||
libssh2_sftp_open_ex_r.3 \
|
||||
libssh2_sftp_open_r.3 \
|
||||
libssh2_sftp_opendir.3 \
|
||||
libssh2_sftp_posix_rename.3 \
|
||||
libssh2_sftp_posix_rename_ex.3 \
|
||||
libssh2_sftp_read.3 \
|
||||
libssh2_sftp_readdir.3 \
|
||||
libssh2_sftp_readdir_ex.3 \
|
||||
libssh2_sftp_readlink.3 \
|
||||
libssh2_sftp_realpath.3 \
|
||||
libssh2_sftp_rename.3 \
|
||||
libssh2_sftp_rename_ex.3 \
|
||||
libssh2_sftp_rewind.3 \
|
||||
libssh2_sftp_rmdir.3 \
|
||||
libssh2_sftp_rmdir_ex.3 \
|
||||
libssh2_sftp_seek.3 \
|
||||
libssh2_sftp_seek64.3 \
|
||||
libssh2_sftp_setstat.3 \
|
||||
libssh2_sftp_shutdown.3 \
|
||||
libssh2_sftp_stat.3 \
|
||||
libssh2_sftp_stat_ex.3 \
|
||||
libssh2_sftp_statvfs.3 \
|
||||
libssh2_sftp_symlink.3 \
|
||||
libssh2_sftp_symlink_ex.3 \
|
||||
libssh2_sftp_tell.3 \
|
||||
libssh2_sftp_tell64.3 \
|
||||
libssh2_sftp_unlink.3 \
|
||||
libssh2_sftp_unlink_ex.3 \
|
||||
libssh2_sftp_write.3 \
|
||||
libssh2_sign_sk.3 \
|
||||
libssh2_trace.3 \
|
||||
libssh2_trace_sethandler.3 \
|
||||
libssh2_userauth_authenticated.3 \
|
||||
libssh2_userauth_banner.3 \
|
||||
libssh2_userauth_hostbased_fromfile.3 \
|
||||
libssh2_userauth_hostbased_fromfile_ex.3 \
|
||||
libssh2_userauth_keyboard_interactive.3 \
|
||||
libssh2_userauth_keyboard_interactive_ex.3 \
|
||||
libssh2_userauth_list.3 \
|
||||
libssh2_userauth_password.3 \
|
||||
libssh2_userauth_password_ex.3 \
|
||||
libssh2_userauth_publickey.3 \
|
||||
libssh2_userauth_publickey_fromfile.3 \
|
||||
libssh2_userauth_publickey_fromfile_ex.3 \
|
||||
libssh2_userauth_publickey_frommemory.3 \
|
||||
libssh2_userauth_publickey_sk.3 \
|
||||
libssh2_version.3
|
||||
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
||||
&& { if test -f $@; then exit 0; else break; fi; }; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign docs/Makefile'; \
|
||||
$(am__cd) $(top_srcdir) && \
|
||||
$(AUTOMAKE) --foreign docs/Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(am__aclocal_m4_deps):
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
install-man3: $(dist_man_MANS)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list1=''; \
|
||||
list2='$(dist_man_MANS)'; \
|
||||
test -n "$(man3dir)" \
|
||||
&& test -n "`echo $$list1$$list2`" \
|
||||
|| exit 0; \
|
||||
echo " $(MKDIR_P) '$(DESTDIR)$(man3dir)'"; \
|
||||
$(MKDIR_P) "$(DESTDIR)$(man3dir)" || exit 1; \
|
||||
{ for i in $$list1; do echo "$$i"; done; \
|
||||
if test -n "$$list2"; then \
|
||||
for i in $$list2; do echo "$$i"; done \
|
||||
| sed -n '/\.3[a-z]*$$/p'; \
|
||||
fi; \
|
||||
} | while read p; do \
|
||||
if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
|
||||
echo "$$d$$p"; echo "$$p"; \
|
||||
done | \
|
||||
sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^3][0-9a-z]*$$,3,;x' \
|
||||
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
|
||||
sed 'N;N;s,\n, ,g' | { \
|
||||
list=; while read file base inst; do \
|
||||
if test "$$base" = "$$inst"; then list="$$list $$file"; else \
|
||||
echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man3dir)/$$inst'"; \
|
||||
$(INSTALL_DATA) "$$file" "$(DESTDIR)$(man3dir)/$$inst" || exit $$?; \
|
||||
fi; \
|
||||
done; \
|
||||
for i in $$list; do echo "$$i"; done | $(am__base_list) | \
|
||||
while read files; do \
|
||||
test -z "$$files" || { \
|
||||
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man3dir)'"; \
|
||||
$(INSTALL_DATA) $$files "$(DESTDIR)$(man3dir)" || exit $$?; }; \
|
||||
done; }
|
||||
|
||||
uninstall-man3:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list=''; test -n "$(man3dir)" || exit 0; \
|
||||
files=`{ for i in $$list; do echo "$$i"; done; \
|
||||
l2='$(dist_man_MANS)'; for i in $$l2; do echo "$$i"; done | \
|
||||
sed -n '/\.3[a-z]*$$/p'; \
|
||||
} | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^3][0-9a-z]*$$,3,;x' \
|
||||
-e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
|
||||
dir='$(DESTDIR)$(man3dir)'; $(am__uninstall_files_from_dir)
|
||||
tags TAGS:
|
||||
|
||||
ctags CTAGS:
|
||||
|
||||
cscope cscopelist:
|
||||
|
||||
distdir: $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
||||
|
||||
distdir-am: $(DISTFILES)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
case $$dist_files in \
|
||||
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||
sort -u` ;; \
|
||||
esac; \
|
||||
for file in $$dist_files; do \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d "$(distdir)/$$file"; then \
|
||||
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||
fi; \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
|
||||
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||
fi; \
|
||||
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
|
||||
else \
|
||||
test -f "$(distdir)/$$file" \
|
||||
|| cp -p $$d/$$file "$(distdir)/$$file" \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile $(MANS)
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(man3dir)"; do \
|
||||
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||||
done
|
||||
install: install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
if test -z '$(STRIP)'; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
install; \
|
||||
else \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
|
||||
fi
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-libtool mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-generic
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-am
|
||||
|
||||
html-am:
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am: install-man
|
||||
|
||||
install-dvi: install-dvi-am
|
||||
|
||||
install-dvi-am:
|
||||
|
||||
install-exec-am:
|
||||
|
||||
install-html: install-html-am
|
||||
|
||||
install-html-am:
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-info-am:
|
||||
|
||||
install-man: install-man3
|
||||
|
||||
install-pdf: install-pdf-am
|
||||
|
||||
install-pdf-am:
|
||||
|
||||
install-ps: install-ps-am
|
||||
|
||||
install-ps-am:
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-generic mostlyclean-libtool
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-man
|
||||
|
||||
uninstall-man: uninstall-man3
|
||||
|
||||
.MAKE: install-am install-strip
|
||||
|
||||
.PHONY: all all-am check check-am clean clean-generic clean-libtool \
|
||||
cscopelist-am ctags-am distclean distclean-generic \
|
||||
distclean-libtool distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am install-dvi \
|
||||
install-dvi-am install-exec install-exec-am install-html \
|
||||
install-html-am install-info install-info-am install-man \
|
||||
install-man3 install-pdf install-pdf-am install-ps \
|
||||
install-ps-am install-strip installcheck installcheck-am \
|
||||
installdirs maintainer-clean maintainer-clean-generic \
|
||||
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
|
||||
ps ps-am tags-am uninstall uninstall-am uninstall-man \
|
||||
uninstall-man3
|
||||
|
||||
.PRECIOUS: Makefile
|
||||
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
||||
100
vendor/libssh2/docs/SECURITY.md
vendored
Normal file
100
vendor/libssh2/docs/SECURITY.md
vendored
Normal file
|
|
@ -0,0 +1,100 @@
|
|||
libssh2 security
|
||||
================
|
||||
|
||||
This document is intended to provide guidance on how security vulnerabilities
|
||||
should be handled in the libssh2 project.
|
||||
|
||||
Publishing Information
|
||||
----------------------
|
||||
|
||||
All known and public libssh2 vulnerabilities will be listed on [the libssh2
|
||||
web site](https://libssh2.org/).
|
||||
|
||||
Security vulnerabilities should not be entered in the project's public bug
|
||||
tracker unless the necessary configuration is in place to limit access to the
|
||||
issue to only the reporter and the project's security team.
|
||||
|
||||
Vulnerability Handling
|
||||
----------------------
|
||||
|
||||
The typical process for handling a new security vulnerability is as follows.
|
||||
|
||||
No information should be made public about a vulnerability until it is
|
||||
formally announced at the end of this process. That means, for example that a
|
||||
bug tracker entry must NOT be created to track the issue since that will make
|
||||
the issue public and it should not be discussed on the project's public
|
||||
mailing list. Also messages associated with any commits should not make any
|
||||
reference to the security nature of the commit if done prior to the public
|
||||
announcement.
|
||||
|
||||
- The person discovering the issue, the reporter, reports the vulnerability
|
||||
privately to `libssh2-security@haxx.se`. That is an email alias that reaches
|
||||
a handful of selected and trusted people.
|
||||
|
||||
- Messages that do not relate to the reporting or managing of an undisclosed
|
||||
security vulnerability in libssh2 are ignored and no further action is
|
||||
required.
|
||||
|
||||
- A person in the security team sends an e-mail to the original reporter to
|
||||
acknowledge the report.
|
||||
|
||||
- The security team investigates the report and either rejects it or accepts
|
||||
it.
|
||||
|
||||
- If the report is rejected, the team writes to the reporter to explain why.
|
||||
|
||||
- If the report is accepted, the team writes to the reporter to let him/her
|
||||
know it is accepted and that they are working on a fix.
|
||||
|
||||
- The security team discusses the problem, works out a fix, considers the
|
||||
impact of the problem and suggests a release schedule. This discussion
|
||||
should involve the reporter as much as possible.
|
||||
|
||||
- The release of the information should be "as soon as possible" and is most
|
||||
often synced with an upcoming release that contains the fix. If the
|
||||
reporter, or anyone else, thinks the next planned release is too far away
|
||||
then a separate earlier release for security reasons should be considered.
|
||||
|
||||
- Write a security advisory draft about the problem that explains what the
|
||||
problem is, its impact, which versions it affects, solutions or
|
||||
workarounds, when the release is out and make sure to credit all
|
||||
contributors properly.
|
||||
|
||||
- Request a CVE number from
|
||||
[distros@openwall](https://oss-security.openwall.org/wiki/mailing-lists/distros)
|
||||
when also informing and preparing them for the upcoming public security
|
||||
vulnerability announcement - attach the advisory draft for information. Note
|
||||
that 'distros' will not accept an embargo longer than 14 days.
|
||||
|
||||
- Update the "security advisory" with the CVE number.
|
||||
|
||||
- The security team commits the fix in a private branch. The commit message
|
||||
should ideally contain the CVE number. This fix is usually also distributed
|
||||
to the 'distros' mailing list to allow them to use the fix prior to the
|
||||
public announcement.
|
||||
|
||||
- At the day of the next release, the private branch is merged into the master
|
||||
branch and pushed. Once pushed, the information is accessible to the public
|
||||
and the actual release should follow suit immediately afterwards.
|
||||
|
||||
- The project team creates a release that includes the fix.
|
||||
|
||||
- The project team announces the release and the vulnerability to the world in
|
||||
the same manner we always announce releases. It gets sent to the libssh2
|
||||
mailing list and the oss-security mailing list.
|
||||
|
||||
- The security web page on the web site should get the new vulnerability
|
||||
mentioned.
|
||||
|
||||
LIBSSH2-SECURITY (at haxx dot se)
|
||||
--------------------------------
|
||||
|
||||
Who is on this list? There are a couple of criteria you must meet, and then we
|
||||
might ask you to join the list or you can ask to join it. It really is not very
|
||||
formal. We basically only require that you have a long-term presence in the
|
||||
libssh2 project and you have shown an understanding for the project and its way
|
||||
of working. You must have been around for a good while and you should have no
|
||||
plans in vanishing in the near future.
|
||||
|
||||
We do not make the list of participants public mostly because it tends to vary
|
||||
somewhat over time and a list somewhere will only risk getting outdated.
|
||||
180
vendor/libssh2/docs/TODO
vendored
Normal file
180
vendor/libssh2/docs/TODO
vendored
Normal file
|
|
@ -0,0 +1,180 @@
|
|||
Things TODO
|
||||
===========
|
||||
|
||||
* Fix -Wsign-conversion warnings in src
|
||||
|
||||
* Fix the numerous malloc+copy operations for sending data, see "Buffering
|
||||
Improvements" below for details
|
||||
|
||||
* make sure the windowing code adapts better to slow situations so that it
|
||||
does not then use as much memory as today. Possibly by an app-controllable
|
||||
"Window mode"?
|
||||
|
||||
* Decrease the number of mallocs. Everywhere. Will get easier once the
|
||||
buffering improvements have been done.
|
||||
|
||||
* Use SO_NOSIGPIPE for Mac OS/BSD systems where MSG_NOSIGNAL does not
|
||||
exist/work
|
||||
|
||||
* Extend the test suite to actually test lots of aspects of libssh2
|
||||
|
||||
* Update public API to drop casts added to fix compiler warnings
|
||||
|
||||
* Expose error messages sent by the server
|
||||
|
||||
* select() is troublesome with libssh2 when using multiple channels over
|
||||
the same session. See "New Transport API" below for more details.
|
||||
|
||||
* for obsolete/weak/insecure algorithms: either stop enabling them by default
|
||||
at build-time, or delete support for them completely.
|
||||
|
||||
At next SONAME bump
|
||||
===================
|
||||
|
||||
* stop using #defined macros as part of the official API. The macros should
|
||||
either be turned into real functions or discarded from the API.
|
||||
|
||||
* delete or deprecate libssh2_session_callback_set()
|
||||
|
||||
* bump length arguments in callback functions to size_t/ssize_t
|
||||
|
||||
* remove the following functions from the API/ABI
|
||||
|
||||
libssh2_base64_decode()
|
||||
libssh2_session_flag()
|
||||
libssh2_channel_handle_extended_data()
|
||||
libssh2_channel_receive_window_adjust()
|
||||
libssh2_poll()
|
||||
libssh2_poll_channel_read()
|
||||
libssh2_session_startup() (libssh2_session_handshake() is the replacement)
|
||||
libssh2_banner_set() (libssh2_session_banner_set() is the replacement)
|
||||
|
||||
* Rename a few function:
|
||||
|
||||
libssh2_hostkey_hash => libssh2_session_hostkey_hash
|
||||
libssh2_banner_set => libssh2_session_banner_set
|
||||
|
||||
* change 'int' to 'libssh2_socket_t' in the public API for sockets.
|
||||
|
||||
* Use 'size_t' for string lengths in all functions.
|
||||
|
||||
* Add a comment field to struct libssh2_knownhost.
|
||||
|
||||
* remove the existing libssh2_knownhost_add() function and rename
|
||||
libssh2_knownhost_addc to become the new libssh2_knownhost_add instead
|
||||
|
||||
* remove the existing libssh2_scp_send_ex() function and rename
|
||||
libssh2_scp_send64 to become the new libssh2_scp_send instead.
|
||||
|
||||
* remove the existing libssh2_knownhost_check() function and rename
|
||||
libssh2_knownhost_checkp() to become the new libssh2_knownhost_check instead
|
||||
|
||||
Buffering Improvements
|
||||
======================
|
||||
|
||||
transport_write
|
||||
|
||||
- If this function gets called with a total packet size that is larger than
|
||||
32K, it should create more than one SSH packet so that it keeps the largest
|
||||
one below 32K
|
||||
|
||||
sftp_write
|
||||
|
||||
- should not copy/allocate anything for the data, only create a header chunk
|
||||
and pass on the payload data to channel_write "pointed to"
|
||||
|
||||
New Transport API
|
||||
=================
|
||||
|
||||
THE PROBLEM
|
||||
|
||||
The problem in a nutshell is that when an application opens up multiple
|
||||
channels over a single session, those are all using the same socket. If the
|
||||
application is then using select() to wait for traffic (like any sensible app
|
||||
does) and wants to act on the data when select() tells there is something to
|
||||
for example read, what does an application do?
|
||||
|
||||
With our current API, you have to loop over all the channels and read from
|
||||
them to see if they have data. This effectively makes blocking reads
|
||||
impossible. If the app has many channels in a setup like this, it even becomes
|
||||
slow. (The original API had the libssh2_poll_channel_read() and libssh2_poll()
|
||||
to somewhat overcome this hurdle, but they too have pretty much the same
|
||||
problems plus a few others.)
|
||||
|
||||
Traffic in the other direction is similarly limited: the app has to try
|
||||
sending to all channels, even though some of them may very well not accept any
|
||||
data at that point.
|
||||
|
||||
A SOLUTION
|
||||
|
||||
I suggest we introduce two new helper functions:
|
||||
|
||||
libssh2_transport_read()
|
||||
|
||||
- Read "a bunch" of data from the given socket and returns information to the
|
||||
app about what channels that are now readable (ie they will not block when
|
||||
read from). The function can be called over and over and it will repeatedly
|
||||
return info about what channels that are readable at that moment.
|
||||
|
||||
libssh2_transport_write()
|
||||
|
||||
- Returns information about what channels that are writable, in the sense
|
||||
that they have windows set from the remote side that allows data to get
|
||||
sent. Writing to one of those channels will not block. Of course, the
|
||||
underlying socket may only accept a certain amount of data, so at the first
|
||||
short return, nothing more should be attempted to get sent until select()
|
||||
(or equivalent) has been used on the master socket again.
|
||||
|
||||
I have not yet figured out a sensible API for how these functions should return
|
||||
that info, but if we agree on the general principles I guess we can work that
|
||||
out.
|
||||
|
||||
VOLUNTARY
|
||||
|
||||
I wanted to mention that these two helper functions would not be mandatory
|
||||
in any way. They would just be there for those who want them, and existing
|
||||
programs can remain using the old functions only if they prefer to.
|
||||
|
||||
New SFTP API
|
||||
============
|
||||
|
||||
PURPOSE
|
||||
|
||||
Provide API functions that explicitly tells at once that a (full) SFTP file
|
||||
transfer is wanted, to allow libssh2 to leverage on that knowledge to speed
|
||||
up things internally. It can for example do read ahead, buffer writes (merge
|
||||
small writes into larger chunks), better tune the SSH window and more. This
|
||||
sort of API is already provided for SCP transfers.
|
||||
|
||||
API
|
||||
|
||||
New functions:
|
||||
|
||||
LIBSSH2_SFTP_HANDLE *libssh2_sftp_send(SFTP_SESSION *sftp,
|
||||
libssh2_uint64_t filesize,
|
||||
char *remote_path,
|
||||
size_t remote_path_len,
|
||||
long mode);
|
||||
|
||||
Tell libssh2 that a local file with a given size is about to get sent to
|
||||
the SFTP server.
|
||||
|
||||
LIBSSH2_SFTP_HANDLE *libssh2_sftp_recv();
|
||||
|
||||
Tell libssh2 that a remote file is requested to get downloaded from the SFTP
|
||||
server.
|
||||
|
||||
Only the setup of the file transfer is different from an application's point
|
||||
of view. Depending on direction of the transfer(s), the following already
|
||||
existing functions should then be used until the transfer is complete:
|
||||
|
||||
libssh2_sftp_read()
|
||||
libssh2_sftp_write()
|
||||
|
||||
HOW TO USE
|
||||
|
||||
1. Setup the transfer using one of the two new functions.
|
||||
|
||||
2. Loop through the reading or writing of data.
|
||||
|
||||
3. Cleanup the transfer
|
||||
24
vendor/libssh2/docs/libssh2_agent_connect.3
vendored
Normal file
24
vendor/libssh2/docs/libssh2_agent_connect.3
vendored
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
.\" Copyright (C) Daiki Ueno
|
||||
.\" SPDX-License-Identifier: BSD-3-Clause
|
||||
.TH libssh2_agent_connect 3 "23 Dec 2009" "libssh2" "libssh2"
|
||||
.SH NAME
|
||||
libssh2_agent_connect - connect to an ssh-agent
|
||||
.SH SYNOPSIS
|
||||
.nf
|
||||
#include <libssh2.h>
|
||||
|
||||
int
|
||||
libssh2_agent_connect(LIBSSH2_AGENT *agent);
|
||||
.fi
|
||||
.SH DESCRIPTION
|
||||
Connect to an ssh-agent running on the system.
|
||||
|
||||
Call \fBlibssh2_agent_disconnect(3)\fP to close the connection after
|
||||
you are doing using it.
|
||||
.SH RETURN VALUE
|
||||
Returns 0 if succeeded, or a negative value for error.
|
||||
.SH AVAILABILITY
|
||||
Added in libssh2 1.2
|
||||
.SH SEE ALSO
|
||||
.BR libssh2_agent_init(3)
|
||||
.BR libssh2_agent_disconnect(3)
|
||||
22
vendor/libssh2/docs/libssh2_agent_disconnect.3
vendored
Normal file
22
vendor/libssh2/docs/libssh2_agent_disconnect.3
vendored
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
.\" Copyright (C) Daiki Ueno
|
||||
.\" SPDX-License-Identifier: BSD-3-Clause
|
||||
.TH libssh2_agent_disconnect 3 "23 Dec 2009" "libssh2" "libssh2"
|
||||
.SH NAME
|
||||
libssh2_agent_disconnect - close a connection to an ssh-agent
|
||||
.SH SYNOPSIS
|
||||
.nf
|
||||
#include <libssh2.h>
|
||||
|
||||
int
|
||||
libssh2_agent_disconnect(LIBSSH2_AGENT *agent);
|
||||
.fi
|
||||
.SH DESCRIPTION
|
||||
Close a connection to an ssh-agent.
|
||||
|
||||
.SH RETURN VALUE
|
||||
Returns 0 if succeeded, or a negative value for error.
|
||||
.SH AVAILABILITY
|
||||
Added in libssh2 1.2
|
||||
.SH SEE ALSO
|
||||
.BR libssh2_agent_connect(3)
|
||||
.BR libssh2_agent_free(3)
|
||||
22
vendor/libssh2/docs/libssh2_agent_free.3
vendored
Normal file
22
vendor/libssh2/docs/libssh2_agent_free.3
vendored
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
.\" Copyright (C) Daiki Ueno
|
||||
.\" SPDX-License-Identifier: BSD-3-Clause
|
||||
.TH libssh2_agent_free 3 "28 May 2009" "libssh2" "libssh2"
|
||||
.SH NAME
|
||||
libssh2_agent_free - free an ssh-agent handle
|
||||
.SH SYNOPSIS
|
||||
.nf
|
||||
#include <libssh2.h>
|
||||
|
||||
void
|
||||
libssh2_agent_free(LIBSSH2_AGENT *agent);
|
||||
.fi
|
||||
.SH DESCRIPTION
|
||||
Free an ssh-agent handle. This function also frees the internal
|
||||
collection of public keys.
|
||||
.SH RETURN VALUE
|
||||
None.
|
||||
.SH AVAILABILITY
|
||||
Added in libssh2 1.2
|
||||
.SH SEE ALSO
|
||||
.BR libssh2_agent_init(3)
|
||||
.BR libssh2_agent_disconnect(3)
|
||||
36
vendor/libssh2/docs/libssh2_agent_get_identity.3
vendored
Normal file
36
vendor/libssh2/docs/libssh2_agent_get_identity.3
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
.\" Copyright (C) Daiki Ueno
|
||||
.\" SPDX-License-Identifier: BSD-3-Clause
|
||||
.TH libssh2_agent_get_identity 3 "23 Dec 2009" "libssh2" "libssh2"
|
||||
.SH NAME
|
||||
libssh2_agent_get_identity - get a public key off the collection of public keys managed by ssh-agent
|
||||
.SH SYNOPSIS
|
||||
.nf
|
||||
#include <libssh2.h>
|
||||
|
||||
int
|
||||
libssh2_agent_get_identity(LIBSSH2_AGENT *agent,
|
||||
struct libssh2_agent_publickey **store,
|
||||
struct libssh2_agent_publickey *prev);
|
||||
.fi
|
||||
.SH DESCRIPTION
|
||||
\fIlibssh2_agent_get_identity(3)\fP allows an application to iterate
|
||||
over all public keys in the collection managed by ssh-agent.
|
||||
|
||||
\fIstore\fP should point to a pointer that gets filled in to point to the
|
||||
public key data.
|
||||
|
||||
\fIprev\fP is a pointer to a previous 'struct libssh2_agent_publickey'
|
||||
as returned by a previous invoke of this function, or NULL to get the
|
||||
first entry in the internal collection.
|
||||
.SH RETURN VALUE
|
||||
Returns 0 if everything is fine and information about a host was stored in
|
||||
the \fIstore\fP struct.
|
||||
|
||||
Returns 1 if it reached the end of public keys.
|
||||
|
||||
Returns negative values for error
|
||||
.SH AVAILABILITY
|
||||
Added in libssh2 1.2
|
||||
.SH SEE ALSO
|
||||
.BR libssh2_agent_list_identities(3)
|
||||
.BR libssh2_agent_userauth(3)
|
||||
22
vendor/libssh2/docs/libssh2_agent_get_identity_path.3
vendored
Normal file
22
vendor/libssh2/docs/libssh2_agent_get_identity_path.3
vendored
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
.\" Copyright (C) Will Cosgrove
|
||||
.\" SPDX-License-Identifier: BSD-3-Clause
|
||||
.TH libssh2_agent_get_identity_path 3 "6 Mar 2019" "libssh2" "libssh2"
|
||||
.SH NAME
|
||||
libssh2_agent_get_identity_path - gets the custom ssh-agent socket path
|
||||
.SH SYNOPSIS
|
||||
.nf
|
||||
#include <libssh2.h>
|
||||
|
||||
const char *
|
||||
libssh2_agent_get_identity_path(LIBSSH2_AGENT *agent);
|
||||
.fi
|
||||
.SH DESCRIPTION
|
||||
Returns the custom agent identity socket path if set using libssh2_agent_set_identity_path()
|
||||
|
||||
.SH RETURN VALUE
|
||||
Returns the socket path on disk.
|
||||
.SH AVAILABILITY
|
||||
Added in libssh2 1.9
|
||||
.SH SEE ALSO
|
||||
.BR libssh2_agent_init(3)
|
||||
.BR libssh2_agent_set_identity_path(3)
|
||||
28
vendor/libssh2/docs/libssh2_agent_init.3
vendored
Normal file
28
vendor/libssh2/docs/libssh2_agent_init.3
vendored
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
.\" Copyright (C) Daiki Ueno
|
||||
.\" SPDX-License-Identifier: BSD-3-Clause
|
||||
.TH libssh2_agent_init 3 "23 Dec 2009" "libssh2" "libssh2"
|
||||
.SH NAME
|
||||
libssh2_agent_init - init an ssh-agent handle
|
||||
.SH SYNOPSIS
|
||||
.nf
|
||||
#include <libssh2.h>
|
||||
|
||||
LIBSSH2_AGENT *
|
||||
libssh2_agent_init(LIBSSH2_SESSION *session);
|
||||
.fi
|
||||
.SH DESCRIPTION
|
||||
Init an ssh-agent handle. Returns the handle to an internal
|
||||
representation of an ssh-agent connection. After the successful
|
||||
initialization, an application can call \fBlibssh2_agent_connect(3)\fP
|
||||
to connect to a running ssh-agent.
|
||||
|
||||
Call \fBlibssh2_agent_free(3)\fP to free the handle again after you are
|
||||
doing using it.
|
||||
.SH RETURN VALUE
|
||||
Returns a handle pointer or NULL if something went wrong. The returned handle
|
||||
is used as input to all other ssh-agent related functions libssh2 provides.
|
||||
.SH AVAILABILITY
|
||||
Added in libssh2 1.2
|
||||
.SH SEE ALSO
|
||||
.BR libssh2_agent_connect(3)
|
||||
.BR libssh2_agent_free(3)
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue