Loic Dachary's makefile/dist/rpm fixes
authorDaniel Stenberg <daniel@haxx.se>
Mon, 8 Jan 2001 10:00:14 +0000 (10:00 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Mon, 8 Jan 2001 10:00:14 +0000 (10:00 +0000)
CHANGES
Makefile.am
configure.in
docs/Makefile.am
lib/Makefile.am
lib/Makefile.in
lib/ftp.c
src/Makefile.am
tests/Makefile.am

diff --git a/CHANGES b/CHANGES
index 0ce99f7..2d2acd1 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -6,6 +6,12 @@
 
                                History of Changes
 
+Loic Dachary (6 January 2001)
+- Automated generation of rpm packages, no need to be root.
+
+- make distcheck generates a proper distribution (EXTRA_DIST
+  in all Makefile.am modified to match FILES).
+
 Daniel (5 January 2001)
 - Huge client-side hack: now multiple URLs are supported. Any number of URLs
   can be specified on the command line, and they'll all be downloaded. There
index 9f9a669..5b85fb5 100644 (file)
@@ -4,9 +4,35 @@
 
 AUTOMAKE_OPTIONS = foreign no-dependencies
 
-EXTRA_DIST = curl.spec curl-ssl.spec
+EXTRA_DIST = curl.spec curl-ssl.spec \
+       CHANGES FILES LEGAL MITX.txt MPL-1.1.txt \
+       config-win32.h reconf 
 
 SUBDIRS = docs lib src include tests
 
 test:
        @(cd tests; make quiet-test)
+
+# Build source and binary rpms. For rpm-3.0 and above, the ~/.rpmmacros
+# must contain the following line:
+# %_topdir /home/loic/local/rpm
+# and that /home/loic/local/rpm contains the directory SOURCES, BUILD etc.
+#
+# If additional configure flags are needed to build the package, add the
+# following in ~/.rpmmacros
+# %configure CFLAGS="%{optflags}" ./configure %{_target_platform} --prefix=%{_prefix} ${AM_CONFIGFLAGS}
+# and run make rpm in the following way:
+# AM_CONFIGFLAGS='--with-uri=/home/users/loic/local/RedHat-6.2' make rpm
+#
+
+rpms:
+       $(MAKE) RPMDIST=curl rpm
+       $(MAKE) RPMDIST=curl-ssl rpm
+
+rpm:
+       RPM_TOPDIR=`rpm --showrc | $(PERL) -n -e 'print if(s/.*_topdir\s+(.*)/$$1/)'` ; \
+       cp $(srcdir)/$(RPMDIST).spec $$RPM_TOPDIR/SPECS ; \
+       cp $(PACKAGE)-$(VERSION).tar.gz $$RPM_TOPDIR/SOURCES ; \
+       rpm -ba --clean --rmsource $$RPM_TOPDIR/SPECS/$(RPMDIST).spec ; \
+       mv $$RPM_TOPDIR/RPMS/i386/$(RPMDIST)-*.rpm . ; \
+       mv $$RPM_TOPDIR/SRPMS/$(RPMDIST)-*.src.rpm .
index 010737b..b98c2ef 100644 (file)
@@ -613,7 +613,9 @@ AC_OUTPUT( Makefile \
           include/curl/Makefile \
           src/Makefile \
            lib/Makefile \
-           tests/Makefile)
+           tests/Makefile \
+          curl.spec \
+          curl-ssl.spec)
 dnl       perl/checklinks.pl \
 dnl       perl/getlinks.pl \
 dnl        perl/formfind.pl \
index 4fcace4..45c42c8 100644 (file)
@@ -12,11 +12,14 @@ man_MANS = \
        curl_easy_perform.3 \
        curl_easy_setopt.3 \
        curl_formparse.3 \
+       curl_formfree.3 \
        curl_getdate.3 \
        curl_getenv.3 \
        curl_slist_append.3 \
        curl_slist_free_all.3 \
        curl_version.3
 
