Changes

4,316 bytes added ,  12:24, 17 April 2014
Added page about Libcaldav, TDE and Slackware 14.0
Welcome to Simone Giustetti's wiki pages.


Languages: '''English''' - [http://www.giustetti.net/wiki/index.php?title=TDE_libcaldav Italiano]

----

== LIBCALDAV ==
[[En/trinity_desktop_environment#Base_Packages]]

'''Libcaldav''' is a software library developed to support the '''CalDAV''' protocol as defined in [http://tools.ietf.org/html/rfc4791 '''rfc4791''']. A '''client''' protocol to connect to and manage scheduling data and calendars '''shared through a remote server'''. CalDAV '''supports concurrent access to shared resources''' thus permitting information sharing and collaborative planning of events and tasks. CalDAV adopted the '''iCalendar''' data format shared by many client and server side applications. The libcaldav library aims at full protocol implementation in order for every application to easily add CalDAV supported features.

=== Libcaldav and Slackware ===

'''Slackware does not ship a libcaldav library package''' therefore there is no build script to use as a reference. Moreover the '''Trinity Desktop Environment''' project ditched the official libcaldav version available through [http://sourceforge.net/projects/libcaldav/ sourceforge] in favor of a '''patched one''' only available through the Trinity project [http://git.trinitydesktop.org/cgit/libcaldav/ GIT repository]. Source code for the custom libcaldav version is not released as a tgz archive as a consequence two ways exist to download it:
* Connect to the repository through a web browser and download a compressed archive of the last available version of the ''master'' branch. [http://git.trinitydesktop.org/cgit/libcaldav/snapshot/libcaldav-master.tar.gz libcaldav-master.tar.gz]
* Install GIT on your machine and use the following commands:
:# Move in the directory You wish to download the files to
:# Run command '''git''' ''clone'' http://anonymous@scm.trinitydesktop.org/scm/git/libcaldav
:# Rename the root source code directory: '''mv''' libcaldav libcaldav-master (This is only needed to copy the naming convention of the file downloaded with the previously described method)
:# Build an archive of the source code files: '''tar''' ''-zcf'' libcaldav-master.tar.gz libcaldav-master
Whatever the method, we will use the resulting libcaldav-master.tar.gz file to build a working libcaldav package as described further below.

The official package '''does not use autotools nor [http://www.cmake.org/ cmake] for configuring''', only a shell script: '''autogen.sh''', which can be executed moving to the source root directory then running: '''./autogen.sh''' . Once configured the package can be built running '''make''' followed by '''make''' ''install'' to copy the output binary files in the package directory tree. In short:

'''Specifically set Qt libraries paths''' to be consistent with previously built packages:
# Add temporary paths to handle new libraries during build
export QTDIR=/opt/trinity
export PATH=/opt/trinity/bin:/usr/bin:$PATH
export LIBDIR=/usr/lib${LIBDIRSUFFIX}
export LD_LIBRARY_PATH=/usr/lib${LIBDIRSUFFIX}:/opt/trinity/lib${LIBDIRSUFFIX}
export PKG_CONFIG_PATH=:/usr/lib${LIBDIRSUFFIX}/pkgconfig:/opt/trinity/lib${LIBDIRSUFFIX}/pkgconfig:$PKG_CONFIG_PATH

Run command:
'''sh''' ./autogen.sh
to configure libcaldav for a 32 bit environment.

Then run command '''make''' with no option.

A SlackBuild script including all of the instructions and hacks needed by the build procedure can be downloaded from the following [http://www.giustetti.net/resource/slackbuild/tde/35132/libcaldav.tar.gz link]. The output package can be installed using command '''installpkg''' as usual in Slackware Linux.


For any feedback, questions, errors and such, please e-mail me at ''studiosg [at] giustetti [dot] net''


External Links
----
* [http://www.trinitydesktop.org/wiki/bin/view/Developers/HowToBuild TDE build guide]
* [http://sourceforge.net/projects/libcaldav/ The sourceforge libcaldav related page]
* [http://libcaldav.sourceforge.net/ The libcaldav home page]
* [http://en.wikipedia.org/wiki/CalDAV The Wikipedia CalDAV related page]
* [http://caldav.calconnect.org/ The CalDAV protocol specification]
* [http://www.ietf.org/rfc/rfc4791.txt The rfc4791 document]

----

Languages: '''English''' - [http://www.giustetti.net/wiki/index.php?title=TDE_libcaldav Italiano]