Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ngspice: update to 34 #7867

Merged
merged 1 commit into from
Feb 2, 2021
Merged

ngspice: update to 34 #7867

merged 1 commit into from
Feb 2, 2021

Conversation

umarcor
Copy link
Contributor

@umarcor umarcor commented Feb 1, 2021

No description provided.

@lazka
Copy link
Member

lazka commented Feb 1, 2021

The diff says:

--- /dev/fd/63	2021-02-01 10:41:51.000000000 +0000
  +++ /dev/fd/62	2021-02-01 10:41:51.000000000 +0000
  @@ -1,135 +1,9 @@
   /mingw64/
   /mingw64/bin/
  -/mingw64/bin/cmpp.exe
   /mingw64/bin/libngspice-0.dll
   /mingw64/bin/ngspice.exe
   /mingw64/include/
  -/mingw64/include/ngspice/
  -/mingw64/include/ngspice/1-f-code.h
  -/mingw64/include/ngspice/acdefs.h
  -/mingw64/include/ngspice/bdrydefs.h
  -/mingw64/include/ngspice/bool.h
  -/mingw64/include/ngspice/carddefs.h
  -/mingw64/include/ngspice/ciderinp.h
  -/mingw64/include/ngspice/cidersupt.h
  -/mingw64/include/ngspice/cktdefs.h
  -/mingw64/include/ngspice/cluster.h
  -/mingw64/include/ngspice/cm.h
  -/mingw64/include/ngspice/cmconstants.h
  -/mingw64/include/ngspice/cmproto.h
  -/mingw64/include/ngspice/cmtypes.h
  -/mingw64/include/ngspice/compatmode.h
  -/mingw64/include/ngspice/complex.h
  -/mingw64/include/ngspice/config.h
  -/mingw64/include/ngspice/const.h
  -/mingw64/include/ngspice/contdefs.h
  -/mingw64/include/ngspice/cpdefs.h
  -/mingw64/include/ngspice/cpextern.h
  -/mingw64/include/ngspice/cpstd.h
  -/mingw64/include/ngspice/defines.h
  -/mingw64/include/ngspice/devdefs.h
  -/mingw64/include/ngspice/dgen.h
  -/mingw64/include/ngspice/distodef.h
  -/mingw64/include/ngspice/dllitf.h
  -/mingw64/include/ngspice/domndefs.h
  -/mingw64/include/ngspice/dopdefs.h
  -/mingw64/include/ngspice/dstring.h
  -/mingw64/include/ngspice/dvec.h
  -/mingw64/include/ngspice/elctdefs.h
  -/mingw64/include/ngspice/enh.h
  -/mingw64/include/ngspice/enhtypes.h
  -/mingw64/include/ngspice/evt.h
  -/mingw64/include/ngspice/evtproto.h
  -/mingw64/include/ngspice/evtshared.h
  -/mingw64/include/ngspice/evttypes.h
  -/mingw64/include/ngspice/evtudn.h
  -/mingw64/include/ngspice/FastNorm3.h
  -/mingw64/include/ngspice/fftext.h
  -/mingw64/include/ngspice/ftedbgra.h
  -/mingw64/include/ngspice/ftedebug.h
  -/mingw64/include/ngspice/ftedefs.h
  -/mingw64/include/ngspice/ftedev.h
  -/mingw64/include/ngspice/fteext.h
  -/mingw64/include/ngspice/fteinp.h
  -/mingw64/include/ngspice/fteinput.h
  -/mingw64/include/ngspice/fteoptdefs.h
  -/mingw64/include/ngspice/fteparse.h
  -/mingw64/include/ngspice/gendefs.h
  -/mingw64/include/ngspice/gendev.h
  -/mingw64/include/ngspice/graph.h
  -/mingw64/include/ngspice/grid.h
  -/mingw64/include/ngspice/hash.h
  -/mingw64/include/ngspice/hlpdefs.h
  -/mingw64/include/ngspice/iferrmsg.h
  -/mingw64/include/ngspice/ifsim.h
  -/mingw64/include/ngspice/inpdefs.h
  -/mingw64/include/ngspice/inpmacs.h
  -/mingw64/include/ngspice/inpptree.h
  -/mingw64/include/ngspice/ipc.h
  -/mingw64/include/ngspice/ipcproto.h
  -/mingw64/include/ngspice/ipctiein.h
  -/mingw64/include/ngspice/jobdefs.h
  -/mingw64/include/ngspice/lsort.h
  -/mingw64/include/ngspice/macros.h
  -/mingw64/include/ngspice/material.h
  -/mingw64/include/ngspice/matldefs.h
  -/mingw64/include/ngspice/memory.h
  -/mingw64/include/ngspice/meshdefs.h
  -/mingw64/include/ngspice/meshext.h
  -/mingw64/include/ngspice/methdefs.h
  -/mingw64/include/ngspice/mif.h
  -/mingw64/include/ngspice/mifcmdat.h
  -/mingw64/include/ngspice/mifdefs.h
  -/mingw64/include/ngspice/mifparse.h
  -/mingw64/include/ngspice/mifproto.h
  -/mingw64/include/ngspice/miftypes.h
  -/mingw64/include/ngspice/missing_math.h
  -/mingw64/include/ngspice/mobdefs.h
  -/mingw64/include/ngspice/modldefs.h
  -/mingw64/include/ngspice/multi_line.h
  -/mingw64/include/ngspice/ngspice.h
  -/mingw64/include/ngspice/noisedef.h
  -/mingw64/include/ngspice/numcards.h
  -/mingw64/include/ngspice/numconst.h
  -/mingw64/include/ngspice/numenum.h
  -/mingw64/include/ngspice/numgen.h
  -/mingw64/include/ngspice/numglobs.h
  -/mingw64/include/ngspice/onedev.h
  -/mingw64/include/ngspice/onemesh.h
  -/mingw64/include/ngspice/opdefs.h
  -/mingw64/include/ngspice/optdefs.h
  -/mingw64/include/ngspice/optndefs.h
  -/mingw64/include/ngspice/outpdefs.h
  -/mingw64/include/ngspice/plot.h
  -/mingw64/include/ngspice/pnode.h
  -/mingw64/include/ngspice/profile.h
  -/mingw64/include/ngspice/pssdefs.h
  -/mingw64/include/ngspice/pzdefs.h
  -/mingw64/include/ngspice/randnumb.h
  -/mingw64/include/ngspice/sen2defs.h
  -/mingw64/include/ngspice/sensdefs.h
  -/mingw64/include/ngspice/sensgen.h
  -/mingw64/include/ngspice/sharedspice.h
  -/mingw64/include/ngspice/sim.h
  -/mingw64/include/ngspice/smpdefs.h
  -/mingw64/include/ngspice/sperror.h
  -/mingw64/include/ngspice/spmatrix.h
  -/mingw64/include/ngspice/stringskip.h
  -/mingw64/include/ngspice/stringutil.h
  -/mingw64/include/ngspice/suffix.h
  -/mingw64/include/ngspice/swec.h
  -/mingw64/include/ngspice/tclspice.h
  -/mingw64/include/ngspice/tfdefs.h
  -/mingw64/include/ngspice/trandefs.h
  -/mingw64/include/ngspice/trcvdefs.h
  -/mingw64/include/ngspice/tskdefs.h
  -/mingw64/include/ngspice/twodev.h
  -/mingw64/include/ngspice/twomesh.h
  -/mingw64/include/ngspice/typedefs.h
  -/mingw64/include/ngspice/wallace.h
  -/mingw64/include/ngspice/wincolornames.h
  -/mingw64/include/ngspice/wordlist.h
  -/mingw64/include/ngspice/wstdio.h
  +/mingw64/include/config.h
   /mingw64/lib/
   /mingw64/lib/libngspice.dll.a
   /mingw64/lib/ngspice/
  @@ -150,7 +24,6 @@
   /mingw64/share/man/man1/cmpp.1.gz
   /mingw64/share/man/man1/ngspice.1.gz
   /mingw64/share/ngspice/
  -/mingw64/share/ngspice/dlmain.c
   /mingw64/share/ngspice/scripts/
   /mingw64/share/ngspice/scripts/ciderinit
   /mingw64/share/ngspice/scripts/devaxis

is this OK?

@umarcor
Copy link
Contributor Author

umarcor commented Feb 1, 2021

The executable was removed on purpose. I'm not sure about the headers. Those were removed and then reverted. Also, I guess that the config.h should not be located there. Let me investigate.

@umarcor umarcor marked this pull request as draft February 1, 2021 12:07
@lazka
Copy link
Member

lazka commented Feb 1, 2021

(the diff is printed in the CI logs in case you want to see it yourself for future changes)

@holvo
Copy link

holvo commented Feb 1, 2021

We don't install cmpp and dlmain.c any more.

We also don't install the headers any more, except for sharedspice.h.

config.h should also not be installed. There might be a (minor) bug hat it still slips through. All the headers are not needed for a functional libngspice-0.dll, except for sharedspice.h

@umarcor
Copy link
Contributor Author

umarcor commented Feb 2, 2021

@holvo, it seems that sharedspice.h is not installed. Apart from removing config.h, I "patched" the recipe by adding a manual install command after make install. Yet, I'd like to make it cleaner. May it be missing because the recipe includes two builds (one --with-ngshared and another one without it)?

BTW, I enabled --with-wingui.

@holvo
Copy link

holvo commented Feb 2, 2021

--with-win-gui creates the ngspice.exe with a lightweigt GUI. No sharedspice.h is needed.

