[bitmap] Make bitmap a static library and use -fvisibility=hidden

ZX-1895 #comment

Test: cq
Change-Id: Ia4a3ad32e78ac3cbe12bc40c01d55a5e1835d126
diff --git a/system/dev/block/zxcrypt/rules.mk b/system/dev/block/zxcrypt/rules.mk
index fa4d84e..8ceb125 100644
--- a/system/dev/block/zxcrypt/rules.mk
+++ b/system/dev/block/zxcrypt/rules.mk
@@ -17,12 +17,12 @@
 MODULE_LIBS := \
     system/ulib/c \
     system/ulib/zircon \
-    system/ulib/bitmap \
     system/ulib/crypto \
     system/ulib/driver \
     system/ulib/zxcrypt \
 
 MODULE_STATIC_LIBS := \
+    system/ulib/bitmap \
     system/ulib/ddk \
     system/ulib/ddktl \
     system/ulib/fbl \
diff --git a/system/dev/display/astro-display/rules.mk b/system/dev/display/astro-display/rules.mk
index 65f7a52..fe69666 100644
--- a/system/dev/display/astro-display/rules.mk
+++ b/system/dev/display/astro-display/rules.mk
@@ -20,6 +20,7 @@
     $(LOCAL_DIR)/astro-display.cpp \
 
 MODULE_STATIC_LIBS := \
+    system/ulib/bitmap \
     system/ulib/sync \
     system/ulib/ddk \
     system/ulib/ddktl \
@@ -32,6 +33,5 @@
     system/ulib/driver \
     system/ulib/zircon \
     system/ulib/c \
-    system/ulib/bitmap \
 
 include make/module.mk
diff --git a/system/uapp/blobfs/rules.mk b/system/uapp/blobfs/rules.mk
index 62589e8..0ae0b4d 100644
--- a/system/uapp/blobfs/rules.mk
+++ b/system/uapp/blobfs/rules.mk
@@ -15,6 +15,7 @@
     $(LOCAL_DIR)/main.cpp \
 
 MODULE_STATIC_LIBS := \
+    system/ulib/bitmap \
     system/ulib/blobfs \
     system/ulib/fs \
     system/ulib/fzl \
@@ -35,7 +36,6 @@
 
 MODULE_LIBS := \
     system/ulib/async.default \
-    system/ulib/bitmap \
     system/ulib/c \
     system/ulib/fdio \
     system/ulib/trace-engine \
diff --git a/system/uapp/minfs/rules.mk b/system/uapp/minfs/rules.mk
index 911abc7..7671b42 100644
--- a/system/uapp/minfs/rules.mk
+++ b/system/uapp/minfs/rules.mk
@@ -17,6 +17,7 @@
     system/ulib/async-loop \
     system/ulib/async-loop.cpp \
     system/ulib/async.cpp \
+    system/ulib/bitmap \
     system/ulib/block-client \
     system/ulib/fbl \
     system/ulib/fs \
@@ -30,7 +31,6 @@
 
 MODULE_LIBS := \
     system/ulib/async.default \
-    system/ulib/bitmap \
     system/ulib/c \
     system/ulib/fdio \
     system/ulib/trace-engine \
diff --git a/system/ulib/bitmap/rules.mk b/system/ulib/bitmap/rules.mk
index 704be67..4d681df 100644
--- a/system/ulib/bitmap/rules.mk
+++ b/system/ulib/bitmap/rules.mk
@@ -8,6 +8,8 @@
 
 MODULE_TYPE := userlib
 
+MODULE_COMPILEFLAGS += -fvisibility=hidden
+
 MODULE_SRCS += \
     $(LOCAL_DIR)/raw-bitmap.cpp \
     $(LOCAL_DIR)/rle-bitmap.cpp \
@@ -23,7 +25,6 @@
     system/ulib/zircon \
     system/ulib/c \
 
-MODULE_EXPORT := so
 MODULE_PACKAGE := src
 
 include make/module.mk
diff --git a/system/ulib/minfs/rules.mk b/system/ulib/minfs/rules.mk
index 6542074..202370f 100644
--- a/system/ulib/minfs/rules.mk
+++ b/system/ulib/minfs/rules.mk
@@ -30,6 +30,7 @@
     system/ulib/async \
     system/ulib/async-loop.cpp \
     system/ulib/async-loop \
+    system/ulib/bitmap \
     system/ulib/block-client \
     system/ulib/trace \
     system/ulib/zx \
@@ -40,7 +41,6 @@
 
 MODULE_LIBS := \
     system/ulib/async.default \
-    system/ulib/bitmap \
     system/ulib/c \
     system/ulib/fdio \
     system/ulib/trace-engine \
diff --git a/system/utest/bitmap/rules.mk b/system/utest/bitmap/rules.mk
index d6fa8c1..564e2d3 100644
--- a/system/utest/bitmap/rules.mk
+++ b/system/utest/bitmap/rules.mk
@@ -16,6 +16,7 @@
 MODULE_NAME := bitmap-test
 
 MODULE_STATIC_LIBS := \
+    system/ulib/bitmap \
     system/ulib/zx \
     system/ulib/zxcpp \
     system/ulib/fbl \
@@ -24,7 +25,6 @@
     system/ulib/zircon \
     system/ulib/c \
     system/ulib/fdio \
-    system/ulib/bitmap \
     system/ulib/unittest \
 
 include make/module.mk