## -*- mode: perl; -*-
## EFCA.COM Standard openssl configuration targets.
## for Solaris 10/11 x86 and x64 targets (using either SunStudio cc or GNU gcc)
#
## If you edit this file, run this command before committing
##	make -f Makefile.in TABLE
## This file is interpolated by the Configure script.

%targets = (

    "efca-x86-gcc" => {
        inherit_from     => [ "solaris-common", asm("x86_elf_asm") ],
        cc               => "gcc",
        cflags           => add_before("-std=gnu90 -march=pentium -Wall -DL_ENDIAN"),
        debug_cflags     => "-O0 -g",
        release_cflags   => "-O3 -fomit-frame-pointer",
        thread_cflag     => "-pthread",
        bn_ops           => "BN_LLONG",
        shared_cflag     => "-fPIC",
        shared_ldflag    => "-shared -static-libgcc -Wl,-R\$(INSTALL_PREFIX)\$(INSTALLTOP)/\$(LIBDIR)",
    },

    "efca-x64-gcc" => {
        inherit_from     => [ "solaris-common", asm("x86_64_asm") ],
        cc               => "gcc",
        cflags           => add_before("-std=gnu90 -m64 -Wall -DL_ENDIAN"),
        debug_cflags     => "-O0 -g",
        release_cflags   => "-O3",
        thread_cflag     => "-pthread",
        bn_ops           => "SIXTY_FOUR_BIT_LONG",
        perlasm_scheme   => "elf",
        shared_cflag     => "-fPIC",
        shared_ldflag    => "-shared -static-libgcc -Wl,-R\$(INSTALL_PREFIX)\$(INSTALLTOP)/\$(LIBDIR)",
        multilib         => "/64",
    },

    "efca-x86-cc" => {
        inherit_from     => [ "solaris-common" ],
        cc               => "cc",
        cflags           => add_before("-xarch=generic -xstrconst -Xa -DL_ENDIAN"),
        debug_cflags     => "-g",
        release_cflags   => "-xO5 -xregs=frameptr -xdepend -xbuiltin",
        thread_cflag     => "-D_REENTRANT",
        lflags           => add("-mt"),
        ex_libs          => add("-lpthread"),,
        bn_ops           => "BN_LLONG RC4_CHAR",
        shared_cflag     => "-KPIC",
        shared_ldflag    => "-G -dy -z text -R\$(INSTALL_PREFIX)\$(INSTALLTOP)/\$(LIBDIR)",
    },

    "efca-x64-cc" => {
        inherit_from     => [ "solaris-common", asm("x86_64_asm") ],
        cc               => "cc",
        cflags           => add_before("-m64 -xarch=generic -xstrconst -Xa -DL_ENDIAN"),
        debug_cflags     => "-g",
        release_cflags   => "-xO5 -xdepend -xbuiltin",
        thread_cflag     => "-D_REENTRANT",
        lflags           => add("-mt"),
        ex_libs          => add("-lpthread"),
        bn_ops           => "SIXTY_FOUR_BIT_LONG",
        perlasm_scheme   => "elf",
        shared_cflag     => "-KPIC",
        shared_ldflag    => "-G -dy -z text -R\$(INSTALL_PREFIX)\$(INSTALLTOP)/\$(LIBDIR)",
        multilib         => "/64",
    },

);
