Difference between revisions of "Extensions packing"

From Apache OpenOffice Wiki
Jump to: navigation, search
(New page: {{Extensions}} === Packing Extensions in OOo Environment === Packing of extensions normally consists of creating a tree containing a stucture holding all the desired files in the and pac...)
 
m
Line 7: Line 7:
 
== The Sample ==
 
== The Sample ==
  
The module "solenv" contains a sample makefile which show how to make use of the new features ([http://tools.openoffice.org/source/browse/tools/solenv/inc/templates/extension_tmpl.mk?view=markup extension_tmpl.mk]). NOTE: not all of this is required for every extension. It's just a commented example which has to be stripped and modified according to your needs.
+
The module "solenv" contains a sample makefile which shows how to make use of the new features ([http://tools.openoffice.org/source/browse/tools/solenv/inc/templates/extension_tmpl.mk?view=markup extension_tmpl.mk]). NOTE: not all of this is required for every extension. It's just a commented example which has to be stripped and modified according to your needs.
  
 
== Behind the Scene ==
 
== Behind the Scene ==

Revision as of 12:58, 9 June 2008

OOo Extensions project

Please view the wiki usage guidelines
before contributing.

Categories:

Pages:

Extensions on the main site

Extensions in other languages:
ES - FR - IT - JA - NL - OC -


Packing Extensions in OOo Environment

Packing of extensions normally consists of creating a tree containing a stucture holding all the desired files in the and packing them into a .oxt via the zip command. Since the reqirements of this structure and the packing itself is quite similar for most extensions, the OOo build environment now (DEV300_m18) has a couple of helping targets to ease that process.

The Sample

The module "solenv" contains a sample makefile which shows how to make use of the new features (extension_tmpl.mk). NOTE: not all of this is required for every extension. It's just a commented example which has to be stripped and modified according to your needs.

Behind the Scene

Some of the centralized targets do some hidden things that previously had to be specified for each and every extension. currently this is

  • description.xml
    • inserting the according tags for license files: the perl script licinserter.pl in solenv/bin uses the existing tag
           <license-text xlink:href="licensefile" lang="isocode" license-id="lic-isocode"/>
to insert the multiple license tags containing the required lanaguage and filename
  • string replacements to create platform dependent tags
  • UPDATED_SUPPORTED_PLATFORM -> $(PLATFORMID) (settings.mk) -> $(RTL_OS:l)_$(RTL_ARCH:l) (rtlbootstrap.mk)
  • UPDATED_IDENTIFIER -> com.sun.star.$(EXTENSIONNAME)-$(PLATFORMID) (extensions_post.mk)
  • manifest.xml
    • string replacements for binary extension
      • SHARED_EXTENSION -> $(DLLPOST) (see according platform .mk)
      • EXEC_EXTENSION -> $(EXECPOST) (see according platform .mk)
    • there is also a quite beta scripting to automate the .xcu list in manifest.xml
  • if COMPONENT_LIBRARIES is defined
    • copy the compiler runtime libraries on windows into the tree to pack
Personal tools