]> mj.ucw.cz Git - libucw.git/blobdiff - ucw/perl/UCW/Configure/LibUCW.pm
Updated years in all README's.
[libucw.git] / ucw / perl / UCW / Configure / LibUCW.pm
index ef09fa315cdca59102465a3f83ed7f3ccb7c9999..141dbc9093489cb0667fcdd9402c1292d7718596 100644 (file)
@@ -6,6 +6,9 @@
 package UCW::Configure::LibUCW;
 use UCW::Configure;
 
+use strict;
+use warnings;
+
 # Determine page size
 Test("CPU_PAGE_SIZE", "Determining page size", sub {
        my $p;
@@ -40,5 +43,32 @@ if (Get("CPU_ARCH") eq "default" || Get("CPU_ARCH") =~ /^i[345]86$/) {
        Set("CONFIG_UCW_RADIX_SORTER_BITS" => 12);
 }
 
+PostConfig {
+       AtWrite {
+               UCW::Configure::C::ConfigHeader("ucw/autoconf.h", [
+                       # Excluded symbols (danger of collision)
+                       '^CONFIG_DEBUG$' => 0,
+
+                       # Included symbols
+                       '^CONFIG_' => 1,
+                       '^CPU_' => 1,
+                       '^(SHERLOCK|UCW)_VERSION(_|$)' => 1,
+
+               ]);
+       } if Get("CONFIG_INSTALL_API");
+
+       # Include direct FB?
+       if (!IsSet("CONFIG_UCW_THREADS") || !IsSet("CONFIG_DIRECT_IO")) {
+               if (IsGiven("CONFIG_UCW_FB_DIRECT") && IsSet("CONFIG_UCW_FB_DIRECT")) {
+                       if (!IsSet("CONFIG_UCW_THREADS")) {
+                               Fail("CONFIG_UCW_FB_DIRECT needs CONFIG_UCW_THREADS");
+                       } else {
+                               Fail("CONFIG_UCW_FB_DIRECT needs CONFIG_DIRECT_IO");
+                       }
+               }
+               UnSet("CONFIG_UCW_FB_DIRECT");
+       }
+};
+
 # We succeeded
 1;