Current tip does not compile on windows

Bug #945523 reported by tmodes
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Panotools
Fix Released
Undecided
Unassigned

Bug Description

Hg revision 0c73d8794377 does not compile on windows.

First: There appear several linker errors in the tools by the use of the not standard conform __progname variable:
error LNK2019: unresolved external symbol __progname referenced in function panoBasenameOfExecutable pano13.lib(sys_ansi.obj)

Second: CMake does call ctag-exuberant without to check for existence. Wrap it around a find_program

FIND_PROGRAM(_ctags ctags-exuberant)
IF(NOT ${_ctags} MATCHES "-NOTFOUND")
    ADD_CUSTOM_COMMAND( OUTPUT ctags POST_BUILD
                        COMMAND ${_ctags} -e *.c *.h tools/*.c
                        WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/
                        COMMENT "Build TAGS file"
                      )
    ADD_CUSTOM_TARGET( TAGS DEPENDS ctags)
ENDIF()

Revision history for this message
tmodes (tmodes) wrote :

The attached patch fixes several issues with building libpano on Windows:
* It make the current tip to compile again.
* It add a workaround for an issue with CMake which did not correctly set some parameters for static 64-bit builds
* If fixes the mentioned ctags issue
* It adds option to build static or shared lib, with output of messages to commandline or gui (all Windows only)

The implementation adds 2 new files: sys_compat_unix.c and sys_compat_win.c. The CMake build system is already changed to use the correct one. This needs also be done for the configure/automake script.

Revision history for this message
tmodes (tmodes) wrote :

Fixed in changeset bb55bfdfa33e.
Needs testing if the change to build system work on all systems.

Changed in panotools:
status: New → Fix Committed
tmodes (tmodes)
Changed in panotools:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.