srcdir = @srcdir@ CC = @CC@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ LDFLAGS = @LDFLAGS@ LIBS = @LIBS@ RKTLINKER = @RKTLINKER@ STATIC_AR = @STATIC_AR@ ARFLAGS = @ARFLAGS@ RANLIB = @RANLIB@ # Used only for standalone builds: AR = @AR@ ICP_LIB = @ICP_LIB@ prefix = @prefix@ exec_prefix = @exec_prefix@ libdir = @libdir@ RACKET = racket RKTIO_HEADERS = $(srcdir)/rktio.h $(srcdir)/rktio_private.h $(srcdir)/rktio_platform.h rktio_config.h OBJS = rktio_fs.@LTO@ \ rktio_fd.@LTO@ \ rktio_file.@LTO@ \ rktio_poll_set.@LTO@ \ rktio_ltps.@LTO@ \ rktio_sleep.@LTO@ \ rktio_network.@LTO@ \ rktio_pipe.@LTO@ \ rktio_process.@LTO@ \ rktio_signal.@LTO@ \ rktio_envvars.@LTO@ \ rktio_fs_change.@LTO@ \ rktio_flock.@LTO@ \ rktio_shellex.@LTO@ \ rktio_time.@LTO@ \ rktio_cpu.@LTO@ \ rktio_syslog.@LTO@ \ rktio_convert.@LTO@ \ rktio_sha1.@LTO@ \ rktio_sha2.@LTO@ \ rktio_dll.@LTO@ \ rktio_error.@LTO@ \ rktio_hash.@LTO@ \ rktio_wide.@LTO@ \ rktio_console.@LTO@ \ rktio_main.@LTO@ default_rktio: $(MAKE) @HIDE_STANDALONE@@HIDE_NOT_STANDALONE@librktio @HIDE_STANDALONE@librktio: $(MAKE) librktio.@LTA@ @HIDE_NOT_STANDALONE@librktio.@LTA@: $(OBJS) $(STATIC_AR) $(ARFLAGS) @HIDE_NOT_STANDALONE@librktio.@LTA@ $(OBJS) demo: rktio_demo ./rktio_demo $(ARGS) rktio_demo: librktio.@LTA@ demo.@LTO@ $(RKTLINKER) -o rktio_demo $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) demo.@LTO@ librktio.@LTA@ $(LIBS) rktio_fs.@LTO@: $(srcdir)/rktio_fs.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_fs.@LTO@ -c $(srcdir)/rktio_fs.c rktio_fd.@LTO@: $(srcdir)/rktio_fd.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_fd.@LTO@ -c $(srcdir)/rktio_fd.c rktio_file.@LTO@: $(srcdir)/rktio_file.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_file.@LTO@ -c $(srcdir)/rktio_file.c rktio_poll_set.@LTO@: $(srcdir)/rktio_poll_set.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_poll_set.@LTO@ -c $(srcdir)/rktio_poll_set.c rktio_ltps.@LTO@: $(srcdir)/rktio_ltps.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_ltps.@LTO@ -c $(srcdir)/rktio_ltps.c rktio_sleep.@LTO@: $(srcdir)/rktio_sleep.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_sleep.@LTO@ -c $(srcdir)/rktio_sleep.c rktio_network.@LTO@: $(srcdir)/rktio_network.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_network.@LTO@ -c $(srcdir)/rktio_network.c rktio_pipe.@LTO@: $(srcdir)/rktio_pipe.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_pipe.@LTO@ -c $(srcdir)/rktio_pipe.c rktio_process.@LTO@: $(srcdir)/rktio_process.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_process.@LTO@ -c $(srcdir)/rktio_process.c rktio_signal.@LTO@: $(srcdir)/rktio_signal.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_signal.@LTO@ -c $(srcdir)/rktio_signal.c rktio_envvars.@LTO@: $(srcdir)/rktio_envvars.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_envvars.@LTO@ -c $(srcdir)/rktio_envvars.c rktio_fs_change.@LTO@: $(srcdir)/rktio_fs_change.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_fs_change.@LTO@ -c $(srcdir)/rktio_fs_change.c rktio_flock.@LTO@: $(srcdir)/rktio_flock.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_flock.@LTO@ -c $(srcdir)/rktio_flock.c rktio_shellex.@LTO@: $(srcdir)/rktio_shellex.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_shellex.@LTO@ -c $(srcdir)/rktio_shellex.c rktio_time.@LTO@: $(srcdir)/rktio_time.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_time.@LTO@ -c $(srcdir)/rktio_time.c rktio_cpu.@LTO@: $(srcdir)/rktio_cpu.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_cpu.@LTO@ -c $(srcdir)/rktio_cpu.c rktio_syslog.@LTO@: $(srcdir)/rktio_syslog.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_syslog.@LTO@ -c $(srcdir)/rktio_syslog.c rktio_convert.@LTO@: $(srcdir)/rktio_convert.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_convert.@LTO@ -c $(srcdir)/rktio_convert.c rktio_sha1.@LTO@: $(srcdir)/rktio_sha1.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_sha1.@LTO@ -c $(srcdir)/rktio_sha1.c rktio_sha2.@LTO@: $(srcdir)/rktio_sha2.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_sha2.@LTO@ -c $(srcdir)/rktio_sha2.c rktio_dll.@LTO@: $(srcdir)/rktio_dll.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_dll.@LTO@ -c $(srcdir)/rktio_dll.c rktio_error.@LTO@: $(srcdir)/rktio_error.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_error.@LTO@ -c $(srcdir)/rktio_error.c rktio_hash.@LTO@: $(srcdir)/rktio_hash.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_hash.@LTO@ -c $(srcdir)/rktio_hash.c rktio_wide.@LTO@: $(srcdir)/rktio_wide.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_wide.@LTO@ -c $(srcdir)/rktio_wide.c rktio_console.@LTO@: $(srcdir)/rktio_console.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_console.@LTO@ -c $(srcdir)/rktio_console.c rktio_main.@LTO@: $(srcdir)/rktio_main.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o rktio_main.@LTO@ -c $(srcdir)/rktio_main.c demo.@LTO@: $(srcdir)/demo.c $(RKTIO_HEADERS) $(CC) $(CFLAGS) $(CPPFLAGS) -I$(srcdir) -I. -o demo.@LTO@ -c $(srcdir)/demo.c clean: rm -f $(OBJS) librktio.@LTA@ rktio_demo demo_fifo # ---------------------------------------- # To rebuild the S-expression form of "rktio.h" rktio-rktl rktio-inc rktio-def: cd $(srcdir) && make -f Mf-rktio # ---------------------------------------- @HIDE_NOT_STANDALONE@librktio: $(MAKE) librktio.@LIBSFX@ # Builds a shared object; requires `configure --enable-standalone` @HIDE_STANDALONE@librktio.@LIBSFX@: $(OBJS) $(AR) @HIDE_STANDALONE@librktio.@LIBSFX@ $(OBJS) $(LDFLAGS) $(LIBS) # Builds a shared object and installs it to `configure --prefix=...` target install-shared-object: $(MAKE) librktio.@LIBSFX@ mkdir -p "$(DESTDIR)$(libdir)/" $(ICP_LIB) librktio.@LIBSFX@ "$(DESTDIR)$(libdir)/librktio.@LIBSFX@"