Subversion Repository
Table of Contents
OpenSC is using subversion as version control system (Read the " Version Control with Subversion" book). SVN trunk versions of several repositories also have "official" mirrors on github.com, that are semi-regularly (at least weekly) synced. If you use git, use github mirrors to fork your trees.
Get the latest source code:
svn co http://www.opensc-project.org/svn/opensc/trunk opensc
or from github.com:
git clone git://github.com/martinpaljak/OpenSC.git
Sub-project repositories
OpenSC contains several sub-project, each with their own subversion repository.
- engine_pkcs11 (browse online, view revision history, github.com)
svn co http://www.opensc-project.org/svn/engine_pkcs11
- libp11 (browse online, view revision history, github.com)
svn co http://www.opensc-project.org/svn/libp11
- pkcs11-helper (browse online, view revision history)
svn co http://www.opensc-project.org/svn/pkcs11-helper
- sca (MacInstaller) (browse online, view revision history)
svn co http://www.opensc-project.org/svn/sca
- opensc-java (Java) (browse online, view revision history)
svn co http://www.opensc-project.org/svn/opensc-java
- pam_pkcs11 (browse online, view revision history)
svn co http://www.opensc-project.org/svn/pam_pkcs11
In our subversion repository we have
- trunk/ contains the current development code
- branches/opensc-0.10 contains the 0.10 maintenance branch
- releases/opensc-0.10.0 contains the opensc 0.10.0 release code.
You can checkout these with the subversion commands
svn co http://www.opensc-project.org/svn/opensc/trunk/ svn co http://www.opensc-project.org/svn/opensc/branches/opensc-0.10/ svn co http://www.opensc-project.org/svn/opensc/releases/opensc-0.10.0/
Note that the subversion repository only contains development files. Before compiling the code in a working copy you need to run the "./bootstrap" script to create required files like "configure" and "Makefile.in". You need to have autoconf, automake and libtool installed on your system to do that.
Some people have reported problems with some HTTP proxies. If you find some problem, you can maybe solve it by using https instead. Try to checkout the repository like this:
svn co --non-interactive https://www.opensc-project.org/svn/opensc/trunk/ svn co --non-interactive https://www.opensc-project.org/svn/opensc/branches/opensc-0.10/ svn co --non-interactive https://www.opensc-project.org/svn/opensc/releases/opensc-0.10.0/
Write access for developers
Developers with write access (see DevelopmentPolicy for more information about write access) usualy access the repository via HTTPS with authentication using SSL client certificates. You might want to put something like this into your ~/.subversion/servers file to point subversion to your client certificate:
[groups] opensc = www.opensc-project.org [opensc] ssl-client-cert-file=/home/aj/.subversion/aj.p12
You can access the repositories:
svn co https://www.opensc-project.org/svn/opensc/trunk/ svn co https://www.opensc-project.org/svn/opensc/branches/opensc-0.10/ svn co https://www.opensc-project.org/svn/opensc/releases/opensc-0.10.0/
Creating distribution packages
To package OpenSC as tar.gz file you only need to type "make dist". However building documentation etc. has been moved to scripts only called when you do this, so you might need to install these tools to create a fully functional release:
wget, xsltproc, docbook-xsl, w3c-dtd-xhtml, doxygen
