diff options
author | Viktor Szakats <commit@vsz.me> | 2023-12-14 03:36:09 +0000 |
---|---|---|
committer | Viktor Szakats <commit@vsz.me> | 2023-12-14 03:36:09 +0000 |
commit | 848950877fb2d66d76cb1258fc28a2b1b453a42d (patch) | |
tree | 3008889d0dbb1ce97d753a1c0929a2e4cd0ceccc /crypto | |
parent | 05902e63c9b80d25f4367fb0f8f441669510eb2e (diff) | |
download | portable-848950877fb2d66d76cb1258fc28a2b1b453a42d.tar.gz portable-848950877fb2d66d76cb1258fc28a2b1b453a42d.tar.bz2 portable-848950877fb2d66d76cb1258fc28a2b1b453a42d.zip |
cmake: stop exporting compat functions
Diffstat (limited to 'crypto')
-rw-r--r-- | crypto/CMakeLists.txt | 111 |
1 files changed, 38 insertions, 73 deletions
diff --git a/crypto/CMakeLists.txt b/crypto/CMakeLists.txt index 8046efe..496d64b 100644 --- a/crypto/CMakeLists.txt +++ b/crypto/CMakeLists.txt | |||
@@ -734,6 +734,8 @@ set( | |||
734 | x509/x_all.c | 734 | x509/x_all.c |
735 | ) | 735 | ) |
736 | 736 | ||
737 | set(COMPAT_SRC "") | ||
738 | |||
737 | if(UNIX) | 739 | if(UNIX) |
738 | set(CRYPTO_SRC ${CRYPTO_SRC} crypto_lock.c) | 740 | set(CRYPTO_SRC ${CRYPTO_SRC} crypto_lock.c) |
739 | set(CRYPTO_SRC ${CRYPTO_SRC} bio/b_posix.c) | 741 | set(CRYPTO_SRC ${CRYPTO_SRC} bio/b_posix.c) |
@@ -749,38 +751,19 @@ if(WIN32) | |||
749 | endif() | 751 | endif() |
750 | 752 | ||
751 | if(WIN32) | 753 | if(WIN32) |
752 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/posix_win.c) | 754 | set(COMPAT_SRC ${COMPAT_SRC} compat/posix_win.c) |
753 | set(EXTRA_EXPORT ${EXTRA_EXPORT} gettimeofday) | ||
754 | set(EXTRA_EXPORT ${EXTRA_EXPORT} getuid) | ||
755 | set(EXTRA_EXPORT ${EXTRA_EXPORT} posix_perror) | ||
756 | set(EXTRA_EXPORT ${EXTRA_EXPORT} posix_fopen) | ||
757 | set(EXTRA_EXPORT ${EXTRA_EXPORT} posix_fgets) | ||
758 | set(EXTRA_EXPORT ${EXTRA_EXPORT} posix_open) | ||
759 | set(EXTRA_EXPORT ${EXTRA_EXPORT} posix_rename) | ||
760 | set(EXTRA_EXPORT ${EXTRA_EXPORT} posix_connect) | ||
761 | set(EXTRA_EXPORT ${EXTRA_EXPORT} posix_close) | ||
762 | set(EXTRA_EXPORT ${EXTRA_EXPORT} posix_read) | ||
763 | set(EXTRA_EXPORT ${EXTRA_EXPORT} posix_write) | ||
764 | set(EXTRA_EXPORT ${EXTRA_EXPORT} posix_getsockopt) | ||
765 | set(EXTRA_EXPORT ${EXTRA_EXPORT} posix_setsockopt) | ||
766 | endif() | 755 | endif() |
767 | 756 | ||
768 | if(NOT HAVE_ASPRINTF) | 757 | if(NOT HAVE_ASPRINTF) |
769 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/bsd-asprintf.c) | 758 | set(COMPAT_SRC ${COMPAT_SRC} compat/bsd-asprintf.c) |
770 | set(EXTRA_EXPORT ${EXTRA_EXPORT} libressl_asprintf) | ||
771 | set(EXTRA_EXPORT ${EXTRA_EXPORT} libressl_vasprintf) | ||
772 | endif() | 759 | endif() |
773 | 760 | ||
774 | if(NOT HAVE_FREEZERO) | 761 | if(NOT HAVE_FREEZERO) |
775 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/freezero.c) | 762 | set(COMPAT_SRC ${COMPAT_SRC} compat/freezero.c) |
776 | set(EXTRA_EXPORT ${EXTRA_EXPORT} libressl_freezero) | ||
777 | endif() | 763 | endif() |
778 | 764 | ||
779 | if(NOT HAVE_GETOPT) | 765 | if(NOT HAVE_GETOPT) |
780 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/getopt_long.c) | 766 | set(COMPAT_SRC ${COMPAT_SRC} compat/getopt_long.c) |
781 | set(EXTRA_EXPORT ${EXTRA_EXPORT} getopt) | ||
782 | set(EXTRA_EXPORT ${EXTRA_EXPORT} optarg) | ||
783 | set(EXTRA_EXPORT ${EXTRA_EXPORT} optind) | ||
784 | endif() | 767 | endif() |
785 | 768 | ||
786 | if(NOT HAVE_GETPAGESIZE) | 769 | if(NOT HAVE_GETPAGESIZE) |
@@ -798,47 +781,38 @@ if(NOT HAVE_GETPROGNAME) | |||
798 | endif() | 781 | endif() |
799 | 782 | ||
800 | if(NOT HAVE_REALLOCARRAY) | 783 | if(NOT HAVE_REALLOCARRAY) |
801 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/reallocarray.c) | 784 | set(COMPAT_SRC ${COMPAT_SRC} compat/reallocarray.c) |
802 | set(EXTRA_EXPORT ${EXTRA_EXPORT} libressl_reallocarray) | ||
803 | endif() | 785 | endif() |
804 | 786 | ||
805 | if(NOT HAVE_RECALLOCARRAY) | 787 | if(NOT HAVE_RECALLOCARRAY) |
806 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/recallocarray.c) | 788 | set(COMPAT_SRC ${COMPAT_SRC} compat/recallocarray.c) |
807 | set(EXTRA_EXPORT ${EXTRA_EXPORT} libressl_recallocarray) | ||
808 | endif() | 789 | endif() |
809 | 790 | ||
810 | if(NOT HAVE_STRCASECMP) | 791 | if(NOT HAVE_STRCASECMP) |
811 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/strcasecmp.c) | 792 | set(COMPAT_SRC ${COMPAT_SRC} compat/strcasecmp.c) |
812 | set(EXTRA_EXPORT ${EXTRA_EXPORT} libressl_strcasecmp) | ||
813 | endif() | 793 | endif() |
814 | 794 | ||
815 | if(NOT HAVE_STRLCAT) | 795 | if(NOT HAVE_STRLCAT) |
816 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/strlcat.c) | 796 | set(COMPAT_SRC ${COMPAT_SRC} compat/strlcat.c) |
817 | set(EXTRA_EXPORT ${EXTRA_EXPORT} libressl_strlcat) | ||
818 | endif() | 797 | endif() |
819 | 798 | ||
820 | if(NOT HAVE_STRLCPY) | 799 | if(NOT HAVE_STRLCPY) |
821 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/strlcpy.c) | 800 | set(COMPAT_SRC ${COMPAT_SRC} compat/strlcpy.c) |
822 | set(EXTRA_EXPORT ${EXTRA_EXPORT} libressl_strlcpy) | ||
823 | endif() | 801 | endif() |
824 | 802 | ||
825 | if(NOT HAVE_STRNDUP) | 803 | if(NOT HAVE_STRNDUP) |
826 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/strndup.c) | 804 | set(COMPAT_SRC ${COMPAT_SRC} compat/strndup.c) |
827 | set(EXTRA_EXPORT ${EXTRA_EXPORT} libressl_strndup) | ||
828 | if(NOT HAVE_STRNLEN) | 805 | if(NOT HAVE_STRNLEN) |
829 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/strnlen.c) | 806 | set(COMPAT_SRC ${COMPAT_SRC} compat/strnlen.c) |
830 | set(EXTRA_EXPORT ${EXTRA_EXPORT} libressl_strnlen) | ||
831 | endif() | 807 | endif() |
832 | endif() | 808 | endif() |
833 | 809 | ||
834 | if(NOT HAVE_STRSEP) | 810 | if(NOT HAVE_STRSEP) |
835 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/strsep.c) | 811 | set(COMPAT_SRC ${COMPAT_SRC} compat/strsep.c) |
836 | set(EXTRA_EXPORT ${EXTRA_EXPORT} libressl_strsep) | ||
837 | endif() | 812 | endif() |
838 | 813 | ||
839 | if(NOT HAVE_STRTONUM) | 814 | if(NOT HAVE_STRTONUM) |
840 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/strtonum.c) | 815 | set(COMPAT_SRC ${COMPAT_SRC} compat/strtonum.c) |
841 | set(EXTRA_EXPORT ${EXTRA_EXPORT} libressl_strtonum) | ||
842 | endif() | 816 | endif() |
843 | 817 | ||
844 | if(NOT HAVE_SYSLOG_R) | 818 | if(NOT HAVE_SYSLOG_R) |
@@ -846,57 +820,49 @@ if(NOT HAVE_SYSLOG_R) | |||
846 | endif() | 820 | endif() |
847 | 821 | ||
848 | if(NOT HAVE_TIMEGM) | 822 | if(NOT HAVE_TIMEGM) |
849 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/timegm.c) | 823 | set(COMPAT_SRC ${COMPAT_SRC} compat/timegm.c) |
850 | set(EXTRA_EXPORT ${EXTRA_EXPORT} timegm) | ||
851 | endif() | 824 | endif() |
852 | 825 | ||
853 | if(NOT HAVE_EXPLICIT_BZERO) | 826 | if(NOT HAVE_EXPLICIT_BZERO) |
854 | if(WIN32) | 827 | if(WIN32) |
855 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/explicit_bzero_win.c) | 828 | set(COMPAT_SRC ${COMPAT_SRC} compat/explicit_bzero_win.c) |
856 | else() | 829 | else() |
857 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/explicit_bzero.c) | 830 | set(COMPAT_SRC ${COMPAT_SRC} compat/explicit_bzero.c) |
858 | set_source_files_properties(compat/explicit_bzero.c PROPERTIES COMPILE_FLAGS -O0) | 831 | set_source_files_properties(compat/explicit_bzero.c PROPERTIES COMPILE_FLAGS -O0) |
859 | endif() | 832 | endif() |
860 | set(EXTRA_EXPORT ${EXTRA_EXPORT} libressl_explicit_bzero) | ||
861 | endif() | 833 | endif() |
862 | 834 | ||
863 | if(NOT HAVE_ARC4RANDOM_BUF) | 835 | if(NOT HAVE_ARC4RANDOM_BUF) |
864 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/arc4random.c) | 836 | set(COMPAT_SRC ${COMPAT_SRC} compat/arc4random.c) |
865 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/arc4random_uniform.c) | 837 | set(COMPAT_SRC ${COMPAT_SRC} compat/arc4random_uniform.c) |
866 | set(EXTRA_EXPORT ${EXTRA_EXPORT} libressl_arc4random) | ||
867 | set(EXTRA_EXPORT ${EXTRA_EXPORT} libressl_arc4random_buf) | ||
868 | set(EXTRA_EXPORT ${EXTRA_EXPORT} libressl_arc4random_uniform) | ||
869 | 838 | ||
870 | if(NOT HAVE_GETENTROPY) | 839 | if(NOT HAVE_GETENTROPY) |
871 | if(WIN32) | 840 | if(WIN32) |
872 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/getentropy_win.c) | 841 | set(COMPAT_SRC ${COMPAT_SRC} compat/getentropy_win.c) |
873 | elseif(CMAKE_SYSTEM_NAME MATCHES "AIX") | 842 | elseif(CMAKE_SYSTEM_NAME MATCHES "AIX") |
874 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/getentropy_aix.c) | 843 | set(COMPAT_SRC ${COMPAT_SRC} compat/getentropy_aix.c) |
875 | elseif(CMAKE_SYSTEM_NAME MATCHES "FreeBSD") | 844 | elseif(CMAKE_SYSTEM_NAME MATCHES "FreeBSD") |
876 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/getentropy_freebsd.c) | 845 | set(COMPAT_SRC ${COMPAT_SRC} compat/getentropy_freebsd.c) |
877 | elseif(CMAKE_SYSTEM_NAME MATCHES "HP-UX") | 846 | elseif(CMAKE_SYSTEM_NAME MATCHES "HP-UX") |
878 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/getentropy_hpux.c) | 847 | set(COMPAT_SRC ${COMPAT_SRC} compat/getentropy_hpux.c) |
879 | elseif(CMAKE_SYSTEM_NAME MATCHES "Linux") | 848 | elseif(CMAKE_SYSTEM_NAME MATCHES "Linux") |
880 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/getentropy_linux.c) | 849 | set(COMPAT_SRC ${COMPAT_SRC} compat/getentropy_linux.c) |
881 | elseif(CMAKE_SYSTEM_NAME MATCHES "NetBSD") | 850 | elseif(CMAKE_SYSTEM_NAME MATCHES "NetBSD") |
882 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/getentropy_netbsd.c) | 851 | set(COMPAT_SRC ${COMPAT_SRC} compat/getentropy_netbsd.c) |
883 | elseif(CMAKE_SYSTEM_NAME MATCHES "Darwin") | 852 | elseif(CMAKE_SYSTEM_NAME MATCHES "Darwin") |
884 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/getentropy_osx.c) | 853 | set(COMPAT_SRC ${COMPAT_SRC} compat/getentropy_osx.c) |
885 | elseif(CMAKE_SYSTEM_NAME MATCHES "SunOS") | 854 | elseif(CMAKE_SYSTEM_NAME MATCHES "SunOS") |
886 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/getentropy_solaris.c) | 855 | set(COMPAT_SRC ${COMPAT_SRC} compat/getentropy_solaris.c) |
887 | endif() | 856 | endif() |
888 | set(EXTRA_EXPORT ${EXTRA_EXPORT} getentropy) | ||
889 | endif() | 857 | endif() |
890 | endif() | 858 | endif() |
891 | 859 | ||
892 | if(NOT HAVE_TIMINGSAFE_BCMP) | 860 | if(NOT HAVE_TIMINGSAFE_BCMP) |
893 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/timingsafe_bcmp.c) | 861 | set(COMPAT_SRC ${COMPAT_SRC} compat/timingsafe_bcmp.c) |
894 | set(EXTRA_EXPORT ${EXTRA_EXPORT} libressl_timingsafe_bcmp) | ||
895 | endif() | 862 | endif() |
896 | 863 | ||
897 | if(NOT HAVE_TIMINGSAFE_MEMCMP) | 864 | if(NOT HAVE_TIMINGSAFE_MEMCMP) |
898 | set(CRYPTO_SRC ${CRYPTO_SRC} compat/timingsafe_memcmp.c) | 865 | set(COMPAT_SRC ${COMPAT_SRC} compat/timingsafe_memcmp.c) |
899 | set(EXTRA_EXPORT ${EXTRA_EXPORT} libressl_timingsafe_memcmp) | ||
900 | endif() | 866 | endif() |
901 | 867 | ||
902 | if(NOT ENABLE_ASM) | 868 | if(NOT ENABLE_ASM) |
@@ -919,15 +885,14 @@ foreach(SYM IN LISTS CRYPTO_UNEXPORT) | |||
919 | string(REPLACE "${SYM}\n" "" SYMS ${SYMS}) | 885 | string(REPLACE "${SYM}\n" "" SYMS ${SYMS}) |
920 | endforeach() | 886 | endforeach() |
921 | file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/crypto_p.sym ${SYMS}) | 887 | file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/crypto_p.sym ${SYMS}) |
922 | # XXX should we still be doing this? | ||
923 | if(EXTRA_EXPORT) | ||
924 | list(SORT EXTRA_EXPORT) | ||
925 | foreach(SYM IN LISTS EXTRA_EXPORT) | ||
926 | file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/crypto_p.sym "${SYM}\n") | ||
927 | endforeach() | ||
928 | endif() | ||
929 | 888 | ||
930 | set(LIBTLS_EXTRA_EXPORT ${EXTRA_EXPORT} PARENT_SCOPE) | 889 | add_library(compat_obj OBJECT ${COMPAT_SRC}) |
890 | target_include_directories(compat_obj | ||
891 | PRIVATE | ||
892 | ../include/compat | ||
893 | PUBLIC | ||
894 | ../include | ||
895 | ${CMAKE_BINARY_DIR}/include) | ||
931 | 896 | ||
932 | add_library(crypto_obj OBJECT ${CRYPTO_SRC}) | 897 | add_library(crypto_obj OBJECT ${CRYPTO_SRC}) |
933 | target_include_directories(crypto_obj | 898 | target_include_directories(crypto_obj |
@@ -977,7 +942,7 @@ elseif(HOST_X86_64) | |||
977 | target_include_directories(crypto_obj PRIVATE bn/arch/amd64) | 942 | target_include_directories(crypto_obj PRIVATE bn/arch/amd64) |
978 | endif() | 943 | endif() |
979 | 944 | ||
980 | add_library(crypto $<TARGET_OBJECTS:crypto_obj> empty.c) | 945 | add_library(crypto $<TARGET_OBJECTS:crypto_obj> $<TARGET_OBJECTS:compat_obj> empty.c) |
981 | 946 | ||
982 | export_symbol(crypto ${CMAKE_CURRENT_BINARY_DIR}/crypto_p.sym) | 947 | export_symbol(crypto ${CMAKE_CURRENT_BINARY_DIR}/crypto_p.sym) |
983 | target_link_libraries(crypto ${PLATFORM_LIBS}) | 948 | target_link_libraries(crypto ${PLATFORM_LIBS}) |