libcgi.patch 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. --- libcgi-1.0.orig/src/cgi.c
  2. +++ libcgi-1.0/src/cgi.c
  3. @@ -336,7 +336,7 @@
  4. hextable['b'] = 11;
  5. hextable['c'] = 12;
  6. hextable['d'] = 13;
  7. - hextable['e'] = 13;
  8. + hextable['e'] = 14;
  9. hextable['f'] = 15;
  10. hextable['A'] = 10;
  11. hextable['B'] = 11;
  12. --- libcgi-1.0.orig/src/string.c
  13. +++ libcgi-1.0/src/string.c
  14. @@ -584,7 +584,7 @@
  15. va_start(ptr, s);
  16. - va_copy(bkp, str);
  17. + va_copy(bkp, ptr);
  18. len = strlen(s);
  19. while (*str) {
  20. --- libcgi-1.0.orig/Makefile.in
  21. +++ libcgi-1.0/Makefile.in
  22. @@ -5,22 +5,27 @@
  23. prefix = @prefix@
  24. exec_prefix = @exec_prefix@
  25. -SHAREDOPT = -shared
  26. +SHAREDOPT = -shared -fPIC,-Wl,-soname,libcgi.so.0
  27. LIBDIR = $(prefix)/lib
  28. -INCDIR = $(prefix)/include
  29. +INCDIR = $(prefix)/include/libcgi/
  30. MANDIR = $(prefix)/man/man3
  31. SHELL = /bin/sh
  32. EXTRA_LIBS =
  33. INCS = -Isrc
  34. -FLAGS = -Wall -fpic
  35. +FLAGS = -Wall -D_REENTRANT
  36. OBJS = src/error.o src/cgi.o src/session.o src/base64.o src/md5.o \
  37. src/string.o src/general.o src/list.o src/cookie.o
  38. +SHOBJS=$(OBJS:.o=.sh.o)
  39. -.c.o: $(CC) $(FLAGS) -c $<
  40. +%.o: %.c
  41. + $(CC) $(FLAGS) -c $*.c -o $@
  42. -all: $(OBJS) src/libcgi.so
  43. +%.sh.o: %.c
  44. + $(CC) $(FLAGS) -fPIC -c $*.c -o $@
  45. +
  46. +all: src/libcgi.so src/libcgi.a
  47. @echo ""
  48. @echo ""
  49. @@ -48,14 +53,15 @@
  50. src/libcgi.a: $(OBJS)
  51. $(AR) rc src/libcgi.a $(OBJS)
  52. -src/libcgi.so: src/libcgi.a
  53. - $(CC) $(SHAREDOPT) -o src/libcgi.so $(OBJS) $(EXTRA_LIBS)
  54. +src/libcgi.so: $(SHOBJS)
  55. + $(CC) $(SHAREDOPT) -o src/libcgi.so $(SHOBJS) $(EXTRA_LIBS)
  56. install:
  57. - cp src/libcgi.a $(LIBDIR)
  58. - cp src/libcgi.so $(LIBDIR)
  59. - cp src/cgi.h $(INCDIR)
  60. - cp src/session.h $(INCDIR)
  61. + cp src/libcgi.a $(DESTDIR)/$(LIBDIR)
  62. + cp src/libcgi.so $(DESTDIR)/$(LIBDIR)
  63. + [ -d $(DESTDIR)/$(INCDIR) ] || mkdir -p $(DESTDIR)/$(INCDIR)
  64. + cp src/cgi.h $(DESTDIR)/$(INCDIR)
  65. + cp src/session.h $(DESTDIR)/$(INCDIR)
  66. src/error.o: src/error.c src/error.h
  67. @@ -69,8 +75,9 @@
  68. src/list.o: src/list.c
  69. clean:
  70. - find src/ -name *.*o -exec rm -f {} \;
  71. + find src/ -name *.o -exec rm -f {} \;
  72. find src/ -name *.a -exec rm -f {} \;
  73. + find src/ -name *.so -exec rm -f {} \;
  74. uninstall: clean
  75. rm -f $(LIBDIR)/libcgi.*
  76. @@ -78,11 +85,11 @@
  77. rm -f $(INCDIR)/session.h
  78. rm -f $(MANDIR)/libcgi*
  79. -install_man:
  80. - cp doc/man/man3/libcgi_base64.3 $(MANDIR)
  81. - cp doc/man/man3/libcgi_cgi.3 $(MANDIR)
  82. - cp doc/man/man3/libcgi_general.3 $(MANDIR)
  83. - cp doc/man/man3/libcgi_string.3 $(MANDIR)
  84. - cp doc/man/man3/libcgi_session.3 $(MANDIR)
  85. - cp doc/man/man3/libcgi_cookie.3 $(MANDIR)
  86. +#install_man:
  87. +# cp doc/man/man3/libcgi_base64.3 $(MANDIR)
  88. +# cp doc/man/man3/libcgi_cgi.3 $(MANDIR)
  89. +# cp doc/man/man3/libcgi_general.3 $(MANDIR)
  90. +# cp doc/man/man3/libcgi_string.3 $(MANDIR)
  91. +# cp doc/man/man3/libcgi_session.3 $(MANDIR)
  92. +# cp doc/man/man3/libcgi_cookie.3 $(MANDIR)