+# Use these definitions when building a shared library.
+SHARED_C_OBJS = c_varargs_to_ada.o ncurses_compat.o
+SHARED_OBJS = $(SHARED_C_OBJS) @USE_OLD_MAKERULES@$(LIBOBJS) @cf_generic_objects@
+
+c_varargs_to_ada.o : $(srcdir)/c_varargs_to_ada.c
+ $(CC) $(CFLAGS_DEFAULT) -c -o $@ $(srcdir)/c_varargs_to_ada.c
+
+ncurses_compat.o : $(srcdir)/ncurses_compat.c
+ $(CC) $(CFLAGS_DEFAULT) -c -o $@ $(srcdir)/ncurses_compat.c
+
+###############################################################################
+# Use these definitions when building a static library.
+STATIC_C_OBJS = static_c_varargs_to_ada.o static_ncurses_compat.o
+STATIC_OBJS = $(STATIC_C_OBJS) @USE_OLD_MAKERULES@$(LIBOBJS) @cf_generic_objects@
+
+static_c_varargs_to_ada.o : $(srcdir)/c_varargs_to_ada.c
+ $(CC) $(CFLAGS_NORMAL) -c -o $@ $(srcdir)/c_varargs_to_ada.c
+
+static_ncurses_compat.o : $(srcdir)/ncurses_compat.c
+ $(CC) $(CFLAGS_NORMAL) -c -o $@ $(srcdir)/ncurses_compat.c
+
+###############################################################################
+
+@USE_OLD_MAKERULES@$(BUILD_DIR_LIB)/$(STATIC_LIBNAME) :: \
+@USE_OLD_MAKERULES@ $(BUILD_DIR_LIB) \
+@USE_OLD_MAKERULES@ $(STATIC_OBJS)
+@USE_OLD_MAKERULES@ $(AR) $(ARFLAGS) $@ $(STATIC_OBJS)