-EXTRA_DIST = $(man_MANS)
-
+EXTRA_DIST = $(man_MANS) \
+       MANUAL BUGS CONTRIBUTE FAQ FEATURES INTERNALS \
+       LIBCURL README.win32 RESOURCES TODO TheArtOfHttpScripting \
+       examples/README examples/*.c
index 145a9ba..2090cb0 100644 (file)
@@ -4,6 +4,10 @@
 
 AUTOMAKE_OPTIONS = foreign
 
+EXTRA_DIST = getdate.y \
+       Makefile.b32 Makefile.b32.resp Makefile.m32 Makefile.vc6 \
+       libcurl.def dllinit.c
+
 lib_LTLIBRARIES = libcurl.la
 
 # Some flags needed when trying to cause warnings ;-)
@@ -54,7 +58,9 @@ download.h     getenv.c       ldap.h         ssluse.h       \
 escape.c       getenv.h       mprintf.c      telnet.c       \
 escape.h       getpass.c      netrc.c        telnet.h       \
 getinfo.c highlevel.c strequal.c strequal.h easy.c \
-security.h security.c krb4.c memdebug.c memdebug.h
+security.h security.c krb4.c memdebug.c memdebug.h inet_ntoa_r.h
+
+noinst_HEADERS = setup.h highlevel.h
 
 # Say $(srcdir), so GNU make does not report an ambiguity with the .y.c rule.
 $(srcdir)/getdate.c: getdate.y
index ba0fd33..291172d 100644 (file)
@@ -79,6 +79,9 @@ YACC = @YACC@
 
 AUTOMAKE_OPTIONS = foreign
 
+EXTRA_DIST = getdate.y        Makefile.b32 Makefile.b32.resp Makefile.m32 Makefile.vc6        libcurl.def dllinit.c
+
+
 lib_LTLIBRARIES = libcurl.la
 
 # Some flags needed when trying to cause warnings ;-)
@@ -115,8 +118,10 @@ libcurl_la_LDFLAGS = -version-info 1:0:0
 # set age to 0.
 #
 
-libcurl_la_SOURCES =  arpa_telnet.h  file.c         getpass.h      netrc.h        timeval.c base64.c       file.h         hostip.c       progress.c     timeval.h base64.h       formdata.c     hostip.h       progress.h     cookie.c       formdata.h     http.c         sendf.c        cookie.h       ftp.c          http.h         sendf.h        url.c dict.c         ftp.h          if2ip.c        speedcheck.c   url.h dict.h         getdate.c      if2ip.h        speedcheck.h   urldata.h download.c     getdate.h      ldap.c         ssluse.c       version.c download.h     getenv.c       ldap.h         ssluse.h       escape.c       getenv.h       mprintf.c      telnet.c       escape.h       getpass.c      netrc.c        telnet.h       getinfo.c highlevel.c strequal.c strequal.h easy.c security.h security.c krb4.c memdebug.c memdebug.h
+libcurl_la_SOURCES =  arpa_telnet.h  file.c         getpass.h      netrc.h        timeval.c base64.c       file.h         hostip.c       progress.c     timeval.h base64.h       formdata.c     hostip.h       progress.h     cookie.c       formdata.h     http.c         sendf.c        cookie.h       ftp.c          http.h         sendf.h        url.c dict.c         ftp.h          if2ip.c        speedcheck.c   url.h dict.h         getdate.c      if2ip.h        speedcheck.h   urldata.h download.c     getdate.h      ldap.c         ssluse.c       version.c download.h     getenv.c       ldap.h         ssluse.h       escape.c       getenv.h       mprintf.c      telnet.c       escape.h       getpass.c      netrc.c        telnet.h       getinfo.c highlevel.c strequal.c strequal.h easy.c security.h security.c krb4.c memdebug.c memdebug.h inet_ntoa_r.h
 
+
+noinst_HEADERS = setup.h highlevel.h
 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
 CONFIG_HEADER = ../config.h ../src/config.h
 CONFIG_CLEAN_FILES = 
@@ -138,6 +143,8 @@ COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CF
 LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 CCLD = $(CC)
 LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
+HEADERS =  $(noinst_HEADERS)
+
 DIST_COMMON =  Makefile.am Makefile.in
 
 
@@ -288,7 +295,7 @@ install-am: all-am
 install: install-am
 uninstall-am: uninstall-libLTLIBRARIES
 uninstall: uninstall-am
-all-am: Makefile $(LTLIBRARIES)
+all-am: Makefile $(LTLIBRARIES) $(HEADERS)
 all-redirect: all-am
 install-strip:
        $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
index a52ba19..0d16a20 100644 (file)
--- a/lib/ftp.c
+++ b/lib/ftp.c
@@ -26,6 +26,7 @@
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
+#include <stdarg.h>
 #include <ctype.h>
 #include <errno.h>
 
index 43bf0cd..b64ea24 100644 (file)
@@ -10,17 +10,24 @@ INCLUDES = -I$(top_srcdir)/include
 
 bin_PROGRAMS = curl #memtest
 
+noinst_HEADERS = setup.h \
+       config-win32.h \
+       urlglob.h \
+       version.h \
+       writeout.h
+
 #memtest_SOURCES = memtest.c
 #memtest_LDADD = $(top_srcdir)/lib/libcurl.la
 
 curl_SOURCES = main.c hugehelp.c urlglob.c writeout.c
-curl_LDADD = $(top_srcdir)/lib/libcurl.la
-curl_DEPENDENCIES = $(top_srcdir)/lib/libcurl.la
+curl_LDADD = ../lib/libcurl.la
+curl_DEPENDENCIES = ../lib/libcurl.la
 BUILT_SOURCES = hugehelp.c
 CLEANFILES = hugehelp.c
 NROFF=@NROFF@
 
-EXTRA_DIST = mkhelp.pl Makefile.vc6
+EXTRA_DIST = mkhelp.pl config-win32.h \
+       Makefile.vc6 Makefile.b32 Makefile.m32
 
 AUTOMAKE_OPTIONS = foreign no-dependencies
 
index 58475d9..355c6f9 100644 (file)
@@ -1,3 +1,4 @@
+EXTRA_DIST = data/*.txt ftpserver.pl httpserver.pl runtests.pl
 
 all:
 install: