On 22/04/2013 4:28 PM, James Teh wrote:
There is a major problem with the merged IDL. It does not include the
IAccessibleTable.idl file.
This is now fixed, but unfortunately, there's more bad news. Now, the
IDL includes Accessible2.idl before AccessibleRelation.idl, which breaks
because IAccessible2 depends on IAccessibleRelation. It looks like
buildapi.sh was changed to list all of the .idl files in alphabetical
order. I suspect there will be other similar problems once
AccessibleRelation is moved. I think it's best to return to the old
order and just add the missing AccessibleTable.idl.
I'm attaching a modified version of buildapi.sh which does just this.
Jamie
--
James Teh
Director, NV Access Limited
Ph + 61 7 5667 8372
www.nvaccess.org
Facebook: http://www.facebook.com/NVAccess
Twitter: @nvaccess
# run build.sh from the IA2 directory
# make sure we have Cygwin
if [ ! -d /cygdrive/c ]; then
echo 'Expected to find Cygwin'
exit 1
fi
# make sure we have the proper directory structure
if [ ! -d api ]; then
echo 'Expected to find ./api'
exit 1
fi
# make sure we have Doxygen
if [ ! -x /cygdrive/c/program\ files/doxygen/bin/doxygen.exe ]; then
echo 'Expected to find c:/program files/doxygen/bin/doxygen.exe'
exit 1
fi
cd api
# make sure we have a Doxygen configuration file
if [ ! -f ../doxygen.conf ]; then
echo 'Expected to find doxygen.conf'
exit 1
fi
# clean up test dir
if [ -f ../IDL-Test/dlldata.c ]; then
rm ../IDL-Test/*.c
rm ../IDL-Test/*.h
fi
cp ../IDL-Test/StdAfxSave/*.* ../IDL-Test
# remove previous autogenerated Doxygen files
if [ -d ../docs ]; then
rm -rf ../docs
fi
# generate IDL documentation with Doxygen
/cygdrive/c/program\ files/doxygen/bin/doxygen ../doxygen.conf
# remove any previous autogenerated merged IDL file
if [ -f ../ia2_api_all.idl ]; then
rm ../ia2_api_all.idl
fi
# generate merged IDL file - IA2TypeLibrary.idl must be at the end
cat IA2CommonTypes.idl AccessibleRelation.idl AccessibleAction.idl
AccessibleRole.idl AccessibleStates.idl Accessible2.idl Accessible2_2.idl
AccessibleComponent.idl AccessibleValue.idl AccessibleText.idl
AccessibleText2.idl AccessibleEditableText.idl AccessibleHyperlink.idl
AccessibleHyperText.idl AccessibleHypertext2.idl AccessibleTable.idl
AccessibleTable2.idl AccessibleTableCell.idl AccessibleImage.idl
AccessibleEventId.idl AccessibleApplication.idl AccessibleDocument.idl
IA2TypeLibrary.idl | sed -e 's/import "[A-Za-z0-9].*$//g' - | cat
api_all_headers.idl - > ../ia2_api_all.idl
cd ..
# remove previous autogenerated zip file
if [ -f ia2-api-`date +%Y%m%d`.zip ]; then
rm ia2-api-`date +%Y%m%d`.zip
fi
# package merged IDL file and documentation
zip -9r ia2-api-`date +%Y%m%d`.zip ia2_api_all.idl api/*.idl docs
# list packaged file for visual confirmation
echo ''
ls -l ia2-api-`date +%Y%m%d`.zip
_______________________________________________
Accessibility-ia2 mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2