net-ftp/gproftpd: Fix building with CFLAGS=-fno-common
authorJeroen Roovers <jer@gentoo.org>
Thu, 28 May 2020 10:03:52 +0000 (12:03 +0200)
committerJeroen Roovers <jer@gentoo.org>
Thu, 28 May 2020 10:13:35 +0000 (12:13 +0200)
Also:
- EAPI=7
- Use HTTPS (except for SRC_URI which was already failing)
- Drop pointless USE flags (see below)
- Fix dependencies: openssl is not used (drop USE=ssl), proftpd should not be a
  dependency at all as gproftpd merely edits its run-time configuration
  files, add gettext/libiconv
- Fix .desktop file and install it at the correct location (drop
  USE=gnome)
- Drop configuration flags that very obviously belong to proftpd and not
  gproftpd

Package-Manager: Portage-2.3.100, Repoman-2.3.22
Closes: https://bugs.gentoo.org/710878
Signed-off-by: Jeroen Roovers <jer@gentoo.org>
net-ftp/gproftpd/files/gproftpd-8.3.2-desktop.patch [new file with mode: 0644]
net-ftp/gproftpd/files/gproftpd-8.3.2-fno-common.patch [new file with mode: 0644]
net-ftp/gproftpd/files/gproftpd-8.3.2-install.patch [new file with mode: 0644]
net-ftp/gproftpd/gproftpd-8.3.2-r2.ebuild [new file with mode: 0644]

