BIND 10 #828: DLL exports

BIND 10 Development do-not-reply at isc.org
Sun Apr 3 08:25:15 UTC 2011


#828: DLL exports
-------------------------------------+------------------------------------
                 Reporter:  fdupont  |                 Type:  enhancement
                   Status:  new      |             Priority:  major
                Milestone:           |            Component:  Unclassified
                 Keywords:           |            Sensitive:  0
Estimated Number of Hours:  0        |  Add Hours to Ticket:  0
                Billable?:  1        |          Total Hours:  0
                Internal?:  0        |
-------------------------------------+------------------------------------
 The idea is to build a DLL per library directory.
 Classes and functions must be exported, there are several ways but only
 !__declspec(dllimport/dllexport) works well with C++.
 The common way is to add in .h files:

 #ifdef _WIN32
 #ifdef XXX_EXPORTS
 #define LIBSPEC !__declspec(dllexport)
 #else
 #define LIBSPEC !__declspec(dllimport)
 #endif
 #else
 #define LIBSPEC
 #endif

 with a LIBSPEC in all class/function declarations.

 and in .cc before the #include of the corresponding

 #define XXX_EXPORTS

 Choices are:
  - _WIN32 or WIN32 or other: the first is declared by default, the second
    or other must be added in project files
  - add a && !defined(STATICLIB) but will be any library compiled static?
  - the XXX, the name of the library path? Append LIB_? SRC_LIB?
 BIND10_SRC_LIB?
  - the name LIBSPEC

 When the choices will be done, all .h and .cc in src/lib will be updated.

-- 
Ticket URL: <http://bind10.isc.org/ticket/828>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development


More information about the bind10-tickets mailing list