diff options
author | David Seifert <soap@gentoo.org> | 2023-03-18 22:22:45 +0100 |
---|---|---|
committer | David Seifert <soap@gentoo.org> | 2023-03-18 22:22:45 +0100 |
commit | 55b721f46cd975804608700185143ba4a06c20eb (patch) | |
tree | 0f2959048d383d15ca749790e29435363272d590 | |
parent | net-libs/netwib: fix build with clang 16 (diff) | |
download | gentoo-55b721f46cd975804608700185143ba4a06c20eb.tar.gz gentoo-55b721f46cd975804608700185143ba4a06c20eb.tar.bz2 gentoo-55b721f46cd975804608700185143ba4a06c20eb.zip |
app-crypt/ophcrack: fix LLD build
Closes: https://bugs.gentoo.org/828946
Closes: https://bugs.gentoo.org/889364
Signed-off-by: David Seifert <soap@gentoo.org>
-rw-r--r-- | app-crypt/ophcrack/files/ophcrack-3.8.0-buildsystem.patch | 223 | ||||
-rw-r--r-- | app-crypt/ophcrack/files/ophcrack-ar.patch | 13 | ||||
-rw-r--r-- | app-crypt/ophcrack/ophcrack-3.8.0-r1.ebuild (renamed from app-crypt/ophcrack/ophcrack-3.8.0.ebuild) | 35 |
3 files changed, 243 insertions, 28 deletions
diff --git a/app-crypt/ophcrack/files/ophcrack-3.8.0-buildsystem.patch b/app-crypt/ophcrack/files/ophcrack-3.8.0-buildsystem.patch new file mode 100644 index 000000000000..fc4ec60c016c --- /dev/null +++ b/app-crypt/ophcrack/files/ophcrack-3.8.0-buildsystem.patch @@ -0,0 +1,223 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -35,7 +35,7 @@ + config \ + config.h.in \ + configure \ +- configure.in \ ++ configure.ac \ + COPYING \ + INSTALL \ + install-sh \ +@@ -82,13 +82,13 @@ + tar cfj $(distdir).tar.bz2 $(distdir) + rm -rf $(distdir) + +-# automatic re-running of configure if the configure.in file has changed +-configure: configure.in aclocal.m4 ++# automatic re-running of configure if the configure.ac file has changed ++configure: configure.ac aclocal.m4 + autoconf + + # autoheader might not change config.h.in, so touch a stamp file + config.h.in: stamp-h.in +-stamp-h.in: configure.in aclocal.m4 ++stamp-h.in: configure.ac aclocal.m4 + autoheader + echo timestamp > stamp-h.in + +--- a/configure.in ++++ b/configure.in +@@ -68,7 +68,7 @@ + AC_PROG_INSTALL + AC_PROG_LN_S + AC_PROG_MAKE_SET +-AC_PROG_RANLIB ++AC_CHECK_TOOL([AR], [ar]) + + if test "$GCC" = "yes"; then + CFLAGS="$CFLAGS -Wall -std=gnu9x -pedantic -I.." +@@ -167,55 +167,8 @@ + AC_CHECK_LIB([pthread], [pthread_mutex_init], [], [AC_MSG_ERROR([ophcrack requires libpthread.])]) + fi + +- +-AC_MSG_CHECKING(for libssl) +-with_ssl=no +-AC_ARG_WITH(libssl, AC_HELP_STRING(--with-libssl=DIR,use libssl in DIR), +-[ case "$withval" in +- no) +- AC_MSG_RESULT(no) +- ;; +- *) +- AC_MSG_RESULT(yes) +- with_ssl=$withval +- CFLAGS="$CFLAGS -I$with_ssl/include" +- CXXFLAGS="$CXXFLAGS -I$with_ssl/include" +- LIBS="$LIBS -L$with_ssl/lib -lssl -lcrypto" +- ;; +- esac ] +-) +- +-if test "x$with_ssl" = "xno"; then +- CHECK_SSL +-fi +- +-with_expat=no +-AC_ARG_WITH(libexpat, AC_HELP_STRING(--with-libexpat=DIR,use libexpat in DIR), +-[ AC_MSG_CHECKING(for libexpat) +- case "$withval" in +- no) +- AC_MSG_RESULT(no) +- ;; +- *) +- AC_MSG_RESULT(yes) +- with_expat=$withval +- if test "x$enable_win32" = "xyes"; then +- CFLAGS="$CFLAGS -I$with_expat/lib" +- CXXFLAGS="$CXXFLAGS -I$with_expat/lib" +- LIBS="$LIBS -L$with_expat" +- LIBS_END="$LIBS_END -lexpat" +- else +- CFLAGS="$CFLAGS -I$with_expat/include" +- CXXFLAGS="$CXXFLAGS -I$with_expat/include" +- LIBS="$LIBS -L$with_expat/lib -lexpat" +- fi +- ;; +- esac ] +-) +- +-if test "x$with_expat" = "xno"; then +- AC_CHECK_LIB([expat], [XML_ParserCreate], [], [AC_MSG_ERROR([ophcrack requires libexpat.])]) +-fi ++PKG_CHECK_MODULES([EXPAT], [expat]) ++PKG_CHECK_MODULES([CRYPTO], [libcrypto]) + + AC_CHECK_LIB([m], [sqrt], [], [AC_MSG_ERROR([ophcrack requires libmath.])]) + +--- a/src/Makefile.in ++++ b/src/Makefile.in +@@ -20,9 +20,16 @@ + + CC = @CC@ + +-CPPFLAGS = @CPPFLAGS@ +-CFLAGS = @CFLAGS@ -Icore -Intproba +-LDFLAGS = @LDFLAGS@ @LIBS@ ++CPPFLAGS = @CPPFLAGS@ -Icore -Intproba ++CFLAGS = @CFLAGS@ ++LIBS = @LIBS@ ++LDFLAGS = @LDFLAGS@ ++ ++EXPAT_CFLAGS = @EXPAT_CFLAGS@ ++EXPAT_LIBS = @EXPAT_LIBS@ ++ ++CRYPTO_CFLAGS = @CRYPTO_CFLAGS@ ++CRYPTO_LIBS = @CRYPTO_LIBS@ + + SUBDIRS = core ntproba samdump2 test + @HAVE_GUI_TRUE@SUBDIRS += gui +@@ -48,7 +55,7 @@ + ophcrack: gui/main.cpp core ntproba samdump2 + cp $< main.c + $(CC) $(CPPFLAGS) $(CFLAGS) -c main.c -o main.o +- $(CC) main.o $(ARCHIVES) -o $@ $(LDFLAGS) ++ $(CC) $(CFLAGS) $(LDFLAGS) main.o $(ARCHIVES) -o $@ $(EXPAT_LIBS) $(CRYPTO_LIBS) $(LIBS) + rm main.c main.o + + gui: core ntproba samdump2 +--- a/src/common.mk.in ++++ b/src/common.mk.in +@@ -23,7 +23,14 @@ + + CFLAGS = @CFLAGS@ + CPPFLAGS = @CPPFLAGS@ +-LDFLAGS = @LDFLAGS@ @LIBS@ ++LDFLAGS = @LDFLAGS@ ++LIBS = @LIBS@ ++ ++EXPAT_CFLAGS = @EXPAT_CFLAGS@ ++EXPAT_LIBS = @EXPAT_LIBS@ ++ ++CRYPTO_CFLAGS = @CRYPTO_CFLAGS@ ++CRYPTO_LIBS = @CRYPTO_LIBS@ + + HEADERS = $(wildcard *.h) + SOURCES = $(wildcard *.c) +@@ -32,11 +39,7 @@ + all: + + %.a: +- ar r $@ $^ +- $(RANLIB) $@ +- +-%.o: %.c +- $(CC) $(CPPFLAGS) $(CFLAGS) -c $< -o $@ ++ $(AR) rcs $@ $^ + + clean_: + rm -f *.o *~ +--- a/src/core/Makefile.in ++++ b/src/core/Makefile.in +@@ -17,7 +17,7 @@ + + include ../common.mk + +-CFLAGS += -I../.. -I../samdump2 -I../ntproba ++CPPFLAGS += -I../.. -I../samdump2 -I../ntproba $(CRYPTO_CFLAGS) + + all: libophcrack.a + +--- a/src/gui/gui.pro.in ++++ b/src/gui/gui.pro.in +@@ -30,7 +30,7 @@ + ../ntproba/libntproba.a + + PRE_TARGETDEPS += $$ARCHIVES +-LIBS += $$ARCHIVES @LDFLAGS@ @LIBS@ ++LIBS += $$ARCHIVES @LDFLAGS@ @EXPAT_LIBS@ @CRYPTO_LIBS@ @LIBS@ + + QMAKE_CC = @CC@ + QMAKE_CXX = @CXX@ +--- a/src/ntproba/Makefile.in ++++ b/src/ntproba/Makefile.in +@@ -17,6 +17,8 @@ + + include ../common.mk + ++CPPFLAGS += $(EXPAT_CFLAGS) $(CRYPTO_CFLAGS) ++ + all: libntproba.a + + libntproba.a: $(OBJECTS) +--- a/src/samdump2/Makefile.in ++++ b/src/samdump2/Makefile.in +@@ -17,7 +17,7 @@ + + include ../common.mk + +-CFLAGS += -I../core ++CPPFLAGS += -I../core $(CRYPTO_CFLAGS) + + all: libsamdump2.a + +--- a/src/test/Makefile.in ++++ b/src/test/Makefile.in +@@ -17,7 +17,7 @@ + + include ../common.mk + +-CFLAGS += -I../.. -I../core -I../ntproba ++CPPFLAGS += -I../.. -I../core -I../ntproba + + ARCHIVES = \ + ../core/libophcrack.a \ +@@ -32,7 +32,7 @@ + %.a: + + test_%: test_%.o $(ARCHIVES) +- $(CC) $^ -o $@ $(LDFLAGS) ++ $(CC) $(CFLAGS) $(LDFLAGS) $^ -o $@ $(EXPAT_LIBS) $(CRYPTO_LIBS) $(LIBS) + + clean: clean_ + rm -f $(TARGETS) diff --git a/app-crypt/ophcrack/files/ophcrack-ar.patch b/app-crypt/ophcrack/files/ophcrack-ar.patch deleted file mode 100644 index 422c17398d20..000000000000 --- a/app-crypt/ophcrack/files/ophcrack-ar.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/common.mk.in b/src/common.mk.in -index 0f090a8..9c133e0 100644 ---- a/src/common.mk.in -+++ b/src/common.mk.in -@@ -32,7 +32,7 @@ OBJECTS = $(SOURCES:%.c=%.o) - all: - - %.a: -- ar r $@ $^ -+ $(AR) r $@ $^ - $(RANLIB) $@ - - %.o: %.c diff --git a/app-crypt/ophcrack/ophcrack-3.8.0.ebuild b/app-crypt/ophcrack/ophcrack-3.8.0-r1.ebuild index c74837410a94..2a8a1e16c775 100644 --- a/app-crypt/ophcrack/ophcrack-3.8.0.ebuild +++ b/app-crypt/ophcrack/ophcrack-3.8.0-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -inherit desktop toolchain-funcs qmake-utils +inherit autotools desktop qmake-utils xdg DESCRIPTION="A time-memory-trade-off-cracker" HOMEPAGE="https://ophcrack.sourceforge.io/" @@ -12,15 +12,17 @@ SRC_URI="https://downloads.sourceforge.net/project/${PN}/${PN}/${PV}/${P}.tar.bz LICENSE="GPL-2" SLOT="0" KEYWORDS="~amd64 ~x86" -IUSE="debug qt5 +tables" +IUSE="gui +tables" DEPEND=" - dev-libs/openssl:0= + dev-libs/openssl:= dev-libs/expat net-libs/netwib - qt5? ( + gui? ( dev-qt/qtcharts:5 + dev-qt/qtcore:5 dev-qt/qtgui:5 + dev-qt/qtwidgets:5 )" RDEPEND=" ${DEPEND} @@ -29,22 +31,25 @@ BDEPEND=" app-arch/unzip virtual/pkgconfig" -PATCHES=( "${FILESDIR}"/ophcrack-ar.patch ) +PATCHES=( "${FILESDIR}"/${P}-buildsystem.patch ) -src_configure() { - tc-export AR +src_prepare() { + default + eautoreconf +} +src_configure() { # bug #765229 - export PATH="$(qt5_get_bindir):${PATH}" + use gui && export PATH="$(qt5_get_bindir):${PATH}" - econf \ - $(use_enable debug) \ - $(use_enable qt5 gui) + econf $(use_enable gui) } src_install() { default - newicon src/gui/pixmaps/os.xpm ophcrack.xpm - make_desktop_entry "${PN}" OphCrack ophcrack + if use gui; then + newicon src/gui/pixmaps/os.xpm ophcrack.xpm + make_desktop_entry "${PN}" OphCrack ophcrack + fi } |