diff --git a/net-ftp/gproftpd/files/gproftpd-8.3.2-desktop.patch b/net-ftp/gproftpd/files/gproftpd-8.3.2-desktop.patch
new file mode 100644 (file)
index 0000000..a7ac93e
--- /dev/null
@@ -0,0 +1,12 @@
+--- a/desktop/net-gproftpd.desktop
++++ b/desktop/net-gproftpd.desktop
+@@ -16,7 +16,7 @@
+ GenericName=GPROFTPD
+ Comment=Proftpd FTP server administration
+ Exec=gproftpd
+-Icon=gproftpd.png
++Icon=gproftpd
+ Terminal=false
+ Type=Application
+-Categories=Application;Network;X-Red-Hat-ServerConfig;X-Red-Hat-Base;
++Categories=Network
diff --git a/net-ftp/gproftpd/files/gproftpd-8.3.2-fno-common.patch b/net-ftp/gproftpd/files/gproftpd-8.3.2-fno-common.patch
new file mode 100644 (file)
index 0000000..af3b579
--- /dev/null
@@ -0,0 +1,25 @@
+--- a/src/apply_user.c
++++ b/src/apply_user.c
+@@ -52,11 +52,6 @@
+ //gchar *dir; // ???
+ extern gchar *homedir;
+-/* The 18 checkbox values */
+-gchar *dir_val[19]; // ???
+-
+-char *user_profile; // ???
+-
+ extern long num_rows;
+ extern int row_pos;
+--- a/src/dir_treeview_funcs.h
++++ b/src/dir_treeview_funcs.h
+@@ -18,6 +18,8 @@
+  *
+  */
++extern gchar *dir_val[19];
++extern char *user_profile;
+ gboolean dirs_foreach(GtkTreeModel *model, GtkTreePath *path,
+                     GtkTreeIter *iter, struct w *widgets);
diff --git a/net-ftp/gproftpd/files/gproftpd-8.3.2-install.patch b/net-ftp/gproftpd/files/gproftpd-8.3.2-install.patch
new file mode 100644 (file)
index 0000000..3db967d
--- /dev/null
@@ -0,0 +1,39 @@
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -19,26 +19,28 @@
+            fi \
+          done \
+       fi;
+-      if test -d $(DESTDIR)$(datadir)/pixmaps; then \
++      if test -d $(datadir)/pixmaps; then \
+          cp pixmaps/gproftpd.png $(DESTDIR)$(datadir)/pixmaps/; \
+       fi;
+-      if test -f $(DESTDIR)$(bindir)/consolehelper && test ! -f $(DESTDIR)$(bindir)/gproftpd; then \
++      if test -f $(bindir)/consolehelper && test ! -f $(DESTDIR)$(bindir)/gproftpd; then \
+          ln -s $(DESTDIR)$(bindir)/consolehelper $(DESTDIR)$(bindir)/gproftpd; \
+       fi;
+       @echo "Failsafe for a mixed environment"
+       if test -f $(DESTDIR)/usr/local/bin/consolehelper && test ! -f $(DESTDIR)/usr/local/bin/gproftpd; then \
+          ln -s $(DESTDIR)/usr/local/bin/consolehelper $(DESTDIR)/usr/local/bin/gproftpd; \
+       fi;
+-      if test -d $(DESTDIR)$(sysconfdir)/pam.d; then \
++      if test -d $(sysconfdir)/pam.d; then \
++         $(mkinstalldirs) $(DESTDIR)$(sysconfdir)/pam.d; \
+          cp etc/pam.d/gproftpd $(DESTDIR)$(sysconfdir)/pam.d/; \
+       fi;
+-      if test -d $(DESTDIR)$(sysconfdir)/security/console.apps; then \
++      if test -d $(sysconfdir)/security/console.apps; then \
+          cp etc/security/console.apps/gproftpd $(DESTDIR)$(sysconfdir)/security/console.apps/; \
+-      fi;   
+-      if test -d $(DESTDIR)$(datadir)/applications; then \
+-         cp desktop/net-gproftpd.desktop $(DESTDIR)$(datadir)/applications/; \
+       fi;
+-      if test -d $(DESTDIR)$(datadir)/gnome/apps/Internet; then \
++      if test -d $(datadir)/applications; then \
++         $(mkinstalldirs) $(DESTDIR)$(datadir)/applications/; \
++         cp desktop/net-gproftpd.desktop $(DESTDIR)$(datadir)/applications/gproftpd.desktop; \
++      fi;
++      if test -d $(datadir)/gnome/apps/Internet; then \
+          cp desktop/net-gproftpd.desktop $(DESTDIR)$(datadir)/gnome/apps/Internet/; \
+       fi;
+       if test ! -d $(DESTDIR)$(datadir)/doc/gproftpd; then \
diff --git a/net-ftp/gproftpd/gproftpd-8.3.2-r2.ebuild b/net-ftp/gproftpd/gproftpd-8.3.2-r2.ebuild
new file mode 100644 (file)
index 0000000..c801cf2
--- /dev/null
@@ -0,0 +1,52 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit autotools
+
+DESCRIPTION="GTK frontend to proftpd"
+HOMEPAGE="https://mange.dynalias.org/linux/gproftpd"
+SRC_URI="http://mange.dynup.net/linux/gproftpd/${P}.tar.gz"
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~ppc ~sparc ~x86"
+SLOT="0"
+
+RDEPEND="
+       >=dev-libs/atk-1.0
+       >=media-libs/freetype-2.0
+       >=x11-libs/pango-1.0
+       dev-libs/glib:2
+       virtual/libiconv
+       x11-libs/gtk+:2
+"
+DEPEND="
+       ${RDEPEND}
+"
+BDEPEND="
+       sys-devel/gettext
+       virtual/pkgconfig
+"
+PATCHES=(
+       "${FILESDIR}"/${P}-desktop.patch
+       "${FILESDIR}"/${P}-fno-common.patch
+       "${FILESDIR}"/${P}-install.patch
+)
+DOCS="AUTHORS ChangeLog README"
+
+src_prepare() {
+       default
+       eautoreconf
+}
+
+src_install() {
+       default
+
+       rm -r "${D}/usr/share/doc/gproftpd" || die
+}
+
+pkg_postinst() {
+       elog "gproftpd looks for your proftpd.conf file in /etc/proftpd"
+       elog "run gproftpd with the option -c to specify an alternate location"
+       elog "ex: gproftpd -c /etc/proftpd.conf"
+       elog "Do NOT edit /etc/conf.d/proftpd with this program"
+}