Opened 14 years ago

Closed 14 years ago

Last modified 14 years ago

#315 closed enhancement (fixed)

Separate include directory from source

Reported by: mloskot Owned by: mloskot
Priority: major Milestone: 3.3.0
Component: Build/Install Version: main
Severity: Unassigned Keywords: trunk, layout, directories
Cc: gary.crawford@…, dale@…, konstantin.baumann@…

Description (last modified by mloskot)

Long time ago, I proposed to modify GEOS source tree layout and separate headers from source. In that time, Sandro did second this idea.

The C API would stay where it is now.

The proposal is as follows:

  1. trunk/source/headers/geos moves to trunk/include/geos
  2. when headers moved, trunk/source moves to trunk/src

I'm willing to apply new structure and apply update to all supported build configurations.

Do I have green light?

Change History (23)

comment:1 by mloskot, 14 years ago

Owner: changed from pramsey to mloskot
Status: newassigned

comment:2 by mloskot, 14 years ago

Description: modified (diff)

comment:3 by mloskot, 14 years ago

Description: modified (diff)

comment:4 by pramsey, 14 years ago

+1

comment:5 by hobu, 14 years ago

+1

Also, src instead of source

comment:6 by mloskot, 14 years ago

Hobu, yes, it is src

comment:7 by mloskot, 14 years ago

Cc: gary.crawford@… dal@… added

I've taken the liberty to add Gary and Dale to CC to assure they are notified.

Sandro, I assume you still agree on this change.

I'm slowly starting to implement this idea.

comment:8 by mloskot, 14 years ago

Cc: dale@… added; dal@… removed

comment:9 by Kosta, 14 years ago

Cc: konstantin.baumann@… added

comment:10 by mloskot, 14 years ago

comment:11 by mloskot, 14 years ago

  • Updated Makefile.am files in headers subtree after moved to new location in include (r2839)

comment:12 by mloskot, 14 years ago

  • Updated new source structure in configure.in and root Makefile.am (r2840)

comment:13 by mloskot, 14 years ago

  • Updated new source structure in configure.in and root Makefile.am - part 2 (r2841)

comment:14 by mloskot, 14 years ago

  • Updated Makefile.am files in src subtree after moved to new location (r2842)

comment:15 by mloskot, 14 years ago

  • Updated Makefile.am files in capi subtree after moved to new location (r2843)

comment:16 by mloskot, 14 years ago

  • Updated remaining directories doc, macros, tools, tests, swig, capi with new src and include location. Fixed previous updates. Successfull build on Linux. (r2844)

comment:17 by mloskot, 14 years ago

  • Updated makefile.vc, nmake.opt, src/makefile.vc files with new location of include and src (r2845)

Summary:

  • Build based on autotools is updated and should work well
  • Build based on NMAKE makefiles is updated and should work well as well
  • Visual Studio projects in build directory have not been updated, yet

comment:18 by mloskot, 14 years ago

  • Updated Visual Studio 2008 projects in build/msvc90 with new location of include and src (r2846)

comment:19 by mloskot, 14 years ago

  • Updated Visual Studio 2005 projects in build/msvc80 with new location of include and src (r2847)

comment:20 by mloskot, 14 years ago

  • Successfully compiled with Visual C++ 8.0 after restructuring source tree (r2848)
  • Successfully compiled with Visual C++ 9.0

comment:21 by mloskot, 14 years ago

  • Updated Visual Studio 2010 projects in build/msvc10 with new location of include and src (r2849)

comment:22 by mloskot, 14 years ago

Resolution: fixed
Status: assignedclosed

The migration to new structure completed.

Successfully built and tested using:

  • GCC 4.4.1 (Linux)
  • Visual C++ 8.0 on Windows XP Pro 32-bit
  • Visual C++ 9.0 on Windows Vista 64-bit (target 32-bit)
  • Visual C++ 10.0 on Windows 7 64-bit (target 32-bit)

Please, report here and reopen if anything is not working.

comment:23 by mloskot, 14 years ago

One more small update:

  • Moved src/examples out of src directory (r2850)
Note: See TracTickets for help on using tickets.