urbit/pkg/urcrypt/Makefile.am

131 lines
3.7 KiB
Makefile
Raw Normal View History

2020-10-04 01:15:14 +03:00
ACLOCAL_AMFLAGS = -I build-aux/m4
AM_CFLAGS = -Wall -g -O3
2020-10-04 01:15:14 +03:00
lib_LTLIBRARIES = liburcrypt.la
noinst_LTLIBRARIES = libed25519.la \
2020-10-05 20:31:45 +03:00
libge_additions.la \
2020-10-11 01:01:31 +03:00
libargon2.la \
libkeccak_tiny.la \
2020-10-11 01:01:31 +03:00
libscrypt.la
2020-10-11 01:01:31 +03:00
include_HEADERS = urcrypt/urcrypt.h
noinst_HEADERS = urcrypt/util.h \
ed25519/src/ed25519.h \
2020-10-05 20:31:45 +03:00
ed25519/src/ge.h \
ge-additions/ge-additions.h \
argon2/include/argon2.h \
2020-10-11 01:01:31 +03:00
argon2/src/blake2/blake2.h \
scrypt/sha256.h \
scrypt/libscrypt.h
2020-10-05 20:31:45 +03:00
# main library
2020-10-12 21:58:09 +03:00
pkgconfig_DATA = liburcrypt-$(URCRYPT_API_VERSION).pc
DISTCLEANFILES = $(pkgconfig_DATA)
liburcrypt_la_CPPFLAGS = -I$(srcdir)/ed25519/src \
-I$(srcdir)/ge-additions \
-I$(srcdir)/argon2/include \
2020-10-11 01:01:31 +03:00
-I$(srcdir)/argon2/src/blake2 \
-I$(srcdir)/keccak-tiny \
2020-10-11 01:01:31 +03:00
-I$(srcdir)/scrypt
2020-10-12 22:13:22 +03:00
liburcrypt_la_LIBADD = $(LIBCRYPTO_LIBS) \
$(LIBSECP256K1_LIBS) \
$(LIBAES_SIV_LIBS) \
2020-10-05 20:31:45 +03:00
libed25519.la \
libge_additions.la \
2020-10-11 01:01:31 +03:00
libargon2.la \
libkeccak_tiny.la \
2020-10-11 01:01:31 +03:00
libscrypt.la
2020-10-12 22:13:22 +03:00
liburcrypt_la_CFLAGS = $(LIBCRYPTO_CFLAGS) \
$(LIBSECP256K1_CFLAGS) \
$(LIBAES_SIV_CFLAGS)
2020-10-05 20:31:45 +03:00
# urcrypt_ is used for public symbols, urcrypt__ for internal.
2020-10-12 21:58:09 +03:00
liburcrypt_la_LDFLAGS = -export-symbols-regex '^urcrypt_[^_]' \
-version-info $(URCRYPT_LT_VERSION)
2020-10-11 01:01:31 +03:00
liburcrypt_la_SOURCES = urcrypt/aes_cbc.c \
urcrypt/aes_ecb.c \
urcrypt/aes_siv.c \
urcrypt/argon.c \
urcrypt/ed25519.c \
urcrypt/ge_additions.c \
urcrypt/ripemd.c \
urcrypt/scrypt.c \
urcrypt/keccak.c \
2020-10-11 01:01:31 +03:00
urcrypt/secp256k1.c \
urcrypt/sha.c \
urcrypt/util.c \
urcrypt/util.h
2020-10-04 01:15:14 +03:00
2020-10-05 20:31:45 +03:00
# ed25519
2020-10-11 01:01:31 +03:00
libed25519_la_CFLAGS = -Wno-unused-result
libed25519_la_SOURCES = ed25519/src/fixedint.h \
2020-10-05 20:31:45 +03:00
ed25519/src/sha512.h \
ed25519/src/fe.h \
ed25519/src/precomp_data.h \
ed25519/src/sc.h \
ed25519/src/add_scalar.c \
ed25519/src/keypair.c \
ed25519/src/sc.c \
ed25519/src/seed.c \
ed25519/src/verify.c \
ed25519/src/ge.c \
ed25519/src/fe.c \
ed25519/src/key_exchange.c \
ed25519/src/sha512.c \
ed25519/src/sign.c
2020-10-04 01:15:14 +03:00
2020-10-05 20:31:45 +03:00
# ge-additions
libge_additions_la_CPPFLAGS = -I$(srcdir)/ed25519/src
libge_additions_la_CFLAGS = -Werror -pedantic -std=gnu99
libge_additions_la_SOURCES = ge-additions/ge-additions.c
2020-10-04 03:01:56 +03:00
2020-10-05 20:31:45 +03:00
# argon2
libargon2_la_CPPFLAGS = -I$(srcdir)/argon2/include -DARGON2_NO_THREADS
libargon2_la_CFLAGS = -Wno-unused-value -Wno-unused-function
libargon2_la_SOURCES = argon2/src/core.h \
2020-10-05 20:31:45 +03:00
argon2/src/thread.h \
argon2/src/encoding.h \
argon2/src/blake2/blake2-impl.h \
argon2/src/blake2/blamka-round-opt.h \
argon2/src/blake2/blamka-round-ref.h \
argon2/src/argon2.c \
argon2/src/core.c \
argon2/src/blake2/blake2b.c \
argon2/src/thread.c \
argon2/src/encoding.c
# argon2 different sources for different CPU architectures
# opt.c requires SSE instructions and won't work on AArch64 et al.
if ARCH_X86_64
libargon2_la_SOURCES += \
argon2/src/opt.c
endif
if ARCH_GENERIC
libargon2_la_SOURCES += \
argon2/src/ref.c
endif
2020-10-11 01:01:31 +03:00
# scrypt
libscrypt_la_CPPFLAGS = -D_FORTIFY_SOURCE=2
libscrypt_la_SOURCES = scrypt/b64.c \
scrypt/crypto-mcf.c \
scrypt/crypto-scrypt-saltgen.c \
scrypt/crypto_scrypt-check.c \
scrypt/crypto_scrypt-hash.c \
scrypt/crypto_scrypt-hexconvert.c \
scrypt/crypto_scrypt-nosse.c \
scrypt/main.c \
scrypt/sha256.c \
scrypt/slowequals.c \
scrypt/b64.h \
scrypt/crypto_scrypt-hexconvert.h \
scrypt/slowequals.h \
scrypt/sysendian.h
# keccak-tiny
libkeccak_tiny_la_CFLAGS = -march=native -std=c11 -Wextra -Wpedantic -Wall
libkeccak_tiny_la_SOURCES = keccak-tiny/keccak-tiny.c \
keccak-tiny/define-macros.h \
keccak-tiny/keccak-tiny.h