Show
Ignore:
Timestamp:
03/06/08 16:06:59 (10 months ago)
Author:
alonbl
Message:

Complete rewrite of OpenSC build system.

1. Build system now supports MinGW (Windows) compilation using msys and cross compilation.
2. Ability to explicitly disable and enable dependencies of the package.
3. openct, pcsc and nsplugins features are disabled by default.
4. Modified pcsc driver to use pcsc dynamically, no compile time dependency is required.
5. --enable-pcsc-lite configuration option renamed to --enable-pcsc.
6. Install opensc.conf file (as opensc.conf.new if opensc.conf exists).
7. Add--enable-doc configuration option, allow installing documentation into target.
8. Add --disable-man configuration option, allow msys mingw32 users to

build from svn without extra dependencies.

9. Add export files to each library in order to export only required symbols.

Windows native build may use these files instead of scanning objects' symbols.

10. Add opensc-tool --info to display some general information about the build.
11. Create compatibility library to be linked against library instread of recompiling the

same source files in different places.

12. Add different win32 version resource to each class of outputs.
13. Make xsl-stylesheets location selectable.
14. Some win32 fixups.
15. Some warning fixups.
16. Many other autoconf/automake cleanups.

Alon Bar-Lev

svn diff -r 3315:3399 https://www.opensc-project.org/svn/opensc/branches/alonbl/mingw

_M .
D configure.in
_M src
_M src/openssh
M src/openssh/Makefile.am
_M src/tools
M src/tools/rutoken-tool.c
M src/tools/opensc-tool.c
M src/tools/cardos-info.c
M src/tools/pkcs15-crypt.c
M src/tools/pkcs15-init.c
M src/tools/piv-tool.c
M src/tools/netkey-tool.c
M src/tools/eidenv.c
M src/tools/cryptoflex-tool.c
M src/tools/util.c
M src/tools/pkcs11-tool.c
M src/tools/pkcs15-tool.c
M src/tools/util.h
M src/tools/opensc-explorer.c
M src/tools/Makefile.am
_M src/pkcs11
M src/pkcs11/pkcs11-global.c
M src/pkcs11/framework-pkcs15.c
M src/pkcs11/mechanism.c
M src/pkcs11/pkcs11-display.c
M src/pkcs11/pkcs11-object.c
A src/pkcs11/opensc-pkcs11.exports
M src/pkcs11/sc-pkcs11.h
M src/pkcs11/pkcs11-spy.c
M src/pkcs11/openssl.c
M src/pkcs11/Makefile.am
A src/pkcs11/pkcs11-spy.exports
_M src/tests
_M src/tests/regression
M src/tests/regression/Makefile.am
M src/tests/sc-test.c
M src/tests/pintest.c
M src/tests/Makefile.am
_M src/include
_M src/include/opensc
M src/include/opensc/Makefile.am
A src/include/opensc/svnignore
M src/include/Makefile.am
_M src/signer
_M src/signer/npinclude
M src/signer/npinclude/Makefile.am
M src/signer/Makefile.am
A src/signer/signer.exports
_M src/common
A src/common/compat_dummy.c
D src/common/getopt.txt
D src/common/strlcpy.c
D src/common/LICENSE
A src/common/compat_getopt.txt
A src/common/compat_strlcpy.c
A src/common/LICENSE.compat_getopt
A src/common/compat_getopt.c
D src/common/strlcpy.h
D src/common/ChangeLog
D src/common/getpass.c
D src/common/my_getopt.c
A src/common/compat_strlcpy.h
A src/common/compat_getpass.c
A src/common/compat_getopt.h
A src/common/ChangeLog.compat_getopt
D src/common/README.strlcpy
D src/common/my_getopt.h
A src/common/compat_getpass.h
A src/common/README.compat_strlcpy
D src/common/strlcpy.3
A src/common/README.compat_getopt
D src/common/getopt.3
D src/common/README.my_getopt
A src/common/compat_strlcpy.3
A src/common/compat_getopt.3
M src/common/Makefile.am
M src/Makefile.am
_M src/pkcs15init
M src/pkcs15init/pkcs15-oberthur.c
M src/pkcs15init/profile.c
M src/pkcs15init/pkcs15-lib.c
M src/pkcs15init/pkcs15-rutoken.c
A src/pkcs15init/pkcs15init.exports
M src/pkcs15init/pkcs15-gpk.c
M src/pkcs15init/Makefile.am
_M src/scconf
M src/scconf/Makefile.am
M src/scconf/parse.c
A src/scconf/scconf.exports
_M src/libopensc
M src/libopensc/card-rutoken.c
M src/libopensc/compression.c
M src/libopensc/sc.c
M src/libopensc/card-piv.c
M src/libopensc/pkcs15-openpgp.c
M src/libopensc/pkcs15-postecert.c
M src/libopensc/pkcs15-tcos.c
M src/libopensc/opensc-config.in
M src/libopensc/reader-pcsc.c
A src/libopensc/internal-winscard.h
M src/libopensc/ctx.c
A src/libopensc/libopensc.exports
M src/libopensc/pkcs15-piv.c
M src/libopensc/pkcs15-infocamere.c
M src/libopensc/internal.h
M src/libopensc/pkcs15-actalis.c
M src/libopensc/pkcs15-starcert.c
M src/libopensc/card-oberthur.c
M src/libopensc/pkcs15-atrust-acos.c
M src/libopensc/p15card-helper.c
D src/libopensc/part10.h
M src/libopensc/ui.c
M src/libopensc/card-gpk.c
M src/libopensc/pkcs15-wrap.c
M src/libopensc/pkcs15-gemsafeGPK.c
M src/libopensc/log.c
M src/libopensc/pkcs15-esteid.c
M src/libopensc/pkcs15-prkey-rutoken.c
M src/libopensc/log.h
M src/libopensc/Makefile.am
M src/libopensc/reader-openct.c
_M aclocal
M aclocal/Makefile.am
_M win32
M win32/Makefile.am
A win32/versioninfo.rc.in
A win32/ltrc.inc
A configure.ac
_M doc
_M doc/tools
M doc/tools/pkcs15-profile.xml
D doc/changelog.sh
D doc/export-wiki.xsl
_M doc/api
_M doc/api/file
M doc/api/man.xsl
_M doc/api/asn1
_M doc/api/apps
_M doc/api/init
_M doc/api/types
_M doc/api/card
M doc/api/html.xsl
_M doc/api/misc
_M doc/api/util
M doc/Makefile.am
D doc/export-wiki.sh
AM doc/nonpersistent
A doc/nonpersistent/export-wiki.xsl
A doc/nonpersistent/Makefile.am
A doc/nonpersistent/export-wiki.sh
A doc/nonpersistent/svn2cl.xsl
D doc/generate-man.sh
D doc/svn2cl.xsl
M Makefile.am
A svnignore
_M etc
M etc/opensc.conf.in
M etc/Makefile.am
D man
_M solaris
M solaris/Makefile

Location:
trunk
Files:
4 modified

Legend:

Unmodified
Added
Removed
  • trunk

    • Property svn:ignore
      •  

        old new  
         1Makefile 
         2Makefile.in 
         3core 
         4archive 
         5acinclude.m4 
         6aclocal.m4 
         7autom4te.cache 
         8compile 
         9confdefs.h 
         10config.* 
         11configure 
         12conftest 
         13conftest.c 
         14depcomp 
         15install-sh 
         16libtool 
         17libtool.m4 
         18ltmain.sh 
         19missing 
         20mkinstalldirs 
         21so_locations 
         22stamp-h* 
         23 
        124.deps 
        225.libs 
         
        1942*.rej 
        2043*.u 
         44*.rc 
         45*.pc 
        2146*~ 
        22 Makefile 
        23 Makefile.in 
        24 core 
        25 gmon.out 
        26 archive 
        27 acinclude.m4 
        28 aclocal.m4 
        29 autom4te.cache 
        30 compile 
        31 confdefs.h 
        32 config.cache 
        33 config.guess 
        34 config.h 
        35 config.h.in 
        36 config.log 
        37 config.status 
        38 config.sub 
        39 configure 
        40 conftest 
        41 conftest.c 
        42 depcomp 
        43 install-sh 
        44 libtool 
        45 libtool.m4 
        46 ltmain.sh 
        47 missing 
        48 mkinstalldirs 
        49 so_locations 
        50 stamp-h* 
         47*.gz 
         48*.bz2 
         49*.[0-9] 
         50*.html 
         51*.gif 
         52*.css 
         53*.out 
         54 
         55ChangeLog 
         56opensc.conf 
         57xsl-stylesheets 
         58opensc-config 
         59test-conf 
         60pkcs15-tool 
         61pkcs15-crypt 
         62pkcs15-init 
         63piv-tool 
         64eidenv 
         65opensc-explorer 
         66opensc-tool 
         67rutoken-tool 
         68cardos-info 
         69cryptoflex-tool 
         70netkey-tool 
         71pkcs11-tool 
         72pintest 
         73p15dump 
         74prngtest 
         75base64 
         76lottery 
         77 
  • trunk/src

    • Property svn:ignore
      •  

        old new  
         1Makefile 
         2Makefile.in 
         3core 
         4archive 
         5acinclude.m4 
         6aclocal.m4 
         7autom4te.cache 
         8compile 
         9confdefs.h 
         10config.* 
         11configure 
         12conftest 
         13conftest.c 
         14depcomp 
         15install-sh 
         16libtool 
         17libtool.m4 
         18ltmain.sh 
         19missing 
         20mkinstalldirs 
         21so_locations 
         22stamp-h* 
         23 
        124.deps 
        225.libs 
         
        1942*.rej 
        2043*.u 
         44*.rc 
         45*.pc 
        2146*~ 
        22 Makefile 
        23 Makefile.in 
        24 core 
        25 gmon.out 
         47*.gz 
         48*.bz2 
         49*.[0-9] 
         50*.html 
         51*.gif 
         52*.css 
         53*.out 
         54 
         55ChangeLog 
         56opensc.conf 
         57xsl-stylesheets 
         58opensc-config 
         59test-conf 
         60pkcs15-tool 
         61pkcs15-crypt 
         62pkcs15-init 
         63piv-tool 
         64eidenv 
         65opensc-explorer 
         66opensc-tool 
         67rutoken-tool 
         68cardos-info 
         69cryptoflex-tool 
         70netkey-tool 
         71pkcs11-tool 
         72pintest 
         73p15dump 
         74prngtest 
         75base64 
         76lottery 
         77 
  • trunk/src/tools

    • Property svn:ignore
      •  

        old new  
         1Makefile 
         2Makefile.in 
         3core 
         4archive 
         5acinclude.m4 
         6aclocal.m4 
         7autom4te.cache 
         8compile 
         9confdefs.h 
         10config.* 
         11configure 
         12conftest 
         13conftest.c 
         14depcomp 
         15install-sh 
         16libtool 
         17libtool.m4 
         18ltmain.sh 
         19missing 
         20mkinstalldirs 
         21so_locations 
         22stamp-h* 
         23 
        124.deps 
        225.libs 
         
        1942*.rej 
        2043*.u 
         44*.rc 
         45*.pc 
        2146*~ 
        22 Makefile 
        23 Makefile.in 
        24 core 
        25 gmon.out 
        26 cryptoflex-tool 
        27 cardos-info 
         47*.gz 
         48*.bz2 
         49*.[0-9] 
         50*.html 
         51*.gif 
         52*.css 
         53*.out 
         54 
         55ChangeLog 
         56opensc.conf 
         57xsl-stylesheets 
         58opensc-config 
         59test-conf 
         60pkcs15-tool 
         61pkcs15-crypt 
         62pkcs15-init 
         63piv-tool 
        2864eidenv 
        29 piv-tool 
        30 netkey-tool 
        3165opensc-explorer 
        3266opensc-tool 
         67rutoken-tool 
         68cardos-info 
         69cryptoflex-tool 
         70netkey-tool 
        3371pkcs11-tool 
        34 pkcs15-crypt 
        35 pkcs15-init 
        36 pkcs15-tool 
         72pintest 
         73p15dump 
         74prngtest 
         75base64 
         76lottery 
         77 
  • trunk/src/tools/pkcs15-tool.c

    r3403 r3405  
    2222#include <config.h> 
    2323#endif 
    24 #ifdef HAVE_OPENSSL 
    25 #ifdef _WIN32 
     24#ifdef ENABLE_OPENSSL 
     25#if defined(HAVE_INTTYPES_H) 
     26#include <inttypes.h> 
     27#elif defined(HAVE_STDINT_H) 
     28#include <stdint.h> 
     29#elif defined(_MSC_VER) 
    2630typedef unsigned __int32 uint32_t; 
    2731#else 
    28 #ifdef HAVE_INTTYPES_H 
    29 #include <inttypes.h> 
    30 #else 
    3132#warning no uint32_t type available, please contact opensc-devel@opensc-project.org 
    32 #endif 
    3333#endif 
    3434#include <openssl/bn.h> 
     
    3737#include <limits.h> 
    3838#include <opensc/pkcs15.h> 
     39#include <compat_getpass.h> 
    3940#include "util.h" 
    4041 
     
    6263        OPT_LIST_PUB, 
    6364        OPT_READ_PUB, 
    64 #if defined(HAVE_OPENSSL) && (defined(_WIN32) || defined(HAVE_INTTYPES_H)) 
     65#if defined(ENABLE_OPENSSL) && (defined(_WIN32) || defined(HAVE_INTTYPES_H)) 
    6566        OPT_READ_SSH, 
    6667#endif 
     
    8889        { "list-public-keys",   no_argument, NULL,              OPT_LIST_PUB }, 
    8990        { "read-public-key",    required_argument, NULL,        OPT_READ_PUB }, 
    90 #if defined(HAVE_OPENSSL) && (defined(_WIN32) || defined(HAVE_INTTYPES_H)) 
     91#if defined(ENABLE_OPENSSL) && (defined(_WIN32) || defined(HAVE_INTTYPES_H)) 
    9192        { "read-ssh-key",       required_argument, NULL,        OPT_READ_SSH }, 
    9293#endif 
     
    572573} 
    573574 
    574 #if defined(HAVE_OPENSSL) && (defined(_WIN32) || defined(HAVE_INTTYPES_H)) 
     575#if defined(ENABLE_OPENSSL) && (defined(_WIN32) || defined(HAVE_INTTYPES_H)) 
    575576static int read_ssh_key(void) 
    576577{ 
     
    10851086        if (verbose) { 
    10861087                printf("Reading file "); 
    1087                 hex_dump(stdout, path->value, path->len, ""); 
     1088                util_hex_dump(stdout, path->value, path->len, ""); 
    10881089                printf("...\n"); 
    10891090        } 
     
    11891190        int do_list_pubkeys = 0; 
    11901191        int do_read_pubkey = 0; 
    1191 #if defined(HAVE_OPENSSL) && (defined(_WIN32) || defined(HAVE_INTTYPES_H)) 
     1192#if defined(ENABLE_OPENSSL) && (defined(_WIN32) || defined(HAVE_INTTYPES_H)) 
    11921193        int do_read_sshkey = 0; 
    11931194#endif 
     
    12031204                        break; 
    12041205                if (c == '?') 
    1205                         print_usage_and_die(app_name, options, option_help); 
     1206                        util_print_usage_and_die(app_name, options, option_help); 
    12061207                switch (c) { 
    12071208                case 'r': 
     
    12521253                        action_count++; 
    12531254                        break; 
    1254 #if defined(HAVE_OPENSSL) && (defined(_WIN32) || defined(HAVE_INTTYPES_H)) 
     1255#if defined(ENABLE_OPENSSL) && (defined(_WIN32) || defined(HAVE_INTTYPES_H)) 
    12551256                case OPT_READ_SSH: 
    12561257                        opt_pubkey = optarg; 
     
    12931294        } 
    12941295        if (action_count == 0) 
    1295                 print_usage_and_die(app_name, options, option_help); 
     1296                util_print_usage_and_die(app_name, options, option_help); 
    12961297 
    12971298        memset(&ctx_param, 0, sizeof(ctx_param)); 
     
    13071308                ctx->debug = verbose-1; 
    13081309 
    1309         err = connect_card(ctx, &card, opt_reader, 0, opt_wait, verbose); 
     1310        err = util_connect_card(ctx, &card, opt_reader, 0, opt_wait, verbose); 
    13101311        if (err) 
    13111312                goto end; 
     
    13631364                action_count--; 
    13641365        } 
    1365 #if defined(HAVE_OPENSSL) && (defined(_WIN32) || defined(HAVE_INTTYPES_H)) 
     1366#if defined(ENABLE_OPENSSL) && (defined(_WIN32) || defined(HAVE_INTTYPES_H)) 
    13661367        if (do_read_sshkey) { 
    13671368                if ((err = read_ssh_key()))