From 7109002658f60b544822259aa8936f778dd4a8eb Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Fri, 17 Jul 2020 14:58:46 +0300 Subject: Release version 1.0.0+6 Add .gitattributes file Add glue buildfile Update build/.gitignore files Rename int_libs and imp_libs variables to intf_libs and impl_libs in buildfile Add note about data-exporting DLLs to export.hxx Add LIBPRINT_VERSION_FULL macro definition to version.hxx.in --- .gitattributes | 2 +- buildfile | 5 +++++ libprint/build/.gitignore | 7 ++++--- libprint/libprint/buildfile | 10 +++++----- libprint/libprint/export.hxx | 9 +++++++-- libprint/libprint/version.hxx.in | 1 + libprint/manifest | 2 +- libprint/tests/build/.gitignore | 7 ++++--- 8 files changed, 28 insertions(+), 15 deletions(-) create mode 100644 buildfile diff --git a/.gitattributes b/.gitattributes index 9fce1b0..1631641 100644 --- a/.gitattributes +++ b/.gitattributes @@ -10,7 +10,7 @@ #*.bat text eol=crlf # Use `eol=lf` for files that should have the LF line ending both in the -# working tree (even on Windows) in the repository. +# working tree (even on Windows) and in the repository. # #*.sh text eol=lf diff --git a/buildfile b/buildfile new file mode 100644 index 0000000..aad5e21 --- /dev/null +++ b/buildfile @@ -0,0 +1,5 @@ +# Glue buildfile that "pulls" all the packages in the project. +# +import pkgs = */ + +./: $pkgs diff --git a/libprint/build/.gitignore b/libprint/build/.gitignore index 4a730a3..974e01d 100644 --- a/libprint/build/.gitignore +++ b/libprint/build/.gitignore @@ -1,3 +1,4 @@ -config.build -root/ -bootstrap/ +/config.build +/root/ +/bootstrap/ +build/ diff --git a/libprint/libprint/buildfile b/libprint/libprint/buildfile index 40e0c14..3097c53 100644 --- a/libprint/libprint/buildfile +++ b/libprint/libprint/buildfile @@ -1,8 +1,8 @@ -int_libs = # Interface dependencies. -imp_libs = # Implementation dependencies. -#import imp_libs += libhello%lib{hello} +intf_libs = # Interface dependencies. +impl_libs = # Implementation dependencies. +#import impl_libs += libhello%lib{hello} -lib{print}: {hxx ixx txx cxx}{** -version} hxx{version} $imp_libs $int_libs +lib{print}: {hxx ixx txx cxx}{** -version} hxx{version} $impl_libs $intf_libs # Include the generated version header into the distribution (so that we don't # pick up an installed one) and don't remove it when cleaning in src (so that @@ -26,7 +26,7 @@ objs{*}: cxx.poptions += -DLIBPRINT_SHARED_BUILD lib{print}: { cxx.export.poptions = "-I$out_root" "-I$src_root" - cxx.export.libs = $int_libs + cxx.export.libs = $intf_libs } liba{print}: cxx.export.poptions += -DLIBPRINT_STATIC diff --git a/libprint/libprint/export.hxx b/libprint/libprint/export.hxx index f4b591e..23e59fb 100644 --- a/libprint/libprint/export.hxx +++ b/libprint/libprint/export.hxx @@ -27,8 +27,13 @@ #else // If none of the above macros are defined, then we assume we are being used // by some third-party build system that cannot/doesn't signal the library -// type. Note that this fallback works for both static and shared but in case -// of shared will be sub-optimal compared to having dllimport. +// type. Note that this fallback works for both static and shared libraries +// provided the library only exports functions (in other words, no global +// exported data) and for the shared case the result will be sub-optimal +// compared to having dllimport. If, however, your library does export data, +// then you will probably want to replace the fallback with the (commented +// out) error since it won't work for the shared case. // # define LIBPRINT_SYMEXPORT // Using static or shared. +//# error define LIBPRINT_STATIC or LIBPRINT_SHARED preprocessor macro to signal libprint library type being linked #endif diff --git a/libprint/libprint/version.hxx.in b/libprint/libprint/version.hxx.in index 7d3c9e0..97b5747 100644 --- a/libprint/libprint/version.hxx.in +++ b/libprint/libprint/version.hxx.in @@ -22,6 +22,7 @@ #define LIBPRINT_VERSION $libprint.version.project_number$ULL #define LIBPRINT_VERSION_STR "$libprint.version.project$" #define LIBPRINT_VERSION_ID "$libprint.version.project_id$" +#define LIBPRINT_VERSION_FULL "$libprint.version$" #define LIBPRINT_VERSION_MAJOR $libprint.version.major$ #define LIBPRINT_VERSION_MINOR $libprint.version.minor$ diff --git a/libprint/manifest b/libprint/manifest index e70fa78..08eb737 100644 --- a/libprint/manifest +++ b/libprint/manifest @@ -1,6 +1,6 @@ : 1 name: libprint -version: 1.0.0+5 +version: 1.0.0+6 project: hello summary: The "Hello World" example printer library license: MIT ; MIT License. diff --git a/libprint/tests/build/.gitignore b/libprint/tests/build/.gitignore index 4a730a3..974e01d 100644 --- a/libprint/tests/build/.gitignore +++ b/libprint/tests/build/.gitignore @@ -1,3 +1,4 @@ -config.build -root/ -bootstrap/ +/config.build +/root/ +/bootstrap/ +build/ -- cgit v1.1