--with-ngshared requires an independent compilation run. sharedspice.h should be installed because it contains the information how to interface the libngspice-0.dll by a calling program.

config.h should never be installed, because it has to be created and used locally dirung compilation. I will fix this by modifying makefile.am in src/include(ngspice.

@umarcor
Copy link
Contributor Author

umarcor commented Feb 2, 2021

@holvo, the point is that this package includes two compilation runs:

  1. In subdir build-shared, configure --with-ngshared, and make.
  2. In subdir build-static, configure --with-wingui, and make.
  3. Execute make install in subdir build-static.
  4. Manually copy/install:
  • COPYING
  • sharedspice.h
  • ngspice.pc
  • libngspice-0.dll
  • libngspice-0.dll.a

What is your recommendation? Shall execute make install in subdir build-shared, before executing it in build-static?

@holvo
Copy link

holvo commented Feb 2, 2021

I guess the final install tree would be something like (similar to make install):

**msys64**
    **bin**
        ngspice.exe
        libngspice-0.dll
    **doc**
        **ngspice**
            COPYING
            <link  to manual https://sourceforge.net/projects/ngspice/files/ng-spice-rework/34/ngspice-34-manual.pdf/download>
    **include**
        **ngspice**
            sharedspice.h
    **lib**
        libngspice-0.dll.a
        **ngspice**
            analog.cm
            digital.cm
            table.cm
            spice2poly.cm
            xtradev.cm
            xtraevt.cm
    **share**
        **ngspice**
            **scripts**
                spinit

Building te static ngspice.exe should install everything except libngspice-0.dll and sharedspice.h, which then could be added.

@holvo
Copy link

holvo commented Feb 2, 2021

Building te static ngspice.exe should install everything except libngspice-0.dll, libngspice-0.dll.a and sharedspice.h, which then could be added.

Don't know where to put ngspice.pc

@umarcor
Copy link
Contributor Author

umarcor commented Feb 2, 2021

@holvo, thank you so much for clarifying.

  • bin, doc, include and lib are correct.
  • share/ngspice/scripts contains ciderinit,devaxis, devload, setplot and spectrum, apart from spinit.

Don't know where to put ngspice.pc

In this package, it is installed to PREFIX/lib/pkgconfig/ngspice.pc.

I think this PR is now ready for review/merge. I will mark it as soon as CI is green.

@umarcor umarcor marked this pull request as ready for review February 2, 2021 11:37
@lazka lazka merged commit 2a9d26f into msys2:master Feb 2, 2021
@lazka
Copy link
Member

lazka commented Feb 2, 2021

Thanks!

@umarcor umarcor deleted the ngspice branch February 2, 2021 11:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants