This changes the buildlink3.mk files to use an include guard for the
recursive include. The use of BUILDLINK_DEPTH, BUILDLINK_DEPENDS,
BUILDLINK_PACKAGES and BUILDLINK_ORDER is handled by a single new
variable BUILDLINK_TREE. Each buildlink3.mk file adds a pair of
enter/exit marker, which can be used to reconstruct the tree and
to determine first level includes. Avoiding := for large variables
(BUILDLINK_ORDER) speeds up parse time as += has linear complexity.
The include guard reduces system time by avoiding reading files over and
over again. For complex packages this reduces both %user and %sys time to
half of the former time.
Cervisia
* Fix invalid date warnings when browsing CVS.
Umbrello
* Code generator for D language.
* Fix import of Rose MDL files containing ISO-8859 Latin1 characters.
* Preprocessor keywords ignored which causes endless loop in code import.
* Cannot move text and label correctly after enabling snap to grid.
* Unstable saves and loads, class names become dirty.
* Crash on deleting class in list view.
* Class attribute documentation not generated for python.
* Python code generator does not wrap lines properly.
* Attribute documentation not generated for 'Export to XHTML'.
* Crash when moving a class in a Java UML diagram.
* Umbrello gratuitously appends ".xmi" to the saved file name.
* Arrowheads are not shown.
* Crash when creating a class that refers to more than one other
classes/datatypes.
* Wrong Pascal code generation.
* Crash when linking to undefined xmi.id.
* End Activity Symbol gets invalid when line thickness is increased.
* The size of a fork/join is not restored.
* Crash when changing the association type to containment.
* Moving component results in absurd shape of a self-association.
* Crash when changing the attribute name.
Cervisia
* Improve layouting of the CVS log dialog.
KBabel
* Fix random crashes on Catalogmanager.
KCachegrind
* Fix parsing of dot output on some cases.
Umbrello
* C# Code Generation and export.
* Java interface inheritance, abstract classes and generics in code
generation.
* Operations of the Interface are implemented in the class automatically.
* Java 5 generics support.
* Code generation ignores unidirectional association.
* %date% and %time% not being parsed.
* Relationships for entities do not live outside of the diagram.
* Multiplicity labels often are placed incorrectly.
* Association role labels are duplicated.
* Crash on adding operation to class with Advanced Code Generators enabled.
* Javascript wrong Code Generation.
* Javascript/ActionScript Code Generation creates bad format methods.
* Sequence diagram object size incorrect after toggling "Draw as Actor".
* Support duplicating sequence diagrams.
* Incorrect Association Properties text.
* Buttons are not displayed.
* Impossible to reuse same use case in a use case diagram.
* Crash on creating various types of associations.
* Fix displacement of sequence line on initial drag/drop of a class from
the list view to a sequence diagram.
* Support copy/paste of attribute or operation in the list view within the
same class.
* Associations not updated during move of class on diagram.
* Fix unclickable diagrams.
* ERD not saved correctly, rendered unusable.
* Improve loading of XMI files from older versions
* Package contents always shown empty in package properties dialog.
* Subsystem or component may realize interface in component diagram.
* Crash when deleting the link between a package and a class.
* Ada95 Code Generation Errors for Aggregation.
* Unable to delete multiplicity information or label from an association.
* C++ code generator does not correctly define namespaces.
* Ada code generator generates "withs" in both directions for certain
associations.
* Ada code generator always generates methods abstract even if abstract
box not checked.
* Missing "with" on Ada code generation for aggregation.
* Operation Properties "Type" combo box too small.
* Allowing to duplicate diagrams.
* Crash on changing multiplicity in an association in ERD.
* Class diagram in folder not loaded correctly from xmi.
* Sequence diagram crashes on inserting message.
* No synchronization of comments when round-tripping.
* Crash on loading xmi with actor as object of sequence diagram.
* ActionScript/JavaScript association code generation error.
* XMI file contains massive duplications of <UML:Stereotype>.
* Segmentation fault on loading corrupted file.
* Crash when moving all elements in a sequence diagram.
* Fix crash while adding class via class wizard.
* Various dialog layout fixes. New Top/Bottom arrowbutton in Activity
subdialog of state properties dialog.
Kbabel
* Subversion 1.4 support for catalog manager.
* Fix bookmarking.
* Fixed loading of project files with very long lines.
* Avoid endless loop if focus is taken away before "find next" operation.
* Fix broken replacement of marked text with e.g. ctrl-m.
* Work with media:/.
* Use the same project for all Find/Replace in Files operations as
catalogmanager.
* Fix problems when no default project is found.
Umbrello
* Stereotype selection list for parameter properties dialog.
* Association line nodes don't drag along with multiply-selected
classes.
* Accessor methods are private instead of public.
* XMI file contains deleted associations.
* Crash when opening a document.
* Shift+Left and Shift+Right causes SIGSEGV.
* Umbrello saves too many copies in XMI.
* XML scheme: mixup of attribute names: *color and *colour.
* Crashes on closing/opening files created with previous umbrello
versions.
* Faulty behavior when a class inside of a package is modified.
* Artifacts of a component diagram are erroneously placed in
Deployment folder.
* Fix incorrect export to SQL.
* Saving trashes model, classes lost.
* Fix segfault in UMLClassifier::checkOperationSignature().
* Fix segfault on XMI close when a class uses a template.
* Fix hang/crash in Tcl code generation.
* Fix saving/loading of association widgets for collaboration diagrams.
* Fix crash in ToolBarStateArrow destructor on document close.
* Note widget is now always drawn on top of all widgets.
* Fix display icon for enum literals in list view.
* Optimized printer margins.
* Improved code import for Ada and Pascal.
Changes:
Umbrello
* Documentation generator for DocBook and XHTML.
* "Role A Properties" should give class name.
* External folders - improved implementation.
* "Open recent" list doesn't reorder when a file is opened.
* Properties menu: move to top/bottom buttons.
* Java import - importing interfaces - absent visibility treated as
package instead of public.
* Python code generation is not independent of diagram view.
* Java import - method parameter types not resolved correctly.
* Java import: unable to import AzareusCore.
* Java import: error on multidimensional arrays.
* Java import - array types not resolved correctly.
* Java import - "final" and comments in method declaration not parsed
correctly.
* All native importers: Spaces in strings cause next member var to be
ignored.
* Java import - static member vars ignored in interfaces.
* Strange behavior with datatypes in French.
* Header file names are lowercase in .cpp file but mixed case on disk.
* PHP5 code generator adds stub-methods for all interfaces a class
implements.
* Fix for generation of include statements in PHP5 generator.
* Fix loading of associations in collaboration diagram.
* Small fix for printing in landscape mode.
* Various fixes to mouse behaviour, e.g. multiple selection using shift
button not working, mouse tracking disabled when creating associations
and messages, inconsistent behaviour in some tools.
* Fix for message widget selection behaviour.
* Fix for class association not updating the association position when
being moved.
Cervisia
* Do not show duplicate branch tags when pressing 'Fetch list'
multiple times.
Umbrello
* Fixes to some issues changing interface into class and vice versa.
* Add Free Pascal code import and generator.
* Enable selection of multiple classes in Select Classes dialog.
* Fix crash when importing classes from a java file.
* Fix crash after single click on the "UML Model" tree window.
* Cannot insert transition/association TO fork/join node in activity
diagram.
* Importing java files that reference their own class name crashes.
* Importing java class (enum pattern) cause umbrello to hang.
* Importing java subinterface before superinterface results in
superinterface not being treated as an interface.
* Java import: method and class visibility ignored.
* Java import - static not handled correctly.
* Java import - package visibility incorrectly represented.
* Java import - random import order can result in interface being
teated as class.
* Java import - associations not setup correctly, duplicate classes
created.
and add a new helper target and script, "show-buildlink3", that outputs
a listing of the buildlink3.mk files included as well as the depth at
which they are included.
For example, "make show-buildlink3" in fonts/Xft2 displays:
zlib
fontconfig
iconv
zlib
freetype2
expat
freetype2
Xrender
renderproto
Changes:
* Umbrello
o Export all views
o Static variables in java code are not marked static
o New alignment type "distribute horizontally/vertically"
o Save autosave file to a more obvious place
o Usability and responsiveness improvements to code import
o Auto-complete in parameter properties dialog in class diagram
o Don't crash on application exit
o Memory problem when importing classes from C++ sources
o Nestable components and subsystems in Component diagram
o Switch back to arrow tool after association creation
o Fix crash loading xmi file
o User interaction with UMLWidget improvements
o Comments are cut short when generating PHP code
o Freeze on C++ class import
o Fix crash on importing Java 1.5 classes containing annotations
* KCacheGrind
o "Fix slow handling (loading, cycle detection, drawing the call
graph) of profiles where functions have number of callers/callees
in the thousands. These unusual profiles are typically produced
by running callgrind on Valgrind itself (so called Valgrind
self-hosting)."
RECOMMENDED is removed. It becomes ABI_DEPENDS.
BUILDLINK_RECOMMENDED.foo becomes BUILDLINK_ABI_DEPENDS.foo.
BUILDLINK_DEPENDS.foo becomes BUILDLINK_API_DEPENDS.foo.
BUILDLINK_DEPENDS does not change.
IGNORE_RECOMMENDED (which defaulted to "no") becomes USE_ABI_DEPENDS
which defaults to "yes".
Added to obsolete.mk checking for IGNORE_RECOMMENDED.
I did not manually go through and fix any aesthetic tab/spacing issues.
I have tested the above patch on DragonFly building and packaging
subversion and pkglint and their many dependencies.
I have also tested USE_ABI_DEPENDS=no on my NetBSD workstation (where I
have used IGNORE_RECOMMENDED for a long time). I have been an active user
of IGNORE_RECOMMENDED since it was available.
As suggested, I removed the documentation sentences suggesting bumping for
"security" issues.
As discussed on tech-pkg.
I will commit to revbump, pkglint, pkg_install, createbuildlink separately.
Note that if you use wip, it will fail! I will commit to pkgsrc-wip
later (within day).
* KBabel
o Improve loading of Gettext PO files, especially in case of
recoverable or unrecoverable errors
o Settings of the SVN/CVS dialogs are now project-releated (and
not global anymore).
o Improve sending PO file(s) as email.
* Umbrello
o Use horizontal and vertical lines when drawing association
o Import Rose model files (no diagrams yet,
o Automatically fill useful info into the Perl writer heading
template
o Documentation for association roles not saved
o Default data types not added for old Java generator
o Problem reordering methods in classes/interfaces
o Problem with font size computation/word wrap in note widgets
o Custom operations in sequence diagrams become class operations
o Fork/join symbol appears as a black box
o Multiplicity labels positioned incorrectly when moving entities
o Types of entity's attributes are displayed instead of their
names
o Unable to delete entity from entity list in "UML Model" frame
o Interface names not italicized in diagram view
o Cannot Resize Sequence Diagram Synchronous Messages
o Sequence diagram: constructor message only works at 100
percent zoom
o Documentation for associations is not retained
o Crash when importing Python files
o "void" is imported as a class
o Crash when creating a datatype with the same name as a class
o Crash when a non existing data type is used for an argument of
a new method
o Drag'n'drop doesn't put class under mouse cursor when zoom is
not 1:1
o Crash when refusing to rename a class on importing typedef
o Java import fails at abstract methods or interfaces
without underscores (REPLACE.*.old, REPLACE.*.new, and REPLACE_FILES.*).
Also convert REPLACE.*.new= ${SH:Q} back to ${SH}, as it should not be quoted
here, if at all.
Ok with rillig.
Changes:
* Cervisia
o Do not use absolute pathnames when committing the top level folder
of a working copy
* KBabel
o avoid user-visible strings that need to be translated in two ways
o KBabel editor: Fix and improve source references
o KBabel editor: add a new variable @POFILEDIR@ for source references.
This is for allowing search paths starting at the directory of the
PO file, like what is needed for GNU projects: starting at the
parent directory
o KBabel editor: allow backslashes in source references in the PO file
o KBabelDict: clicking the help button of KBabelDict calls the
corresponding section in the KBabel documentation
o Improved KBabel documentation
* Umbrello
o Code import for Java and Python
o fix loading of associationwidget with non-default color
o fix moving of initial and end activity
o fix operation parameter and return types including template
expressions
o Support C++ const methods (aka queries)
o Change associations, aggregations, etc. on-the-fly
o Collaboration Diagram: labels are reset to default position after
moving them
o Imported C++ classes not saved correctly in the XMI file
o In ER models adding associations will add blank space in the entity
attributes
o ER diagrams need to underline the attribute name of primary keys
o Cannot anchor notes to activity elements in Activity Diagram
Many new features and refinements.
Notable changes include:
* Konqueror is the second web browser to pass the Acid2 CSS test,
ahead of Firefox and Internet Explorer
* Konqueror can also now free web pages from adverts with its
ad-block feature
* SuperKaramba is included in KDE, providing well-integrated and
easy-to-install widgets for the user's desktop
* Kopete has support for MSN and Yahoo! webcams
* The edutainment module has three new applications (KGeography,
Kanagram and blinKen), and has seen huge improvements in Kalzium
Changes:
* umbrello: Crash when deleting an attribute that is represented as an
association
* umbrello: Inline functions are generated in cpp file
* umbrello: Crash when closing a tab
* umbrello: Initial value of a new paramenter of a method cannot be set
the first time
* umbrello: Line Vertex hidden in class diagrams
* umbrello: Relationships between interfaces and classes change over file
reload
* umbrello: Associations turn into generalisation over file reopen
* umbrello: Code generator "could not find active language"
* umbrello: Cannot drag members from one classifier to another
* umbrello: Generating Javascript code from a class diagram hangs
around at either build-time or at run-time is:
USE_TOOLS+= perl # build-time
USE_TOOLS+= perl:run # run-time
Also remove some places where perl5/buildlink3.mk was being included
by a package Makefile, but all that the package wanted was the Perl
executable.